dorfl 0.1.1 → 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 (313) 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 +76 -76
  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 +20 -20
  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 +14 -13
  80. package/dist/frontmatter.d.ts.map +1 -1
  81. package/dist/frontmatter.js +12 -24
  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/prompt.d.ts +16 -19
  156. package/dist/prompt.d.ts.map +1 -1
  157. package/dist/prompt.js +17 -19
  158. package/dist/prompt.js.map +1 -1
  159. package/dist/readiness.d.ts +1 -1
  160. package/dist/recover-isolated.js +1 -1
  161. package/dist/repo-config.js +12 -12
  162. package/dist/repo-config.js.map +1 -1
  163. package/dist/review-gate.d.ts +3 -3
  164. package/dist/review-gate.d.ts.map +1 -1
  165. package/dist/review-gate.js +11 -10
  166. package/dist/review-gate.js.map +1 -1
  167. package/dist/review-verdict.d.ts +2 -2
  168. package/dist/review-verdict.d.ts.map +1 -1
  169. package/dist/review-verdict.js +1 -1
  170. package/dist/run.d.ts +1 -1
  171. package/dist/run.js +4 -4
  172. package/dist/run.js.map +1 -1
  173. package/dist/scan.d.ts +10 -10
  174. package/dist/scan.d.ts.map +1 -1
  175. package/dist/scan.js +8 -8
  176. package/dist/scan.js.map +1 -1
  177. package/dist/select-order.d.ts +1 -1
  178. package/dist/select-priority.d.ts +12 -12
  179. package/dist/select-priority.d.ts.map +1 -1
  180. package/dist/select-priority.js +5 -5
  181. package/dist/select-priority.js.map +1 -1
  182. package/dist/sidecar.d.ts +2 -2
  183. package/dist/sidecar.js +2 -2
  184. package/dist/sidecar.js.map +1 -1
  185. package/dist/slug-namespace.d.ts +1 -1
  186. package/dist/slug-namespace.js +3 -3
  187. package/dist/slug-namespace.js.map +1 -1
  188. package/dist/spec-complete.js +2 -2
  189. package/dist/spec-complete.js.map +1 -1
  190. package/dist/start.d.ts +1 -1
  191. package/dist/start.js +3 -3
  192. package/dist/start.js.map +1 -1
  193. package/dist/status.d.ts +3 -3
  194. package/dist/status.js +4 -4
  195. package/dist/status.js.map +1 -1
  196. package/dist/surface-gate.d.ts +2 -2
  197. package/dist/surface-gate.d.ts.map +1 -1
  198. package/dist/surface-persist.d.ts +2 -2
  199. package/dist/surface-persist.d.ts.map +1 -1
  200. package/dist/tasker-review-loop.d.ts +8 -8
  201. package/dist/tasker-review-loop.d.ts.map +1 -1
  202. package/dist/tasker-review-loop.js +8 -8
  203. package/dist/tasker-review-loop.js.map +1 -1
  204. package/dist/tasking-eligibility.d.ts +21 -21
  205. package/dist/tasking-eligibility.d.ts.map +1 -1
  206. package/dist/tasking-eligibility.js +10 -10
  207. package/dist/tasking-lock.d.ts +8 -8
  208. package/dist/tasking-lock.d.ts.map +1 -1
  209. package/dist/tasking-lock.js +20 -21
  210. package/dist/tasking-lock.js.map +1 -1
  211. package/dist/tasking.d.ts +33 -33
  212. package/dist/tasking.d.ts.map +1 -1
  213. package/dist/tasking.js +88 -86
  214. package/dist/tasking.js.map +1 -1
  215. package/dist/triage-gate.d.ts +1 -1
  216. package/dist/triage-persist.d.ts +5 -5
  217. package/dist/triage-persist.js +15 -15
  218. package/dist/triage-persist.js.map +1 -1
  219. package/dist/verify-workflow-template.d.ts +1 -1
  220. package/dist/verify-workflow-template.js +2 -2
  221. package/dist/work-layout.d.ts +9 -7
  222. package/dist/work-layout.d.ts.map +1 -1
  223. package/dist/work-layout.js +9 -7
  224. package/dist/work-layout.js.map +1 -1
  225. package/dist/workspace.d.ts +1 -1
  226. package/package.json +1 -1
  227. package/src/advance-ci-template.ts +4 -4
  228. package/src/advance-classify.ts +5 -5
  229. package/src/advance-drivers.ts +10 -10
  230. package/src/advance-isolated.ts +3 -3
  231. package/src/advance-lifecycle-template.ts +9 -9
  232. package/src/advance-loop-driver.ts +3 -3
  233. package/src/advance-treeless-publish.ts +1 -1
  234. package/src/advance.ts +30 -30
  235. package/src/advancing-lock.ts +6 -6
  236. package/src/apply-decide.ts +2 -2
  237. package/src/apply-merge-action.ts +5 -5
  238. package/src/apply-persist.ts +8 -8
  239. package/src/buildable-body.ts +14 -14
  240. package/src/claim-cas.ts +4 -4
  241. package/src/cli.ts +83 -83
  242. package/src/close-job-template.ts +8 -8
  243. package/src/close-job.ts +26 -26
  244. package/src/complete.ts +11 -11
  245. package/src/concurrency.ts +1 -1
  246. package/src/config.ts +37 -37
  247. package/src/continue-branch.ts +1 -1
  248. package/src/cwd-section.ts +1 -1
  249. package/src/decision-engine.ts +3 -3
  250. package/src/do-autopick.ts +9 -9
  251. package/src/do-config.ts +6 -6
  252. package/src/do-remote-auto.ts +2 -2
  253. package/src/do.ts +47 -47
  254. package/src/drop-source.ts +2 -2
  255. package/src/env-config.ts +8 -8
  256. package/src/format.ts +3 -3
  257. package/src/frontmatter.ts +23 -33
  258. package/src/install-ci-branch-protection.ts +1 -1
  259. package/src/install-ci-capabilities/advance-lifecycle.ts +1 -1
  260. package/src/install-ci-capabilities/close-job.ts +1 -1
  261. package/src/install-ci-capabilities/example-noop.ts +1 -1
  262. package/src/install-ci-capabilities/intake.ts +2 -2
  263. package/src/install-ci-capabilities/verify.ts +1 -1
  264. package/src/install-ci-core.ts +4 -4
  265. package/src/install-ci-github.ts +1 -1
  266. package/src/install-ci.ts +4 -4
  267. package/src/intake-event.ts +6 -6
  268. package/src/intake-marker.ts +3 -3
  269. package/src/intake-triage.ts +2 -2
  270. package/src/intake-trigger-template.ts +17 -17
  271. package/src/intake.ts +97 -97
  272. package/src/integration-core.ts +35 -35
  273. package/src/isolation.ts +3 -3
  274. package/src/issue-provider.ts +4 -4
  275. package/src/item-lock.ts +21 -21
  276. package/src/item-path.ts +2 -2
  277. package/src/ledger-lint.ts +9 -9
  278. package/src/ledger-read.ts +81 -81
  279. package/src/ledger-write.ts +3 -3
  280. package/src/lifecycle-gather.ts +16 -16
  281. package/src/lifecycle-pools.ts +4 -4
  282. package/src/merge-question-surfacer.ts +4 -4
  283. package/src/mint-adr.ts +4 -4
  284. package/src/mirror-pool-scan.ts +5 -5
  285. package/src/needs-attention.ts +22 -22
  286. package/src/orphan-sidecar.ts +2 -2
  287. package/src/placement.ts +6 -6
  288. package/src/prompt.ts +20 -25
  289. package/src/readiness.ts +1 -1
  290. package/src/recover-isolated.ts +1 -1
  291. package/src/repo-config.ts +12 -12
  292. package/src/review-gate.ts +12 -11
  293. package/src/review-verdict.ts +2 -2
  294. package/src/run.ts +5 -5
  295. package/src/scan.ts +15 -15
  296. package/src/select-order.ts +1 -1
  297. package/src/select-priority.ts +13 -13
  298. package/src/sidecar.ts +3 -3
  299. package/src/slug-namespace.ts +3 -3
  300. package/src/spec-complete.ts +2 -2
  301. package/src/start.ts +4 -4
  302. package/src/status.ts +7 -7
  303. package/src/surface-gate.ts +2 -2
  304. package/src/surface-persist.ts +2 -2
  305. package/src/tasker-review-loop.ts +15 -15
  306. package/src/tasking-eligibility.ts +21 -21
  307. package/src/tasking-lock.ts +27 -28
  308. package/src/tasking.ts +123 -121
  309. package/src/triage-gate.ts +1 -1
  310. package/src/triage-persist.ts +16 -16
  311. package/src/verify-workflow-template.ts +2 -2
  312. package/src/work-layout.ts +9 -7
  313. package/src/workspace.ts +1 -1
