@telora/daemon 0.12.33 → 0.13.1

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 (117) hide show
  1. package/build-info.json +2 -2
  2. package/dist/completion-handler.js +1 -1
  3. package/dist/completion-handler.js.map +1 -1
  4. package/dist/daemon-process.js +3 -3
  5. package/dist/daemon-process.js.map +1 -1
  6. package/dist/git-branch.d.ts +5 -0
  7. package/dist/git-branch.d.ts.map +1 -1
  8. package/dist/git-branch.js +14 -0
  9. package/dist/git-branch.js.map +1 -1
  10. package/dist/git-integration.d.ts.map +1 -1
  11. package/dist/git-integration.js +1 -2
  12. package/dist/git-integration.js.map +1 -1
  13. package/dist/git-merge-lock.d.ts.map +1 -1
  14. package/dist/git-merge-lock.js +15 -10
  15. package/dist/git-merge-lock.js.map +1 -1
  16. package/dist/git-merge.d.ts.map +1 -1
  17. package/dist/git-merge.js +1 -2
  18. package/dist/git-merge.js.map +1 -1
  19. package/dist/git-state-detector.d.ts.map +1 -1
  20. package/dist/git-state-detector.js +19 -4
  21. package/dist/git-state-detector.js.map +1 -1
  22. package/dist/git-types.d.ts +9 -1
  23. package/dist/git-types.d.ts.map +1 -1
  24. package/dist/git-types.js +11 -0
  25. package/dist/git-types.js.map +1 -1
  26. package/dist/git.d.ts +1 -1
  27. package/dist/git.d.ts.map +1 -1
  28. package/dist/git.js +9 -2
  29. package/dist/git.js.map +1 -1
  30. package/dist/heartbeat.d.ts +3 -13
  31. package/dist/heartbeat.d.ts.map +1 -1
  32. package/dist/heartbeat.js +21 -39
  33. package/dist/heartbeat.js.map +1 -1
  34. package/dist/listener-auto-advance.d.ts +5 -1
  35. package/dist/listener-auto-advance.d.ts.map +1 -1
  36. package/dist/listener-auto-advance.js +9 -1
  37. package/dist/listener-auto-advance.js.map +1 -1
  38. package/dist/listener.d.ts.map +1 -1
  39. package/dist/listener.js +33 -8
  40. package/dist/listener.js.map +1 -1
  41. package/dist/output-monitor.d.ts +1 -1
  42. package/dist/output-monitor.d.ts.map +1 -1
  43. package/dist/qa-orchestrator.d.ts +29 -1
  44. package/dist/qa-orchestrator.d.ts.map +1 -1
  45. package/dist/qa-orchestrator.js +145 -2
  46. package/dist/qa-orchestrator.js.map +1 -1
  47. package/dist/qa-state.d.ts +25 -0
  48. package/dist/qa-state.d.ts.map +1 -1
  49. package/dist/qa-state.js +14 -0
  50. package/dist/qa-state.js.map +1 -1
  51. package/dist/queries/daemon-connection.d.ts +8 -0
  52. package/dist/queries/daemon-connection.d.ts.map +1 -1
  53. package/dist/queries/daemon-connection.js +10 -0
  54. package/dist/queries/daemon-connection.js.map +1 -1
  55. package/dist/queries/qa.d.ts +41 -0
  56. package/dist/queries/qa.d.ts.map +1 -1
  57. package/dist/queries/qa.js +33 -0
  58. package/dist/queries/qa.js.map +1 -1
  59. package/dist/queries/shared.d.ts.map +1 -1
  60. package/dist/queries/shared.js +2 -0
  61. package/dist/queries/shared.js.map +1 -1
  62. package/dist/save-point-restore.d.ts +35 -0
  63. package/dist/save-point-restore.d.ts.map +1 -0
  64. package/dist/save-point-restore.js +146 -0
  65. package/dist/save-point-restore.js.map +1 -0
  66. package/dist/session-lifecycle.d.ts +2 -1
  67. package/dist/session-lifecycle.d.ts.map +1 -1
  68. package/dist/session-lifecycle.js.map +1 -1
  69. package/dist/spawn-cooldown.d.ts.map +1 -1
  70. package/dist/spawn-cooldown.js +17 -0
  71. package/dist/spawn-cooldown.js.map +1 -1
  72. package/dist/spawner-liveness.d.ts.map +1 -1
  73. package/dist/spawner-liveness.js +3 -2
  74. package/dist/spawner-liveness.js.map +1 -1
  75. package/dist/spawner.d.ts +2 -15
  76. package/dist/spawner.d.ts.map +1 -1
  77. package/dist/spawner.js +8 -88
  78. package/dist/spawner.js.map +1 -1
  79. package/dist/strategy-completion.d.ts.map +1 -1
  80. package/dist/strategy-completion.js +22 -12
  81. package/dist/strategy-completion.js.map +1 -1
  82. package/dist/strategy-engine.d.ts.map +1 -1
  83. package/dist/strategy-engine.js +4 -2
  84. package/dist/strategy-engine.js.map +1 -1
  85. package/dist/strategy-executor.d.ts.map +1 -1
  86. package/dist/strategy-executor.js +200 -155
  87. package/dist/strategy-executor.js.map +1 -1
  88. package/dist/strategy-lifecycle.d.ts.map +1 -1
  89. package/dist/strategy-lifecycle.js +39 -7
  90. package/dist/strategy-lifecycle.js.map +1 -1
  91. package/dist/supabase.d.ts +3 -1
  92. package/dist/supabase.d.ts.map +1 -1
  93. package/dist/supabase.js +5 -1
  94. package/dist/supabase.js.map +1 -1
  95. package/dist/team-spawner.d.ts +1 -9
  96. package/dist/team-spawner.d.ts.map +1 -1
  97. package/dist/team-spawner.js.map +1 -1
  98. package/dist/types/session.d.ts +15 -0
  99. package/dist/types/session.d.ts.map +1 -1
  100. package/dist/unified-init.js +1 -1
  101. package/dist/unified-init.js.map +1 -1
  102. package/dist/unified-shell.d.ts.map +1 -1
  103. package/dist/unified-shell.js +232 -126
  104. package/dist/unified-shell.js.map +1 -1
  105. package/dist/worktree.d.ts +1 -4
  106. package/dist/worktree.d.ts.map +1 -1
  107. package/dist/worktree.js +4 -7
  108. package/dist/worktree.js.map +1 -1
  109. package/package.json +1 -1
  110. package/dist/strategy-teardown.d.ts +0 -24
  111. package/dist/strategy-teardown.d.ts.map +0 -1
  112. package/dist/strategy-teardown.js +0 -158
  113. package/dist/strategy-teardown.js.map +0 -1
  114. package/dist/worktree-merge.d.ts +0 -23
  115. package/dist/worktree-merge.d.ts.map +0 -1
  116. package/dist/worktree-merge.js +0 -57
  117. package/dist/worktree-merge.js.map +0 -1
