--- id: REINAH-WP-0001 type: workplan title: "Harness Foundation: from prototype to shared runtime" status: done state_hub_workstream_id: "6222ad5b-d00b-515b-9fa0-de0f8ba74c28" --- 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 ` 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). ```task id: REINAH-WP-0001-T01 status: done priority: high state_hub_task_id: "1ad997f9-1939-5402-94cc-90069ab35719" ``` ## 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. ```task id: REINAH-WP-0001-T02 status: done priority: high state_hub_task_id: "f2a88da7-055a-5831-beda-d0d892c6ddbe" ``` ## 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. ```task id: REINAH-WP-0001-T03 status: done priority: high state_hub_task_id: "5a18f1a6-a774-5081-957d-609387c2ec75" ``` ## 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). ```task id: REINAH-WP-0001-T04 status: done priority: medium state_hub_task_id: "05c249ad-037d-5b43-9ffe-07c5a817d83a" ``` ## 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). ```task id: REINAH-WP-0001-T05 status: done priority: medium state_hub_task_id: "169b2a5a-52a5-58df-9f86-9825562d7f9c" ``` ## 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 2–3). Verify the sandbox smoke task end-to-end remotely; hub via :18000 bridge. ```task id: REINAH-WP-0001-T06 status: done priority: high state_hub_task_id: "c9463269-8e30-5830-b6ab-c1b2e4f74d63" ``` ## 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. ```task id: REINAH-WP-0001-T07 status: done priority: medium state_hub_task_id: "f89c01bd-c311-5c7b-9654-273447285935" ```