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.
- package/dist/advance-ci-template.d.ts +3 -3
- package/dist/advance-ci-template.js +1 -1
- package/dist/advance-ci-template.js.map +1 -1
- package/dist/advance-classify.d.ts +5 -5
- package/dist/advance-classify.d.ts.map +1 -1
- package/dist/advance-classify.js +4 -4
- package/dist/advance-drivers.d.ts +7 -7
- package/dist/advance-drivers.d.ts.map +1 -1
- package/dist/advance-drivers.js +5 -5
- package/dist/advance-drivers.js.map +1 -1
- package/dist/advance-isolated.d.ts +3 -3
- package/dist/advance-isolated.d.ts.map +1 -1
- package/dist/advance-isolated.js +1 -1
- package/dist/advance-lifecycle-template.d.ts +2 -2
- package/dist/advance-lifecycle-template.js +9 -9
- package/dist/advance-lifecycle-template.js.map +1 -1
- package/dist/advance-loop-driver.d.ts +3 -3
- package/dist/advance-loop-driver.d.ts.map +1 -1
- package/dist/advance-loop-driver.js +1 -1
- package/dist/advance-treeless-publish.d.ts +1 -1
- package/dist/advance.d.ts +11 -11
- package/dist/advance.d.ts.map +1 -1
- package/dist/advance.js +21 -21
- package/dist/advance.js.map +1 -1
- package/dist/advancing-lock.d.ts +1 -1
- package/dist/advancing-lock.js +5 -5
- package/dist/apply-decide.d.ts +2 -2
- package/dist/apply-decide.js +2 -2
- package/dist/apply-merge-action.d.ts +4 -4
- package/dist/apply-merge-action.js +2 -2
- package/dist/apply-persist.d.ts +5 -5
- package/dist/apply-persist.d.ts.map +1 -1
- package/dist/apply-persist.js +7 -7
- package/dist/apply-persist.js.map +1 -1
- package/dist/buildable-body.d.ts +14 -14
- package/dist/buildable-body.js +9 -9
- package/dist/claim-cas.d.ts +3 -3
- package/dist/claim-cas.js +1 -1
- package/dist/claim-cas.js.map +1 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +83 -77
- package/dist/cli.js.map +1 -1
- package/dist/close-job-template.d.ts +3 -3
- package/dist/close-job-template.js +8 -8
- package/dist/close-job.d.ts +8 -8
- package/dist/close-job.js +25 -25
- package/dist/close-job.js.map +1 -1
- package/dist/complete.d.ts +3 -3
- package/dist/complete.js +8 -8
- package/dist/complete.js.map +1 -1
- package/dist/concurrency.d.ts +1 -1
- package/dist/concurrency.js +1 -1
- package/dist/config.d.ts +32 -32
- package/dist/config.js +5 -5
- package/dist/config.js.map +1 -1
- package/dist/continue-branch.d.ts +1 -1
- package/dist/continue-branch.js +1 -1
- package/dist/cwd-section.js +1 -1
- package/dist/cwd-section.js.map +1 -1
- package/dist/decision-engine.d.ts +2 -2
- package/dist/do-autopick.d.ts +6 -6
- package/dist/do-autopick.d.ts.map +1 -1
- package/dist/do-autopick.js +5 -5
- package/dist/do-autopick.js.map +1 -1
- package/dist/do-config.d.ts +3 -3
- package/dist/do-config.js +3 -3
- package/dist/do-config.js.map +1 -1
- package/dist/do-remote-auto.d.ts +2 -2
- package/dist/do-remote-auto.js +1 -1
- package/dist/do.d.ts +25 -25
- package/dist/do.d.ts.map +1 -1
- package/dist/do.js +22 -22
- package/dist/do.js.map +1 -1
- package/dist/drop-source.d.ts +2 -2
- package/dist/env-config.js +8 -8
- package/dist/env-config.js.map +1 -1
- package/dist/format.js +3 -3
- package/dist/format.js.map +1 -1
- package/dist/frontmatter.d.ts +33 -39
- package/dist/frontmatter.d.ts.map +1 -1
- package/dist/frontmatter.js +18 -31
- package/dist/frontmatter.js.map +1 -1
- package/dist/install-ci-branch-protection.d.ts +1 -1
- package/dist/install-ci-branch-protection.js +1 -1
- package/dist/install-ci-capabilities/advance-lifecycle.d.ts +1 -1
- package/dist/install-ci-capabilities/advance-lifecycle.js +1 -1
- package/dist/install-ci-capabilities/close-job.d.ts +1 -1
- package/dist/install-ci-capabilities/close-job.js +1 -1
- package/dist/install-ci-capabilities/example-noop.d.ts +1 -1
- package/dist/install-ci-capabilities/example-noop.js +1 -1
- package/dist/install-ci-capabilities/intake.d.ts +2 -2
- package/dist/install-ci-capabilities/intake.js +2 -2
- package/dist/install-ci-capabilities/verify.d.ts +1 -1
- package/dist/install-ci-capabilities/verify.js +1 -1
- package/dist/install-ci-core.d.ts +3 -3
- package/dist/install-ci-core.js +2 -2
- package/dist/install-ci-core.js.map +1 -1
- package/dist/install-ci-github.d.ts +1 -1
- package/dist/install-ci-github.js +1 -1
- package/dist/install-ci.d.ts +1 -1
- package/dist/install-ci.js +4 -4
- package/dist/install-ci.js.map +1 -1
- package/dist/intake-event.d.ts +6 -6
- package/dist/intake-event.js +6 -6
- package/dist/intake-marker.d.ts +3 -3
- package/dist/intake-marker.d.ts.map +1 -1
- package/dist/intake-triage.d.ts +1 -1
- package/dist/intake-triage.js +2 -2
- package/dist/intake-trigger-template.d.ts +8 -8
- package/dist/intake-trigger-template.d.ts.map +1 -1
- package/dist/intake-trigger-template.js +16 -16
- package/dist/intake-trigger-template.js.map +1 -1
- package/dist/intake.d.ts +50 -50
- package/dist/intake.d.ts.map +1 -1
- package/dist/intake.js +70 -70
- package/dist/intake.js.map +1 -1
- package/dist/integration-core.d.ts +17 -17
- package/dist/integration-core.js +17 -17
- package/dist/integration-core.js.map +1 -1
- package/dist/isolation.d.ts +3 -3
- package/dist/issue-provider.d.ts +4 -4
- package/dist/issue-provider.js +1 -1
- package/dist/item-lock.d.ts +21 -21
- package/dist/item-lock.d.ts.map +1 -1
- package/dist/item-lock.js +16 -16
- package/dist/item-path.d.ts +2 -2
- package/dist/item-path.js +2 -2
- package/dist/ledger-lint.d.ts +9 -9
- package/dist/ledger-lint.js +9 -9
- package/dist/ledger-read.d.ts +57 -57
- package/dist/ledger-read.d.ts.map +1 -1
- package/dist/ledger-read.js +24 -24
- package/dist/ledger-read.js.map +1 -1
- package/dist/ledger-write.d.ts +2 -2
- package/dist/ledger-write.js +1 -1
- package/dist/lifecycle-gather.d.ts +1 -1
- package/dist/lifecycle-gather.js +16 -16
- package/dist/lifecycle-gather.js.map +1 -1
- package/dist/lifecycle-pools.d.ts +4 -4
- package/dist/lifecycle-pools.js +1 -1
- package/dist/merge-question-surfacer.d.ts +3 -3
- package/dist/merge-question-surfacer.js +2 -2
- package/dist/merge-question-surfacer.js.map +1 -1
- package/dist/mint-adr.js +4 -4
- package/dist/mirror-pool-scan.d.ts +2 -2
- package/dist/mirror-pool-scan.js +3 -3
- package/dist/mirror-pool-scan.js.map +1 -1
- package/dist/needs-attention.d.ts +13 -13
- package/dist/needs-attention.d.ts.map +1 -1
- package/dist/needs-attention.js +11 -11
- package/dist/needs-attention.js.map +1 -1
- package/dist/orphan-sidecar.d.ts +2 -2
- package/dist/placement.d.ts +6 -6
- package/dist/placement.js +2 -2
- package/dist/prd-to-spec.d.ts +15 -1
- package/dist/prd-to-spec.d.ts.map +1 -1
- package/dist/prd-to-spec.js +36 -14
- package/dist/prd-to-spec.js.map +1 -1
- package/dist/prompt.d.ts +24 -24
- package/dist/prompt.d.ts.map +1 -1
- package/dist/prompt.js +29 -31
- package/dist/prompt.js.map +1 -1
- package/dist/protocol/CLAIM-PROTOCOL.md +4 -4
- package/dist/protocol/REVIEW-PROTOCOL.md +1 -1
- package/dist/protocol/TASKING-PROTOCOL.md +12 -12
- package/dist/protocol/WORK-CONTRACT.md +39 -39
- package/dist/protocol/spec-template.md +1 -1
- package/dist/protocol/task-template.md +3 -3
- package/dist/readiness.d.ts +1 -1
- package/dist/recover-isolated.js +1 -1
- package/dist/repo-config.js +12 -12
- package/dist/repo-config.js.map +1 -1
- package/dist/review-gate.d.ts +3 -3
- package/dist/review-gate.d.ts.map +1 -1
- package/dist/review-gate.js +11 -10
- package/dist/review-gate.js.map +1 -1
- package/dist/review-verdict.d.ts +2 -2
- package/dist/review-verdict.d.ts.map +1 -1
- package/dist/review-verdict.js +1 -1
- package/dist/run.d.ts +1 -1
- package/dist/run.js +5 -5
- package/dist/run.js.map +1 -1
- package/dist/scan.d.ts +10 -10
- package/dist/scan.d.ts.map +1 -1
- package/dist/scan.js +8 -8
- package/dist/scan.js.map +1 -1
- package/dist/select-order.d.ts +1 -1
- package/dist/select-priority.d.ts +12 -12
- package/dist/select-priority.d.ts.map +1 -1
- package/dist/select-priority.js +5 -5
- package/dist/select-priority.js.map +1 -1
- package/dist/sidecar.d.ts +2 -2
- package/dist/sidecar.js +2 -2
- package/dist/sidecar.js.map +1 -1
- package/dist/slug-namespace.d.ts +1 -1
- package/dist/slug-namespace.js +3 -3
- package/dist/slug-namespace.js.map +1 -1
- package/dist/spec-complete.js +2 -2
- package/dist/spec-complete.js.map +1 -1
- package/dist/start.d.ts +1 -1
- package/dist/start.js +3 -3
- package/dist/start.js.map +1 -1
- package/dist/status.d.ts +3 -3
- package/dist/status.js +4 -4
- package/dist/status.js.map +1 -1
- package/dist/surface-gate.d.ts +2 -2
- package/dist/surface-gate.d.ts.map +1 -1
- package/dist/surface-persist.d.ts +2 -2
- package/dist/surface-persist.d.ts.map +1 -1
- package/dist/tasker-review-loop.d.ts +8 -8
- package/dist/tasker-review-loop.d.ts.map +1 -1
- package/dist/tasker-review-loop.js +8 -8
- package/dist/tasker-review-loop.js.map +1 -1
- package/dist/tasking-eligibility.d.ts +21 -21
- package/dist/tasking-eligibility.d.ts.map +1 -1
- package/dist/tasking-eligibility.js +10 -10
- package/dist/tasking-lock.d.ts +8 -8
- package/dist/tasking-lock.d.ts.map +1 -1
- package/dist/tasking-lock.js +20 -21
- package/dist/tasking-lock.js.map +1 -1
- package/dist/tasking.d.ts +33 -33
- package/dist/tasking.d.ts.map +1 -1
- package/dist/tasking.js +89 -88
- package/dist/tasking.js.map +1 -1
- package/dist/triage-gate.d.ts +1 -1
- package/dist/triage-persist.d.ts +5 -5
- package/dist/triage-persist.js +15 -15
- package/dist/triage-persist.js.map +1 -1
- package/dist/verify-workflow-template.d.ts +1 -1
- package/dist/verify-workflow-template.js +2 -2
- package/dist/work-layout.d.ts +9 -7
- package/dist/work-layout.d.ts.map +1 -1
- package/dist/work-layout.js +9 -7
- package/dist/work-layout.js.map +1 -1
- package/dist/workspace.d.ts +1 -1
- package/package.json +1 -1
- package/src/advance-ci-template.ts +4 -4
- package/src/advance-classify.ts +5 -5
- package/src/advance-drivers.ts +10 -10
- package/src/advance-isolated.ts +3 -3
- package/src/advance-lifecycle-template.ts +9 -9
- package/src/advance-loop-driver.ts +3 -3
- package/src/advance-treeless-publish.ts +1 -1
- package/src/advance.ts +30 -30
- package/src/advancing-lock.ts +6 -6
- package/src/apply-decide.ts +2 -2
- package/src/apply-merge-action.ts +5 -5
- package/src/apply-persist.ts +8 -8
- package/src/buildable-body.ts +14 -14
- package/src/claim-cas.ts +4 -4
- package/src/cli.ts +94 -84
- package/src/close-job-template.ts +8 -8
- package/src/close-job.ts +26 -26
- package/src/complete.ts +11 -11
- package/src/concurrency.ts +1 -1
- package/src/config.ts +37 -37
- package/src/continue-branch.ts +1 -1
- package/src/cwd-section.ts +1 -1
- package/src/decision-engine.ts +3 -3
- package/src/do-autopick.ts +9 -9
- package/src/do-config.ts +6 -6
- package/src/do-remote-auto.ts +2 -2
- package/src/do.ts +49 -49
- package/src/drop-source.ts +2 -2
- package/src/env-config.ts +8 -8
- package/src/format.ts +3 -3
- package/src/frontmatter.ts +42 -60
- package/src/install-ci-branch-protection.ts +1 -1
- package/src/install-ci-capabilities/advance-lifecycle.ts +1 -1
- package/src/install-ci-capabilities/close-job.ts +1 -1
- package/src/install-ci-capabilities/example-noop.ts +1 -1
- package/src/install-ci-capabilities/intake.ts +2 -2
- package/src/install-ci-capabilities/verify.ts +1 -1
- package/src/install-ci-core.ts +4 -4
- package/src/install-ci-github.ts +1 -1
- package/src/install-ci.ts +4 -4
- package/src/intake-event.ts +6 -6
- package/src/intake-marker.ts +3 -3
- package/src/intake-triage.ts +2 -2
- package/src/intake-trigger-template.ts +17 -17
- package/src/intake.ts +97 -97
- package/src/integration-core.ts +35 -35
- package/src/isolation.ts +3 -3
- package/src/issue-provider.ts +4 -4
- package/src/item-lock.ts +21 -21
- package/src/item-path.ts +2 -2
- package/src/ledger-lint.ts +9 -9
- package/src/ledger-read.ts +81 -81
- package/src/ledger-write.ts +3 -3
- package/src/lifecycle-gather.ts +16 -16
- package/src/lifecycle-pools.ts +4 -4
- package/src/merge-question-surfacer.ts +4 -4
- package/src/mint-adr.ts +4 -4
- package/src/mirror-pool-scan.ts +5 -5
- package/src/needs-attention.ts +22 -22
- package/src/orphan-sidecar.ts +2 -2
- package/src/placement.ts +6 -6
- package/src/prd-to-spec.ts +51 -15
- package/src/prompt.ts +33 -35
- package/src/readiness.ts +1 -1
- package/src/recover-isolated.ts +1 -1
- package/src/repo-config.ts +12 -12
- package/src/review-gate.ts +12 -11
- package/src/review-verdict.ts +2 -2
- package/src/run.ts +6 -6
- package/src/scan.ts +15 -15
- package/src/select-order.ts +1 -1
- package/src/select-priority.ts +13 -13
- package/src/sidecar.ts +3 -3
- package/src/slug-namespace.ts +3 -3
- package/src/spec-complete.ts +2 -2
- package/src/start.ts +4 -4
- package/src/status.ts +7 -7
- package/src/surface-gate.ts +2 -2
- package/src/surface-persist.ts +2 -2
- package/src/tasker-review-loop.ts +15 -15
- package/src/tasking-eligibility.ts +21 -21
- package/src/tasking-lock.ts +27 -28
- package/src/tasking.ts +124 -123
- package/src/triage-gate.ts +1 -1
- package/src/triage-persist.ts +16 -16
- package/src/verify-workflow-template.ts +2 -2
- package/src/work-layout.ts +9 -7
- package/src/workspace.ts +1 -1
package/dist/prd-to-spec.d.ts
CHANGED
|
@@ -132,6 +132,14 @@ export interface ResyncedDoc {
|
|
|
132
132
|
dest: string;
|
|
133
133
|
/** True when the target already had byte-identical content (a no-op copy). */
|
|
134
134
|
unchanged: boolean;
|
|
135
|
+
/**
|
|
136
|
+
* True when the doc's SOURCE could not be resolved (the package/dev copy is
|
|
137
|
+
* missing), so NOTHING was copied to `dest`. A skipped doc is NEVER counted as
|
|
138
|
+
* a change (it must not bump `VERSION` — the latent bug this field guards) and
|
|
139
|
+
* is surfaced LOUDLY by the caller. Distinct from `unchanged` (which means the
|
|
140
|
+
* source WAS resolved and matched the dest byte-for-byte).
|
|
141
|
+
*/
|
|
142
|
+
skipped: boolean;
|
|
135
143
|
}
|
|
136
144
|
/** What the protocol re-sync did (or would do). */
|
|
137
145
|
export interface ResyncResult {
|
|
@@ -147,11 +155,17 @@ export interface ResyncResult {
|
|
|
147
155
|
* (`skills/setup/protocol/`) copy — NEVER the target repo's own (old) copy. This
|
|
148
156
|
* is how the migrated repo picks up the new `spec` contract before its data is
|
|
149
157
|
* converted. Idempotent: a doc already byte-identical is reported `unchanged`.
|
|
158
|
+
* A doc whose SOURCE cannot be resolved is reported `skipped` (NOT copied, NEVER
|
|
159
|
+
* a VERSION-bump) rather than silently bumping VERSION with nothing copied.
|
|
150
160
|
*
|
|
151
|
-
* `dryRun` reports what WOULD be copied without writing.
|
|
161
|
+
* `dryRun` reports what WOULD be copied without writing. `resolveDoc` overrides
|
|
162
|
+
* how a doc's source path is resolved (defaults to {@link resolveProtocolDoc});
|
|
163
|
+
* it exists so a test can force a non-resolvable source (a path that does not
|
|
164
|
+
* exist) to exercise the skip path.
|
|
152
165
|
*/
|
|
153
166
|
export declare function resyncProtocol(repoPath: string, options?: {
|
|
154
167
|
dryRun?: boolean;
|
|
168
|
+
resolveDoc?: (name: string) => string;
|
|
155
169
|
}): ResyncResult;
|
|
156
170
|
/** One folder the move relocated (or would relocate). */
|
|
157
171
|
export interface FolderMove {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prd-to-spec.d.ts","sourceRoot":"","sources":["../src/prd-to-spec.ts"],"names":[],"mappings":"AAeA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8DG;AAMH;;;;;;GAMG;AACH,MAAM,WAAW,mBAAmB;IACnC,mDAAmD;IACnD,IAAI,EAAE,MAAM,CAAC;IACb,gDAAgD;IAChD,EAAE,EAAE,MAAM,CAAC;IACX,uEAAuE;IACvE,UAAU,EAAE,MAAM,CAAC;IACnB,oEAAoE;IACpE,QAAQ,EAAE,MAAM,CAAC;IACjB,mFAAmF;IACnF,UAAU,EAAE,aAAa,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAC,CAAC,CAAC;CACtD;AAED,2DAA2D;AAC3D,eAAO,MAAM,SAAS,EAAE,mBAMvB,CAAC;AAEF;;;;;;;GAOG;AACH,eAAO,MAAM,aAAa,EAAE,SAAS,MAAM,EAS1C,CAAC;AAWF;;;;;;;;GAQG;AACH,wBAAgB,eAAe,CAC9B,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,EACZ,EAAE,EAAE,MAAM,GACR,MAAM,CAWR;AAMD,kFAAkF;AAClF,MAAM,WAAW,mBAAmB;IACnC,IAAI,EAAE,YAAY,GAAG,WAAW,GAAG,oBAAoB,CAAC;IACxD,6EAA6E;IAC7E,QAAQ,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,eAAe,CAC9B,QAAQ,EAAE,MAAM,EAChB,SAAS,GAAE,mBAA+B,EAC1C,GAAG,GAAE,MAAM,CAAC,UAAU,GAAG,SAAqB,GAC5C,mBAAmB,GAAG,SAAS,CAsEjC;AAMD,6EAA6E;AAC7E,MAAM,WAAW,WAAW;IAC3B,oDAAoD;IACpD,IAAI,EAAE,MAAM,CAAC;IACb,0DAA0D;IAC1D,IAAI,EAAE,MAAM,CAAC;IACb,8EAA8E;IAC9E,SAAS,EAAE,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"prd-to-spec.d.ts","sourceRoot":"","sources":["../src/prd-to-spec.ts"],"names":[],"mappings":"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"}
|
package/dist/prd-to-spec.js
CHANGED
|
@@ -131,36 +131,58 @@ export function checkQuiescence(repoPath, migration = MIGRATION, env = undefined
|
|
|
131
131
|
* (`skills/setup/protocol/`) copy — NEVER the target repo's own (old) copy. This
|
|
132
132
|
* is how the migrated repo picks up the new `spec` contract before its data is
|
|
133
133
|
* converted. Idempotent: a doc already byte-identical is reported `unchanged`.
|
|
134
|
+
* A doc whose SOURCE cannot be resolved is reported `skipped` (NOT copied, NEVER
|
|
135
|
+
* a VERSION-bump) rather than silently bumping VERSION with nothing copied.
|
|
134
136
|
*
|
|
135
|
-
* `dryRun` reports what WOULD be copied without writing.
|
|
137
|
+
* `dryRun` reports what WOULD be copied without writing. `resolveDoc` overrides
|
|
138
|
+
* how a doc's source path is resolved (defaults to {@link resolveProtocolDoc});
|
|
139
|
+
* it exists so a test can force a non-resolvable source (a path that does not
|
|
140
|
+
* exist) to exercise the skip path.
|
|
136
141
|
*/
|
|
137
142
|
export function resyncProtocol(repoPath, options = {}) {
|
|
138
143
|
const protocolDir = join(repoPath, WORK_ROOT, 'protocol');
|
|
144
|
+
const resolveDoc = options.resolveDoc ?? ((name) => resolveProtocolDoc(name));
|
|
139
145
|
const docs = [];
|
|
140
146
|
for (const name of PROTOCOL_DOCS) {
|
|
141
147
|
// Resolve the SOURCE (package/dev), never the target's adopted copy.
|
|
142
|
-
const source =
|
|
148
|
+
const source = resolveDoc(name);
|
|
143
149
|
const destAbs = join(protocolDir, name);
|
|
144
150
|
const destRel = relative(repoPath, destAbs);
|
|
145
|
-
|
|
146
|
-
if (
|
|
147
|
-
|
|
148
|
-
|
|
151
|
+
const sourceExists = existsSync(source);
|
|
152
|
+
if (!sourceExists) {
|
|
153
|
+
// The source doc could not be resolved: copy NOTHING and record the doc as
|
|
154
|
+
// SKIPPED (never a change). This is the latent-bug fix: a non-resolvable
|
|
155
|
+
// source must not count as `changed` and bump `VERSION` while copying no
|
|
156
|
+
// file. `unchanged: false` here is honest (the dest was not made to match a
|
|
157
|
+
// source), but `skipped: true` keeps it OUT of the VERSION-bump tally.
|
|
158
|
+
docs.push({ name, dest: destRel, unchanged: false, skipped: true });
|
|
159
|
+
continue;
|
|
149
160
|
}
|
|
150
|
-
|
|
161
|
+
// Source resolved: a doc is CHANGED (VERSION-bump-worthy) only when the dest
|
|
162
|
+
// is absent OR its content differs from the source. An identical dest is a
|
|
163
|
+
// no-op copy (`unchanged`), so an already-synced re-run stays a true no-op.
|
|
164
|
+
const unchanged = existsSync(destAbs) &&
|
|
165
|
+
readFileSync(source, 'utf8') === readFileSync(destAbs, 'utf8');
|
|
166
|
+
if (!options.dryRun) {
|
|
151
167
|
mkdirSync(dirname(destAbs), { recursive: true });
|
|
152
168
|
copyFileSync(source, destAbs);
|
|
153
169
|
}
|
|
154
|
-
docs.push({ name, dest: destRel, unchanged });
|
|
170
|
+
docs.push({ name, dest: destRel, unchanged, skipped: false });
|
|
155
171
|
}
|
|
156
172
|
const versionAbs = join(protocolDir, 'VERSION');
|
|
157
173
|
const versionRel = relative(repoPath, versionAbs);
|
|
158
|
-
// Bump VERSION only when a doc
|
|
159
|
-
//
|
|
160
|
-
// (
|
|
161
|
-
//
|
|
162
|
-
|
|
163
|
-
|
|
174
|
+
// Bump VERSION only when a doc was ACTUALLY COPIED with new content, or when
|
|
175
|
+
// VERSION is absent AND at least one doc was genuinely synced (copied). A
|
|
176
|
+
// SKIPPED doc (unresolvable source, nothing copied) is NEVER a change —
|
|
177
|
+
// counting it would bump VERSION without copying a single doc (the latent bug),
|
|
178
|
+
// and the write-when-absent fallback must ALSO require a real copy so an
|
|
179
|
+
// all-skipped resync leaves no VERSION behind. A re-run on an already-synced
|
|
180
|
+
// repo must stay a true no-op — otherwise the (always-fresh) `synced-at`
|
|
181
|
+
// timestamp would dirty the tree on every idempotent re-run.
|
|
182
|
+
const anyDocChanged = docs.some((d) => !d.unchanged && !d.skipped);
|
|
183
|
+
const anyDocSynced = docs.some((d) => !d.skipped);
|
|
184
|
+
if (!options.dryRun &&
|
|
185
|
+
(anyDocChanged || (anyDocSynced && !existsSync(versionAbs)))) {
|
|
164
186
|
mkdirSync(dirname(versionAbs), { recursive: true });
|
|
165
187
|
const today = new Date().toISOString().slice(0, 10);
|
|
166
188
|
writeFileSync(versionAbs, [
|
package/dist/prd-to-spec.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prd-to-spec.js","sourceRoot":"","sources":["../src/prd-to-spec.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"prd-to-spec.js","sourceRoot":"","sources":["../src/prd-to-spec.ts"],"names":[],"mappings":"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"}
|
package/dist/prompt.d.ts
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Builds the prompt the runner hands to `agentCmd`: a small CONSTANT wrapper
|
|
3
|
-
* (only the `<slug>` / source-
|
|
3
|
+
* (only the `<slug>` / source-spec path vary) around the claimed task's own
|
|
4
4
|
* `## Prompt` section. This is dual-use — the SAME assembly the autonomous
|
|
5
5
|
* runner feeds `agentCmd` and the human `dorfl prompt [<slug>]` command.
|
|
6
6
|
*
|
|
7
7
|
* The wrapper is NOT hardcoded here: it is read VERBATIM from the work-contract
|
|
8
8
|
* (`skills/setup/protocol/CLAIM-PROTOCOL.md` → "The prompt handed to the work agent"),
|
|
9
9
|
* so the emitted text can never silently diverge from the canonical contract.
|
|
10
|
-
* We only substitute the per-task placeholders (`<slug>`, `<
|
|
10
|
+
* We only substitute the per-task placeholders (`<slug>`, `<spec>`).
|
|
11
11
|
*
|
|
12
12
|
* The wrapper draws the git boundary IN-BAND — the spawned agent does NO git ops
|
|
13
13
|
* on the repo (no commit/push, no moving `work/` files); the RUNNER owns every
|
|
@@ -54,7 +54,7 @@ export declare function resolveProtocolDoc(name: string, cwd?: string, override?
|
|
|
54
54
|
/**
|
|
55
55
|
* Pull the canonical wrapper TEMPLATE out of CLAIM-PROTOCOL.md: the first fenced
|
|
56
56
|
* code block following the "The prompt handed to the work agent" heading. The
|
|
57
|
-
* returned text still contains the `<slug>` / `<
|
|
57
|
+
* returned text still contains the `<slug>` / `<spec>` placeholders verbatim — it
|
|
58
58
|
* is the single source of truth for the wrapper.
|
|
59
59
|
*/
|
|
60
60
|
export declare function extractCanonicalWrapperTemplate(protocol: string): string;
|
|
@@ -72,21 +72,21 @@ export declare function extractCanonicalWrapperTemplate(protocol: string): strin
|
|
|
72
72
|
*
|
|
73
73
|
* Pure string transform; runs AFTER `extractCanonicalWrapperTemplate` (a pure
|
|
74
74
|
* verbatim extractor stays a pure verbatim extractor) and BEFORE the
|
|
75
|
-
* `<slug>`/`<
|
|
75
|
+
* `<slug>`/`<spec>` substitution.
|
|
76
76
|
*/
|
|
77
77
|
export declare function applyPromptGuidance(template: string, nudges?: {
|
|
78
78
|
testFirst?: boolean;
|
|
79
79
|
}): string;
|
|
80
80
|
/**
|
|
81
|
-
* The constant wrapper, parameterised only by the task slug, its source
|
|
81
|
+
* The constant wrapper, parameterised only by the task slug, its source spec
|
|
82
82
|
* slug, and (optionally) the resolved {@link PromptGuidance} nudges. Read
|
|
83
83
|
* verbatim from the work-contract and substituted — never a divergent hardcoded
|
|
84
|
-
* copy. `
|
|
84
|
+
* copy. `spec` may be `undefined` when the task has no `spec:` field. When
|
|
85
85
|
* `promptGuidance` is omitted (or every member resolves false) the output is
|
|
86
86
|
* BYTE-IDENTICAL to today's wrapper (the ELSE-branch of every conditional is
|
|
87
87
|
* the historic text).
|
|
88
88
|
*/
|
|
89
|
-
export declare function wrapper(slug: string,
|
|
89
|
+
export declare function wrapper(slug: string, spec: string | undefined, options?: {
|
|
90
90
|
protocolPath?: string;
|
|
91
91
|
cwd?: string;
|
|
92
92
|
promptGuidance?: {
|
|
@@ -172,7 +172,7 @@ export declare function resolveContinueContext(options: {
|
|
|
172
172
|
*/
|
|
173
173
|
export declare function buildContinueBlock(slug: string, ctx: ContinueContext): string;
|
|
174
174
|
/**
|
|
175
|
-
* Build the full prompt: the canonical wrapper for `slug` (with its source
|
|
175
|
+
* Build the full prompt: the canonical wrapper for `slug` (with its source spec
|
|
176
176
|
* substituted) followed by the task's own `## Prompt` body, appended verbatim.
|
|
177
177
|
*
|
|
178
178
|
* In CONTINUE-mode (a {@link ContinueContext} is supplied), a CONTINUE block is
|
|
@@ -181,7 +181,7 @@ export declare function buildContinueBlock(slug: string, ctx: ContinueContext):
|
|
|
181
181
|
* handoff note(s). In FRESH-START mode (no context, the common case) the output
|
|
182
182
|
* is BYTE-IDENTICAL to the canonical wrapper + task prompt — no CONTINUE block.
|
|
183
183
|
*/
|
|
184
|
-
export declare function buildAgentPrompt(slug: string,
|
|
184
|
+
export declare function buildAgentPrompt(slug: string, spec: string | undefined, taskPrompt: string, options?: {
|
|
185
185
|
protocolPath?: string;
|
|
186
186
|
cwd?: string;
|
|
187
187
|
continueContext?: ContinueContext;
|
|
@@ -203,8 +203,8 @@ export interface ResolvedTask {
|
|
|
203
203
|
path: string;
|
|
204
204
|
/** The folder the task was resolved from (in-progress wins over tasks-ready). */
|
|
205
205
|
folder: TaskFolder;
|
|
206
|
-
/** The task's source
|
|
207
|
-
|
|
206
|
+
/** The task's source SPEC slug (frontmatter `spec:`), if any. */
|
|
207
|
+
spec: string | undefined;
|
|
208
208
|
/** The extracted `## Prompt` body. */
|
|
209
209
|
taskPrompt: string;
|
|
210
210
|
}
|
|
@@ -234,7 +234,7 @@ export declare class PromptError extends Error {
|
|
|
234
234
|
/**
|
|
235
235
|
* The CONTINUE-only gate that lets {@link resolveTask} reach a task that has
|
|
236
236
|
* already been done-moved into `work/done/` — story 5 of the `ledger-integrity`
|
|
237
|
-
*
|
|
237
|
+
* spec (defect 3). A continue/re-claim can legitimately land on a branch whose
|
|
238
238
|
* task was ALREADY moved to `done/` (the green-but-unpushed STRAND state), and
|
|
239
239
|
* onboard must find it; but a `done/` task is folder-indistinguishable between
|
|
240
240
|
* two states and re-onboarding a genuinely-finished one would RE-RUN it. So
|
|
@@ -273,7 +273,7 @@ export interface ContinueResolutionGate {
|
|
|
273
273
|
}
|
|
274
274
|
/**
|
|
275
275
|
* Extra knobs for {@link resolveTask} beyond the continue gate. Today the only
|
|
276
|
-
* member is `allowBacklog` (
|
|
276
|
+
* member is `allowBacklog` (spec
|
|
277
277
|
* `do-allow-backlog-drive-staged-tasks-without-promotion`): the operator's
|
|
278
278
|
* EXPLICIT `do … --allow-backlog`, which widens resolution to also search
|
|
279
279
|
* `tasks-backlog` (staging) at LOWEST priority. Default off (omitted) \u21d2 the
|
|
@@ -290,7 +290,7 @@ export interface ResolveTaskOptions {
|
|
|
290
290
|
}
|
|
291
291
|
/**
|
|
292
292
|
* Resolve a task's file: prefer `work/in-progress/<slug>.md`, fall back to
|
|
293
|
-
* `work/tasks/ready/<slug>.md` (the pool). Returns the parsed
|
|
293
|
+
* `work/tasks/ready/<slug>.md` (the pool). Returns the parsed spec + extracted
|
|
294
294
|
* `## Prompt` body. Throws {@link PromptError} when neither file exists or it has
|
|
295
295
|
* no prompt body.
|
|
296
296
|
*
|
|
@@ -304,11 +304,11 @@ export interface ResolveTaskOptions {
|
|
|
304
304
|
* the only addition, and it is gated. With no gate (a fresh claim) the behaviour
|
|
305
305
|
* is byte-identical to the original `['in-progress','tasks-ready']`-only resolution.
|
|
306
306
|
*
|
|
307
|
-
* `--allow-backlog` (
|
|
307
|
+
* `--allow-backlog` (spec `do-allow-backlog-drive-staged-tasks-without-promotion`):
|
|
308
308
|
* when {@link ResolveTaskOptions.allowBacklog} is set, `tasks-backlog` (the staging
|
|
309
309
|
* folder) is appended at the LOWEST priority — after `tasks-ready`, so a slug
|
|
310
310
|
* present in BOTH the pool and staging resolves to the READY copy (the same-slug
|
|
311
|
-
* precedence the
|
|
311
|
+
* precedence the spec's decision 5 fixes). Default off ⇒ byte-identical to today
|
|
312
312
|
* (no autonomous path sets it; staging stays unreachable to `run`/auto-pick).
|
|
313
313
|
*/
|
|
314
314
|
export declare function resolveTask(cwd: string, slug: string, continueGate?: ContinueResolutionGate, options?: ResolveTaskOptions): ResolvedTask;
|
|
@@ -324,30 +324,30 @@ export declare function inferSlugFromBranch(cwd: string, env?: NodeJS.ProcessEnv
|
|
|
324
324
|
*/
|
|
325
325
|
/**
|
|
326
326
|
* Resolve the EFFECTIVE `promptGuidance` for an item by walking the precedence
|
|
327
|
-
* chain (highest → lowest): the per-task frontmatter override, the per-
|
|
328
|
-
* frontmatter override (only when the task carries a `
|
|
327
|
+
* chain (highest → lowest): the per-task frontmatter override, the per-spec
|
|
328
|
+
* frontmatter override (only when the task carries a `spec:`), then the
|
|
329
329
|
* already-resolved repo policy. Each nudge member resolves independently — a
|
|
330
330
|
* task's `promptGuidance.testFirst` override never bleeds into a sibling
|
|
331
331
|
* member — mirroring the `humanOnly`/`autoBuild` per-item override shape.
|
|
332
332
|
*
|
|
333
|
-
* A task may carry the override even when it has NO `
|
|
333
|
+
* A task may carry the override even when it has NO `spec:` (a self-contained
|
|
334
334
|
* chore), by symmetry with `humanOnly` at the item level; `specFrontmatter`
|
|
335
335
|
* is then simply absent and the chain reads task ⇒ repo.
|
|
336
336
|
*/
|
|
337
337
|
export declare function resolveItemPromptGuidance(repoResolved: PromptGuidance, taskFrontmatter?: Frontmatter, specFrontmatter?: Frontmatter): PromptGuidance;
|
|
338
338
|
/**
|
|
339
|
-
* Locate a
|
|
340
|
-
* auto-slice pool), then fall back to `work/
|
|
339
|
+
* Locate a spec's file on disk: prefer `work/specs/ready/<slug>.md` (the
|
|
340
|
+
* auto-slice pool), then fall back to `work/specs/tasked/<slug>.md` (tasked,
|
|
341
341
|
* resting). Returns `undefined` when neither exists — the caller treats that
|
|
342
|
-
* as "no
|
|
343
|
-
* through to the repo policy (a missing
|
|
342
|
+
* as "no spec-level override available" and the precedence chain falls
|
|
343
|
+
* through to the repo policy (a missing spec is NOT an error at this seam;
|
|
344
344
|
* the per-item override is OPTIONAL by design).
|
|
345
345
|
*/
|
|
346
346
|
export declare function findSpecPath(cwd: string, specSlug: string): string | undefined;
|
|
347
347
|
/**
|
|
348
348
|
* The convenience seam every caller of {@link buildAgentPrompt} reuses to
|
|
349
349
|
* resolve the per-item override: load the task frontmatter from its file +
|
|
350
|
-
* (when the task carries `
|
|
350
|
+
* (when the task carries `spec:`) the spec frontmatter, then walk
|
|
351
351
|
* {@link resolveItemPromptGuidance}. Pure-ish (reads at most two files);
|
|
352
352
|
* returns the repo policy verbatim when neither item layer overrides anything.
|
|
353
353
|
*/
|
package/dist/prompt.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"prompt.d.ts","sourceRoot":"","sources":["../src/prompt.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAKH,OAAO,EAAmB,KAAK,WAAW,EAAC,MAAM,kBAAkB,CAAC;AACpE,OAAO,KAAK,EAAC,cAAc,EAAC,MAAM,aAAa,CAAC;AAChD,OAAO,EAKN,KAAK,oBAAoB,EACzB,MAAM,kBAAkB,CAAC;AAM1B;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAiCxE;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,kBAAkB,CACjC,IAAI,EAAE,MAAM,EACZ,GAAG,CAAC,EAAE,MAAM,EACZ,QAAQ,CAAC,EAAE,MAAM,GACf,MAAM,CA6BR;AAED;;;;;GAKG;AACH,wBAAgB,+BAA+B,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAoDxE;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,mBAAmB,CAClC,QAAQ,EAAE,MAAM,EAChB,MAAM,GAAE;IAAC,SAAS,CAAC,EAAE,OAAO,CAAA;CAAM,GAChC,MAAM,CAWR;AAED;;;;;;;;GAQG;AACH,wBAAgB,OAAO,CACtB,IAAI,EAAE,MAAM,EACZ,
|
|
1
|
+
{"version":3,"file":"prompt.d.ts","sourceRoot":"","sources":["../src/prompt.ts"],"names":[],"mappings":"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"}
|
package/dist/prompt.js
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Builds the prompt the runner hands to `agentCmd`: a small CONSTANT wrapper
|
|
3
|
-
* (only the `<slug>` / source-
|
|
3
|
+
* (only the `<slug>` / source-spec path vary) around the claimed task's own
|
|
4
4
|
* `## Prompt` section. This is dual-use — the SAME assembly the autonomous
|
|
5
5
|
* runner feeds `agentCmd` and the human `dorfl prompt [<slug>]` command.
|
|
6
6
|
*
|
|
7
7
|
* The wrapper is NOT hardcoded here: it is read VERBATIM from the work-contract
|
|
8
8
|
* (`skills/setup/protocol/CLAIM-PROTOCOL.md` → "The prompt handed to the work agent"),
|
|
9
9
|
* so the emitted text can never silently diverge from the canonical contract.
|
|
10
|
-
* We only substitute the per-task placeholders (`<slug>`, `<
|
|
10
|
+
* We only substitute the per-task placeholders (`<slug>`, `<spec>`).
|
|
11
11
|
*
|
|
12
12
|
* The wrapper draws the git boundary IN-BAND — the spawned agent does NO git ops
|
|
13
13
|
* on the repo (no commit/push, no moving `work/` files); the RUNNER owns every
|
|
@@ -112,7 +112,7 @@ export function resolveProtocolDoc(name, cwd, override) {
|
|
|
112
112
|
/**
|
|
113
113
|
* Pull the canonical wrapper TEMPLATE out of CLAIM-PROTOCOL.md: the first fenced
|
|
114
114
|
* code block following the "The prompt handed to the work agent" heading. The
|
|
115
|
-
* returned text still contains the `<slug>` / `<
|
|
115
|
+
* returned text still contains the `<slug>` / `<spec>` placeholders verbatim — it
|
|
116
116
|
* is the single source of truth for the wrapper.
|
|
117
117
|
*/
|
|
118
118
|
export function extractCanonicalWrapperTemplate(protocol) {
|
|
@@ -174,7 +174,7 @@ export function extractCanonicalWrapperTemplate(protocol) {
|
|
|
174
174
|
*
|
|
175
175
|
* Pure string transform; runs AFTER `extractCanonicalWrapperTemplate` (a pure
|
|
176
176
|
* verbatim extractor stays a pure verbatim extractor) and BEFORE the
|
|
177
|
-
* `<slug>`/`<
|
|
177
|
+
* `<slug>`/`<spec>` substitution.
|
|
178
178
|
*/
|
|
179
179
|
export function applyPromptGuidance(template, nudges = {}) {
|
|
180
180
|
const values = {
|
|
@@ -186,20 +186,20 @@ export function applyPromptGuidance(template, nudges = {}) {
|
|
|
186
186
|
});
|
|
187
187
|
}
|
|
188
188
|
/**
|
|
189
|
-
* The constant wrapper, parameterised only by the task slug, its source
|
|
189
|
+
* The constant wrapper, parameterised only by the task slug, its source spec
|
|
190
190
|
* slug, and (optionally) the resolved {@link PromptGuidance} nudges. Read
|
|
191
191
|
* verbatim from the work-contract and substituted — never a divergent hardcoded
|
|
192
|
-
* copy. `
|
|
192
|
+
* copy. `spec` may be `undefined` when the task has no `spec:` field. When
|
|
193
193
|
* `promptGuidance` is omitted (or every member resolves false) the output is
|
|
194
194
|
* BYTE-IDENTICAL to today's wrapper (the ELSE-branch of every conditional is
|
|
195
195
|
* the historic text).
|
|
196
196
|
*/
|
|
197
|
-
export function wrapper(slug,
|
|
197
|
+
export function wrapper(slug, spec, options = {}) {
|
|
198
198
|
const protocolPath = resolveProtocolDoc('CLAIM-PROTOCOL.md', options.cwd, options.protocolPath);
|
|
199
199
|
const protocol = readFileSync(protocolPath, 'utf8');
|
|
200
200
|
const template = extractCanonicalWrapperTemplate(protocol);
|
|
201
201
|
const resolved = applyPromptGuidance(template, options.promptGuidance);
|
|
202
|
-
return resolved.replace(/<slug>/g, slug).replace(/<
|
|
202
|
+
return resolved.replace(/<slug>/g, slug).replace(/<spec>/g, spec ?? '<spec>');
|
|
203
203
|
}
|
|
204
204
|
/** The heading prefix the requeue handoff notes are appended under. */
|
|
205
205
|
const REQUEUE_HEADING_PREFIX = '## Requeue';
|
|
@@ -303,7 +303,7 @@ export function buildContinueBlock(slug, ctx) {
|
|
|
303
303
|
return lines.join('\n').trim();
|
|
304
304
|
}
|
|
305
305
|
/**
|
|
306
|
-
* Build the full prompt: the canonical wrapper for `slug` (with its source
|
|
306
|
+
* Build the full prompt: the canonical wrapper for `slug` (with its source spec
|
|
307
307
|
* substituted) followed by the task's own `## Prompt` body, appended verbatim.
|
|
308
308
|
*
|
|
309
309
|
* In CONTINUE-mode (a {@link ContinueContext} is supplied), a CONTINUE block is
|
|
@@ -312,8 +312,8 @@ export function buildContinueBlock(slug, ctx) {
|
|
|
312
312
|
* handoff note(s). In FRESH-START mode (no context, the common case) the output
|
|
313
313
|
* is BYTE-IDENTICAL to the canonical wrapper + task prompt — no CONTINUE block.
|
|
314
314
|
*/
|
|
315
|
-
export function buildAgentPrompt(slug,
|
|
316
|
-
const head = wrapper(slug,
|
|
315
|
+
export function buildAgentPrompt(slug, spec, taskPrompt, options = {}) {
|
|
316
|
+
const head = wrapper(slug, spec, options);
|
|
317
317
|
if (options.continueContext) {
|
|
318
318
|
const block = buildContinueBlock(slug, options.continueContext);
|
|
319
319
|
return `${head}\n\n${block}\n\n${taskPrompt}\n`;
|
|
@@ -342,7 +342,7 @@ function isStrandedDoneTip(gate) {
|
|
|
342
342
|
}
|
|
343
343
|
/**
|
|
344
344
|
* Resolve a task's file: prefer `work/in-progress/<slug>.md`, fall back to
|
|
345
|
-
* `work/tasks/ready/<slug>.md` (the pool). Returns the parsed
|
|
345
|
+
* `work/tasks/ready/<slug>.md` (the pool). Returns the parsed spec + extracted
|
|
346
346
|
* `## Prompt` body. Throws {@link PromptError} when neither file exists or it has
|
|
347
347
|
* no prompt body.
|
|
348
348
|
*
|
|
@@ -356,11 +356,11 @@ function isStrandedDoneTip(gate) {
|
|
|
356
356
|
* the only addition, and it is gated. With no gate (a fresh claim) the behaviour
|
|
357
357
|
* is byte-identical to the original `['in-progress','tasks-ready']`-only resolution.
|
|
358
358
|
*
|
|
359
|
-
* `--allow-backlog` (
|
|
359
|
+
* `--allow-backlog` (spec `do-allow-backlog-drive-staged-tasks-without-promotion`):
|
|
360
360
|
* when {@link ResolveTaskOptions.allowBacklog} is set, `tasks-backlog` (the staging
|
|
361
361
|
* folder) is appended at the LOWEST priority — after `tasks-ready`, so a slug
|
|
362
362
|
* present in BOTH the pool and staging resolves to the READY copy (the same-slug
|
|
363
|
-
* precedence the
|
|
363
|
+
* precedence the spec's decision 5 fixes). Default off ⇒ byte-identical to today
|
|
364
364
|
* (no autonomous path sets it; staging stays unreachable to `run`/auto-pick).
|
|
365
365
|
*/
|
|
366
366
|
export function resolveTask(cwd, slug, continueGate, options) {
|
|
@@ -388,11 +388,10 @@ export function resolveTask(cwd, slug, continueGate, options) {
|
|
|
388
388
|
throw new PromptError(`task '${slug}' (${workFolderRel(folder)}/${slug}.md) has no '## Prompt' section`);
|
|
389
389
|
}
|
|
390
390
|
const fm = parseFrontmatter(content);
|
|
391
|
-
//
|
|
392
|
-
//
|
|
393
|
-
// `
|
|
394
|
-
|
|
395
|
-
return { slug, path, folder, prd: fm.spec, taskPrompt };
|
|
391
|
+
// Read the parent-spec pointer off `fm.spec` (populated from the canonical
|
|
392
|
+
// `spec:` key) into the `spec`-only `ResolvedTask` (spec
|
|
393
|
+
// `prd-to-spec-vocabulary-cutover-and-migration-command`).
|
|
394
|
+
return { slug, path, folder, spec: fm.spec, taskPrompt };
|
|
396
395
|
}
|
|
397
396
|
const searched = order.map((f) => `${workFolderRel(f)}/`).join(', ');
|
|
398
397
|
throw new PromptError(`no task '${slug}' found in ${searched}`);
|
|
@@ -416,13 +415,13 @@ export function inferSlugFromBranch(cwd, env) {
|
|
|
416
415
|
*/
|
|
417
416
|
/**
|
|
418
417
|
* Resolve the EFFECTIVE `promptGuidance` for an item by walking the precedence
|
|
419
|
-
* chain (highest → lowest): the per-task frontmatter override, the per-
|
|
420
|
-
* frontmatter override (only when the task carries a `
|
|
418
|
+
* chain (highest → lowest): the per-task frontmatter override, the per-spec
|
|
419
|
+
* frontmatter override (only when the task carries a `spec:`), then the
|
|
421
420
|
* already-resolved repo policy. Each nudge member resolves independently — a
|
|
422
421
|
* task's `promptGuidance.testFirst` override never bleeds into a sibling
|
|
423
422
|
* member — mirroring the `humanOnly`/`autoBuild` per-item override shape.
|
|
424
423
|
*
|
|
425
|
-
* A task may carry the override even when it has NO `
|
|
424
|
+
* A task may carry the override even when it has NO `spec:` (a self-contained
|
|
426
425
|
* chore), by symmetry with `humanOnly` at the item level; `specFrontmatter`
|
|
427
426
|
* is then simply absent and the chain reads task ⇒ repo.
|
|
428
427
|
*/
|
|
@@ -434,11 +433,11 @@ export function resolveItemPromptGuidance(repoResolved, taskFrontmatter, specFro
|
|
|
434
433
|
};
|
|
435
434
|
}
|
|
436
435
|
/**
|
|
437
|
-
* Locate a
|
|
438
|
-
* auto-slice pool), then fall back to `work/
|
|
436
|
+
* Locate a spec's file on disk: prefer `work/specs/ready/<slug>.md` (the
|
|
437
|
+
* auto-slice pool), then fall back to `work/specs/tasked/<slug>.md` (tasked,
|
|
439
438
|
* resting). Returns `undefined` when neither exists — the caller treats that
|
|
440
|
-
* as "no
|
|
441
|
-
* through to the repo policy (a missing
|
|
439
|
+
* as "no spec-level override available" and the precedence chain falls
|
|
440
|
+
* through to the repo policy (a missing spec is NOT an error at this seam;
|
|
442
441
|
* the per-item override is OPTIONAL by design).
|
|
443
442
|
*/
|
|
444
443
|
export function findSpecPath(cwd, specSlug) {
|
|
@@ -456,15 +455,14 @@ export function findSpecPath(cwd, specSlug) {
|
|
|
456
455
|
/**
|
|
457
456
|
* The convenience seam every caller of {@link buildAgentPrompt} reuses to
|
|
458
457
|
* resolve the per-item override: load the task frontmatter from its file +
|
|
459
|
-
* (when the task carries `
|
|
458
|
+
* (when the task carries `spec:`) the spec frontmatter, then walk
|
|
460
459
|
* {@link resolveItemPromptGuidance}. Pure-ish (reads at most two files);
|
|
461
460
|
* returns the repo policy verbatim when neither item layer overrides anything.
|
|
462
461
|
*/
|
|
463
462
|
export function resolvePromptGuidanceForItem(options) {
|
|
464
463
|
const taskFm = parseFrontmatter(options.taskContent);
|
|
465
464
|
let specFm;
|
|
466
|
-
//
|
|
467
|
-
// read the parent-spec pointer off `fm.spec` (populated beside `fm.prd`).
|
|
465
|
+
// Read the parent-spec pointer off `fm.spec` (populated from the `spec:` key).
|
|
468
466
|
if (taskFm.spec !== undefined) {
|
|
469
467
|
const specPath = findSpecPath(options.cwd, taskFm.spec);
|
|
470
468
|
if (specPath !== undefined) {
|
|
@@ -480,7 +478,7 @@ export function renderPrompt(options) {
|
|
|
480
478
|
'usage: dorfl prompt [<slug>]');
|
|
481
479
|
}
|
|
482
480
|
const task = resolveTask(options.cwd, slug);
|
|
483
|
-
// Per-item override layer: a task or
|
|
481
|
+
// Per-item override layer: a task or spec may pin `promptGuidance.testFirst`
|
|
484
482
|
// in its frontmatter, superseding the resolved repo policy for THIS item.
|
|
485
483
|
// We ALWAYS walk the resolver (even when no repo policy was threaded), so a
|
|
486
484
|
// task can opt IN to the strengthened nudge even on a repo whose default is
|
|
@@ -490,7 +488,7 @@ export function renderPrompt(options) {
|
|
|
490
488
|
repoResolved: { testFirst: options.promptGuidance?.testFirst === true },
|
|
491
489
|
taskContent: readFileSync(task.path, 'utf8'),
|
|
492
490
|
});
|
|
493
|
-
return buildAgentPrompt(task.slug, task.
|
|
491
|
+
return buildAgentPrompt(task.slug, task.spec, task.taskPrompt, {
|
|
494
492
|
protocolPath: options.protocolPath,
|
|
495
493
|
cwd: options.cwd,
|
|
496
494
|
promptGuidance: resolvedGuidance,
|