binky-control/OperatingRhythm.md
tegwick c3ea150971
Some checks failed
Work Records / validate (push) Has been cancelled
BINKY-WP-0004 finished: retire workstation cron, Railiance rhythm timers
Complete T06 cutover: remove binky rhythm bridge crontab, install
scripts/railiance-rhythm systemd user timers on railiance01 (Europe/Berlin),
document residual continuous-intake gaps as BINKY-WP-0006. Three completion
event types verified (daily_brief, mail_intake on Railiance, weekly_review).
DEC-2026-003 marked resolved/executed.
2026-07-21 23:51:43 +02:00

71 lines
3.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Operating Rhythm
> Status: v0 — 2026-07-16 (BINKY-WP-0002-T05). The cadence that keeps the
> control plane honest. Blue lane: agents run it; the founder consumes it.
## Daily brief
One brief per active day, written by whichever agent closes the day's work,
stored in `briefs/YYYY-MM-DD-daily-brief.md`. Hard cap: one screen. Format:
```markdown
# Daily Brief — <date>
## Decide now (03 items, each linked to DecisionQueue)
## Progress (what moved, milestone-relevant only)
## Risks (changes to RiskRegister only — no restating)
## Best next hour (single highest-leverage founder action)
```
Rules:
- **Decide now** only lists prepared decision packages. Never raw questions.
- **Best next hour** is one item. If nothing needs the founder, say so —
"no founder action needed today" is a valid and desirable outcome.
- Anything that can't fit the cap goes into a queue, not the brief.
## Queue hygiene (every agent session touching this repo)
1. `DecisionQueue.md` — resolved items get `status: resolved` set in place
(not moved to a separate log — CUST-WP-0061-T05); nothing older than
14 days without escalation (RISK-003 rule).
2. `OfficeHourQueue.md` — every queued item has prepared material before the
next command day; done items get `status: done` in place; stale items
pruned.
3. `AutopilotWorkQueue.md` — never empty; agents with idle capacity pull from
the top; closed items get `status: closed` in place (CUST-WP-0061-T05).
4. Workplan files match hub state (fix-consistency covers drift).
5. `WORK-RECORDS.md` (generated, all three queues above) stays current —
`statehub fix-consistency` regenerates it automatically (C-33); nothing
to hand-maintain.
## Scheduler (workstation-independent)
**Status: workstation cron bridge retired 2026-07-21** (BINKY-WP-0004-T06 /
DEC-2026-003). Cadence is owned by activity-core definitions
(`binky-daily-rhythm`, `binky-weekly-mail-intake`, `binky-weekly-review-prep`,
all `enabled: true`). Execution on Railiance:
| Path | Role |
| --- | --- |
| activity-core Temporal schedules | When work is due (Europe/Berlin) |
| host systemd user timers | Invoke agent-harness on railiance01 (interim) — `scripts/railiance-rhythm/` |
| agent-harness | Green/Blue tool profiles, hub completion events |
**Health:** `ssh railiance01 'systemctl --user list-timers | grep binky'` and
`tail ~/.cache/binky-control/rhythm/railiance-rhythm.log` on that host.
**Rollback (emergency only):** re-add workstation cron
`23 8 * * 1-5 /home/worsch/binky-control/scripts/rhythm-session.sh # binky rhythm bridge`
and pause railiance timers. Script kept for one month as break-glass.
**Known residual (BINKY-WP-0006):** activity-core `ISSUE_SINK_TYPE=state-hub`
emits progress events, not claimable issue-core tasks; agentic daily/review
on Railiance need `claude` CLI on that host (mail-scan is deterministic and
already runs there). Until Claude is installed on railiance01, agentic slots
may still be run from a laptop harness session with the same task files.
## Weekly review (founder, ~15 min)
Read the newest brief + `SuccessMilestones.md`. One question: did anything
move a milestone? If two consecutive weeks show activity without milestone
movement, RISK-005 escalates.