2026-07-21 23:51:43 +02:00
|
|
|
|
---
|
|
|
|
|
|
id: BINKY-WP-0006
|
|
|
|
|
|
type: workplan
|
|
|
|
|
|
title: "Railiance rhythm: continuous intake + agentic runtime on host"
|
|
|
|
|
|
domain: infotech
|
|
|
|
|
|
repo: binky-control
|
|
|
|
|
|
status: ready
|
|
|
|
|
|
owner: codex
|
|
|
|
|
|
topic_slug: the-custodian
|
|
|
|
|
|
created: "2026-07-21"
|
|
|
|
|
|
updated: "2026-07-21"
|
2026-07-21 23:52:42 +02:00
|
|
|
|
state_hub_workstream_id: "1c068209-c3f7-4445-82ed-f762a095120c"
|
2026-07-21 23:51:43 +02:00
|
|
|
|
---
|
|
|
|
|
|
|
|
|
|
|
|
Close the residual gaps after BINKY-WP-0004 cutover so rhythm is fully
|
|
|
|
|
|
unattended on Railiance without host-timer dual scheduling.
|
|
|
|
|
|
|
|
|
|
|
|
## Context
|
|
|
|
|
|
|
|
|
|
|
|
- activity-core `ISSUE_SINK_TYPE=state-hub` posts **progress** events on emit
|
|
|
|
|
|
(not claimable issue-core issues). agent-harness intake still polls issue-core.
|
|
|
|
|
|
- agent-harness k8s deploy is `sleep infinity` (placeholder).
|
|
|
|
|
|
- railiance01 host timers call task files directly (interim).
|
|
|
|
|
|
- Agentic daily/review need `claude` CLI on railiance01 (absent as of 2026-07-21);
|
|
|
|
|
|
mail-scan works via AppRole without Claude.
|
|
|
|
|
|
|
|
|
|
|
|
## Task: Choose emission → execution contract
|
|
|
|
|
|
|
|
|
|
|
|
```task
|
|
|
|
|
|
id: BINKY-WP-0006-T01
|
|
|
|
|
|
status: todo
|
|
|
|
|
|
priority: high
|
2026-07-21 23:52:42 +02:00
|
|
|
|
state_hub_task_id: "912a8802-e80f-4c04-aecd-9586c3b7a4b0"
|
2026-07-21 23:51:43 +02:00
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
Decide with activity-core / harness owners:
|
|
|
|
|
|
|
|
|
|
|
|
A) Restore opt-in `ISSUE_SINK_TYPE=rest` for Binky labels only, or
|
|
|
|
|
|
B) Teach agent-harness to claim work from a state-hub work-record / task queue, or
|
|
|
|
|
|
C) Keep host timers as the durable executor and demote activity-core schedules
|
|
|
|
|
|
to observability-only for Binky.
|
|
|
|
|
|
|
|
|
|
|
|
Record decision (DEC if founder-relevant) and update
|
|
|
|
|
|
`integrations/executor-cutover-runbook.md`.
|
|
|
|
|
|
|
|
|
|
|
|
## Task: Continuous consumer on Railiance
|
|
|
|
|
|
|
|
|
|
|
|
```task
|
|
|
|
|
|
id: BINKY-WP-0006-T02
|
|
|
|
|
|
status: todo
|
|
|
|
|
|
priority: high
|
2026-07-21 23:52:42 +02:00
|
|
|
|
state_hub_task_id: "00439d4e-d6ee-4cbc-98e2-431eca4651fe"
|
2026-07-21 23:51:43 +02:00
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
Implement the chosen path: systemd/k8s poller loop, not `sleep infinity`.
|
|
|
|
|
|
Health metrics + logs under `~/.cache/binky-control/rhythm/`.
|
|
|
|
|
|
|
|
|
|
|
|
## Task: Agentic runtime on railiance01
|
|
|
|
|
|
|
|
|
|
|
|
```task
|
|
|
|
|
|
id: BINKY-WP-0006-T03
|
|
|
|
|
|
status: todo
|
|
|
|
|
|
priority: high
|
2026-07-21 23:52:42 +02:00
|
|
|
|
state_hub_task_id: "1f82c8e0-945e-44b6-a5dc-22dd055e751d"
|
2026-07-21 23:51:43 +02:00
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
Install and auth Claude Code (or approved hosted agentic adapter) on
|
|
|
|
|
|
railiance01 so `run-daily.sh` / `run-review.sh` exit 0 unattended. Document
|
|
|
|
|
|
in `integrations/executor-worker-secrets.md` if new secret lanes appear.
|
|
|
|
|
|
|
|
|
|
|
|
## Task: Retire dual scheduling
|
|
|
|
|
|
|
|
|
|
|
|
```task
|
|
|
|
|
|
id: BINKY-WP-0006-T04
|
|
|
|
|
|
status: todo
|
|
|
|
|
|
priority: medium
|
2026-07-21 23:52:42 +02:00
|
|
|
|
state_hub_task_id: "2093bf62-20ef-4d3e-9b91-be77a38603f7"
|
2026-07-21 23:51:43 +02:00
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
Once T01–T03 proven for three business days: remove host timers **or**
|
|
|
|
|
|
disable redundant activity-core schedules so only one cadence owner remains.
|
|
|
|
|
|
Update OperatingRhythm.md.
|
|
|
|
|
|
|
|
|
|
|
|
## Task: Closure
|
|
|
|
|
|
|
|
|
|
|
|
```task
|
|
|
|
|
|
id: BINKY-WP-0006-T05
|
|
|
|
|
|
status: todo
|
|
|
|
|
|
priority: low
|
2026-07-21 23:52:42 +02:00
|
|
|
|
state_hub_task_id: "503ff56b-ac38-44b0-911e-937e0c2fc089"
|
2026-07-21 23:51:43 +02:00
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
Mark finished; log milestone; `statehub fix-consistency`.
|