binky-control/OperatingRhythm.md
tegwick 88a4886ea7
Some checks failed
Work Records / validate (push) Has been cancelled
BINKY-WP-0006: retarget Railiance rhythm to llm-connect/OpenRouter
Reject Claude Code (or any coding agent) on railiance01. Mail-scan stays
deterministic; triage/briefs use llm-connect HTTP → structured JSON →
deterministic apply. Document in integrations/railiance-llm-rhythm.md and
rewrite WP-0006 tasks accordingly; timers no longer require_claude.
2026-07-22 00:00:04 +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):** finish **llm-connect / OpenRouter** path
for mail triage + briefs on Railiance (structured LLM output + deterministic
apply). **Do not** install Claude Code or another coding agent on railiance01.
Mail-scan is already deterministic and proven there; see
`integrations/railiance-llm-rhythm.md`.
## 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.