Commit Graph
2491 Commits
Author SHA1 Message Date
haelyra 950caaaae1 fix(hooks): preserve short sessions and quote evolved metadata 2026-08-28 16:08:19 -04:00
haelyra b7d6c61b1e Merge remote-tracking branch 'origin/main' into maint/pr-2870-current 2026-08-28 16:03:10 -04:00
Affaan MustafaandGitHub 5eddf1a3ff Merge pull request #2863 from affaan-m/maint/release-2.2-ready
fix(release): make ECC 2.2 ready to publish
v2.2.0
2026-08-27 13:00:06 -04:00
haelyra 51982fdab1 test(opencode): verify recovery through descriptors 2026-08-25 17:27:26 -04:00
haelyra aaaff77ef9 test(opencode): avoid path race in recovery fixture 2026-08-25 17:23:24 -04:00
haelyra 204cc2d2a3 fix(release): stage ECC 2.2 launch safely 2026-08-25 17:19:45 -04:00
haelyra d6d0c4e696 test(nasiko): isolate malformed lock fixture 2026-08-25 13:52:19 -04:00
haelyra e10c4bb5bf fix(nasiko): use descriptor lock identity 2026-08-25 13:49:26 -04:00
haelyra 307bbd53a6 fix(nasiko): harden lifecycle recovery 2026-08-25 13:34:58 -04:00
haelyra d66eaf116f test(opencode): canonicalize Windows path expectations 2026-08-25 12:55:02 -04:00
haelyra 0b9573682f docs(release): record final environment evidence 2026-08-25 12:44:26 -04:00
haelyra f67387e836 fix(opencode): snapshot invocation environments 2026-08-25 12:37:53 -04:00
haelyra 5aa660219e test(opencode): isolate environment regression processes 2026-08-25 12:37:39 -04:00
haelyra f25e2137b9 docs(release): record legacy upgrade audit 2026-08-25 12:36:16 -04:00
haelyra 624de7fcfc fix(opencode): complete legacy root migration 2026-08-25 12:29:35 -04:00
haelyra 856733263c test(opencode): cover legacy upgrade edge cases 2026-08-25 12:28:23 -04:00
haelyra ba280120f1 docs(release): record hosted isolation repair 2026-08-25 12:24:43 -04:00
haelyra 6ceab105bc fix(opencode): isolate explicit home contexts 2026-08-25 12:17:21 -04:00
haelyra 2331afbfd3 test(opencode): reproduce ambient config leakage 2026-08-25 12:14:58 -04:00
haelyra c6cee0f3e2 docs(release): record final review evidence 2026-08-24 21:37:59 -04:00
haelyra 15815eca6a fix(install): advance guided state checkpoints safely 2026-08-24 21:30:19 -04:00
Suliman AbdulrazzaqandAlex Schmitt ef68f816d1 fix(gan): grant evaluator Playwright tools 2026-08-24 22:26:25 -03:00
Suliman AbdulrazzaqandAlex Schmitt b7faf3d70e fix: pass observer analysis path explicitly 2026-08-24 22:26:24 -03:00
7aa071c5e9 fix(continuous-learning-v2): emit loadable frontmatter from evolve --generate
Artifacts written by `evolve --generate` are inert: Claude Code (and every
spec-compliant Agent Skills client) injects only `name` + `description` at
startup and will not load an artifact missing them.

Today the generator writes:
  - skills:   `# {name}` with no frontmatter block at all
  - commands: `# {cmd_name}` with no frontmatter block at all
  - agents:   `model`/`tools` only, no `name`, no `description`

So the whole evolve pipeline terminates in files that can never load. I hit
this on a real install: 12 generated artifacts across two projects, none of
which Claude Code had ever seen.

This adds a `_evolved_description()` helper and emits proper frontmatter for
all three artifact kinds. The description is sanitised for the two things that
break loaders: `: ` in an unquoted scalar (rejected by strict YAML parsers)
and `<`/`>` (system-prompt injection risk).

Adds two tests to tests/scripts/instinct-cli-evolve-generate.test.js. Both
fail against current main and pass with this change.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-24 22:26:22 -03:00
Nitay KufertandAlex Schmitt dac72d1997 fix(strategic-compact): the task list may not exist — stop promising it survives compaction
Claude Code 2.1.233 removed the todo/task tools by default on Opus 4.8, Sonnet 5,
Fable 5, Mythos 5 and newer models (TodoWrite, TaskCreate/Get/Update/List).
CLAUDE_CODE_ENABLE_TODO_TOOLS=1 restores them, but that is a per-machine
environment setting that does not travel with a skill, so this skill cannot assume
its reader has a task list at all.