@@ -1,5 +1,5 @@
1
1
  /**
2
- * REFERENCE capability registration (PRD `runner-in-ci`, task
2
+ * REFERENCE capability registration (SPEC `runner-in-ci`, task
3
3
  * `install-ci-core-and-github-adapter`). This file proves the capability-emitter
4
4
  * REGISTRY seam works as a DIRECTORY of self-registering modules: a new capability
5
5
  * is a NEW file in `install-ci-capabilities/` that calls {@link registerCapability}
@@ -1,7 +1,7 @@
1
1
  /**
2
- * The ISSUE-INTAKE capability emitter (PRD `runner-in-ci`, task
2
+ * The ISSUE-INTAKE capability emitter (SPEC `runner-in-ci`, task
3
3
  * `install-ci-intake-trigger-and-review-surface`; capability D: consider incoming
4
- * issues → task/PRD, PLUS insertion point E: surface the review verdict into the
4
+ * issues → task/SPEC, PLUS insertion point E: surface the review verdict into the
5
5
  * issue thread). A SELF-REGISTERING module: it calls {@link registerCapability} at
6
6
  * import time, so {@link loadCapabilityRegistry} picks it up WITHOUT any edit to a
7
7
  * shared central list/switch (the file-orthogonality contract — this task and the
@@ -1,5 +1,5 @@
1
1
  /**
2
- * The VERIFY capability emitter (prd
2
+ * The VERIFY capability emitter (spec
3
3
  * `land-time-reverify-and-parallel-merge-ceiling`, task
4
4
  * `install-ci-tier1-branch-protection`; Story 11 — Tier-1 GitHub ceiling).
5
5
  * A SELF-REGISTERING module: it calls {@link registerCapability} at import
@@ -1,5 +1,5 @@
1
1
  /**
2
- * The provider-agnostic CORE of the `install-ci` scaffolder (prd `runner-in-ci`,
2
+ * The provider-agnostic CORE of the `install-ci` scaffolder (spec `runner-in-ci`,
3
3
  * task `install-ci-core-and-github-adapter`; US #7/#10). `install-ci` is a
4
4
  * human-run, one-time SCAFFOLDER (mirrors whitesmith's `src/providers/github-ci.ts`):
5
5
  * it writes `.github/**` + a composite setup action + secrets so autonomous work
@@ -106,7 +106,7 @@ export interface CIConfigFile {
106
106
  /** API key values keyed by env var name. Only present with `--include-secrets`. */
