dorfl 0.1.1 → 0.2.0
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 +8 -8
- package/dist/advance-drivers.d.ts.map +1 -1
- package/dist/advance-drivers.js +20 -8
- 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.d.ts.map +1 -1
- package/dist/advance-lifecycle-template.js +85 -13
- 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 +24 -1
- package/dist/advance-treeless-publish.d.ts.map +1 -1
- package/dist/advance-treeless-publish.js +41 -0
- package/dist/advance-treeless-publish.js.map +1 -1
- package/dist/advance.d.ts +69 -17
- package/dist/advance.d.ts.map +1 -1
- package/dist/advance.js +409 -102
- package/dist/advance.js.map +1 -1
- package/dist/advancing-lock.d.ts +31 -3
- package/dist/advancing-lock.d.ts.map +1 -1
- package/dist/advancing-lock.js +55 -5
- package/dist/advancing-lock.js.map +1 -1
- package/dist/agent-launch.d.ts +12 -0
- package/dist/agent-launch.d.ts.map +1 -1
- package/dist/agent-launch.js +22 -12
- package/dist/agent-launch.js.map +1 -1
- package/dist/agent-stop.d.ts +40 -2
- package/dist/agent-stop.d.ts.map +1 -1
- package/dist/agent-stop.js +30 -2
- package/dist/agent-stop.js.map +1 -1
- package/dist/apply-decide.d.ts +19 -5
- package/dist/apply-decide.d.ts.map +1 -1
- package/dist/apply-decide.js +38 -9
- package/dist/apply-decide.js.map +1 -1
- package/dist/apply-merge-action.d.ts +20 -8
- package/dist/apply-merge-action.d.ts.map +1 -1
- package/dist/apply-merge-action.js +44 -9
- package/dist/apply-merge-action.js.map +1 -1
- package/dist/apply-persist.d.ts +62 -31
- package/dist/apply-persist.d.ts.map +1 -1
- package/dist/apply-persist.js +173 -44
- package/dist/apply-persist.js.map +1 -1
- package/dist/apply-stuck-action.d.ts +151 -0
- package/dist/apply-stuck-action.d.ts.map +1 -0
- package/dist/apply-stuck-action.js +125 -0
- package/dist/apply-stuck-action.js.map +1 -0
- package/dist/brand.d.ts +12 -1
- package/dist/brand.d.ts.map +1 -1
- package/dist/brand.js +2 -1
- package/dist/brand.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-spinner.d.ts +1 -1
- package/dist/cli-spinner.js +1 -1
- package/dist/cli.d.ts +10 -0
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +385 -128
- package/dist/cli.js.map +1 -1
- package/dist/close-job-template.d.ts +3 -3
- package/dist/close-job-template.js +9 -9
- 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 +9 -6
- package/dist/complete.d.ts.map +1 -1
- package/dist/complete.js +99 -45
- 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 +86 -40
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +61 -9
- package/dist/config.js.map +1 -1
- package/dist/continue-branch.d.ts +1 -1
- package/dist/continue-branch.d.ts.map +1 -1
- package/dist/continue-branch.js +23 -1
- package/dist/continue-branch.js.map +1 -1
- package/dist/cwd-section.js +1 -1
- package/dist/cwd-section.js.map +1 -1
- package/dist/decision-engine.d.ts +39 -11
- package/dist/decision-engine.d.ts.map +1 -1
- package/dist/decision-engine.js +10 -6
- package/dist/decision-engine.js.map +1 -1
- package/dist/do-autopick.d.ts +6 -6
- package/dist/do-autopick.d.ts.map +1 -1
- package/dist/do-autopick.js +16 -6
- package/dist/do-autopick.js.map +1 -1
- package/dist/do-config.d.ts +4 -4
- 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 +74 -81
- package/dist/do.d.ts.map +1 -1
- package/dist/do.js +439 -50
- package/dist/do.js.map +1 -1
- package/dist/drop-source.d.ts +2 -2
- package/dist/env-config.d.ts.map +1 -1
- package/dist/env-config.js +19 -11
- package/dist/env-config.js.map +1 -1
- package/dist/failure-cause.d.ts +3 -2
- package/dist/failure-cause.d.ts.map +1 -1
- package/dist/failure-cause.js +28 -1
- package/dist/failure-cause.js.map +1 -1
- package/dist/format.d.ts +6 -6
- package/dist/format.d.ts.map +1 -1
- package/dist/format.js +13 -30
- package/dist/format.js.map +1 -1
- package/dist/frontmatter.d.ts +28 -15
- package/dist/frontmatter.d.ts.map +1 -1
- package/dist/frontmatter.js +38 -24
- package/dist/frontmatter.js.map +1 -1
- package/dist/gc.d.ts +65 -6
- package/dist/gc.d.ts.map +1 -1
- package/dist/gc.js +126 -9
- package/dist/gc.js.map +1 -1
- package/dist/github.d.ts +14 -0
- package/dist/github.d.ts.map +1 -1
- package/dist/github.js +73 -0
- package/dist/github.js.map +1 -1
- package/dist/harness.d.ts +25 -0
- package/dist/harness.d.ts.map +1 -1
- package/dist/harness.js.map +1 -1
- package/dist/index.d.ts +4 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/install-ci-branch-protection.d.ts +133 -39
- package/dist/install-ci-branch-protection.d.ts.map +1 -1
- package/dist/install-ci-branch-protection.js +191 -49
- package/dist/install-ci-branch-protection.js.map +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 +24 -4
- package/dist/install-ci-core.d.ts.map +1 -1
- package/dist/install-ci-core.js +12 -5
- package/dist/install-ci-core.js.map +1 -1
- package/dist/install-ci-github.d.ts +33 -1
- package/dist/install-ci-github.d.ts.map +1 -1
- package/dist/install-ci-github.js +74 -1
- package/dist/install-ci-github.js.map +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/install-skills.d.ts +123 -0
- package/dist/install-skills.d.ts.map +1 -0
- package/dist/install-skills.js +100 -0
- package/dist/install-skills.js.map +1 -0
- 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 +17 -17
- package/dist/intake-trigger-template.js.map +1 -1
- package/dist/intake.d.ts +65 -52
- package/dist/intake.d.ts.map +1 -1
- package/dist/intake.js +92 -76
- package/dist/intake.js.map +1 -1
- package/dist/integration-core.d.ts +27 -24
- package/dist/integration-core.d.ts.map +1 -1
- package/dist/integration-core.js +191 -77
- package/dist/integration-core.js.map +1 -1
- package/dist/integrator.d.ts +1 -1
- package/dist/integrator.d.ts.map +1 -1
- package/dist/integrator.js +19 -3
- package/dist/integrator.js.map +1 -1
- package/dist/isolation.d.ts +4 -4
- package/dist/isolation.d.ts.map +1 -1
- package/dist/isolation.js +9 -0
- package/dist/isolation.js.map +1 -1
- package/dist/issue-provider.d.ts +4 -4
- package/dist/issue-provider.js +1 -1
- package/dist/item-lock.d.ts +216 -149
- package/dist/item-lock.d.ts.map +1 -1
- package/dist/item-lock.js +345 -270
- package/dist/item-lock.js.map +1 -1
- 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 +33 -28
- package/dist/ledger-write.d.ts.map +1 -1
- package/dist/ledger-write.js +100 -122
- package/dist/ledger-write.js.map +1 -1
- package/dist/lifecycle-gather.d.ts +18 -1
- package/dist/lifecycle-gather.d.ts.map +1 -1
- package/dist/lifecycle-gather.js +23 -17
- package/dist/lifecycle-gather.js.map +1 -1
- package/dist/lifecycle-pools.d.ts +44 -7
- package/dist/lifecycle-pools.d.ts.map +1 -1
- package/dist/lifecycle-pools.js +27 -7
- package/dist/lifecycle-pools.js.map +1 -1
- package/dist/merge-question-surfacer.d.ts +18 -4
- package/dist/merge-question-surfacer.d.ts.map +1 -1
- package/dist/merge-question-surfacer.js +20 -5
- package/dist/merge-question-surfacer.js.map +1 -1
- package/dist/migrate-stuck-locks.d.ts +129 -0
- package/dist/migrate-stuck-locks.d.ts.map +1 -0
- package/dist/migrate-stuck-locks.js +355 -0
- package/dist/migrate-stuck-locks.js.map +1 -0
- 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 +304 -27
- package/dist/needs-attention.d.ts.map +1 -1
- package/dist/needs-attention.js +542 -67
- package/dist/needs-attention.js.map +1 -1
- package/dist/orphan-sidecar.d.ts +10 -6
- package/dist/orphan-sidecar.d.ts.map +1 -1
- package/dist/orphan-sidecar.js +35 -2
- package/dist/orphan-sidecar.js.map +1 -1
- package/dist/pi-harness.d.ts +16 -0
- package/dist/pi-harness.d.ts.map +1 -1
- package/dist/pi-harness.js +82 -2
- package/dist/pi-harness.js.map +1 -1
- package/dist/placement.d.ts +8 -8
- package/dist/placement.js +3 -3
- package/dist/prd-to-spec.d.ts.map +1 -1
- package/dist/prd-to-spec.js +9 -5
- package/dist/prd-to-spec.js.map +1 -1
- package/dist/prompt.d.ts +16 -19
- package/dist/prompt.d.ts.map +1 -1
- package/dist/prompt.js +17 -19
- package/dist/prompt.js.map +1 -1
- package/dist/protocol/CLAIM-PROTOCOL.md +17 -10
- package/dist/protocol/REVIEW-PROTOCOL.md +4 -1
- package/dist/protocol/SURFACE-PROTOCOL.md +16 -2
- package/dist/protocol/TASKING-PROTOCOL.md +3 -1
- package/dist/protocol/WORK-CONTRACT.md +22 -18
- package/dist/protocol/task-template.md +1 -1
- package/dist/readiness.d.ts +1 -1
- package/dist/reap-branches.d.ts +12 -9
- package/dist/reap-branches.d.ts.map +1 -1
- package/dist/reap-branches.js +25 -7
- package/dist/reap-branches.js.map +1 -1
- package/dist/recover-isolated.d.ts +12 -0
- package/dist/recover-isolated.d.ts.map +1 -1
- package/dist/recover-isolated.js +6 -1
- package/dist/recover-isolated.js.map +1 -1
- package/dist/repo-config.d.ts +23 -2
- package/dist/repo-config.d.ts.map +1 -1
- package/dist/repo-config.js +64 -18
- package/dist/repo-config.js.map +1 -1
- package/dist/repo-mirror.d.ts.map +1 -1
- package/dist/repo-mirror.js +18 -2
- package/dist/repo-mirror.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 +2 -2
- package/dist/review-verdict.js.map +1 -1
- package/dist/run.d.ts +2 -2
- package/dist/run.d.ts.map +1 -1
- package/dist/run.js +58 -23
- package/dist/run.js.map +1 -1
- package/dist/scan.d.ts +26 -17
- package/dist/scan.d.ts.map +1 -1
- package/dist/scan.js +29 -15
- package/dist/scan.js.map +1 -1
- package/dist/select-order.d.ts +1 -1
- package/dist/select-priority.d.ts +14 -14
- 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-apply.js +1 -1
- package/dist/sidecar-apply.js.map +1 -1
- package/dist/sidecar.d.ts +47 -12
- package/dist/sidecar.d.ts.map +1 -1
- package/dist/sidecar.js +84 -4
- package/dist/sidecar.js.map +1 -1
- package/dist/skills/answer-questions/SKILL.md +89 -0
- package/dist/skills/capture-signal/SKILL.md +52 -0
- package/dist/skills/convert-from-prd-to-spec/SKILL.md +90 -0
- package/dist/skills/drive-tasks/SKILL.md +218 -0
- package/dist/skills/from-idea/SKILL.md +83 -0
- package/dist/skills/merge-prs/SKILL.md +70 -0
- package/dist/skills/orchestrate/SKILL.md +101 -0
- package/dist/skills/promote/SKILL.md +35 -0
- package/dist/skills/review/SKILL.md +16 -0
- package/dist/skills/setup/SKILL.md +258 -0
- package/dist/skills/setup/protocol/ADR-FORMAT.md +47 -0
- package/dist/skills/setup/protocol/CLAIM-PROTOCOL.md +224 -0
- package/dist/skills/setup/protocol/REVIEW-PROTOCOL.md +122 -0
- package/dist/skills/setup/protocol/SURFACE-PROTOCOL.md +135 -0
- package/dist/skills/setup/protocol/TASKING-PROTOCOL.md +124 -0
- package/dist/skills/setup/protocol/WORK-CONTRACT.md +280 -0
- package/dist/skills/setup/protocol/spec-template.md +71 -0
- package/dist/skills/setup/protocol/task-template.md +65 -0
- package/dist/skills/surface-questions/SKILL.md +16 -0
- package/dist/skills/to-spec/SKILL.md +34 -0
- package/dist/skills/to-task/SKILL.md +19 -0
- package/dist/skills/triage-observations/SKILL.md +78 -0
- package/dist/skills/work/SKILL.md +51 -0
- package/dist/slug-namespace.d.ts +6 -6
- package/dist/slug-namespace.js +8 -8
- package/dist/slug-namespace.js.map +1 -1
- package/dist/spec-complete.d.ts.map +1 -1
- package/dist/spec-complete.js +4 -5
- package/dist/spec-complete.js.map +1 -1
- package/dist/start.d.ts +1 -1
- package/dist/start.d.ts.map +1 -1
- package/dist/start.js +54 -60
- 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-gate.js +10 -3
- package/dist/surface-gate.js.map +1 -1
- package/dist/surface-persist.d.ts +2 -2
- package/dist/surface-persist.d.ts.map +1 -1
- package/dist/surface-persist.js +1 -1
- package/dist/surface-persist.js.map +1 -1
- package/dist/tasker-review-loop.d.ts +11 -10
- 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 +10 -10
- package/dist/tasking-lock.d.ts.map +1 -1
- package/dist/tasking-lock.js +69 -49
- package/dist/tasking-lock.js.map +1 -1
- package/dist/tasking.d.ts +73 -39
- package/dist/tasking.d.ts.map +1 -1
- package/dist/tasking.js +309 -95
- package/dist/tasking.js.map +1 -1
- package/dist/triage-gate.d.ts +1 -1
- package/dist/triage-persist.d.ts +15 -11
- package/dist/triage-persist.d.ts.map +1 -1
- package/dist/triage-persist.js +48 -18
- package/dist/triage-persist.js.map +1 -1
- package/dist/vendor/incur/agents.d.ts +58 -0
- package/dist/vendor/incur/agents.d.ts.map +1 -0
- package/dist/vendor/incur/agents.js +343 -0
- package/dist/vendor/incur/agents.js.map +1 -0
- package/dist/verify-workflow-template.d.ts +1 -1
- package/dist/verify-workflow-template.js +3 -3
- package/dist/watch-session.d.ts +11 -3
- package/dist/watch-session.d.ts.map +1 -1
- package/dist/watch-session.js +94 -7
- package/dist/watch-session.js.map +1 -1
- package/dist/work-layout.d.ts +15 -9
- package/dist/work-layout.d.ts.map +1 -1
- package/dist/work-layout.js +14 -9
- package/dist/work-layout.js.map +1 -1
- package/dist/workspace.d.ts +2 -2
- package/package.json +2 -2
- package/src/advance-ci-template.ts +4 -4
- package/src/advance-classify.ts +5 -5
- package/src/advance-drivers.ts +26 -13
- package/src/advance-isolated.ts +3 -3
- package/src/advance-lifecycle-template.ts +98 -13
- package/src/advance-loop-driver.ts +3 -3
- package/src/advance-treeless-publish.ts +46 -1
- package/src/advance.ts +495 -115
- package/src/advancing-lock.ts +102 -7
- package/src/agent-launch.ts +37 -12
- package/src/agent-stop.ts +60 -2
- package/src/apply-decide.ts +38 -9
- package/src/apply-merge-action.ts +49 -11
- package/src/apply-persist.ts +236 -62
- package/src/apply-stuck-action.ts +260 -0
- package/src/brand.ts +14 -2
- package/src/buildable-body.ts +14 -14
- package/src/claim-cas.ts +4 -4
- package/src/cli-spinner.ts +1 -1
- package/src/cli.ts +472 -141
- package/src/close-job-template.ts +9 -9
- package/src/close-job.ts +26 -26
- package/src/complete.ts +121 -63
- package/src/concurrency.ts +1 -1
- package/src/config.ts +143 -49
- package/src/continue-branch.ts +23 -1
- package/src/cwd-section.ts +1 -1
- package/src/decision-engine.ts +57 -19
- package/src/do-autopick.ts +21 -10
- package/src/do-config.ts +7 -7
- package/src/do-remote-auto.ts +2 -2
- package/src/do.ts +558 -85
- package/src/drop-source.ts +2 -2
- package/src/env-config.ts +19 -11
- package/src/failure-cause.ts +30 -1
- package/src/format.ts +13 -33
- package/src/frontmatter.ts +55 -35
- package/src/gc.ts +172 -9
- package/src/github.ts +78 -0
- package/src/harness.ts +25 -0
- package/src/index.ts +10 -0
- package/src/install-ci-branch-protection.ts +283 -58
- 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 +34 -7
- package/src/install-ci-github.ts +87 -1
- package/src/install-ci.ts +4 -4
- package/src/install-skills.ts +166 -0
- 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 +18 -18
- package/src/intake.ts +138 -103
- package/src/integration-core.ts +234 -100
- package/src/integrator.ts +22 -9
- package/src/isolation.ts +13 -4
- package/src/issue-provider.ts +4 -4
- package/src/item-lock.ts +505 -361
- 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 +137 -152
- package/src/lifecycle-gather.ts +45 -22
- package/src/lifecycle-pools.ts +71 -13
- package/src/merge-question-surfacer.ts +32 -8
- package/src/migrate-stuck-locks.ts +451 -0
- package/src/mint-adr.ts +4 -4
- package/src/mirror-pool-scan.ts +5 -5
- package/src/needs-attention.ts +877 -104
- package/src/orphan-sidecar.ts +49 -8
- package/src/pi-harness.ts +82 -2
- package/src/placement.ts +8 -8
- package/src/prd-to-spec.ts +13 -5
- package/src/prompt.ts +20 -25
- package/src/readiness.ts +1 -1
- package/src/reap-branches.ts +38 -14
- package/src/recover-isolated.ts +18 -1
- package/src/repo-config.ts +66 -17
- package/src/repo-mirror.ts +23 -1
- package/src/review-gate.ts +12 -11
- package/src/review-verdict.ts +3 -3
- package/src/run.ts +69 -23
- package/src/scan.ts +36 -22
- package/src/select-order.ts +1 -1
- package/src/select-priority.ts +15 -15
- package/src/sidecar-apply.ts +1 -1
- package/src/sidecar.ts +141 -14
- package/src/slug-namespace.ts +10 -10
- package/src/spec-complete.ts +4 -5
- package/src/start.ts +57 -63
- package/src/status.ts +7 -7
- package/src/surface-gate.ts +12 -5
- package/src/surface-persist.ts +3 -3
- package/src/tasker-review-loop.ts +18 -17
- package/src/tasking-eligibility.ts +21 -21
- package/src/tasking-lock.ts +75 -60
- package/src/tasking.ts +381 -135
- package/src/triage-gate.ts +1 -1
- package/src/triage-persist.ts +71 -27
- package/src/vendor/incur/LICENSE +21 -0
- package/src/vendor/incur/README.md +19 -0
- package/src/vendor/incur/agents.ts +392 -0
- package/src/verify-workflow-template.ts +3 -3
- package/src/watch-session.ts +102 -7
- package/src/work-layout.ts +14 -9
- package/src/workspace.ts +2 -2
package/dist/config.d.ts
CHANGED
|
@@ -8,12 +8,12 @@ import { type SelectionOrderConfig } from './select-order.js';
|
|
|
8
8
|
*/
|
|
9
9
|
export type IntegrationMode = 'propose' | 'merge';
|
|
10
10
|
/**
|
|
11
|
-
* **Per-repo TASK-PLACEMENT default** (
|
|
11
|
+
* **Per-repo TASK-PLACEMENT default** (spec
|
|
12
12
|
* `staging-pool-position-gate-and-trust-model`, task
|
|
13
13
|
* `runner-deterministic-slice-placement-policy-and-precedence`, governing ADR
|
|
14
14
|
* `placement-is-runner-deterministic-humanonly-is-agent-judgement`). Which
|
|
15
15
|
* folder the runner lands the tasker's emitted task files in BY DEFAULT —
|
|
16
|
-
* `'
|
|
16
|
+
* `'backlog'` (staging — durable + readable but NOT in the agent-eligible
|
|
17
17
|
* POOL; a runner/human promotion is needed to make an item claimable; the on-disk
|
|
18
18
|
* folder for this value is `work/tasks/backlog/`) or `'ready'` (the agent-eligible
|
|
19
19
|
* POOL — the trusted fast-path landing, on-disk `work/tasks/ready/`). The pool
|
|
@@ -21,31 +21,32 @@ export type IntegrationMode = 'propose' | 'merge';
|
|
|
21
21
|
* `rename-task-pool-folder-todo-to-ready`, a CLEAN BREAK matching the on-disk
|
|
22
22
|
* folder `tasks/ready/` and the spec-side `'ready'` pool spelling). The runner-deterministic
|
|
23
23
|
* placement RESOLVER (`src/placement.ts`) layers on top: `explicit operator flag
|
|
24
|
-
* > untrusted-origin ⇒
|
|
25
|
-
* (
|
|
24
|
+
* > untrusted-origin ⇒ backlog > tasksLandIn default > built-in
|
|
25
|
+
* (backlog)`. The staging value was renamed `'pre-backlog'` → `'backlog'`
|
|
26
|
+
* (matching the on-disk folder `tasks/backlog/`). An untrusted-origin tasker output is FORCED to staging even in
|
|
26
27
|
* a `'ready'` repo (the positional analogue of the existing
|
|
27
28
|
* `untrusted-origin-forces-build-propose` rule).
|
|
28
29
|
*/
|
|
29
|
-
export type TasksLandIn = '
|
|
30
|
+
export type TasksLandIn = 'backlog' | 'ready';
|
|
30
31
|
/**
|
|
31
|
-
* **Per-repo
|
|
32
|
+
* **Per-repo SPEC-PLACEMENT default** (spec
|
|
32
33
|
* `staging-pool-position-gate-and-trust-model`, task
|
|
33
34
|
* `pre-prd-staging-pool-split-and-untrusted-prd-placement`, governing ADR
|
|
34
35
|
* `placement-is-runner-deterministic-humanonly-is-agent-judgement`). Which
|
|
35
|
-
* folder the runner lands `intake`-authored
|
|
36
|
+
* folder the runner lands `intake`-authored spec files in BY DEFAULT —
|
|
36
37
|
* `'pre-proposed'` (staging — durable + readable but NOT in the auto-tasking
|
|
37
|
-
* POOL; a runner/human promotion is needed to make the
|
|
38
|
-
* on-disk folder for this value is `work/
|
|
38
|
+
* POOL; a runner/human promotion is needed to make the spec auto-taskable; the
|
|
39
|
+
* on-disk folder for this value is `work/specs/proposed/`) or `'ready'` (the
|
|
39
40
|
* auto-tasking POOL — the trusted fast-path landing, on-disk
|
|
40
|
-
* `work/
|
|
41
|
+
* `work/specs/ready/`). The same runner-deterministic placement RESOLVER
|
|
41
42
|
* (`src/placement.ts`) layers on top:
|
|
42
43
|
* `explicit operator flag > untrusted-origin ⇒ pre-proposed > specsLandIn
|
|
43
44
|
* default > built-in (pre-proposed)`. An untrusted-origin intake spec is FORCED
|
|
44
45
|
* to staging even in a `'ready'` repo (the positional analogue of the existing
|
|
45
|
-
* `untrusted-origin-forces-build-propose` rule). The
|
|
46
|
+
* `untrusted-origin-forces-build-propose` rule). The SPEC twin of
|
|
46
47
|
* {@link TasksLandIn}; the SAME shape, the SAME precedence chain. The value
|
|
47
|
-
* spellings mirror the live
|
|
48
|
-
* `
|
|
48
|
+
* spellings mirror the live spec folders (`specs/proposed/` staging,
|
|
49
|
+
* `specs/ready/` pool), exactly as {@link TasksLandIn} mirrors the task folders.
|
|
49
50
|
*/
|
|
50
51
|
export type SpecsLandIn = 'pre-proposed' | 'ready';
|
|
51
52
|
/**
|
|
@@ -67,7 +68,7 @@ export type SpecsLandIn = 'pre-proposed' | 'ready';
|
|
|
67
68
|
export type ObservationTriage = 'off' | 'ask' | 'auto';
|
|
68
69
|
/**
|
|
69
70
|
* **The `mergeQuestions` gate axis** — the 3-state member of the question-
|
|
70
|
-
* surfacing gate family that governs the MERGE-QUESTION surfacer (
|
|
71
|
+
* surfacing gate family that governs the MERGE-QUESTION surfacer (spec
|
|
71
72
|
* `land-time-reverify-and-parallel-merge-ceiling` Story 17 / task
|
|
72
73
|
* `merge-questions-gate-axis`). MIRRORS `observationTriage`'s shape
|
|
73
74
|
* (`off | ask | auto`) but is a SEPARATE axis — "should this built work merge?"
|
|
@@ -87,7 +88,7 @@ export type ObservationTriage = 'off' | 'ask' | 'auto';
|
|
|
87
88
|
* invoke the agentic decider — a merge-land is never an agent decision.
|
|
88
89
|
* Resolved through the SAME precedence chain as the other gates (flag > env >
|
|
89
90
|
* per-repo > global > default `ask`). The exact name + default + shape were
|
|
90
|
-
* answered in this task's Applied answers 2026-06-26 (q1/q2/q3) +
|
|
91
|
+
* answered in this task's Applied answers 2026-06-26 (q1/q2/q3) + SPEC sidecar
|
|
91
92
|
* Q3.
|
|
92
93
|
*/
|
|
93
94
|
export type MergeQuestions = 'off' | 'ask' | 'auto';
|
|
@@ -181,10 +182,10 @@ export interface Config {
|
|
|
181
182
|
/**
|
|
182
183
|
* Per-repo policy: may an agent auto-task *undeclared* (not `humanOnly`,
|
|
183
184
|
* no open questions) prds in this repo? `false` (default, strict, human-first)
|
|
184
|
-
* ⇒ a human must drive every
|
|
185
|
-
* any
|
|
185
|
+
* ⇒ a human must drive every spec's tasking; `true` ⇒ an agent may auto-task
|
|
186
|
+
* any spec that is not `humanOnly: true` and has no `needsAnswers`. Resolved like
|
|
186
187
|
* `autoBuild`: flag > `DORFL_AUTO_TASK` env > per-repo > global >
|
|
187
|
-
* default. The two-axis tasking gate (`work/
|
|
188
|
+
* default. The two-axis tasking gate (`work/specs/auto-task.md`), one level up
|
|
188
189
|
* from the build gate's `autoBuild`.
|
|
189
190
|
*/
|
|
190
191
|
autoTask: boolean;
|
|
@@ -207,7 +208,7 @@ export interface Config {
|
|
|
207
208
|
observationTriage: ObservationTriage;
|
|
208
209
|
/**
|
|
209
210
|
* Per-repo policy governing the MERGE-QUESTION SURFACER — the 3-state member
|
|
210
|
-
* of the question-surfacing gate family (
|
|
211
|
+
* of the question-surfacing gate family (spec
|
|
211
212
|
* `land-time-reverify-and-parallel-merge-ceiling` Story 17 / task
|
|
212
213
|
* `merge-questions-gate-axis`). MIRRORS `observationTriage`'s SHAPE
|
|
213
214
|
* (`off | ask | auto`) but is a SEPARATE axis with a DIFFERENT default —
|
|
@@ -231,7 +232,7 @@ export interface Config {
|
|
|
231
232
|
* Per-repo policy governing DECLARED blocked work — the BOOLEAN member of the
|
|
232
233
|
* question-surfacing gate family (its orthogonal PEER is `observationTriage`,
|
|
233
234
|
* which governs the raw observation INBOX; ADR `ci-config-policy-and-gate-family`
|
|
234
|
-
* §2). It gates whether a task/
|
|
235
|
+
* §2). It gates whether a task/spec carrying `needsAnswers: true` is rendered
|
|
235
236
|
* into an answerable question sidecar (`on`) or left silently blocked in the
|
|
236
237
|
* backlog (`off`). `false` (default, calm) ⇒ the `needsAnswers`-blocked pool is
|
|
237
238
|
* dropped from the auto-pick SELECTION, so a bare `advance` does NOT proactively
|
|
@@ -251,11 +252,11 @@ export interface Config {
|
|
|
251
252
|
/**
|
|
252
253
|
* Per-repo policy governing whether SURFACING (the question-minting polarity)
|
|
253
254
|
* inspects STAGING in addition to the agent pool — the BOOLEAN gate-family
|
|
254
|
-
* member added by
|
|
255
|
+
* member added by spec `staging-surface-and-apply-promote-safety` (F2). The
|
|
255
256
|
* BUILD polarity is UNCHANGED in either mode: staging items stay non-claimable,
|
|
256
257
|
* the trust model is untouched. `true` (default) ⇒ the SURFACE candidate set
|
|
257
|
-
* draws from STAGING (`tasks/backlog/`, `
|
|
258
|
-
* a `needsAnswers` task/
|
|
258
|
+
* draws from STAGING (`tasks/backlog/`, `specs/proposed/`) PLUS the pool, so
|
|
259
|
+
* a `needsAnswers` task/spec in staging surfaces its questions BEFORE a human
|
|
259
260
|
* promotes it (you promote an already-clarified item, not blind and then get
|
|
260
261
|
* asked after); `false` ⇒ the legacy POOL-ONLY behaviour (staging is not
|
|
261
262
|
* inspected for questions). Resolved like `surfaceBlockers`/`autoBuild`:
|
|
@@ -320,33 +321,33 @@ export interface Config {
|
|
|
320
321
|
/** Integration mode for completed items: `propose` (default) or `merge`. */
|
|
321
322
|
integration: IntegrationMode;
|
|
322
323
|
/**
|
|
323
|
-
* **Per-TRANSITION override for the
|
|
324
|
-
* set, the tasking transition (a `do
|
|
325
|
-
* the `work/
|
|
324
|
+
* **Per-TRANSITION override for the spec→tasks (TASKING) transition only.** When
|
|
325
|
+
* set, the tasking transition (a `do spec:<slug>` run: emit `work/tasks/backlog/*.md` +
|
|
326
|
+
* the `work/specs/ready/ → work/specs/tasked/` lifecycle move) integrates with THIS
|
|
326
327
|
* mode instead of the flat {@link integration}; the task-BUILD transition is
|
|
327
328
|
* unaffected (it always reads {@link integration}). UNSET (the default) ⇒ tasking
|
|
328
329
|
* falls back to {@link integration} — byte-for-byte today's behaviour for any repo
|
|
329
330
|
* that does not set it. The maintainer's target is `integration: 'propose'` +
|
|
330
|
-
* `taskingIntegration: 'merge'`: task a
|
|
331
|
+
* `taskingIntegration: 'merge'`: task a spec straight onto `main` (the task FILES
|
|
331
332
|
* land, no PR) but build each task as a reviewable PR. Resolved per-repo like
|
|
332
333
|
* {@link integration}: flag (`--merge`/`--propose`) > env
|
|
333
334
|
* (`DORFL_TASKING_INTEGRATION`) > per-repo > global > (fall back to)
|
|
334
335
|
* `integration` > default `propose`. DISTINCT from intake's per-EMITTED-TYPE
|
|
335
|
-
* `{task,
|
|
336
|
+
* `{task, spec}` resolver (front door, author-trust-resolved): this is a
|
|
336
337
|
* per-LIFECYCLE-TRANSITION knob, inside the trust boundary, operator/config-only.
|
|
337
338
|
*/
|
|
338
339
|
taskingIntegration?: IntegrationMode;
|
|
339
340
|
/**
|
|
340
|
-
* **Per-repo DEFAULT landing for the TASKER's emitted tasks** (
|
|
341
|
+
* **Per-repo DEFAULT landing for the TASKER's emitted tasks** (spec
|
|
341
342
|
* `staging-pool-position-gate-and-trust-model` US #5, task
|
|
342
343
|
* `runner-deterministic-slice-placement-policy-and-precedence`). Resolved
|
|
343
344
|
* per-repo EXACTLY like {@link taskingIntegration} (flag `--tasks-land-in`
|
|
344
345
|
* > env `DORFL_TASKS_LAND_IN` > per-repo > global > built-in
|
|
345
|
-
* `'
|
|
346
|
+
* `'backlog'`). The tasking path reads it and passes it as the
|
|
346
347
|
* CONFIGURED-DEFAULT rung into the shared placement resolver
|
|
347
348
|
* (`src/placement.ts`); the resolver overlays an EXPLICIT operator flag
|
|
348
349
|
* (top) and the UNTRUSTED-ORIGIN force (staging) on top, in that order. The
|
|
349
|
-
* tasker NEVER sets placement itself.
|
|
350
|
+
* tasker NEVER sets placement itself. Spec US #6 / the governing ADR: the
|
|
350
351
|
* runner OWNS placement from unforgeable inputs; the agent cannot
|
|
351
352
|
* influence it.
|
|
352
353
|
*/
|
|
@@ -365,7 +366,7 @@ export interface Config {
|
|
|
365
366
|
* influence it. KEY-LEVEL SYMMETRY with `tasksLandIn` — one resolver, two
|
|
366
367
|
* lifecycles, one precedence change touches ONE place.
|
|
367
368
|
*
|
|
368
|
-
* The sole spec-placement key after the prd → spec HARD CUTOVER (spec
|
|
369
|
+
* The sole spec-placement key after the ''prd'' → `spec` HARD CUTOVER (spec
|
|
369
370
|
* `prd-to-spec-vocabulary-cutover-and-migration-command`): the legacy
|
|
370
371
|
* `prdsLandIn` config key + `--prds-land-in` flag are GONE (clean break).
|
|
371
372
|
*/
|
|
@@ -463,7 +464,7 @@ export interface Config {
|
|
|
463
464
|
*/
|
|
464
465
|
verify?: VerifyConfig;
|
|
465
466
|
/**
|
|
466
|
-
* **Gate 2 — the PR/code review gate** (GATES
|
|
467
|
+
* **Gate 2 — the PR/code review gate** (GATES spec `work/specs/tasked/review.md`): run the
|
|
467
468
|
* `review` SKILL as a fresh-context judgement gate ON TOP of the deterministic
|
|
468
469
|
* `verify` floor, AFTER `verify` passes and BEFORE the done-move, on the
|
|
469
470
|
* `do`/`complete` path. Default **OFF** (it puts a model on the merge path —
|
|
@@ -488,8 +489,8 @@ export interface Config {
|
|
|
488
489
|
* re-rolled — re-reviewing an unchanged tip after a block would just be a
|
|
489
490
|
* stochastic dice re-roll that could launder a real reject into a pass). So a
|
|
490
491
|
* value > 1 makes a FALSE APPROVE harder to slip through (each extra round is a
|
|
491
|
-
* veto), it does NOT give blocked work a second chance. A non-approve forces
|
|
492
|
-
* `
|
|
492
|
+
* veto), it does NOT give blocked work a second chance. A non-approve forces the
|
|
493
|
+
* item stuck (the lock `state: stuck`; never silently merges or loops), per the maintainer
|
|
493
494
|
* decision. Default a small N (2): two independent approvals required. (A future
|
|
494
495
|
* builder-REVISE step that MUTATES the tree between rounds is the only thing that
|
|
495
496
|
* should make a block retryable, because it changes the artifact under review; it
|
|
@@ -499,7 +500,7 @@ export interface Config {
|
|
|
499
500
|
reviewMaxRounds: number;
|
|
500
501
|
/**
|
|
501
502
|
* **The tasker IMPROVER loop on/off toggle** (`--tasker-loop` /
|
|
502
|
-
* `--no-tasker-loop`). On the `do
|
|
503
|
+
* `--no-tasker-loop`). On the `do spec:<slug>` tasking path the improver loop is
|
|
503
504
|
* the task path's quality engine (auto-tasking has no `verify` floor), so it is
|
|
504
505
|
* ON by default; setting this false gates wiring the loop seam (the candidate
|
|
505
506
|
* tasks land as-is). Resolved per-repo like `integration`: flag
|
|
@@ -509,8 +510,8 @@ export interface Config {
|
|
|
509
510
|
taskerLoop: boolean;
|
|
510
511
|
/**
|
|
511
512
|
* **The tasker IMPROVER loop's convergence cap** (`slicer-review-edit-loop`,
|
|
512
|
-
* GATES
|
|
513
|
-
* A). On the `do
|
|
513
|
+
* GATES spec `work/specs/tasked/review.md` RESOLVED DESIGN — Shape 2 / insertion point
|
|
514
|
+
* A). On the `do spec:<slug>` tasking path, AFTER the agent produces candidate
|
|
514
515
|
* tasks the loop runs the `review` SKILL, APPLIES its edits, and re-reviews
|
|
515
516
|
* until a pass finds no NEW blocking issue (the natural terminator).
|
|
516
517
|
* `taskerLoopMax` is the HARD CAP on the in-context review passes (N) so the
|
|
@@ -563,7 +564,7 @@ export interface Config {
|
|
|
563
564
|
freshWorktreeGate: boolean;
|
|
564
565
|
/**
|
|
565
566
|
* **The cross-job merge serialiser's CAS-retry cap** — the git-alone FLOOR of the
|
|
566
|
-
* land-time cross-job queue (
|
|
567
|
+
* land-time cross-job queue (spec `land-time-reverify-and-parallel-merge-ceiling`,
|
|
567
568
|
* Story 5 + Applied Answer q1 (a)). The merge-mode `${branch}:main` push retries
|
|
568
569
|
* a non-fast-forward rejection by re-rebasing onto the moved `<arbiter>/main` and
|
|
569
570
|
* pushing again, up to this cap; only after exhaustion does a loser bounce to
|
|
@@ -585,7 +586,7 @@ export interface Config {
|
|
|
585
586
|
mergeRetries: number;
|
|
586
587
|
/**
|
|
587
588
|
* **Per-repo OPT-IN strictness layered on the OQ6 stale-approval default**
|
|
588
|
-
* (
|
|
589
|
+
* (spec `land-time-reverify-and-parallel-merge-ceiling`, sidecar OQ6 / task
|
|
589
590
|
* `strict-merge-approval-gate`). Controls how the apply rung treats a prior
|
|
590
591
|
* merge-answer when the merge-base CHANGED between the human's answer and
|
|
591
592
|
* the apply step. The default (`false`) honours the prior answer and lands
|
|
@@ -606,6 +607,40 @@ export interface Config {
|
|
|
606
607
|
* `observationTriage` default or shape — a SEPARATE, independent axis.
|
|
607
608
|
*/
|
|
608
609
|
strictMergeApproval: boolean;
|
|
610
|
+
/**
|
|
611
|
+
* **The dorfl-INTERNAL agent deadline** (minutes). The agent session self-stops
|
|
612
|
+
* at this budget; dorfl then SAVES the WIP (commit + push `work/<slug>`) and
|
|
613
|
+
* routes it per the progress+ceiling decision (auto-continue, or surface). This
|
|
614
|
+
* is the PRIMARY stop (see spec `graceful-pre-timeout-wip-checkpoint`); the
|
|
615
|
+
* GitHub `timeout-minutes` cap is a BACKSTOP set above it as
|
|
616
|
+
* `agentDeadlineMinutes + checkpointHeadroomMinutes`. Default 60; MAX 240 (4h).
|
|
617
|
+
* FAIL-LOUD: values outside `[1, 240]` throw at config load (never silently
|
|
618
|
+
* clamped). Resolved per-repo through the SAME chain as `integration` (flag >
|
|
619
|
+
* env `DORFL_AGENT_DEADLINE_MINUTES` > per-repo > global > default).
|
|
620
|
+
*/
|
|
621
|
+
agentDeadlineMinutes: number;
|
|
622
|
+
/**
|
|
623
|
+
* **The GitHub-backstop head-room above the internal deadline** (minutes). The
|
|
624
|
+
* enumerate job's dynamic `githubTimeout` output is
|
|
625
|
+
* `agentDeadlineMinutes + checkpointHeadroomMinutes`; the MIN 10 guarantees the
|
|
626
|
+
* GitHub cap is always at least 10 minutes above the internal deadline so the
|
|
627
|
+
* graceful save always has room to commit + push before the hard kill. Default
|
|
628
|
+
* 30; MIN 10; MAX 60 (1h). FAIL-LOUD: out-of-range throws at load. Resolved
|
|
629
|
+
* per-repo through the SAME chain as `agentDeadlineMinutes`.
|
|
630
|
+
*/
|
|
631
|
+
checkpointHeadroomMinutes: number;
|
|
632
|
+
/**
|
|
633
|
+
* **The auto-continue ceiling** for the deadline-checkpoint anti-loop guard
|
|
634
|
+
* (spec `graceful-pre-timeout-wip-checkpoint`). Counts CONSECUTIVE deadline
|
|
635
|
+
* auto-continues; on hitting this cap the next deadline checkpoint SURFACES a
|
|
636
|
+
* `needsAnswers:true` question ("this task has hit the deadline N times — it
|
|
637
|
+
* may be too big for one CI leg; split it or run it locally?") instead of
|
|
638
|
+
* auto-continuing. The counter naturally resets when the item completes (the
|
|
639
|
+
* work branch is discarded on integration). Default 5. Must be a positive
|
|
640
|
+
* integer (fail-loud). Resolved per-repo through the SAME chain as its
|
|
641
|
+
* siblings.
|
|
642
|
+
*/
|
|
643
|
+
maxAutoCheckpoints: number;
|
|
609
644
|
/**
|
|
610
645
|
* The optional runner **identity** (a bot): run the runner's git + provider
|
|
611
646
|
* operations as a configured entity via process-scoped env overrides, without
|
|
@@ -648,6 +683,17 @@ export declare function warnDeprecatedConfigKeys(parsed: Record<string, unknown>
|
|
|
648
683
|
* until `remote add`/`remote find` registers a target).
|
|
649
684
|
*/
|
|
650
685
|
export declare const DEFAULT_CONFIG: Config;
|
|
686
|
+
/**
|
|
687
|
+
* Fail-loud range validation for the deadline / backstop / ceiling triple
|
|
688
|
+
* (spec `graceful-pre-timeout-wip-checkpoint`). Called at the two resolution
|
|
689
|
+
* FINAL points (`loadConfig` for the global chain; `resolveRepoConfigFromLoaded`
|
|
690
|
+
* for the per-repo chain), so an out-of-range value from ANY layer (flag / env /
|
|
691
|
+
* per-repo / global) surfaces as a clean throw naming the field + the valid
|
|
692
|
+
* range. Never clamps — the task's decision is fail-loud, since a silently
|
|
693
|
+
* clamped 400-minute deadline would look correct in `dorfl config --json` and
|
|
694
|
+
* quietly break the invariant that GitHub cap > internal deadline.
|
|
695
|
+
*/
|
|
696
|
+
export declare function validateDeadlineConfig(config: Config): void;
|
|
651
697
|
/** The conventional config location (`~/.config/dorfl/config.json`). */
|
|
652
698
|
export declare function defaultConfigPath(): string;
|
|
653
699
|
/** Merge a partial config over the built-in defaults; arrays are replaced. */
|
package/dist/config.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAIA,OAAO,EAAC,KAAK,QAAQ,EAAmB,MAAM,eAAe,CAAC;AAC9D,OAAO,EAEN,KAAK,oBAAoB,EACzB,MAAM,mBAAmB,CAAC;AAE3B;;;;;GAKG;AACH,MAAM,MAAM,eAAe,GAAG,SAAS,GAAG,OAAO,CAAC;AAElD
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|
package/dist/config.js
CHANGED
|
@@ -75,7 +75,7 @@ export const DEFAULT_CONFIG = {
|
|
|
75
75
|
// auto-dispose the no-question cases). ADR `ci-config-policy-and-gate-family` §3.
|
|
76
76
|
observationTriage: 'off',
|
|
77
77
|
// The merge-question SURFACER defaults to `ask` — the conservative default
|
|
78
|
-
// (
|
|
78
|
+
// (spec `land-time-reverify-and-parallel-merge-ceiling` Applied answer q2 /
|
|
79
79
|
// task `merge-questions-gate-axis` Applied answer q2). NEVER `off` by default:
|
|
80
80
|
// a silently-dropped merge-question means finished, pushed work never lands —
|
|
81
81
|
// strictly more consequential than a dropped observation-promote prompt, so
|
|
@@ -92,9 +92,9 @@ export const DEFAULT_CONFIG = {
|
|
|
92
92
|
// (a stuck build) is separate + always-on. ADR `ci-config-policy-and-gate-family` §3.
|
|
93
93
|
surfaceBlockers: false,
|
|
94
94
|
// SURFACING widens to STAGING by default (`true`) — a `needsAnswers` task in
|
|
95
|
-
// `tasks/backlog/` or a `needsAnswers`
|
|
95
|
+
// `tasks/backlog/` or a `needsAnswers` spec in `specs/proposed/` surfaces
|
|
96
96
|
// its questions BEFORE promotion, so a human promotes an already-clarified
|
|
97
|
-
// item.
|
|
97
|
+
// item. Spec `staging-surface-and-apply-promote-safety` (F2). BUILD/claim
|
|
98
98
|
// stays pool-only + trust-gated regardless: this widens ONLY the surface
|
|
99
99
|
// polarity, not the build polarity. Set `false` to restore the legacy
|
|
100
100
|
// pool-only surface behaviour.
|
|
@@ -105,7 +105,7 @@ export const DEFAULT_CONFIG = {
|
|
|
105
105
|
// always first. Reproduces today's tasks-first two-pool default. Subsumes the
|
|
106
106
|
// removed `prdsFirst` boolean (`[task, build, ...]` reproduces `prdsFirst: true`).
|
|
107
107
|
selectionOrder: DEFAULT_SELECTION_ORDER,
|
|
108
|
-
maxParallel:
|
|
108
|
+
maxParallel: 2,
|
|
109
109
|
perRepoMax: 2,
|
|
110
110
|
defaultArbiter: 'origin',
|
|
111
111
|
workspacesDir: join(homedir(), brand.workdirName),
|
|
@@ -116,14 +116,14 @@ export const DEFAULT_CONFIG = {
|
|
|
116
116
|
// branch but deliberately skip the PR (the explicit suppress-PR intent that
|
|
117
117
|
// re-homes the old `provider: none` use). NOT a provider choice.
|
|
118
118
|
noPR: false,
|
|
119
|
-
// The tasker's emitted tasks land STAGED (`
|
|
119
|
+
// The tasker's emitted tasks land STAGED (`tasks/backlog/`) by default — the
|
|
120
120
|
// conservative landing that preserves the tracer task's behaviour: an item is
|
|
121
121
|
// durable + readable but NOT in the agent-eligible pool until a human/runner
|
|
122
122
|
// promotes it. A repo opts into the trusted fast-path with `tasksLandIn:
|
|
123
123
|
// 'ready'` (or `--tasks-land-in ready` / `DORFL_TASKS_LAND_IN=ready`).
|
|
124
124
|
// The runner-deterministic resolver overlays explicit-flag + untrusted-origin
|
|
125
125
|
// force on top of this default (`src/placement.ts`).
|
|
126
|
-
tasksLandIn: '
|
|
126
|
+
tasksLandIn: 'backlog',
|
|
127
127
|
// `intake`-authored specs land STAGED (`pre-proposed/`) by default — the
|
|
128
128
|
// conservative landing that mirrors `tasksLandIn`'s built-in floor: a spec is
|
|
129
129
|
// durable + readable but NOT in the auto-tasking POOL until a human/runner
|
|
@@ -155,7 +155,7 @@ export const DEFAULT_CONFIG = {
|
|
|
155
155
|
// (positive name, default-on).
|
|
156
156
|
freshWorktreeGate: true,
|
|
157
157
|
// The cross-job merge serialiser's CAS-retry cap — the git-alone FLOOR of the
|
|
158
|
-
// land-time cross-job queue (
|
|
158
|
+
// land-time cross-job queue (spec `land-time-reverify-and-parallel-merge-ceiling`,
|
|
159
159
|
// Story 5 + Applied Answer q1 (a)). Matches `integration-core.ts`'s built-in
|
|
160
160
|
// `DEFAULT_MERGE_RETRIES` fallback (1000 — the C2 large liveness ceiling, NOT a
|
|
161
161
|
// small Race-1 budget) so resolving it through this layer is byte-for-byte
|
|
@@ -164,13 +164,63 @@ export const DEFAULT_CONFIG = {
|
|
|
164
164
|
mergeRetries: 1000,
|
|
165
165
|
// The strict-merge-approval gate defaults OFF (sidecar OQ6 / task
|
|
166
166
|
// `strict-merge-approval-gate`): the cheap "green re-verify is enough" path
|
|
167
|
-
// is the default; the OQ6
|
|
167
|
+
// is the default; the OQ6 SPEC answer pins this. A repo opts in to the
|
|
168
168
|
// host-agnostic "dismiss stale approvals on base change" discipline with
|
|
169
169
|
// `strictMergeApproval: true` (or `--strict-merge-approval` /
|
|
170
170
|
// `DORFL_STRICT_MERGE_APPROVAL=true`). The re-surface vs. land branch is
|
|
171
171
|
// `apply-rung-merge-disposition`'s consumer, NOT here.
|
|
172
172
|
strictMergeApproval: false,
|
|
173
|
+
// The dorfl-INTERNAL agent deadline defaults to 60 minutes (spec
|
|
174
|
+
// `graceful-pre-timeout-wip-checkpoint`). A legitimately-long task that runs
|
|
175
|
+
// past this checkpoints its WIP + auto-continues on the next tick (rather than
|
|
176
|
+
// losing everything to a 6h GitHub SIGKILL). MAX 240 (4h); fail-loud outside.
|
|
177
|
+
agentDeadlineMinutes: 60,
|
|
178
|
+
// The GitHub-backstop head-room above the internal deadline defaults to 30
|
|
179
|
+
// minutes: the enumerate job's dynamic `githubTimeout` output is
|
|
180
|
+
// deadline + headroom, so the default GitHub cap is 60 + 30 = 90 (1h30). MIN 10
|
|
181
|
+
// (guarantees the graceful save has room); MAX 60; fail-loud outside.
|
|
182
|
+
checkpointHeadroomMinutes: 30,
|
|
183
|
+
// The auto-continue ceiling defaults to 5 CONSECUTIVE deadline checkpoints;
|
|
184
|
+
// past that the next checkpoint SURFACES to a human (spec
|
|
185
|
+
// `graceful-pre-timeout-wip-checkpoint` anti-loop guard).
|
|
186
|
+
maxAutoCheckpoints: 5,
|
|
173
187
|
};
|
|
188
|
+
/**
|
|
189
|
+
* Fail-loud range validation for the deadline / backstop / ceiling triple
|
|
190
|
+
* (spec `graceful-pre-timeout-wip-checkpoint`). Called at the two resolution
|
|
191
|
+
* FINAL points (`loadConfig` for the global chain; `resolveRepoConfigFromLoaded`
|
|
192
|
+
* for the per-repo chain), so an out-of-range value from ANY layer (flag / env /
|
|
193
|
+
* per-repo / global) surfaces as a clean throw naming the field + the valid
|
|
194
|
+
* range. Never clamps — the task's decision is fail-loud, since a silently
|
|
195
|
+
* clamped 400-minute deadline would look correct in `dorfl config --json` and
|
|
196
|
+
* quietly break the invariant that GitHub cap > internal deadline.
|
|
197
|
+
*/
|
|
198
|
+
export function validateDeadlineConfig(config) {
|
|
199
|
+
const adm = config.agentDeadlineMinutes;
|
|
200
|
+
if (!Number.isInteger(adm) || adm < 1 || adm > 240) {
|
|
201
|
+
throw new Error(`agentDeadlineMinutes must be a positive integer in [1, 240] ` +
|
|
202
|
+
`(got ${adm}). The dorfl-internal agent deadline caps a single ` +
|
|
203
|
+
`agent session; 240 minutes (4h) is the hard ceiling so the ` +
|
|
204
|
+
`GitHub backstop (deadline + headroom) still fits under GitHub's ` +
|
|
205
|
+
`6h job limit.`);
|
|
206
|
+
}
|
|
207
|
+
const chm = config.checkpointHeadroomMinutes;
|
|
208
|
+
if (!Number.isInteger(chm) || chm < 10 || chm > 60) {
|
|
209
|
+
throw new Error(`checkpointHeadroomMinutes must be an integer in [10, 60] ` +
|
|
210
|
+
`(got ${chm}). This is the head-room the GitHub 'timeout-minutes' ` +
|
|
211
|
+
`backstop sits above the internal deadline (rendered dynamically ` +
|
|
212
|
+
`as agentDeadlineMinutes + checkpointHeadroomMinutes by the ` +
|
|
213
|
+
`advance-lifecycle 'enumerate' job); MIN 10 guarantees the ` +
|
|
214
|
+
`graceful save always has room to commit + push before the hard kill.`);
|
|
215
|
+
}
|
|
216
|
+
const cap = config.maxAutoCheckpoints;
|
|
217
|
+
if (!Number.isInteger(cap) || cap < 1) {
|
|
218
|
+
throw new Error(`maxAutoCheckpoints must be a positive integer (got ${cap}). ` +
|
|
219
|
+
`It caps CONSECUTIVE deadline auto-continues; past this the ` +
|
|
220
|
+
`next checkpoint surfaces a needs-answers question to a human ` +
|
|
221
|
+
`(the anti-loop guard for the graceful pre-timeout checkpoint).`);
|
|
222
|
+
}
|
|
223
|
+
}
|
|
174
224
|
/** The conventional config location (`~/.config/dorfl/config.json`). */
|
|
175
225
|
export function defaultConfigPath() {
|
|
176
226
|
return join(homedir(), '.config', brand.configDirName, 'config.json');
|
|
@@ -236,6 +286,8 @@ export function loadConfig(path = defaultConfigPath()) {
|
|
|
236
286
|
throw new Error(`Invalid identity in config at ${path}: ${err.message}`);
|
|
237
287
|
}
|
|
238
288
|
}
|
|
239
|
-
|
|
289
|
+
const merged = mergeConfig(parsed);
|
|
290
|
+
validateDeadlineConfig(merged);
|
|
291
|
+
return merged;
|
|
240
292
|
}
|
|
241
293
|
//# sourceMappingURL=config.js.map
|
package/dist/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAE,aAAa,EAAE,UAAU,EAAE,SAAS,EAAC,MAAM,SAAS,CAAC;AAC3E,OAAO,EAAC,OAAO,EAAC,MAAM,SAAS,CAAC;AAChC,OAAO,EAAC,OAAO,EAAE,IAAI,EAAC,MAAM,WAAW,CAAC;AACxC,OAAO,EAAC,KAAK,EAAC,MAAM,YAAY,CAAC;AACjC,OAAO,EAAgB,gBAAgB,EAAC,MAAM,eAAe,CAAC;AAC9D,OAAO,EACN,uBAAuB,GAEvB,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -68,7 +68,7 @@ export interface ContinueRebaseResult {
|
|
|
68
68
|
* (ADR §10: rebase, NOT merge — linear history; the prior attempt's commits were
|
|
69
69
|
* based on an OLD main that moved while the item sat in backlog).
|
|
70
70
|
*
|
|
71
|
-
* This is a PLAIN rebase. After the per-item-lock cut-over (
|
|
71
|
+
* This is a PLAIN rebase. After the per-item-lock cut-over (spec
|
|
72
72
|
* `ledger-status-per-item-lock-refs`, tasks 9a–9d) NO transient status lands on
|
|
73
73
|
* a work branch: claim does not move the body (it rests in `backlog/`),
|
|
74
74
|
* needs-attention is the lock `state: stuck` (not a `git mv`), and the
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"continue-branch.d.ts","sourceRoot":"","sources":["../src/continue-branch.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"continue-branch.d.ts","sourceRoot":"","sources":["../src/continue-branch.ts"],"names":[],"mappings":"AA6DA;;;;;;;;;;GAUG;AACH,wBAAgB,aAAa,CAC5B,GAAG,EAAE,MAAM,EACX,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,GAAG,EAAE,MAAM,CAAC,UAAU,GAAG,SAAS,GAChC,OAAO,CAwBT;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE;IAC7C,GAAG,EAAE,MAAM,CAAC;IACZ,0EAA0E;IAC1E,aAAa,EAAE,MAAM,CAAC;IACtB,wEAAwE;IACxE,MAAM,EAAE,MAAM,CAAC;IACf,qFAAqF;IACrF,SAAS,EAAE,MAAM,CAAC;IAClB,6CAA6C;IAC7C,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC,UAAU,GAAG,SAAS,CAAC;CACnC,GAAG,OAAO,CAiBV;AAED,+EAA+E;AAC/E,MAAM,WAAW,oBAAoB;IACpC,gEAAgE;IAChE,oFAAoF;IACpF,IAAI,EAAE,OAAO,GAAG,UAAU,CAAC;CAC3B;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,wBAAgB,6BAA6B,CAC5C,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,MAAM,EACf,GAAG,EAAE,MAAM,CAAC,UAAU,GAAG,SAAS,GAChC,oBAAoB,CAYtB;AAED;;;;;GAKG;AACH,eAAO,MAAM,2BAA2B,IAAI,CAAC;AAE7C;;;;;;;;GAQG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAE7D;AAED;;;GAGG;AACH,MAAM,MAAM,iBAAiB;AAC5B,sFAAsF;AACpF;IAAC,IAAI,EAAE,QAAQ,CAAA;CAAC;AAClB;;;;;;;;GAQG;GACD;IAAC,IAAI,EAAE,gBAAgB,CAAA;CAAC,CAAC;AAE5B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,wBAAgB,oCAAoC,CAAC,OAAO,EAAE;IAC7D,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,+EAA+E;IAC/E,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC,UAAU,GAAG,SAAS,CAAC;IACnC,0EAA0E;IAC1E,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CACjC,GAAG,iBAAiB,CA6GpB;AAED,qEAAqE;AACrE,MAAM,MAAM,mBAAmB;AAC9B,oFAAoF;AAClF;IAAC,IAAI,EAAE,QAAQ,CAAA;CAAC;AAClB;;;;GAIG;GACD;IAAC,IAAI,EAAE,UAAU,CAAA;CAAC,CAAC;AAEtB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AACH,wBAAgB,sCAAsC,CAAC,OAAO,EAAE;IAC/D,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,0EAA0E;IAC1E,OAAO,EAAE,MAAM,CAAC;IAChB,sEAAsE;IACtE,OAAO,EAAE,MAAM,CAAC;IAChB,+EAA+E;IAC/E,iBAAiB,EAAE,MAAM,CAAC;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC,UAAU,GAAG,SAAS,CAAC;IACnC,qEAAqE;IACrE,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CACjC,GAAG,mBAAmB,CAiFtB"}
|
package/dist/continue-branch.js
CHANGED
|
@@ -1,5 +1,27 @@
|
|
|
1
1
|
import { run } from './git.js';
|
|
2
2
|
/**
|
|
3
|
+
* BROADENED SCOPE NOTE (follow-up task
|
|
4
|
+
* `complete-propose-honour-already-landed-and-rename-continue-branch-module`):
|
|
5
|
+
* this module's name still reads as "continue-branch" (its ORIGINAL role: the
|
|
6
|
+
* continue-detection + rebase-onto-fresh-main helpers used by the onboarding
|
|
7
|
+
* paths, documented below), BUT it now ALSO hosts the shared
|
|
8
|
+
* **stale-lease work-branch push** helpers used by MULTIPLE callers:
|
|
9
|
+
*
|
|
10
|
+
* - {@link pushContinuedBranchWithStaleLeaseRetry} — the original
|
|
11
|
+
* continue/onboard caller (the mirror hub → arbiter reconcile push).
|
|
12
|
+
* - {@link pushProposeBranchWithStaleLeaseRetry} — the propose-mode
|
|
13
|
+
* integrator's push (task `propose-push-survives-stale-lease-on-reaped-work-
|
|
14
|
+
* ref`), which adds the BENIGN already-landed predicate (gone remote ref +
|
|
15
|
+
* work reachable from `<arbiter>/main`) on top of the shared `stale info`
|
|
16
|
+
* retry.
|
|
17
|
+
*
|
|
18
|
+
* A rename to something like `stale-lease-work-push.ts` was considered; the
|
|
19
|
+
* scope-note is preferred here because a rename would churn many imports
|
|
20
|
+
* across `src/` + `test/` for no behavioural gain, and the module already reads
|
|
21
|
+
* as a single conceptual bucket ("the work-branch push + continue-detection
|
|
22
|
+
* helpers"). Add new stale-lease work-ref push helpers here rather than
|
|
23
|
+
* spawning a sibling module.
|
|
24
|
+
*
|
|
3
25
|
* The **continue-detection** shared by BOTH onboarding paths (the keystone of
|
|
4
26
|
* the `requeue-continue-and-reset` task). `requeue` keeps the `work/<slug>`
|
|
5
27
|
* branch so the NEXT claim CONTINUES from its tip instead of force-cutting a
|
|
@@ -115,7 +137,7 @@ export function branchAheadOfArbiter(options) {
|
|
|
115
137
|
* (ADR §10: rebase, NOT merge — linear history; the prior attempt's commits were
|
|
116
138
|
* based on an OLD main that moved while the item sat in backlog).
|
|
117
139
|
*
|
|
118
|
-
* This is a PLAIN rebase. After the per-item-lock cut-over (
|
|
140
|
+
* This is a PLAIN rebase. After the per-item-lock cut-over (spec
|
|
119
141
|
* `ledger-status-per-item-lock-refs`, tasks 9a–9d) NO transient status lands on
|
|
120
142
|
* a work branch: claim does not move the body (it rests in `backlog/`),
|
|
121
143
|
* needs-attention is the lock `state: stuck` (not a `git mv`), and the
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"continue-branch.js","sourceRoot":"","sources":["../src/continue-branch.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,GAAG,EAAiB,MAAM,UAAU,CAAC;AAE7C
|
|
1
|
+
{"version":3,"file":"continue-branch.js","sourceRoot":"","sources":["../src/continue-branch.ts"],"names":[],"mappings":"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"}
|
package/dist/cwd-section.js
CHANGED
|
@@ -100,7 +100,7 @@ export async function resolveCwdSection(options) {
|
|
|
100
100
|
// eligibility matches what `do`/`advance` autopick will actually select.
|
|
101
101
|
const localReport = scanRepoPaths([cwd], config, heldSlugs, options.override);
|
|
102
102
|
const repo = localReport.repos[0];
|
|
103
|
-
// 3b. The PER-ITEM LOCK in-flight SURFACE for the cwd (
|
|
103
|
+
// 3b. The PER-ITEM LOCK in-flight SURFACE for the cwd (spec
|
|
104
104
|
// `ledger-status-per-item-lock-refs` US #8). The subtraction above removes a
|
|
105
105
|
// held slug from the eligible `items[]` pool; on its OWN that leaves a
|
|
106
106
|
// held/stuck cwd item in a BLIND SPOT — gone from every bucket with nothing
|
package/dist/cwd-section.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cwd-section.js","sourceRoot":"","sources":["../src/cwd-section.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"cwd-section.js","sourceRoot":"","sources":["../src/cwd-section.ts"],"names":[],"mappings":"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"}
|