@telora/daemon 0.23.5 → 0.23.10

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (109) hide show
  1. package/build-info.json +2 -2
  2. package/dist/completion/state-cascade/review-request-gate.d.ts +59 -0
  3. package/dist/completion/state-cascade/review-request-gate.d.ts.map +1 -0
  4. package/dist/completion/state-cascade/review-request-gate.js +56 -0
  5. package/dist/completion/state-cascade/review-request-gate.js.map +1 -0
  6. package/dist/completion/state-cascade/state-cascade.d.ts +12 -0
  7. package/dist/completion/state-cascade/state-cascade.d.ts.map +1 -1
  8. package/dist/completion/state-cascade/state-cascade.js +40 -19
  9. package/dist/completion/state-cascade/state-cascade.js.map +1 -1
  10. package/dist/composition/commit-gate-context.d.ts.map +1 -1
  11. package/dist/composition/commit-gate-context.js +1 -0
  12. package/dist/composition/commit-gate-context.js.map +1 -1
  13. package/dist/composition/execution-git-context.d.ts.map +1 -1
  14. package/dist/composition/execution-git-context.js +1 -0
  15. package/dist/composition/execution-git-context.js.map +1 -1
  16. package/dist/composition/execution-spawn-context.d.ts.map +1 -1
  17. package/dist/composition/execution-spawn-context.js +5 -1
  18. package/dist/composition/execution-spawn-context.js.map +1 -1
  19. package/dist/composition/state-cascade-context.d.ts.map +1 -1
  20. package/dist/composition/state-cascade-context.js +3 -0
  21. package/dist/composition/state-cascade-context.js.map +1 -1
  22. package/dist/composition/verify-probe-context.d.ts.map +1 -1
  23. package/dist/composition/verify-probe-context.js +9 -6
  24. package/dist/composition/verify-probe-context.js.map +1 -1
  25. package/dist/config/live-daemon-config.js +1 -1
  26. package/dist/delivery/recorded-concerns.d.ts.map +1 -1
  27. package/dist/delivery/recorded-concerns.js +1 -0
  28. package/dist/delivery/recorded-concerns.js.map +1 -1
  29. package/dist/focus/focus-lifecycle.d.ts.map +1 -1
  30. package/dist/focus/focus-lifecycle.js +9 -8
  31. package/dist/focus/focus-lifecycle.js.map +1 -1
  32. package/dist/git/daemon-authored-commit.d.ts +19 -0
  33. package/dist/git/daemon-authored-commit.d.ts.map +1 -0
  34. package/dist/git/daemon-authored-commit.js +22 -0
  35. package/dist/git/daemon-authored-commit.js.map +1 -0
  36. package/dist/git/merge.d.ts.map +1 -1
  37. package/dist/git/merge.js +4 -1
  38. package/dist/git/merge.js.map +1 -1
  39. package/dist/git/types.d.ts.map +1 -1
  40. package/dist/git/types.js +1 -0
  41. package/dist/git/types.js.map +1 -1
  42. package/dist/prompt-sections/gate-ownership.d.ts +6 -3
  43. package/dist/prompt-sections/gate-ownership.d.ts.map +1 -1
  44. package/dist/prompt-sections/gate-ownership.js +17 -8
  45. package/dist/prompt-sections/gate-ownership.js.map +1 -1
  46. package/dist/queries/verification/verification.js +1 -1
  47. package/dist/supervision/stop-rows-verify-rerun.d.ts +6 -0
  48. package/dist/supervision/stop-rows-verify-rerun.d.ts.map +1 -1
  49. package/dist/supervision/stop-rows-verify-rerun.js +14 -9
  50. package/dist/supervision/stop-rows-verify-rerun.js.map +1 -1
  51. package/dist/testing/fixtures/index.js +1 -1
  52. package/dist/testing/fixtures/verification-deps.js +1 -1
  53. package/dist/testing/fixtures/worktree-provisioning-test-deps.d.ts.map +1 -1
  54. package/dist/testing/fixtures/worktree-provisioning-test-deps.js +1 -0
  55. package/dist/testing/fixtures/worktree-provisioning-test-deps.js.map +1 -1
  56. package/dist/types/index.js +1 -1
  57. package/dist/verify/deterministic-gate/verification-checkout.d.ts +8 -1
  58. package/dist/verify/deterministic-gate/verification-checkout.d.ts.map +1 -1
  59. package/dist/verify/deterministic-gate/verification-checkout.js +94 -15
  60. package/dist/verify/deterministic-gate/verification-checkout.js.map +1 -1
  61. package/dist/verify/deterministic-gate/verification-deterministic.d.ts.map +1 -1
  62. package/dist/verify/deterministic-gate/verification-deterministic.js +1 -0
  63. package/dist/verify/deterministic-gate/verification-deterministic.js.map +1 -1
  64. package/dist/verify/engine/verification-deps.js +1 -1
  65. package/dist/verify/gate-config/commit-gate-configured.d.ts.map +1 -1
  66. package/dist/verify/gate-config/commit-gate-configured.js +1 -0
  67. package/dist/verify/gate-config/commit-gate-configured.js.map +1 -1
  68. package/dist/verify/gate-config/verification-config.js +1 -1
  69. package/dist/verify/gate-config/verification-manifest.d.ts +17 -1
  70. package/dist/verify/gate-config/verification-manifest.d.ts.map +1 -1
  71. package/dist/verify/gate-config/verification-manifest.js +36 -1
  72. package/dist/verify/gate-config/verification-manifest.js.map +1 -1
  73. package/dist/verify/gate-verdicts/commit-verdict-record.js +1 -1
  74. package/dist/verify/outcome-routing/verification-rework-messages.js +1 -1
  75. package/dist/verify/outcome-routing/verification-rework-messages.js.map +1 -1
  76. package/dist/verify/run-selection/default-on-guards.d.ts +7 -4
  77. package/dist/verify/run-selection/default-on-guards.d.ts.map +1 -1
  78. package/dist/verify/run-selection/default-on-guards.js +39 -64
  79. package/dist/verify/run-selection/default-on-guards.js.map +1 -1
  80. package/dist/verify/run-selection/pre-review-gate-dispatch.d.ts +22 -0
  81. package/dist/verify/run-selection/pre-review-gate-dispatch.d.ts.map +1 -0
  82. package/dist/verify/run-selection/pre-review-gate-dispatch.js +59 -0
  83. package/dist/verify/run-selection/pre-review-gate-dispatch.js.map +1 -0
  84. package/dist/verify/run-selection/verification-default-on.d.ts +4 -2
  85. package/dist/verify/run-selection/verification-default-on.d.ts.map +1 -1
  86. package/dist/verify/run-selection/verification-default-on.js +17 -8
  87. package/dist/verify/run-selection/verification-default-on.js.map +1 -1
  88. package/dist/worktree/commit-check-hook.d.ts +17 -0
  89. package/dist/worktree/commit-check-hook.d.ts.map +1 -0
  90. package/dist/worktree/commit-check-hook.js +146 -0
  91. package/dist/worktree/commit-check-hook.js.map +1 -0
  92. package/dist/worktree/focus-worktree-state.d.ts.map +1 -1
  93. package/dist/worktree/focus-worktree-state.js +1 -0
  94. package/dist/worktree/focus-worktree-state.js.map +1 -1
  95. package/dist/worktree/scratch-guard.d.ts.map +1 -1
  96. package/dist/worktree/scratch-guard.js +4 -1
  97. package/dist/worktree/scratch-guard.js.map +1 -1
  98. package/dist/worktree/verify-interlock.d.ts.map +1 -1
  99. package/dist/worktree/verify-interlock.js +1 -0
  100. package/dist/worktree/verify-interlock.js.map +1 -1
  101. package/dist/worktree/worktree-hooks.d.ts +12 -2
  102. package/dist/worktree/worktree-hooks.d.ts.map +1 -1
  103. package/dist/worktree/worktree-hooks.js +12 -5
  104. package/dist/worktree/worktree-hooks.js.map +1 -1
  105. package/dist/worktree/worktree-package-provisioning.d.ts +6 -1
  106. package/dist/worktree/worktree-package-provisioning.d.ts.map +1 -1
  107. package/dist/worktree/worktree-package-provisioning.js +37 -17
  108. package/dist/worktree/worktree-package-provisioning.js.map +1 -1
  109. package/package.json +2 -2
