@telora/daemon 0.18.37 → 0.18.49

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 (81) hide show
  1. package/build-info.json +5 -3
  2. package/dist/completion/advanceability.d.ts +66 -0
  3. package/dist/completion/advanceability.d.ts.map +1 -0
  4. package/dist/completion/advanceability.js +112 -0
  5. package/dist/completion/advanceability.js.map +1 -0
  6. package/dist/completion/event.d.ts +28 -52
  7. package/dist/completion/event.d.ts.map +1 -1
  8. package/dist/completion/event.js +79 -99
  9. package/dist/completion/event.js.map +1 -1
  10. package/dist/completion/progress-snapshot.d.ts +15 -4
  11. package/dist/completion/progress-snapshot.d.ts.map +1 -1
  12. package/dist/completion/progress-snapshot.js +20 -4
  13. package/dist/completion/progress-snapshot.js.map +1 -1
  14. package/dist/crash-recovery.d.ts +48 -0
  15. package/dist/crash-recovery.d.ts.map +1 -1
  16. package/dist/crash-recovery.js +166 -30
  17. package/dist/crash-recovery.js.map +1 -1
  18. package/dist/delivery-advance-block.d.ts +17 -1
  19. package/dist/delivery-advance-block.d.ts.map +1 -1
  20. package/dist/delivery-advance-block.js +31 -8
  21. package/dist/delivery-advance-block.js.map +1 -1
  22. package/dist/escalation-provenance.d.ts +5 -1
  23. package/dist/escalation-provenance.d.ts.map +1 -1
  24. package/dist/escalation-provenance.js +46 -4
  25. package/dist/escalation-provenance.js.map +1 -1
  26. package/dist/focus-executor.d.ts.map +1 -1
  27. package/dist/focus-executor.js +1 -0
  28. package/dist/focus-executor.js.map +1 -1
  29. package/dist/git-activity.d.ts +15 -0
  30. package/dist/git-activity.d.ts.map +1 -1
  31. package/dist/git-activity.js +24 -0
  32. package/dist/git-activity.js.map +1 -1
  33. package/dist/listener.d.ts.map +1 -1
  34. package/dist/listener.js +5 -0
  35. package/dist/listener.js.map +1 -1
  36. package/dist/loop-engine-types.d.ts +40 -0
  37. package/dist/loop-engine-types.d.ts.map +1 -0
  38. package/dist/loop-engine-types.js +11 -0
  39. package/dist/loop-engine-types.js.map +1 -0
  40. package/dist/loop-engine.d.ts +52 -0
  41. package/dist/loop-engine.d.ts.map +1 -1
  42. package/dist/loop-engine.js +91 -10
  43. package/dist/loop-engine.js.map +1 -1
  44. package/dist/loop-llm-flag.d.ts +32 -0
  45. package/dist/loop-llm-flag.d.ts.map +1 -0
  46. package/dist/loop-llm-flag.js +35 -0
  47. package/dist/loop-llm-flag.js.map +1 -0
  48. package/dist/loop-operational-block.d.ts +44 -0
  49. package/dist/loop-operational-block.d.ts.map +1 -0
  50. package/dist/loop-operational-block.js +47 -0
  51. package/dist/loop-operational-block.js.map +1 -0
  52. package/dist/merge-back-loop.d.ts.map +1 -1
  53. package/dist/merge-back-loop.js +1 -0
  54. package/dist/merge-back-loop.js.map +1 -1
  55. package/dist/nexus-incoming.d.ts +8 -7
  56. package/dist/nexus-incoming.d.ts.map +1 -1
  57. package/dist/nexus-incoming.js +10 -12
  58. package/dist/nexus-incoming.js.map +1 -1
  59. package/dist/nexus-intake-spawn.d.ts +57 -0
  60. package/dist/nexus-intake-spawn.d.ts.map +1 -0
  61. package/dist/nexus-intake-spawn.js +158 -0
  62. package/dist/nexus-intake-spawn.js.map +1 -0
  63. package/dist/nexus-intake.d.ts +117 -0
  64. package/dist/nexus-intake.d.ts.map +1 -0
  65. package/dist/nexus-intake.js +212 -0
  66. package/dist/nexus-intake.js.map +1 -0
  67. package/dist/types/focus.d.ts +24 -0
  68. package/dist/types/focus.d.ts.map +1 -1
  69. package/package.json +2 -2
  70. package/dist/crash-recovery-cleanup.d.ts +0 -21
  71. package/dist/crash-recovery-cleanup.d.ts.map +0 -1
  72. package/dist/crash-recovery-cleanup.js +0 -205
  73. package/dist/crash-recovery-cleanup.js.map +0 -1
  74. package/dist/crash-recovery-scan.d.ts +0 -19
  75. package/dist/crash-recovery-scan.d.ts.map +0 -1
  76. package/dist/crash-recovery-scan.js +0 -145
  77. package/dist/crash-recovery-scan.js.map +0 -1
  78. package/dist/crash-recovery-types.d.ts +0 -49
  79. package/dist/crash-recovery-types.d.ts.map +0 -1
  80. package/dist/crash-recovery-types.js +0 -13
  81. package/dist/crash-recovery-types.js.map +0 -1
