2.8 KiB
2.8 KiB
id, title, status, wave, depends_on, plan, spec
| id | title | status | wave | depends_on | plan | spec |
|---|---|---|---|---|---|---|
| 02-runtime-toggle | Add the mid-turn steering runtime toggle | done | 1 | plan.md | ../../specs/platform/requirements/mid-turn-steering.md |
Task 02: Add the mid-turn steering runtime toggle
- Acceptance:
features.claudeMidTurnSteeringexists in the typed runtime flag registry with env varKANDEV_FEATURES_CLAUDE_MID_TURN_STEERING, experimental stability, high risk, restart-required, and is"false"in the prod, dev, and e2e profiles. Effective-value precedence is explicit env > SQLite override > profile default. - Acceptance: The registry/profile/frontend completeness tests recognise the
new flag, and the frontend feature slice carries it defaulted to
false. - Verification:
cd apps/backend && go test -race ./internal/runtimeflags/... ./internal/profiles/... ./internal/common/config/...thencd apps/web && pnpm test - Files likely touched:
apps/backend/internal/runtimeflags/registry.go,apps/backend/internal/common/config/config.go,apps/backend/internal/profiles/profiles.yaml,apps/backend/internal/backendapp/orchestrator.go(wire into the service config alongsideClaudeBackgroundPromptHandoff),apps/web/lib/state/slices/features/types.ts, plus tests. - Dependencies: None.
- Inputs: Spec "API surface" (runtime toggle) and
/runtime-feature-flagsfor the file-by-file checklist.features.claudeBackgroundPromptHandoffis the reference registration to mirror, including its risk-description style. - Risks: Do not reuse or rename the existing handoff flag; the two triggers are independent and must be independently killable. Never remove a registry entry to make a build pass.
- Output contract: Report the registration, the three profile values, the precedence test evidence, exact commands/results, and update only this task's status.
Validation Results
Re-run on 2026-08-04 against the branch merged with main.
cd apps/backend && go test -race ./internal/runtimeflags/... ./internal/profiles/... ./internal/common/config/...: passed.cd apps/web && pnpm test: passed for every steering-related suite. The full run reports 8431 passed / 6 failed, and all 6 failures are pre-existing on cleanmainin files this PR does not touch (lib/http-git-server.test.ts, which needs a running Docker bridge, andhooks/domains/settings/use-automation-runs.test.ts).- Registration:
features.claudeMidTurnSteeringinruntimeflags/registry.go, envKANDEV_FEATURES_CLAUDE_MID_TURN_STEERING, high-risk, restart-required. - Profile values:
prod: "false",dev: "false",e2e: "false"— off in all three shipped profiles. - Precedence (explicit env > SQLite override > profile default) is covered by the existing registry/config tests, which pass unchanged.