@@ -1,5 +1,5 @@
1
1
  // PINNED-BY-BEGIN (generated by gen:pinned-by -- do not hand-edit; checked by lint:pinned-by)
2
- // Pinned by: 21 tests -- run: npm run gen:pinned-by -- --list packages/daemon/src/verify/run-selection/default-on-guards.ts
2
+ // Pinned by: 22 tests -- run: npm run gen:pinned-by -- --list packages/daemon/src/verify/run-selection/default-on-guards.ts
3
3
  // PINNED-BY-END
4
4
  /**
5
5
  * The default-on scan's steady-state re-run guards: what a delivery sitting in
@@ -8,15 +8,16 @@
8
8
  * Three questions, asked in this order by collectDefaultOnVerifications
9
9
  * (verify/run-selection/verification-default-on.ts), each with its own memory:
10
10
  *
11
- * 1. alreadyPassed -- has this DELIVERY's verify passed? A pass is earned once
12
- * and kept until the delivery genuinely re-enters verify. No commit is read.
11
+ * 1. alreadyPassed -- has this delivery's verify passed on the commit HEAD
12
+ * names? The scan asks only for a focus awaiting its pre-review run or a
13
+ * held route (verify/run-selection/pre-review-gate-dispatch.ts), so no
14
+ * sibling's coding commit reaches it; a new HEAD there needs a verdict.
13
15
  * 2. ranOnCurrentHead -- does this delivery's dispatch already stand for the
14
16
  * focus's current HEAD (in flight, or judged the commit HEAD still names)?
15
17
  * 3. failedOnCurrentHead -- did its last verify FAIL on the commit HEAD names?
16
18
  *
17
- * The order is load-bearing: (1) answers a question about the DELIVERY, (2) and
18
- * (3) about the COMMIT. Asked after (2), a sibling's commit would drop the run
19
- * mark and log a re-arm that (1) then silently suppressed.
19
+ * The order is load-bearing: (1) is asked first so a pass on HEAD is reported as
20
+ * a pass, before (2) drops a run mark it would otherwise log as a re-arm.
20
21
  *
21
22
  * The guards are the rule; the scan is the loop that asks them. A leaf: it reads
22
23
  * gate_state and logs, and imports nothing from the scan.
@@ -102,61 +103,31 @@ function forgetFailedSha(deliveryId, durableSha) {
102
103
  * Pass memory: delivery id -> the commit its last default-on verify PASSED on
103
104
  * (an actual 'passed' outcome at a known judged sha).
104
105
  *
105
- * A DELIVERY EARNS ITS VERDICT ONCE. An entry here suppresses selection until the
106
- * delivery genuinely re-enters verify -- NOT until the focus HEAD moves.
107
- *
108
- * It used to be HEAD-keyed, dropped the first time a readable HEAD differed, and
109
- * its log line said so ("a new commit on the focus branch re-arms it"). But every
110
- * delivery of a focus is judged on ONE branch, so a commit made for a SIBLING
111
- * delivery moved the HEAD of a delivery whose own work had not changed, and
112
- * re-armed it. Measured on focus 09fc9cc6, delivery 5d02a2d2 (2026-09-19/20): 8
113
- * gate runs over 8 shas, ALL PASSED, ~3h of wall time, while its code stood still;
114
- * 2026-09-20 across all foci, 20 runs and ~5.7h of gate wall time in one day.
115
- *
116
- * WHAT COUNTS AS "ITS OWN WORK" -- the rule is a genuine verify_failed -> coding
117
- * -> verify re-entry, and nothing else. The alternative considered was a commit
118
- * carrying this delivery's own Telora-Delivery trailer (verify/shortfalls/delivery-commit-set.ts
119
- * already reads that set as stable patch ids, and verify/shortfalls/shortfall-park.ts already
120
- * fingerprints it, so cost was not why it lost). It lost on SOUNDNESS: a trailer is
121
- * an attribution claim about who a commit is FOR, not a statement about the code
122
- * the gate judges. The gate runs a whole-repo command over the worktree, so a
123
- * sibling's commit can break a passed delivery's verdict carrying no trailer of its
124
- * own, and a commit trailered to a delivery can touch none of the code its verdict
125
- * depended on. Trailer-keyed re-arm therefore buys imprecise EARLY feedback, not
126
- * correctness -- and correctness is owned by the done route, which judges the exact
127
- * tip it is waiting on whatever this rule says (see below). Adding it later is
128
- * purely additive on top of this rule; nothing here forecloses it.
129
- *
130
- * THE BAR IS NOT LOWERED. completion/review-exit-holds/review-exit-verdict-gate.ts still refuses to
131
- * converge a delivery with no PASSING verdict for the commit it is judged on, and
132
- * verify/run-selection/commit-verdict-pull.ts makes the held route cause the run that judges that
133
- * commit. So this removes SPECULATIVE runs only: the commit a route actually needs
134
- * answered is still answered, on demand, at the tip that turns out to matter.
106
+ * It suppresses selection while the focus HEAD still names that commit (or HEAD
107
+ * is unreadable). A new readable HEAD re-arms it -- and that is safe from the
108
+ * waste a HEAD-keyed pass once caused (a SIBLING's coding commit re-arming a
109
+ * delivery whose own work stood still), because the scan no longer selects
110
+ * anything while a sibling codes: it runs the gate once per focus HEAD, when the
111
+ * focus awaits its pre-review run, or for a held route
112
+ * (verify/run-selection/pre-review-gate-dispatch.ts). There a new HEAD is exactly
113
+ * the commit the review request needs a verdict for; without the re-arm, a commit
114
+ * landing between a pass and the review request would leave that request waiting
115
+ * on a run nothing selects. Two deliveries at one HEAD still cost one run
116
+ * (verify/engine/verification-commit-sharing.ts).
135
117
  *
136
118
  * Dropped by a genuine re-entry (the prune sweep in collectDefaultOnVerifications,
137
- * which sees the delivery leave verify), or when a later run FAILS at a judged sha.
138
- * It survives a discarded (checkoutUnavailable) run -- not a verdict -- and a
139
- * 'pending' is never a pass: a pass demoted because injection retirement threw
140
- * records nothing.
119
+ * which sees the delivery leave verify), when a later run FAILS at a judged sha, or
120
+ * by the demand pull for a held route. It survives a discarded
121
+ * (checkoutUnavailable) run -- not a verdict -- and a 'pending' is never a pass: a
122
+ * pass demoted because injection retirement threw records nothing.
141
123
  *
142
- * The HEAD is no longer read here at all, so the old unreadable-HEAD carve-out is
143
- * gone with it: the question this guard answers is about the delivery, not about a
144
- * commit.
145
- *
146
- * IN-MEMORY ONLY, deliberately, and re-examined under the narrowed rule. The
147
- * durable counterpart would be a passed sha in gate_state's verificationHistory,
148
- * beside failedAtSha. It was rejected: that field is written and cleared by every
149
- * gate_state writer under the per-row write discipline, and the pass is exactly the
150
- * moment the history is RESET (verify/outcome-routing/verification-history-reset.ts), so the new
151
- * key would have to be carved out of its own reset -- real perturbation of a
152
- * load-bearing invariant. What it would buy is bounded and mostly not waste: after
153
- * a restart this map is empty, so an in-verify delivery is selected once at the
154
- * current HEAD, and the dispatch takes the recorded per-commit verdict where that
155
- * commit was judged (verify/gate-verdicts/commit-verdict-record.ts, no run). Where it was NOT
156
- * judged, the run that follows is the one the done route will ask for anyway as
157
- * soon as review exits -- early, not wasted. So: at most one gate run per in-verify
158
- * delivery per restart, usually needed. Making it durable is additive if that ever
159
- * proves wrong.
124
+ * IN-MEMORY ONLY, deliberately: the durable counterpart (a passed sha in
125
+ * gate_state's verificationHistory) would have to be carved out of the reset the
126
+ * pass itself triggers (verify/outcome-routing/verification-history-reset.ts).
127
+ * After a restart this map is empty, so an in-verify delivery of a ready focus is
128
+ * selected once at the current HEAD, and the dispatch takes the recorded
129
+ * per-commit verdict where that commit was judged (no run).
130
+ * History: docs/daemon/history-verify.md (verify/run-selection/default-on-guards.ts).
160
131
  */
