@telora/daemon 0.23.32 → 0.23.46

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 (181) hide show
  1. package/build-info.json +4 -3
  2. package/dist/completion/completion-event/event.d.ts +12 -0
  3. package/dist/completion/completion-event/event.d.ts.map +1 -1
  4. package/dist/completion/completion-event/event.js +1 -0
  5. package/dist/completion/completion-event/event.js.map +1 -1
  6. package/dist/completion/completion-event/unfinished-work.d.ts +134 -0
  7. package/dist/completion/completion-event/unfinished-work.d.ts.map +1 -0
  8. package/dist/completion/completion-event/unfinished-work.js +140 -0
  9. package/dist/completion/completion-event/unfinished-work.js.map +1 -0
  10. package/dist/completion/team-outcome/apply-turn.d.ts.map +1 -1
  11. package/dist/completion/team-outcome/apply-turn.js +18 -0
  12. package/dist/completion/team-outcome/apply-turn.js.map +1 -1
  13. package/dist/completion/team-outcome/decide-turn-entry-rows.d.ts +16 -0
  14. package/dist/completion/team-outcome/decide-turn-entry-rows.d.ts.map +1 -1
  15. package/dist/completion/team-outcome/decide-turn-entry-rows.js +75 -11
  16. package/dist/completion/team-outcome/decide-turn-entry-rows.js.map +1 -1
  17. package/dist/completion/team-outcome/decide-turn-work-rows.d.ts.map +1 -1
  18. package/dist/completion/team-outcome/decide-turn-work-rows.js +10 -1
  19. package/dist/completion/team-outcome/decide-turn-work-rows.js.map +1 -1
  20. package/dist/completion/team-outcome/decide.d.ts.map +1 -1
  21. package/dist/completion/team-outcome/decide.js +1 -0
  22. package/dist/completion/team-outcome/decide.js.map +1 -1
  23. package/dist/completion/team-outcome/exit-action-roles.d.ts.map +1 -1
  24. package/dist/completion/team-outcome/exit-action-roles.js +2 -0
  25. package/dist/completion/team-outcome/exit-action-roles.js.map +1 -1
  26. package/dist/completion/team-outcome/exit-actions.d.ts +4 -0
  27. package/dist/completion/team-outcome/exit-actions.d.ts.map +1 -1
  28. package/dist/completion/team-outcome/exit-limits.d.ts +8 -0
  29. package/dist/completion/team-outcome/exit-limits.d.ts.map +1 -1
  30. package/dist/completion/team-outcome/exit-limits.js +9 -0
  31. package/dist/completion/team-outcome/exit-limits.js.map +1 -1
  32. package/dist/completion/team-outcome/exit-pipeline-state.d.ts +7 -0
  33. package/dist/completion/team-outcome/exit-pipeline-state.d.ts.map +1 -1
  34. package/dist/completion/team-outcome/exit-pipeline-state.js +1 -0
  35. package/dist/completion/team-outcome/exit-pipeline-state.js.map +1 -1
  36. package/dist/completion/team-outcome/team-outcome.d.ts.map +1 -1
  37. package/dist/completion/team-outcome/team-outcome.js +2 -1
  38. package/dist/completion/team-outcome/team-outcome.js.map +1 -1
  39. package/dist/completion/team-teardown/session-hold-bounds.d.ts +13 -1
  40. package/dist/completion/team-teardown/session-hold-bounds.d.ts.map +1 -1
  41. package/dist/completion/team-teardown/session-hold-bounds.js +15 -0
  42. package/dist/completion/team-teardown/session-hold-bounds.js.map +1 -1
  43. package/dist/completion/team-teardown/session-hold.d.ts.map +1 -1
  44. package/dist/completion/team-teardown/session-hold.js +4 -0
  45. package/dist/completion/team-teardown/session-hold.js.map +1 -1
  46. package/dist/composition/completion-event-context.d.ts.map +1 -1
  47. package/dist/composition/completion-event-context.js +8 -0
  48. package/dist/composition/completion-event-context.js.map +1 -1
  49. package/dist/composition/daemon-contexts.js +1 -1
  50. package/dist/composition/runtime-poll-context.d.ts +32 -4
  51. package/dist/composition/runtime-poll-context.d.ts.map +1 -1
  52. package/dist/composition/runtime-poll-context.js +61 -5
  53. package/dist/composition/runtime-poll-context.js.map +1 -1
  54. package/dist/composition/verification-context.js +1 -1
  55. package/dist/composition/verify-rework-context.d.ts +12 -3
  56. package/dist/composition/verify-rework-context.d.ts.map +1 -1
  57. package/dist/composition/verify-rework-context.js +27 -10
  58. package/dist/composition/verify-rework-context.js.map +1 -1
  59. package/dist/config/live-daemon-config.js +1 -1
  60. package/dist/daemon-state/focus-team-state.js +1 -1
  61. package/dist/delivery/advance-hold.d.ts +25 -0
  62. package/dist/delivery/advance-hold.d.ts.map +1 -1
  63. package/dist/delivery/advance-hold.js +52 -1
  64. package/dist/delivery/advance-hold.js.map +1 -1
  65. package/dist/delivery/delivery-reconciler.d.ts +17 -2
  66. package/dist/delivery/delivery-reconciler.d.ts.map +1 -1
  67. package/dist/delivery/delivery-reconciler.js +54 -30
  68. package/dist/delivery/delivery-reconciler.js.map +1 -1
  69. package/dist/delivery/recorded-concerns.d.ts.map +1 -1
  70. package/dist/delivery/recorded-concerns.js +1 -0
  71. package/dist/delivery/recorded-concerns.js.map +1 -1
  72. package/dist/directive/directive-queue.d.ts +27 -0
  73. package/dist/directive/directive-queue.d.ts.map +1 -1
  74. package/dist/directive/directive-queue.js +36 -1
  75. package/dist/directive/directive-queue.js.map +1 -1
  76. package/dist/focus/daemon-contexts.js +1 -1
  77. package/dist/focus/failed-head-wedge.d.ts +42 -13
  78. package/dist/focus/failed-head-wedge.d.ts.map +1 -1
  79. package/dist/focus/failed-head-wedge.js +45 -10
  80. package/dist/focus/failed-head-wedge.js.map +1 -1
  81. package/dist/focus/focus-poller-spawn.js +1 -1
  82. package/dist/focus/focus-poller-state.js +1 -1
  83. package/dist/focus/pending-spawn-review-next-step.d.ts.map +1 -1
  84. package/dist/focus/pending-spawn-review-next-step.js +9 -1
  85. package/dist/focus/pending-spawn-review-next-step.js.map +1 -1
  86. package/dist/focus/uncommitted-work-backstop.d.ts +115 -0
  87. package/dist/focus/uncommitted-work-backstop.d.ts.map +1 -0
  88. package/dist/focus/uncommitted-work-backstop.js +259 -0
  89. package/dist/focus/uncommitted-work-backstop.js.map +1 -0
  90. package/dist/focus/verify-routing-passes.d.ts +5 -1
  91. package/dist/focus/verify-routing-passes.d.ts.map +1 -1
  92. package/dist/focus/verify-routing-passes.js +1 -0
  93. package/dist/focus/verify-routing-passes.js.map +1 -1
  94. package/dist/git/index.d.ts.map +1 -1
  95. package/dist/git/index.js +2 -1
  96. package/dist/git/index.js.map +1 -1
  97. package/dist/git/review-window-commits.d.ts.map +1 -1
  98. package/dist/git/review-window-commits.js +1 -0
  99. package/dist/git/review-window-commits.js.map +1 -1
  100. package/dist/git/types.d.ts.map +1 -1
  101. package/dist/git/types.js +1 -20
  102. package/dist/git/types.js.map +1 -1
  103. package/dist/prompt-sections/qa-author-section.d.ts +7 -3
  104. package/dist/prompt-sections/qa-author-section.d.ts.map +1 -1
  105. package/dist/prompt-sections/qa-author-section.js +52 -15
  106. package/dist/prompt-sections/qa-author-section.js.map +1 -1
  107. package/dist/qa/qa-author-faithfulness.d.ts +86 -14
  108. package/dist/qa/qa-author-faithfulness.d.ts.map +1 -1
  109. package/dist/qa/qa-author-faithfulness.js +213 -47
  110. package/dist/qa/qa-author-faithfulness.js.map +1 -1
  111. package/dist/qa/qa-author-output.d.ts +6 -3
  112. package/dist/qa/qa-author-output.d.ts.map +1 -1
  113. package/dist/qa/qa-author-output.js.map +1 -1
  114. package/dist/qa/qa-author-pass.d.ts +8 -5
  115. package/dist/qa/qa-author-pass.d.ts.map +1 -1
  116. package/dist/qa/qa-author-pass.js +4 -3
  117. package/dist/qa/qa-author-pass.js.map +1 -1
  118. package/dist/qa/qa-author-runner.d.ts.map +1 -1
  119. package/dist/qa/qa-author-runner.js +15 -10
  120. package/dist/qa/qa-author-runner.js.map +1 -1
  121. package/dist/queries/deliveries/deliveries.d.ts.map +1 -1
  122. package/dist/queries/deliveries/deliveries.js +1 -20
  123. package/dist/queries/deliveries/deliveries.js.map +1 -1
  124. package/dist/queries/delivery-gate-state/delivery-gate-holds.d.ts +8 -3
  125. package/dist/queries/delivery-gate-state/delivery-gate-holds.d.ts.map +1 -1
  126. package/dist/queries/delivery-gate-state/delivery-gate-state.js +1 -1
  127. package/dist/queries/escalations/escalations.d.ts.map +1 -1
  128. package/dist/queries/escalations/escalations.js +1 -0
  129. package/dist/queries/escalations/escalations.js.map +1 -1
  130. package/dist/queries/qa-packets/qa-packets.d.ts +74 -1
  131. package/dist/queries/qa-packets/qa-packets.d.ts.map +1 -1
  132. package/dist/queries/qa-packets/qa-packets.js +28 -2
  133. package/dist/queries/qa-packets/qa-packets.js.map +1 -1
  134. package/dist/supervision/escalation-filing.js +1 -1
  135. package/dist/supervision/spawn-cooldown.js +1 -1
  136. package/dist/supervision/stop-registry.d.ts +5 -0
  137. package/dist/supervision/stop-registry.d.ts.map +1 -1
  138. package/dist/supervision/stop-rows-team-session.d.ts +6 -1
  139. package/dist/supervision/stop-rows-team-session.d.ts.map +1 -1
  140. package/dist/supervision/stop-rows-team-session.js +34 -1
  141. package/dist/supervision/stop-rows-team-session.js.map +1 -1
  142. package/dist/supervision/team-work.d.ts.map +1 -1
  143. package/dist/supervision/team-work.js +1 -0
  144. package/dist/supervision/team-work.js.map +1 -1
  145. package/dist/testing/fixtures/approved-head-inert-deps.js +1 -1
  146. package/dist/testing/fixtures/approved-head-inert-deps.js.map +1 -1
  147. package/dist/testing/fixtures/completion-event-deps.d.ts +2 -1
  148. package/dist/testing/fixtures/completion-event-deps.d.ts.map +1 -1
  149. package/dist/testing/fixtures/completion-event-deps.js +5 -1
  150. package/dist/testing/fixtures/completion-event-deps.js.map +1 -1
  151. package/dist/testing/fixtures/index.js +1 -1
  152. package/dist/testing/fixtures/pending-spawn-world.d.ts.map +1 -1
  153. package/dist/testing/fixtures/pending-spawn-world.js +2 -1
  154. package/dist/testing/fixtures/pending-spawn-world.js.map +1 -1
  155. package/dist/testing/fixtures/review-exit-deps.js +2 -2
  156. package/dist/testing/fixtures/review-exit-deps.js.map +1 -1
  157. package/dist/types/index.js +1 -1
  158. package/dist/types/qa-packet.d.ts +15 -4
  159. package/dist/types/qa-packet.d.ts.map +1 -1
  160. package/dist/types/qa-packet.js +18 -4
  161. package/dist/types/qa-packet.js.map +1 -1
  162. package/dist/verify/attribution/rework-attribution.d.ts +50 -111
  163. package/dist/verify/attribution/rework-attribution.d.ts.map +1 -1
  164. package/dist/verify/attribution/rework-attribution.js +215 -71
  165. package/dist/verify/attribution/rework-attribution.js.map +1 -1
  166. package/dist/verify/gate-verdicts/commit-verdict-record.d.ts +9 -0
  167. package/dist/verify/gate-verdicts/commit-verdict-record.d.ts.map +1 -1
  168. package/dist/verify/gate-verdicts/commit-verdict-record.js +27 -1
  169. package/dist/verify/gate-verdicts/commit-verdict-record.js.map +1 -1
  170. package/dist/verify/gate-verdicts/judged-ancestor.d.ts.map +1 -1
  171. package/dist/verify/gate-verdicts/judged-ancestor.js +2 -1
  172. package/dist/verify/gate-verdicts/judged-ancestor.js.map +1 -1
  173. package/dist/verify/outcome-routing/gate-rework-reopen.d.ts +30 -0
  174. package/dist/verify/outcome-routing/gate-rework-reopen.d.ts.map +1 -0
  175. package/dist/verify/outcome-routing/gate-rework-reopen.js +37 -0
  176. package/dist/verify/outcome-routing/gate-rework-reopen.js.map +1 -0
  177. package/dist/verify/outcome-routing/verification-rework-issue.d.ts +114 -25
  178. package/dist/verify/outcome-routing/verification-rework-issue.d.ts.map +1 -1
  179. package/dist/verify/outcome-routing/verification-rework-issue.js +147 -88
  180. package/dist/verify/outcome-routing/verification-rework-issue.js.map +1 -1
  181. package/package.json +3 -3
