feat(planctl): context-window token awareness — wiring + E2E (parent 2.0)

- emitText: context line for Info/Warn/Error bands, unknown-limit form,
  multi-plan single-emission after aggregate, Normal/nil silent (R3.4, R3.5,
  R4.1-R4.3, R4.5)
- emitJSON: context_window key for Info/Warn/Error, unknown-limit shape
  (tokens_used only), Normal/nil omitted; context never shifts error/warning
  counts (R5.1-R5.4)
- main.go: ReadTokenCtx hoisted to run() so all current + future subcommands
  see resolved ctx; runLint accepts ctx as parameter
- Golden-fixture harness reads env.txt (KEY=VALUE) and stages transcript.jsonl
  at ~/.claude/projects/<slug>/<uuid>.jsonl in a temp HOME
- 8 new E2E fixtures: context-{info,warn,error,normal,no-session,no-limit,
  json-warn,multi-plan}
- Baseline fixtures byte-identical; Linux cross-build clean

Parent 2.0 from dev/plans/26174-planctl-context-tokens/tasks.md
This commit is contained in:
sid 2026-04-23 18:46:21 -06:00
parent b02ae7dade
commit 35ee6de657

Diff content is not available