Skip to content

Chameleon

v2.29.2 Bugfix

This release fixes issues for SREs watching stability and regressions.

✓ No known CVEs patched
Read the diff → Tool health → What is this tool? →

✓ No known CVEs patched in this version

Topics

ai-coding-assistant archetype ast-analysis claude-code claude-plugin code-conventions
+12 more
code-review code-style developer-tools javascript linter mcp mcp-server prompt-engineering python ruby rails typescript

Summary

AI summary

Teach operations that interfere with profile re-derive no longer silently fail, now returning a retry‑shortly rejection.

Full changelog

Fixed

  • A teach racing a profile re-derive is no longer silently lost. A
    (re-)bootstrap reads idioms.md and conventions.json early and carries
    those snapshots into the atomic profile swap, holding only .bootstrap.lock.
    teach_profile writes idioms.md under .idioms.lock and
    teach_competing_import / apply_archetype_renames write conventions.json
    (and renames.json) under .conventions.lock — disjoint locks. A teach that
    landed between the carry-read and the swap returned success but was then
    clobbered by the swap, with no integrity check to catch it. The refresh
    wrapper already guarded idioms.md with .idioms.lock, but the common
    /chameleon-refresh --force (and background auto-refresh) path left
    conventions.json exposed, and a direct bootstrap_repo(force=True)
    (/chameleon-init re-init) left idioms.md exposed. The (re-)derive now
    serializes against both teach write locks across its read-to-swap window, so
    a concurrent teach gets a clean "retry shortly" rejection instead of a silent
    loss. Locks are acquired in one fixed order everywhere (.idioms
    .conventions.bootstrap), so a refresh and a direct re-init cannot
    deadlock; verified under concurrent stress.

Weekly OSS security release digest.

The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.

No spam, unsubscribe anytime.

Share this release

Track Chameleon

Get notified when new releases ship.

Sign up free

About Chameleon

All releases →

Related context

Earlier breaking changes

  • v3.0.0 MCP surface folded from 48 tools to 19; remaining 32 operator tools become actions on three dispatchers.

Beta — feedback welcome: [email protected]