@@ -0,0 +1,259 @@
1
+ // PINNED-BY-BEGIN (generated by gen:pinned-by -- do not hand-edit; checked by lint:pinned-by)
2
+ // Pinned by: packages/daemon/src/focus/uncommitted-work-backstop.test.ts
3
+ // PINNED-BY-END
4
+ /**
5
+ * Uncommitted work in an armed focus's worktree never sits there with nobody to
6
+ * finish it.
7
+ *
8
+ * THE STATE. An armed focus (assigned_agent_role_id set, not operator-stopped,
9
+ * not read-only) with NO live team on this host, whose worktree holds
10
+ * uncommitted paths (`git status --porcelain`, the reading the coding -> verify
11
+ * advance hold names: delivery/advance-hold.ts). Nothing else moves it: the gate
12
+ * judges commits, so it never sees the work; merge-back skips a dirty worktree
13
+ * every tick; the HEAD does not move, so a failed verdict at it stands; and when
14
+ * every delivery is in verify no team spawns. A team torn down with its fix
15
+ * staged leaves exactly this (the completion hold,
16
+ * completion/completion-event/unfinished-work.ts, bounds how long a live team is
17
+ * kept for it -- it does not make a torn-down team's work commit itself).
18
+ *
19
+ * WHAT IT DOES, once the state has stood for UNCOMMITTED_WORK_GRACE_MS (so a team
20
+ * mid-exit, whose own close path may still capture its work, is not raced):
21
+ * 1. RESPAWN, once per dirty episode: queue a coding respawn of the focus's own
22
+ * lineage (the team that wrote the work resumes with its context), naming
23
+ * the paths. A spawn directive already queued is left alone -- it spawns a
24
+ * team too. The respawn is marked (purpose 'uncommitted_work') so the
25
+ * pending-spawn pass never drops it for a review that would be "next" on a
26
+ * verify-only focus (focus/pending-spawn-review-next-step.ts): a review judges a
27
+ * HEAD the work is not in. The respawned team, its deliveries all in verify, is
28
+ * held by the completion hold and re-prompted to commit until it does.
29
+ * 2. RECORD, if the respawn did not finish it: the state stands again for the
30
+ * grace with no live team and no respawn still queued (or the queued one has
31
+ * waited UNCOMMITTED_WORK_RESPAWN_WAIT_MS). The OPERATOR-VISIBLE record is
32
+ * state on the focus's cycling deliveries: gate_state.advanceHold with reason
33
+ * worktree_uncommitted_no_team, naming the worktree and the paths, which the
34
+ * dashboard's Waiting-on line renders (delivery/advance-hold.ts
35
+ * recordStrandedWork; it carries no `blocking` entry, so it decides nothing).
36
+ * Beside it, ONE agent-resolvable worktree-dirty observation (escalation kind
37
+ * merge_refused_dirty, deduped across its sibling classes per focus) puts the
38
+ * condition in the machine lane, where the routing deciders read it -- the
39
+ * daemon files no human-facing row of its own.
40
+ * An episode ends when the worktree is clean (the record is cleared and the
41
+ * observation auto-resolved -- the condition they name is gone -- and a respawn
42
+ * still queued is withdrawn) or the focus is no longer armed (the record, if any,
43
+ * stands: the work is still uncommitted).
44
+ *
45
+ * WHAT IT NEVER DOES. Commit, discard or stash the work itself (it is the team's,
46
+ * and an operator stop hands the worktree to the operator: an operator-stopped
47
+ * focus is not armed here); act while a team is live; act on a read-only focus.
48
+ *
49
+ * In memory: a restart re-arms one respawn per dirty worktree, and the per-focus
50
+ * observation dedupe holds across it. Best-effort: every failure is logged and
51
+ * the next poll retries.
52
+ *
53
+ * @module focus/uncommitted-work-backstop
54
+ */
55
+ import { createHash } from 'node:crypto';
56
+ import { DELIVERY_STATUS, ESCALATION_DISPOSITIONS, ESCALATION_REASONS } from '@telora/daemon-core';
57
+ import { focusPipelineModelForPass } from '../config/model-resolution.js';
58
+ import { MERGE_REFUSED_DIRTY_ESCALATION_KIND } from '../queries/escalations/escalations.js';
59
+ import { NO_HUMAN_ACT } from '../queries/escalations/filing-observation.js';
60
+ import { clearStrandedWork, recordStrandedWork } from '../delivery/advance-hold.js';
61
+ import { createLogger } from '../log/daemon-log.js';
62
+ const log = createLogger({ module: 'focus-poller' });
63
+ /** How long the state must stand, teamless, before the pass acts (and again before it records). */
64
+ export const UNCOMMITTED_WORK_GRACE_MS = 2 * 60_000;
65
+ /** How long a queued respawn may wait to spawn (cooldown, a parked guard) before the record is filed anyway. */
66
+ export const UNCOMMITTED_WORK_RESPAWN_WAIT_MS = 30 * 60_000;
67
+ /** At most this many paths are named in the respawn prompt and the record; the count carries the rest. */
68
+ export const UNCOMMITTED_WORK_PATH_CAP = 20;
69
+ const episodes = new Map();
70
+ /** Test seam: forget every episode. */
71
+ export function __resetUncommittedWorkBackstopForTests() {
72
+ episodes.clear();
73
+ }
74
+ function namedPaths(paths) {
75
+ const shown = paths.slice(0, UNCOMMITTED_WORK_PATH_CAP).map((p) => `- ${p}`);
76
+ return paths.length > UNCOMMITTED_WORK_PATH_CAP ? [...shown, `- ... and ${paths.length - UNCOMMITTED_WORK_PATH_CAP} more`] : shown;
77
+ }
78
+ /** The respawned team's directive: what is uncommitted and what finishes it. Pure. */
79
+ export function buildUncommittedWorkRespawnMessage(focusName, paths) {
80
+ return [
81
+ `## Finish the uncommitted work in "${focusName}"`,
82
+ '',
83
+ `The previous team on this focus ended with ${paths.length} uncommitted path(s) in the focus worktree:`,
84
+ ...namedPaths(paths),
85
+ '',
86
+ 'Nothing else moves this focus while they stay uncommitted: the gate judges commits, so it never sees them, and '
87
+ + 'merge-back skips a dirty worktree. Inspect them, commit what is this focus\'s work -- each commit carrying the '
88
+ + '`Telora-Delivery: <deliveryId>` trailer of the delivery it belongs to -- and discard what is not.',
89
+ '',
90
+ 'Do NOT replay the gate by hand: the daemon verifies the new HEAD once you commit.',
91
+ ].join('\n');
92
+ }
93
+ function armed(focus) {
94
+ return !!focus.assigned_agent_role_id && !focus.operator_stopped_at && focus.read_only !== true;
95
+ }
96
+ /**
97
+ * End a focus's episode. When it ended because the worktree is CLEAN, a recorded
98
+ * one has its record closed; any other end leaves the record standing. Never throws.
99
+ */
100
+ async function endEpisode(focus, deps, clean) {
101
+ const episode = episodes.get(focus.focus_id);
102
+ episodes.delete(focus.focus_id);
103
+ if (clean && episode && deps.withdrawCodingRespawn(focus.focus_id)) {
104
+ log.info(`[uncommitted-work] "${focus.focus_name}": the worktree is clean -- withdrew the queued respawn`);
105
+ }
106
+ if (!clean || !episode?.recorded)
107
+ return null;
108
+ try {
109
+ return { kind: 'cleared', resolved: await deps.resolveRecord(focus.focus_id) };
110
+ }
111
+ catch (err) {
112
+ log.warn(`[uncommitted-work] "${focus.focus_name}": closing the record failed: ${err.message}`);
113
+ return null;
114
+ }
115
+ }
116
+ /** The pass for one focus (module header). Never throws. */
117
+ export async function checkUncommittedWork(focus, organizationId, deps) {
118
+ if (!armed(focus))
119
+ return endEpisode(focus, deps, false);
120
+ const worktreePath = deps.resolveWorktreePath(focus.focus_id);
121
+ if (!worktreePath)
122
+ return endEpisode(focus, deps, false);
123
+ const now = deps.now();
124
+ const prior = episodes.get(focus.focus_id);
125
+ if (deps.hasLiveTeam(focus.focus_id)) {
126
+ // The team owns its worktree. Its teamless stretch starts over when it is gone.
127
+ if (prior)
128
+ prior.teamlessSince = Number.POSITIVE_INFINITY;
129
+ return null;
130
+ }
131
+ const paths = [...deps.listUncommittedPaths(worktreePath)].sort();
132
+ if (paths.length === 0)
133
+ return endEpisode(focus, deps, true);
134
+ const episode = prior ?? { fingerprint: paths.join('\n'), teamlessSince: now, respawnedAt: null, recorded: false };
135
+ if (episode.teamlessSince === Number.POSITIVE_INFINITY)
136
+ episode.teamlessSince = now;
137
+ episode.fingerprint = paths.join('\n');
138
+ episodes.set(focus.focus_id, episode);
139
+ if (now - episode.teamlessSince < UNCOMMITTED_WORK_GRACE_MS)
140
+ return null;
141
+ if (episode.respawnedAt === null) {
142
+ episode.respawnedAt = now;
143
+ episode.teamlessSince = now;
144
+ const queued = deps.queueCodingRespawn({
145
+ focusId: focus.focus_id,
146
+ message: buildUncommittedWorkRespawnMessage(focus.focus_name, paths),
147
+ contentHash: createHash('sha256').update(`uncommitted-work\n${focus.focus_id}\n${episode.fingerprint}`).digest('hex'),
148
+ focusOverrideModel: focusPipelineModelForPass(focus.pipeline_config, 'coding'),
149
+ });
150
+ log.warn(`[uncommitted-work] "${focus.focus_name}" is armed with NO live team and ${paths.length} uncommitted path(s) in its ` +
151
+ `worktree (${paths.slice(0, 5).join(', ')}${paths.length > 5 ? ', ...' : ''}) -- ` +
152
+ (queued ? 'queued a coding respawn to finish and commit them' : 'a spawn directive is already queued; it will spawn the team'));
153
+ return { kind: 'respawned', paths, queued };
154
+ }
155
+ if (episode.recorded)
156
+ return null;
157
+ // The respawn is still queued (a cooldown, a parked guard): give it its bounded wait.
158
+ if (deps.hasQueuedSpawn(focus.focus_id) && now - episode.respawnedAt < UNCOMMITTED_WORK_RESPAWN_WAIT_MS)
159
+ return null;
160
+ episode.recorded = true;
161
+ try {
162
+ await deps.recordUncommittedWork({ organizationId, focusId: focus.focus_id, focusName: focus.focus_name, worktreePath, paths });
163
+ }
164
+ catch (err) {
165
+ episode.recorded = false;
166
+ log.warn(`[uncommitted-work] "${focus.focus_name}": recording the uncommitted work failed (retried): ${err.message}`);
167
+ return null;
168
+ }
169
+ log.warn(`[uncommitted-work] "${focus.focus_name}": the respawn did not finish it -- still ${paths.length} uncommitted path(s) ` +
170
+ 'and no live team; recorded it, naming them, on the focus deliveries (the dashboard Waiting-on line) and as a worktree-dirty observation');
171
+ return { kind: 'recorded', paths };
172
+ }
173
+ /** Statuses whose rows never carry the stranded-work record: settled, or intent the team cannot see. */
174
+ const NO_RECORD_STATUSES = new Set([
175
+ DELIVERY_STATUS.DONE, DELIVERY_STATUS.CANCELLED, DELIVERY_STATUS.DRAFT, DELIVERY_STATUS.PLANNING,
176
+ ]);
177
+ /**
178
+ * Write the OPERATOR-VISIBLE record (module header, step 2) on every cycling
179
+ * delivery of the focus: gate_state.advanceHold, reason worktree_uncommitted_no_team,
180
+ * naming the worktree and the paths. Returns how many rows carry it. Throws what a
181
+ * read or write throws (the pass retries).
182
+ */
183
+ export async function recordStrandedWorkOnFocus(record, deps) {
184
+ const rows = (await deps.getFocusDeliveries(record.focusId)).filter((d) => !NO_RECORD_STATUSES.has(d.executionStatus ?? ''));
185
+ for (const d of rows) {
186
+ await recordStrandedWork(d.id, { worktreePath: record.worktreePath, paths: record.paths }, {
187
+ io: deps.gateRowIo, now: () => new Date(deps.now()).toISOString(),
188
+ });
189
+ }
190
+ return rows.length;
191
+ }
192
+ /** Clear the record from every delivery of the focus that carries it. Throws what a read or write throws. */
193
+ export async function clearStrandedWorkOnFocus(focusId, deps) {
194
+ for (const d of await deps.getFocusDeliveries(focusId)) {
195
+ await clearStrandedWork(d.id, { io: deps.gateRowIo });
196
+ }
197
+ }
198
+ /**
199
+ * File the record (module header, step 2): ONE agent-resolvable worktree-dirty
200
+ * observation naming the uncommitted paths, unless a sibling worktree-dirty row
201
+ * is already open for the focus. Committing or discarding the work is git work an
202
+ * agent session can do, so it proposes no human act. A failed dedupe read files
203
+ * (a genuine first record is not swallowed); a failed create throws to the caller.
204
+ */
205
+ export async function fileUncommittedWorkRecord(record, deps) {
206
+ let alreadyOpen = false;
207
+ try {
208
+ alreadyOpen = await deps.hasOpenWorktreeDirtyEscalation(record.focusId);
209
+ }
210
+ catch (err) {
211
+ log.warn(`[uncommitted-work] open worktree-dirty lookup failed for "${record.focusName}", filing: ${err.message}`);
212
+ }
213
+ if (alreadyOpen)
214
+ return;
215
+ await deps.createEscalation({
216
+ organizationId: record.organizationId,
217
+ issueId: null,
218
+ reasonType: ESCALATION_REASONS.ERROR_ENCOUNTERED,
219
+ disposition: ESCALATION_DISPOSITIONS.NEEDS_OPERATOR,
220
+ humanAct: NO_HUMAN_ACT,
221
+ escalationKind: MERGE_REFUSED_DIRTY_ESCALATION_KIND,
222
+ anchor: { focusId: record.focusId },
223
+ description: `Uncommitted work is stranded in the worktree of armed focus "${record.focusName}": no team is live, and a ` +
224
+ `respawn to finish it did not.\n\n**Worktree:** ${record.worktreePath}\n**Uncommitted paths (${record.paths.length}):**\n` +
225
+ namedPaths(record.paths).join('\n') +
226
+ '\n\nUntil they are committed or discarded the gate never sees them, merge-back skips the worktree, and the focus HEAD does not move.',
227
+ whatWasTried: 'The uncommitted-work backstop found the focus armed and teamless with these paths uncommitted, and queued a coding ' +
228
+ 'respawn of the focus\'s lineage to commit them; the worktree is still dirty with no live team.',
229
+ helpNeeded: `Inspect ${record.worktreePath}: commit what is the focus's work (with the Telora-Delivery trailer of the delivery it ` +
230
+ 'belongs to) and discard what is not. This record closes itself once the worktree is clean.',
231
+ });
232
+ }
233
+ /**
234
+ * The backstop pass over one product's active focuses (module header). Returns
235
+ * what it did per focus it acted on. Never throws.
236
+ */
237
+ export async function recoverUncommittedWork(config, deps) {
238
+ const acted = [];
239
+ let focuses;
240
+ try {
241
+ focuses = await deps.getActiveFocuses(config.organizationId, config.productId);
242
+ }
243
+ catch (err) {
244
+ log.warn(`[uncommitted-work] pass: active focuses unreadable (retried next poll): ${err.message}`);
245
+ return acted;
246
+ }
247
+ for (const focus of focuses) {
248
+ try {
249
+ const action = await checkUncommittedWork(focus, config.organizationId, deps);
250
+ if (action)
251
+ acted.push({ focusId: focus.focus_id, action });
252
+ }
253
+ catch (err) {
254
+ log.warn(`[uncommitted-work] "${focus.focus_name}": check failed (retried next poll): ${err.message}`);
255
+ }
256
+ }
257
+ return acted;
258
+ }
259
+ //# sourceMappingURL=uncommitted-work-backstop.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"uncommitted-work-backstop.js","sourceRoot":"","sources":["../../src/focus/uncommitted-work-backstop.ts"],"names":[],"mappings":"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"}
@@ -11,7 +11,10 @@
11
11
  * verdict at its head and nothing to run (no review window, no owed work, no
12
12
  * live team) gets the rework Bug for it (focus/failed-head-wedge.ts). It runs
