aboutsummaryrefslogtreecommitdiff
path: root/.ai/workflows/broadcast.org
diff options
context:
space:
mode:
authorCraig Jennings <c@cjennings.net>2026-06-23 23:06:46 -0400
committerCraig Jennings <c@cjennings.net>2026-06-23 23:06:46 -0400
commit24ca58d764dbcc2bad57a914a10e9e9b89a3f66e (patch)
treedc3ab8db840b1562db36cc048e44a391e31fa73f /.ai/workflows/broadcast.org
parent27da1f1d3290314d32455eac4e049118b00a7a13 (diff)
downloadrulesets-24ca58d764dbcc2bad57a914a10e9e9b89a3f66e.tar.gz
rulesets-24ca58d764dbcc2bad57a914a10e9e9b89a3f66e.zip
feat(inbox): consolidate three inbox workflows into one engine
I merged process-inbox, monitor-inbox, and inbox-zero into one inbox.org engine. A shared core (value gate, skeptical review, disposition ladder, reply discipline, capture-guard, priority-scheme check) holds the logic that used to be duplicated and cross-referenced across the three files. Each mode (process, monitor, roam) references the core by name instead of restating it. Every trigger phrase still works, now routing to a mode, so there's nothing to relearn. I added the interactive auto inbox zero mode: ask for an interval, run roam mode on /loop, acknowledge-only on an empty cycle, surface a find to a queue gated on a yes. The fully-unattended /schedule pass stays vNext, tracked separately. I repointed every live caller (INDEX, protocols, startup Phase C, wrap-up Step 3, triage-intake, broadcast) at inbox.org and its modes, then deleted the three old files. triage-intake and no-approvals stay separate by design. The value gate, dispositions, capture-guard, and reply discipline all behave as before. Built from the Ready spec. Workflow-integrity and sync-check pass on both the canonical and mirror trees, the stale-reference grep is clean, and the full suite is green. Claude-Session: https://claude.ai/code/session_017PtX1nt1rtYVATuzmzBS4f
Diffstat (limited to '.ai/workflows/broadcast.org')
-rw-r--r--.ai/workflows/broadcast.org4
1 files changed, 2 insertions, 2 deletions
diff --git a/.ai/workflows/broadcast.org b/.ai/workflows/broadcast.org
index 1be07d2..60e9ed1 100644
--- a/.ai/workflows/broadcast.org
+++ b/.ai/workflows/broadcast.org
@@ -159,11 +159,11 @@ broadcast, not a task and not tailored to this project.
- Ask Craig any follow-up questions then — this message is deliberately general.
#+end_example
-The "For the receiving agent" block is fixed text — it travels with every situational broadcast so the message is self-describing. A receiving project's =process-inbox= reads it and acts on those instructions without needing any special-casing; the value gate accepts it as situational awareness that improves how the project works.
+The "For the receiving agent" block is fixed text — it travels with every situational broadcast so the message is self-describing. A receiving project's =inbox.org= process mode reads it and acts on those instructions without needing any special-casing; the value gate accepts it as situational awareness that improves how the project works.
** Receiving behavior (what a project does with an incoming situational broadcast)
-When =process-inbox= encounters a =Broadcast:= item, the disposition is *record-and-hold*, not file-as-task:
+When =inbox.org= process mode encounters a =Broadcast:= item, the disposition is *record-and-hold*, not file-as-task:
1. Add a dated entry to =notes.org= Active Reminders capturing the situation and its end date (if any).
2. If the event bears on an open task, note the connection in that task's body.