aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--todo.org27
1 files changed, 12 insertions, 15 deletions
diff --git a/todo.org b/todo.org
index 0d93573..8a6b741 100644
--- a/todo.org
+++ b/todo.org
@@ -7,6 +7,16 @@ Project-scoped (not the global =~/sync/org/roam/inbox.org= list).
* Rulesets Open Work
+** TODO [#A] Split team-specific publishing rules out of commits.md :commits:
+Move the team-specific publishing steps out of the global =claude-rules/commits.md= into a project/team overlay: the Linear status transitions and the hard-coded Slack channel ID are DeepSat-specific and could leak or misfire in unrelated projects. Leave the global file covering author identity, attribution, commit format, the review gate, and verification.
+
+The last two items of the 2026-05-04 audit pass; everything else in that cluster shipped 2026-05-22. Deferred deliberately: it's a structural split of a core rules file Craig is hand-editing, so he drives it once those edits settle.
+
+** TODO [#A] Define a /voice-unavailable fallback in the commits.md publish flow :commits:
+The publish flow makes the =/voice= pass mandatory but defines no fallback for when the skill isn't available. Add one: when =/voice= can't run, walk the patterns inline (or flag the gap explicitly) rather than blocking the publish.
+
+Freshness note: the 2026-05-04 audit framed this as a "=humanizer= unavailable" gap, but =humanizer= no longer exists — it was replaced by =/voice=. The residual gap is only the =/voice=-unavailable case. Deferred alongside the split task above until Craig's in-flight commits.md edits settle.
+
** DONE [#A] wrap-it-up Step 3.5 assumes GitHub-family remote :chore:quick:
CLOSED: [2026-05-22 Fri]
:PROPERTIES:
@@ -813,8 +823,8 @@ Each item below is a one-line summary of a sub-TODO further down. Tick the box w
- [X] [#B] =c4-analyze= + =c4-diagram=: clarify abstraction boundaries
**** Global rules
-- [ ] [#B] =commits.md=: split DeepSat/Linear/Slack-specific from global rules
-- [ ] [#A] =commits.md= + publish flows: =humanizer=-unavailable fallback
+- [X] [#B] =commits.md=: split DeepSat/Linear/Slack-specific from global rules → promoted to a top-level task (deferred for Craig)
+- [X] [#A] =commits.md= + publish flows: =humanizer=-unavailable fallback → promoted to a top-level task (deferred; humanizer premise moot)
- [X] [#B] =verification.md=: explicit "unable to verify" reporting standard
- [X] [#B] =testing.md=: property-based + mutation testing as escalation paths
- [X] [#B] =testing.md=: soften absolute TDD with explicit spike protocol
@@ -999,19 +1009,6 @@ Both commands now treat C4 as notation-independent: a "Choosing a notation" sect
Added an "Abstraction boundaries" section to both: a Container is a separately deployable/runnable unit (not synonymous with a Docker container — a SPA or managed DB counts), a Component lives inside one Container and isn't separately deployable. Added a 4e "Verify single abstraction level" check that walks every element and relationship to confirm it stays at the diagram's level, notation-independent.
-*** TODO [#A] =commits.md=: split DeepSat/Linear/Slack-specific publishing rules from global commit rules
-
-The global commit rule file includes Linear status transitions and a hard-coded
-Slack channel. That is team-specific and may leak or misfire in unrelated
-projects. Move those steps to a project/team overlay, leaving global rules for
-author identity, attribution, commit format, review gate, and verification.
-
-*** TODO [#A] =commits.md= and publish flows: define fallback when =humanizer= is unavailable
-
-Several workflows make =humanizer= mandatory, but no =humanizer= skill exists
-in this repo. Either add the skill, install instructions, or a fallback
-plain-English pass that satisfies the same checks without an external skill.
-
*** 2026-05-22 Fri @ 15:10:35 -0500 Added "When You Cannot Verify" standard to verification.md
Added a section requiring, when a verification command can't run, a four-part report: command attempted, why it couldn't run, risk left unverified, and the smallest next command for the user. States the principle that a check that didn't run is never reported as a pass — "unable to verify" is a required honest outcome, not silence. Placed after Red Flags.