13
13
  * after the release pass, so a held exit the release routes this poll is
14
- * never read as a wedge.
14
+ * never read as a wedge;
15
+ * 4. recoverUncommittedWork: an armed focus left with uncommitted work in its
16
+ * worktree and no live team gets one coding respawn to finish it, then a
17
+ * worktree-dirty record naming the paths (focus/uncommitted-work-backstop.ts).
15
18
  *
16
19
  * The release pass is the ONLY production path that routes a held review exit: if
17
20
  * it stops running, every commit-verdict hold waits until its overdue observation
@@ -31,6 +34,7 @@ export interface VerifyRoutingPasses {
31
34
  checkVerifyDeliveriesForOpenIssues: (config: DaemonConfig) => Promise<void>;
32
35
  releaseCommitVerdictHolds: (config: DaemonConfig) => Promise<unknown>;
33
36
  fileReworkForFailedHeadWedges: (config: DaemonConfig) => Promise<unknown>;
37
+ recoverUncommittedWork: (config: DaemonConfig) => Promise<unknown>;
34
38
  }
35
39
  /** Run the verify-routing phase for one product-scoped config, over the given passes. */
36
40
  export declare function runVerifyRoutingPasses(config: DaemonConfig, passes: VerifyRoutingPasses): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"verify-routing-passes.d.ts","sourceRoot":"","sources":["../../src/focus/verify-routing-passes.ts"],"names":[],"mappings":"AAMA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEtD,2CAA2C;AAC3C,MAAM,WAAW,mBAAmB;IAClC,kCAAkC,EAAE,CAAC,MAAM,EAAE,YAAY,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5E,yBAAyB,EAAE,CAAC,MAAM,EAAE,YAAY,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IACtE,6BAA6B,EAAE,CAAC,MAAM,EAAE,YAAY,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;CAC3E;AAED,yFAAyF;AACzF,wBAAsB,sBAAsB,CAC1C,MAAM,EAAE,YAAY,EACpB,MAAM,EAAE,mBAAmB,GAC1B,OAAO,CAAC,IAAI,CAAC,CAIf"}
