@telora/daemon 0.16.7 → 0.16.16

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 (121) hide show
  1. package/build-info.json +7 -3
  2. package/dist/audit-phase.d.ts +14 -0
  3. package/dist/audit-phase.d.ts.map +1 -1
  4. package/dist/audit-phase.js +52 -12
  5. package/dist/audit-phase.js.map +1 -1
  6. package/dist/backends/agent-backend.d.ts +63 -0
  7. package/dist/backends/agent-backend.d.ts.map +1 -0
  8. package/dist/backends/agent-backend.js +19 -0
  9. package/dist/backends/agent-backend.js.map +1 -0
  10. package/dist/backends/availability.d.ts +28 -0
  11. package/dist/backends/availability.d.ts.map +1 -0
  12. package/dist/backends/availability.js +49 -0
  13. package/dist/backends/availability.js.map +1 -0
  14. package/dist/backends/claude/claude-backend.d.ts +12 -0
  15. package/dist/backends/claude/claude-backend.d.ts.map +1 -0
  16. package/dist/backends/claude/claude-backend.js +86 -0
  17. package/dist/backends/claude/claude-backend.js.map +1 -0
  18. package/dist/backends/codex/codex-backend.d.ts +23 -0
  19. package/dist/backends/codex/codex-backend.d.ts.map +1 -0
  20. package/dist/backends/codex/codex-backend.js +116 -0
  21. package/dist/backends/codex/codex-backend.js.map +1 -0
  22. package/dist/backends/index.d.ts +13 -0
  23. package/dist/backends/index.d.ts.map +1 -0
  24. package/dist/backends/index.js +20 -0
  25. package/dist/backends/index.js.map +1 -0
  26. package/dist/backends/registry.d.ts +29 -0
  27. package/dist/backends/registry.d.ts.map +1 -0
  28. package/dist/backends/registry.js +45 -0
  29. package/dist/backends/registry.js.map +1 -0
  30. package/dist/backends/resolve.d.ts +44 -0
  31. package/dist/backends/resolve.d.ts.map +1 -0
  32. package/dist/backends/resolve.js +57 -0
  33. package/dist/backends/resolve.js.map +1 -0
  34. package/dist/completion-detector.d.ts +18 -16
  35. package/dist/completion-detector.d.ts.map +1 -1
  36. package/dist/completion-detector.js +36 -36
  37. package/dist/completion-detector.js.map +1 -1
  38. package/dist/directive-executor.d.ts +6 -1
  39. package/dist/directive-executor.d.ts.map +1 -1
  40. package/dist/directive-executor.js +26 -11
  41. package/dist/directive-executor.js.map +1 -1
  42. package/dist/focus-completion-event.d.ts +20 -7
  43. package/dist/focus-completion-event.d.ts.map +1 -1
  44. package/dist/focus-completion-event.js +29 -10
  45. package/dist/focus-completion-event.js.map +1 -1
  46. package/dist/focus-executor.d.ts +15 -1
  47. package/dist/focus-executor.d.ts.map +1 -1
  48. package/dist/focus-executor.js +129 -62
  49. package/dist/focus-executor.js.map +1 -1
  50. package/dist/focus-spawn-helpers.d.ts +2 -0
  51. package/dist/focus-spawn-helpers.d.ts.map +1 -1
  52. package/dist/focus-spawn-helpers.js +42 -37
  53. package/dist/focus-spawn-helpers.js.map +1 -1
  54. package/dist/git-merge.d.ts.map +1 -1
  55. package/dist/git-merge.js +42 -16
  56. package/dist/git-merge.js.map +1 -1
  57. package/dist/heartbeat.d.ts.map +1 -1
  58. package/dist/heartbeat.js +7 -0
  59. package/dist/heartbeat.js.map +1 -1
  60. package/dist/listener.d.ts.map +1 -1
  61. package/dist/listener.js +4 -1
  62. package/dist/listener.js.map +1 -1
  63. package/dist/merge-back-loop.d.ts.map +1 -1
  64. package/dist/merge-back-loop.js +1 -0
  65. package/dist/merge-back-loop.js.map +1 -1
  66. package/dist/output-monitor.d.ts +11 -6
  67. package/dist/output-monitor.d.ts.map +1 -1
  68. package/dist/output-monitor.js +53 -41
  69. package/dist/output-monitor.js.map +1 -1
  70. package/dist/queries/deliveries.d.ts +15 -0
  71. package/dist/queries/deliveries.d.ts.map +1 -1
  72. package/dist/queries/deliveries.js +6 -0
  73. package/dist/queries/deliveries.js.map +1 -1
  74. package/dist/queries/focuses.d.ts +13 -1
  75. package/dist/queries/focuses.d.ts.map +1 -1
  76. package/dist/queries/focuses.js +17 -1
  77. package/dist/queries/focuses.js.map +1 -1
  78. package/dist/queries/schemas.d.ts +12 -0
  79. package/dist/queries/schemas.d.ts.map +1 -1
  80. package/dist/queries/schemas.js +15 -0
  81. package/dist/queries/schemas.js.map +1 -1
  82. package/dist/session-lifecycle.d.ts.map +1 -1
  83. package/dist/session-lifecycle.js +4 -2
  84. package/dist/session-lifecycle.js.map +1 -1
  85. package/dist/session-lineage.d.ts +68 -0
  86. package/dist/session-lineage.d.ts.map +1 -0
  87. package/dist/session-lineage.js +63 -0
  88. package/dist/session-lineage.js.map +1 -0
  89. package/dist/spawn-environment.d.ts +11 -0
  90. package/dist/spawn-environment.d.ts.map +1 -1
  91. package/dist/spawn-environment.js +27 -0
  92. package/dist/spawn-environment.js.map +1 -1
  93. package/dist/spawner-lifecycle.d.ts +27 -7
  94. package/dist/spawner-lifecycle.d.ts.map +1 -1
  95. package/dist/spawner-lifecycle.js +40 -21
  96. package/dist/spawner-lifecycle.js.map +1 -1
  97. package/dist/spawner-stream-handlers.d.ts +3 -2
  98. package/dist/spawner-stream-handlers.d.ts.map +1 -1
  99. package/dist/spawner-stream-handlers.js +37 -34
  100. package/dist/spawner-stream-handlers.js.map +1 -1
  101. package/dist/spawner.d.ts +8 -17
  102. package/dist/spawner.d.ts.map +1 -1
  103. package/dist/spawner.js +8 -319
  104. package/dist/spawner.js.map +1 -1
  105. package/dist/team-prompt-base.d.ts +35 -2
  106. package/dist/team-prompt-base.d.ts.map +1 -1
  107. package/dist/team-prompt-base.js +93 -9
  108. package/dist/team-prompt-base.js.map +1 -1
  109. package/dist/team-spawner.d.ts +21 -3
  110. package/dist/team-spawner.d.ts.map +1 -1
  111. package/dist/team-spawner.js +49 -34
  112. package/dist/team-spawner.js.map +1 -1
  113. package/dist/types/config.d.ts +2 -0
  114. package/dist/types/config.d.ts.map +1 -1
  115. package/dist/types/focus.d.ts +10 -0
  116. package/dist/types/focus.d.ts.map +1 -1
  117. package/dist/types/session.d.ts +4 -4
  118. package/dist/types/session.d.ts.map +1 -1
  119. package/dist/types/workflow.d.ts +17 -0
  120. package/dist/types/workflow.d.ts.map +1 -1
  121. package/package.json +3 -3