161
132
  const passedAtSha = new Map();
162
133
  /**
@@ -306,19 +277,23 @@ export function noteDefaultOnResult(deliveryId, result) {
306
277
  }
307
278
  }
308
279
  /**
309
- * True when the delivery's last default-on verify PASSED (skip it). The focus
310
- * HEAD is NOT read: a delivery earns its verdict once and keeps it until it
311
- * genuinely re-enters verify (see passedAtSha for the rule and what it replaced).
280
+ * True when the delivery's last default-on verify PASSED on the commit the focus
281
+ * HEAD names, or `readHead` names none (skip it). A readable HEAD that differs
282
+ * re-arms it. The scan hands the real HEAD only for a focus awaiting its
283
+ * pre-review run, where a new HEAD is a commit the review request needs a verdict
284
+ * for (verify/run-selection/pre-review-gate-dispatch.ts); for a held route it
285
+ * hands none, so only the pull (which drops the pass) re-arms it.
312
286
  */
313
- export function alreadyPassed(deliveryId) {
287
+ export function alreadyPassed(deliveryId, readHead) {
314
288
  const passedSha = passedAtSha.get(deliveryId);
315
- if (!evaluateStop('verify_rerun_already_passed', { passedSha: passedSha ?? null }) || passedSha === undefined)
289
+ const head = passedSha === undefined ? null : readHead();
290
+ if (!evaluateStop('verify_rerun_already_passed', { passedSha: passedSha ?? null, head }) || passedSha === undefined)
316
291
  return false;
317
292
  const key = passSkipKey(deliveryId, passedSha);
318
293
  if (!loggedShaSkips.has(key)) {
319
294
  loggedShaSkips.add(key);
320
295
  log.info(`[verification] default-on: not re-verifying delivery ${deliveryId} -- its verify already passed on `
321
- + `${passedSha.slice(0, 8)}; a sibling's commit does not re-arm it, only a re-entry into verify does`);
296
+ + `${passedSha.slice(0, 8)} and no new focus HEAD awaits its pre-review run`);
322
297
  }
323
298
  return true;
324
299
  }
