dorfl 0.1.0 → 0.1.2

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.
Files changed (324) hide show
  1. package/dist/advance-ci-template.d.ts +3 -3
  2. package/dist/advance-ci-template.js +1 -1
  3. package/dist/advance-ci-template.js.map +1 -1
  4. package/dist/advance-classify.d.ts +5 -5
  5. package/dist/advance-classify.d.ts.map +1 -1
  6. package/dist/advance-classify.js +4 -4
  7. package/dist/advance-drivers.d.ts +7 -7
  8. package/dist/advance-drivers.d.ts.map +1 -1
  9. package/dist/advance-drivers.js +5 -5
  10. package/dist/advance-drivers.js.map +1 -1
  11. package/dist/advance-isolated.d.ts +3 -3
  12. package/dist/advance-isolated.d.ts.map +1 -1
  13. package/dist/advance-isolated.js +1 -1
  14. package/dist/advance-lifecycle-template.d.ts +2 -2
  15. package/dist/advance-lifecycle-template.js +9 -9
  16. package/dist/advance-lifecycle-template.js.map +1 -1
  17. package/dist/advance-loop-driver.d.ts +3 -3
  18. package/dist/advance-loop-driver.d.ts.map +1 -1
  19. package/dist/advance-loop-driver.js +1 -1
  20. package/dist/advance-treeless-publish.d.ts +1 -1
  21. package/dist/advance.d.ts +11 -11
  22. package/dist/advance.d.ts.map +1 -1
  23. package/dist/advance.js +21 -21
  24. package/dist/advance.js.map +1 -1
  25. package/dist/advancing-lock.d.ts +1 -1
  26. package/dist/advancing-lock.js +5 -5
  27. package/dist/apply-decide.d.ts +2 -2
  28. package/dist/apply-decide.js +2 -2
  29. package/dist/apply-merge-action.d.ts +4 -4
  30. package/dist/apply-merge-action.js +2 -2
  31. package/dist/apply-persist.d.ts +5 -5
  32. package/dist/apply-persist.d.ts.map +1 -1
  33. package/dist/apply-persist.js +7 -7
  34. package/dist/apply-persist.js.map +1 -1
  35. package/dist/buildable-body.d.ts +14 -14
  36. package/dist/buildable-body.js +9 -9
  37. package/dist/claim-cas.d.ts +3 -3
  38. package/dist/claim-cas.js +1 -1
  39. package/dist/claim-cas.js.map +1 -1
  40. package/dist/cli.d.ts.map +1 -1
  41. package/dist/cli.js +83 -77
  42. package/dist/cli.js.map +1 -1
  43. package/dist/close-job-template.d.ts +3 -3
  44. package/dist/close-job-template.js +8 -8
  45. package/dist/close-job.d.ts +8 -8
  46. package/dist/close-job.js +25 -25
  47. package/dist/close-job.js.map +1 -1
  48. package/dist/complete.d.ts +3 -3
  49. package/dist/complete.js +8 -8
  50. package/dist/complete.js.map +1 -1
  51. package/dist/concurrency.d.ts +1 -1
  52. package/dist/concurrency.js +1 -1
  53. package/dist/config.d.ts +32 -32
  54. package/dist/config.js +5 -5
  55. package/dist/config.js.map +1 -1
  56. package/dist/continue-branch.d.ts +1 -1
  57. package/dist/continue-branch.js +1 -1
  58. package/dist/cwd-section.js +1 -1
  59. package/dist/cwd-section.js.map +1 -1
  60. package/dist/decision-engine.d.ts +2 -2
  61. package/dist/do-autopick.d.ts +6 -6
  62. package/dist/do-autopick.d.ts.map +1 -1
  63. package/dist/do-autopick.js +5 -5
  64. package/dist/do-autopick.js.map +1 -1
  65. package/dist/do-config.d.ts +3 -3
  66. package/dist/do-config.js +3 -3
  67. package/dist/do-config.js.map +1 -1
  68. package/dist/do-remote-auto.d.ts +2 -2
  69. package/dist/do-remote-auto.js +1 -1
  70. package/dist/do.d.ts +25 -25
  71. package/dist/do.d.ts.map +1 -1
  72. package/dist/do.js +22 -22
  73. package/dist/do.js.map +1 -1
  74. package/dist/drop-source.d.ts +2 -2
  75. package/dist/env-config.js +8 -8
  76. package/dist/env-config.js.map +1 -1
  77. package/dist/format.js +3 -3
  78. package/dist/format.js.map +1 -1
  79. package/dist/frontmatter.d.ts +33 -39
  80. package/dist/frontmatter.d.ts.map +1 -1
  81. package/dist/frontmatter.js +18 -31
  82. package/dist/frontmatter.js.map +1 -1
  83. package/dist/install-ci-branch-protection.d.ts +1 -1
  84. package/dist/install-ci-branch-protection.js +1 -1
  85. package/dist/install-ci-capabilities/advance-lifecycle.d.ts +1 -1
  86. package/dist/install-ci-capabilities/advance-lifecycle.js +1 -1
  87. package/dist/install-ci-capabilities/close-job.d.ts +1 -1
  88. package/dist/install-ci-capabilities/close-job.js +1 -1
  89. package/dist/install-ci-capabilities/example-noop.d.ts +1 -1
  90. package/dist/install-ci-capabilities/example-noop.js +1 -1
  91. package/dist/install-ci-capabilities/intake.d.ts +2 -2
  92. package/dist/install-ci-capabilities/intake.js +2 -2
  93. package/dist/install-ci-capabilities/verify.d.ts +1 -1
  94. package/dist/install-ci-capabilities/verify.js +1 -1
  95. package/dist/install-ci-core.d.ts +3 -3
  96. package/dist/install-ci-core.js +2 -2
  97. package/dist/install-ci-core.js.map +1 -1
  98. package/dist/install-ci-github.d.ts +1 -1
  99. package/dist/install-ci-github.js +1 -1
  100. package/dist/install-ci.d.ts +1 -1
  101. package/dist/install-ci.js +4 -4
  102. package/dist/install-ci.js.map +1 -1
  103. package/dist/intake-event.d.ts +6 -6
  104. package/dist/intake-event.js +6 -6
  105. package/dist/intake-marker.d.ts +3 -3
  106. package/dist/intake-marker.d.ts.map +1 -1
  107. package/dist/intake-triage.d.ts +1 -1
  108. package/dist/intake-triage.js +2 -2
  109. package/dist/intake-trigger-template.d.ts +8 -8
  110. package/dist/intake-trigger-template.d.ts.map +1 -1
  111. package/dist/intake-trigger-template.js +16 -16
  112. package/dist/intake-trigger-template.js.map +1 -1
  113. package/dist/intake.d.ts +50 -50
  114. package/dist/intake.d.ts.map +1 -1
  115. package/dist/intake.js +70 -70
  116. package/dist/intake.js.map +1 -1
  117. package/dist/integration-core.d.ts +17 -17
  118. package/dist/integration-core.js +17 -17
  119. package/dist/integration-core.js.map +1 -1
  120. package/dist/isolation.d.ts +3 -3
  121. package/dist/issue-provider.d.ts +4 -4
  122. package/dist/issue-provider.js +1 -1
  123. package/dist/item-lock.d.ts +21 -21
  124. package/dist/item-lock.d.ts.map +1 -1
  125. package/dist/item-lock.js +16 -16
  126. package/dist/item-path.d.ts +2 -2
  127. package/dist/item-path.js +2 -2
  128. package/dist/ledger-lint.d.ts +9 -9
  129. package/dist/ledger-lint.js +9 -9
  130. package/dist/ledger-read.d.ts +57 -57
  131. package/dist/ledger-read.d.ts.map +1 -1
  132. package/dist/ledger-read.js +24 -24
  133. package/dist/ledger-read.js.map +1 -1
  134. package/dist/ledger-write.d.ts +2 -2
  135. package/dist/ledger-write.js +1 -1
  136. package/dist/lifecycle-gather.d.ts +1 -1
  137. package/dist/lifecycle-gather.js +16 -16
  138. package/dist/lifecycle-gather.js.map +1 -1
  139. package/dist/lifecycle-pools.d.ts +4 -4
  140. package/dist/lifecycle-pools.js +1 -1
  141. package/dist/merge-question-surfacer.d.ts +3 -3
  142. package/dist/merge-question-surfacer.js +2 -2
  143. package/dist/merge-question-surfacer.js.map +1 -1
  144. package/dist/mint-adr.js +4 -4
  145. package/dist/mirror-pool-scan.d.ts +2 -2
  146. package/dist/mirror-pool-scan.js +3 -3
  147. package/dist/mirror-pool-scan.js.map +1 -1
  148. package/dist/needs-attention.d.ts +13 -13
  149. package/dist/needs-attention.d.ts.map +1 -1
  150. package/dist/needs-attention.js +11 -11
  151. package/dist/needs-attention.js.map +1 -1
  152. package/dist/orphan-sidecar.d.ts +2 -2
  153. package/dist/placement.d.ts +6 -6
  154. package/dist/placement.js +2 -2
  155. package/dist/prd-to-spec.d.ts +15 -1
  156. package/dist/prd-to-spec.d.ts.map +1 -1
  157. package/dist/prd-to-spec.js +36 -14
  158. package/dist/prd-to-spec.js.map +1 -1
  159. package/dist/prompt.d.ts +24 -24
  160. package/dist/prompt.d.ts.map +1 -1
  161. package/dist/prompt.js +29 -31
  162. package/dist/prompt.js.map +1 -1
  163. package/dist/protocol/CLAIM-PROTOCOL.md +4 -4
  164. package/dist/protocol/REVIEW-PROTOCOL.md +1 -1
  165. package/dist/protocol/TASKING-PROTOCOL.md +12 -12
  166. package/dist/protocol/WORK-CONTRACT.md +39 -39
  167. package/dist/protocol/spec-template.md +1 -1
  168. package/dist/protocol/task-template.md +3 -3
  169. package/dist/readiness.d.ts +1 -1
  170. package/dist/recover-isolated.js +1 -1
  171. package/dist/repo-config.js +12 -12
  172. package/dist/repo-config.js.map +1 -1
  173. package/dist/review-gate.d.ts +3 -3
  174. package/dist/review-gate.d.ts.map +1 -1
  175. package/dist/review-gate.js +11 -10
  176. package/dist/review-gate.js.map +1 -1
  177. package/dist/review-verdict.d.ts +2 -2
  178. package/dist/review-verdict.d.ts.map +1 -1
  179. package/dist/review-verdict.js +1 -1
  180. package/dist/run.d.ts +1 -1
  181. package/dist/run.js +5 -5
  182. package/dist/run.js.map +1 -1
  183. package/dist/scan.d.ts +10 -10
  184. package/dist/scan.d.ts.map +1 -1
  185. package/dist/scan.js +8 -8
  186. package/dist/scan.js.map +1 -1
  187. package/dist/select-order.d.ts +1 -1
  188. package/dist/select-priority.d.ts +12 -12
  189. package/dist/select-priority.d.ts.map +1 -1
  190. package/dist/select-priority.js +5 -5
  191. package/dist/select-priority.js.map +1 -1
  192. package/dist/sidecar.d.ts +2 -2
  193. package/dist/sidecar.js +2 -2
  194. package/dist/sidecar.js.map +1 -1
  195. package/dist/slug-namespace.d.ts +1 -1
  196. package/dist/slug-namespace.js +3 -3
  197. package/dist/slug-namespace.js.map +1 -1
  198. package/dist/spec-complete.js +2 -2
  199. package/dist/spec-complete.js.map +1 -1
  200. package/dist/start.d.ts +1 -1
  201. package/dist/start.js +3 -3
  202. package/dist/start.js.map +1 -1
  203. package/dist/status.d.ts +3 -3
  204. package/dist/status.js +4 -4
  205. package/dist/status.js.map +1 -1
  206. package/dist/surface-gate.d.ts +2 -2
  207. package/dist/surface-gate.d.ts.map +1 -1
  208. package/dist/surface-persist.d.ts +2 -2
  209. package/dist/surface-persist.d.ts.map +1 -1
  210. package/dist/tasker-review-loop.d.ts +8 -8
  211. package/dist/tasker-review-loop.d.ts.map +1 -1
  212. package/dist/tasker-review-loop.js +8 -8
  213. package/dist/tasker-review-loop.js.map +1 -1
  214. package/dist/tasking-eligibility.d.ts +21 -21
  215. package/dist/tasking-eligibility.d.ts.map +1 -1
  216. package/dist/tasking-eligibility.js +10 -10
  217. package/dist/tasking-lock.d.ts +8 -8
  218. package/dist/tasking-lock.d.ts.map +1 -1
  219. package/dist/tasking-lock.js +20 -21
  220. package/dist/tasking-lock.js.map +1 -1
  221. package/dist/tasking.d.ts +33 -33
  222. package/dist/tasking.d.ts.map +1 -1
  223. package/dist/tasking.js +89 -88
  224. package/dist/tasking.js.map +1 -1
  225. package/dist/triage-gate.d.ts +1 -1
  226. package/dist/triage-persist.d.ts +5 -5
  227. package/dist/triage-persist.js +15 -15
  228. package/dist/triage-persist.js.map +1 -1
  229. package/dist/verify-workflow-template.d.ts +1 -1
  230. package/dist/verify-workflow-template.js +2 -2
  231. package/dist/work-layout.d.ts +9 -7
  232. package/dist/work-layout.d.ts.map +1 -1
  233. package/dist/work-layout.js +9 -7
  234. package/dist/work-layout.js.map +1 -1
  235. package/dist/workspace.d.ts +1 -1
  236. package/package.json +1 -1
  237. package/src/advance-ci-template.ts +4 -4
  238. package/src/advance-classify.ts +5 -5
  239. package/src/advance-drivers.ts +10 -10
  240. package/src/advance-isolated.ts +3 -3
  241. package/src/advance-lifecycle-template.ts +9 -9
  242. package/src/advance-loop-driver.ts +3 -3
  243. package/src/advance-treeless-publish.ts +1 -1
  244. package/src/advance.ts +30 -30
  245. package/src/advancing-lock.ts +6 -6
  246. package/src/apply-decide.ts +2 -2
  247. package/src/apply-merge-action.ts +5 -5
  248. package/src/apply-persist.ts +8 -8
  249. package/src/buildable-body.ts +14 -14
  250. package/src/claim-cas.ts +4 -4
  251. package/src/cli.ts +94 -84
  252. package/src/close-job-template.ts +8 -8
  253. package/src/close-job.ts +26 -26
  254. package/src/complete.ts +11 -11
  255. package/src/concurrency.ts +1 -1
  256. package/src/config.ts +37 -37
  257. package/src/continue-branch.ts +1 -1
  258. package/src/cwd-section.ts +1 -1
  259. package/src/decision-engine.ts +3 -3
  260. package/src/do-autopick.ts +9 -9
  261. package/src/do-config.ts +6 -6
  262. package/src/do-remote-auto.ts +2 -2
  263. package/src/do.ts +49 -49
  264. package/src/drop-source.ts +2 -2
  265. package/src/env-config.ts +8 -8
  266. package/src/format.ts +3 -3
  267. package/src/frontmatter.ts +42 -60
  268. package/src/install-ci-branch-protection.ts +1 -1
  269. package/src/install-ci-capabilities/advance-lifecycle.ts +1 -1
  270. package/src/install-ci-capabilities/close-job.ts +1 -1
  271. package/src/install-ci-capabilities/example-noop.ts +1 -1
  272. package/src/install-ci-capabilities/intake.ts +2 -2
  273. package/src/install-ci-capabilities/verify.ts +1 -1
  274. package/src/install-ci-core.ts +4 -4
  275. package/src/install-ci-github.ts +1 -1
  276. package/src/install-ci.ts +4 -4
  277. package/src/intake-event.ts +6 -6
  278. package/src/intake-marker.ts +3 -3
  279. package/src/intake-triage.ts +2 -2
  280. package/src/intake-trigger-template.ts +17 -17
  281. package/src/intake.ts +97 -97
  282. package/src/integration-core.ts +35 -35
  283. package/src/isolation.ts +3 -3
  284. package/src/issue-provider.ts +4 -4
  285. package/src/item-lock.ts +21 -21
  286. package/src/item-path.ts +2 -2
  287. package/src/ledger-lint.ts +9 -9
  288. package/src/ledger-read.ts +81 -81
  289. package/src/ledger-write.ts +3 -3
  290. package/src/lifecycle-gather.ts +16 -16
  291. package/src/lifecycle-pools.ts +4 -4
  292. package/src/merge-question-surfacer.ts +4 -4
  293. package/src/mint-adr.ts +4 -4
  294. package/src/mirror-pool-scan.ts +5 -5
  295. package/src/needs-attention.ts +22 -22
  296. package/src/orphan-sidecar.ts +2 -2
  297. package/src/placement.ts +6 -6
  298. package/src/prd-to-spec.ts +51 -15
  299. package/src/prompt.ts +33 -35
  300. package/src/readiness.ts +1 -1
  301. package/src/recover-isolated.ts +1 -1
  302. package/src/repo-config.ts +12 -12
  303. package/src/review-gate.ts +12 -11
  304. package/src/review-verdict.ts +2 -2
  305. package/src/run.ts +6 -6
  306. package/src/scan.ts +15 -15
  307. package/src/select-order.ts +1 -1
  308. package/src/select-priority.ts +13 -13
  309. package/src/sidecar.ts +3 -3
  310. package/src/slug-namespace.ts +3 -3
  311. package/src/spec-complete.ts +2 -2
  312. package/src/start.ts +4 -4
  313. package/src/status.ts +7 -7
  314. package/src/surface-gate.ts +2 -2
  315. package/src/surface-persist.ts +2 -2
  316. package/src/tasker-review-loop.ts +15 -15
  317. package/src/tasking-eligibility.ts +21 -21
  318. package/src/tasking-lock.ts +27 -28
  319. package/src/tasking.ts +124 -123
  320. package/src/triage-gate.ts +1 -1
  321. package/src/triage-persist.ts +16 -16
  322. package/src/verify-workflow-template.ts +2 -2
  323. package/src/work-layout.ts +9 -7
  324. package/src/workspace.ts +1 -1