@@ -39,4 +39,15 @@ export interface SpawnIds {
39
39
  * - Includes telora.delivery_id in OTEL_RESOURCE_ATTRIBUTES only when deliveryId is provided
40
40
  */
41
41
  export declare function buildSpawnEnvironment(config: DaemonConfig, ids: SpawnIds): Record<string, string | undefined>;
42
+ /**
43
+ * Fetch engine-specific API keys from org secrets and return them as env var
44
+ * overrides to merge into the spawn environment. Non-fatal: returns {} on any
45
+ * error so the process falls back to host credentials (e.g. ~/.codex OAuth).
46
+ *
47
+ * Currently handles:
48
+ * codex -> fetches the org's OpenAI API key (provider 'openai') as CODEX_API_KEY.
49
+ *
50
+ * Skipped for 'claude' (Claude Code reads ANTHROPIC_API_KEY from its own config).
51
+ */
52
+ export declare function fetchBackendEnvExtras(backendId: string): Promise<Record<string, string>>;
42
53
  //# sourceMappingURL=spawn-environment.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"spawn-environment.d.ts","sourceRoot":"","sources":["../src/spawn-environment.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAG/C;;;;;;;;GAQG;AACH,MAAM,WAAW,QAAQ;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;;;GASG;AACH,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,YAAY,EACpB,GAAG,EAAE,QAAQ,GACZ,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CA8BpC"}
1
+ {"version":3,"file":"spawn-environment.d.ts","sourceRoot":"","sources":["../src/spawn-environment.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAI/C;;;;;;;;GAQG;AACH,MAAM,WAAW,QAAQ;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;;;GASG;AACH,wBAAgB,qBAAqB,CACnC,MAAM,EAAE,YAAY,EACpB,GAAG,EAAE,QAAQ,GACZ,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CA8BpC;AAED;;;;;;;;;GASG;AACH,wBAAsB,qBAAqB,CACzC,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAcjC"}
@@ -11,6 +11,7 @@
11
11
  * is preserved because it is set intentionally.
12
12
  */
13
13
  import { stripClaudeCodeEnvVars, buildOtelEnv } from '@telora/daemon-core';
14
+ import { callApi } from './queries/shared.js';
14
15
  /**
15
16
  * Build a clean environment for a spawned agent or team lead process.
16
17
  *
@@ -47,4 +48,30 @@ export function buildSpawnEnvironment(config, ids) {
47
48
  Object.assign(spawnEnv, otelEnv);
48
49
  return spawnEnv;
49
50
  }
51
+ /**
52
+ * Fetch engine-specific API keys from org secrets and return them as env var
53
+ * overrides to merge into the spawn environment. Non-fatal: returns {} on any
54
+ * error so the process falls back to host credentials (e.g. ~/.codex OAuth).
55
+ *
56
+ * Currently handles:
57
+ * codex -> fetches the org's OpenAI API key (provider 'openai') as CODEX_API_KEY.
58
+ *
59
+ * Skipped for 'claude' (Claude Code reads ANTHROPIC_API_KEY from its own config).
60
+ */
61
+ export async function fetchBackendEnvExtras(backendId) {
62
+ if (backendId === 'codex') {
63
+ try {
64
+ const result = await callApi('llm_secret_get', {
65
+ provider: 'openai',
66
+ });
67
+ if (result.apiKey) {
68
+ return { CODEX_API_KEY: result.apiKey };
69
+ }
70
+ }
71
+ catch {
72
+ // Non-fatal: fall back to host OAuth / CODEX_API_KEY already in process.env
73
+ }
74
+ }
75
+ return {};
76
+ }
50
77
  //# sourceMappingURL=spawn-environment.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"spawn-environment.js","sourceRoot":"","sources":["../src/spawn-environment.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAGH,OAAO,EAAE,sBAAsB,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAoB3E;;;;;;;;;GASG;AACH,MAAM,UAAU,qBAAqB,CACnC,MAAoB,EACpB,GAAa;IAEb,6DAA6D;IAC7D,6EAA6E;IAC7E,MAAM,QAAQ,GAAG,sBAAsB,CACrC;QACE,GAAG,OAAO,CAAC,GAAG;QACd,mBAAmB,EAAE,GAAG;QACxB,kBAAkB,EAAE,WAAW;QAC/B,4DAA4D;QAC5D,oCAAoC,EAAE,GAAG;KAC1C,EACD,EAAE,QAAQ,EAAE,CAAC,sCAAsC,CAAC,EAAE,CACvD,CAAC;IAEF,2DAA2D;IAC3D,MAAM,OAAO,GAAG,YAAY,CAAC;QAC3B,OAAO,EAAE,MAAM,CAAC,SAAS,CAAC,OAAO;QACjC,IAAI,EAAE,MAAM,CAAC,SAAS,CAAC,IAAI;QAC3B,kBAAkB,EAAE;YAClB,eAAe,EAAE,GAAG,CAAC,KAAK;YAC1B,iBAAiB,EAAE,GAAG,CAAC,OAAO;YAC9B,oBAAoB,EAAE,GAAG,CAAC,UAAU;YACpC,mBAAmB,EAAE,GAAG,CAAC,SAAS;YAClC,cAAc,EAAE,GAAG,CAAC,KAAK;YACzB,cAAc,EAAE,GAAG,CAAC,KAAK;SAC1B;KACF,CAAC,CAAC;IACH,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAEjC,OAAO,QAAQ,CAAC;AAClB,CAAC"}
1
+ {"version":3,"file":"spawn-environment.js","sourceRoot":"","sources":["../src/spawn-environment.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAGH,OAAO,EAAE,sBAAsB,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAC3E,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAoB9C;;;;;;;;;GASG;AACH,MAAM,UAAU,qBAAqB,CACnC,MAAoB,EACpB,GAAa;IAEb,6DAA6D;IAC7D,6EAA6E;IAC7E,MAAM,QAAQ,GAAG,sBAAsB,CACrC;QACE,GAAG,OAAO,CAAC,GAAG;QACd,mBAAmB,EAAE,GAAG;QACxB,kBAAkB,EAAE,WAAW;QAC/B,4DAA4D;QAC5D,oCAAoC,EAAE,GAAG;KAC1C,EACD,EAAE,QAAQ,EAAE,CAAC,sCAAsC,CAAC,EAAE,CACvD,CAAC;IAEF,2DAA2D;IAC3D,MAAM,OAAO,GAAG,YAAY,CAAC;QAC3B,OAAO,EAAE,MAAM,CAAC,SAAS,CAAC,OAAO;QACjC,IAAI,EAAE,MAAM,CAAC,SAAS,CAAC,IAAI;QAC3B,kBAAkB,EAAE;YAClB,eAAe,EAAE,GAAG,CAAC,KAAK;YAC1B,iBAAiB,EAAE,GAAG,CAAC,OAAO;YAC9B,oBAAoB,EAAE,GAAG,CAAC,UAAU;YACpC,mBAAmB,EAAE,GAAG,CAAC,SAAS;YAClC,cAAc,EAAE,GAAG,CAAC,KAAK;YACzB,cAAc,EAAE,GAAG,CAAC,KAAK;SAC1B;KACF,CAAC,CAAC;IACH,MAAM,CAAC,MAAM,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAEjC,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,SAAiB;IAEjB,IAAI,SAAS,KAAK,OAAO,EAAE,CAAC;QAC1B,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,OAAO,CAA4B,gBAAgB,EAAE;gBACxE,QAAQ,EAAE,QAAQ;aACnB,CAAC,CAAC;YACH,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;gBAClB,OAAO,EAAE,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,CAAC;YAC1C,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,4EAA4E;QAC9E,CAAC;IACH,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC"}
@@ -52,23 +52,43 @@ export interface AuditSpawnOptions {
52
52
  model: string;
53
53
  timeoutMs: number;
54
54
  allowedTools: readonly string[];
55
+ /**
56
+ * Prior audit-lineage Claude session id to resume (INJ-E). When set, the
57
+ * assessor reconnects to the previous cycle's session so it accumulates
58
+ * cross-cycle memory of the gap's trajectory. Omitted/null -> fresh session.
59
+ */
60
+ resumeSessionId?: string | null;
55
61
  }
56
62
  /** Result of an audit-assessor spawn. */
57
63
  export interface AuditSpawnResult {
58
64
  exitCode: number | null;
65
+ /**
66
+ * The assessor's assistant text, reconstructed from stream-json output so
67
+ * parseAuditSummary can extract the fenced audit-summary block. Falls back to
68
+ * the raw child stdout when no stream-json events parsed (e.g. a non-JSON
69
+ * stub).
70
+ */
59
71
  stdout: string;
60
72
  stderr: string;
61
73
  errorMessage?: string;
74
+ /**
75
+ * Claude session id emitted by the stream-json init event (INJ-E). Persisted
76
+ * under the focus's 'audit' lineage so the next cycle can resume. Null when
77
+ * no init event was observed.
78
+ */
79
+ sessionId?: string | null;
62
80
  }
63
81
  /**
64
- * Spawn the Claude Code CLI as a one-shot audit assessor.
82
+ * Spawn the Claude Code CLI as the audit assessor (INJ-E: resumable).
65
83
  *
66
- * Like spawnResolutionAgent, this is a short-lived, single-purpose process:
67
- * no agent_sessions DB row, no worktree creation, no stream-json. The
68
- * assessor runs in --print mode against the configured worktree (or
69
- * config.repoPath) and exits when the prompt is satisfied. It is allowed
70
- * only the reality_tree_* MCP tools so it can mutate the graph but not
71
- * touch workflow state.
84
+ * Short-lived, single-purpose process: no agent_sessions DB row, no worktree
85
+ * creation. It runs in --print mode with stream-json output so it emits a
86
+ * session_id (captured for the focus's 'audit' lineage) and so its assistant
87
+ * text can be reconstructed for the audit-summary parser. When `resumeSessionId`
88
+ * is supplied it reconnects to the prior cycle's session via --resume, giving
89
+ * the differential receiver cross-cycle memory. It is allowed only the
90
+ * reality_tree_* MCP tools so it can mutate the graph but not touch workflow
91
+ * state.
72
92
  */
73
93
  export declare function spawnAuditAgent(opts: AuditSpawnOptions): Promise<AuditSpawnResult>;
74
94
  //# sourceMappingURL=spawner-lifecycle.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"spawner-lifecycle.d.ts","sourceRoot":"","sources":["../src/spawner-lifecycle.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAM7D;;;GAGG;AACH,wBAAgB,cAAc,CAC5B,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,GACvC,OAAO,CA2BT;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,aAAa,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,GACvC,IAAI,CAIN;AAED;;GAEG;AACH,wBAAgB,cAAc,CAC5B,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,GACvC,OAAO,CAET;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,aAAa,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,GACvC,MAAM,CAER;AAOD;;;;;;GAMG;AACH,wBAAsB,oBAAoB,CAAC,MAAM,EAAE;IACjD,MAAM,EAAE,YAAY,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,gBAAgB,EAAE,MAAM,CAAC;IACzB,kFAAkF;IAClF,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAmFhD;AAID,gEAAgE;AAChE,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,YAAY,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,SAAS,MAAM,EAAE,CAAC;CACjC;AAED,yCAAyC;AACzC,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;;;;;;;;GASG;AACH,wBAAsB,eAAe,CAAC,IAAI,EAAE,iBAAiB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CA8DxF"}
1
+ {"version":3,"file":"spawner-lifecycle.d.ts","sourceRoot":"","sources":["../src/spawner-lifecycle.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAM7D;;;GAGG;AACH,wBAAgB,cAAc,CAC5B,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,GACvC,OAAO,CA2BT;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,aAAa,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,GACvC,IAAI,CAIN;AAED;;GAEG;AACH,wBAAgB,cAAc,CAC5B,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,GACvC,OAAO,CAET;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,aAAa,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,GACvC,MAAM,CAER;AAOD;;;;;;GAMG;AACH,wBAAsB,oBAAoB,CAAC,MAAM,EAAE;IACjD,MAAM,EAAE,YAAY,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,gBAAgB,EAAE,MAAM,CAAC;IACzB,kFAAkF;IAClF,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB,GAAG,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAmFhD;AAID,gEAAgE;AAChE,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,YAAY,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,SAAS,MAAM,EAAE,CAAC;IAChC;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACjC;AAED,yCAAyC;AACzC,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB;;;;;OAKG;IACH,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,eAAe,CAAC,IAAI,EAAE,iBAAiB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAuFxF"}
@@ -6,7 +6,7 @@
6
6
  */
7
7
  import { spawn } from 'node:child_process';
8
8
  import { runGitSync } from './git-types.js';
9
- import { sendMessage, stripClaudeCodeEnvVars } from '@telora/daemon-core';
9
+ import { sendMessage, stripClaudeCodeEnvVars, StreamJsonParser } from '@telora/daemon-core';
10
10
  import { safeSendSignal, safeCloseStdin } from './spawner-stream-handlers.js';
11
11
  import { buildSpawnEnvironment } from './spawn-environment.js';
12
12
  /**
@@ -152,25 +152,25 @@ export async function spawnResolutionAgent(params) {
152
152
  });
153
153
  }
154
154
  /**
155
- * Spawn the Claude Code CLI as a one-shot audit assessor.
155
+ * Spawn the Claude Code CLI as the audit assessor (INJ-E: resumable).
156
156
  *
157
- * Like spawnResolutionAgent, this is a short-lived, single-purpose process:
158
- * no agent_sessions DB row, no worktree creation, no stream-json. The
159
- * assessor runs in --print mode against the configured worktree (or
160
- * config.repoPath) and exits when the prompt is satisfied. It is allowed
161
- * only the reality_tree_* MCP tools so it can mutate the graph but not
162
- * touch workflow state.
157
+ * Short-lived, single-purpose process: no agent_sessions DB row, no worktree
158
+ * creation. It runs in --print mode with stream-json output so it emits a
159
+ * session_id (captured for the focus's 'audit' lineage) and so its assistant
160
+ * text can be reconstructed for the audit-summary parser. When `resumeSessionId`
161
+ * is supplied it reconnects to the prior cycle's session via --resume, giving
162
+ * the differential receiver cross-cycle memory. It is allowed only the
163
+ * reality_tree_* MCP tools so it can mutate the graph but not touch workflow
164
+ * state.
163
165
  */
164
166
  export async function spawnAuditAgent(opts) {
165
- const { config, prompt, worktreePath, focusId, cycleNumber, model, timeoutMs, allowedTools } = opts;
166
- const args = [
167
- '--print',
168
- '--output-format', 'text',
169
- '--dangerously-skip-permissions',
170
- '--setting-sources', 'project,local',
171
- '--allowed-tools', allowedTools.join(','),
172
- '--model', model,
173
- ];
167
+ const { config, prompt, worktreePath, focusId, cycleNumber, model, timeoutMs, allowedTools, resumeSessionId } = opts;
168
+ const args = [];
169
+ // --resume must precede the output-format flags.
170
+ if (resumeSessionId) {
171
+ args.push('--resume', resumeSessionId);
172
+ }
173
+ args.push('--print', '--output-format', 'stream-json', '--verbose', '--dangerously-skip-permissions', '--setting-sources', 'project,local', '--allowed-tools', allowedTools.join(','), '--model', model);
174
174
  if (worktreePath) {
175
175
  args.push('--add-dir', worktreePath);
176
176
  }
@@ -200,9 +200,25 @@ export async function spawnAuditAgent(opts) {
200
200
  return;
201
201
  }
202
202
  child.stdin?.end();
203
- let stdout = '';
203
+ // Raw stdout is retained as a fallback (e.g. a non-JSON stub). In normal
204
+ // operation stdout is NDJSON stream-json; the parser reconstructs the
205
+ // assistant text and captures the session id.
206
+ let rawStdout = '';
204
207
  let stderr = '';
205
- child.stdout?.on('data', (chunk) => { stdout += chunk.toString('utf8'); });
208
+ let assistantText = '';
209
+ const parser = new StreamJsonParser();
210
+ if (child.stdout)
211
+ parser.attach(child.stdout);
212
+ parser.on('assistant', (msg) => {
213
+ for (const block of msg.message.content) {
214
+ if (block.type === 'text')
215
+ assistantText += block.text + '\n';
216
+ }
217
+ });
218
+ // Swallow parser errors (non-JSON lines from a stub) -- the raw-stdout
219
+ // fallback covers that case; we must not let an unhandled 'error' throw.
220
+ parser.on('error', () => { });
221
+ child.stdout?.on('data', (chunk) => { rawStdout += chunk.toString('utf8'); });
206
222
  child.stderr?.on('data', (chunk) => { stderr += chunk.toString('utf8'); });
207
223
  const timer = setTimeout(() => {
208
224
  try {
@@ -210,13 +226,16 @@ export async function spawnAuditAgent(opts) {
210
226
  }
211
227
  catch { /* ignore */ }
212
228
  }, timeoutMs);
229
+ // Prefer the reconstructed assistant text (so parseAuditSummary finds the
230
+ // fenced block); fall back to raw stdout when no stream-json was parsed.
231
+ const resolveStdout = () => (assistantText.trim() ? assistantText : rawStdout);
213
232
  child.on('error', (err) => {
214
233
  clearTimeout(timer);
215
- resolve({ exitCode: null, stdout, stderr, errorMessage: `spawn error: ${err.message}` });
234
+ resolve({ exitCode: null, stdout: resolveStdout(), stderr, sessionId: parser.sessionId, errorMessage: `spawn error: ${err.message}` });
216
235
  });
217
236
  child.on('close', (code) => {
218
237
  clearTimeout(timer);
219
- resolve({ exitCode: code, stdout, stderr });
238
+ resolve({ exitCode: code, stdout: resolveStdout(), stderr, sessionId: parser.sessionId });
220
239
  });
221
240
  });
222
241
  }
@@ -1 +1 @@
1
- {"version":3,"file":"spawner-lifecycle.js","sourceRoot":"","sources":["../src/spawner-lifecycle.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"spawner-lifecycle.js","sourceRoot":"","sources":["../src/spawner-lifecycle.ts"],"names":[],"mappings":"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"}
@@ -8,7 +8,8 @@
8
8
  import type { ChildProcess } from 'node:child_process';
9
9
  import type { Writable } from 'node:stream';
10
10
  import type { DaemonConfig, DeliveryContext, RunningAgent, Workflow } from './types.js';
11
- import { StreamJsonParser, createLogStream, type ResourceGovernor } from '@telora/daemon-core';
11
+ import { createLogStream, type ResourceGovernor } from '@telora/daemon-core';
12
+ import type { AgentEventParser } from '@telora/daemon-core';
12
13
  import { CompletionDetector } from './completion-detector.js';
13
14
  import { ActivityTracker } from './activity-tracker.js';
14
15
  /**
@@ -25,7 +26,7 @@ export declare function safeCloseStdin(stdin: Writable): void;
25
26
  */
26
27
  export declare function attachStreamHandlers(params: {
27
28
  proc: ChildProcess;
28
- streamParser: StreamJsonParser;
29
+ streamParser: AgentEventParser;
29
30
  completionDetector: CompletionDetector;
30
31
  runningAgent: RunningAgent;
31
32
  deliveryId: string;
@@ -1 +1 @@
1
- {"version":3,"file":"spawner-stream-handlers.d.ts","sourceRoot":"","sources":["../src/spawner-stream-handlers.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,KAAK,EAAE,YAAY,EAAE,eAAe,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAIxF,OAAO,EAAE,gBAAgB,EAAe,eAAe,EAAE,KAAK,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAE5G,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAE9D,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAIxD;;GAEG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,OAAO,GAAG,IAAI,CAMxE;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,QAAQ,GAAG,IAAI,CAMpD;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE;IAC3C,IAAI,EAAE,YAAY,CAAC;IACnB,YAAY,EAAE,gBAAgB,CAAC;IAC/B,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,YAAY,EAAE,YAAY,CAAC;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,UAAU,CAAC,OAAO,eAAe,CAAC,CAAC;IACpD,WAAW,EAAE,UAAU,CAAC,OAAO,eAAe,CAAC,CAAC;IAChD,aAAa,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;CAC1C,GAAG,eAAe,CAqElB;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE;IAC5C,IAAI,EAAE,YAAY,CAAC;IACnB,MAAM,EAAE,YAAY,CAAC;IACrB,OAAO,EAAE,eAAe,CAAC;IACzB,YAAY,EAAE,YAAY,CAAC;IAC3B,QAAQ,EAAE,QAAQ,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,eAAe,EAAE,eAAe,CAAC;IACjC,eAAe,EAAE,UAAU,CAAC,OAAO,eAAe,CAAC,CAAC;IACpD,YAAY,EAAE,UAAU,CAAC,OAAO,eAAe,CAAC,CAAC;IACjD,WAAW,EAAE,UAAU,CAAC,OAAO,eAAe,CAAC,CAAC;IAChD,WAAW,EAAE,MAAM,OAAO,CAAC;IAC3B,aAAa,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IACzC,QAAQ,EAAE,gBAAgB,GAAG,IAAI,CAAC;CACnC,GAAG,IAAI,CAyDP;AAED;;;;;GAKG;AACH,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,YAAY,EACnB,YAAY,EAAE,MAAM,EACpB,aAAa,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,GACvC,IAAI,CAuCN"}
1
+ {"version":3,"file":"spawner-stream-handlers.d.ts","sourceRoot":"","sources":["../src/spawner-stream-handlers.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,KAAK,EAAE,YAAY,EAAE,eAAe,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAIxF,OAAO,EAAe,eAAe,EAAE,KAAK,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAC1F,OAAO,KAAK,EAAc,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACxE,OAAO,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAIxD;;GAEG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,OAAO,GAAG,IAAI,CAMxE;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,KAAK,EAAE,QAAQ,GAAG,IAAI,CAMpD;AAED;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE;IAC3C,IAAI,EAAE,YAAY,CAAC;IACnB,YAAY,EAAE,gBAAgB,CAAC;IAC/B,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,YAAY,EAAE,YAAY,CAAC;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,UAAU,CAAC,OAAO,eAAe,CAAC,CAAC;IACpD,WAAW,EAAE,UAAU,CAAC,OAAO,eAAe,CAAC,CAAC;IAChD,aAAa,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;CAC1C,GAAG,eAAe,CAqElB;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE;IAC5C,IAAI,EAAE,YAAY,CAAC;IACnB,MAAM,EAAE,YAAY,CAAC;IACrB,OAAO,EAAE,eAAe,CAAC;IACzB,YAAY,EAAE,YAAY,CAAC;IAC3B,QAAQ,EAAE,QAAQ,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,kBAAkB,EAAE,kBAAkB,CAAC;IACvC,eAAe,EAAE,eAAe,CAAC;IACjC,eAAe,EAAE,UAAU,CAAC,OAAO,eAAe,CAAC,CAAC;IACpD,YAAY,EAAE,UAAU,CAAC,OAAO,eAAe,CAAC,CAAC;IACjD,WAAW,EAAE,UAAU,CAAC,OAAO,eAAe,CAAC,CAAC;IAChD,WAAW,EAAE,MAAM,OAAO,CAAC;IAC3B,aAAa,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;IACzC,QAAQ,EAAE,gBAAgB,GAAG,IAAI,CAAC;CACnC,GAAG,IAAI,CAyDP;AAED;;;;;GAKG;AACH,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,YAAY,EACnB,YAAY,EAAE,MAAM,EACpB,aAAa,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,GACvC,IAAI,CAuCN"}
@@ -9,7 +9,6 @@ import { updateSession } from './supabase.js';
9
9
  import { reportGitState } from './supabase.js';
10
10
  import { getStageByName } from './workflow-engine.js';
11
11
  import { sendMessage } from '@telora/daemon-core';
12
- import { formatEventForLog } from '@telora/daemon-core';
13
12
  import { ActivityTracker } from './activity-tracker.js';
14
13
  import { removeWorktree } from './git.js';
15
14
  import { handleAgentCompletion } from './completion-handler.js';
@@ -45,41 +44,45 @@ export function attachStreamHandlers(params) {
45
44
  completionDetector.attach(streamParser);
46
45
  const activityTracker = new ActivityTracker(runningAgent.sessionId);
47
46
  activityTracker.attach(streamParser);
48
- // Raw NDJSON log
49
- streamParser.on('event', (event) => {
50
- jsonlStream.write(JSON.stringify(event) + '\n');
47
+ // Raw channel: verbatim NDJSON to the jsonl log + the backend's human-readable
48
+ // line to the stdout log.
49
+ streamParser.on('raw', (raw, logLine) => {
50
+ jsonlStream.write(JSON.stringify(raw) + '\n');
51
+ if (logLine)
52
+ stdoutLogStream.write(logLine + '\n');
51
53
  });
52
- // Human-readable log
53
- streamParser.on('event', (event) => {
54
- const line = formatEventForLog(event);
55
- if (line)
56
- stdoutLogStream.write(line + '\n');
57
- });
58
- // Session state tracking
59
- streamParser.on('init', (event) => {
60
- runningAgent.claudeSessionId = event.session_id;
61
- runningAgent.streamState = 'active';
62
- console.log(` Session initialized (model: ${event.model}, tools: ${event.tools.length})`);
63
- reportGitState(deliveryId, 'worktree_active', branchName).catch(err => console.warn('[spawner] reportGitState worktree_active failed:', err.message));
64
- });
65
- streamParser.on('teammate', (event) => {
66
- if (event.subtype === 'teammate_spawned') {
67
- console.log(` [team] Teammate spawned: ${event.agent_name}`);
68
- }
69
- else if (event.subtype === 'teammate_completed') {
70
- const status = event.is_error ? 'FAILED' : 'completed';
71
- console.log(` [team] Teammate ${status}: ${event.agent_name}`);
54
+ // Neutral event stream: session state, subagent tracking, result/error logging.
55
+ streamParser.on('agent_event', (event) => {
56
+ switch (event.kind) {
57
+ case 'session_started':
58
+ runningAgent.claudeSessionId = event.sessionId;
59
+ runningAgent.streamState = 'active';
60
+ console.log(` Session initialized (model: ${event.model ?? 'unknown'})`);
61
+ reportGitState(deliveryId, 'worktree_active', branchName).catch(err => console.warn('[spawner] reportGitState worktree_active failed:', err.message));
62
+ break;
63
+ case 'subagent_activity': {
64
+ if (event.phase === 'spawned') {
65
+ console.log(` [team] Teammate spawned: ${event.agentName}`);
66
+ }
67
+ else if (event.phase === 'completed') {
68
+ console.log(` [team] Teammate ${event.isError ? 'FAILED' : 'completed'}: ${event.agentName}`);
69
+ }
70
+ const state = completionDetector.getState();
71
+ runningAgent.activeTeammateCount = state.activeTeammateCount;
72
+ runningAgent.activeTeammates = state.activeTeammates;
73
+ break;
74
+ }
75
+ case 'result': {
76
+ const cost = event.totalCostUsd?.toFixed(4) ?? '?';
77
+ console.log(` [result] ${event.isError ? 'ERROR' : 'Success'}: ${event.numTurns} turns, $${cost}`);
78
+ break;
79
+ }
80
+ case 'error':
81
+ console.warn(` [stream] Parse error: ${event.message}`);
82
+ break;
83
+ default:
84
+ break;
72
85
  }
73
- const state = completionDetector.getState();
74
- runningAgent.activeTeammateCount = state.activeTeammateCount;
75
- runningAgent.activeTeammates = state.activeTeammates;
76
- });
77
- streamParser.on('result', (result) => {
78
- const cost = result.total_cost_usd?.toFixed(4) ?? '?';
79
- console.log(` [result] ${result.is_error ? 'ERROR' : 'Success'}: ${result.num_turns} turns, $${cost}`);
80
- });
81
- streamParser.on('error', (err, line) => {
82
- console.warn(` [stream-json] Parse error: ${err.message} — line: ${line.slice(0, 200)}`);
83
86
  });
84
87
  completionDetector.on('complete', (info) => {
85
88
  console.log(`Agent for "${deliveryName}" completed: ` +
@@ -1 +1 @@
1
- {"version":3,"file":"spawner-stream-handlers.js","sourceRoot":"","sources":["../src/spawner-stream-handlers.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAKH,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAoB,WAAW,EAA0C,MAAM,qBAAqB,CAAC;AAG5G,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACxD,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAC1C,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAEhE;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,GAAW,EAAE,MAAsB;IAChE,IAAI,CAAC;QACH,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IAC5B,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,CAAC,KAAK,CAAC,4BAA4B,GAAG,KAAK,MAAM,qCAAqC,EAAG,CAAW,CAAC,OAAO,CAAC,CAAC;IACvH,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,KAAe;IAC5C,IAAI,CAAC;QACH,KAAK,CAAC,GAAG,EAAE,CAAC;IACd,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,CAAC,KAAK,CAAC,gEAAgE,EAAG,CAAW,CAAC,OAAO,CAAC,CAAC;IACxG,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,oBAAoB,CAAC,MAWpC;IACC,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,kBAAkB,EAAE,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,UAAU,EAAE,eAAe,EAAE,WAAW,EAAE,aAAa,EAAE,GAAG,MAAM,CAAC;IAE3J,YAAY,CAAC,MAAM,CAAC,IAAI,CAAC,MAAO,CAAC,CAAC;IAClC,kBAAkB,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IAExC,MAAM,eAAe,GAAG,IAAI,eAAe,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;IACpE,eAAe,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IAErC,iBAAiB;IACjB,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAkB,EAAE,EAAE;QAC9C,WAAW,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC;IAClD,CAAC,CAAC,CAAC;IAEH,qBAAqB;IACrB,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAkB,EAAE,EAAE;QAC9C,MAAM,IAAI,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;QACtC,IAAI,IAAI;YAAE,eAAe,CAAC,KAAK,CAAC,IAAI,GAAG,IAAI,CAAC,CAAC;IAC/C,CAAC,CAAC,CAAC;IAEH,yBAAyB;IACzB,YAAY,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE;QAChC,YAAY,CAAC,eAAe,GAAG,KAAK,CAAC,UAAU,CAAC;QAChD,YAAY,CAAC,WAAW,GAAG,QAAQ,CAAC;QACpC,OAAO,CAAC,GAAG,CAAC,iCAAiC,KAAK,CAAC,KAAK,YAAY,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;QAC3F,cAAc,CAAC,UAAU,EAAE,iBAAiB,EAAE,UAAU,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,EAAE,CACpE,OAAO,CAAC,IAAI,CAAC,kDAAkD,EAAG,GAAa,CAAC,OAAO,CAAC,CACzF,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,YAAY,CAAC,EAAE,CAAC,UAAU,EAAE,CAAC,KAAK,EAAE,EAAE;QACpC,IAAI,KAAK,CAAC,OAAO,KAAK,kBAAkB,EAAE,CAAC;YACzC,OAAO,CAAC,GAAG,CAAC,8BAA8B,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC;QAChE,CAAC;aAAM,IAAI,KAAK,CAAC,OAAO,KAAK,oBAAoB,EAAE,CAAC;YAClD,MAAM,MAAM,GAAG,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC;YACvD,OAAO,CAAC,GAAG,CAAC,qBAAqB,MAAM,KAAK,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC;QAClE,CAAC;QACD,MAAM,KAAK,GAAG,kBAAkB,CAAC,QAAQ,EAAE,CAAC;QAC5C,YAAY,CAAC,mBAAmB,GAAG,KAAK,CAAC,mBAAmB,CAAC;QAC7D,YAAY,CAAC,eAAe,GAAG,KAAK,CAAC,eAAe,CAAC;IACvD,CAAC,CAAC,CAAC;IAEH,YAAY,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,EAAE;QACnC,MAAM,IAAI,GAAG,MAAM,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC;QACtD,OAAO,CAAC,GAAG,CAAC,cAAc,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,KAAK,MAAM,CAAC,SAAS,YAAY,IAAI,EAAE,CAAC,CAAC;IAC1G,CAAC,CAAC,CAAC;IAEH,YAAY,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,EAAE;QACrC,OAAO,CAAC,IAAI,CAAC,gCAAgC,GAAG,CAAC,OAAO,YAAY,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;IAC5F,CAAC,CAAC,CAAC;IAEH,kBAAkB,CAAC,EAAE,CAAC,UAAU,EAAE,CAAC,IAAI,EAAE,EAAE;QACzC,OAAO,CAAC,GAAG,CACT,cAAc,YAAY,eAAe;YACzC,GAAG,IAAI,CAAC,SAAS,YAAY,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI;YAC7D,uBAAuB,IAAI,CAAC,oBAAoB,EAAE,CACnD,CAAC;QACF,YAAY,CAAC,WAAW,GAAG,MAAM,CAAC;QAClC,wBAAwB,CAAC,YAAY,EAAE,YAAY,EAAE,aAAa,CAAC,CAAC;IACtE,CAAC,CAAC,CAAC;IAEH,kBAAkB,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE;QACrC,OAAO,CAAC,IAAI,CACV,cAAc,YAAY,cAAc,IAAI,CAAC,cAAc,GAAG,IAAI,IAAI;YACtE,QAAQ,IAAI,CAAC,mBAAmB,mBAAmB,CACpD,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,OAAO,eAAe,CAAC;AACzB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,qBAAqB,CAAC,MAkBrC;IACC,MAAM,EACJ,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,UAAU,EACzD,YAAY,EAAE,UAAU,EAAE,SAAS,EAAE,kBAAkB,EACvD,eAAe,EAAE,eAAe,EAAE,YAAY,EAAE,WAAW,EAAE,WAAW,EACxE,aAAa,EAAE,QAAQ,GACxB,GAAG,MAAM,CAAC;IAEX,MAAM,WAAW,GAAG,cAAc,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IACvD,MAAM,cAAc,GAAG,WAAW,EAAE,EAAE,CAAC;IAEvC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE;QACtC,QAAQ,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;QAE/B,IAAI,CAAC;YAAC,MAAM,eAAe,CAAC,UAAU,EAAE,CAAC;QAAC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YAAC,OAAO,CAAC,IAAI,CAAC,8CAA8C,EAAG,GAAa,CAAC,OAAO,CAAC,CAAC;QAAC,CAAC;QAEjJ,qBAAqB,CAAC,IAAI,EAAE,MAAM,EAAE;YAClC,MAAM;YACN,OAAO;YACP,YAAY;YACZ,QAAQ;YACR,UAAU;YACV,cAAc;YACd,QAAQ,EAAE,WAAW,EAAE;YACvB,SAAS,EAAE,MAAM,CAAC,gBAAgB;YAClC,SAAS;YACT,UAAU;YACV,kBAAkB;YAClB,eAAe;YACf,YAAY;YACZ,WAAW;YACX,aAAa;SACd,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,EAAE;QAC7B,OAAO,CAAC,KAAK,CAAC,cAAc,OAAO,CAAC,QAAQ,CAAC,IAAI,UAAU,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;QAC1E,QAAQ,EAAE,WAAW,CAAC,OAAO,CAAC,CAAC;QAE/B,IAAI,YAAY,CAAC,YAAY;YAAE,YAAY,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;QACvE,IAAI,YAAY,CAAC,YAAY;YAAE,YAAY,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC;QACvE,kBAAkB,EAAE,OAAO,EAAE,CAAC;QAC9B,aAAa,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAEhC,cAAc,CAAC,MAAM,CAAC,QAAQ,EAAE,YAAY,EAAE;YAC5C,UAAU;YACV,iBAAiB,EAAE,MAAM,CAAC,iBAAiB;YAC3C,YAAY,EAAE,OAAO,CAAC,QAAQ,CAAC,IAAI;YACnC,cAAc,EAAE,KAAK;SACtB,CAAC,CAAC;QAEH,MAAM,aAAa,CAAC,SAAS,EAAE;YAC7B,MAAM,EAAE,QAAQ;YAChB,WAAW,EAAE,qBAAqB;YAClC,QAAQ,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SACnC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,wBAAwB,CACtC,KAAmB,EACnB,YAAoB,EACpB,aAAwC;IAExC,MAAM,eAAe,GAAG,KAAK,CAAC,CAAE,2BAA2B;IAC3D,MAAM,kBAAkB,GAAG,KAAK,CAAC,CAAC,+BAA+B;IAEjE,uBAAuB;IACvB,WAAW,CACT,KAAK,CAAC,KAAK,EACX,gFAAgF,CACjF,CAAC;IAEF,wDAAwD;IACxD,yCAAyC;IACzC,MAAM,UAAU,GAAG,UAAU,CAAC,GAAG,EAAE;QACjC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC;YAAE,OAAO;QAChD,OAAO,CAAC,IAAI,CAAC,yBAAyB,YAAY,sDAAsD,CAAC,CAAC;QAC1G,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC9B,CAAC,EAAE,eAAe,CAAC,CAAC;IAEpB,2DAA2D;IAC3D,UAAU,CAAC,GAAG,EAAE;QACd,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC;YAAE,OAAO;QAChD,OAAO,CAAC,IAAI,CAAC,yBAAyB,YAAY,sDAAsD,CAAC,CAAC;QAC1G,cAAc,CAAC,KAAK,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;IACvC,CAAC,EAAE,eAAe,GAAG,kBAAkB,CAAC,CAAC;IAEzC,4DAA4D;IAC5D,UAAU,CAAC,GAAG,EAAE;QACd,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC;YAAE,OAAO;QAChD,OAAO,CAAC,KAAK,CAAC,yBAAyB,YAAY,qCAAqC,CAAC,CAAC;QAC1F,cAAc,CAAC,KAAK,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;IACvC,CAAC,EAAE,eAAe,GAAG,kBAAkB,GAAG,CAAC,CAAC,CAAC;IAE7C,sDAAsD;IACtD,MAAM,SAAS,GAAG,WAAW,CAAC,GAAG,EAAE;QACjC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,SAAS,CAAC,EAAE,CAAC;YACxC,YAAY,CAAC,UAAU,CAAC,CAAC;YACzB,aAAa,CAAC,SAAS,CAAC,CAAC;QAC3B,CAAC;IACH,CAAC,EAAE,IAAI,CAAC,CAAC;AACX,CAAC"}
1
+ {"version":3,"file":"spawner-stream-handlers.js","sourceRoot":"","sources":["../src/spawner-stream-handlers.ts"],"names":[],"mappings":"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"}
package/dist/spawner.d.ts CHANGED
@@ -1,21 +1,19 @@
1
1
  /**
2
- * Claude Code spawner - manages spawning and tracking agent processes.
2
+ * Spawner lifecycle/state re-export hub.
3
3
  *
4
- * Spawns agents at delivery level with full context including:
5
- * - Product info (name, vision, description)
6
- * - Delivery details (name, description, acceptance criteria, tech context)
7
- * - All context groups and tasks within the delivery
4
+ * The per-delivery spawn function (spawnAgentForDelivery) was removed
5
+ * delivery-level execution is now handled by the focus-level team spawner.
8
6
  *
9
- * Each agent runs in an isolated git worktree created from the integration branch.
10
- * On successful completion, the agent's branch is merged into integration.
7
+ * This module re-exports lifecycle helpers and running-agent state accessors
8
+ * that are consumed by the rest of the daemon.
11
9
  *
12
10
  * Stream/process handling: ./spawner-stream-handlers.ts
13
11
  * Lifecycle management: ./spawner-lifecycle.ts
14
12
  */
15
- import type { DaemonConfig, AgentRole, RunningAgent } from './types.js';
13
+ import type { RunningAgent } from './types.js';
16
14
  import { type ResourceGovernor } from '@telora/daemon-core';
17
- /** Inject the resource governor for global concurrency limiting. */
18
- export declare function initGovernor(gov: ResourceGovernor): void;
15
+ /** No-op. The per-delivery spawn path was removed; governor is managed by team-spawner. */
16
+ export declare function initGovernor(_gov: ResourceGovernor): void;
19
17
  /**
20
18
  * Get map of running agents.
21
19
  * Re-exported from agent-state for backward compatibility.
@@ -36,11 +34,4 @@ export { spawnAuditAgent } from './spawner-lifecycle.js';
36
34
  export type { AuditSpawnOptions, AuditSpawnResult } from './spawner-lifecycle.js';
37
35
  /** Re-export stale agent liveness checks. */
38
36
  export { isProcessAlive, checkAgentLiveness } from './spawner-liveness.js';
39
- /**
40
- * Spawn a Claude Code agent to work on a delivery.
41
- *
42
- * The agent runs in an isolated git worktree created from the integration branch.
43
- * On successful completion, the agent's changes are merged back to integration.
44
- */
45
- export declare function spawnAgentForDelivery(config: DaemonConfig, deliveryId: string, role: AgentRole, focusId: string): Promise<void>;
46
37
  //# sourceMappingURL=spawner.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"spawner.d.ts","sourceRoot":"","sources":["../src/spawner.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAKH,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAmB,YAAY,EAAY,MAAM,YAAY,CAAC;AAOnG,OAAO,EAAuE,KAAK,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAiBjI,oEAAoE;AACpE,wBAAgB,YAAY,CAAC,GAAG,EAAE,gBAAgB,GAAG,IAAI,CAExD;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,IAAI,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,CAE5D;AAID,iCAAiC;AACjC,wBAAgB,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAEzD;AAED,oCAAoC;AACpC,wBAAgB,kBAAkB,IAAI,IAAI,CAEzC;AAED,kDAAkD;AAClD,wBAAgB,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAEzD;AAED,mCAAmC;AACnC,wBAAgB,oBAAoB,IAAI,MAAM,CAE7C;AAED,+DAA+D;AAC/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAE9D,mFAAmF;AACnF,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,YAAY,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAElF,6CAA6C;AAC7C,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAmI3E;;;;;GAKG;AACH,wBAAsB,qBAAqB,CACzC,MAAM,EAAE,YAAY,EACpB,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,SAAS,EACf,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,IAAI,CAAC,CAgNf"}
1
+ {"version":3,"file":"spawner.d.ts","sourceRoot":"","sources":["../src/spawner.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAA2B,YAAY,EAAE,MAAM,YAAY,CAAC;AAExE,OAAO,EAAE,KAAK,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAW5D,2FAA2F;AAC3F,wBAAgB,YAAY,CAAC,IAAI,EAAE,gBAAgB,GAAG,IAAI,CAAG;AAE7D;;;GAGG;AACH,wBAAgB,gBAAgB,IAAI,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,CAE5D;AAID,iCAAiC;AACjC,wBAAgB,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAEzD;AAED,oCAAoC;AACpC,wBAAgB,kBAAkB,IAAI,IAAI,CAEzC;AAED,kDAAkD;AAClD,wBAAgB,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAEzD;AAED,mCAAmC;AACnC,wBAAgB,oBAAoB,IAAI,MAAM,CAE7C;AAED,+DAA+D;AAC/D,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAE9D,mFAAmF;AACnF,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,YAAY,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAElF,6CAA6C;AAC7C,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,uBAAuB,CAAC"}