107
107
  secrets?: Record<string, string>;
108
108
  /**
109
- * The project-setup escape hatch (prd `install-ci-project-provisioning`,
109
+ * The project-setup escape hatch (spec `install-ci-project-provisioning`,
110
110
  * task `install-ci-project-setup-hook`): a PROVIDER-NAMESPACED, OPAQUE,
111
111
  * NATIVE-SYNTAX pass-through map. The key is a provider id (today only
112
112
  * `github`); the value is the user's own project-toolchain snippet in that
@@ -197,7 +197,7 @@ export interface CIProviderContext {
197
197
  /**
198
198
  * OPTIONALLY report whether the configured credential has REPO-ADMIN scope
199
199
  * on the provider (→ can set branch protection / rulesets). Used by the
200
- * Tier-1 branch-protection step (prd `land-time-reverify-and-parallel-
200
+ * Tier-1 branch-protection step (spec `land-time-reverify-and-parallel-
201
201
  * merge-ceiling`, Story 11) to pick `auto-configure` vs `print fallback`.
202
202
  * `true` ⇒ admin, `false` ⇒ explicitly NOT admin, `undefined` ⇒ unknown
203
203
  * (treated as non-admin: never silently attempt a call that would 403).
@@ -809,7 +809,7 @@ ${indent(modelsJsonStr, 8)}
809
809
  }
810
810
 
811
811
  // PREFER-LOCAL RESOLVER (task install-ci-prefer-project-local-dorfl,
812
- // PRD install-ci-project-provisioning axis C1+C3): emit a `dorfl` SHIM
812
+ // SPEC install-ci-project-provisioning axis C1+C3): emit a `dorfl` SHIM
813
813
  // that resolves a project-local `node_modules/.bin/dorfl` FIRST (the repo's
814
814
  // devDep pin, populated by the project-setup hook's `pnpm install` — C3),
815
815
  // and falls back to the global bootstrap dorfl this composite action just
@@ -1,5 +1,5 @@
1
1
  /**
2
- * The thin GitHub adapter for `install-ci` (prd `runner-in-ci`, task
2
+ * The thin GitHub adapter for `install-ci` (spec `runner-in-ci`, task
3
3
  * `install-ci-core-and-github-adapter`). It plugs into the provider-agnostic
4
4
  * {@link CIProviderContext} seam from `install-ci-core.ts`: the core owns the
5
5
  * wizard / config / `models.json` / `--export-config` / `--fake` / secret
package/src/install-ci.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  /**
2
- * The `install-ci` orchestrator (prd `runner-in-ci`, task
2
+ * The `install-ci` orchestrator (spec `runner-in-ci`, task
3
3
  * `install-ci-core-and-github-adapter`): ties the provider-agnostic core
4
4
  * (`install-ci-core.ts`) to a CI-provider adapter (the first being GitHub,
5
5
  * `install-ci-github.ts`) through the {@link CIProviderContext} seam. It drives
@@ -252,7 +252,7 @@ export async function installCI(
252
252
  }
253
253
 
254
254
  // 5. Assemble + write the artifacts (composite setup action + auth). The
255
- // project-setup escape hatch (prd `install-ci-project-provisioning`) lives
255
+ // project-setup escape hatch (spec `install-ci-project-provisioning`) lives
256
256
  // on `config.projectSetup` as a PROVIDER-NAMESPACED, OPAQUE map; we look up
257
257
  // THIS provider's payload via the seam (`ctx.providerId`) and ask the
258
258
  // adapter to render it to the FIRST-steps fragment (`ctx.renderProjectSetup`).
@@ -275,7 +275,7 @@ export async function installCI(
275
275
  log(` wrote ${path}`);
276
276
  }
277
277
 
278
- // 5b. Tier-1 GitHub branch protection (prd land-time-reverify-and-parallel-
278
+ // 5b. Tier-1 GitHub branch protection (spec land-time-reverify-and-parallel-
279
279
  // merge-ceiling, Story 11). Auto-configures when the credential is admin-
280
280
  // scoped (one `gh api` PUT on the protection endpoint, required check
281
281
  // `verify` + strict: true); prints the exact ready-to-run `gh api` command
@@ -313,7 +313,7 @@ export async function installCI(
313
313
  " DORFL_AUTO_TASK: 'true'",
314
314
  );
315
315
  // Project-toolchain boundary (task install-ci-document-toolchain-boundary,
316
- // PRD install-ci-project-provisioning axis (A)). dorfl declares
316
+ // SPEC install-ci-project-provisioning axis (A)). dorfl declares
317
317
  // engines.node '>=18' and the generated composite action pins Node 22 only
318
318
  // for dorfl's own runtime — it does NOT provision the project's toolchain.
319
319
  // State that boundary explicitly so a maintainer whose project pins a
@@ -1,14 +1,14 @@
1
1
  /**
2
- * **`intake`'s PURE event-classification** (task `intake-event-classification`, prd
2
+ * **`intake`'s PURE event-classification** (task `intake-event-classification`, spec
3
3
  * `issue-intake` US #2 — the resume-on-thread-change behaviour).
4
4
  *
5
5
  * `intake` is a CONVERSATION on an issue thread: a run may ASK a clarifying question
6
- * and STOP, expecting a LATER run to resume from the updated thread (prd "Loop
6
+ * and STOP, expecting a LATER run to resume from the updated thread (spec "Loop
7
7
  * closure" / the decision table's ASK row). This module is the PURE CONTROL-PATH
8
8
  * classifier the re-run depends on: given an issue EVENT, it decides whether `intake`
9
9
  * should RE-EVALUATE the whole thread or IGNORE the event.
10
10
  *
11
- * THE CANONICAL RULE (from prd `issue-intake`, "The engine shape"): *"The loop
11
+ * THE CANONICAL RULE (from spec `issue-intake`, "The engine shape"): *"The loop
12
12
  * re-runs on a new comment OR an issue-body edit (re-evaluate the whole thread); a
13
13
  * buried prior-comment edit is IGNORED."*
14
14
  *
@@ -23,7 +23,7 @@
23
23
  * distinction the rule turns on is "a NEW turn vs an edit of a BURIED prior turn",
24
24
  * NOT "edit vs reply".
25
25
  *
26
- * SCOPE FENCE (prd "Scope: the engine only"): this is ONLY the pure classifier. It is
26
+ * SCOPE FENCE (spec "Scope: the engine only"): this is ONLY the pure classifier. It is
27
27
  * NOT CI's TRIGGER POLICY (command/every-issue, maintainer/anyone) — that is
28
28
  * `runner-in-ci`'s. CI's trigger LATER CONSULTS this classifier, but the policy of
29
29
  * WHO/WHAT may trigger lives in CI, not here. This module touches no seam, no git, no
@@ -69,10 +69,10 @@ export interface IntakeEvent {
69
69
 
70
70
  /**
71
71
  * Classify an issue EVENT into the CONTROL-PATH decision: RE-EVALUATE the whole
72
- * thread, or IGNORE the event. The PURE realisation of the prd's canonical rule
72
+ * thread, or IGNORE the event. The PURE realisation of the spec's canonical rule
73
73
  * (no seam, no git, no `gh`).
74
74
  *
75
- * The table (prd `issue-intake` US #2):
75
+ * The table (spec `issue-intake` US #2):
76
76
  *
77
77
  * | event kind | decision | why |
78
78
  * | ----------------------- | ------------- | -------------------------------------------- |
@@ -2,7 +2,7 @@ import {brand} from './brand.js';
2
2
  import type {IssueComment} from './issue-provider.js';
3
3
 
4
4
  /**
5
- * **The intake MARKER** (task `intake-self-awareness-resumption-tracking`, prd
5
+ * **The intake MARKER** (task `intake-self-awareness-resumption-tracking`, spec
6
6
  * `issue-intake` US #2/#10): the ONE primitive the deterministic pre-decision
7
7
  * TRIAGE GATE is built on. A machine-readable HIDDEN HTML comment intake stamps on
8
8
  * EVERY comment it posts, recording a neutral FACT about what intake did:
@@ -26,7 +26,7 @@ import type {IssueComment} from './issue-provider.js';
26
26
  * TERMINAL is the TRIAGE's interpretation, NEVER data in the marker (no `terminal`
27
27
  * field): if a kind's terminal-ness ever changes that is a triage change and old
28
28
  * markers stay valid.
29
- * - **`slug`** \u2014 present only on `kind=created` (which task/prd intake produced).
29
+ * - **`slug`** \u2014 present only on `kind=created` (which task/spec intake produced).
30
30
  * - **`seen=<id>,\u2026`** \u2014 the per-run DELTA of HUMAN comment ids intake READ this run
31
31
  * (EXCLUDING intake's own marker-comments AND any human id already in a prior
32
32
  * marker's `seen=`). Ids, not a count, because a count cannot distinguish "a new
@@ -47,7 +47,7 @@ export interface IntakeMarker {
47
47
  kind: IntakeMarkerKind;
48
48
  /** The HUMAN comment ids intake READ this run (the per-run delta; may be empty). */
