Repository navigation
v0.3.71 — assess-refactor input marker, cut-guard tolerance, route-contract escalation
From live-run findings across several projects:
-
navigator-assess-refactor declared its input as story:refactor-verify-failure.json,
but refactorStory writes refactor-verify-assess.json , so the assess turn aborted
its input contract BEFORE spawning (silent under --detach). Correct the manifest to
the real marker (matching the assess-deploy analog) + add a recurrence test that ties
the manifest source to the writer so the basename/scope can't drift again. -
cutExperiment's pre-fork dirty guard tolerated only .consort/, so a dirty TRACKED
runtime-artifact ref (.lakebase/scm-utils-ref / kit-ref, re-pinned mid-run) blocked
the experiment cut. Broaden it to the runtime-artifact set (.consort/.sftdd/.tdd +
.lakebase/ + .claude/agent-memory/, from ALL_ARTIFACT_ROOTS), matching the fork
guard's RUNTIME_ARTIFACT_IGNORE; a tracked SOURCE edit still blocks. -
A pre-dispatch RouteContractError (assertRouteSatisfiable) fell to the bare ABORTED
path (return 1, no escalation), so a --detach run died to a truncated log with no
awaiting_human. Add a typed branch that records a resumable escalation + classified
halt line (return 3), mirroring ProtocolViolationError. -
Remove two dead imports in claude-runner.ts (writeRunConfig + the kit-ref pin trio,
live at bin/consort/drive.cli.ts, unused here).
Repoint scm-utils v0.2.27 -> v0.2.28 (scaffold run-tests.sh root self-heal + run-dev.sh
seed PYTHONPATH). Bump v0.3.70 -> v0.3.71.