package/dist/tasking.js CHANGED
@@ -19,7 +19,7 @@ const DEFAULT_LOCK_SEAM = {
19
19
  };
20
20
  const DEFAULT_ARBITER = 'origin';
21
21
  /**
22
- * **The STAGED-TASKS dir** (prd `staging-pool-position-gate-and-trust-model`,
22
+ * **The STAGED-TASKS dir** (spec `staging-pool-position-gate-and-trust-model`,
23
23
  * task `pre-backlog-staging-folder-and-promote-step-a`, governing ADR
24
24
  * `placement-is-runner-deterministic-humanonly-is-agent-judgement`). The runner
25
25
  * lands the tasker's emitted task files HERE, NOT in `work/tasks/ready/`: an item
@@ -36,7 +36,7 @@ export const STAGED_TASKS_DIR = workFolderRel('tasks-backlog');
36
36
  * origin, or an `--tasks-land-in ready` operator override). The agent NEVER
37
37
  * writes here — it always writes to {@link STAGED_TASKS_DIR}; the runner
38
38
  * redirects the emitted files to the resolved destination at integrate-stage
39
- * time. prd US #4 / the governing ADR: the agent cannot self-place into the
39
+ * time. spec US #4 / the governing ADR: the agent cannot self-place into the
40
40
  * pool. Task `runner-deterministic-slice-placement-policy-and-precedence`.
41
41
  */