@@ -1 +1 @@
1
- {"version":3,"file":"default-on-guards.js","sourceRoot":"","sources":["../../../src/verify/run-selection/default-on-guards.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"default-on-guards.js","sourceRoot":"","sources":["../../../src/verify/run-selection/default-on-guards.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,22 @@
1
+ /** The slice of a focus row the readiness read takes. */
2
+ export interface PreReviewFocus {
3
+ review_requested_at: string | null;
4
+ }
5
+ /** The slice of a delivery row the readiness read takes. */
6
+ export interface PreReviewDelivery {
7
+ executionStatus: string | null;
8
+ gateState?: unknown;
9
+ }
10
+ /**
11
+ * True when the focus awaits its pre-review gate run: no delivery active, at
12
+ * least one in verify, and no review window open.
13
+ */
14
+ export declare function focusAwaitsPreReviewRun(focus: PreReviewFocus, deliveries: readonly PreReviewDelivery[]): boolean;
15
+ /**
16
+ * True when the scan may select this verify delivery: its focus awaits the
17
+ * pre-review run, or a held route asks for a verdict on the commit the focus HEAD
18
+ * names. A hold naming no commit, or another one, asks for no run a dispatch could
19
+ * aim (a run judges HEAD), as the pull itself rules.
20
+ */
21
+ export declare function mayDispatchGateRun(focusAwaitsRun: boolean, delivery: PreReviewDelivery, readHead: () => string | null): boolean;
22
+ //# sourceMappingURL=pre-review-gate-dispatch.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pre-review-gate-dispatch.d.ts","sourceRoot":"","sources":["../../../src/verify/run-selection/pre-review-gate-dispatch.ts"],"names":[],"mappings":"AAuCA,yDAAyD;AACzD,MAAM,WAAW,cAAc;IAC7B,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAC;CACpC;AAED,4DAA4D;AAC5D,MAAM,WAAW,iBAAiB;IAChC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,cAAc,EAAE,UAAU,EAAE,SAAS,iBAAiB,EAAE,GAAG,OAAO,CAKhH;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,cAAc,EAAE,OAAO,EAAE,QAAQ,EAAE,iBAAiB,EAAE,QAAQ,EAAE,MAAM,MAAM,GAAG,IAAI,GAAG,OAAO,CAI/H"}
@@ -0,0 +1,59 @@
1
+ // PINNED-BY-BEGIN (generated by gen:pinned-by -- do not hand-edit; checked by lint:pinned-by)
2
+ // Pinned by: packages/daemon/src/verify/run-selection/pre-review-gate-dispatch.test.ts
3
+ // PINNED-BY-END
4
+ /**
5
+ * When the default-on scan may select a focus's verify deliveries: the gate runs
6
+ * once per focus HEAD, before review is requested -- not per delivery as each
7
+ * one enters verify.
8
+ *
9
+ * A verify delivery is selectable only when one of two things asks for a verdict:
10
+ *
11
+ * - **The focus awaits its pre-review run.** Its delivery aggregate is
12
+ * `verifying` (no delivery active, at least one in verify, no review window
13
+ * open -- supervision/focus-delivery-aggregate-phase.ts). That is the moment
14
+ * the review request (completion/state-cascade/review-request-gate.ts) needs
15
+ * a passing verdict for HEAD; every verify delivery shares the one run at that
16
+ * HEAD (verify/engine/verification-commit-sharing.ts). A delivery entering
17
+ * verify while a sibling still codes selects nothing: its run is the focus's
18
+ * pre-review run at whatever HEAD the focus reaches.
19
+ * - **A held route pulls it.** A review exit that found no passing verdict for
20
+ * the commit it judged recorded a commit-verdict hold
21
+ * (delivery/commit-verdict-hold.ts); the pull
22
+ * (verify/run-selection/commit-verdict-pull.ts) aims a run at that commit
23
+ * while the focus HEAD names it. A
24
+ * review that committed pays exactly that one run; one that did not reads the
25
+ * pre-review verdict, which is keyed on the same commit.
26
+ *
27
+ * While a review window is open and no route holds, nothing is selected: the
28
+ * review judges the HEAD whose passing verdict opened the window.
29
+ *
30
+ * Rationale and the decision this reverses: docs/DECISIONS.md ("The full gate
31
+ * runs once per focus HEAD, before review").
32
+ *
33
+ * @module verify/run-selection/pre-review-gate-dispatch
34
+ */
35
+ import { deriveFocusDeliveryAggregatePhase } from '../../supervision/focus-delivery-aggregate-phase.js';
36
+ import { readCommitVerdictHold } from '../../delivery/commit-verdict-hold.js';
37
+ /**
38
+ * True when the focus awaits its pre-review gate run: no delivery active, at
39
+ * least one in verify, and no review window open.
40
+ */
41
+ export function focusAwaitsPreReviewRun(focus, deliveries) {
42
+ return deriveFocusDeliveryAggregatePhase({
43
+ deliveries: deliveries.map((d) => ({ executionStatus: d.executionStatus })),
44
+ reviewRequestedAt: focus.review_requested_at,
45
+ }) === 'verifying';
46
+ }
47
+ /**
48
+ * True when the scan may select this verify delivery: its focus awaits the
49
+ * pre-review run, or a held route asks for a verdict on the commit the focus HEAD
50
+ * names. A hold naming no commit, or another one, asks for no run a dispatch could
51
+ * aim (a run judges HEAD), as the pull itself rules.
52
+ */
53
+ export function mayDispatchGateRun(focusAwaitsRun, delivery, readHead) {
54
+ if (focusAwaitsRun)
55
+ return true;
56
+ const hold = readCommitVerdictHold(delivery.gateState);
57
+ return hold !== null && hold.sha !== null && hold.sha === readHead();
58
+ }
59
+ //# sourceMappingURL=pre-review-gate-dispatch.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pre-review-gate-dispatch.js","sourceRoot":"","sources":["../../../src/verify/run-selection/pre-review-gate-dispatch.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,uFAAuF;AACvF,gBAAgB;AAEhB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AAEH,OAAO,EAAE,iCAAiC,EAAE,MAAM,qDAAqD,CAAC;AACxG,OAAO,EAAE,qBAAqB,EAAE,MAAM,uCAAuC,CAAC;AAa9E;;;GAGG;AACH,MAAM,UAAU,uBAAuB,CAAC,KAAqB,EAAE,UAAwC;IACrG,OAAO,iCAAiC,CAAC;QACvC,UAAU,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC,CAAC,eAAe,EAAE,CAAC,CAAC;QAC3E,iBAAiB,EAAE,KAAK,CAAC,mBAAmB;KAC7C,CAAC,KAAK,WAAW,CAAC;AACrB,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,kBAAkB,CAAC,cAAuB,EAAE,QAA2B,EAAE,QAA6B;IACpH,IAAI,cAAc;QAAE,OAAO,IAAI,CAAC;IAChC,MAAM,IAAI,GAAG,qBAAqB,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;IACvD,OAAO,IAAI,KAAK,IAAI,IAAI,IAAI,CAAC,GAAG,KAAK,IAAI,IAAI,IAAI,CAAC,GAAG,KAAK,QAAQ,EAAE,CAAC;AACvE,CAAC"}
@@ -215,8 +215,10 @@ export declare function judgedCommitVerificationConfig(read: JudgedCommitManifes
215
215
  * Discover deliveries that should receive a DEFAULT-ON deterministic run: in
216
216
  * `verify` status, anchored to an injection, with no explicit verification
217
217
  * method (so not already returned by getPendingVerifications), not in a
218
- * read-only audit focus (those are discovery-only and never run a suite), not
219
- * already run this verify-entry (steady-state guard), and not already failed or
218
+ * read-only audit focus (those are discovery-only and never run a suite), in a
219
+ * focus awaiting its pre-review run or carrying a held route's request
220
+ * (pre-review-gate-dispatch.ts -- once per focus HEAD, before review, never
221
+ * merely because the delivery entered verify), and not already run, failed or
220
222
  * passed on the focus's unchanged HEAD (HEAD-keyed guards).
221
223
  *
222
224
  * Synthesizes a `deterministic` PendingVerification carrying the resolved
@@ -1 +1 @@
1
- {"version":3,"file":"verification-default-on.d.ts","sourceRoot":"","sources":["../../../src/verify/run-selection/verification-default-on.ts"],"names":[],"mappings":"AAaA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAmB,KAAK,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACzE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4CAA4C,CAAC;AACtF,OAAO,EAGL,KAAK,2BAA2B,EAChC,KAAK,2BAA2B,EACjC,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EAIL,KAAK,cAAc,EAEpB,MAAM,yCAAyC,CAAC;AAEjD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0CAA0C,CAAC;AACjF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AAS3E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iDAAiD,CAAC;AAKvF,0FAA0F;AAC1F,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAGzE;AAGD;;;;GAIG;AACH,MAAM,WAAW,iBAAiB;IAChC,gBAAgB,EAAE,OAAO,gBAAgB,CAAC;IAC1C,kBAAkB,EAAE,OAAO,kBAAkB,CAAC;IAC9C;;;;;OAKG;IACH,mBAAmB,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,CAAC;IACxD;;;;;OAKG;IACH,wBAAwB,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,gBAAgB,GAAG,IAAI,CAAC;IACvE,gIAAgI;IAChI,oBAAoB,EAAE,eAAe,CAAC;CACvC;AAMD;;;;;;;;;;;;;;;GAeG;AACH,qBAAa,qBAAqB;IAChC,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAyB;gBAErC,KAAK,EAAE,MAAM;IAKzB,mFAAmF;IACnF,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAavB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAQ9B,OAAO,IAAI,IAAI;IASf,2DAA2D;IAC3D,gBAAgB,IAAI,MAAM;CAG3B;AAED,8EAA8E;AAC9E,eAAO,MAAM,qBAAqB,uBAA+B,CAAC;AAElE,oDAAoD;AACpD,wBAAgB,kCAAkC,IAAI;IAAE,gBAAgB,IAAI,MAAM,CAAC;IAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAE9G;AAMD;;;GAGG;AACH,MAAM,WAAW,wBAAwB;IACvC,OAAO,EAAE,YAAY,CAAC;IACtB,2FAA2F;IAC3F,aAAa,EAAE,YAAY,CAAC;IAC5B;;;;;OAKG;IACH,QAAQ,EAAE,2BAA2B,GAAG,SAAS,CAAC;IAClD;;;;OAIG;IACH,gBAAgB,CAAC,EAAE,2BAA2B,CAAC;CAChD;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAiCG;AACH,wBAAgB,gCAAgC,CAC9C,MAAM,EAAE,YAAY,EACpB,OAAO,EAAE,2BAA2B,GACnC,wBAAwB,EAAE,CAe5B;AAsBD;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAgB,0BAA0B,CACxC,MAAM,EAAE,SAAS,wBAAwB,EAAE,GAC1C,MAAM,CAMR;AAgBD;;;;GAIG;AACH,MAAM,WAAW,oBAAoB;IACnC,GAAG,EAAE,MAAM,CAAC;IACZ,qFAAqF;IACrF,YAAY,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,4EAA4E;IAC5E,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;GAIG;AACH,MAAM,WAAW,sBAAsB;IACrC,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,MAAM,gBAAgB,GAAG,oBAAoB,GAAG,sBAAsB,CAAC;AAE7E,KAAK,MAAM,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,KAAK;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAkCpG;;;;;GAKG;AACH,wBAAgB,+BAA+B,CAC7C,mBAAmB,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,EACvD,MAAM,EAAE,MAAM,GACb,CAAC,OAAO,EAAE,MAAM,KAAK,gBAAgB,GAAG,IAAI,CAgB9C;AAmCD;;;;GAIG;AACH,wBAAgB,8BAA8B,CAAC,IAAI,EAAE,oBAAoB,EAAE,QAAQ,EAAE,2BAA2B,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CASzI;AA2BD;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAsB,6BAA6B,CACjD,MAAM,EAAE,YAAY,EACpB,QAAQ,EAAE,2BAA2B,EACrC,mBAAmB,EAAE,WAAW,CAAC,MAAM,CAAC,EACxC,IAAI,EAAE,iBAAiB,GACtB,OAAO,CAAC,mBAAmB,EAAE,CAAC,CAuFhC"}
1
+ {"version":3,"file":"verification-default-on.d.ts","sourceRoot":"","sources":["../../../src/verify/run-selection/verification-default-on.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@
3
3
  // packages/daemon/src/integration/explicit-verdict-departure-during-removal.test.ts,
4
4
  // packages/daemon/src/integration/explicit-verdict-invalidation-restart.test.ts,
5
5
  // packages/daemon/src/integration/focus-commit-verdict-scenario.test.ts,
6
+ // packages/daemon/src/integration/manifest-commit-check-composed.test.ts,
6
7
  // packages/daemon/src/verify/deterministic-gate/verify-unprovisioned-worktree.test.ts,
7
8
  // packages/daemon/src/verify/engine/verification-commit-sharing.test.ts,
8
9
  // packages/daemon/src/verify/gate-config/judged-commit-gate.test.ts,
@@ -34,6 +35,7 @@ import { configForProduct } from '../../config/config.js';
34
35
  import { getFocusWorktree } from '../../worktree/focus-worktree-state.js';
35
36
  import { resolveHeadSha } from '../attribution/verification-baseline.js';
36
37
  import { alreadyPassed, failedOnCurrentHead, pruneGuardsOutsideVerify, ranOnCurrentHead, } from './default-on-guards.js';
38
+ import { focusAwaitsPreReviewRun, mayDispatchGateRun } from './pre-review-gate-dispatch.js';
37
39
  import { createLogger } from '../../log/daemon-log.js';
38
40
  const log = createLogger({ module: 'verification' });
39
41
  /** Default HEAD reader: the registered focus worktree's HEAD, or null when unreadable. */
@@ -338,12 +340,16 @@ function pruneProductGuards(productId, observedInVerify, complete) {
338
340
  log.info(`[verification] default-on: not pruning the re-run guards of product ${productId} this tick -- `
339
341
  + 'a focus\'s deliveries could not be read, so "no longer in verify" is not established');
340
342
  }
343
+ /** No HEAD may re-arm a recorded pass: outside the pre-review run, only a held route's pull does. */
344
+ const NO_REARMING_HEAD = () => null;
341
345
  /**
342
346
  * Discover deliveries that should receive a DEFAULT-ON deterministic run: in
343
347
  * `verify` status, anchored to an injection, with no explicit verification
344
348
  * method (so not already returned by getPendingVerifications), not in a
345
- * read-only audit focus (those are discovery-only and never run a suite), not
346
- * already run this verify-entry (steady-state guard), and not already failed or
349
+ * read-only audit focus (those are discovery-only and never run a suite), in a
350
+ * focus awaiting its pre-review run or carrying a held route's request
351
+ * (pre-review-gate-dispatch.ts -- once per focus HEAD, before review, never
352
+ * merely because the delivery entered verify), and not already run, failed or
347
353
  * passed on the focus's unchanged HEAD (HEAD-keyed guards).
348
354
  *
349
355
  * Synthesizes a `deterministic` PendingVerification carrying the resolved
@@ -390,6 +396,9 @@ export async function collectDefaultOnVerifications(config, resolved, explicitDe
390
396
  continue;
391
397
  }
392
398
  const readHead = memoizedHead(focus.focus_id, deps);
399
+ // Once per focus HEAD, before review: nothing is selected while a sibling codes or a review window is open,
400
+ // unless a held route asks for its commit's verdict (verify/run-selection/pre-review-gate-dispatch.ts).
401
+ const awaitsPreReviewRun = focusAwaitsPreReviewRun(focus, deliveries);
393
402
  for (const d of deliveries) {
394
403
  if (d.executionStatus !== DELIVERY_STATUS.VERIFY)
395
404
  continue;
@@ -404,12 +413,12 @@ export async function collectDefaultOnVerifications(config, resolved, explicitDe
404
413
  if (explicitDeliveryIds.has(d.id) || (typeof d.verificationMethod === 'string' && d.verificationMethod !== ''))
405
414
  continue;
406
415
  observedInVerify.add(d.id);
407
- // The pass is read FIRST, and reads no HEAD: it answers a question about the
408
- // DELIVERY (has its work been judged?), where the two below answer questions
409
- // about the COMMIT. Asked after ranOnCurrentHead, a sibling's commit would
410
- // drop the run mark and log a re-arm the pass then silently suppressed.
411
- if (alreadyPassed(d.id))
412
- continue; // its verify passed; only a re-entry re-arms it
416
+ if (!mayDispatchGateRun(awaitsPreReviewRun, d, readHead))
417
+ continue; // its run is the focus's pre-review run, not its verify entry
418
+ // The pass is read FIRST, so a pass on HEAD reads as a pass before ranOnCurrentHead drops a run mark. Only the
419
+ // pre-review run is re-armed by a new HEAD; for a held route the pull alone re-arms a pass (it drops it).
420
+ if (alreadyPassed(d.id, awaitsPreReviewRun ? readHead : NO_REARMING_HEAD))
421
+ continue;
413
422
  if (ranOnCurrentHead(d.id, readHead))
414
423
  continue; // already judged on this commit this verify-entry
415
424
  if (failedOnCurrentHead(d, readHead))
@@ -1 +1 @@
1
- {"version":3,"file":"verification-default-on.js","sourceRoot":"","sources":["../../../src/verify/run-selection/verification-default-on.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"verification-default-on.js","sourceRoot":"","sources":["../../../src/verify/run-selection/verification-default-on.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ /** Marker line identifying a hook this module wrote. */
2
+ export declare const COMMIT_CHECK_HOOK_MARKER = "# TELORA-COMMIT-CHECK";
3
+ /** Lines of failing output the hook prints on a refusal. */
4
+ export declare const COMMIT_CHECK_OUTPUT_TAIL_LINES = 200;
5
+ /** The hook script that runs `command` and refuses the commit (or merge commit) on any failure. */
6
+ export declare function buildCommitCheckHookScript(command: string): string;
7
+ /** The hooks the commit check is installed as: git runs `pre-merge-commit`, not `pre-commit`, for a clean merge's commit. */
8
+ export declare const COMMIT_CHECK_HOOK_NAMES: readonly string[];
9
+ /**
10
+ * Write (or remove) the commit-check hooks in a writable worktree's
11
+ * `.telora-hooks/`. Idempotent. `commitCheck` undefined => no commit check: hooks
12
+ * this module wrote earlier are removed, and any other hook file (the read-only
13
+ * audit block) is left alone. The caller configures `core.hooksPath`
14
+ * (worktree-hooks.ts installs the commit-msg hook first).
15
+ */
16
+ export declare function installCommitCheckPreCommitHook(worktreePath: string, commitCheck: string | undefined): void;
17
+ //# sourceMappingURL=commit-check-hook.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"commit-check-hook.d.ts","sourceRoot":"","sources":["../../src/worktree/commit-check-hook.ts"],"names":[],"mappings":"AA2CA,wDAAwD;AACxD,eAAO,MAAM,wBAAwB,0BAA0B,CAAC;AAEhE,4DAA4D;AAC5D,eAAO,MAAM,8BAA8B,MAAM,CAAC;AAOlD,mGAAmG;AACnG,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CA8DlE;AAYD,6HAA6H;AAC7H,eAAO,MAAM,uBAAuB,EAAE,SAAS,MAAM,EAAuC,CAAC;AAE7F;;;;;;GAMG;AACH,wBAAgB,+BAA+B,CAAC,YAAY,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAS3G"}
@@ -0,0 +1,146 @@
1
+ // PINNED-BY-BEGIN (generated by gen:pinned-by -- do not hand-edit; checked by lint:pinned-by)
2
+ // Pinned by: packages/daemon/src/worktree/commit-check-hook.test.ts
3
+ // PINNED-BY-END
4
+ /**
5
+ * The repo-declared commit check, installed as git `pre-commit` and
6
+ * `pre-merge-commit` hooks in a writable agent worktree.
7
+ *
8
+ * A repo declares a cheap structural check (lint + ratchets) as `commitCheck` in
9
+ * its `telora.verify.json` (verify/gate-config/verification-manifest.ts). The
10
+ * daemon writes it into the worktree's `.telora-hooks/`, beside the
11
+ * delivery-trailer `commit-msg` hook (worktree-hooks.ts), so a structural red is
12
+ * refused at the commit that would introduce it instead of surfacing later as a
13
+ * failed gate verdict. `pre-merge-commit` carries the same script because git
14
+ * runs it, not `pre-commit`, for the commit a clean `git merge` makes. A repo that
15
+ * declares no commit check gets neither hook, and ones this module wrote earlier
16
+ * are removed.
17
+ *
18
+ * The hooks are plain git, so they bind every engine that commits through git
19
+ * (Claude and Codex alike). The check runs from the worktree root against the
20
+ * working tree, and:
21
+ * - passes when the command exits 0;
22
+ * - REFUSES the commit, printing the tail of the failing output, whenever the
23
+ * command fails. An ENVIRONMENTAL failure (exit 126/127, or Node could not
24
+ * resolve a module) is refused too, under its own banner naming the
25
+ * environment rather than reading as a lint red: an unchecked commit is not
26
+ * admitted.
27
+ *
28
+ * An agent's merge commit -- a clean `git merge`, or `git commit` concluding a
29
+ * conflicted one -- runs the check like any other commit. Exempt only: a
30
+ * daemon-authored commit or merge, which runs git with
31
+ * `DAEMON_AUTHORED_COMMIT_ARGS` (git/daemon-authored-commit.ts): safety captures
32
+ * and the in-repo publish commit preserve or record work, and the merge-back of
33
+ * integration must not wedge on the agent-facing check. The persistent merge
34
+ * worktree is given no commit check at all (focus-lifecycle).
35
+ *
36
+ * Rationale and the declaration format: docs/runbook-verify-gate-command.md.
37
+ */
38
+ import { existsSync, mkdirSync, readFileSync, rmSync, writeFileSync } from 'node:fs';
39
+ import { join } from 'node:path';
40
+ import { DAEMON_AUTHORED_COMMIT_CONFIG_KEY } from '../git/daemon-authored-commit.js';
41
+ /** Marker line identifying a hook this module wrote. */
42
+ export const COMMIT_CHECK_HOOK_MARKER = '# TELORA-COMMIT-CHECK';
43
+ /** Lines of failing output the hook prints on a refusal. */
44
+ export const COMMIT_CHECK_OUTPUT_TAIL_LINES = 200;
45
+ /** Quote a string as one single-quoted POSIX shell word. */
46
+ function shellQuote(value) {
47
+ return `'${value.replace(/'/g, `'\\''`)}'`;
48
+ }
49
+ /** The hook script that runs `command` and refuses the commit (or merge commit) on any failure. */
50
+ export function buildCommitCheckHookScript(command) {
51
+ return [
52
+ '#!/bin/bash',
53
+ COMMIT_CHECK_HOOK_MARKER,
54
+ '# Telora commit check: runs the repo-declared `commitCheck` (telora.verify.json)',
55
+ '# before every commit. Generated by the daemon (worktree/commit-check-hook.ts);',
56
+ '# do not edit -- it is rewritten on every spawn.',
57
+ '',
58
+ '# A daemon-authored commit or merge (safety capture, publish commit, merge-back)',
59
+ '# is exempt (git/daemon-authored-commit.ts). An agent\'s merge commit is NOT.',
60
+ `if [ "$(git config --get ${DAEMON_AUTHORED_COMMIT_CONFIG_KEY} 2>/dev/null)" = "true" ]; then`,
61
+ ' exit 0',
62
+ 'fi',
63
+ '',
64
+ `check_cmd=${shellQuote(command)}`,
65
+ 'top="$(git rev-parse --show-toplevel 2>/dev/null)"',
66
+ 'if [ -n "$top" ]; then cd "$top" || exit 1; fi',
67
+ 'log="$(mktemp "${TMPDIR:-/tmp}/telora-commit-check.XXXXXX")"',
68
+ 'echo "Telora commit check: running \\`$check_cmd\\` before this commit..." >&2',
69
+ '# Run without the index/dir variables git exports to hooks, so the check\'s',
70
+ '# own git calls (and any temp repos its self-tests make) see a normal env.',
71
+ 'env -u GIT_INDEX_FILE -u GIT_DIR -u GIT_WORK_TREE -u GIT_PREFIX bash -c "$check_cmd" >"$log" 2>&1',
72
+ 'status=$?',
73
+ 'if [ "$status" -eq 0 ]; then',
74
+ ' rm -f "$log"',
75
+ ' echo "Telora commit check: passed." >&2',
76
+ ' exit 0',
77
+ 'fi',
78
+ '',
79
+ 'environmental=0',
80
+ 'if [ "$status" -eq 126 ] || [ "$status" -eq 127 ]; then environmental=1; fi',
81
+ "if grep -qE 'Cannot find module|ERR_MODULE_NOT_FOUND|MODULE_NOT_FOUND|: command not found|: not found$' \"$log\"; then environmental=1; fi",
82
+ '',
83
+ `tail -n ${COMMIT_CHECK_OUTPUT_TAIL_LINES} "$log" >&2`,
84
+ 'rm -f "$log"',
85
+ 'echo "" >&2',
86
+ 'echo "========================================================" >&2',
87
+ 'if [ "$environmental" -eq 1 ]; then',
88
+ ' echo " COMMIT REFUSED: the commit check could not run (environment, exit $status)" >&2',
89
+ ' echo "========================================================" >&2',
90
+ ' echo "" >&2',
91
+ ' echo " \\`$check_cmd\\` failed to START: a command or module it needs" >&2',
92
+ ' echo " is missing (see the output above). That is the worktree\'s" >&2',
93
+ ' echo " environment, not a lint or ratchet red in your change -- but an" >&2',
94
+ ' echo " unchecked commit is not admitted. Restore the install (e.g. npm" >&2',
95
+ ' echo " install in this worktree) and commit again." >&2',
96
+ ' echo "" >&2',
97
+ ' echo "========================================================" >&2',
98
+ ' exit 1',
99
+ 'fi',
100
+ 'echo " COMMIT REFUSED: the commit check failed (exit $status)" >&2',
101
+ 'echo "========================================================" >&2',
102
+ 'echo "" >&2',
103
+ 'echo " \\`$check_cmd\\` failed on the working tree (output above)." >&2',
104
+ 'echo " Fix the reported lint / ratchet failures in this session and" >&2',
105
+ 'echo " commit again. Do not bypass the hook (--no-verify): the same" >&2',
106
+ 'echo " checks run in the daemon\'s gate and fail the delivery there." >&2',
107
+ 'echo "" >&2',
108
+ 'echo "========================================================" >&2',
109
+ 'exit 1',
110
+ '',
111
+ ].join('\n');
112
+ }
113
+ /** True when the file at `path` is a hook this module wrote. */
114
+ function isCommitCheckHook(path) {
115
+ if (!existsSync(path))
116
+ return false;
117
+ try {
118
+ return readFileSync(path, 'utf-8').split('\n').includes(COMMIT_CHECK_HOOK_MARKER);
119
+ }
120
+ catch {
121
+ return false;
122
+ }
123
+ }
124
+ /** The hooks the commit check is installed as: git runs `pre-merge-commit`, not `pre-commit`, for a clean merge's commit. */
125
+ export const COMMIT_CHECK_HOOK_NAMES = ['pre-commit', 'pre-merge-commit'];
126
+ /**
127
+ * Write (or remove) the commit-check hooks in a writable worktree's
128
+ * `.telora-hooks/`. Idempotent. `commitCheck` undefined => no commit check: hooks
129
+ * this module wrote earlier are removed, and any other hook file (the read-only
130
+ * audit block) is left alone. The caller configures `core.hooksPath`
131
+ * (worktree-hooks.ts installs the commit-msg hook first).
132
+ */
133
+ export function installCommitCheckPreCommitHook(worktreePath, commitCheck) {
134
+ const hooksDir = join(worktreePath, '.telora-hooks');
135
+ const declared = commitCheck !== undefined && commitCheck.trim() !== '';
136
+ if (declared && !existsSync(hooksDir))
137
+ mkdirSync(hooksDir, { recursive: true });
138
+ for (const name of COMMIT_CHECK_HOOK_NAMES) {
139
+ const hookPath = join(hooksDir, name);
140
+ if (declared)
141
+ writeFileSync(hookPath, buildCommitCheckHookScript(commitCheck), { mode: 0o755 });
142
+ else if (isCommitCheckHook(hookPath))
143
+ rmSync(hookPath, { force: true });
144
+ }
145
+ }
146
+ //# sourceMappingURL=commit-check-hook.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"commit-check-hook.js","sourceRoot":"","sources":["../../src/worktree/commit-check-hook.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"focus-worktree-state.d.ts","sourceRoot":"","sources":["../../src/worktree/focus-worktree-state.ts"],"names":[],"mappings":"AAcA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAgB3D;;;;;;;;;GASG;AACH,wBAAsB,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CA6BtF;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,iBAAiB,GAAG,SAAS,CAE/E;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,iBAAiB,GAAG,IAAI,CAgB/E;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAc5D;AAED;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,GAAG,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAErE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAEzD"}
1
+ {"version":3,"file":"focus-worktree-state.d.ts","sourceRoot":"","sources":["../../src/worktree/focus-worktree-state.ts"],"names":[],"mappings":"AAeA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAgB3D;;;;;;;;;GASG;AACH,wBAAsB,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CA6BtF;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,iBAAiB,GAAG,SAAS,CAE/E;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,iBAAiB,GAAG,IAAI,CAgB/E;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAc5D;AAED;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,GAAG,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAErE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAEzD"}