1
+ {"version":3,"file":"verify-routing-passes.d.ts","sourceRoot":"","sources":["../../src/focus/verify-routing-passes.ts"],"names":[],"mappings":"AAMA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEtD,2CAA2C;AAC3C,MAAM,WAAW,mBAAmB;IAClC,kCAAkC,EAAE,CAAC,MAAM,EAAE,YAAY,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5E,yBAAyB,EAAE,CAAC,MAAM,EAAE,YAAY,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IACtE,6BAA6B,EAAE,CAAC,MAAM,EAAE,YAAY,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAC1E,sBAAsB,EAAE,CAAC,MAAM,EAAE,YAAY,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;CACpE;AAED,yFAAyF;AACzF,wBAAsB,sBAAsB,CAC1C,MAAM,EAAE,YAAY,EACpB,MAAM,EAAE,mBAAmB,GAC1B,OAAO,CAAC,IAAI,CAAC,CAKf"}
@@ -8,5 +8,6 @@ export async function runVerifyRoutingPasses(config, passes) {
8
8
  await passes.checkVerifyDeliveriesForOpenIssues(config);
9
9
  await passes.releaseCommitVerdictHolds(config);
10
10
  await passes.fileReworkForFailedHeadWedges(config);
11
+ await passes.recoverUncommittedWork(config);
11
12
  }
