rein-aharness/workplans/HARNESS-WP-0001-harness-foundation.md
tegwick cfc1b75157 Harness foundation: INTENT, ADR-001, architecture, prototype adoption
- INTENT.md: three-layer model (blueprint/instance/harness), single
  shared runtime, never-become boundaries
- ADR-001 (accepted): DEC-2026-002 resolution — one harness repo for
  all projects; instances are declarative state in consuming repos
- docs/architecture.md: components, contracts (manifest, tool
  profiles, completion events, credential lanes), deployment shape
- agent_harness/: executor-worker prototype adopted and renamed
  (6/6 tests green); HARNESS-WP-0001 initial workplan (7 tasks)

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-17 23:35:27 +02:00

2.8 KiB
Raw Blame History

id title status
HARNESS-WP-0001 Harness Foundation: from prototype to shared runtime active

Turn the adopted executor-worker prototype into the single shared agent runtime per ADR-001 / DEC-2026-002. Tenant #1 is binky-control; its cutover (BINKY-WP-0004-T06) gates on T06 here. Boundaries per INTENT.md: no scheduling, no blueprint authoring, no tenant-specific logic.

Task: Instance manifest spec and validation

Specify the declarative instance manifest (extends ADR-005 .kaizen/schedule.yml): blueprint, cadence, enabled, lane, tool_profile (by name), budget, pinned harness major. Implement agent-harness validate --target <repo> mirroring kaizen's schedule validate. Align the schema with kaizen-agentic owners (their file, our extra keys — or a sibling manifest if they prefer separation).

id: HARNESS-WP-0001-T01
status: todo
priority: high

Task: Named tool profiles

Central tool-profile registry (seed: green-commit-only from the prototype allow-list; add blue-mail-triage). Manifests reference profiles by name; the runner resolves and enforces them. Unknown profile = refuse to run.

id: HARNESS-WP-0001-T02
status: todo
priority: high

Task: Task intake from activity-core emission

Replace the JSON task-file MVP source with polling the issue-core REST sink (or TaskExecutorWorkflow handoff) for emitted tasks labeled for the harness; map emissions to TaskSpec. Keep the task-file path for local development.

id: HARNESS-WP-0001-T03
status: todo
priority: high

Task: Kaizen metrics emission per run

After each run, write .kaizen/metrics records in the target repo (tokens, duration, ok/failed, commit) so the kaizen optimization loop observes harness-run agents. Follow kaizen-agentic's metrics conventions (ADR-004).

id: HARNESS-WP-0001-T04
status: todo
priority: medium

Task: Budget enforcement

Wire llm-connect's BudgetTracker to the manifest budget field; refuse or truncate runs over budget and report the event to the hub (token events feed the Token Cost dashboard).

id: HARNESS-WP-0001-T05
status: todo
priority: medium

Task: Railiance deployment

Package (container per llm-connect/activity-core conventions) and deploy one harness instance on Railiance. Gated on founder Red-lane secret provisioning (binky-control integrations/executor-worker-secrets.md Lanes 23). Verify the sandbox smoke task end-to-end remotely; hub via :18000 bridge.

id: HARNESS-WP-0001-T06
status: todo
priority: high

Task: Tenant #1 onboarding — binky-control

Commit binky-control's instance manifest (daily rhythm, weekly mail intake, weekly review prep on the T01 schema), run the three definitions through the deployed harness, then hand off to BINKY-WP-0004-T06 for the cron-bridge cutover.

id: HARNESS-WP-0001-T07
status: todo
priority: medium