aboutsummaryrefslogtreecommitdiff
path: root/.ai/workflows/inbox.org
diff options
context:
space:
mode:
authorCraig Jennings <c@cjennings.net>2026-06-24 07:09:21 -0400
committerCraig Jennings <c@cjennings.net>2026-06-24 07:09:21 -0400
commit9709638f1d50193bd4636205a142a2277f92e4f4 (patch)
tree8b9adc4fee6a853c4f629dd85210de91807db157 /.ai/workflows/inbox.org
parent06b6cbcf086729414ff9a533b1f031fb41c4088b (diff)
downloadrulesets-9709638f1d50193bd4636205a142a2277f92e4f4.tar.gz
rulesets-9709638f1d50193bd4636205a142a2277f92e4f4.zip
refactor(tasks): use a :blocker: tag, not a :BLOCKS: property
:BLOCKS: rulesets: was a malformed org tag, and the property form (:BLOCKED_BY: / :BLOCKS: carrying <project>: <what>) was more structure than the dependency needs. The blocking side now carries a plain :blocker: tag, mirroring :blocked: on the waiting side, with the which-project detail in the task body rather than a property. open-tasks.org reads the body for the blocking/requesting project; the scheme, the todo-format convention, and the inbox blocking-dependency handoff all move to the two-tag form. No property anywhere.
Diffstat (limited to '.ai/workflows/inbox.org')
-rw-r--r--.ai/workflows/inbox.org2
1 files changed, 1 insertions, 1 deletions
diff --git a/.ai/workflows/inbox.org b/.ai/workflows/inbox.org
index f3d400a..5fc855f 100644
--- a/.ai/workflows/inbox.org
+++ b/.ai/workflows/inbox.org
@@ -114,7 +114,7 @@ The item extends a task already filed. Update the parent TODO's body with a date
** File as TODO
Substantive but waits, or needs design/triage before implementation. Add the TODO under =* <Project> Open Work= with priority + tags per the priority-scheme check (core §6). Body summarizes the proposal and links the inbox content if it's been moved to =docs/design/=. Delete the inbox file (or move it to =docs/design/= first if the content survives).
-*Blocking-dependency handoff.* A special shape: another project sends a note that *this* project's work is blocking one of theirs ("your task X is blocked on us — we need Y"). File or link the owning task and add a =:BLOCKS: <their-project>: <what>= property to it (see the cross-project dependency convention in =todo-format.md=). The =:BLOCKS:= marker makes =open-tasks.org= surface that task *first*, since clearing it unblocks the other project. Dedup against an existing task rather than filing a duplicate. When the work later lands, drop =:BLOCKS:= and notify the waiting project (=inbox-send <their-project> --text "Delivered: <what> — you're unblocked."=) so it can lift its own =:blocked:=.
+*Blocking-dependency handoff.* A special shape: another project sends a note that *this* project's work is blocking one of theirs ("your task X is blocked on us — we need Y"). File or link the owning task, tag it =:blocker:=, and name the requesting project in the body (see the cross-project dependency convention in =todo-format.md=). The =:blocker:= tag makes =open-tasks.org= surface that task *first*, since clearing it unblocks the other project. Dedup against an existing task rather than filing a duplicate. When the work later lands, drop =:blocker:= and notify the waiting project (=inbox-send <their-project> --text "Delivered: <what> — you're unblocked."=) so it can lift its own =:blocked:=.
** Defer
Rename in place to =inbox/PROCESSED-<original-filename>= and add a brief comment line at the top: =# Deferred YYYY-MM-DD: <condition>=. Don't accumulate deferred items indefinitely — sweep them on a future process pass when the condition is met or the deferral has aged out.