Skip to content

release: v1.88.0 — Opus 5 default driver, autocompact fix, escalation ladder - #472

Merged
BaseInfinity merged 2 commits into
mainfrom
release/v1.88.0
Jul 27, 2026
Merged

release: v1.88.0 — Opus 5 default driver, autocompact fix, escalation ladder#472
BaseInfinity merged 2 commits into
mainfrom
release/v1.88.0

Conversation

@BaseInfinity

Copy link
Copy Markdown
Owner

Ships 8 consumer-path commits stranded since v1.87.0 (2026-07-14) — the ROADMAP #449 drift scenario, resolved.

What consumers get

Opus 5 becomes the Setup A default at xhigh effort. Requires Claude Code v2.1.219+ (below that, opus still resolves to 4.8). Sonnet 5 moves to Setup B (medium) for simple/one-off work. Flagged as a trial — strong on paper, unproven by field data.

Autocompact fix — this one was actively writing bad config. skills/setup/SKILL.md wrote CLAUDE_AUTOCOMPACT_PCT_OVERRIDE: "30" into consumer .claude/settings.json for Setup A. That figure was derived for the retired opus[1m] extended-context opt-in and never re-derived. Per the raw env-vars docs, the variable only lowers the trigger where compaction is proactive — and a local Opus session is the docs' own counter-example. Setup A now writes no override. Corrected across 6 wizard-doc sites plus the writer, and deliberately worded as a documentation gap rather than a runtime claim, since the docs are silent on Opus 5's local behavior.

Setup B's 75 is unchanged and still correct — Sonnet 5 is a documented proactive case.

Escalation ladder. Both sdlc/SKILL.md copies and the wizard doc previously said "ASK USER" for LOW confidence / FAILED-2x / CONFUSED, skipping model escalation entirely. Now Fable → Codex xhigh → human, with the human reserved for priority, risk appetite, scope, spend, and irreversible or outward-facing calls. Confidence is not authorization — it never overrides an approval, production, release/merge, or policy gate.

Ten further direct-to-human routes removed, including the CI-failure flow diagram and the generated CLAUDE.md template. The shipped runtime hook (hooks/sdlc-prompt-check.sh) was emitting the old ladder on every consumer session, contradicting the docs — fixed and regression-tested.

Also

Verification

Publishing

Merging does not publish. git tag v1.88.0 && git push origin v1.88.0 triggers the npm release.

… ladder

Ships 8 consumer-path commits stranded since v1.87.0 (2026-07-14).

**Opus 5 becomes Setup A** at `xhigh`, requires Claude Code v2.1.219+.
Sonnet 5 moves to Setup B (`medium`) for simple/one-off work. Flagged as a
trial — strong on paper, unproven by field data.

**Autocompact fix, consumer-visible:** skills/setup/SKILL.md was writing
CLAUDE_AUTOCOMPACT_PCT_OVERRIDE: "30" into consumer .claude/settings.json
for Setup A. That figure came from the retired opus[1m] opt-in and was
never re-derived. Per raw env-vars docs the variable only lowers the
trigger where compaction is PROACTIVE, and a local Opus session is the
docs' own counter-example. Setup A now writes no override. Corrected in 6
wizard-doc sites plus the writer, worded as a documentation gap rather
than a runtime claim. Setup B's 75 is unchanged and still correct.

**Escalation ladder:** both SKILL.md copies and the wizard doc said
"ASK USER" for LOW/FAILED-2x/CONFUSED, skipping model escalation entirely.
Now Fable → Codex xhigh → human, with the human reserved for priority,
risk, scope, spend, and irreversible calls. Confidence is not
authorization. 10 more direct-to-human routes removed including the CI
flow diagram and the generated CLAUDE.md template. The shipped runtime
hook was emitting the OLD ladder on every consumer session — fixed and
regression-tested.

Also: SDLC.md gains a 9-lesson post-mortem, and ROADMAP #468-479.

Version bumped across all 9 tracked locations per SDLC.md's own
version-bump checklist (the narrow greps have documented blind spots).
Full suite: 61 files, 0 failing.
Maintainer asked why context was at 93% and whether quality degrades. It
does, and this session's last 15% is the evidence: a '41/41 passing' where
10 tests ran after the exit block, a newline hole introduced while fixing a
substring hole, a 10-minute spin from a forgotten sandbox flag, and #479 —
where the correct diagnosis sat in a committed ROADMAP row hours before the
wrong fix shipped.

Distinct from #476 (what to load) and #220/#236 (file sizes). This is
session hygiene: how a driver notices its own degradation. Scope says do
NOT ship a threshold number without a source, and favors symptom-based
self-checks over a percentage — plus a note that a documented rule alone
failed to change behavior twice tonight.
@BaseInfinity
BaseInfinity merged commit 6ba9710 into main Jul 27, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant