@telora/daemon 0.20.104 → 0.20.111

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 (84) hide show
  1. package/build-info.json +5 -3
  2. package/dist/audit-hooks.d.ts +23 -6
  3. package/dist/audit-hooks.d.ts.map +1 -1
  4. package/dist/audit-hooks.js +23 -6
  5. package/dist/audit-hooks.js.map +1 -1
  6. package/dist/completion/coverage-drift-state.d.ts +40 -0
  7. package/dist/completion/coverage-drift-state.d.ts.map +1 -0
  8. package/dist/completion/coverage-drift-state.js +46 -0
  9. package/dist/completion/coverage-drift-state.js.map +1 -0
  10. package/dist/completion/read-only-pristine.d.ts +15 -6
  11. package/dist/completion/read-only-pristine.d.ts.map +1 -1
  12. package/dist/completion/read-only-pristine.js +10 -7
  13. package/dist/completion/read-only-pristine.js.map +1 -1
  14. package/dist/completion/review-exit-phase.d.ts +1 -2
  15. package/dist/completion/review-exit-phase.d.ts.map +1 -1
  16. package/dist/completion/review-exit-phase.js +6 -20
  17. package/dist/completion/review-exit-phase.js.map +1 -1
  18. package/dist/completion/team-completion.d.ts.map +1 -1
  19. package/dist/completion/team-completion.js +20 -5
  20. package/dist/completion/team-completion.js.map +1 -1
  21. package/dist/focus-branch-identity.d.ts +62 -0
  22. package/dist/focus-branch-identity.d.ts.map +1 -0
  23. package/dist/focus-branch-identity.js +59 -0
  24. package/dist/focus-branch-identity.js.map +1 -0
  25. package/dist/focus-executor.d.ts +1 -4
  26. package/dist/focus-executor.d.ts.map +1 -1
  27. package/dist/focus-executor.js +41 -13
  28. package/dist/focus-executor.js.map +1 -1
  29. package/dist/focus-lifecycle.d.ts.map +1 -1
  30. package/dist/focus-lifecycle.js +7 -2
  31. package/dist/focus-lifecycle.js.map +1 -1
  32. package/dist/focus-provisioning.d.ts.map +1 -1
  33. package/dist/focus-provisioning.js +6 -2
  34. package/dist/focus-provisioning.js.map +1 -1
  35. package/dist/focus-respawn-guard.d.ts +10 -5
  36. package/dist/focus-respawn-guard.d.ts.map +1 -1
  37. package/dist/focus-respawn-guard.js +27 -14
  38. package/dist/focus-respawn-guard.js.map +1 -1
  39. package/dist/git/merge.d.ts.map +1 -1
  40. package/dist/git/merge.js +6 -1
  41. package/dist/git/merge.js.map +1 -1
  42. package/dist/listener.d.ts.map +1 -1
  43. package/dist/listener.js +2 -1
  44. package/dist/listener.js.map +1 -1
  45. package/dist/nexus/intake-spawn.js +1 -1
  46. package/dist/nexus/intake-spawn.js.map +1 -1
  47. package/dist/prompt-sections/execution-sections.d.ts.map +1 -1
  48. package/dist/prompt-sections/execution-sections.js +6 -0
  49. package/dist/prompt-sections/execution-sections.js.map +1 -1
  50. package/dist/queries/deliveries.d.ts +15 -0
  51. package/dist/queries/deliveries.d.ts.map +1 -1
  52. package/dist/queries/deliveries.js +2 -0
  53. package/dist/queries/deliveries.js.map +1 -1
  54. package/dist/queries/focuses.d.ts +9 -0
  55. package/dist/queries/focuses.d.ts.map +1 -1
  56. package/dist/queries/focuses.js +14 -0
  57. package/dist/queries/focuses.js.map +1 -1
  58. package/dist/queries/issues.d.ts +17 -0
  59. package/dist/queries/issues.d.ts.map +1 -1
  60. package/dist/queries/issues.js +19 -0
  61. package/dist/queries/issues.js.map +1 -1
  62. package/dist/queries/schemas.d.ts +4 -0
  63. package/dist/queries/schemas.d.ts.map +1 -1
  64. package/dist/queries/schemas.js +9 -0
  65. package/dist/queries/schemas.js.map +1 -1
  66. package/dist/review-spawn-coverage-guard.d.ts +23 -0
  67. package/dist/review-spawn-coverage-guard.d.ts.map +1 -0
  68. package/dist/review-spawn-coverage-guard.js +25 -0
  69. package/dist/review-spawn-coverage-guard.js.map +1 -0
  70. package/dist/spawn/spawn-decision.d.ts +8 -0
  71. package/dist/spawn/spawn-decision.d.ts.map +1 -1
  72. package/dist/spawn/spawn-decision.js.map +1 -1
  73. package/dist/templates/claude-md.d.ts +1 -1
  74. package/dist/templates/claude-md.d.ts.map +1 -1
  75. package/dist/templates/claude-md.js +22 -4
  76. package/dist/templates/claude-md.js.map +1 -1
  77. package/dist/worktree/scratch-guard.d.ts +31 -0
  78. package/dist/worktree/scratch-guard.d.ts.map +1 -1
  79. package/dist/worktree/scratch-guard.js +38 -0
  80. package/dist/worktree/scratch-guard.js.map +1 -1
  81. package/dist/worktree.d.ts.map +1 -1
  82. package/dist/worktree.js +8 -5
  83. package/dist/worktree.js.map +1 -1
  84. package/package.json +1 -1
