release: v5.6.0 — steering-model II (Foundation + B + C)

Bundles the v5.6 work already on main into a release:
- Foundation (62d910e): active-config-reader enumerates rules/agents/output
  styles with a loadPattern/survivesCompaction/derivationConfidence triple;
  frontmatter parser reads YAML block sequences.
- B (bb647ce, 778b517): load-pattern accounting — manifest reports
  component-level sources with an always-loaded subtotal; token-hotspots tags
  each hotspot with its load pattern.
- C (e3b044a): new orchestrated OST scanner (CA-OST-001/002/003), scanner
  count 13 -> 14, all claims doc-verified.

Version synced: plugin.json 5.5.0->5.6.0, README version badge +
version-history row, CHANGELOG [5.6.0] section. Frozen v5.0.0 snapshots
preserved via strip-helpers (--json/--raw byte-stable for the original 13
scanners); only SC-5 default-output regenerated. Suite 1023 pass, self-audit
A/A (config 93, plugin 100), readmeCheck passed, mismatches [].

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
Kjell Tore Guttormsen 2026-06-20 21:13:47 +02:00
commit 7548a627ba
3 changed files with 43 additions and 2 deletions

View file

@ -5,6 +5,46 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## [5.6.0] - 2026-06-20
### Summary
"Steering-model II" — the per-mechanism **load-pattern** and **compaction-survival** model lands
end-to-end across enumeration, the `manifest` / `tokens` token accounting, and a new output-style
scanner. v5.5.0 shipped A+E (additive to existing scanners); this release adds the **Foundation**
those features needed, plus **B** (load-pattern accounting) and **C** (the new `CA-OST` family,
scanner count 13 → **14**). Every new claim is anchored to the live Claude Code docs
(`code.claude.com/docs`) per the project's verification duty.
### Added
- **Foundation — active-config-reader enumeration + load-pattern model.** `active-config-reader`
now enumerates **rules**, **agents**, and **output styles** (alongside the existing
CLAUDE.md / plugins / skills / hooks / MCP). Each source carries a `loadPattern`
(`always` / `on-demand` / `external`), `survivesCompaction`, and `derivationConfidence`, derived
from the published loading model. The frontmatter parser additionally reads YAML **block
sequences** (`paths:` as a `- item` list), resolving a pre-existing RUL false-positive.
- **C — output-style scanner (`CA-OST`, scanner count 13 → 14).** New orchestrated scanner:
`CA-OST-001` (MEDIUM) a user/project custom output style missing `keep-coding-instructions: true`
(defaults false) silently strips Claude Code's built-in software-engineering instructions when
active (V10); `CA-OST-002` (LOW) a **plugin** output style with `force-for-plugin: true` overrides
the user's selected `outputStyle` (V11); `CA-OST-003` (MEDIUM) a settings `outputStyle` matching
no built-in (Default / Explanatory / Learning / Proactive) nor discovered custom style is dead
config.
### Changed
- **B — load-pattern accounting in `manifest` and `tokens`.** `manifest` now reports
**component-level** token sources (the coarse plugin roll-up that double-counted its own
skills / rules / agents is gone), tags every source with the load-pattern triple, and leads with
an **always-loaded subtotal** ("≈X tokens enter context every turn before you type").
`token-hotspots` annotates each ranked hotspot with its load pattern. `manifest`'s `total` changes
(de-duplicated) — the intended correctness fix.
### Notes
- **Byte-stability.** `--json` / `--raw` stay byte-stable for the original 13 scanners. The frozen
v5.0.0 snapshots are **preserved**: B2's additive hotspot fields and C's additive OST scanner
entry are stripped at compare time (`tests/helpers/strip-hotspot-load-pattern.mjs`,
`tests/helpers/strip-added-scanner.mjs`); only the SC-5 default-output snapshots are regenerated.
Suite 1023 pass, self-audit A/A (config 93, plugin 100), readmeCheck passed.
## [5.5.0] - 2026-06-20
### Summary