glas-harness/WORK-RECORDS.md
tegwick d3130162b1
All checks were successful
CI Smoke / host-smoke (push) Successful in 0s
CI Smoke / container-smoke (push) Successful in 1s
Formalize the CLI as the first Channel extension (GLAS-WP-0003)
channels/base.py: GatewayInvocation dataclass + Channel ABC
(parse_invocation/render_result), mirroring Rein one layer up -- a
channel turns an external invocation into what run_task_through_rein
needs, and turns its result back into whatever the invocation medium
expects.

channels/cli_channel.py: CLIChannel, a pure refactor of what cli.py did
inline -- argparse Namespace -> GatewayInvocation, result dict ->
json.dumps(..., indent=2). cli.py's run handler is now a thin
construct-parse-invoke-render wrapper.

docs/channel-contract.md documents the pattern and sketches (without
building) a second channel.

Found and fixed a real bug while live-testing this refactor:
ReinAharness's default cli_bin was still "agent-harness", stale from
before HARNESS-WP-0002-T02's rename.

4 new tests (27/27 passing), plus a real live run through
python3 -m glas_harness.cli against rein-aharness/real Claude Code
confirming identical output shape and a real commit.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-26 22:41:51 +02:00

2.4 KiB

Work Records — glas-harness

Generated by statehub fix-consistency (CUST-WP-0061-T04, work-record stage 3). Do not edit by hand — edit the source file/block listed for each record and re-run fix-consistency to refresh this index. Archived workplans are omitted; closed decisions/intakes/engagements stay listed so recently-resolved work is still visible. [auto]

Kind ID Status Lane Source
workplan GLAS-0001 active workplans/GLAS-0001-statehub-bootstrap.md
workplan GLAS-WP-0001 active workplans/GLAS-WP-0001-harness-router-foundation.md
workplan GLAS-WP-0002 active workplans/GLAS-WP-0002-observability-and-composability-followups.md
workplan GLAS-WP-0003 proposed workplans/GLAS-WP-0003-first-channel-extension.md
task GLAS-0001-T01 done workplans/GLAS-0001-statehub-bootstrap.md
task GLAS-0001-T02 done workplans/GLAS-0001-statehub-bootstrap.md
task GLAS-0001-T03 done workplans/GLAS-0001-statehub-bootstrap.md
task GLAS-WP-0001-T01 done workplans/GLAS-WP-0001-harness-router-foundation.md
task GLAS-WP-0001-T02 done workplans/GLAS-WP-0001-harness-router-foundation.md
task GLAS-WP-0001-T03 done workplans/GLAS-WP-0001-harness-router-foundation.md
task GLAS-WP-0001-T04 done workplans/GLAS-WP-0001-harness-router-foundation.md
task GLAS-WP-0001-T05 done workplans/GLAS-WP-0001-harness-router-foundation.md
task GLAS-WP-0001-T06 done workplans/GLAS-WP-0001-harness-router-foundation.md
task GLAS-WP-0002-T01 done workplans/GLAS-WP-0002-observability-and-composability-followups.md
task GLAS-WP-0002-T02 wait workplans/GLAS-WP-0002-observability-and-composability-followups.md
task GLAS-WP-0002-T03 done workplans/GLAS-WP-0002-observability-and-composability-followups.md
task GLAS-WP-0002-T04 done workplans/GLAS-WP-0002-observability-and-composability-followups.md
task GLAS-WP-0003-T01 todo workplans/GLAS-WP-0003-first-channel-extension.md
task GLAS-WP-0003-T02 todo workplans/GLAS-WP-0003-first-channel-extension.md
task GLAS-WP-0003-T03 todo workplans/GLAS-WP-0003-first-channel-extension.md
task GLAS-WP-0003-T04 todo workplans/GLAS-WP-0003-first-channel-extension.md