release: v1.2.0 — the audit remediation release - #15
Merged
Conversation
78 commits beyond `v1.1.0`, closing every finding in `max_audit.md` and the architectural work that followed. `docs/audit-remediation-status.md` is the index; `DECISIONS.md` §36–§47 carries the reasoning. Numbered 1.2.0 rather than 1.1.1 for two reasons. The roadmap planned the remediation as three releases — v1.1.1 "Green Tree & Correct Metadata", v1.1.2 "Data Loss & Corruption", v1.1.3 "Honest Instruments" — and this ships all three plus the Scope Decision Gate answers (H2, M1, M11) and Phase 1c. And it removes command-line surface, which a patch release is not permitted to do. Breaking: `--risk-tolerance`, `--max-output-tokens` and `--max-latency-ms` are gone with their `TOKENDAMPER_*` variables and now hard-error; MCP `optimize_context` no longer accepts `riskTolerance`; `GatewaySessionStoreInterface` requires `getSession`; the Gateway no longer reads `TOKENDAMPER_MOCK_UPSTREAM` or `NODE_ENV`. Nothing functional was lost — the three flags were read by nothing and reported success anyway. `src/version.ts` remains the single source; all five derived consumers verified reporting 1.2.0 rather than assumed. `test/fixtures/bench/baseline.json` deliberately stays at `"version": "1.1.0"`. That field records when the baseline was measured (commit 0f7dbb9, 2026-08-09), not the product version, and re-stamping it would claim a re-measurement that did not happen. ROADMAP's feature-work gate is marked open: H5, C1 and H3 — the three preconditions it named — are answered rather than deferred. Suite: 606 passing, typecheck and lint clean. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes every finding in
max_audit.mdplus the architectural work that followed. 78 commits beyondv1.1.0.Why 1.2.0 and not 1.1.1
Two reasons, both concrete:
⚠ Breaking
--risk-tolerance,--max-output-tokens,--max-latency-msremoved with theirTOKENDAMPER_*variables — now a hardUnknown argumentrather than accepted-and-ignored.optimize_contextno longer acceptsriskTolerance(it gainedtargetReductionRatio, which does something).GatewaySessionStoreInterfacerequiresgetSession.TOKENDAMPER_MOCK_UPSTREAMorNODE_ENV.Nothing functional was lost. No stage, validator or planner ever read those flags. A script passing them now fails instead of silently doing nothing — which is the point.
Highlights
optimize_contexttargetReductionRatio: 0.3src/coreknapsacktokendamper benchPlus: structured provider content survives the Gateway (a
tool_resultblock could ship as a bare string); a 0% result now reports whether a budget was in effect, whether any transform could reduce the language, and whether items were reverted; and the docs say what the validators actually check — bracket/quote integrity, not syntax validity.Verification
1.2.0(src/version.tsis the single source) — checked, not assumed.npm pack --dry-run:tokendamper-1.2.0.tgz, 421 files.One deliberate non-change
test/fixtures/bench/baseline.jsonstays at"version": "1.1.0". That field records when the baseline was measured (commit0f7dbb9, 2026-08-09), not the product version — re-stamping it would claim a re-measurement that did not happen.Known limitations, stated in the release notes rather than omitted
Elision reduces TypeScript/JavaScript and Python only; Gateway mode is experimental and saves nothing across turns by design;
--target-reduction-ratioengages the planner but is not a proportional target; drift remains bundle-scoped.🤖 Generated with Claude Code