12
13
  //# sourceMappingURL=verify-routing-passes.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"verify-routing-passes.js","sourceRoot":"","sources":["../../src/focus/verify-routing-passes.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,0EAA0E;AAC1E,6DAA6D;AAC7D,0EAA0E;AAC1E,gBAAgB;AAuChB,yFAAyF;AACzF,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,MAAoB,EACpB,MAA2B;IAE3B,MAAM,MAAM,CAAC,kCAAkC,CAAC,MAAM,CAAC,CAAC;IACxD,MAAM,MAAM,CAAC,yBAAyB,CAAC,MAAM,CAAC,CAAC;IAC/C,MAAM,MAAM,CAAC,6BAA6B,CAAC,MAAM,CAAC,CAAC;AACrD,CAAC"}
1
+ {"version":3,"file":"verify-routing-passes.js","sourceRoot":"","sources":["../../src/focus/verify-routing-passes.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,0EAA0E;AAC1E,6DAA6D;AAC7D,0EAA0E;AAC1E,gBAAgB;AA2ChB,yFAAyF;AACzF,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,MAAoB,EACpB,MAA2B;IAE3B,MAAM,MAAM,CAAC,kCAAkC,CAAC,MAAM,CAAC,CAAC;IACxD,MAAM,MAAM,CAAC,yBAAyB,CAAC,MAAM,CAAC,CAAC;IAC/C,MAAM,MAAM,CAAC,6BAA6B,CAAC,MAAM,CAAC,CAAC;IACnD,MAAM,MAAM,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAC;AAC9C,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/git/index.ts"],"names":[],"mappings":"AAiBA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC;AAChC,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,yBAAyB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/git/index.ts"],"names":[],"mappings":"AAkBA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC;AAChC,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,yBAAyB,CAAC"}
package/dist/git/index.js CHANGED
@@ -1,5 +1,6 @@
1
1
  // PINNED-BY-BEGIN (generated by gen:pinned-by -- do not hand-edit; checked by lint:pinned-by)
2
- // Pinned by: packages/daemon/src/completion/team-exit/teardown-merge-gate.test.ts,
2
+ // Pinned by: packages/daemon/src/completion/completion-event/unfinished-work.test.ts,
3
+ // packages/daemon/src/completion/team-exit/teardown-merge-gate.test.ts,
3
4
  // packages/daemon/src/completion/team-teardown/mid-flight-merge-gate.test.ts,
4
5
  // packages/daemon/src/git/genesis-aurora-shell-smoke.test.ts, packages/daemon/src/git/git-fetch.test.ts,