@@ -0,0 +1,62 @@
1
+ /**
2
+ * Focus branch identity: derivation, pinning, and worktree-dir mapping.
3
+ *
4
+ * A focus's branch name was historically re-derived from the LIVE agent-role
5
+ * registry at every spawn (generateFocusBranchName below). A mid-flight role
6
+ * rename/reassignment therefore changed which branch the daemon's git plumbing
7
+ * addressed -- pointing spawns, review-coverage rev-parse, and worktree
8
+ * resolution at a branch that never existed (the 2026-08-06 Tinker Tailor
9
+ * incident).
10
+ *
11
+ * The identity is now PINNED: persisted (product_focuses.branch_name) the first
12
+ * time the focus branch is created, and read back thereafter. resolveFocusBranchName
13
+ * is the single decision point -- read the pinned value if present, otherwise
14
+ * derive it (and signal the caller to persist it, write-once).
15
+ *
16
+ * Extracted into its own light module (only a type import + sanitizeGitSegment,
17
+ * NO @telora/daemon-core / spawn graph) so every consumer -- spawn, lifecycle,
18
+ * provisioning, worktree resolution -- and the unit tests can use it without
19
+ * pulling in focus-executor.ts. focus-executor re-exports generateFocusBranchName
20
+ * for back-compat with existing importers.
21
+ */
22
+ import type { AgentRole } from './types.js';
23
+ /**
24
+ * Derive the focus branch name from the role, focus name, and focus id:
25
+ * `agent/<role>/<focus-name>-<short-id>`. This is the FIRST-CREATION deriver
26
+ * only -- once a focus has a pinned branch_name, consumers read that instead
27
+ * (see resolveFocusBranchName). The short-id is the immutable focus-id prefix.
28
+ */
29
+ export declare function generateFocusBranchName(role: AgentRole, focusName: string, focusId: string): string;
30
+ /**
31
+ * Map a focus branch name to its worktree directory name. The worktree path is
32
+ * `join(worktreeDir, branchName.replace('/', '-'))` (worktree.ts), so a pinned
33
+ * branch name pins the worktree directory too -- one stored value covers both.
34
+ */
35
+ export declare function focusWorktreeDirName(branchName: string): string;
36
+ /** Result of resolving a focus's branch identity. */
37
+ export interface ResolvedFocusBranch {
38
+ /** The branch name to use for all git plumbing this spawn. */
39
+ branchName: string;
40
+ /**
41
+ * True when `branchName` came from the persisted pin. False when it was
42
+ * freshly derived because no pin existed yet -- the caller should persist it
43
+ * (setFocusBranchName) so the identity is captured on first creation.
44
+ */
45
+ pinned: boolean;
46
+ }
47
+ /**
48
+ * Resolve a focus's branch identity, preferring the pinned value.
49
+ *
50
+ * If `pinnedBranch` is a non-empty string, it is returned verbatim (immune to
51
+ * role renames -- this is the whole point). Otherwise the name is derived from
52
+ * the current role and `pinned:false` signals the caller to persist it. A
53
+ * blank/whitespace pinned value is treated as absent (defensive against an
54
+ * empty column write).
55
+ */
56
+ export declare function resolveFocusBranchName(args: {
57
+ pinnedBranch: string | null | undefined;
58
+ role: AgentRole;
59
+ focusName: string;
60
+ focusId: string;
61
+ }): ResolvedFocusBranch;
62
+ //# sourceMappingURL=focus-branch-identity.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"focus-branch-identity.d.ts","sourceRoot":"","sources":["../src/focus-branch-identity.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAG5C;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAKnG;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAE/D;AAED,qDAAqD;AACrD,MAAM,WAAW,mBAAmB;IAClC,8DAA8D;IAC9D,UAAU,EAAE,MAAM,CAAC;IACnB;;;;OAIG;IACH,MAAM,EAAE,OAAO,CAAC;CACjB;AAED;;;;;;;;GAQG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE;IAC3C,YAAY,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACxC,IAAI,EAAE,SAAS,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;CACjB,GAAG,mBAAmB,CAMtB"}
@@ -0,0 +1,59 @@
1
+ /**
2
+ * Focus branch identity: derivation, pinning, and worktree-dir mapping.
3
+ *
4
+ * A focus's branch name was historically re-derived from the LIVE agent-role
5
+ * registry at every spawn (generateFocusBranchName below). A mid-flight role
6
+ * rename/reassignment therefore changed which branch the daemon's git plumbing
7
+ * addressed -- pointing spawns, review-coverage rev-parse, and worktree
8
+ * resolution at a branch that never existed (the 2026-08-06 Tinker Tailor
9
+ * incident).
10
+ *
11
+ * The identity is now PINNED: persisted (product_focuses.branch_name) the first
12
+ * time the focus branch is created, and read back thereafter. resolveFocusBranchName
13
+ * is the single decision point -- read the pinned value if present, otherwise
14
+ * derive it (and signal the caller to persist it, write-once).
15
+ *
16
+ * Extracted into its own light module (only a type import + sanitizeGitSegment,
17
+ * NO @telora/daemon-core / spawn graph) so every consumer -- spawn, lifecycle,
18
+ * provisioning, worktree resolution -- and the unit tests can use it without
19
+ * pulling in focus-executor.ts. focus-executor re-exports generateFocusBranchName
20
+ * for back-compat with existing importers.
21
+ */
22
+ import { sanitizeGitSegment } from './git/utils.js';
23
+ /**
24
+ * Derive the focus branch name from the role, focus name, and focus id:
25
+ * `agent/<role>/<focus-name>-<short-id>`. This is the FIRST-CREATION deriver
26
+ * only -- once a focus has a pinned branch_name, consumers read that instead
27
+ * (see resolveFocusBranchName). The short-id is the immutable focus-id prefix.
28
+ */
29
+ export function generateFocusBranchName(role, focusName, focusId) {
30
+ const sanitizedRoleName = sanitizeGitSegment(role.name);
31
+ const shortId = focusId.slice(0, 8);
32
+ const sanitizedFocusName = sanitizeGitSegment(focusName);
33
+ return `agent/${sanitizedRoleName}/${sanitizedFocusName}-${shortId}`;
34
+ }
35
+ /**
36
+ * Map a focus branch name to its worktree directory name. The worktree path is
37
+ * `join(worktreeDir, branchName.replace('/', '-'))` (worktree.ts), so a pinned
38
+ * branch name pins the worktree directory too -- one stored value covers both.
39
+ */
40
+ export function focusWorktreeDirName(branchName) {
41
+ return branchName.replace(/\//g, '-');
42
+ }
43
+ /**
44
+ * Resolve a focus's branch identity, preferring the pinned value.
45
+ *
46
+ * If `pinnedBranch` is a non-empty string, it is returned verbatim (immune to
47
+ * role renames -- this is the whole point). Otherwise the name is derived from
48
+ * the current role and `pinned:false` signals the caller to persist it. A
49
+ * blank/whitespace pinned value is treated as absent (defensive against an
50
+ * empty column write).
51
+ */
52
+ export function resolveFocusBranchName(args) {
53
+ const { pinnedBranch, role, focusName, focusId } = args;
54
+ if (typeof pinnedBranch === 'string' && pinnedBranch.trim().length > 0) {
55
+ return { branchName: pinnedBranch, pinned: true };
56
+ }
57
+ return { branchName: generateFocusBranchName(role, focusName, focusId), pinned: false };
58
+ }
59
+ //# sourceMappingURL=focus-branch-identity.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"focus-branch-identity.js","sourceRoot":"","sources":["../src/focus-branch-identity.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAGH,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAEpD;;;;;GAKG;AACH,MAAM,UAAU,uBAAuB,CAAC,IAAe,EAAE,SAAiB,EAAE,OAAe;IACzF,MAAM,iBAAiB,GAAG,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACxD,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IACpC,MAAM,kBAAkB,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;IACzD,OAAO,SAAS,iBAAiB,IAAI,kBAAkB,IAAI,OAAO,EAAE,CAAC;AACvE,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,oBAAoB,CAAC,UAAkB;IACrD,OAAO,UAAU,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;AACxC,CAAC;AAcD;;;;;;;;GAQG;AACH,MAAM,UAAU,sBAAsB,CAAC,IAKtC;IACC,MAAM,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,GAAG,IAAI,CAAC;IACxD,IAAI,OAAO,YAAY,KAAK,QAAQ,IAAI,YAAY,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvE,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;IACpD,CAAC;IACD,OAAO,EAAE,UAAU,EAAE,uBAAuB,CAAC,IAAI,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;AAC1F,CAAC"}
@@ -54,10 +54,7 @@ export declare function initGovernor(gov: ResourceGovernor): void;
54
54
  * sets, so callers see the governor FocusEngine actually injected.
55
55
  */
56
56
  export declare function getGovernor(): ResourceGovernor | null;
57
- /**
58
- * Generate branch name for focus-level work.
59
- */
60
- export declare function generateFocusBranchName(role: AgentRole, focusName: string, focusId: string): string;
57
+ export { generateFocusBranchName } from './focus-branch-identity.js';
61
58
  /**
62
59
  * Log the spawn header (focus / role / model / workers / branch, plus the
63
60
  * product line in multi-product mode). Side-effect-only; byte-identical to the
@@ -1 +1 @@
1
- {"version":3,"file":"focus-executor.d.ts","sourceRoot":"","sources":["../src/focus-executor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"focus-executor.d.ts","sourceRoot":"","sources":["../src/focus-executor.ts"],"names":[],"mappings":"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"}
@@ -32,7 +32,10 @@ import { updateSession, } from './supabase.js';
32
32
  import { productLabel } from '@telora/daemon-core';
33
33
  import { recordActivity } from './heartbeat.js';
34
34
  import { applyRespawnGuard } from './focus-respawn-guard.js';
35
- import { sanitizeGitSegment, resolveRef } from './git/index.js';
35
+ import { resolveRef } from './git/index.js';
36
+ import { shouldAbortReviewSpawnForUnresolvableCoverage } from './review-spawn-coverage-guard.js';
37
+ import { resolveFocusBranchName } from './focus-branch-identity.js';
38
+ import { setFocusBranchName } from './queries/focuses.js';
36
39
  import { resolveResumeId } from './session-lineage.js';
37
40
  // Side-effect import: registers assembly resolvers with assembly-engine at module load. Required - do not remove.
38
41
  import './assembly-resolvers.js';
@@ -92,15 +95,11 @@ export function getGovernor() {
92
95
  return governor;
93
96
  }
94
97
  // ── Team spawning ────────────────────────────────────────────────────
95
- /**
96
- * Generate branch name for focus-level work.
97
- */
98
- export function generateFocusBranchName(role, focusName, focusId) {
99
- const sanitizedRoleName = sanitizeGitSegment(role.name);
100
- const shortId = focusId.slice(0, 8);
101
- const sanitizedFocusName = sanitizeGitSegment(focusName);
102
- return `agent/${sanitizedRoleName}/${sanitizedFocusName}-${shortId}`;
103
- }
98
+ // generateFocusBranchName + resolveFocusBranchName live in focus-branch-identity.ts
99
+ // (a light module) so every consumer and the unit tests can use them without the
100
+ // spawn graph. Re-exported here for back-compat with existing importers
101
+ // (focus-lifecycle, focus-provisioning, the spawner barrel).
102
+ export { generateFocusBranchName } from './focus-branch-identity.js';
104
103
  /**
105
104
  * Log the spawn header (focus / role / model / workers / branch, plus the
106
105
  * product line in multi-product mode). Side-effect-only; byte-identical to the
@@ -127,7 +126,7 @@ export function logSpawnHeader(args) {
127
126
  * and issues, builds a task DAG, and coordinates worker execution.
128
127
  */
129
128
  export async function spawnFocusTeam(params) {
130
- const { config, focusId, focusName, role, pipelineConfig, readOnly = false, claudeSessionIds, engineOverride, localModelOverride, orgDefaultEngine, forceSpawn = false } = params;
129
+ const { config, focusId, focusName, role, pipelineConfig, readOnly = false, claudeSessionIds, engineOverride, localModelOverride, orgDefaultEngine, pinnedBranch, forceSpawn = false } = params;
131
130
  const activeTeams = getActiveTeams();
132
131
  // The agent backend is resolved per-pass below, once the spawn's lineage
133
132
  // (coding vs review) is known -- see resolveBackend() after lineage resolution.
@@ -139,7 +138,18 @@ export async function spawnFocusTeam(params) {
139
138
  if (await applyRespawnGuard(focusId, focusName))
140
139
  return;
141
140
  const executionConfig = deriveExecutionConfig(pipelineConfig);
142
- const branchName = generateFocusBranchName(role, focusName, focusId);
141
+ // Read the PINNED branch identity if the focus has one; otherwise derive it
142
+ // from the current role and persist it below (write-once, on first creation).
143
+ // Reading the pin is what makes the branch immune to a mid-flight role rename.
144
+ const resolvedBranch = resolveFocusBranchName({ pinnedBranch, role, focusName, focusId });
145
+ const branchName = resolvedBranch.branchName;
146
+ if (!resolvedBranch.pinned) {
147
+ // First creation: capture the identity so every later spawn (and worktree
148
+ // resolution, review coverage, provenance) reads this exact name regardless
149
+ // of any subsequent role change. Best-effort -- a write failure must not
150
+ // block the spawn; the next spawn re-derives the same name and retries the pin.
151
+ setFocusBranchName(focusId, branchName).catch((err) => log.warn(`[focus-executor] Failed to pin branch_name for "${focusName}": ${err.message}`));
152
+ }
143
153
  // Initialize team state
144
154
  const teamState = createInitialTeamState({
145
155
  focusId, focusName, role, config, executionConfig, pipelineConfig, branchName, readOnly,
@@ -210,7 +220,25 @@ export async function spawnFocusTeam(params) {
210
220
  // the auto-approve gate can detect mid-review drift (spawn-tip != exit-tip).
211
221
  // Review lineage only; coding teams leave it null.
212
222
  if (teamState.sessionType === 'review') {
213
- teamState.reviewSpawnTip = resolveRef(worktreePath, branchName);
223
+ const spawnTip = resolveRef(worktreePath, branchName);
224
+ if (shouldAbortReviewSpawnForUnresolvableCoverage(teamState.sessionType, spawnTip)) {
225
+ // Hard-fail: a review pass whose coverage anchor cannot be resolved must
226
+ // NOT open a session. If it did, the review would run to a succeeded exit
227
+ // with coverageComplete=false (a null spawn-tip can never be
228
+ // coverage-complete -- review-exit-phase.ts:233), auto-approve would be
229
+ // withheld as apparent drift, and a full-pass re-review armed every cycle
230
+ // -- structurally forever (the 224-rejection loop shape from the
231
+ // 2026-08-06 incident). Stop here with a specific signal naming the
232
+ // unresolvable ref; tear down the freshly-inserted team (the worktree is
233
+ // focus-owned and left intact). No session opens, so the focus never
234
+ // enters the unknown-coverage re-review cycle.
235
+ log.error(`[focus-executor] Review spawn ABORTED for "${focusName}": coverage ref ` +
236
+ `"${branchName}" could not be resolved in ${worktreePath}. No session opened ` +
237
+ `(a review over an unresolvable coverage anchor would loop as unknown-coverage drift).`);
238
+ activeTeams.delete(focusId);
239
+ return;
240
+ }
241
+ teamState.reviewSpawnTip = spawnTip;
214
242
  }
215
243
  // --- Phase: create the team-lead session. Opened AFTER Phase B so the
216
244
  // (focus, lineage) pass is resolved on the authoritative lineage
@@ -1 +1 @@
1
- {"version":3,"file":"focus-executor.js","sourceRoot":"","sources":["../src/focus-executor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"focus-executor.js","sourceRoot":"","sources":["../src/focus-executor.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"focus-lifecycle.d.ts","sourceRoot":"","sources":["../src/focus-lifecycle.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AA2B1D;;;;;;GAMG;AACH,wBAAsB,oBAAoB,CACxC,MAAM,EAAE,YAAY,EACpB,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,GAC5B,OAAO,CAAC,IAAI,CAAC,CAkIf;AAID;;;;;GAKG;AACH,wBAAsB,aAAa,CACjC,MAAM,EAAE,YAAY,EACpB,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,IAAI,CAAC,CAgFf;AAED;;;;;GAKG;AACH,wBAAsB,0BAA0B,CAC9C,MAAM,EAAE,YAAY,GACnB,OAAO,CAAC,IAAI,CAAC,CA0Df;AAID;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,yBAAyB,CAC7C,MAAM,EAAE,YAAY,GACnB,OAAO,CAAC,IAAI,CAAC,CAuLf;AAID;;;;;;;;;GASG;AACH,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,YAAY,GACpB,OAAO,CAAC,IAAI,CAAC,CAiCf"}
1
+ {"version":3,"file":"focus-lifecycle.d.ts","sourceRoot":"","sources":["../src/focus-lifecycle.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AA4B1D;;;;;;GAMG;AACH,wBAAsB,oBAAoB,CACxC,MAAM,EAAE,YAAY,EACpB,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,GAC5B,OAAO,CAAC,IAAI,CAAC,CAsIf;AAID;;;;;GAKG;AACH,wBAAsB,aAAa,CACjC,MAAM,EAAE,YAAY,EACpB,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,IAAI,CAAC,CAgFf;AAED;;;;;GAKG;AACH,wBAAsB,0BAA0B,CAC9C,MAAM,EAAE,YAAY,GACnB,OAAO,CAAC,IAAI,CAAC,CA0Df;AAID;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,yBAAyB,CAC7C,MAAM,EAAE,YAAY,GACnB,OAAO,CAAC,IAAI,CAAC,CAuLf;AAID;;;;;;;;;GASG;AACH,wBAAsB,iBAAiB,CACrC,OAAO,EAAE,YAAY,GACpB,OAAO,CAAC,IAAI,CAAC,CAiCf"}
@@ -11,7 +11,8 @@ import { join, resolve } from 'node:path';
11
11
  import { installReadOnlyAuditGuards } from './audit-hooks.js';
12
12
  import { getReadyFocuses, getActiveFocuses, reportGitState } from './supabase.js';
13
13
  import { createWorktree, syncIntegrationWithMain, runGitSync, safeRemoveFocusWorktree, commitWipChanges, generateMcpConfigInWorktree, generateCodexConfigInWorktree, ensureIntegrationBranch, ensureMergeWorktree } from './git.js';
14
- import { generateFocusBranchName, terminateTeam, waitForTeamExit } from './focus-executor.js';
14
+ import { terminateTeam, waitForTeamExit } from './focus-executor.js';
15
+ import { resolveFocusBranchName } from './focus-branch-identity.js';
15
16
  import { repoHasCommits } from './git/index.js';
16
17
  import { ensureInitialCommit } from './git/index.js';
17
18
  import { getActiveTeams } from './focus-team-state.js';
@@ -91,7 +92,11 @@ export async function ensureFocusWorktrees(config, roles) {
91
92
  log.warn(`Unknown agent role ${focus.assigned_agent_role_id} for focus "${focus.focus_name}", skipping worktree`);
92
93
  continue;
93
94
  }
94
- const branchName = generateFocusBranchName(role, focus.focus_name, focus.focus_id);
95
+ // Read the pinned branch identity so a mid-flight role rename does not point
96
+ // this worktree at a different branch than the one already created.
97
+ const branchName = resolveFocusBranchName({
98
+ pinnedBranch: focus.branch_name, role, focusName: focus.focus_name, focusId: focus.focus_id,
99
+ }).branchName;
95
100
  const worktreePath = join(config.worktreeDir, branchName.replace(/\//g, '-'));
96
101
  // Check if a valid worktree already exists on disk (e.g., after daemon restart
97
102
  // or reactivation). Adopt it instead of destroying and rebuilding.
@@ -1 +1 @@
1
- {"version":3,"file":"focus-lifecycle.js","sourceRoot":"","sources":["../src/focus-lifecycle.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"focus-lifecycle.js","sourceRoot":"","sources":["../src/focus-lifecycle.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"focus-provisioning.d.ts","sourceRoot":"","sources":["../src/focus-provisioning.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAc1D;;;;;;GAMG;AACH,wBAAsB,oBAAoB,CACxC,MAAM,EAAE,YAAY,EACpB,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,GAC5B,OAAO,CAAC,IAAI,CAAC,CAqGf"}
1
+ {"version":3,"file":"focus-provisioning.d.ts","sourceRoot":"","sources":["../src/focus-provisioning.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAc1D;;;;;;GAMG;AACH,wBAAsB,oBAAoB,CACxC,MAAM,EAAE,YAAY,EACpB,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,GAC5B,OAAO,CAAC,IAAI,CAAC,CAyGf"}
@@ -9,7 +9,7 @@ import { join } from 'node:path';
9
9
  import { installReadOnlyAuditGuards } from './audit-hooks.js';
10
10
  import { getReadyFocuses } from './supabase.js';
11
11
  import { createWorktree, syncIntegrationWithMain, runGitSync, generateMcpConfigInWorktree, generateCodexConfigInWorktree } from './git.js';
12
- import { generateFocusBranchName } from './focus-executor.js';
12
+ import { resolveFocusBranchName } from './focus-branch-identity.js';
13
13
  import { setFocusWorktree, hasFocusWorktree, } from './focus-worktree-state.js';
14
14
  import { createLogger } from './log.js';
15
15
  const log = createLogger({ module: 'focus-lifecycle' });
@@ -52,7 +52,11 @@ export async function ensureFocusWorktrees(config, roles) {
52
52
  log.warn(`Unknown agent role ${focus.assigned_agent_role_id} for focus "${focus.focus_name}", skipping worktree`);
53
53
  continue;
54
54
  }
55
- const branchName = generateFocusBranchName(role, focus.focus_name, focus.focus_id);
55
+ // Read the pinned branch identity so a mid-flight role rename does not point
56
+ // this worktree at a different branch than the one already created.
57
+ const branchName = resolveFocusBranchName({
58
+ pinnedBranch: focus.branch_name, role, focusName: focus.focus_name, focusId: focus.focus_id,
59
+ }).branchName;
56
60
  const worktreePath = join(config.worktreeDir, branchName.replace(/\//g, '-'));
57
61
  // Check if a valid worktree already exists on disk (e.g., after daemon restart
58
62
  // or reactivation). Adopt it instead of destroying and rebuilding.
@@ -1 +1 @@
1
- {"version":3,"file":"focus-provisioning.js","sourceRoot":"","sources":["../src/focus-provisioning.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"focus-provisioning.js","sourceRoot":"","sources":["../src/focus-provisioning.ts"],"names":[],"mappings":"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"}
@@ -9,11 +9,16 @@ export declare function __resetRespawnGuardLog(): void;
9
9
  /**
10
10
  * Pre-spawn respawn guard.
11
11
  *
12
- * Returns true if the focus has an open team_failure escalation that has not
13
- * been resolved. The caller (the listener's spawn loop and spawnFocusTeam)
14
- * should return immediately when this fires. The skip is logged at most once
15
- * per blocked episode -- callers poll the guard every cycle, so an un-throttled
16
- * log would spam until the escalation is resolved.
12
+ * Returns true if the focus has an open escalation that parks respawns -- EITHER
13
+ * a team_failure escalation (a team gave up) OR a review_coverage_incomplete
14
+ * escalation (the drift-streak breaker fired: the focus branch keeps advancing
15
+ * during each review pass). The caller (the listener's spawn loop and
16
+ * spawnFocusTeam) should return immediately when this fires. Without the
17
+ * coverage kind, the drift breaker files its escalation but nothing stops the
18
+ * loop -- the 2026-08-06 incident respawned ~$0.16 review cycles every spawn
19
+ * cooldown for 4.5h while the escalation sat open. The skip is logged at most
20
+ * once per blocked episode -- callers poll the guard every cycle, so an
21
+ * un-throttled log would spam until the escalation is resolved.
17
22
  *
18
23
  * Fails open on lookup error: the cost of a spurious spawn is lower than the
19
24
  * cost of silently blocking a healthy focus.
@@ -1 +1 @@
1
- {"version":3,"file":"focus-respawn-guard.d.ts","sourceRoot":"","sources":["../src/focus-respawn-guard.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAmBH,yDAAyD;AACzD,wBAAgB,sBAAsB,IAAI,IAAI,CAE7C;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CA8B5F"}
1
+ {"version":3,"file":"focus-respawn-guard.d.ts","sourceRoot":"","sources":["../src/focus-respawn-guard.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAuBH,yDAAyD;AACzD,wBAAgB,sBAAsB,IAAI,IAAI,CAE7C;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAqC5F"}
@@ -4,8 +4,9 @@
4
4
  * Extracted into its own module so it can be unit-tested without pulling in
5
5
  * the full focus-executor.ts dependency graph (which includes @telora/daemon-core).
6
6
  */
7
- import { hasOpenTeamFailureEscalation } from './queries/issues.js';
7
+ import { hasOpenTeamFailureEscalation, hasOpenReviewCoverageIncompleteEscalation, } from './queries/issues.js';
8
8
  import { resetDeliveryAdvancementGuard } from './completion/delivery-advancement-guard.js';
9
+ import { resetCoverageDriftState } from './completion/coverage-drift-state.js';
9
10
  import { createLogger } from './log.js';
10
11
  const log = createLogger({ module: 'focus-executor' });
11
12
  /**
@@ -24,34 +25,46 @@ export function __resetRespawnGuardLog() {
24
25
  /**
25
26
  * Pre-spawn respawn guard.
26
27
  *
27
- * Returns true if the focus has an open team_failure escalation that has not
28
- * been resolved. The caller (the listener's spawn loop and spawnFocusTeam)
29
- * should return immediately when this fires. The skip is logged at most once
30
- * per blocked episode -- callers poll the guard every cycle, so an un-throttled
31
- * log would spam until the escalation is resolved.
28
+ * Returns true if the focus has an open escalation that parks respawns -- EITHER
29
+ * a team_failure escalation (a team gave up) OR a review_coverage_incomplete
30
+ * escalation (the drift-streak breaker fired: the focus branch keeps advancing
31
+ * during each review pass). The caller (the listener's spawn loop and
32
+ * spawnFocusTeam) should return immediately when this fires. Without the
33
+ * coverage kind, the drift breaker files its escalation but nothing stops the
34
+ * loop -- the 2026-08-06 incident respawned ~$0.16 review cycles every spawn
35
+ * cooldown for 4.5h while the escalation sat open. The skip is logged at most
36
+ * once per blocked episode -- callers poll the guard every cycle, so an
37
+ * un-throttled log would spam until the escalation is resolved.
32
38
  *
33
39
  * Fails open on lookup error: the cost of a spurious spawn is lower than the
34
40
  * cost of silently blocking a healthy focus.
35
41
  */
36
42
  export async function applyRespawnGuard(focusId, focusName) {
37
43
  try {
38
- if (await hasOpenTeamFailureEscalation(focusId)) {
44
+ const [teamFailure, coverageIncomplete] = await Promise.all([
45
+ hasOpenTeamFailureEscalation(focusId),
46
+ hasOpenReviewCoverageIncompleteEscalation(focusId),
47
+ ]);
48
+ if (teamFailure || coverageIncomplete) {
39
49
  if (!skipLoggedFocuses.has(focusId)) {
40
50
  skipLoggedFocuses.add(focusId);
41
- log.info(`[focus-executor] Skipping spawn for focus "${focusName}": open team_failure escalation`);
51
+ const kind = teamFailure ? 'team_failure' : 'review_coverage_incomplete';
52
+ log.info(`[focus-executor] Skipping spawn for focus "${focusName}": open ${kind} escalation`);
42
53
  }
43
54
  return true;
44
55
  }
45
- // Unblocked. If this focus was previously blocked by an open team_failure
56
+ // Unblocked. If this focus was previously blocked by an open parking
46
57
  // escalation (it is in the throttle set), this poll is the resolution/re-arm
47
58
  // edge: an operator cleared the escalation and the focus is spawnable again.
48
- // Reset its cross-respawn delivery-advancement counter so the re-armed focus
49
- // starts from a clean baseline rather than immediately re-escalating off the
50
- // stale count that tripped the original escalation. Gated on the throttle-set
51
- // membership so a steady-state healthy focus (never blocked) does NOT have
52
- // its counter cleared every poll -- that would defeat the guard.
59
+ // Reset its cross-respawn delivery-advancement counter AND the below-coverage
60
+ // drift trackers so the re-armed focus starts from a clean baseline rather
61
+ // than immediately re-escalating off the stale count/streak that tripped the
62
+ // original escalation. Gated on the throttle-set membership so a steady-state
63
+ // healthy focus (never blocked) does NOT have its counters cleared every poll
64
+ // -- that would defeat the guard.
53
65
  if (skipLoggedFocuses.has(focusId)) {
54
66
  resetDeliveryAdvancementGuard(focusId);
67
+ resetCoverageDriftState(focusId);
55
68
  }
56
69
  // Drop the throttle entry so a future block logs once more.
57
70
  skipLoggedFocuses.delete(focusId);
@@ -1 +1 @@
1
- {"version":3,"file":"focus-respawn-guard.js","sourceRoot":"","sources":["../src/focus-respawn-guard.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,4BAA4B,EAAE,MAAM,qBAAqB,CAAC;AACnE,OAAO,EAAE,6BAA6B,EAAE,MAAM,4CAA4C,CAAC;AAC3F,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAExC,MAAM,GAAG,GAAG,YAAY,CAAC,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC,CAAC;AAGvD;;;;;;;GAOG;AACH,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAAU,CAAC;AAE5C,yDAAyD;AACzD,MAAM,UAAU,sBAAsB;IACpC,iBAAiB,CAAC,KAAK,EAAE,CAAC;AAC5B,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,OAAe,EAAE,SAAiB;IACxE,IAAI,CAAC;QACH,IAAI,MAAM,4BAA4B,CAAC,OAAO,CAAC,EAAE,CAAC;YAChD,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;gBACpC,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;gBAC/B,GAAG,CAAC,IAAI,CACN,8CAA8C,SAAS,iCAAiC,CACzF,CAAC;YACJ,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;QACD,0EAA0E;QAC1E,6EAA6E;QAC7E,6EAA6E;QAC7E,6EAA6E;QAC7E,6EAA6E;QAC7E,8EAA8E;QAC9E,2EAA2E;QAC3E,iEAAiE;QACjE,IAAI,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;YACnC,6BAA6B,CAAC,OAAO,CAAC,CAAC;QACzC,CAAC;QACD,4DAA4D;QAC5D,iBAAiB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACpC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,GAAG,CAAC,IAAI,CACN,gEAAgE,SAAS,6BAA8B,GAAa,CAAC,OAAO,EAAE,CAC/H,CAAC;IACJ,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
1
+ {"version":3,"file":"focus-respawn-guard.js","sourceRoot":"","sources":["../src/focus-respawn-guard.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EACL,4BAA4B,EAC5B,yCAAyC,GAC1C,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,6BAA6B,EAAE,MAAM,4CAA4C,CAAC;AAC3F,OAAO,EAAE,uBAAuB,EAAE,MAAM,sCAAsC,CAAC;AAC/E,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAExC,MAAM,GAAG,GAAG,YAAY,CAAC,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC,CAAC;AAGvD;;;;;;;GAOG;AACH,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAAU,CAAC;AAE5C,yDAAyD;AACzD,MAAM,UAAU,sBAAsB;IACpC,iBAAiB,CAAC,KAAK,EAAE,CAAC;AAC5B,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,OAAe,EAAE,SAAiB;IACxE,IAAI,CAAC;QACH,MAAM,CAAC,WAAW,EAAE,kBAAkB,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YAC1D,4BAA4B,CAAC,OAAO,CAAC;YACrC,yCAAyC,CAAC,OAAO,CAAC;SACnD,CAAC,CAAC;QACH,IAAI,WAAW,IAAI,kBAAkB,EAAE,CAAC;YACtC,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;gBACpC,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;gBAC/B,MAAM,IAAI,GAAG,WAAW,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,4BAA4B,CAAC;gBACzE,GAAG,CAAC,IAAI,CACN,8CAA8C,SAAS,WAAW,IAAI,aAAa,CACpF,CAAC;YACJ,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;QACD,qEAAqE;QACrE,6EAA6E;QAC7E,6EAA6E;QAC7E,8EAA8E;QAC9E,2EAA2E;QAC3E,6EAA6E;QAC7E,8EAA8E;QAC9E,8EAA8E;QAC9E,kCAAkC;QAClC,IAAI,iBAAiB,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;YACnC,6BAA6B,CAAC,OAAO,CAAC,CAAC;YACvC,uBAAuB,CAAC,OAAO,CAAC,CAAC;QACnC,CAAC;QACD,4DAA4D;QAC5D,iBAAiB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACpC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,GAAG,CAAC,IAAI,CACN,gEAAgE,SAAS,6BAA8B,GAAa,CAAC,OAAO,EAAE,CAC/H,CAAC;IACJ,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"merge.d.ts","sourceRoot":"","sources":["../../src/git/merge.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AACjE,OAAO,EAAc,KAAK,WAAW,EAAE,KAAK,aAAa,EAAwB,MAAM,YAAY,CAAC;AACpG,OAAO,EAAyC,KAAK,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAGhG,OAAO,EAEL,KAAK,cAAc,EAEnB,KAAK,mBAAmB,EACzB,MAAM,iBAAiB,CAAC;AAwFzB,UAAU,yBAAyB;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,CAAC,OAAO,EAAE,iBAAiB,KAAK,IAAI,CAAC;CAC1D;AAED;;;GAGG;AACH,wBAAgB,6BAA6B,CAAC,MAAM,EAAE,yBAAyB,GAAG,WAAW,CAoD5F;AA0HD;;;;;;;;;GASG;AACH,wBAAgB,cAAc,CAC5B,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,EACpB,aAAa,EAAE,MAAM,GACpB,WAAW,CA8Cb;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,EACpB,YAAY,EAAE,MAAM,EACpB,QAAQ,EAAE,aAAa,GACtB,WAAW,CAmBb;AAID,MAAM,WAAW,wBAAwB;IACvC,MAAM,EAAE,YAAY,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,iBAAiB,CAAC,EAAE,CAAC,OAAO,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,oBAAoB,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;CAC9G;AAED;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,wBAAwB,GAC/B,OAAO,CAAC,WAAW,CAAC,CA4GtB;AAID,MAAM,WAAW,4BAA4B;IAC3C,MAAM,EAAE,YAAY,CAAC;IACrB,+DAA+D;IAC/D,OAAO,EAAE,MAAM,CAAC;IAChB,8CAA8C;IAC9C,SAAS,EAAE,MAAM,CAAC;IAClB,gDAAgD;IAChD,YAAY,EAAE,OAAO,CAAC;IACtB;;;;;OAKG;IACH,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B;;;;;;;;;;;;OAYG;IACH,WAAW,EAAE,cAAc,GAAG,SAAS,CAAC;CACzC;AAED;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAC/B,2CAA2C;IAC3C,IAAI,EAAE,MAAM,CAAC;IACb,4CAA4C;IAC5C,GAAG,EAAE,MAAM,CAAC;CACb;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,4BAA4B,GACnC,OAAO,CAAC,WAAW,GAAG;IAAE,QAAQ,CAAC,EAAE,gBAAgB,CAAC;IAAC,MAAM,CAAC,EAAE,mBAAmB,CAAA;CAAE,CAAC,CAwNtF;AAID,MAAM,WAAW,8BAA8B;IAC7C,2CAA2C;IAC3C,YAAY,EAAE,MAAM,CAAC;IACrB,4DAA4D;IAC5D,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,wBAAwB,CAC5C,MAAM,EAAE,8BAA8B,GACrC,OAAO,CAAC,eAAe,CAAC,CAgE1B"}
1
+ {"version":3,"file":"merge.d.ts","sourceRoot":"","sources":["../../src/git/merge.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AACjE,OAAO,EAAc,KAAK,WAAW,EAAE,KAAK,aAAa,EAAwB,MAAM,YAAY,CAAC;AACpG,OAAO,EAAyC,KAAK,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAIhG,OAAO,EAEL,KAAK,cAAc,EAEnB,KAAK,mBAAmB,EACzB,MAAM,iBAAiB,CAAC;AAwFzB,UAAU,yBAAyB;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,CAAC,OAAO,EAAE,iBAAiB,KAAK,IAAI,CAAC;CAC1D;AAED;;;GAGG;AACH,wBAAgB,6BAA6B,CAAC,MAAM,EAAE,yBAAyB,GAAG,WAAW,CAoD5F;AA0HD;;;;;;;;;GASG;AACH,wBAAgB,cAAc,CAC5B,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,EACpB,aAAa,EAAE,MAAM,GACpB,WAAW,CA8Cb;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAChC,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,EACpB,YAAY,EAAE,MAAM,EACpB,QAAQ,EAAE,aAAa,GACtB,WAAW,CAmBb;AAID,MAAM,WAAW,wBAAwB;IACvC,MAAM,EAAE,YAAY,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,iBAAiB,CAAC,EAAE,CAAC,OAAO,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,oBAAoB,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;CAC9G;AAED;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,wBAAwB,GAC/B,OAAO,CAAC,WAAW,CAAC,CA4GtB;AAID,MAAM,WAAW,4BAA4B;IAC3C,MAAM,EAAE,YAAY,CAAC;IACrB,+DAA+D;IAC/D,OAAO,EAAE,MAAM,CAAC;IAChB,8CAA8C;IAC9C,SAAS,EAAE,MAAM,CAAC;IAClB,gDAAgD;IAChD,YAAY,EAAE,OAAO,CAAC;IACtB;;;;;OAKG;IACH,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B;;;;;;;;;;;;OAYG;IACH,WAAW,EAAE,cAAc,GAAG,SAAS,CAAC;CACzC;AAED;;;;GAIG;AACH,MAAM,WAAW,gBAAgB;IAC/B,2CAA2C;IAC3C,IAAI,EAAE,MAAM,CAAC;IACb,4CAA4C;IAC5C,GAAG,EAAE,MAAM,CAAC;CACb;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,4BAA4B,GACnC,OAAO,CAAC,WAAW,GAAG;IAAE,QAAQ,CAAC,EAAE,gBAAgB,CAAC;IAAC,MAAM,CAAC,EAAE,mBAAmB,CAAA;CAAE,CAAC,CA4NtF;AAID,MAAM,WAAW,8BAA8B;IAC7C,2CAA2C;IAC3C,YAAY,EAAE,MAAM,CAAC;IACrB,4DAA4D;IAC5D,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,wBAAwB,CAC5C,MAAM,EAAE,8BAA8B,GACrC,OAAO,CAAC,eAAe,CAAC,CAgE1B"}