@@ -1,145 +0,0 @@
1
- /**
2
- * Worktree scanning for crash recovery.
3
- *
4
- * Parses `git worktree list` output and reconciles against DB sessions
5
- * and active focuses to classify worktrees as active or orphaned.
6
- */
7
- import { existsSync, readdirSync, statSync } from 'node:fs';
8
- import { join, resolve } from 'node:path';
9
- import { runGitSync } from './git.js';
10
- import { defaultDeps } from './crash-recovery-types.js';
11
- // ── Helpers ──────────────────────────────────────────────────────
12
- /**
13
- * Extract the focus ID prefix (last 8 hex chars) from a worktree directory name.
14
- * Focus worktree directories follow: agent-{role}-{name}-{8-char-id}
15
- */
16
- function extractFocusIdPrefix(dirName) {
17
- const match = dirName.match(/-([0-9a-f]{8})$/);
18
- return match ? match[1] : null;
19
- }
20
- // ── Worktree scanning ────────────────────────────────────────────
21
- /**
22
- * Parse `git worktree list --porcelain` to build a map of
23
- * worktree path -> branch name for all registered worktrees.
24
- */
25
- export function parseWorktreeList(repoPath) {
26
- const result = runGitSync(['worktree', 'list', '--porcelain'], repoPath);
27
- const map = new Map();
28
- if (!result.success)
29
- return map;
30
- let currentPath = null;
31
- for (const line of result.output.split('\n')) {
32
- if (line.startsWith('worktree ')) {
33
- currentPath = line.slice('worktree '.length);
34
- }
35
- else if (line.startsWith('branch refs/heads/') && currentPath) {
36
- map.set(currentPath, line.slice('branch refs/heads/'.length));
37
- currentPath = null;
38
- }
39
- else if (line === '') {
40
- currentPath = null;
41
- }
42
- }
43
- return map;
44
- }
45
- /**
46
- * Scan the worktree directory and reconcile against active DB sessions
47
- * to classify each worktree as active or orphaned.
48
- */
49
- export async function detectOrphanedWorktrees(config, deps = defaultDeps) {
50
- const { worktreeDir, repoPath } = config;
51
- // 1. Read all subdirectories in worktreeDir
52
- if (!existsSync(worktreeDir))
53
- return [];
54
- const entries = readdirSync(worktreeDir);
55
- const subdirs = entries.filter((entry) => {
56
- const fullPath = join(worktreeDir, entry);
57
- try {
58
- return statSync(fullPath).isDirectory();
59
- }
60
- catch (e) {
61
- console.debug(`[crash-recovery] Failed to stat ${fullPath} (may have been deleted):`, e.message);
62
- return false;
63
- }
64
- });
65
- if (subdirs.length === 0)
66
- return [];
67
- // 2. Parse git worktree list to map paths -> branch names
68
- const worktreeMap = parseWorktreeList(repoPath);
69
- // Build a reverse lookup: resolve worktree paths so we can match
70
- const pathToBranch = new Map();
71
- for (const [wtPath, branch] of worktreeMap) {
72
- pathToBranch.set(resolve(wtPath), branch);
73
- }
74
- // 3. Query active sessions from DB
75
- let activeSessions = [];
76
- try {
77
- activeSessions = await deps.getActiveSessions();
78
- }
79
- catch (err) {
80
- console.warn(`[crash-recovery] Failed to query active sessions from DB: ${err instanceof Error ? err.message : String(err)}. ` +
81
- `Treating all worktrees as orphaned.`);
82
- }
83
- // Build set of branch names with active sessions
84
- const activeBranches = new Set(activeSessions.map((s) => s.branch_name));
85
- // Build map of branch -> session for linking
86
- const branchToSession = new Map();
87
- for (const session of activeSessions) {
88
- branchToSession.set(session.branch_name, session);
89
- }
90
- // 3b. Query active focuses to preserve persistent worktrees
91
- const activeFocusIdPrefixes = new Set();
92
- try {
93
- const activeFocuses = await deps.getActiveFocuses(config.organizationId, config.productId);
94
- for (const s of activeFocuses) {
95
- activeFocusIdPrefixes.add(s.focus_id.slice(0, 8));
96
- }
97
- }
98
- catch (err) {
99
- console.warn(`[crash-recovery] Failed to query active focuses: ${err instanceof Error ? err.message : String(err)}. ` +
100
- `Persistent focus worktrees may be incorrectly classified as orphaned.`);
101
- }
102
- // 4. Classify each worktree subdirectory
103
- const orphans = [];
104
- for (const subdir of subdirs) {
105
- const fullPath = resolve(join(worktreeDir, subdir));
106
- const branchName = pathToBranch.get(fullPath);
107
- if (!branchName) {
108
- // Directory exists but no git worktree entry -- likely a stale directory.
109
- // Check if it belongs to an active focus before classifying as orphan.
110
- const idPrefix = extractFocusIdPrefix(subdir);
111
- if (idPrefix && activeFocusIdPrefixes.has(idPrefix)) {
112
- console.log(`[crash-recovery] Worktree belongs to active focus (persistent, no git entry): ${fullPath}`);
113
- continue;
114
- }
115
- // Try to infer branch from directory name (agent-role-delivery pattern).
116
- console.log(`[crash-recovery] Worktree directory has no git entry: ${fullPath}`);
117
- orphans.push({
118
- worktreePath: fullPath,
119
- branchName: subdir.replace(/-/g, '/').replace(/^agent\//, 'agent/'),
120
- session: null,
121
- });
122
- continue;
123
- }
124
- if (activeBranches.has(branchName)) {
125
- // Active session exists -- leave alone
126
- console.log(`[crash-recovery] Worktree is active (has DB session): ${fullPath} [${branchName}]`);
127
- continue;
128
- }
129
- // Check if this worktree belongs to an active focus (persistent worktree)
130
- const idPrefix = extractFocusIdPrefix(subdir);
131
- if (idPrefix && activeFocusIdPrefixes.has(idPrefix)) {
132
- console.log(`[crash-recovery] Worktree belongs to active focus (persistent): ${fullPath} [${branchName}]`);
133
- continue;
134
- }
135
- // No active session and no active focus -- orphaned
136
- const session = branchToSession.get(branchName) ?? null;
137
- orphans.push({
138
- worktreePath: fullPath,
139
- branchName,
140
- session,
141
- });
142
- }
143
- return orphans;
144
- }
145
- //# sourceMappingURL=crash-recovery-scan.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"crash-recovery-scan.js","sourceRoot":"","sources":["../src/crash-recovery-scan.ts"],"names":[],"mappings":"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"}
@@ -1,49 +0,0 @@
1
- /**
2
- * Types and dependency injection for crash recovery.
3
- */
4
- import type { AgentSession } from './types.js';
5
- import { type CreateEscalationParams } from './queries/issues.js';
6
- export interface OrphanedWorktree {
7
- /** Absolute path to the worktree directory. */
8
- worktreePath: string;
9
- /** Git branch name (e.g. agent/developer/my-delivery). */
10
- branchName: string;
11
- /** DB session that was still marked active, if any. */
12
- session: AgentSession | null;
13
- }
14
- export interface CleanupAction {
15
- worktreePath: string;
16
- branchName: string;
17
- action: 'removed' | 'preserved' | 'safety-committed' | 'safety-committed-and-removed';
18
- /** Set when a safety commit was created. */
19
- commitHash?: string;
20
- /** Set when the orphan was preserved due to unmerged commits. */
21
- unmergedCommitCount?: number;
22
- }
23
- export interface RecoveryResult {
24
- orphansDetected: number;
25
- orphansCleaned: number;
26
- orphansPreserved: number;
27
- branchesPruned: number;
28
- branchesPreserved: number;
29
- actions: CleanupAction[];
30
- errors: string[];
31
- }
32
- /**
33
- * Injectable dependencies for testing.
34
- * Production code uses the defaults (real DB queries).
35
- */
36
- export interface RecoveryDeps {
37
- getActiveSessions: () => Promise<AgentSession[]>;
38
- getActiveFocuses: (organizationId: string, productId?: string) => Promise<Array<{
39
- focus_id: string;
40
- focus_name: string;
41
- assigned_agent_role_id: string | null;
42
- }>>;
43
- updateSession: (sessionId: string, updates: Record<string, unknown>) => Promise<unknown>;
44
- createEscalation: (params: CreateEscalationParams) => Promise<{
45
- escalationId: string | null;
46
- } | void>;
47
- }
48
- export declare const defaultDeps: RecoveryDeps;
49
- //# sourceMappingURL=crash-recovery-types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"crash-recovery-types.d.ts","sourceRoot":"","sources":["../src/crash-recovery-types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C,OAAO,EAAoB,KAAK,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAKpF,MAAM,WAAW,gBAAgB;IAC/B,+CAA+C;IAC/C,YAAY,EAAE,MAAM,CAAC;IACrB,0DAA0D;IAC1D,UAAU,EAAE,MAAM,CAAC;IACnB,uDAAuD;IACvD,OAAO,EAAE,YAAY,GAAG,IAAI,CAAC;CAC9B;AAED,MAAM,WAAW,aAAa;IAC5B,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,SAAS,GAAG,WAAW,GAAG,kBAAkB,GAAG,8BAA8B,CAAC;IACtF,4CAA4C;IAC5C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iEAAiE;IACjE,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,MAAM,WAAW,cAAc;IAC7B,eAAe,EAAE,MAAM,CAAC;IACxB,cAAc,EAAE,MAAM,CAAC;IACvB,gBAAgB,EAAE,MAAM,CAAC;IACzB,cAAc,EAAE,MAAM,CAAC;IACvB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,OAAO,EAAE,aAAa,EAAE,CAAC;IACzB,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAED;;;GAGG;AACH,MAAM,WAAW,YAAY;IAC3B,iBAAiB,EAAE,MAAM,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;IACjD,gBAAgB,EAAE,CAAC,cAAc,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,KAAK,OAAO,CAAC,KAAK,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAC;QAAC,sBAAsB,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAC,CAAC,CAAC;IAClK,aAAa,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IACzF,gBAAgB,EAAE,CAAC,MAAM,EAAE,sBAAsB,KAAK,OAAO,CAAC;QAAE,YAAY,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,GAAG,IAAI,CAAC,CAAC;CACvG;AAED,eAAO,MAAM,WAAW,EAAE,YAKzB,CAAC"}
@@ -1,13 +0,0 @@
1
- /**
2
- * Types and dependency injection for crash recovery.
3
- */
4
- import { getActiveSessions, updateSession } from './queries/sessions.js';
5
- import { createEscalation } from './queries/issues.js';
6
- import { getActiveFocuses } from './queries/deliveries.js';
7
- export const defaultDeps = {
8
- getActiveSessions,
9
- getActiveFocuses,
10
- updateSession: (id, updates) => updateSession(id, updates),
11
- createEscalation,
12
- };
13
- //# sourceMappingURL=crash-recovery-types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"crash-recovery-types.js","sourceRoot":"","sources":["../src/crash-recovery-types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACzE,OAAO,EAAE,gBAAgB,EAA+B,MAAM,qBAAqB,CAAC;AACpF,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AA4C3D,MAAM,CAAC,MAAM,WAAW,GAAiB;IACvC,iBAAiB;IACjB,gBAAgB;IAChB,aAAa,EAAE,CAAC,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,aAAa,CAAC,EAAE,EAAE,OAA8C,CAAC;IACjG,gBAAgB;CACjB,CAAC"}