discipline-md 0.1.0 → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "discipline-md",
3
- "version": "0.1.0",
3
+ "version": "0.1.1",
4
4
  "description": "Opinionated agentic-workflow framework for teams running AI coding agents that have hit the maintenance wall.",
5
5
  "keywords": [
6
6
  "agents",
@@ -55,6 +55,19 @@ The Sonnet/Opus/Haiku names above are Claude-specific. The same three-tier struc
55
55
  - **Workhorse tier** — strong general capability, balanced speed and cost. The default host. Use for: most feature work, test writing, doc updates, single-tool features, CHANGELOG/DECISIONS entries. Claude equivalent: Sonnet 4.6.
56
56
  - **Recon tier** — fast and cheap, well-bounded tasks. Use for: file/symbol search, doc-consistency audits, mechanical find-replace, test-output summarization, single-line tweaks. Claude equivalent: Haiku 4.5.
57
57
 
58
+ ### Tier enforcement (hard rule)
59
+
60
+ The tiers are not a suggestion. They are enforced on every delegation, in both directions.
61
+
62
+ - **Every spawn declares its tier, explicitly, before the work starts.** A subagent spawned with no stated tier is invalid — the host names Frontier / Workhorse / Recon for each delegation, every time. There is no "default by omission": an unnamed tier is a routing bug, not a shortcut.
63
+ - **The tier must match the task on both sides.** Under-tiering is a correctness risk; over-tiering is a cost leak. Both are violations:
64
+ - **Floor — never delegate *down*.** The task types in the Weak-model floor below, plus anything where a wrong answer is expensive or hard to detect, run at Frontier. Do not push them to a cheaper tier to save tokens; the saving is an illusion paid back in rework.
65
+ - **Ceiling — don't reach *up*.** Routine search, mechanical edits, summarization, and well-bounded single-file work run at Recon or Workhorse. Spending Frontier on them is waste; a host that does it repeatedly is mis-routing. Burn the expensive tier on the one hard subtask, not the whole job.
66
+ - **Tier mismatch is a stop condition.** A subagent that discovers mid-task it is the wrong tier for the work — a Recon agent hitting genuine ambiguity, a Workhorse agent hitting a Frontier-floor task — **stops and hands back with the reason** rather than pushing through under-tiered. Pushing through at the wrong tier is precisely the failure mode the tiers exist to prevent.
67
+ - **The host owns routing; the subagent owns honesty.** The host picks the tier from the rules above. The subagent enforces the floor by refusing work beneath its competence and naming why, instead of guessing confidently. "I'm not the right tier for this" is a successful outcome, not a failure.
68
+
69
+ Every deviation from these rules is tracked as an experimental `(model, task-type)` pair (see *Experimental scope and the two-failure rule* below) — never a silent widening of scope.
70
+
58
71
  ### Weak-model floor (hard rule)
59
72
 
60
73
  Some tasks are never run below Frontier tier unsupervised, regardless of how well-specified they look. A Workhorse- or Recon-tier agent that encounters one of these mid-task stops and surfaces it rather than attempting it:
@@ -259,9 +272,10 @@ The subagent pattern is the default. Recommend a direct planning session — hos
259
272
 
260
273
  - State the goal in one sentence.
261
274
  - List the relevant files or directories explicitly.
262
- - State the model tier and the role name.
275
+ - **Declare the model tier explicitly — Frontier / Workhorse / Recon. A spawn with no stated tier is invalid (see Tier enforcement).** Name the role alongside it.
263
276
  - State whether the subagent is read-only or edit-capable.
264
277
  - Require the role's output shape verbatim.
278
+ - **If the declared tier turns out wrong for the work mid-task, the subagent stops and hands back with the reason — it does not push through under- or over-tiered.**
265
279
  - Subagents do not own commits, merges, or doc-completion-gate sign-off. The host reconciles results and performs git operations.
266
280
 
267
281
  ## Project-Local Roles