5
6
  // packages/daemon/src/git/git-genesis.test.ts, packages/daemon/src/git/git-state-detector.test.ts,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/git/index.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,mFAAmF;AACnF,gFAAgF;AAChF,2GAA2G;AAC3G,qGAAqG;AACrG,sDAAsD;AACtD,0GAA0G;AAC1G,iEAAiE;AACjE,2GAA2G;AAC3G,qFAAqF;AACrF,oFAAoF;AACpF,iEAAiE;AACjE,oEAAoE;AACpE,8DAA8D;AAC9D,yEAAyE;AACzE,gBAAgB;AAEhB;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC;AAChC,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,yBAAyB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/git/index.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,sFAAsF;AACtF,0EAA0E;AAC1E,gFAAgF;AAChF,2GAA2G;AAC3G,qGAAqG;AACrG,sDAAsD;AACtD,0GAA0G;AAC1G,iEAAiE;AACjE,2GAA2G;AAC3G,qFAAqF;AACrF,oFAAoF;AACpF,iEAAiE;AACjE,oEAAoE;AACpE,8DAA8D;AAC9D,yEAAyE;AACzE,gBAAgB;AAEhB;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,cAAc,YAAY,CAAC;AAC3B,cAAc,iBAAiB,CAAC;AAChC,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,uBAAuB,CAAC;AACtC,cAAc,kBAAkB,CAAC;AACjC,cAAc,qBAAqB,CAAC;AACpC,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,yBAAyB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"review-window-commits.d.ts","sourceRoot":"","sources":["../../src/git/review-window-commits.ts"],"names":[],"mappings":"AAmCA,OAAO,EAA8C,KAAK,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAE5G,6EAA6E;AAC7E,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,WAAW,EAAE,kBAAkB,CAAC;CAC1C;AAED,6FAA6F;AAC7F,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,qEAAqE;IACrE,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B;AAED,wCAAwC;AACxC,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,GAAG,EAAE,SAAS,kBAAkB,EAAE,CAAC;IAC5C,QAAQ,CAAC,OAAO,EAAE,SAAS,aAAa,EAAE,CAAC;CAC5C;AAED;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB,MAAM,CAAC;AAE5C;;;;;GAKG;AACH,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,SAAS,kBAAkB,EAAE,EACtC,cAAc,EAAE,WAAW,CAAC,MAAM,CAAC,GAClC,qBAAqB,CAWvB;AAMD;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,kBAAkB,EAAE,CAYzE;AAED;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CACrC,YAAY,EAAE,MAAM,EACpB,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,MAAM,EACX,GAAG,GAAE,MAAiC,GACrC,kBAAkB,EAAE,GAAG,IAAI,CAqB7B;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI,CAUtG;AAoCD,oFAAoF;AACpF,MAAM,WAAW,cAAc;IAC7B,mFAAmF;IACnF,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,uFAAuF;IACvF,QAAQ,CAAC,IAAI,EAAE,MAAM,MAAM,CAAC;CAC7B;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CACjC,YAAY,EAAE,MAAM,EACpB,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,SAAS,kBAAkB,EAAE,GACjC,cAAc,GAAG,IAAI,CAcvB;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAO5D;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC9B,YAAY,EAAE,MAAM,EACpB,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,MAAM,GACV,MAAM,EAAE,GAAG,IAAI,CAYjB"}
1
+ {"version":3,"file":"review-window-commits.d.ts","sourceRoot":"","sources":["../../src/git/review-window-commits.ts"],"names":[],"mappings":"AAoCA,OAAO,EAA8C,KAAK,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAE5G,6EAA6E;AAC7E,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,WAAW,EAAE,kBAAkB,CAAC;CAC1C;AAED,6FAA6F;AAC7F,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,qEAAqE;IACrE,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B;AAED,wCAAwC;AACxC,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,GAAG,EAAE,SAAS,kBAAkB,EAAE,CAAC;IAC5C,QAAQ,CAAC,OAAO,EAAE,SAAS,aAAa,EAAE,CAAC;CAC5C;AAED;;;;;GAKG;AACH,eAAO,MAAM,wBAAwB,MAAM,CAAC;AAE5C;;;;;GAKG;AACH,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,SAAS,kBAAkB,EAAE,EACtC,cAAc,EAAE,WAAW,CAAC,MAAM,CAAC,GAClC,qBAAqB,CAWvB;AAMD;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,kBAAkB,EAAE,CAYzE;AAED;;;;;;;GAOG;AACH,wBAAgB,uBAAuB,CACrC,YAAY,EAAE,MAAM,EACpB,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,MAAM,EACX,GAAG,GAAE,MAAiC,GACrC,kBAAkB,EAAE,GAAG,IAAI,CAqB7B;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,IAAI,CAUtG;AAoCD,oFAAoF;AACpF,MAAM,WAAW,cAAc;IAC7B,mFAAmF;IACnF,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,uFAAuF;IACvF,QAAQ,CAAC,IAAI,EAAE,MAAM,MAAM,CAAC;CAC7B;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CACjC,YAAY,EAAE,MAAM,EACpB,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,SAAS,kBAAkB,EAAE,GACjC,cAAc,GAAG,IAAI,CAcvB;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAO5D;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC9B,YAAY,EAAE,MAAM,EACpB,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,MAAM,GACV,MAAM,EAAE,GAAG,IAAI,CAYjB"}
@@ -2,6 +2,7 @@
2
2
  // Pinned by: packages/daemon/src/completion/review-exit/review-exit-foreign-findings.test.ts,
3
3
  // packages/daemon/src/completion/review-exit/review-exit-foreign-focus-regression.test.ts,
4
4
  // packages/daemon/src/git/focus-own-delta.test.ts, packages/daemon/src/git/review-window-commits.test.ts,
5
+ // packages/daemon/src/integration/red-head-integration-merge-rework-regression.test.ts,
5
6
  // packages/daemon/src/verify/attribution/rework-attribution.test.ts
6
7
  // PINNED-BY-END
7
8
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"review-window-commits.js","sourceRoot":"","sources":["../../src/git/review-window-commits.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"review-window-commits.js","sourceRoot":"","sources":["../../src/git/review-window-commits.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/git/types.ts"],"names":[],"mappings":"AAgCA,OAAO,EAGL,KAAK,SAAS,EACf,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEtE,MAAM,MAAM,aAAa,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,eAAe,CAAC,CAAC;AAElE,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,kFAAkF;IAClF,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,uEAAuE;IACvE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,+DAA+D;IAC/D,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,wEAAwE;IACxE,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,6EAA6E;IAC7E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oFAAoF;IACpF,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;;;;OAOG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED,MAAM,WAAW,iBAAiB;IAChC,iEAAiE;IACjE,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;GAOG;AACH,wBAAgB,UAAU,CACxB,IAAI,EAAE,MAAM,EAAE,EACd,GAAG,EAAE,MAAM,EACX,OAAO,CAAC,EAAE,iBAAiB,GAC1B,SAAS,CAGX;AAED;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,YAAY,GAAG,MAAM,CAEjE"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/git/types.ts"],"names":[],"mappings":"AAaA,OAAO,EAGL,KAAK,SAAS,EACf,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEtE,MAAM,MAAM,aAAa,GAAG,cAAc,CAAC,IAAI,CAAC,CAAC,eAAe,CAAC,CAAC;AAElE,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,kFAAkF;IAClF,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,uEAAuE;IACvE,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,+DAA+D;IAC/D,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,wEAAwE;IACxE,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,6EAA6E;IAC7E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,oFAAoF;IACpF,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;;;;;OAOG;IACH,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB;AAED,MAAM,WAAW,iBAAiB;IAChC,iEAAiE;IACjE,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;GAOG;AACH,wBAAgB,UAAU,CACxB,IAAI,EAAE,MAAM,EAAE,EACd,GAAG,EAAE,MAAM,EACX,OAAO,CAAC,EAAE,iBAAiB,GAC1B,SAAS,CAGX;AAED;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,YAAY,GAAG,MAAM,CAEjE"}
package/dist/git/types.js CHANGED
@@ -1,24 +1,5 @@
1
1
  // PINNED-BY-BEGIN (generated by gen:pinned-by -- do not hand-edit; checked by lint:pinned-by)
2
- // Pinned by: packages/daemon/src/completion/review-exit-holds/review-exit-verdict-gate.test.ts,
3
- // packages/daemon/src/completion/team-progress/team-progress-measure.test.ts,
4
- // packages/daemon/src/composition/subsystem-contexts.test.ts,
5
- // packages/daemon/src/delivery/advance-hold.test.ts,
6
- // packages/daemon/src/git/focus-integration-sync.test.ts,
7
- // packages/daemon/src/migrations/concurrent-claim-regression.test.ts,
8
- // packages/daemon/src/migrations/migration-held-set.test.ts,
9
- // packages/daemon/src/qa/qa-focus-changes.test.ts,
10
- // packages/daemon/src/spawn/integration-reconcile-spawn.test.ts,
11
- // packages/daemon/src/supervision/team-stall-reapers.test.ts,
12
- // packages/daemon/src/tower/focus-landed.test.ts,
13
- // packages/daemon/src/verify/attribution/verification-attribution.test.ts,
14
- // packages/daemon/src/verify/attribution/verification-baseline-run.test.ts,
15
- // packages/daemon/src/verify/deterministic-gate/verification-checkout.test.ts,
16
- // packages/daemon/src/verify/deterministic-gate/verify-checkout-judged-installs.test.ts,
17
- // packages/daemon/src/verify/deterministic-gate/verify-unprovisioned-worktree.test.ts,
18
- // packages/daemon/src/verify/engine/verification-commit-sharing.test.ts,
19
- // packages/daemon/src/verify/gate-config/verification-run-config-source.test.ts,
20
- // packages/daemon/src/worktree/install-inputs.test.ts,
21
- // packages/daemon/src/worktree/worktree-package-provisioning.test.ts
2
+ // Pinned by: 21 tests -- run: npm run gen:pinned-by -- --list packages/daemon/src/git/types.ts
22
3
  // PINNED-BY-END