Three claims are wrong for most readers on a current version:

- "What Survives Compaction" listed "TodoWrite task list" unconditionally
- "Plan is in TodoWrite or a file" as the reason to compact at Planning→Implementation
- "Once plan is finalized in TodoWrite, compact to start fresh"

This is load-bearing advice rather than a cosmetic detail: "my todo list survives
compaction" is a reason to compact INSTEAD of writing state down. If the tools are
absent there is no list to survive, so the reader follows the advice, compacts, and
the plan is simply gone.

Changes:
- Promote "Files on disk" into the survives table — the claim that holds on every
  version and model.
- Make the task-list row conditional and add a short caveat naming the version, the
  env var, and the fact that it does not travel with the skill.
- Point readers at a file as the durable record before compacting.
- Reword the Decision Guide and Best Practices lines so neither depends on the tool
  existing.

Applied identically to the Codex (.agents/) and Kiro (.kiro/) mirrors so the three
copies agree. Those mirrors have pre-existing drift from the main skill; this change
deliberately does not touch anything beyond the same three claims.

Verified locally: all eight scripts/ci/ validators pass (unicode-safety, skills,
agents, commands, rules, hooks, install-manifests, no-personal-paths), plus
catalog:check, command-registry:check, and harness-adapter-compliance (12 adapters).
No emoji in the added block, per check-unicode-safety.
2026-08-24 22:26:22 -03:00
Matt Van HornandAlex Schmitt 40c8235d48 fix: address self-review findings 2026-08-24 22:26:22 -03:00
haelyra 3c005169b5 fix(opencode): route lifecycle through config overrides 2026-08-24 21:20:17 -04:00
haelyra dac154eff6 test(opencode): cover override lifecycle routing 2026-08-24 21:18:54 -04:00
haelyra bbf5493279 fix(release): clear final review blockers 2026-08-24 21:16:39 -04:00
haelyra 01779a4a2b test(release): cover final review blockers 2026-08-24 21:14:29 -04:00
haelyra 75b632c42d docs(release): record filename convention regression 2026-08-24 21:11:15 -04:00
haelyra c83200bbbe fix(release): follow release-note filename convention 2026-08-24 21:09:46 -04:00
haelyra 7d9f70c501 test(release): enforce release-note filename convention 2026-08-24 21:08:51 -04:00
haelyra 5873b5204a docs(release): record upgraded lifecycle evidence 2026-08-24 21:08:08 -04:00
haelyra e3f2a537f9 test(opencode): cover legacy migration boundaries 2026-08-24 21:01:06 -04:00
haelyra e3a1ac6f3f fix(opencode): migrate legacy managed home installs 2026-08-24 20:59:57 -04:00
haelyra 47d629633b test(release): require packed uninstall skill cleanup 2026-08-24 20:56:27 -04:00
haelyra 55a2d4823b test(opencode): cover legacy managed root migration 2026-08-24 20:53:53 -04:00
haelyra ba63755cdd docs(release): record final regression count 2026-08-24 20:46:46 -04:00
haelyra 17ab179ecc test(release): enforce versioned notes contract 2026-08-24 20:40:35 -04:00
haelyra 25d59ca41d fix(release): select reviewed notes by version 2026-08-24 20:34:41 -04:00
haelyra a504b19411 test(release): derive reviewed notes from tag 2026-08-24 20:34:26 -04:00
haelyra b1a4c46395 docs(release): refresh security coverage evidence 2026-08-24 20:28:34 -04:00
haelyra 8348fb990d fix(security): pin guided preflight reads before validation 2026-08-24 20:28:01 -04:00
haelyra 65e243f60b docs(release): record ECC 2.2 verification evidence 2026-08-24 20:24:51 -04:00
haelyra 8b5ef235ff test(release): accept install command result shape 2026-08-24 20:23:33 -04:00
haelyra d0e14ed8f6 test(opencode): align repair fixtures with canonical home 2026-08-24 20:17:03 -04:00
haelyra 2c5a91a1d6 fix(release): make ECC 2.2 ready to publish 2026-08-24 20:15:12 -04:00
haelyra 528dbea019 test(security): reject symlinked guided install sources 2026-08-24 20:13:18 -04:00
dajiaohuangandhaelyra da1faf1400 test(pack): select the requested package 2026-08-24 20:09:12 -04:00