49
49
  seen: string[];
50
- /** The created task/prd slug \u2014 present only on `kind=created`. */
50
+ /** The created task/spec slug \u2014 present only on `kind=created`. */
51
51
  slug?: string;
52
52
  }
53
53
 
@@ -6,7 +6,7 @@ import {
6
6
  } from './intake-marker.js';
7
7
 
8
8
  /**
9
- * **The intake TRIAGE GATE** (task `intake-self-awareness-resumption-tracking`, prd
9
+ * **The intake TRIAGE GATE** (task `intake-self-awareness-resumption-tracking`, spec
10
10
  * `issue-intake` US #2/#10): a DETERMINISTIC pre-decision gate that runs UNDER the
11
11
  * processing lock, BEFORE the decision prompt, deciding whether intake should run
12
12
  * the prompt at all. Built ENTIRELY on the thread MARKER (no sidecar, no cursor, no
@@ -55,7 +55,7 @@ export type IntakeTriageDecision =
55
55
 
56
56
  /**
57
57
  * Run the TRIAGE over the issue's full comment thread (oldest-first, as
58
- * `listComments` returns it). The canonical branches (prd `issue-intake`):
58
+ * `listComments` returns it). The canonical branches (spec `issue-intake`):
59
59
  *
60
60
  * 1. **Last comment is INTAKE's** (carries a marker). Build `seenSet` = the UNION of
61
61
  * every intake marker's `seen=` id-list, then:
@@ -1,7 +1,7 @@
1
1
  /**
2
- * The `install-ci` ISSUE-INTAKE capability (prd `runner-in-ci`, task
2
+ * The `install-ci` ISSUE-INTAKE capability (spec `runner-in-ci`, task
3
3
  * `install-ci-intake-trigger-and-review-surface`; capability D: consider incoming
4
- * issues → task/prd, AND insertion point E: surface the review verdict back into
4
+ * issues → task/spec, AND insertion point E: surface the review verdict back into
5
5
  * the issue thread). This module GENERATES the one fixed intake workflow file and
6
6
  * STRUCTURALLY VALIDATES it, mirroring the snapshot-assertion style of
7
7
  * `advance-lifecycle-template.ts` / `advance-ci-template.ts` (the package depends on
@@ -10,13 +10,13 @@
10
10
  * ({@link deriveIntakeFlags}) — CI's merge-vs-propose POLICY, the load-bearing
11
11
  * testable logic the workflow encodes at runtime.
12
12
  *
13
- * SCOPE FENCE (prd Out-of-Scope): the issue→artifact TRANSFORM engine is
13
+ * SCOPE FENCE (spec Out-of-Scope): the issue→artifact TRANSFORM engine is
14
14
  * `issue-intake`'s (`intake <N>` + its four-outcome dispatch + the per-outcome
15
15
  * KNOBS + the lone-task review that posts to the issue thread). CI only
16
16
  * WIRES/SCHEDULES/INVOKES it and owns the merge-vs-propose POLICY + the delivery
17
17
  * surface. This module emits NO transform; it emits the WORKFLOW that calls it.
18
18
  *
19
- * The discipline (prd capability-D row + the merge-vs-propose POLICY + the two
19
+ * The discipline (spec capability-D row + the merge-vs-propose POLICY + the two
20
20
  * RESOLVED design decisions in the task):
21
21
  *
22
22
  * - TRIGGERS: `issues` opened, `issue_comment` created, and a label
@@ -36,7 +36,7 @@
36
36
  * everywhere" path is a LOUD, NON-DEFAULT opt-in — the default is conservative
37
37
  * (propose / human-in-the-loop).
38
38
  * - INSERTION POINT E (the issue-thread review surface): the review verdict over
39
- * intake's generated prds/tasks is surfaced into the ISSUE THREAD via the
39
+ * intake's generated specs/tasks is surfaced into the ISSUE THREAD via the
40
40
  * `IssueProvider.postIssueComment` seam (issue thread, by NUMBER — NOT the PR
41
41
  * seam `postPRComment`, which is keyed by url). This is REUSED, not new:
42
42
  * `intake <N>` already runs the lone-task review/edit loop and posts its
@@ -65,7 +65,7 @@ export const INTAKE_TRIGGER_CAPABILITY_ID = 'intake';
65
65
 
66
66
  /** The wizard-facing label for the issue-intake capability. */