42
42
  const POOL_TASKS_DIR = workFolderRel('tasks-ready');
@@ -65,7 +65,7 @@ function stagedTaskPath(name) {
65
65
  return `${STAGED_TASKS_DIR}/${name}`;
66
66
  }
67
67
  /**
68
- * Run the `do prd:<slug>` tasking path end-to-end. Never throws for the expected
68
+ * Run the `do spec:<slug>` tasking path end-to-end. Never throws for the expected
69
69
  * gate-refused / lock-lost / agent-failed / stale cases — those are returned with
70
70
  * the appropriate exit code and outcome. The runner owns all git; the agent only
71
71
  * writes task files.
@@ -82,18 +82,18 @@ export async function performTask(options) {
82
82
  const slug = options.slug;
83
83
  const doer = options.doer ?? 'agent';
84
84
  const lock = options.lock ?? DEFAULT_LOCK_SEAM;
85
- // 0. The prd must exist in the checkout (`work/prds/ready/<slug>.md`) — it is the
85
+ // 0. The spec must exist in the checkout (`work/specs/ready/<slug>.md`) — it is the
86
86
  // source the agent tasks + the file the lock holds.
87
87
  const specPath = workItemPath(cwd, 'specs-ready', slug);
88
88
  if (!existsSync(specPath)) {
89
- const message = `no prd '${slug}' found at ${workFolderRel('specs-ready')}/${slug}.md.`;
89
+ const message = `no spec '${slug}' found at ${workFolderRel('specs-ready')}/${slug}.md.`;
90
90
  note(message);
91
91
  return { exitCode: 1, outcome: 'usage-error', slug, message };
92
92
  }
93
93
  const specContent = readFileSync(specPath, 'utf8');
94
94
  const specFm = parseFrontmatter(specContent);
95
95
  // 1. RESOLVE THE GATE (agent path only). The human path is UNBOUND — a human
96
- // decides for themselves whether a prd is taskable.
96
+ // decides for themselves whether a spec is taskable.
97
97
  if (doer === 'agent') {
98
98
  const eligibility = resolveAgentGate(cwd, slug, specFm, options.autoTask, options.explicit ?? false);
99
99
  if (!eligibility.taskable) {
@@ -136,9 +136,9 @@ export async function performTask(options) {
136
136
  }
137
137
  // 2b. ONBOARD the agent's tasking work onto a `work/<slug>` BRANCH cut from the
138
138
  // freshly-fetched `<arbiter>/main` (task `slice-output-through-integration`).
139
- // The prd body rests in `work/prds/ready/<slug>.md` on `<arbiter>/main` (the lock no
140
- // longer moves it), so the branch's base HOLDS the held prd — the lifecycle
141
- // stage below moves it `prd/ → prd-tasked/` ON THIS BRANCH and the shared integrate core (`--propose`
139
+ // The spec body rests in `work/specs/ready/<slug>.md` on `<arbiter>/main` (the lock no
140
+ // longer moves it), so the branch's base HOLDS the held spec — the lifecycle
141
+ // stage below moves it `specs/ready/specs/tasked/` ON THIS BRANCH and the shared integrate core (`--propose`
142
142
  // PR / `--merge` main) lands the whole transition, WITHOUT the lock release
143
143
  // committing tasks straight to `main`. The agent runs IN-PLACE on this branch
144
144
  // (branch ≠ worktree; the isolation seam upgrades it). The HUMAN path stays on
@@ -146,7 +146,7 @@ export async function performTask(options) {
146
146
  if (useLock) {
147
147
  await switchToWorkBranch(cwd, arbiter, slug, env);
148
148
  }
149
- // 3. INVOKE THE AGENT with the to-task prd. It WRITES
149
+ // 3. INVOKE THE AGENT with the to-task spec. It WRITES
150
150
  // `work/tasks/backlog/*.md` task files (the STAGED area — NOT `work/tasks/ready/`,
151
151
  // which is the agent-eligible pool the runner owns the promotion into; task
152
152
  // `pre-backlog-staging-folder-and-promote-step-a`); it does NO git. We
@@ -155,11 +155,10 @@ export async function performTask(options) {
155
155
  const before = snapshotStagedTasks(cwd);
156
156
  // Also snapshot the POOL `work/tasks/ready/` BEFORE the agent runs: the runner's
157
157
  // final commit must scrub any agent writes there (an attempt to self-place into
158
- // the pool, prd US #4) before `git add -A` would sweep them in.
158
+ // the pool, spec US #4) before `git add -A` would sweep them in.
159
159
  const poolBefore = snapshotPool(cwd);
160
- // MIGRATE step (prd `prd-to-spec-vocabulary-cutover-and-migration-command`):
161
- // read the parent-spec self-pointer off `prdFm.spec` (populated beside
162
- // `prdFm.prd` by the expand task).
160
+ // Read the parent-spec self-pointer off `specFm.spec` (populated from the
161
+ // `spec:` key).
163
162
  const prompt = buildTaskingSpec(slug, specFm.spec);
164
163
  let agent;
165
164
  try {
@@ -205,10 +204,10 @@ export async function performTask(options) {
205
204
  env: agentEnv,
206
205
  note,
207
206
  });
208
- // DECOMPOSITION UNCLEAR: emit NO guessed tasks — route the held prd to
207
+ // DECOMPOSITION UNCLEAR: emit NO guessed tasks — route the held spec to
209
208
  // needs-attention with the questions as the reason. The lock release amends the
210
- // `prd:<slug>` unified lock `active → stuck` (the tasking needs-attention surface
211
- // is the stuck lock now — NO folder write; the prd body stays in `work/prds/ready/`).
209
+ // `spec:<slug>` unified lock `active → stuck` (the tasking needs-attention surface
210
+ // is the stuck lock now — NO folder write; the spec body stays in `work/specs/ready/`).
212
211
  if (loopDisposition.outcome === 'decomposition-unclear') {
213
212
  const reason = decompositionUnclearReason(slug, loopDisposition.specQuestions);
214
213
  if (useLock) {
@@ -243,7 +242,7 @@ export async function performTask(options) {
243
242
  }
244
243
  }
245
244
  // 4. The RUNNER commits the COMPLETING transition: drop the produced backlog
246
- // tasks IN + move the prd tasking/ -> prd-tasked/ (residence = tasked-ness) — now
245
+ // tasks IN + move the spec specs/ready/ -> specs/tasked/ (residence = tasked-ness) — now
247
246
  // through the SHARED integrate core (`--propose` PR / `--merge` main), NOT a
248
247
  // direct commit to `main`. The agent never does git. (The backlog snapshot is
249
248
  // taken AFTER any loop edits, so the runner integrates the IMPROVED tasks,
@@ -254,7 +253,7 @@ export async function performTask(options) {
254
253
  // `runner-deterministic-slice-placement-policy-and-precedence`). Resolve which
255
254
  // folder the runner lands the emitted tasks in BEFORE handing them to the
256
255
  // shared integrate band: precedence `explicit > untrusted-origin ⇒ staging >
257
- // tasksLandIn > built-in (staging)`, all from unforgeable inputs (the prd's
256
+ // tasksLandIn > built-in (staging)`, all from unforgeable inputs (the spec's
258
257
  // stamped `originTrust:` + the resolved per-repo default + the operator's
259
258
  // explicit flag). The agent NEVER influences this; it always writes to
260
259
  // `work/tasks/backlog/`, and the runner redirects at `stage()` time.
@@ -275,11 +274,11 @@ export async function performTask(options) {
275
274
  if (useLock) {
276
275
  // READ-STABILITY BACKSTOP (the lock's content-identity check, now owned at the
277
276
  // integrate seam): the OUTPUT no longer rides the lock release, so the band
278
- // below would otherwise rebase a concurrent edit of the held prd body CLEANLY
279
- // into prd/ (a rename+edit merge) while the tasks were cut from the OLD body —
277
+ // below would otherwise rebase a concurrent edit of the held spec body CLEANLY
278
+ // into spec/ (a rename+edit merge) while the tasks were cut from the OLD body —
280
279
  // the exact silent stale-task drift the lock forbids
281
- // (`work/notes/observations/tasking-lock-does-not-stabilise-prd-content.md`). So we
282
- // compare the CURRENTLY held `work/prds/ready/<slug>.md` blob on the arbiter against
280
+ // (`work/notes/observations/tasking-lock-does-not-stabilise-spec-content.md`). So we
281
+ // compare the CURRENTLY held `work/specs/ready/<slug>.md` blob on the arbiter against
283
282
  // the snapshot the lock TOOK (`lockedBlob`); ANY change ⇒ STALE ⇒ fail loud,
284
283
  // touch NOTHING (the lock stays held; a human re-tasks or routes to
285
284
  // needs-attention). It is the SAME content-identity check `releaseTaskingLock`
@@ -288,16 +287,16 @@ export async function performTask(options) {
288
287
  const stale = await heldSpecIsStale(cwd, arbiter, slug, lockedBlob, env);
289
288
  if (stale) {
290
289
  const specRel = workItemRel('specs-ready', `${slug}.md`);
291
- const message = `RELEASE CONFLICT for '${slug}': the prd was edited (${specRel} ` +
290
+ const message = `RELEASE CONFLICT for '${slug}': the spec was edited (${specRel} ` +
292
291
  `changed on ${arbiter}/main) while the tasking lock was held. The tasking is ` +
293
- `STALE — re-task from the edited prd or route it to needs-attention. ` +
292
+ `STALE — re-task from the edited spec or route it to needs-attention. ` +
294
293
  `The arbiter was NOT modified (lock still held).`;
295
294
  note(message);
296
295
  return { exitCode: 4, outcome: 'stale', slug, message };
297
296
  }
298
297
  // Route the OUTPUT through the SHARED integrate back-half (task
299
- // `slice-output-through-integration`): the produced backlog tasks + the prd
300
- // lifecycle move (`work/prds/ready/ -> work/prds/tasked/`, residence = tasked-ness) integrate
298
+ // `slice-output-through-integration`): the produced backlog tasks + the spec
299
+ // lifecycle move (`work/specs/ready/ -> work/specs/tasked/`, residence = tasked-ness) integrate
301
300
  // via `performIntegration` honoring `--propose` (push the work branch + open a
302
301
  // PR, NO `main` touch) / `--merge` (land on `main`). Because the integrate-time
303
302
  // args resolve ONCE in the shared core, every `do task:` arg applies here by
@@ -337,13 +336,13 @@ export async function performTask(options) {
337
336
  // path's merge-vs-propose decision is the `integration` mode the user typed;
338
337
  // `merge` IS the auto-land mode, so a resolved `merge` is never downgraded.
339
338
  // The task gate family is `--review`/`--no-review`/`--review-model` only
340
- // (prd US #6).
339
+ // (spec US #6).
341
340
  mode: options.integration ?? 'propose',
342
341
  noPR: options.noPR,
343
342
  providerInstance: options.providerInstance,
344
343
  type: 'tasking',
345
344
  lifecycle: {
346
- // Read the PR title / commit summary from the held prd (before it moves).
345
+ // Read the PR title / commit summary from the held spec (before it moves).
347
346
  titlePath: workItemPath(cwd, 'specs-ready', slug),
348
347
  commitTag: 'tasked',
349
348
  stage: () => stageTaskingLifecycle({
@@ -368,9 +367,9 @@ export async function performTask(options) {
368
367
  // the review BEFORE the stage/integrate and did NOT integrate the tasks
369
368
  // (correct). The CORRECT task-path destination is the SAME needs-attention
370
369
  // route the lock release owns for the decomposition-unclear verdict: it amends
371
- // the `prd:<slug>` unified lock `active -> stuck` with the block reason (the
370
+ // the `spec:<slug>` unified lock `active -> stuck` with the block reason (the
372
371
  // tasking needs-attention surface is the stuck lock now — NO folder write; the
373
- // prd body stays in `work/prds/ready/`). So on a block we route the held prd to
372
+ // spec body stays in `work/specs/ready/`). So on a block we route the held spec to
374
373
  // needs-attention THROUGH the lock release — the set never lands.
375
374
  if (core.outcome === 'review-blocked') {
376
375
  const reason = taskGateBlockedReason(slug, core.reviewBlockReason);
@@ -397,9 +396,9 @@ export async function performTask(options) {
397
396
  }
398
397
  if (core.outcome === 'review-unparseable') {
399
398
  // The task-set acceptance gate RAN but its verdict was UNPARSEABLE (malformed
400
- // JSON). Route the held prd to needs-attention through the SAME lock-release
399
+ // JSON). Route the held spec to needs-attention through the SAME lock-release
401
400
  // seam the block path uses (the tasking needs-attention surface is the stuck
402
- // `prd:<slug>` lock; no folder write). It is NOT a block (the gate output was
401
+ // `spec:<slug>` lock; no folder write). It is NOT a block (the gate output was
403
402
  // unreadable) — record it as the transient-infra-class re-run signal so the
404
403
  // stuck reason reads correctly; nothing landed.
405
404
  const reason = `The task acceptance gate for '${slug}' produced an UNPARSEABLE verdict ` +
@@ -426,8 +425,8 @@ export async function performTask(options) {
426
425
  };
427
426
  }
428
427
  if (core.outcome === 'completed') {
429
- // The durable `prdprd-tasked` `main` move landed through the shared integrate
430
- // core (the body moved straight from `work/prds/ready/` — no transient `tasking/`
428
+ // The durable `specs/readyspecs/tasked` `main` move landed through the shared integrate
429
+ // core (the body moved straight from `work/specs/ready/` — no transient `tasking/`
431
430
  // marker). The completing commit is owned by the integrate band, NOT
432
431
  // `releaseTaskingLock`, so the unified per-item lock that `acquireTaskingLock`
433
432
  // took is released HERE (delete the ref). A
@@ -444,12 +443,12 @@ export async function performTask(options) {
444
443
  return integrationToTaskResult(core, { slug, emitted, loop: loopTag });
445
444
  }
446
445
  // HUMAN, no-lock path: the human commits on `main` directly (the runner does
447
- // not own the human's git). We report the produced tasks; moving the prd into
448
- // `work/prds/tasked/` (residence = tasked-ness) and committing is the human's to
446
+ // not own the human's git). We report the produced tasks; moving the spec into
447
+ // `work/specs/tasked/` (residence = tasked-ness) and committing is the human's to
449
448
  // do, as with the human `complete`.
450
449
  const message = `Tasked '${slug}' -> ${emitted.length} backlog task` +
451
450
  `${emitted.length === 1 ? '' : 's'} (human path, no lock). Inspect + commit ` +
452
- `the produced files (and move the prd into work/prds/tasked/) yourself.`;
451
+ `the produced files (and move the spec into work/specs/tasked/) yourself.`;
453
452
  note(message);
454
453
  return {
455
454
  exitCode: 0,
@@ -486,11 +485,11 @@ function releaseFailureToResult(released, slug) {
486
485
  * (propose pushed the work branch + opened a PR / merge landed on `main`) the
487
486
  * tasking is `tasked`. The band's FAILURE outcomes are reported on the tasking
488
487
  * contract: a `rebase-conflict` against a concurrently-advanced `main` maps to
489
- * `stale` (exit 4) — the tasking analogue of "the held prd moved under us"; a
488
+ * `stale` (exit 4) — the tasking analogue of "the held spec moved under us"; a
490
489
  * a `gate-failed` cannot occur (the tasking path passes `skipVerify`) but maps to
491
490
  * a usage error defensively. A `review-blocked` (the task-SET ACCEPTANCE GATE
492
491
  * blocked the set, task `slice-acceptance-gate`) is handled by `performTask`
493
- * BEFORE this mapper — it routes the held prd to needs-attention via
492
+ * BEFORE this mapper — it routes the held spec to needs-attention via
494
493
  * the lock release (the task-path needs-attention route) — so it never reaches
495
494
  * here; it is mapped defensively to a usage error if it ever does.
496
495
  */