23
4
  /**
24
5
  * Shared types and utilities for the git subsystem.
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/git/types.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,gGAAgG;AAChG,gFAAgF;AAChF,gEAAgE;AAChE,uDAAuD;AACvD,4DAA4D;AAC5D,wEAAwE;AACxE,+DAA+D;AAC/D,qDAAqD;AACrD,mEAAmE;AACnE,gEAAgE;AAChE,oDAAoD;AACpD,6EAA6E;AAC7E,8EAA8E;AAC9E,iFAAiF;AACjF,2FAA2F;AAC3F,yFAAyF;AACzF,2EAA2E;AAC3E,mFAAmF;AACnF,yDAAyD;AACzD,uEAAuE;AACvE,gBAAgB;AAEhB;;;;;;GAMG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EACL,MAAM,EACN,sBAAsB,GAEvB,MAAM,qBAAqB,CAAC;AAoC7B;;;;;;;GAOG;AACH,MAAM,UAAU,UAAU,CACxB,IAAc,EACd,GAAW,EACX,OAA2B;IAE3B,MAAM,SAAS,GAAG,OAAO,EAAE,SAAS,IAAI,sBAAsB,CAAC;IAC/D,OAAO,MAAM,CAAC,IAAI,EAAE,GAAG,EAAE,SAAS,CAAC,CAAC;AACtC,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,oBAAoB,CAAC,MAAoB;IACvD,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,SAAS,EAAE,gBAAgB,CAAC,CAAC;AAC5D,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/git/types.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,+FAA+F;AAC/F,gBAAgB;AAEhB;;;;;;GAMG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EACL,MAAM,EACN,sBAAsB,GAEvB,MAAM,qBAAqB,CAAC;AAoC7B;;;;;;;GAOG;AACH,MAAM,UAAU,UAAU,CACxB,IAAc,EACd,GAAW,EACX,OAA2B;IAE3B,MAAM,SAAS,GAAG,OAAO,EAAE,SAAS,IAAI,sBAAsB,CAAC;IAC/D,OAAO,MAAM,CAAC,IAAI,EAAE,GAAG,EAAE,SAAS,CAAC,CAAC;AACtC,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,oBAAoB,CAAC,MAAoB;IACvD,OAAO,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,SAAS,EAAE,gBAAgB,CAAC,CAAC;AAC5D,CAAC"}
@@ -7,8 +7,12 @@
7
7
  * product's QA target, so the prompt asks for UI-facing cases only, each tied
8
8
  * to one acceptance criterion quoted verbatim, with a path relative to the QA
9
9
  * target's base URL -- or an explicit no-UI-surface marker. On a re-entry after
10
- * a QA fail it lists the cases the human failed and REQUIRES a retest case for
11
- * each one whose criterion still applies. Both rules are checked
10
+ * a QA fail it lists EVERY case of the previous packet with the result a
11
+ * person recorded for it (failed, passed, not run) and REQUIRES, for each one
12
+ * whose criterion still applies, a case that quotes that criterion and names
13
+ * the previous case with priorCaseId. The author names the case and nothing
14
+ * more: what the carried case is (a retest, previously passed, needs a run) is
15
+ * marked from the recorded result. Both rules are checked
12
16
  * (qa/qa-author-faithfulness.ts, and the edge on the write); an answer that
13
17
  * breaks them is re-asked ONCE with buildQaAuthorCorrection appended -- the
14
18
  * same text whatever engine runs it.
@@ -20,7 +24,7 @@
20
24
  * (one fenced json block, last in the answer) is parsed by
21
25
  * qa/qa-author-output.ts.
22
26
  */
23
- import type { QaPacketCandidate } from '../queries/qa-packets/qa-packets.js';
27
+ import { type QaPacketCandidate } from '../queries/qa-packets/qa-packets.js';
24
28
  import { type QaAuthorMode } from '../types/qa-packet.js';
25
29
  /** The system prompt every QA-author call runs under (a resumed session may keep its recorded one). */
26
30
  export declare const QA_AUTHOR_SYSTEM_PROMPT: string;
@@ -1 +1 @@
1
- {"version":3,"file":"qa-author-section.d.ts","sourceRoot":"","sources":["../../src/prompt-sections/qa-author-section.ts"],"names":[],"mappings":"AAKA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AAC7E,OAAO,EAAkB,KAAK,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAE1E,uGAAuG;AACvG,eAAO,MAAM,uBAAuB,QAGU,CAAC;AAE/C,iFAAiF;AACjF,eAAO,MAAM,iBAAiB,8CAA8C,CAAC;AAE7E,qFAAqF;AACrF,MAAM,WAAW,oBAAoB;IACnC,mEAAmE;IACnE,SAAS,EAAE,MAAM,CAAC;IAClB,uDAAuD;IACvD,IAAI,EAAE,MAAM,CAAC;IACb,2CAA2C;IAC3C,SAAS,EAAE,OAAO,CAAC;IACnB,yDAAyD;IACzD,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;CACrB;AA4ID,8DAA8D;AAC9D,eAAO,MAAM,4BAA4B,wCAAwC,CAAC;AAElF;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,UAAU,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,CAS7E;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CACjC,SAAS,EAAE,iBAAiB,EAC5B,IAAI,EAAE,YAAY,EAClB,WAAW,EAAE,MAAM,EACnB,KAAK,GAAE,oBAAoB,GAAG,IAAW,GACxC,MAAM,CAkBR"}
1
+ {"version":3,"file":"qa-author-section.d.ts","sourceRoot":"","sources":["../../src/prompt-sections/qa-author-section.ts"],"names":[],"mappings":"AAKA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,OAAO,EAAmB,KAAK,iBAAiB,EAAE,MAAM,qCAAqC,CAAC;AAC9F,OAAO,EAAkC,KAAK,YAAY,EAAqB,MAAM,uBAAuB,CAAC;AAE7G,uGAAuG;AACvG,eAAO,MAAM,uBAAuB,QAGU,CAAC;AAE/C,iFAAiF;AACjF,eAAO,MAAM,iBAAiB,8CAA8C,CAAC;AAE7E,qFAAqF;AACrF,MAAM,WAAW,oBAAoB;IACnC,mEAAmE;IACnE,SAAS,EAAE,MAAM,CAAC;IAClB,uDAAuD;IACvD,IAAI,EAAE,MAAM,CAAC;IACb,2CAA2C;IAC3C,SAAS,EAAE,OAAO,CAAC;IACnB,yDAAyD;IACzD,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;CACrB;AAsJD,8DAA8D;AAC9D,eAAO,MAAM,4BAA4B,wCAAwC,CAAC;AAElF;;;;GAIG;AACH,wBAAgB,uBAAuB,CAAC,UAAU,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,CAU7E;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CACjC,SAAS,EAAE,iBAAiB,EAC5B,IAAI,EAAE,YAAY,EAClB,WAAW,EAAE,MAAM,EACnB,KAAK,GAAE,oBAAoB,GAAG,IAAW,GACxC,MAAM,CAkBR"}
@@ -2,7 +2,34 @@
2
2
  // Pinned by: packages/daemon/src/prompt-sections/qa-author-section.test.ts,