67
67
  export const INTAKE_TRIGGER_CAPABILITY_LABEL =
68
- 'Consider incoming issues → task/prd + surface the review verdict into the issue thread (the intake trigger: issues / issue_comment / label)';
68
+ 'Consider incoming issues → task/spec + surface the review verdict into the issue thread (the intake trigger: issues / issue_comment / label)';
69
69
 
70
70
  /** The repo-relative path (under the output base) of the emitted workflow. */
71
71
  export const INTAKE_TRIGGER_WORKFLOW_PATH = 'workflows/intake.yml';
@@ -106,7 +106,7 @@ export interface IntakeIntegrationFlags {
106
106
  task: 'merge' | 'propose';
107
107
  /**
108
108
  * The ORIGIN-TRUST verdict CI passes to `intake <N>` via `--origin-trust`
109
- * (task `untrusted-origin-forces-build-propose`) so the emitted prd/task is
109
+ * (task `untrusted-origin-forces-build-propose`) so the emitted spec/task is
110
110
  * STAMPED with how it was born. Derived from the SAME `author_association` case
111
111
  * as the integration flags (it IS `authorTrusted` collapsed to the wire value),
112
112
  * so the stamp and the integration mode CANNOT desync. `intake.ts` writes it
@@ -134,7 +134,7 @@ export interface IntakeGateState {
134
134
 
135
135
  /**
136
136
  * DERIVE the per-outcome merge-vs-propose flags from the gate state COMPOSED with
137
- * author-trust — CI's merge-vs-propose POLICY (prd "merge-vs-propose POLICY" +
137
+ * author-trust — CI's merge-vs-propose POLICY (spec "merge-vs-propose POLICY" +
138
138
  * "Composed with AUTHOR-TRUST"; task Decision 1). This is the load-bearing pure
139
139
  * logic the workflow encodes at runtime (it reads `author_association` off the
140
140
  * event payload and sets the flags accordingly):
@@ -167,9 +167,9 @@ export function deriveIntakeFlags(options: {
167
167
  // ORIGIN-TRUST stamp (task `untrusted-origin-forces-build-propose`): the SAME
168
168
  // author-trust verdict, collapsed to the wire value `intake` stamps onto the
169
169
  // emitted artifact. Derived HERE — next to the integration flags, off the SAME
170
- // `authorTrusted` input — so the stamp and the task/prd modes cannot desync.
170
+ // `authorTrusted` input — so the stamp and the task/spec modes cannot desync.
171
171
  // It is NOT a re-resolution of trust (CI already resolved it); it is the verdict
172
- // being CARRIED so it survives the prd/task merge boundary (the becomes-code
172
+ // being CARRIED so it survives the spec/task merge boundary (the becomes-code
173
173
  // checkpoint is not laundered when the file lands on main).
174
174
  const originTrust: 'trusted' | 'untrusted' = authorTrusted
175
175
  ? 'trusted'
@@ -216,12 +216,12 @@ export function generateIntakeWorkflow(config: ResolvedCIConfig): string {
216
216
  const setupWith = providerSecretsWithBlock(config);
217
217
  return `\
218
218
  # dorfl — the ISSUE INTAKE trigger in CI (capability D: consider incoming
219
- # issues → task/prd, PLUS insertion point E: surface the review verdict into the
220
- # issue thread, prd runner-in-ci). EMITTED by \`dorfl install-ci\`; the human
219
+ # issues → task/spec, PLUS insertion point E: surface the review verdict into the
220
+ # issue thread, spec runner-in-ci). EMITTED by \`dorfl install-ci\`; the human
221
221
  # commits it. DO NOT hand-edit a copy — re-run install-ci to upgrade the shell.
222
222
  #
223
223
  # WHAT IT DOES — \`dorfl intake <N>\` reads issue #N + its comment thread,
224
- # runs a prompt→verdict decision (ask / task / PRD / bounce), and dispatches it.
224
+ # runs a prompt→verdict decision (ask / task / SPEC / bounce), and dispatches it.
225
225
  # CI owns ONLY the trigger + the merge-vs-propose POLICY + the delivery surface;
226
226
  # the TRANSFORM is the engine's (the Out-of-Scope fence — CI re-implements none of
227
227
  # it). The lone-task review/edit loop \`intake\` already runs ALSO surfaces its
@@ -307,7 +307,7 @@ env:
307
307
  # permissive merge side; author-trust then forces propose for a task from an
308
308
  # untrusted author.
309
309
  DORFL_AUTO_BUILD: 'false' # gate: will an agent auto-build the emitted task next?
310
- DORFL_AUTO_TASK: 'false' # gate: will an agent auto-task the emitted prd next?
310
+ DORFL_AUTO_TASK: 'false' # gate: will an agent auto-task the emitted spec next?
311
311
 
312
312
  jobs:
313
313
  intake:
@@ -365,8 +365,8 @@ jobs:
365
365
 
366
366
  # ORIGIN-TRUST stamp (task untrusted-origin-forces-build-propose):
367
367
  # derived from the SAME \${trusted} case above (one author-trust read,
368
- # two consumers — the task/prd modes AND the stamp — so they cannot
369
- # desync). \`intake\` STAMPS this onto the emitted prd/task frontmatter
368
+ # two consumers — the task/spec modes AND the stamp — so they cannot
369
+ # desync). \`intake\` STAMPS this onto the emitted spec/task frontmatter
370
370
  # (origin: issue + originTrust: <value>); it does NOT re-resolve trust
371
371
  # (that is CI's policy, passed IN). The stamp SURVIVES the merge boundary
372
372
  # so a later auto-task/auto-build of an untrusted-origin artifact still
@@ -519,7 +519,7 @@ export function validateIntakeWorkflow(text: string): IntakeTriggerValidation {
519
519
  ), 'the policy derivation must be able to emit `--propose-spec` (autoTask on).');
520
520
  // ORIGIN-TRUST stamp (task untrusted-origin-forces-build-propose): the shell
521
521
  // must derive `--origin-trust <trusted|untrusted>` from the SAME author-trust
522
- // case it uses for the task/PRD modes, and pass it to `intake` so the emitted
522
+ // case it uses for the task/SPEC modes, and pass it to `intake` so the emitted
523
523
  // artifact is stamped (the stamp + the modes cannot desync).
524
524
  require('derives-origin-trust-untrusted', /--origin-trust=untrusted\b/.test(
525
525
  operative,