@@ -502,7 +501,7 @@ function integrationToTaskResult(core, ctx) {
502
501
  : 'opened a PR carrying them (main untouched)';
503
502
  const message = `Tasked '${slug}' -> ${emitted.length} backlog task` +
504
503
  `${emitted.length === 1 ? '' : 's'}; the runner integrated the transition ` +
505
- `through the shared core (moved work/prds/ready/ -> work/prds/tasked/, the ` +
504
+ `through the shared core (moved work/specs/ready/ -> work/specs/tasked/, the ` +
506
505
  `tasked resting state) and ${landed}.`;
507
506
  return { exitCode: 0, outcome: 'tasked', slug, emitted, loop, message };
508
507
  }
@@ -513,7 +512,7 @@ function integrationToTaskResult(core, ctx) {
513
512
  slug,
514
513
  message: core.reason ??
515
514
  `Integrating the tasking of '${slug}' conflicted against the latest ` +
516
- `${slug} main — the tasking is stale; re-task from the current prd.`,
515
+ `${slug} main — the tasking is stale; re-task from the current spec.`,
517
516
  };
518
517
  }
519
518
  return {
@@ -527,16 +526,16 @@ function integrationToTaskResult(core, ctx) {
527
526
  /**
528
527
  * ONBOARD the tasking work onto a `work/<slug>` branch cut from the freshly-
529
528
  * fetched `<arbiter>/main` (task `slice-output-through-integration`). Called
530
- * AFTER the tasking lock is held, so the branch's base HOLDS the prd in
531
- * `work/prds/ready/` (the lock no longer moves the body) — the lifecycle stage then moves
532
- * it `prd/ -> prd-tasked/` ON THIS BRANCH and the shared integrate core lands it. A
529
+ * AFTER the tasking lock is held, so the branch's base HOLDS the spec in
530
+ * `work/specs/ready/` (the lock no longer moves the body) — the lifecycle stage then moves
531
+ * it `specs/ready/ -> specs/tasked/` ON THIS BRANCH and the shared integrate core lands it. A
533
532
  * pre-existing local `work/<slug>` (a re-run) is force-recreated off fresh main.
534
533
  * The agent runs in-place on this branch (branch ≠ worktree).
535
534
  */
536
535
  async function switchToWorkBranch(cwd, arbiter, slug, env) {
537
536
  // The tasking path is the parent-spec namespace (`do spec:<slug>`): the branch
538
537
  // is `work/spec-<slug>`, distinct from a same-slug task-build's `work/task-<slug>`.
539
- // MIGRATE step (prd `prd-to-spec-vocabulary-cutover-and-migration-command`):
538
+ // MIGRATE step (spec `prd-to-spec-vocabulary-cutover-and-migration-command`):
540
539
  // MINT the work-branch under the `spec` namespace token (`workBranchRef` still
541
540
  // parses the legacy `work/prd-<slug>` form, so in-flight branches keep resolving).
542
541
  const branch = workBranchRef('spec', slug);
@@ -546,8 +545,8 @@ async function switchToWorkBranch(cwd, arbiter, slug, env) {
546
545
  /**
547
546
  * The READ-STABILITY content-identity STALE CHECK (the lock's backstop, owned at
548
547
  * the integrate seam now that the OUTPUT no longer rides the lock release): true
549
- * iff the CURRENTLY held `work/prds/ready/<slug>.md` blob on `<arbiter>/main` DIFFERS
550
- * from the snapshot the lock TOOK (`lockedBlob`, read from `work/prds/ready/<slug>.md` at
548
+ * iff the CURRENTLY held `work/specs/ready/<slug>.md` blob on `<arbiter>/main` DIFFERS
549
+ * from the snapshot the lock TOOK (`lockedBlob`, read from `work/specs/ready/<slug>.md` at
551
550
  * acquire). ANY change = a concurrent edit under the lock = the tasking is STALE.
552
551
  * Stronger than a textual rebase conflict (which a rename+edit merge can apply
553
552
  * CLEANLY). When `lockedBlob` is absent (never, in production) it reads as
@@ -559,7 +558,7 @@ async function heldSpecIsStale(cwd, arbiter, slug, lockedBlob, env) {
559
558
  }
560
559
  await gitHard(['fetch', '--quiet', arbiter], cwd, env);
561
560
  const held = await gitSoft(['rev-parse', `${arbiter}/main:${workFolderRel('specs-ready')}/${slug}.md`], cwd, env);
562
- // The prd being absent (already tasked/moved) is NOT this check's concern
561
+ // The spec being absent (already tasked/moved) is NOT this check's concern
563
562
  // (the integrate's rebase/push surfaces that); only a CHANGED held blob is stale.
564
563
  if (held.status !== 0) {
565
564
  return false;
@@ -568,28 +567,28 @@ async function heldSpecIsStale(cwd, arbiter, slug, lockedBlob, env) {
568
567
  }
569
568
  /**
570
569
  * STAGE the tasking lifecycle into the index on the `work/<slug>` branch (the
571
- * {@link performIntegration} lifecycle seam): move the held prd
572
- * `git mv work/prds/ready/<slug>.md -> work/prds/tasked/<slug>.md` (the TASKED resting
570
+ * {@link performIntegration} lifecycle seam): move the held spec
571
+ * `git mv work/specs/ready/<slug>.md -> work/specs/tasked/<slug>.md` (the TASKED resting
573
572
  * state — the build-machine `done/` analogue, the SOURCE OF TRUTH for tasked-ness),
574
573
  * and write+`git add` the produced `work/tasks/backlog/*.md` files. The band's subsequent
575
574
  * `git add -A` + atomic commit folds this AND the agent's uncommitted backlog writes
576
575
  * into ONE runner-owned commit (the agent never does git).
577
576
  *
578
- * TASK `prd-sliced-folder-step-a` (prd `slicing-coherence` US #8): the lifecycle
579
- * destination is `work/prds/tasked/` (NOT back to `work/prds/ready/`) — `prd-tasked/`
577
+ * TASK `prd-sliced-folder-step-a` (spec `slicing-coherence` US #8): the lifecycle
578
+ * destination is `work/specs/tasked/` (NOT back to `work/specs/ready/`) — `specs/tasked/`
580
579
  * residence IS tasked-ness (like `done/` for tasks, with no `done:` marker). The
581
580
  * `tasked:` frontmatter marker was removed entirely in `remove-sliced-marker-step-b`
582
- * (sequenced last): residence in `work/prds/tasked/` is now the sole signal.
581
+ * (sequenced last): residence in `work/specs/tasked/` is now the sole signal.
583
582
  */
584
583
  async function stageTaskingLifecycle(params) {
585
584
  const { cwd, slug, emitTasks, poolBefore, placementDir, placementReason, note, env, } = params;
586
585
  const spec = workItemRel('specs-ready', `${slug}.md`);
587
586
  const specTasked = workItemRel('specs-tasked', `${slug}.md`);
588
587
  // PROPAGATE the origin-trust PROVENANCE (task
589
- // `untrusted-origin-forces-build-propose`): read the held prd's `origin`/
588
+ // `untrusted-origin-forces-build-propose`): read the held spec's `origin`/
590
589
  // `originTrust` stamp BEFORE the move, so each emitted task can carry it. A
591
590
  // task's risk is its BUILD; the stamp must reach the task so the build
592
- // transition can force `propose` for untrusted-origin work. An UNSTAMPED prd (a
591
+ // transition can force `propose` for untrusted-origin work. An UNSTAMPED spec (a
593
592
  // human/local-authored one ⇒ trusted) propagates nothing — the normal path is
594
593
  // untouched.
595
594
  const specAbs = join(cwd, spec);
@@ -597,18 +596,18 @@ async function stageTaskingLifecycle(params) {
597
596
  ? parseFrontmatter(readFileSync(specAbs, 'utf8'))
598
597
  : { origin: undefined, originTrust: undefined };
599
598
  if (placementReason === 'untrusted-origin') {
600
- note(`Untrusted-origin prd '${slug}': forcing the emitted tasks STAGED ` +
599
+ note(`Untrusted-origin spec '${slug}': forcing the emitted tasks STAGED ` +
601
600
  `(${placementDir}/) regardless of tasksLandIn (a human promotes ` +
602
601
  'them into work/tasks/ready/). Pass --tasks-land-in <where> to override.');
603
602
  }
604
- // Move the held prd prd/ -> prd-tasked/ (the TASKED resting state — folder =
605
- // source of truth, like done/ for tasks). This is the DURABLE `prdprd-tasked`
603
+ // Move the held spec specs/ready/ -> specs/tasked/ (the TASKED resting state — folder =
604
+ // source of truth, like done/ for tasks). This is the DURABLE `specs/readyspecs/tasked`
606
605
  // success move, owned by THIS transition's commit (the lock no longer moved the
607
- // body, so the source is `work/prds/ready/`, never `work/tasking/`).
606
+ // body, so the source is `work/specs/ready/`, never `work/tasking/`).
608
607
  mkdirSync(dirname(join(cwd, specTasked)), { recursive: true });
609
608
  await gitHard(['mv', spec, specTasked], cwd, env);
610
609
  await gitHard(['add', '--', specTasked], cwd, env);
611
- // **POOL-PLACEMENT FENCE (prd US #4 / governing ADR
610
+ // **POOL-PLACEMENT FENCE (spec US #4 / governing ADR
612
611
  // `placement-is-runner-deterministic-humanonly-is-agent-judgement`).** The
613
612
  // agent ALWAYS writes to the STAGING folder (`work/tasks/backlog/`); the POOL
614
613
  // (`work/tasks/ready/`) is the agent-eligible pool the runner owns the promotion
@@ -645,7 +644,7 @@ async function stageTaskingLifecycle(params) {
645
644
  * Revert any change/addition the agent made to the POOL `work/tasks/ready/` during a
646
645
  * tasking run. The agent's STAGING folder is `work/tasks/backlog/`; a write to the
647
646
  * pool is an attempt to self-place into the agent-eligible pool the runner owns
648
- * the promotion into (prd US #4 / governing ADR). Compared to the `poolBefore`
647
+ * the promotion into (spec US #4 / governing ADR). Compared to the `poolBefore`
649
648
  * snapshot (the branch-base state of `work/tasks/ready/`, taken BEFORE the agent
650
649
  * ran), any new file is removed from the worktree and any changed file is
651
650
  * checked back out to HEAD — so the subsequent `git add -A` cannot land it. The
@@ -693,7 +692,7 @@ async function gitHard(args, cwd, env) {
693
692
  /**
694
693
  * Build the needs-attention REASON for a task-SET ACCEPTANCE GATE block (task
695
694
  * `slice-acceptance-gate`): the fresh-context review of the produced set returned
696
- * `block`, so the prd is routed to `work/needs-attention/` with the review's
695
+ * `block`, so the spec is routed to `work/needs-attention/` with the review's
697
696
  * blocking findings as the body prose and NO tasks landed. Takes the core's
698
697
  * structured `reviewBlockReason` (the gate's blocking findings); falls back to a
699
698
  * generic line when absent. DISTINCT from the improver loop's
@@ -701,18 +700,18 @@ async function gitHard(args, cwd, env) {
701
700
  */
702
701
  function taskGateBlockedReason(slug, findingsReason) {
703
702
  const head = `The task acceptance gate (fresh-context review of the produced SET) blocked ` +
704
- `'${slug}'. The prd is routed to needs-attention with no tasks landed; a human ` +
703
+ `'${slug}'. The spec is routed to needs-attention with no tasks landed; a human ` +
705
704
  `must resolve the blocking findings, then re-task.`;
706
705
  return findingsReason ? `${head}\n\n${findingsReason}` : head;
707
706
  }
708
707
  /**
709
708
  * Build the needs-attention REASON for a decomposition-unclear loop verdict (the
710
- * prd is routed to `work/needs-attention/` with these open questions, no guessed
711
- * tasks). Prose only — recorded as the prd's needs-attention body block.
709
+ * spec is routed to `work/needs-attention/` with these open questions, no guessed
710
+ * tasks). Prose only — recorded as the spec's needs-attention body block.
712
711
  */
713
712
  function decompositionUnclearReason(slug, questions) {
714
713
  const head = `The tasker review→edit loop could not converge on a sound decomposition of ` +
715
- `'${slug}' (--tasker-loop-max exhausted with unresolved blockers). The prd is routed ` +
714
+ `'${slug}' (--tasker-loop-max exhausted with unresolved blockers). The spec is routed ` +
716
715
  `to needs-attention with no guessed tasks; a human must resolve:`;
717
716
  const body = questions.length > 0
718
717
  ? questions.map((q) => `- ${q}`).join('\n')
@@ -760,8 +759,8 @@ function appendQuestionsBlock(content, questions) {
760
759
  /**
761
760
  * Resolve the AGENT tasking gate for `slug`: the pure predicate
762
761
  * (`needsAnswers !== true && humanOnly !== true && autoTask`) plus the
763
- * cross-prd `taskedAfter` ordering, resolved against `work/prds/tasked/` residence of
764
- * the prds present in the checkout.
762
+ * cross-spec `taskedAfter` ordering, resolved against `work/specs/tasked/` residence of
763
+ * the specs present in the checkout.
765
764
  */
766
765
  function resolveAgentGate(cwd, slug, specFm, autoTask, explicit) {
767
766
  return resolveTaskingEligibility({
@@ -773,17 +772,17 @@ function resolveAgentGate(cwd, slug, specFm, autoTask, explicit) {
773
772
  explicit,
774
773
  });
775
774
  }
776
- /** Build an HONEST gate-refusal message naming WHY the agent skipped the prd. */
775
+ /** Build an HONEST gate-refusal message naming WHY the agent skipped the spec. */
777
776
  function gateRefusalReason(slug, specFm, eligibility, options) {
778
777
  const reasons = [];
779
778
  if (specFm.humanOnly === true) {
780
- reasons.push('the prd is humanOnly (a human must drive its tasking)');
779
+ reasons.push('the spec is humanOnly (a human must drive its tasking)');
781
780
  }
782
781
  if (specFm.needsAnswers === true) {
783
- reasons.push('the prd has needsAnswers (open questions block auto-tasking)');
782
+ reasons.push('the spec has needsAnswers (open questions block auto-tasking)');
784
783
  }
785
784
  // The autoTask POLICY only refuses on the NON-explicit (auto-pick pool) path:
786
- // an explicitly-named `do prd:<slug>` is authorized by the naming itself (the
785
+ // an explicitly-named `do spec:<slug>` is authorized by the naming itself (the
787
786
  // build path's autoBuild precedent), so the policy is never the reason there.
788
787
  if (options.explicit !== true &&
789
788
  specFm.humanOnly !== true &&
@@ -792,18 +791,18 @@ function gateRefusalReason(slug, specFm, eligibility, options) {
792
791
  reasons.push("the repo's autoTask policy is off");
793
792
  }
794
793
  if (!eligibility.taskedAfter.satisfied) {
795
- reasons.push(`taskedAfter prd(s) not yet tasked: ${eligibility.taskedAfter.missing.join(', ')}`);
794
+ reasons.push(`taskedAfter spec(s) not yet tasked: ${eligibility.taskedAfter.missing.join(', ')}`);
796
795
  }
797
796
  const why = reasons.length > 0 ? reasons.join('; ') : 'the tasking gate refused';
798
797
  return `Skipped tasking '${slug}': ${why}.`;
799
798
  }
800
799
  /**
801
- * Read the set of slugs whose prds are already TASKED in this checkout — RESIDENCE
802
- * in `work/prds/tasked/` (the tasked resting state, task `prd-sliced-folder-step-a`
803
- * / prd `slicing-coherence` US #9), the build-machine `done/` analogue. The FOLDER
800
+ * Read the set of slugs whose specs are already TASKED in this checkout — RESIDENCE
801
+ * in `work/specs/tasked/` (the tasked resting state, task `prd-sliced-folder-step-a`
802
+ * / spec `slicing-coherence` US #9), the build-machine `done/` analogue. The FOLDER
804
803
  * is the source of truth; the `tasked:` frontmatter marker was removed entirely in
805
804
  * `remove-sliced-marker-step-b` and is NOT consulted. So `taskedAfter` resolves
806
- * against `prd-tasked/` residence
805
+ * against `specs/tasked/` residence
807
806
  * (mirroring `blockedBy` -> `done/`). A missing folder reads as empty. The slug is
808
807
  * read from each file's frontmatter `slug:`, falling back to the filename — the same
809
808
  * shape the task readers use.
@@ -821,7 +820,7 @@ function readTaskedSlugs(cwd) {
821
820
  /**
822
821
  * Build the tasking PROMPT: instruct a fresh-context agent to apply the
823
822
  * **tasking discipline** (`work/protocol/TASKING-PROTOCOL.md`) to the held
824
- * prd at `work/prds/ready/<slug>.md` and to EMIT tracer-bullet vertical
823
+ * spec at `work/specs/ready/<slug>.md` and to EMIT tracer-bullet vertical
825
824
  * tasks under `work/tasks/backlog/`. The discipline body (the tracer-bullet
826
825
  * rules, the two-axis gate guidance, the confidence check, file-orthogonality,
827
826
  * the emitted task shape) lives in `TASKING-PROTOCOL.md` — NOT inlined here
@@ -830,24 +829,26 @@ function readTaskedSlugs(cwd) {
830
829
  * task-template.md`); the doc DESCRIBES it (D2).
831
830
  *
832
831
  * This builder owns ONLY the PER-BUILDER framing: who you are (a fresh-context
833
- * tasker for ONE prd), where the held prd is, where the emitted task files
832
+ * tasker for ONE spec), where the held spec is, where the emitted task files
834
833
  * MUST land (the staging folder, never the pool), and the runner-owns-git
835
834
  * boundary on the agent path. The shared discipline body is NOT duplicated
836
835
  * here.
837
836
  */
838
837
  function buildTaskingSpec(slug, _spec) {
838
+ const specReady = workFolderRel('specs-ready');
839
+ const specTasked = workFolderRel('specs-tasked');
839
840
  return [
840
- `You are a FRESH-CONTEXT tasker for the prd \`work/prds/ready/${slug}.md\`.`,
841
+ `You are a FRESH-CONTEXT tasker for the spec \`${specReady}/${slug}.md\`.`,
841
842
  `Apply the tasking discipline defined in \`work/protocol/TASKING-PROTOCOL.md\``,
842
843
  `(the in-band, protocol-native tasking protocol every set-up repo carries; the`,
843
- `human-facing pointer is \`skills/to-task/SKILL.md\`) to this ONE prd:`,
844
+ `human-facing pointer is \`skills/to-task/SKILL.md\`) to this ONE spec:`,
844
845
  `decompose it into independently-grabbable, tracer-bullet vertical tasks.`,
845
- `Read the prd fully first.`,
846
+ `Read the spec fully first.`,
846
847
  ``,
847
848
  `The discipline rules — the tracer-bullet test, the two-axis gate guidance`,
848
849
  `(\`humanOnly\` is NARROW; \`needsAnswers\` flags genuine uncertainty), the`,
849
850
  `confidence check that REPLACES the human-quiz step when no human is present,`,
850
- `the file-orthogonality preference, the prd-vs-task gate disjointness, and`,
851
+ `the file-orthogonality preference, the spec-vs-task gate disjointness, and`,
851
852
  `the emitted task shape — ALL live in that doc. Read them there.`,
852
853
  ``,
853
854
  `No human is present, so apply the CONFIDENCE CHECK (\`TASKING-PROTOCOL.md\``,
@@ -855,7 +856,7 @@ function buildTaskingSpec(slug, _spec) {
855
856
  `granularity, dependency order, a gate, or a seam is genuinely unresolved, set`,
856
857
  `\`needsAnswers: true\` on the specific uncertain task (questions in its body)`,
857
858
  `rather than guessing — or, if the whole decomposition is unclear, stop and`,
858
- `route the prd to needs-attention with the questions.`,
859
+ `route the spec to needs-attention with the questions.`,
859
860
  ``,
860
861
  `WRITE EVERY emitted task file under \`${STAGED_TASKS_DIR}/\` (the STAGING folder)`,
861
862
  `— NEVER \`work/tasks/ready/\`. \`work/tasks/ready/\` is the agent-eligible POOL and`,
@@ -863,12 +864,12 @@ function buildTaskingSpec(slug, _spec) {
863
864
  `folder is \`work/tasks/backlog/\`. A write outside the staging folder is dropped`,
864
865
  `by the runner-deterministic placement resolver.`,
865
866
  ``,
866
- `Set each task's \`prd:\` field to the source prd slug (\`${slug}\`) so the`,
867
- `link back to the prd survives.`,
867
+ `Set each task's \`spec:\` field to the source spec slug (\`${slug}\`) so the`,
868
+ `link back to the spec survives.`,
868
869
  ``,
869
870
  `Do NOT perform any git operations — do not stage, commit, push, or move any`,
870
871
  `files. The RUNNER owns every git-state transition (it commits the produced`,
871
- `tasks, releases the tasking lock, and moves the prd into \`work/prds/tasked/\`).`,
872
+ `tasks, releases the tasking lock, and moves the spec into \`${specTasked}/\`).`,
872
873
  ].join('\n');
873
874
  }
874
875
  /** Run the task agent. Prefers the injected runner; else the harness seam. */
@@ -1 +1 @@
1
- {"version":3,"file":"tasking.js","sourceRoot":"","sources":["../src/tasking.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tasking.js","sourceRoot":"","sources":["../src/tasking.ts"],"names":[],"mappings":"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"}