package/dist/git.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"git.js","sourceRoot":"","sources":["../src/git.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAIH,oDAAoD;AACpD,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAEvF,8CAA8C;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAE/D,mEAAmE;AAEnE,2CAA2C;AAC3C,OAAO,EAAE,UAAU,EAAE,sBAAsB,EAAgF,MAAM,gBAAgB,CAAC;AAElJ,qDAAqD;AACrD,OAAO,EACL,qBAAqB,EACrB,uBAAuB,EAEvB,oBAAoB,EACpB,oBAAoB,EACpB,mBAAmB,EACnB,kBAAkB,EAClB,aAAa,EACb,cAAc,GACf,MAAM,qBAAqB,CAAC;AAE7B,mCAAmC;AACnC,OAAO,EACL,YAAY,EACZ,gBAAgB,EAChB,uBAAuB,EACvB,YAAY,GACb,MAAM,iBAAiB,CAAC;AAEzB,iCAAiC;AACjC,OAAO,EACL,kBAAkB,EAElB,kBAAkB,EAClB,cAAc,EACd,6BAA6B,GAC9B,MAAM,gBAAgB,CAAC;AAExB,oDAAoD;AACpD,OAAO,EACL,uBAAuB,GACxB,MAAM,sBAAsB,CAAC;AAE9B,4EAA4E;AAC5E,OAAO,EACL,iBAAiB,EACjB,mBAAmB,EACnB,oBAAoB,EACpB,cAAc,EACd,uBAAuB,EACvB,cAAc,EACd,yBAAyB,EACzB,6BAA6B,EAC7B,wBAAwB,EACxB,cAAc,EACd,gBAAgB,EAChB,0BAA0B,EAC1B,8BAA8B,GAG/B,MAAM,eAAe,CAAC;AAEvB,mEAAmE;AAEnE;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,MAAoB;IAChD,OAAO,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC;IAE7C,0CAA0C;IAC1C,kBAAkB,CAAC;QACjB,SAAS,EAAE,MAAM,CAAC,kBAAkB;QACpC,mBAAmB,EAAE,MAAM,CAAC,4BAA4B;KACzD,CAAC,CAAC;IAEH,mCAAmC;IACnC,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAE1B,+BAA+B;IAC/B,cAAc,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAEhC,mCAAmC;IACnC,MAAM,uBAAuB,CAAC,MAAM,CAAC,CAAC;IAEtC,mEAAmE;IACnE,mBAAmB,CAAC,MAAM,CAAC,CAAC;IAE5B,0DAA0D;IAC1D,MAAM,UAAU,GAAG,MAAM,uBAAuB,CAAC,MAAM,CAAC,CAAC;IACzD,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;QACvB,OAAO,CAAC,GAAG,CAAC,gDAAgD,CAAC,CAAC;IAChE,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,IAAI,CAAC,oDAAoD,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC;QACrF,qDAAqD;IACvD,CAAC;IAED,gFAAgF;IAChF,oEAAoE;IAEpE,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC;AAC3C,CAAC"}
1
+ {"version":3,"file":"git.js","sourceRoot":"","sources":["../src/git.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAIH,oDAAoD;AACpD,OAAO,EAAE,iBAAiB,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAEvF,8CAA8C;AAC9C,OAAO,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,EAAE,uBAAuB,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAC1E,OAAO,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAE/D,mEAAmE;AAEnE,2CAA2C;AAC3C,OAAO,EAAE,UAAU,EAAE,sBAAsB,EAAgF,MAAM,gBAAgB,CAAC;AAElJ,qDAAqD;AACrD,OAAO,EACL,qBAAqB,EACrB,uBAAuB,EAEvB,oBAAoB,EACpB,oBAAoB,EACpB,mBAAmB,EACnB,kBAAkB,EAClB,aAAa,EACb,cAAc,GACf,MAAM,qBAAqB,CAAC;AAE7B,mCAAmC;AACnC,OAAO,EACL,YAAY,EACZ,gBAAgB,EAChB,uBAAuB,EACvB,cAAc,EACd,YAAY,GACb,MAAM,iBAAiB,CAAC;AAEzB,iCAAiC;AACjC,OAAO,EACL,kBAAkB,EAElB,kBAAkB,EAClB,cAAc,EACd,6BAA6B,GAC9B,MAAM,gBAAgB,CAAC;AAExB,oDAAoD;AACpD,OAAO,EACL,uBAAuB,GACxB,MAAM,sBAAsB,CAAC;AAE9B,4EAA4E;AAC5E,OAAO,EACL,iBAAiB,EACjB,mBAAmB,EACnB,oBAAoB,EACpB,cAAc,EACd,uBAAuB,EACvB,cAAc,EACd,yBAAyB,EACzB,6BAA6B,EAC7B,wBAAwB,EACxB,cAAc,EACd,gBAAgB,EAChB,0BAA0B,EAC1B,8BAA8B,GAG/B,MAAM,eAAe,CAAC;AAEvB,mEAAmE;AAEnE;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,MAAoB;IAChD,OAAO,CAAC,GAAG,CAAC,+BAA+B,CAAC,CAAC;IAE7C,0CAA0C;IAC1C,kBAAkB,CAAC;QACjB,SAAS,EAAE,MAAM,CAAC,kBAAkB;QACpC,mBAAmB,EAAE,MAAM,CAAC,4BAA4B;KACzD,CAAC,CAAC;IAEH,mCAAmC;IACnC,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAE1B,+BAA+B;IAC/B,cAAc,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAEhC,6DAA6D;IAC7D,sEAAsE;IACtE,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;QACrC,OAAO,CAAC,GAAG,CAAC,qEAAqE,CAAC,CAAC;QACnF,OAAO,CAAC,GAAG,CAAC,iEAAiE,CAAC,CAAC;QAC/E,OAAO;IACT,CAAC;IAED,mCAAmC;IACnC,MAAM,uBAAuB,CAAC,MAAM,CAAC,CAAC;IAEtC,mEAAmE;IACnE,mBAAmB,CAAC,MAAM,CAAC,CAAC;IAE5B,0DAA0D;IAC1D,MAAM,UAAU,GAAG,MAAM,uBAAuB,CAAC,MAAM,CAAC,CAAC;IACzD,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;QACvB,OAAO,CAAC,GAAG,CAAC,gDAAgD,CAAC,CAAC;IAChE,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,IAAI,CAAC,oDAAoD,UAAU,CAAC,KAAK,EAAE,CAAC,CAAC;QACrF,qDAAqD;IACvD,CAAC;IAED,gFAAgF;IAChF,oEAAoE;IAEpE,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC;AAC3C,CAAC"}
@@ -11,6 +11,7 @@
11
11
  * for stuck daemon detection.
12
12
  */
13
13
  import type { DaemonConfig } from './types.js';
14
+ import { recordSessionCompleted, recordActivity, getLastActivityAt } from './agent-state.js';
14
15
  /**
15
16
  * Update the narration for a strategy. Called by ActivityTracker callback.
16
17
  */
@@ -19,15 +20,7 @@ export declare function setNarration(strategyId: string, text: string): void;
19
20
  * Clear narration for a strategy (called when team shuts down).
20
21
  */
21
22
  export declare function clearNarration(strategyId: string): void;
22
- /**
23
- * Record daemon activity. Call this whenever meaningful work occurs
24
- * (spawning agents, completing sessions, polling, merges, etc.).
25
- */
26
- export declare function recordActivity(): void;
27
- /**
28
- * Get the last activity timestamp (for diagnostics/testing).
29
- */
30
- export declare function getLastActivityAt(): Date;
23
+ export { recordActivity, getLastActivityAt };
31
24
  /**
32
25
  * Get the current event loop lag (p99) in milliseconds and reset the histogram.
33
26
  */
@@ -54,10 +47,7 @@ export declare function setLatestAvailableVersion(version: string): void;
54
47
  * Store the latest available factory version from the npm registry.
55
48
  */
56
49
  export declare function setLatestAvailableFactoryVersion(version: string): void;
57
- /**
58
- * Record a completed session (called by spawner when an agent finishes).
59
- */
60
- export declare function recordSessionCompleted(tokens: number, cost: number): void;
50
+ export { recordSessionCompleted };
61
51
  /**
62
52
  * Record a completed issue (called when an issue transitions to Done).
63
53
  */
@@ -1 +1 @@
1
- {"version":3,"file":"heartbeat.d.ts","sourceRoot":"","sources":["../src/heartbeat.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAQH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AA4B/C;;GAEG;AACH,wBAAgB,YAAY,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAEnE;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAEvD;AAMD;;;GAGG;AACH,wBAAgB,cAAc,IAAI,IAAI,CAErC;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,IAAI,CAExC;AAmBD;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,CAM1C;AAyFD;;;;GAIG;AACH,wBAAsB,aAAa,CAAC,YAAY,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAQ7E;AAED;;GAEG;AACH,wBAAgB,WAAW,IAAI;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAEjE;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAE/D;AAED;;GAEG;AACH,wBAAgB,gCAAgC,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAEtE;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAIzE;AAED;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,IAAI,CAE3C;AA0ED;;GAEG;AACH,wBAAsB,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,CAcpD;AAED;;GAEG;AACH,wBAAsB,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAanD"}
1
+ {"version":3,"file":"heartbeat.d.ts","sourceRoot":"","sources":["../src/heartbeat.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAQH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE/C,OAAO,EAA4D,sBAAsB,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAuBvJ;;GAEG;AACH,wBAAgB,YAAY,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAEnE;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAEvD;AAGD,OAAO,EAAE,cAAc,EAAE,iBAAiB,EAAE,CAAC;AAmB7C;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,CAM1C;AA2FD;;;;GAIG;AACH,wBAAsB,aAAa,CAAC,YAAY,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAQ7E;AAED;;GAEG;AACH,wBAAgB,WAAW,IAAI;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAEjE;AAED;;;GAGG;AACH,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAE/D;AAED;;GAEG;AACH,wBAAgB,gCAAgC,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAEtE;AAGD,OAAO,EAAE,sBAAsB,EAAE,CAAC;AAElC;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,IAAI,CAE3C;AA6ED;;GAEG;AACH,wBAAsB,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,CAcpD;AAED;;GAEG;AACH,wBAAsB,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAanD"}
package/dist/heartbeat.js CHANGED
@@ -16,7 +16,7 @@ import { join, dirname, basename } from 'node:path';
16
16
  import { fileURLToPath } from 'node:url';
17
17
  import { monitorEventLoopDelay } from 'node:perf_hooks';
18
18
  import { sendHeartbeat, sendDisconnect, getCompletedSessionAggregates } from './supabase.js';
19
- import { getRunningAgents } from './spawner.js';
19
+ import { getRunningAgents, getSessionCounters, setSessionCounters, recordSessionCompleted, recordActivity, getLastActivityAt } from './agent-state.js';
20
20
  import { safeInterval } from '@telora/daemon-core';
21
21
  import { computeBranchStatus } from './branch-status.js';
22
22
  const HEARTBEAT_INTERVAL_MS = 60_000; // 60 seconds
@@ -24,10 +24,7 @@ const INACTIVITY_THRESHOLD_MS = 600_000; // 10 minutes
24
24
  const EVENT_LOOP_LAG_WARNING_MS = 30_000; // 30 seconds
25
25
  let config = null;
26
26
  let heartbeatInterval = null;
27
- let completedSessionCount = 0;
28
27
  let completedIssueCount = 0;
29
- let totalTokensUsed = 0;
30
- let totalCost = 0;
31
28
  let daemonVersion = 'unknown';
32
29
  let factoryVersion = 'unknown';
33
30
  let daemonCommitSha = 'unknown';
@@ -49,21 +46,8 @@ export function setNarration(strategyId, text) {
49
46
  export function clearNarration(strategyId) {
50
47
  narrations.delete(strategyId);
51
48
  }
52
- // ── Activity tracking ────────────────────────────────────────────────
53
- let lastActivityAt = new Date();
54
- /**
55
- * Record daemon activity. Call this whenever meaningful work occurs
56
- * (spawning agents, completing sessions, polling, merges, etc.).
57
- */
58
- export function recordActivity() {
59
- lastActivityAt = new Date();
60
- }
61
- /**
62
- * Get the last activity timestamp (for diagnostics/testing).
63
- */
64
- export function getLastActivityAt() {
65
- return lastActivityAt;
66
- }
49
+ // Re-export activity tracking from agent-state for backward compatibility
50
+ export { recordActivity, getLastActivityAt };
67
51
  // ── Event loop watchdog ──────────────────────────────────────────────
68
52
  let eventLoopHistogram = null;
69
53
  /**
@@ -152,13 +136,15 @@ async function bootstrapCountersFromDb(daemonConfig) {
152
136
  totalTokens += aggregates.totalTokens;
153
137
  totalCostAgg += aggregates.totalCost;
154
138
  }
155
- completedSessionCount = totalCompleted;
156
- totalTokensUsed = totalTokens;
157
- totalCost = totalCostAgg;
139
+ setSessionCounters({
140
+ completedSessionCount: totalCompleted,
141
+ totalTokensUsed: totalTokens,
142
+ totalCost: totalCostAgg,
143
+ });
158
144
  console.log(`Bootstrapped heartbeat counters from DB (${daemonConfig.products.length} products): ` +
159
- `${completedSessionCount} sessions, ` +
160
- `${totalTokensUsed} tokens, ` +
161
- `$${totalCost.toFixed(2)} cost`);
145
+ `${totalCompleted} sessions, ` +
146
+ `${totalTokens} tokens, ` +
147
+ `$${totalCostAgg.toFixed(2)} cost`);
162
148
  }
163
149
  catch (err) {
164
150
  console.warn(`Failed to bootstrap heartbeat counters from DB (starting at zero): ` +
@@ -199,14 +185,8 @@ export function setLatestAvailableVersion(version) {
199
185
  export function setLatestAvailableFactoryVersion(version) {
200
186
  latestAvailableFactoryVersion = version;
201
187
  }
202
- /**
203
- * Record a completed session (called by spawner when an agent finishes).
204
- */
205
- export function recordSessionCompleted(tokens, cost) {
206
- completedSessionCount++;
207
- totalTokensUsed += tokens;
208
- totalCost += cost;
209
- }
188
+ // Re-export recordSessionCompleted from agent-state for backward compatibility
189
+ export { recordSessionCompleted };
210
190
  /**
211
191
  * Record a completed issue (called when an issue transitions to Done).
212
192
  */
@@ -224,11 +204,12 @@ async function doHeartbeat() {
224
204
  const eventLoopLagMs = getEventLoopLagMs();
225
205
  checkEventLoopLag(eventLoopLagMs);
226
206
  // Inactivity detection: warn if no activity for 10+ minutes
227
- const inactivityMs = Date.now() - lastActivityAt.getTime();
207
+ const lastActivity = getLastActivityAt();
208
+ const inactivityMs = Date.now() - lastActivity.getTime();
228
209
  if (inactivityMs > INACTIVITY_THRESHOLD_MS) {
229
210
  console.warn(`[watchdog] Daemon inactive for ${Math.round(inactivityMs / 1000)}s. ` +
230
211
  `Running agents: ${runningAgents.size}. ` +
231
- `Last activity: ${lastActivityAt.toISOString()}`);
212
+ `Last activity: ${lastActivity.toISOString()}`);
232
213
  }
233
214
  // Build metadata with version observability fields
234
215
  const metadata = {};
@@ -251,17 +232,18 @@ async function doHeartbeat() {
251
232
  if (narrations.size > 0) {
252
233
  metadata.narrations = Object.fromEntries(narrations);
253
234
  }
235
+ const counters = getSessionCounters();
254
236
  try {
255
237
  await sendHeartbeat(process.pid, osHostname(), basename(config.repoPath), daemonVersion, {
256
238
  activeSessions: runningAgents.size,
257
- completedSessions: completedSessionCount,
239
+ completedSessions: counters.completedSessionCount,
258
240
  plannedIssues: 0, // Could be enriched later by querying ready deliveries
259
241
  inProgressIssues: runningAgents.size,
260
242
  completedIssues: completedIssueCount,
261
- totalTokensUsed,
262
- totalCost,
243
+ totalTokensUsed: counters.totalTokensUsed,
244
+ totalCost: counters.totalCost,
263
245
  daemonStartedAt,
264
- lastActivityAt: lastActivityAt.toISOString(),
246
+ lastActivityAt: getLastActivityAt().toISOString(),
265
247
  eventLoopLagMs,
266
248
  productId: config.productId,
267
249
  productIds: config.products.map(p => p.id),
@@ -1 +1 @@
1
- {"version":3,"file":"heartbeat.js","sourceRoot":"","sources":["../src/heartbeat.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"heartbeat.js","sourceRoot":"","sources":["../src/heartbeat.ts"],"names":[],"mappings":"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"}
@@ -24,6 +24,10 @@ export declare function checkDeliveryAutoAdvance(config: DaemonConfig): Promise<
24
24
  * When the review agent creates new issues on a verify delivery, this poll
25
25
  * step detects the open issues and moves the delivery back to iterating
26
26
  * so the normal wake/work flow picks it up.
27
+ *
28
+ * IMPORTANT: Must be called with a product-scoped config so that only teams
29
+ * belonging to the current product are checked. Without product scoping,
30
+ * Product A's poll cycle would operate on Product B's deliveries/issues.
27
31
  */
28
- export declare function checkVerifyDeliveriesForOpenIssues(_config: DaemonConfig): Promise<void>;
32
+ export declare function checkVerifyDeliveriesForOpenIssues(config: DaemonConfig): Promise<void>;
29
33
  //# sourceMappingURL=listener-auto-advance.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"listener-auto-advance.d.ts","sourceRoot":"","sources":["../src/listener-auto-advance.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAK/C;;;;;;;;;;GAUG;AACH,wBAAsB,wBAAwB,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAiGlF;AAED;;;;;;GAMG;AACH,wBAAsB,kCAAkC,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAmE7F"}
1
+ {"version":3,"file":"listener-auto-advance.d.ts","sourceRoot":"","sources":["../src/listener-auto-advance.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAK/C;;;;;;;;;;GAUG;AACH,wBAAsB,wBAAwB,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAiGlF;AAED;;;;;;;;;;GAUG;AACH,wBAAsB,kCAAkC,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAuE5F"}
@@ -111,8 +111,12 @@ export async function checkDeliveryAutoAdvance(config) {
111
111
  * When the review agent creates new issues on a verify delivery, this poll
112
112
  * step detects the open issues and moves the delivery back to iterating
113
113
  * so the normal wake/work flow picks it up.
114
+ *
115
+ * IMPORTANT: Must be called with a product-scoped config so that only teams
116
+ * belonging to the current product are checked. Without product scoping,
117
+ * Product A's poll cycle would operate on Product B's deliveries/issues.
114
118
  */
115
- export async function checkVerifyDeliveriesForOpenIssues(_config) {
119
+ export async function checkVerifyDeliveriesForOpenIssues(config) {
116
120
  const activeTeams = getActiveTeams();
117
121
  if (activeTeams.size === 0)
118
122
  return;
@@ -120,6 +124,10 @@ export async function checkVerifyDeliveriesForOpenIssues(_config) {
120
124
  for (const [strategyId, team] of activeTeams) {
121
125
  if (team.phase !== 'executing')
122
126
  continue;
127
+ // Only operate on teams belonging to this product — without this guard,
128
+ // one product's poll cycle would modify another product's issues/deliveries.
129
+ if (team.productId !== config.productId)
130
+ continue;
123
131
  try {
124
132
  const deliveries = await getStrategyDeliveries(strategyId);
125
133
  const verifyDeliveries = deliveries.filter(d => d.executionStatus === 'verify' || d.executionStatus === 'in_review');
@@ -1 +1 @@
1
- {"version":3,"file":"listener-auto-advance.js","sourceRoot":"","sources":["../src/listener-auto-advance.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"listener-auto-advance.js","sourceRoot":"","sources":["../src/listener-auto-advance.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"listener.d.ts","sourceRoot":"","sources":["../src/listener.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAa,MAAM,YAAY,CAAC;AAoC1D;;GAEG;AACH,wBAAsB,YAAY,CAAC,YAAY,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAuB5E;AAED;;GAEG;AACH,wBAAgB,qBAAqB,IAAI,IAAI,CAgC5C;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,IAAI,IAAI,CAO3C;AAED;;;;;;;GAOG;AACH,wBAAsB,sBAAsB,IAAI,OAAO,CAAC,IAAI,CAAC,CAsG5D;AAED;;;;;;;;GAQG;AACH,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,IAAI,CAAC,CAkIxD;AAED;;GAEG;AACH,wBAAsB,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAMnD;AAED;;GAEG;AACH,wBAAsB,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC,CASlD;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,IAAI,IAAI,CAGnC"}
1
+ {"version":3,"file":"listener.d.ts","sourceRoot":"","sources":["../src/listener.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAa,MAAM,YAAY,CAAC;AAiD1D;;GAEG;AACH,wBAAsB,YAAY,CAAC,YAAY,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAwB5E;AAED;;GAEG;AACH,wBAAgB,qBAAqB,IAAI,IAAI,CAkC5C;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,IAAI,IAAI,CAO3C;AAED;;;;;;;GAOG;AACH,wBAAsB,sBAAsB,IAAI,OAAO,CAAC,IAAI,CAAC,CAqH5D;AAED;;;;;;;;GAQG;AACH,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,IAAI,CAAC,CAoIxD;AAED;;GAEG;AACH,wBAAsB,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAMnD;AAED;;GAEG;AACH,wBAAsB,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC,CAUlD;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,IAAI,IAAI,CAGnC"}
package/dist/listener.js CHANGED
@@ -13,9 +13,10 @@ import { spawnStrategyTeam, hasActiveTeam, getActiveTeamCount, getActiveTeams, c
13
13
  import { checkResolvedMergeConflicts } from './strategy-merge.js';
14
14
  import { recordActivity } from './heartbeat.js';
15
15
  import { safeInterval, withRetry } from '@telora/daemon-core';
16
- import { checkQaRequests, checkProductQaRequests } from './qa-orchestrator.js';
16
+ import { checkQaRequests, checkProductQaRequests, checkSavePointQaRequests } from './qa-orchestrator.js';
17
+ import { checkSavePointRestoreRequests } from './save-point-restore.js';
17
18
  import { getActiveSessions, updateSession } from './queries/sessions.js';
18
- import { getRunningAgents } from './spawner.js';
19
+ import { getRunningAgents } from './agent-state.js';
19
20
  import { ensureStrategyWorktrees, checkForDeactivatedStrategies } from './strategy-lifecycle.js';
20
21
  import { detectGitStates } from './git-state-detector.js';
21
22
  import { checkControlStateChanges } from './control-state.js';
@@ -27,9 +28,12 @@ const idleLoggedStrategies = new Set();
27
28
  let config = null;
28
29
  const roles = new Map();
29
30
  let pollInterval = null;
30
- let isProcessing = false;
31
+ let pollState = 'idle';
31
32
  // Polling interval in milliseconds (default: 30 seconds)
32
33
  const POLL_INTERVAL_MS = 30000;
34
+ // Roles refresh: re-fetch from DB periodically to pick up changes
35
+ const ROLES_REFRESH_INTERVAL_MS = 5 * 60 * 1000; // 5 minutes
36
+ let lastRolesRefreshAt = 0;
33
37
  // Health check backoff: track consecutive failures to avoid hammering a broken API
34
38
  let healthCheckConsecutiveFailures = 0;
35
39
  const HEALTH_CHECK_MAX_SKIP_CYCLES = 10; // max backoff = 10 * 30s = 5 minutes
@@ -47,6 +51,7 @@ export async function initListener(daemonConfig) {
47
51
  for (const role of roleList) {
48
52
  roles.set(role.id, role);
49
53
  }
54
+ lastRolesRefreshAt = Date.now();
50
55
  console.log(`Loaded ${roles.size} agent roles`);
51
56
  }
52
57
  catch (error) {
@@ -79,16 +84,18 @@ export function startDeliveryListener() {
79
84
  await checkForDeactivatedStrategies(pc);
80
85
  await checkControlStateChanges(pc);
81
86
  await checkDeliveryAutoAdvance(pc);
87
+ await checkVerifyDeliveriesForOpenIssues(pc);
82
88
  }
83
89
  await processReadyStrategies();
84
90
  await checkAndMergeCompletedDeliveries(config);
85
91
  await checkResolvedMergeConflicts(config);
86
92
  await checkReviewRequests(config, roles);
87
93
  await checkAutoReview(config, roles);
88
- await checkVerifyDeliveriesForOpenIssues(config);
89
94
  await detectGitStates(config);
90
95
  await checkQaRequests(config);
91
96
  await checkProductQaRequests(config);
97
+ await checkSavePointQaRequests(config);
98
+ await checkSavePointRestoreRequests(config);
92
99
  await checkSessionHealth();
93
100
  }, POLL_INTERVAL_MS, 'strategy-poll');
94
101
  console.log(`Started strategy polling (every ${POLL_INTERVAL_MS / 1000}s)`);
@@ -115,12 +122,27 @@ export function startSessionListener() {
115
122
  export async function processReadyStrategies() {
116
123
  if (!config)
117
124
  return;
118
- // Prevent concurrent processing
119
- if (isProcessing) {
125
+ // Prevent concurrent processing, and skip cycles during health check backoff
126
+ if (pollState === 'processing' || pollState === 'backing_off') {
120
127
  return;
121
128
  }
122
- isProcessing = true;
129
+ pollState = 'processing';
123
130
  try {
131
+ // Periodically refresh agent roles to pick up changes
132
+ if (Date.now() - lastRolesRefreshAt > ROLES_REFRESH_INTERVAL_MS) {
133
+ try {
134
+ const roleList = await getAgentRoles(config.organizationId);
135
+ roles.clear();
136
+ for (const role of roleList) {
137
+ roles.set(role.id, role);
138
+ }
139
+ lastRolesRefreshAt = Date.now();
140
+ console.log(`[listener] Refreshed agent roles (${roles.size} roles loaded)`);
141
+ }
142
+ catch (err) {
143
+ console.warn(`[listener] Failed to refresh agent roles: ${err.message}`);
144
+ }
145
+ }
124
146
  // Record activity: proves the poll ran even if no work was found
125
147
  recordActivity();
126
148
  // Snapshot active teams before processing (for idle detection)
@@ -199,7 +221,7 @@ export async function processReadyStrategies() {
199
221
  console.error('Error processing ready strategies:', error);
200
222
  }
201
223
  finally {
202
- isProcessing = false;
224
+ pollState = healthCheckConsecutiveFailures > 0 ? 'backing_off' : 'idle';
203
225
  }
204
226
  }
205
227
  /**
@@ -235,10 +257,12 @@ export async function checkSessionHealth() {
235
257
  if (healthCheckConsecutiveFailures > 0) {
236
258
  console.log(`[health] Session health check recovered after ${healthCheckConsecutiveFailures} failures`);
237
259
  healthCheckConsecutiveFailures = 0;
260
+ pollState = 'idle';
238
261
  }
239
262
  }
240
263
  catch (err) {
241
264
  healthCheckConsecutiveFailures++;
265
+ pollState = 'backing_off';
242
266
  console.warn(`[health] Failed to fetch active sessions (failure #${healthCheckConsecutiveFailures}): ${err.message}`);
243
267
  return;
244
268
  }
@@ -339,6 +363,7 @@ export async function refreshRoles() {
339
363
  for (const role of roleList) {
340
364
  roles.set(role.id, role);
341
365
  }
366
+ lastRolesRefreshAt = Date.now();
342
367
  console.log(`Refreshed ${roles.size} agent roles`);
343
368
  }
344
369
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"listener.js","sourceRoot":"","sources":["../src/listener.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"listener.js","sourceRoot":"","sources":["../src/listener.ts"],"names":[],"mappings":"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"}
@@ -9,7 +9,7 @@ import type { StrategyTeamState } from './types.js';
9
9
  import { StreamJsonParser } from '@telora/daemon-core';
10
10
  import { CompletionDetector } from './completion-detector.js';
11
11
  import { ActivityTracker } from './activity-tracker.js';
12
- import type { LogStreams } from './team-spawner.js';
12
+ import type { LogStreams } from './types.js';
13
13
  export interface OutputMonitoringContext {
14
14
  proc: ChildProcess;
15
15
  teamState: StrategyTeamState;
@@ -1 +1 @@
1
- {"version":3,"file":"output-monitor.d.ts","sourceRoot":"","sources":["../src/output-monitor.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAEvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAE9D,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAExD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAEpD,MAAM,WAAW,uBAAuB;IACtC,IAAI,EAAE,YAAY,CAAC;IACnB,SAAS,EAAE,iBAAiB,CAAC;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,UAAU,CAAC;CACxB;AAED,MAAM,WAAW,sBAAsB;IACrC,YAAY,EAAE,gBAAgB,CAAC;IAC/B,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,eAAe,EAAE,eAAe,CAAC;CAClC;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,uBAAuB,GAAG,sBAAsB,CAuD1F"}
1
+ {"version":3,"file":"output-monitor.d.ts","sourceRoot":"","sources":["../src/output-monitor.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AACpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAEvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAE9D,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAExD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE7C,MAAM,WAAW,uBAAuB;IACtC,IAAI,EAAE,YAAY,CAAC;IACnB,SAAS,EAAE,iBAAiB,CAAC;IAC7B,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,UAAU,CAAC;CACxB;AAED,MAAM,WAAW,sBAAsB;IACrC,YAAY,EAAE,gBAAgB,CAAC;IAC/B,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,eAAe,EAAE,eAAe,CAAC;CAClC;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,uBAAuB,GAAG,sBAAsB,CAuD1F"}
@@ -6,7 +6,7 @@
6
6
  */
7
7
  import type { DaemonConfig, StrategyWorktreeInfo } from './types.js';
8
8
  import type { StartQaDevServerOptions, StartQaDevServerResult } from './qa-dev-server.js';
9
- import type { QaEnvironmentState, ProductQaEnvironmentState } from './qa-state.js';
9
+ import type { QaEnvironmentState, ProductQaEnvironmentState, SavePointQaEnvironmentState } from './qa-state.js';
10
10
  /** Shape of a QA request row from the API query. */
11
11
  export interface QaRequest {
12
12
  strategy_id: string;
@@ -76,4 +76,32 @@ export interface ProductQaOrchestratorDeps {
76
76
  * Called each poll cycle from listener.ts.
77
77
  */
78
78
  export declare function checkProductQaRequests(config: DaemonConfig, deps?: ProductQaOrchestratorDeps): Promise<void>;
79
+ /** Shape of a save point QA request row from the API query. */
80
+ export interface SavePointQaRequest {
81
+ save_point_id: string;
82
+ name: string;
83
+ commit_sha: string;
84
+ worktree_path: string | null;
85
+ qa_status: string;
86
+ product_id: string;
87
+ }
88
+ /** Injectable dependencies for save point QA testing. */
89
+ export interface SavePointQaOrchestratorDeps {
90
+ getSavePointQaRequests: (productId: string) => Promise<SavePointQaRequest[]>;
91
+ updateSavePointQaStatus: (savePointId: string, fields: Record<string, unknown>) => Promise<void>;
92
+ symlinkEnvFiles: (repoPath: string, worktreePath: string) => void;
93
+ allocatePort: (config: DaemonConfig) => Promise<number>;
94
+ buildQaUrl: (config: DaemonConfig, port: number) => string;
95
+ startQaDevServer: (options: StartQaDevServerOptions) => StartQaDevServerResult;
96
+ stopQaDevServer: (pid: number) => Promise<void>;
97
+ getSavePointQaEnvironment: (savePointId: string) => SavePointQaEnvironmentState | undefined;
98
+ setSavePointQaEnvironment: (savePointId: string, state: SavePointQaEnvironmentState) => void;
99
+ removeSavePointQaEnvironment: (savePointId: string) => boolean;
100
+ hasActiveSavePointQaEnvironment: (savePointId: string) => boolean;
101
+ }
102
+ /**
103
+ * Check for and process pending save point QA requests.
104
+ * Called each poll cycle from listener.ts.
105
+ */
106
+ export declare function checkSavePointQaRequests(config: DaemonConfig, deps?: SavePointQaOrchestratorDeps): Promise<void>;
79
107
  //# sourceMappingURL=qa-orchestrator.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"qa-orchestrator.d.ts","sourceRoot":"","sources":["../src/qa-orchestrator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"qa-orchestrator.d.ts","sourceRoot":"","sources":["../src/qa-orchestrator.ts"],"names":[],"mappings":"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"}