3
3
  // packages/daemon/src/qa/qa-author-unfaithful-answer.test.ts
4
4
  // PINNED-BY-END
5
- import { QA_AUTHOR_MODE } from '../types/qa-packet.js';
5
+ /**
6
+ * The QA-author prompt: what the pass that writes a focus's UI test packet is
7
+ * told, once its team has finished and the focus waits in its product's QA
8
+ * queue (qa/qa-author-pass.ts runs it).
9
+ *
10
+ * The packet is for a HUMAN who runs it by hand in a browser against the
11
+ * product's QA target, so the prompt asks for UI-facing cases only, each tied
12
+ * to one acceptance criterion quoted verbatim, with a path relative to the QA
13
+ * target's base URL -- or an explicit no-UI-surface marker. On a re-entry after
14
+ * a QA fail it lists EVERY case of the previous packet with the result a
15
+ * person recorded for it (failed, passed, not run) and REQUIRES, for each one
16
+ * whose criterion still applies, a case that quotes that criterion and names
17
+ * the previous case with priorCaseId. The author names the case and nothing
18
+ * more: what the carried case is (a retest, previously passed, needs a run) is
19
+ * marked from the recorded result. Both rules are checked
20
+ * (qa/qa-author-faithfulness.ts, and the edge on the write); an answer that
21
+ * breaks them is re-asked ONCE with buildQaAuthorCorrection appended -- the
22
+ * same text whatever engine runs it.
23
+ *
24
+ * ONE text whatever runs it: the prompt takes no engine, so the two modes
25
+ * differ only in what the model is told it already knows -- resumed (it holds
26
+ * the coding session that built the focus) or fresh (it is handed the delivery
27
+ * summaries, the commit log and the size-capped diff). The output contract
28
+ * (one fenced json block, last in the answer) is parsed by
29
+ * qa/qa-author-output.ts.
30
+ */
31
+ import { qaPreviousCases } from '../queries/qa-packets/qa-packets.js';
32
+ import { QA_AUTHOR_MODE, QA_CASE_RESULT } from '../types/qa-packet.js';
6
33
  /** The system prompt every QA-author call runs under (a resumed session may keep its recorded one). */
7
34
  export const QA_AUTHOR_SYSTEM_PROMPT = 'You write UI test packets: click-level test cases a person runs by hand in a web browser against a ' +
8
35
  'QA environment. You never edit files and never run a command that changes anything. You end every ' +
@@ -71,20 +98,29 @@ function criteriaLines(candidate) {
71
98
  }
72
99
  return lines;
73
100
  }
74
- function retestLines(candidate) {
75
- const failed = candidate.previousPacket?.failedCases ?? [];
76
- if (failed.length === 0)
101
+ /** The result a person recorded for a previous case, in the words the prompt lists it under. */
102
+ const PRIOR_RESULT_WORDS = {
103
+ [QA_CASE_RESULT.FAILED]: 'FAILED (re-test it)',
104
+ [QA_CASE_RESULT.PASSED]: 'passed',
105
+ [QA_CASE_RESULT.NOT_RUN]: 'not run',
106
+ };
107
+ /** On a re-entry: every case of the previous packet with its recorded result, and the duty to carry each forward. */
108
+ function previousCaseLines(candidate) {
109
+ const previous = qaPreviousCases(candidate);
110
+ if (previous.length === 0)
77
111
  return [];
78
112
  const lines = [
79
- '## Re-test: the previous QA cycle FAILED',
80
- 'A human failed these cases when they ran the previous packet. For each one whose criterion is still among the ' +
81
- 'criteria above, a case with `"retest": true` and `"retestOf": "<its id>"` that quotes THAT SAME criterion is ' +
82
- 'REQUIRED -- the packet is refused without it, and a retest quoting another criterion does not count. Drop one ' +
83
- 'only when its criterion is no longer listed above. While any of them still applies, the no-UI-surface marker is ' +
84
- 'refused too.',
113
+ '## Re-entry: the previous QA cycle FAILED -- carry its cases forward',
114
+ 'A person ran the previous packet and recorded a result for each case listed below. For EACH one whose criterion ' +
115
+ 'is still among the criteria above, a case that quotes THAT SAME criterion and names it with ' +
116
+ '`"priorCaseId": "<its id>"` is REQUIRED -- the packet is refused without it, and a case quoting another ' +
117
+ 'criterion does not count. You do NOT write the result or a retest flag: the packet is marked from the recorded ' +
118
+ 'results (failed -> retest, passed -> previously passed, not run -> needs a run). A case that carries a FAILED ' +
119
+ 'one must exercise what failed. Drop one only when its criterion is no longer listed above. While any of them ' +
120
+ 'still applies, the no-UI-surface marker is refused too.',
85
121
  ];
86
- for (const c of failed) {
87
- lines.push(`- \`${c.id}\` -- criterion: ${JSON.stringify(c.criterion)}; path \`${c.path}\`; ` +
122
+ for (const c of previous) {
123
+ lines.push(`- \`${c.id}\` -- ${PRIOR_RESULT_WORDS[c.result]} -- criterion: ${JSON.stringify(c.criterion)}; path \`${c.path}\`; ` +
88
124
  `steps: ${JSON.stringify(c.steps)}; expected: ${JSON.stringify(c.expected)}`);
89
125
  }
90
126
  return lines;
@@ -142,7 +178,7 @@ const OUTPUT_LINES = [
142
178
  '```json',
143
179
  '{"noUiSurface": true}',
144
180
  '```',
145
- 'Add `"retest": true, "retestOf": "<previous case id>"` only to a case that re-tests a previously failed one.',
181
+ 'Add `"priorCaseId": "<previous case id>"` only to a case that carries a case of the previous QA cycle forward.',
146
182
  ];
147
183
  /** The heading a corrective attempt's addition opens with. */
148
184
  export const QA_AUTHOR_CORRECTION_HEADING = '## YOUR PREVIOUS ANSWER WAS REFUSED';
@@ -158,7 +194,8 @@ export function buildQaAuthorCorrection(violations) {
158
194
  ...violations.map((v) => `- ${v}`),
159
195
  '',
160
196
  'Write the WHOLE packet again, following every rule above: copy each `criterion` exactly from the criteria ' +
161
- 'listed, and add every required retest case. End with exactly one fenced json block.',
197
+ 'listed, and carry forward every case of the previous QA cycle that still applies, naming it with ' +
198
+ '`priorCaseId`. End with exactly one fenced json block.',
162
199
  ].join('\n') + '\n';
163
200
  }
164
201
  /**
@@ -179,7 +216,7 @@ export function buildQaAuthorPrompt(candidate, mode, reviewedSha, fresh = null)
179
216
  intro,
180
217
  targetLines(candidate, reviewedSha),
181
218
  criteriaLines(candidate),
182
- retestLines(candidate),
219
+ previousCaseLines(candidate),
183
220
  knowledgeLines(candidate, mode, fresh),
184
221
  [...RULE_LINES],
185
222
  [...OUTPUT_LINES],
@@ -1 +1 @@
1
- {"version":3,"file":"qa-author-section.js","sourceRoot":"","sources":["../../src/prompt-sections/qa-author-section.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"qa-author-section.js","sourceRoot":"","sources":["../../src/prompt-sections/qa-author-section.ts"],"names":[],"mappings":"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"}