@telora/daemon 0.22.290 → 0.22.306

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 (185) hide show
  1. package/README.md +2 -2
  2. package/build-info.json +2 -2
  3. package/dist/backends/index.js +1 -1
  4. package/dist/cli/connect/config-write.d.ts.map +1 -1
  5. package/dist/cli/connect/config-write.js +2 -1
  6. package/dist/cli/connect/config-write.js.map +1 -1
  7. package/dist/completion/review-exit/review-census-record.d.ts.map +1 -1
  8. package/dist/completion/review-exit/review-census-record.js +1 -0
  9. package/dist/completion/review-exit/review-census-record.js.map +1 -1
  10. package/dist/completion/review-exit/review-exit-deps.d.ts +1 -0
  11. package/dist/completion/review-exit/review-exit-deps.d.ts.map +1 -1
  12. package/dist/completion/review-exit/review-exit-phase.js +7 -4
  13. package/dist/completion/review-exit/review-exit-phase.js.map +1 -1
  14. package/dist/completion/review-exit-holds/review-exit-verdict-gate.d.ts +17 -1
  15. package/dist/completion/review-exit-holds/review-exit-verdict-gate.d.ts.map +1 -1
  16. package/dist/completion/review-exit-holds/review-exit-verdict-gate.js +21 -0
  17. package/dist/completion/review-exit-holds/review-exit-verdict-gate.js.map +1 -1
  18. package/dist/completion/state-cascade/standing-approval-convergence.d.ts +7 -2
  19. package/dist/completion/state-cascade/standing-approval-convergence.d.ts.map +1 -1
  20. package/dist/completion/state-cascade/standing-approval-convergence.js +56 -31
  21. package/dist/completion/state-cascade/standing-approval-convergence.js.map +1 -1
  22. package/dist/completion/state-cascade/standing-approval-stranded.d.ts +39 -0
  23. package/dist/completion/state-cascade/standing-approval-stranded.d.ts.map +1 -0
  24. package/dist/completion/state-cascade/standing-approval-stranded.js +142 -0
  25. package/dist/completion/state-cascade/standing-approval-stranded.js.map +1 -0
  26. package/dist/composition/commit-gate-context.d.ts.map +1 -1
  27. package/dist/composition/commit-gate-context.js +2 -1
  28. package/dist/composition/commit-gate-context.js.map +1 -1
  29. package/dist/composition/execution-spawn-context.d.ts.map +1 -1
  30. package/dist/composition/execution-spawn-context.js +1 -0
  31. package/dist/composition/execution-spawn-context.js.map +1 -1
  32. package/dist/composition/focus-activity-live-sources.d.ts.map +1 -1
  33. package/dist/composition/focus-activity-live-sources.js +3 -0
  34. package/dist/composition/focus-activity-live-sources.js.map +1 -1
  35. package/dist/composition/standing-approval-context.d.ts.map +1 -1
  36. package/dist/composition/standing-approval-context.js +2 -0
  37. package/dist/composition/standing-approval-context.js.map +1 -1
  38. package/dist/composition/verify-probe-context.d.ts +7 -0
  39. package/dist/composition/verify-probe-context.d.ts.map +1 -1
  40. package/dist/composition/verify-probe-context.js +55 -3
  41. package/dist/composition/verify-probe-context.js.map +1 -1
  42. package/dist/config/config.d.ts.map +1 -1
  43. package/dist/config/config.js +4 -3
  44. package/dist/config/config.js.map +1 -1
  45. package/dist/config/session-cap.d.ts +89 -0
  46. package/dist/config/session-cap.d.ts.map +1 -0
  47. package/dist/config/session-cap.js +176 -0
  48. package/dist/config/session-cap.js.map +1 -0
  49. package/dist/daemon-state/focus-team-state.d.ts +21 -1
  50. package/dist/daemon-state/focus-team-state.d.ts.map +1 -1
  51. package/dist/daemon-state/focus-team-state.js +36 -1
  52. package/dist/daemon-state/focus-team-state.js.map +1 -1
  53. package/dist/directive/directive-queue.js +1 -1
  54. package/dist/focus/focus-activity-poll-facts.d.ts.map +1 -1
  55. package/dist/focus/focus-activity-poll-facts.js +2 -1
  56. package/dist/focus/focus-activity-poll-facts.js.map +1 -1
  57. package/dist/focus/focus-activity-producers.d.ts +7 -1
  58. package/dist/focus/focus-activity-producers.d.ts.map +1 -1
  59. package/dist/focus/focus-activity-producers.js +19 -7
  60. package/dist/focus/focus-activity-producers.js.map +1 -1
  61. package/dist/focus/focus-activity-record.d.ts.map +1 -1
  62. package/dist/focus/focus-activity-record.js +4 -1
  63. package/dist/focus/focus-activity-record.js.map +1 -1
  64. package/dist/focus/focus-activity-sources.d.ts +4 -0
  65. package/dist/focus/focus-activity-sources.d.ts.map +1 -1
  66. package/dist/focus/focus-activity-sources.js.map +1 -1
  67. package/dist/focus/heartbeat-metadata.d.ts.map +1 -1
  68. package/dist/focus/heartbeat-metadata.js +6 -0
  69. package/dist/focus/heartbeat-metadata.js.map +1 -1
  70. package/dist/index.js +1 -1
  71. package/dist/prompt-sections/persona-sections.d.ts.map +1 -1
  72. package/dist/prompt-sections/persona-sections.js +3 -0
  73. package/dist/prompt-sections/persona-sections.js.map +1 -1
  74. package/dist/prompt-sections/routing-decider-sections.d.ts.map +1 -1
  75. package/dist/prompt-sections/routing-decider-sections.js +2 -0
  76. package/dist/prompt-sections/routing-decider-sections.js.map +1 -1
  77. package/dist/queries/api-client/shared.js +1 -1
  78. package/dist/queries/delivery-gate-state/delivery-gate-holds.d.ts +25 -1
  79. package/dist/queries/delivery-gate-state/delivery-gate-holds.d.ts.map +1 -1
  80. package/dist/queries/delivery-gate-state/delivery-gate-state.d.ts +3 -1
  81. package/dist/queries/delivery-gate-state/delivery-gate-state.d.ts.map +1 -1
  82. package/dist/queries/delivery-gate-state/delivery-gate-state.js.map +1 -1
  83. package/dist/queries/escalations/cause-key.d.ts +11 -0
  84. package/dist/queries/escalations/cause-key.d.ts.map +1 -1
  85. package/dist/queries/escalations/cause-key.js +15 -0
  86. package/dist/queries/escalations/cause-key.js.map +1 -1
  87. package/dist/queries/escalations/escalation-consumption.d.ts.map +1 -1
  88. package/dist/queries/escalations/escalation-consumption.js +1 -0
  89. package/dist/queries/escalations/escalation-consumption.js.map +1 -1
  90. package/dist/queries/escalations/filing-observation.d.ts.map +1 -1
  91. package/dist/queries/escalations/filing-observation.js +1 -0
  92. package/dist/queries/escalations/filing-observation.js.map +1 -1
  93. package/dist/shell/config-hot-reload.d.ts +11 -0
  94. package/dist/shell/config-hot-reload.d.ts.map +1 -1
  95. package/dist/shell/config-hot-reload.js +12 -0
  96. package/dist/shell/config-hot-reload.js.map +1 -1
  97. package/dist/shell/unified-engine-lifecycle.d.ts +8 -1
  98. package/dist/shell/unified-engine-lifecycle.d.ts.map +1 -1
  99. package/dist/shell/unified-engine-lifecycle.js +44 -24
  100. package/dist/shell/unified-engine-lifecycle.js.map +1 -1
  101. package/dist/shell/unified-init.d.ts +5 -1
  102. package/dist/shell/unified-init.d.ts.map +1 -1
  103. package/dist/shell/unified-init.js +2 -2
  104. package/dist/shell/unified-init.js.map +1 -1
  105. package/dist/shell/unified-shell-config.d.ts +2 -1
  106. package/dist/shell/unified-shell-config.d.ts.map +1 -1
  107. package/dist/shell/unified-shell-config.js +9 -3
  108. package/dist/shell/unified-shell-config.js.map +1 -1
  109. package/dist/shell/unified-shell-status.js +1 -1
  110. package/dist/shell/unified-shell-status.js.map +1 -1
  111. package/dist/shell/unified-shell.d.ts.map +1 -1
  112. package/dist/shell/unified-shell.js +2 -1
  113. package/dist/shell/unified-shell.js.map +1 -1
  114. package/dist/spawn/helpers.d.ts.map +1 -1
  115. package/dist/spawn/helpers.js +4 -0
  116. package/dist/spawn/helpers.js.map +1 -1
  117. package/dist/spawn/spawn-decision.d.ts.map +1 -1
  118. package/dist/spawn/spawn-decision.js +4 -0
  119. package/dist/spawn/spawn-decision.js.map +1 -1
  120. package/dist/spawn/team-working-delivery.d.ts +76 -0
  121. package/dist/spawn/team-working-delivery.d.ts.map +1 -0
  122. package/dist/spawn/team-working-delivery.js +76 -0
  123. package/dist/spawn/team-working-delivery.js.map +1 -0
  124. package/dist/supervision/agent-resolvable-promotion.d.ts +14 -2
  125. package/dist/supervision/agent-resolvable-promotion.d.ts.map +1 -1
  126. package/dist/supervision/agent-resolvable-promotion.js +24 -3
  127. package/dist/supervision/agent-resolvable-promotion.js.map +1 -1
  128. package/dist/supervision/escalation-filing.js +1 -1
  129. package/dist/supervision/escalation-suppression.js +1 -1
  130. package/dist/supervision/focus-delivery-aggregate-phase.d.ts.map +1 -1
  131. package/dist/supervision/focus-delivery-aggregate-phase.js +1 -0
  132. package/dist/supervision/focus-delivery-aggregate-phase.js.map +1 -1
  133. package/dist/supervision/stop-registry.d.ts +1 -0
  134. package/dist/supervision/stop-registry.d.ts.map +1 -1
  135. package/dist/supervision/stop-rows-delivery.d.ts +6 -0
  136. package/dist/supervision/stop-rows-delivery.d.ts.map +1 -1
  137. package/dist/supervision/stop-rows-delivery.js +20 -0
  138. package/dist/supervision/stop-rows-delivery.js.map +1 -1
  139. package/dist/testing/fake-npm-registry.d.ts +31 -0
  140. package/dist/testing/fake-npm-registry.d.ts.map +1 -0
  141. package/dist/testing/fake-npm-registry.js +127 -0
  142. package/dist/testing/fake-npm-registry.js.map +1 -0
  143. package/dist/testing/fixtures/api-client.js +1 -1
  144. package/dist/testing/fixtures/index.js +1 -1
  145. package/dist/types/config.d.ts +30 -0
  146. package/dist/types/config.d.ts.map +1 -1
  147. package/dist/types/focus-team-state.d.ts +14 -0
  148. package/dist/types/focus-team-state.d.ts.map +1 -1
  149. package/dist/types/focus-team-state.js.map +1 -1
  150. package/dist/types/index.js +1 -1
  151. package/dist/verify/gate-config/commit-gate-configured.d.ts +2 -0
  152. package/dist/verify/gate-config/commit-gate-configured.d.ts.map +1 -1
  153. package/dist/verify/gate-config/commit-gate-configured.js.map +1 -1
  154. package/dist/verify/install-probe/in-repo-publish.d.ts +154 -0
  155. package/dist/verify/install-probe/in-repo-publish.d.ts.map +1 -0
  156. package/dist/verify/install-probe/in-repo-publish.js +183 -0
  157. package/dist/verify/install-probe/in-repo-publish.js.map +1 -0
  158. package/dist/verify/install-probe/install-probe-tick.d.ts +23 -2
  159. package/dist/verify/install-probe/install-probe-tick.d.ts.map +1 -1
  160. package/dist/verify/install-probe/install-probe-tick.js +84 -12
  161. package/dist/verify/install-probe/install-probe-tick.js.map +1 -1
  162. package/dist/verify/install-probe/install-probe.d.ts +16 -0
  163. package/dist/verify/install-probe/install-probe.d.ts.map +1 -1
  164. package/dist/verify/install-probe/install-probe.js +35 -19
  165. package/dist/verify/install-probe/install-probe.js.map +1 -1
  166. package/dist/verify/install-probe/npm-unresolved.d.ts +37 -0
  167. package/dist/verify/install-probe/npm-unresolved.d.ts.map +1 -0
  168. package/dist/verify/install-probe/npm-unresolved.js +63 -0
  169. package/dist/verify/install-probe/npm-unresolved.js.map +1 -0
  170. package/dist/verify/shortfalls/each-table.d.ts +45 -0
  171. package/dist/verify/shortfalls/each-table.d.ts.map +1 -0
  172. package/dist/verify/shortfalls/each-table.js +219 -0
  173. package/dist/verify/shortfalls/each-table.js.map +1 -0
  174. package/dist/verify/shortfalls/each-title-render.d.ts +67 -0
  175. package/dist/verify/shortfalls/each-title-render.d.ts.map +1 -0
  176. package/dist/verify/shortfalls/each-title-render.js +473 -0
  177. package/dist/verify/shortfalls/each-title-render.js.map +1 -0
  178. package/dist/verify/shortfalls/generated-test-titles.d.ts +18 -0
  179. package/dist/verify/shortfalls/generated-test-titles.d.ts.map +1 -0
  180. package/dist/verify/shortfalls/generated-test-titles.js +232 -0
  181. package/dist/verify/shortfalls/generated-test-titles.js.map +1 -0
  182. package/dist/verify/shortfalls/ruling-evidence-resolution.d.ts.map +1 -1
  183. package/dist/verify/shortfalls/ruling-evidence-resolution.js +6 -2
  184. package/dist/verify/shortfalls/ruling-evidence-resolution.js.map +1 -1
  185. package/package.json +3 -3
@@ -1,11 +1,13 @@
1
1
  // PINNED-BY-BEGIN (generated by gen:pinned-by -- do not hand-edit; checked by lint:pinned-by)
2
- // Pinned by: packages/daemon/src/composition/subsystem-contexts.test.ts
2
+ // Pinned by: packages/daemon/src/composition/subsystem-contexts.test.ts,
3
+ // packages/daemon/src/integration/in-repo-publish-branch.test.ts
3
4
  // PINNED-BY-END
4
5
  /**
5
6
  * The production binding of the clean-environment install probe's IO
6
7
  * (verify/install-probe/install-probe-tick.ts InstallProbeTickDeps): the active
7
8
  * foci and their deliveries, the focus worktree and its HEAD, the changed files,
8
- * the npm ci dry run, and the probe's same-status gate_state write.
9
+ * the npm ci dry run, the probe's same-status gate_state write, and the
10
+ * in-repo publish that closes an unpublished-in-repo-version failure.
9
11
  *
10
12
  * Part of the daemon composition root: the verification context
11
13
  * (composition/verification-context.ts) carries it to runInstallProbeTick.
@@ -17,8 +19,57 @@ import { getFocusDeliveries } from '../queries/focuses/focuses.js';
17
19
  import { getFocusWorktree } from '../worktree/focus-worktree-state.js';
18
20
  import { listChangedFiles } from '../git/utils.js';
19
21
  import { resolveRef } from '../git/index.js';
20
- import { runInstallProbe, createNpmCiDryRunRunner } from '../verify/install-probe/install-probe.js';
22
+ import { runInstallProbe, createNpmCiDryRunRunner, spawnNpm } from '../verify/install-probe/install-probe.js';
21
23
  import { writeProbeGateState } from '../verify/install-probe/install-probe-tick.js';
24
+ import { publishAroundUnpublished } from '../verify/install-probe/in-repo-publish.js';
25
+ import { enumerateDirtyVsHead } from '../worktree/scratch-guard.js';
26
+ import { runGitSync } from '../git/types.js';
27
+ import { createPinnedVerifyCheckout, verifyCheckoutRoot } from '../verify/deterministic-gate/verification-checkout.js';
28
+ import { DELIVERY_TRAILER_KEY } from '../git/delivery-trailer.js';
29
+ import { readFileSync } from 'node:fs';
30
+ import { join } from 'node:path';
31
+ /** Max wall-clock for one npm build / publish / re-lock step of an in-repo publish. */
32
+ const IN_REPO_NPM_STEP_TIMEOUT_MS = 5 * 60 * 1000;
33
+ /**
34
+ * The in-repo publish's production IO: npm in a detached checkout of the probed
35
+ * commit (build + publish) and in the focus worktree (re-lock), and one
36
+ * attributed lockfile commit.
37
+ */
38
+ export function buildInRepoPublishDeps() {
39
+ return {
40
+ readWorkspaceVersion: (worktreePath, dir) => {
41
+ try {
42
+ const pkg = JSON.parse(readFileSync(join(worktreePath, dir, 'package.json'), 'utf8'));
43
+ const version = pkg && typeof pkg === 'object' ? pkg.version : undefined;
44
+ return typeof version === 'string' ? version : null;
45
+ }
46
+ catch {
47
+ return null;
48
+ }
49
+ },
50
+ // The verify gate's detached checkout: the worktree's dependency resolution
51
+ // mirrored as links, removed without following them.
52
+ checkoutCommit: (worktreePath, sha) => {
53
+ const checkout = createPinnedVerifyCheckout(worktreePath, `in-repo-publish-${sha.slice(0, 12)}`, sha, {
54
+ runGit: runGitSync,
55
+ checkoutRoot: verifyCheckoutRoot(),
56
+ });
57
+ if (checkout && checkout.sha !== sha)
58
+ checkout.dispose();
59
+ return checkout && checkout.sha === sha ? { root: checkout.path, release: checkout.dispose } : null;
60
+ },
61
+ runNpm: (cwd, args) => spawnNpm(cwd, args, process.env, IN_REPO_NPM_STEP_TIMEOUT_MS),
62
+ uncommittedPaths: enumerateDirtyVsHead,
63
+ commitPaths: (worktreePath, paths, message, deliveryId) => {
64
+ // `git commit -- <paths>` records only these paths; the trailer satisfies
65
+ // the worktree's delivery-trailer commit-msg guard.
66
+ const commit = runGitSync(['commit', '-m', message, '--trailer', `${DELIVERY_TRAILER_KEY}: ${deliveryId}`, '--', ...paths.map(p => `:(literal)${p}`)], worktreePath);
67
+ if (!commit.success)
68
+ return null;
69
+ return resolveRef(worktreePath, 'HEAD');
70
+ },
71
+ };
72
+ }
22
73
  /** Build the install probe's production IO. */
23
74
  export function buildInstallProbeTickDeps() {
24
75
  return {
@@ -33,6 +84,7 @@ export function buildInstallProbeTickDeps() {
33
84
  runProbe: async (changedFiles, repoPath) => runInstallProbe(changedFiles, createNpmCiDryRunRunner(repoPath)),
34
85
  writeGateState: writeProbeGateState,
35
86
  now: () => new Date().toISOString(),
87
+ publishAround: (input) => publishAroundUnpublished(input, buildInRepoPublishDeps()),
36
88
  };
37
89
  }
38
90
  //# sourceMappingURL=verify-probe-context.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"verify-probe-context.js","sourceRoot":"","sources":["../../src/composition/verify-probe-context.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,wEAAwE;AACxE,gBAAgB;AAEhB;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,uCAAuC,CAAC;AACzE,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAC;AACvE,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAE,eAAe,EAAE,uBAAuB,EAAE,MAAM,0CAA0C,CAAC;AACpG,OAAO,EAAE,mBAAmB,EAA6B,MAAM,+CAA+C,CAAC;AAE/G,+CAA+C;AAC/C,MAAM,UAAU,yBAAyB;IACvC,OAAO;QACL,gBAAgB;QAChB,gBAAgB,EAAE,CAAC,OAAO,EAAE,EAAE;YAC5B,MAAM,EAAE,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;YACrC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,EAAE,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC;QAC5D,CAAC;QACD,kBAAkB;QAClB,cAAc,EAAE,CAAC,YAAY,EAAE,EAAE,CAAC,UAAU,CAAC,YAAY,EAAE,MAAM,CAAC,IAAI,EAAE;QACxE,gBAAgB;QAChB,QAAQ,EAAE,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,EAAE,CAAC,eAAe,CAAC,YAAY,EAAE,uBAAuB,CAAC,QAAQ,CAAC,CAAC;QAC5G,cAAc,EAAE,mBAAmB;QACnC,GAAG,EAAE,GAAG,EAAE,CAAC,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;KACpC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"verify-probe-context.js","sourceRoot":"","sources":["../../src/composition/verify-probe-context.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/config/config.ts"],"names":[],"mappings":"AAkCA,OAAO,KAAK,EAAE,YAAY,EAAoD,yBAAyB,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACvJ,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAkFxD;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,2BAA2B,CACzC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACnC,YAAY,EAAE,SAAS,YAAY,EAAE,GACpC;IAAE,mBAAmB,CAAC,EAAE,yBAAyB,CAAC;IAAC,QAAQ,EAAE,kBAAkB,EAAE,CAAA;CAAE,CAiBrF;AAED;;;;;;;;;GASG;AACH,wBAAgB,UAAU,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,YAAY,CA2L5D;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,YAAY,EAAE,OAAO,EAAE,YAAY,GAAG,YAAY,CAqB1F;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS,CAE7F;AAqBD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI,CAqFzD;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI,CAiCtD"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/config/config.ts"],"names":[],"mappings":"AAkCA,OAAO,KAAK,EAAE,YAAY,EAAoD,yBAAyB,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACvJ,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AAmFxD;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,2BAA2B,CACzC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACnC,YAAY,EAAE,SAAS,YAAY,EAAE,GACpC;IAAE,mBAAmB,CAAC,EAAE,yBAAyB,CAAC;IAAC,QAAQ,EAAE,kBAAkB,EAAE,CAAA;CAAE,CAiBrF;AAED;;;;;;;;;GASG;AACH,wBAAgB,UAAU,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,YAAY,CA2L5D;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,YAAY,EAAE,OAAO,EAAE,YAAY,GAAG,YAAY,CAqB1F;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS,CAE7F;AAqBD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI,CAqFzD;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI,CAiCtD"}
@@ -24,6 +24,7 @@ import { resolve } from 'node:path';
24
24
  import { existsSync, accessSync, constants, mkdirSync } from 'node:fs';
25
25
  import { loadConfigFile as loadConfigFileShared, resolveBaseConfig, validateBaseConfig, loadEnvConfig, ENV_VAR_METADATA, healthEvents, } from '@telora/daemon-core';
26
26
  import { createLogger } from '../log/daemon-log.js';
27
+ import { resolveSessionCap, readHostCapacity, describeSessionCapSource, sessionCapConfigFields } from './session-cap.js';
27
28
  const log = createLogger({ module: 'config' });
28
29
  /**
29
30
  * True when an operational env var is actually set (non-empty) in process.env.
@@ -208,7 +209,7 @@ export function loadConfig(configPath) {
208
209
  ? fileConfig.integrationBranch
209
210
  : envCfg.TELORA_INTEGRATION_BRANCH);
210
211
  // Session limits
211
- const maxTotalSessions = resolveNum('MAX_TOTAL_SESSIONS', envCfg.MAX_TOTAL_SESSIONS, fileConfig.maxTotalSessions);
212
+ const sessionCap = resolveSessionCap(process.env.MAX_TOTAL_SESSIONS, fileConfig, readHostCapacity()); // explicit, or sized by the host
212
213
  const tokenLimit = resolveNum('TOKEN_LIMIT', envCfg.TOKEN_LIMIT, fileConfig.tokenLimit);
213
214
  const costLimit = resolveNum('COST_LIMIT', envCfg.COST_LIMIT, fileConfig.costLimit);
214
215
  const mergeLockTimeoutMs = resolveNum('MERGE_LOCK_TIMEOUT_MS', envCfg.MERGE_LOCK_TIMEOUT_MS, fileConfig.mergeLockTimeoutMs);
@@ -290,7 +291,7 @@ export function loadConfig(configPath) {
290
291
  sessionTimeoutMs,
291
292
  worktreeDir,
292
293
  integrationBranch,
293
- maxTotalSessions,
294
+ ...sessionCapConfigFields(sessionCap),
294
295
  tokenLimit,
295
296
  costLimit,
296
297
  mergeLockTimeoutMs,
@@ -487,7 +488,7 @@ export function printConfig(config) {
487
488
  log.info(` Integration Branch: ${config.integrationBranch}`);
488
489
  log.info(` Claude Code Path: ${config.claudeCodePath}`);
489
490
  log.info(` Log Directory: ${config.logDir}`);
490
- log.info(` Max Total Sessions: ${config.maxTotalSessions}`);
491
+ log.info(` Max Total Sessions: ${config.maxTotalSessions}${config.maxTotalSessionsSource ? ` (${describeSessionCapSource(config.maxTotalSessionsSource)})` : ''}`);
491
492
  log.info(` Session Timeout: ${config.sessionTimeoutMs}ms`);
492
493
  log.info(` Token Limit: ${config.tokenLimit}`);
493
494
  log.info(` Cost Limit: $${config.costLimit}`);
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/config/config.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/config/config.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,0EAA0E;AAC1E,6GAA6G;AAC7G,yDAAyD;AACzD,oFAAoF;AACpF,wEAAwE;AACxE,gBAAgB;AAEhB;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACvE,OAAO,EACL,cAAc,IAAI,oBAAoB,EACtC,iBAAiB,EACjB,kBAAkB,EAClB,aAAa,EACb,gBAAgB,EAChB,YAAY,GACb,MAAM,qBAAqB,CAAC;AAG7B,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,wBAAwB,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAEzH,MAAM,GAAG,GAAG,YAAY,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC;AAG/C;;;;GAIG;AACH,SAAS,QAAQ,CAAC,IAAY;IAC5B,MAAM,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC5B,OAAO,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,EAAE,CAAC;AACrC,CAAC;AAED,iFAAiF;AACjF,SAAS,UAAU,CAAC,IAAY;IAC9B,MAAM,IAAI,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;IAC3D,OAAO,OAAO,IAAI,EAAE,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;AAC9D,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,UAAU,CACjB,IAAY,EACZ,YAAoB,EACpB,OAAgB;IAEhB,IAAI,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACnB,OAAO,YAAY,CAAC;IACtB,CAAC;IACD,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;QAChC,OAAO,OAAO,CAAC;IACjB,CAAC;IACD,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,SAAS,gBAAgB,CAAC,GAAY;IACpC,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI;QAAE,OAAO,SAAS,CAAC;IAC9D,MAAM,CAAC,GAAG,GAA8B,CAAC;IACzC,OAAO;QACL,OAAO,EAAE,OAAO,CAAC,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;QACvD,GAAG,CAAC,OAAO,CAAC,CAAC,SAAS,KAAK,QAAQ,IAAI,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzF,GAAG,CAAC,OAAO,CAAC,CAAC,aAAa,KAAK,QAAQ,IAAI,CAAC,CAAC,aAAa,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,CAAC,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACzG,uEAAuE;QACvE,GAAG,CAAC,CAAC,CAAC,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACnD,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,SAAS,6BAA6B,CAAC,GAAY;IACjD,OAAO,OAAO,GAAG,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;AACtF,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,2BAA2B,CACzC,UAAmC,EACnC,YAAqC;IAErC,MAAM,MAAM,GAAG,gBAAgB,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAAC;IAChE,MAAM,WAAW,GAAc,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC;IAC7F,MAAM,QAAQ,GAAyB,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QAC5D,MAAM,QAAQ,GAAG,WAAW,CAAC,IAAI,CAC/B,CAAC,CAAC,EAAgC,EAAE,CAClC,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,KAAK,IAAI,IAAK,CAA6B,CAAC,EAAE,KAAK,CAAC,CAAC,EAAE,CACpF,CAAC;QACF,MAAM,UAAU,GAAG,gBAAgB,CAAC,QAAQ,EAAE,mBAAmB,CAAC,CAAC;QACnE,MAAM,gBAAgB,GAAG,6BAA6B,CAAC,QAAQ,EAAE,wBAAwB,CAAC,CAAC;QAC3F,OAAO;YACL,GAAG,CAAC;YACJ,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,mBAAmB,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC1D,GAAG,CAAC,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,wBAAwB,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC1F,CAAC;IACJ,CAAC,CAAC,CAAC;IACH,OAAO,MAAM,CAAC,CAAC,CAAC,EAAE,mBAAmB,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC;AAC3E,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,UAAU,CAAC,UAAmB;IAC5C,yEAAyE;IACzE,MAAM,UAAU,GAAG,oBAAoB,CAAC,UAAU,EAAE,aAAa,CAAC,CAAC;IAEnE,0EAA0E;IAC1E,2EAA2E;IAC3E,8DAA8D;IAC9D,MAAM,MAAM,GAAG,aAAa,EAAE,CAAC;IAE/B,8EAA8E;IAC9E,gEAAgE;IAChE,MAAM,IAAI,GAAG,iBAAiB,CAAC,UAAU,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC;IAExD,iDAAiD;IACjD,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IAChD,MAAM,cAAc,GAAG,IAAI,CAAC,cAAc,IAAI,QAAQ,CAAC;IACvD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,OAAO,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;IACnE,MAAM,gBAAgB,GAAG,IAAI,CAAC,gBAAgB,IAAI,OAAO,CAAC,CAAC,SAAS;IAEpE,uEAAuE;IACvE,8EAA8E;IAC9E,sEAAsE;IACtE,wEAAwE;IACxE,0EAA0E;IAC1E,6DAA6D;IAC7D,MAAM,EAAE,mBAAmB,EAAE,QAAQ,EAAE,GAAG,2BAA2B,CAAC,UAAU,EAAE,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC;IAEvG,gCAAgC;IAChC,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;IACjC,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;IACjC,MAAM,cAAc,GAAG,IAAI,CAAC,cAAc,CAAC;IAC3C,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;IAEjC,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;IACxE,CAAC;IACD,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,2DAA2D,CAAC,CAAC;IAC/E,CAAC;IACD,IAAI,CAAC,cAAc,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CAAC,gEAAgE,CAAC,CAAC;IACpF,CAAC;IACD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;QACxC,MAAM,IAAI,KAAK,CACb,yEAAyE;YACzE,oEAAoE,CACrE,CAAC;IACJ,CAAC;IAED,4FAA4F;IAC5F,IAAI,SAAS,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QACpC,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC;QAC5C,MAAM,OAAO,GAAG,OAAO,KAAK,WAAW,IAAI,OAAO,KAAK,WAAW,IAAI,OAAO,KAAK,KAAK,CAAC;QACxF,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,GAAG,CAAC,IAAI,CACN,kDAAkD;gBAClD,yFAAyF;gBACzF,uCAAuC,CACxC,CAAC;QACJ,CAAC;IACH,CAAC;IAED,4BAA4B;IAC5B,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC1B,MAAM,IAAI,KAAK,CAAC,mCAAmC,QAAQ,EAAE,CAAC,CAAC;IACjE,CAAC;IAED,iEAAiE;IACjE,EAAE;IACF,2EAA2E;IAC3E,4EAA4E;IAC5E,yEAAyE;IACzE,gEAAgE;IAEhE,kDAAkD;IAClD,8EAA8E;IAC9E,MAAM,WAAW,GAAG,MAAM,CAAC,mBAAmB;WACzC,CAAC,OAAO,UAAU,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAC;WAC1E,OAAO,CAAC,QAAQ,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;IAE/C,4EAA4E;IAC5E,MAAM,iBAAiB,GAAG,QAAQ,CAAC,2BAA2B,CAAC;QAC7D,CAAC,CAAC,MAAM,CAAC,yBAAyB;QAClC,CAAC,CAAC,CAAC,OAAO,UAAU,CAAC,iBAAiB,KAAK,QAAQ,IAAI,UAAU,CAAC,iBAAiB;YACjF,CAAC,CAAC,UAAU,CAAC,iBAAiB;YAC9B,CAAC,CAAC,MAAM,CAAC,yBAAyB,CAAC,CAAC;IAExC,iBAAiB;IACjB,MAAM,UAAU,GAAG,iBAAiB,CAAC,OAAO,CAAC,GAAG,CAAC,kBAAkB,EAAE,UAAU,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,iCAAiC;IACvI,MAAM,UAAU,GAAG,UAAU,CAAC,aAAa,EAAE,MAAM,CAAC,WAAW,EAAE,UAAU,CAAC,UAAU,CAAC,CAAC;IACxF,MAAM,SAAS,GAAG,UAAU,CAAC,YAAY,EAAE,MAAM,CAAC,UAAU,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC;IACpF,MAAM,kBAAkB,GAAG,UAAU,CAAC,uBAAuB,EAAE,MAAM,CAAC,qBAAqB,EAAE,UAAU,CAAC,kBAAkB,CAAC,CAAC;IAC5H,MAAM,4BAA4B,GAAG,UAAU,CAAC,kCAAkC,EAAE,MAAM,CAAC,gCAAgC,EAAE,UAAU,CAAC,4BAA4B,CAAC,CAAC;IAEtK,+EAA+E;IAC/E,6EAA6E;IAC7E,iEAAiE;IACjE,IAAI,iBAAoC,CAAC;IACzC,IAAI,QAAQ,CAAC,4BAA4B,CAAC,EAAE,CAAC;QAC3C,wEAAwE;QACxE,iBAAiB,GAAG,MAAM,CAAC,0BAA+C,CAAC;IAC7E,CAAC;SAAM,IAAI,OAAO,UAAU,CAAC,iBAAiB,KAAK,QAAQ,IAAI,UAAU,CAAC,iBAAiB,EAAE,CAAC;QAC5F,MAAM,QAAQ,GAAG,UAAU,CAAC,iBAAiB,CAAC;QAC9C,IAAI,QAAQ,KAAK,WAAW,IAAI,QAAQ,KAAK,aAAa,EAAE,CAAC;YAC3D,MAAM,IAAI,KAAK,CAAC,8CAA8C,QAAQ,0CAA0C,CAAC,CAAC;QACpH,CAAC;QACD,iBAAiB,GAAG,QAAQ,CAAC;IAC/B,CAAC;SAAM,CAAC;QACN,iBAAiB,GAAG,MAAM,CAAC,0BAA+C,CAAC,CAAC,2BAA2B;IACzG,CAAC;IAED,uBAAuB;IACvB,MAAM,aAAa,GAAG,UAAU,CAAC,kBAAkB,EAAE,MAAM,CAAC,gBAAgB,EAAE,UAAU,CAAC,aAAa,CAAC,CAAC;IACxG,MAAM,gBAAgB,GAAG,UAAU,CAAC,qBAAqB,EAAE,MAAM,CAAC,mBAAmB,EAAE,UAAU,CAAC,gBAAgB,CAAC,CAAC;IACpH,MAAM,WAAW,GAAG,UAAU,CAAC,eAAe,EAAE,MAAM,CAAC,aAAa,EAAE,UAAU,CAAC,WAAW,CAAC,CAAC;IAE9F,0CAA0C;IAC1C,MAAM,aAAa,GAAG,CAAC,OAAO,UAAU,CAAC,SAAS,KAAK,QAAQ,IAAI,UAAU,CAAC,SAAS,KAAK,IAAI,CAAC;QAC/F,CAAC,CAAC,UAAU,CAAC,SAAoC;QACjD,CAAC,CAAC,EAAE,CAAC;IACP,MAAM,SAAS,GAAoB;QACjC,OAAO,EAAE,QAAQ,CAAC,0BAA0B,CAAC;YAC3C,CAAC,CAAC,MAAM,CAAC,wBAAwB;YACjC,CAAC,CAAC,CAAC,OAAO,aAAa,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,wBAAwB,CAAC;QAC1G,IAAI,EAAE,UAAU,CAAC,uBAAuB,EAAE,MAAM,CAAC,qBAAqB,EAAE,aAAa,CAAC,IAAI,CAAC;QAC3F,eAAe,EAAE,UAAU,CAAC,oCAAoC,EAAE,MAAM,CAAC,kCAAkC,EAAE,aAAa,CAAC,eAAe,CAAC;QAC3I,aAAa,EAAE,UAAU,CAAC,iCAAiC,EAAE,MAAM,CAAC,+BAA+B,EAAE,aAAa,CAAC,aAAa,CAAC;KAClI,CAAC;IAEF,8EAA8E;IAC9E,4EAA4E;IAC5E,wCAAwC;IACxC,MAAM,UAAU,GAAG,CAAC,OAAO,UAAU,CAAC,MAAM,KAAK,QAAQ,IAAI,UAAU,CAAC,MAAM,KAAK,IAAI,CAAC;QACtF,CAAC,CAAC,UAAU,CAAC,MAAiC;QAC9C,CAAC,CAAC,EAAE,CAAC;IACP,MAAM,MAAM,GAAiB;QAC3B,OAAO,EAAE,QAAQ,CAAC,uBAAuB,CAAC;YACxC,CAAC,CAAC,MAAM,CAAC,qBAAqB;YAC9B,CAAC,CAAC,CAAC,OAAO,UAAU,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,qBAAqB,CAAC;QACjG,IAAI,EAAE,QAAQ,CAAC,oBAAoB,CAAC;YAClC,CAAC,CAAC,MAAM,CAAC,kBAAkB;YAC3B,CAAC,CAAC,CAAC,OAAO,UAAU,CAAC,IAAI,KAAK,QAAQ,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,kBAAkB,CAAC;QAC1G,IAAI,EAAE,UAAU,CAAC,oBAAoB,EAAE,MAAM,CAAC,kBAAkB,EAAE,UAAU,CAAC,IAAI,CAAC;QAClF,eAAe,EAAE,QAAQ,CAAC,iCAAiC,CAAC;YAC1D,CAAC,CAAC,MAAM,CAAC,+BAA+B;YACxC,CAAC,CAAC,CAAC,OAAO,UAAU,CAAC,eAAe,KAAK,QAAQ,IAAI,UAAU,CAAC,eAAe,CAAC,CAAC,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC,CAAC,MAAM,CAAC,+BAA+B,CAAC;QACxJ,eAAe,EAAE,QAAQ,CAAC,gCAAgC,CAAC;YACzD,CAAC,CAAC,MAAM,CAAC,8BAA8B;YACvC,CAAC,CAAC,CAAC,OAAO,UAAU,CAAC,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC,CAAC,MAAM,CAAC,8BAA8B,CAAC;QAC1H,MAAM,EAAE,QAAQ,CAAC,sBAAsB,CAAC;YACtC,CAAC,CAAC,MAAM,CAAC,oBAAoB;YAC7B,CAAC,CAAC,CAAC,OAAO,UAAU,CAAC,MAAM,KAAK,QAAQ,IAAI,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,oBAAoB,CAAC;QAClH,cAAc,EAAE,UAAU,CAAC,gCAAgC,EAAE,MAAM,CAAC,8BAA8B,EAAE,UAAU,CAAC,cAAc,CAAC;KAC/H,CAAC;IAEF,2EAA2E;IAC3E,oEAAoE;IACpE,6EAA6E;IAC7E,+EAA+E;IAC/E,sEAAsE;IACtE,4CAA4C;IAE5C,OAAO;QACL,SAAS;QACT,SAAS;QACT,cAAc;QACd,SAAS,EAAE,SAAS,IAAI,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE;QAC7C,QAAQ;QACR,QAAQ;QACR,cAAc;QACd,MAAM;QACN,gBAAgB;QAChB,WAAW;QACX,iBAAiB;QACjB,GAAG,sBAAsB,CAAC,UAAU,CAAC;QACrC,UAAU;QACV,SAAS;QACT,kBAAkB;QAClB,4BAA4B;QAC5B,iBAAiB;QACjB,aAAa;QACb,gBAAgB;QAChB,WAAW;QACX,SAAS;QACT,MAAM;QACN,GAAG,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACxD,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,gBAAgB,CAAC,MAAoB,EAAE,OAAqB;IAC1E,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,OAAO,CAAC,EAAE,CAAC,CAAC;IAC/D,MAAM,sBAAsB,GAAG,KAAK,EAAE,mBAAmB,CAAC;IAC1D,gFAAgF;IAChF,MAAM,EAAE,wBAAwB,EAAE,wBAAwB,EAAE,GAAG,QAAQ,EAAE,GAAG,MAAM,CAAC;IACnF,OAAO;QACL,GAAG,QAAQ;QACX,SAAS,EAAE,OAAO,CAAC,EAAE;QACrB,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,4DAA4D;QAC5D,WAAW,EAAE,OAAO,CAAC,OAAO,CAAC,QAAQ,EAAE,SAAS,EAAE,WAAW,CAAC;QAC9D,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC;QACpD,8DAA8D;QAC9D,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,mBAAmB,EAAE,OAAO,CAAC,mBAAmB;QAChD,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,wEAAwE;QACxE,wDAAwD;QACxD,GAAG,CAAC,sBAAsB,CAAC,CAAC,CAAC,EAAE,mBAAmB,EAAE,sBAAsB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAClF,GAAG,CAAC,KAAK,EAAE,wBAAwB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,wBAAwB,EAAE,KAAK,CAAC,wBAAwB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACvH,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,WAAW,CAAC,MAAoB,EAAE,SAAiB;IACjE,OAAO,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC;AACvD,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,yBAAyB,CAAC,OAAqB;IACtD,IAAI,CAAC,OAAO,CAAC,QAAQ;QAAE,OAAO,IAAI,CAAC;IACnC,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;QAClC,OAAO,6BAA6B,OAAO,CAAC,QAAQ,GAAG,CAAC;IAC1D,CAAC;IACD,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC;QACnD,OAAO,sDAAsD,OAAO,CAAC,QAAQ,GAAG,CAAC;IACnF,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,UAAU,cAAc,CAAC,MAAoB;IACjD,iGAAiG;IACjG,MAAM,MAAM,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC;IAE1C,iEAAiE;IAEjE,uEAAuE;IACvE,yEAAyE;IACzE,0BAA0B;IAC1B,MAAM,MAAM,GAAmB,EAAE,CAAC;IAClC,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QACtC,MAAM,MAAM,GAAG,yBAAyB,CAAC,OAAO,CAAC,CAAC;QAClD,IAAI,MAAM,EAAE,CAAC;YACX,GAAG,CAAC,IAAI,CAAC,oBAAoB,OAAO,CAAC,EAAE,KAAK,MAAM,EAAE,CAAC,CAAC;YACtD,YAAY,CAAC,IAAI,CAAC;gBAChB,kEAAkE;gBAClE,qEAAqE;gBACrE,mEAAmE;gBACnE,uEAAuE;gBACvE,uEAAuE;gBACvE,qEAAqE;gBACrE,+BAA+B;gBAC/B,QAAQ,EAAE,MAAM;gBAChB,MAAM,EAAE,QAAQ;gBAChB,IAAI,EAAE,8BAA8B;gBACpC,OAAO,EAAE,WAAW,OAAO,CAAC,EAAE,aAAa,MAAM,EAAE;gBACnD,SAAS,EAAE,OAAO,CAAC,EAAE;aACtB,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACvB,CAAC;IACH,CAAC;IAED,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtD,sEAAsE;QACtE,MAAM,CAAC,IAAI,CACT,kFAAkF;YAClF,wEAAwE,CACzE,CAAC;IACJ,CAAC;SAAM,IAAI,MAAM,CAAC,MAAM,KAAK,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC;QACpD,wEAAwE;QACxE,uEAAuE;QACvE,uCAAuC;QACvC,MAAM,CAAC,QAAQ,GAAG,MAAM,CAAC;QACzB,MAAM,CAAC,SAAS,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAChC,MAAM,CAAC,QAAQ,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;QACrC,MAAM,CAAC,WAAW,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;QACzE,MAAM,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;IACjE,CAAC;IAED,8EAA8E;IAC9E,+EAA+E;IAC/E,8EAA8E;IAC9E,8EAA8E;IAC9E,0EAA0E;IAC1E,8EAA8E;IAC9E,4EAA4E;IAC5E,yDAAyD;IACzD,MAAM,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;IACzD,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;QAChC,IAAI,CAAC;YACH,SAAS,CAAC,cAAc,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACjD,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,IAAI,CACT,wEAAwE;gBACxE,IAAI,cAAc,MAAM,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAC5E,CAAC;QACJ,CAAC;IACH,CAAC;IACD,IAAI,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;QAC/B,IAAI,CAAC;YACH,UAAU,CAAC,cAAc,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;QAC7C,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,CAAC,IAAI,CAAC,kDAAkD,cAAc,GAAG,CAAC,CAAC;QACnF,CAAC;IACH,CAAC;IAED,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CACb,2CAA2C,MAAM,CAAC,MAAM,eAAe;YACvE,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CACvC,CAAC;IACJ,CAAC;IAED,GAAG,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC;AAC9C,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW,CAAC,MAAoB;IAC9C,GAAG,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;IAClC,GAAG,CAAC,IAAI,CAAC,iBAAiB,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC;IAC9C,GAAG,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;IACvC,GAAG,CAAC,IAAI,CAAC,sBAAsB,MAAM,CAAC,cAAc,EAAE,CAAC,CAAC;IACxD,GAAG,CAAC,IAAI,CAAC,eAAe,MAAM,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;IAClD,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QACtC,GAAG,CAAC,IAAI,CAAC,SAAS,OAAO,CAAC,EAAE,OAAO,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;IACzD,CAAC;IACD,GAAG,CAAC,IAAI,CAAC,yBAAyB,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;IACxD,GAAG,CAAC,IAAI,CAAC,yBAAyB,MAAM,CAAC,iBAAiB,EAAE,CAAC,CAAC;IAC9D,GAAG,CAAC,IAAI,CAAC,uBAAuB,MAAM,CAAC,cAAc,EAAE,CAAC,CAAC;IACzD,GAAG,CAAC,IAAI,CAAC,oBAAoB,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;IAC9C,GAAG,CAAC,IAAI,CAAC,yBAAyB,MAAM,CAAC,gBAAgB,GAAG,MAAM,CAAC,sBAAsB,CAAC,CAAC,CAAC,KAAK,wBAAwB,CAAC,MAAM,CAAC,sBAAsB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACpK,GAAG,CAAC,IAAI,CAAC,sBAAsB,MAAM,CAAC,gBAAgB,IAAI,CAAC,CAAC;IAC5D,GAAG,CAAC,IAAI,CAAC,kBAAkB,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC;IAChD,GAAG,CAAC,IAAI,CAAC,kBAAkB,MAAM,CAAC,SAAS,EAAE,CAAC,CAAC;IAC/C,GAAG,CAAC,IAAI,CAAC,yBAAyB,MAAM,CAAC,kBAAkB,IAAI,CAAC,CAAC;IACjE,GAAG,CAAC,IAAI,CAAC,oCAAoC,MAAM,CAAC,4BAA4B,IAAI,CAAC,CAAC;IACtF,GAAG,CAAC,IAAI,CAAC,0BAA0B,MAAM,CAAC,iBAAiB,EAAE,CAAC,CAAC;IAC/D,GAAG,CAAC,IAAI,CAAC,kBAAkB,MAAM,CAAC,aAAa,OAAO,CAAC,CAAC;IACxD,GAAG,CAAC,IAAI,CAAC,yBAAyB,CAAC,MAAM,CAAC,gBAAgB,GAAG,UAAU,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;IAC1F,GAAG,CAAC,IAAI,CAAC,oBAAoB,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;IACnD,GAAG,CAAC,IAAI,CAAC,wBAAwB,MAAM,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,CAAC;IAC7D,GAAG,CAAC,IAAI,CAAC,qBAAqB,MAAM,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;IACvD,GAAG,CAAC,IAAI,CAAC,+BAA+B,MAAM,CAAC,SAAS,CAAC,eAAe,IAAI,CAAC,CAAC;IAC9E,GAAG,CAAC,IAAI,CAAC,0BAA0B,MAAM,CAAC,SAAS,CAAC,aAAa,OAAO,CAAC,CAAC;IAC1E,GAAG,CAAC,IAAI,CAAC,qBAAqB,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC;IAChF,IAAI,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QAC1B,GAAG,CAAC,IAAI,CAAC,+BAA+B,MAAM,CAAC,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC;QACpF,GAAG,CAAC,IAAI,CAAC,wBAAwB,MAAM,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC,CAAC;QAClE,GAAG,CAAC,IAAI,CAAC,6BAA6B,MAAM,CAAC,MAAM,CAAC,cAAc,IAAI,CAAC,CAAC;IAC1E,CAAC;AACH,CAAC"}
@@ -0,0 +1,89 @@
1
+ import type { SessionCapSource } from '../types/index.js';
2
+ /**
3
+ * Default per-session memory allowance, in MB, for the memory bound.
4
+ *
5
+ * Grounded in a measurement on sol (16 cores, 62 GB), 2026-09-29: the process
6
+ * tree of a live team under the daemon PID (the claude lead, its in-process
7
+ * teammates, MCP servers, and the npm/node/esbuild children a gate spawns)
8
+ * summed 0.4-0.7 GB RSS between gate runs. The peak is much higher: on
9
+ * 2026-09-28 sol held ~54 GB used at cap 5, ~10 GB per team, because a verify
10
+ * gate (typecheck:all + vitest + the daemon node:test suite) is the dominant
11
+ * resident cost while it runs. Gate runs are transient and do not all coincide,
12
+ * so the allowance sits between the steady state and the all-gates-at-once
13
+ * worst case: 6 GB. On sol that bounds the cap at floor((62 - 4) / 6) = 9,
14
+ * equal to the core formula -- the memory bound bites only on hosts with less
15
+ * memory per core than sol.
16
+ */
17
+ export declare const DEFAULT_SESSION_MEMORY_ALLOWANCE_MB = 6144;
18
+ /**
19
+ * Default memory reserve, in MB, withheld from the bound for the OS, the
20
+ * daemon itself, and whatever else the host runs (a local Supabase stack, a
21
+ * desktop session). 4 GB.
22
+ */
23
+ export declare const DEFAULT_SESSION_MEMORY_RESERVE_MB = 4096;
24
+ /** The host inputs the derivation reads. */
25
+ export interface HostCapacity {
26
+ /** Logical cores available to this process. */
27
+ cores: number;
28
+ /** Total physical memory in bytes (os.totalmem()), NOT free memory. */
29
+ totalMemBytes: number;
30
+ }
31
+ export interface SessionCap {
32
+ maxTotalSessions: number;
33
+ source: SessionCapSource;
34
+ }
35
+ export interface SessionCapDerivationInputs extends HostCapacity {
36
+ allowanceMb: number;
37
+ reserveMb: number;
38
+ }
39
+ /**
40
+ * Derive the cap from the host. Pure: cores + total memory + allowance +
41
+ * reserve in, cap and its derivation out. Never below 1.
42
+ */
43
+ export declare function deriveSessionCap(inputs: SessionCapDerivationInputs): SessionCap;
44
+ /** Read the host's capacity. os.availableParallelism() where Node has it. */
45
+ export declare function readHostCapacity(): HostCapacity;
46
+ /**
47
+ * Resolve the effective cap from the raw inputs.
48
+ *
49
+ * @param envVal raw MAX_TOTAL_SESSIONS (explicit override when non-empty)
50
+ * @param fields the daemon.json block carrying maxTotalSessions,
51
+ * sessionMemoryAllowanceMb, sessionMemoryReserveMb
52
+ * (engines.focus fields, or the flat legacy file config)
53
+ * @param host the host's capacity (injected so tests need no os mock)
54
+ *
55
+ * Throws on an invalid maxTotalSessions (anything other than unset, "auto" or
56
+ * a positive integer) or an invalid memory override -- loudly, at startup or
57
+ * on hot-reload, naming the field.
58
+ */
59
+ export declare function resolveSessionCap(envVal: string | undefined, fields: Record<string, unknown>, host: HostCapacity): SessionCap;
60
+ /** The two DaemonConfig fields a resolved cap sets. */
61
+ export declare function sessionCapConfigFields(cap: SessionCap): {
62
+ maxTotalSessions: number;
63
+ maxTotalSessionsSource: SessionCapSource;
64
+ };
65
+ /**
66
+ * One-line description of a source, for the startup and hot-reload logs, e.g.
67
+ * "auto: 16 cores -> 9 (memory allows 9: 62 GB total, 4 GB reserve, 6 GB/session)".
68
+ */
69
+ export declare function describeSessionCapSource(source: SessionCapSource): string;
70
+ /** The global (all-engine) session cap and whether an operator pinned it. */
71
+ export interface GlobalSessionCap {
72
+ maxGlobalSessions: number;
73
+ /**
74
+ * True when TELORA_MAX_GLOBAL_SESSIONS or daemon.json maxGlobalSessions set
75
+ * it. An explicit global cap is the operator's and a focus-cap hot-reload
76
+ * never raises it; a non-explicit one follows the focus cap.
77
+ */
78
+ explicit: boolean;
79
+ }
80
+ /**
81
+ * Resolve the global cap: env override > daemon.json maxGlobalSessions > the
82
+ * sum of the per-engine limits (8 when no engine has one).
83
+ */
84
+ export declare function resolveGlobalSessionCap(envMax: number | undefined, rawFileConfig: Record<string, unknown>, engineLimits: Record<string, number>): GlobalSessionCap;
85
+ /** Stable identity of a source, so a hot-reload can tell whether it changed. */
86
+ export declare function sessionCapSourceKey(source: unknown): string;
87
+ /** Guard for a source read back off a loosely-typed config object. */
88
+ export declare function isSessionCapSource(value: unknown): value is SessionCapSource;
89
+ //# sourceMappingURL=session-cap.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session-cap.d.ts","sourceRoot":"","sources":["../../src/config/session-cap.ts"],"names":[],"mappings":"AA+BA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAE1D;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,mCAAmC,OAAO,CAAC;AAExD;;;;GAIG;AACH,eAAO,MAAM,iCAAiC,OAAO,CAAC;AAEtD,4CAA4C;AAC5C,MAAM,WAAW,YAAY;IAC3B,+CAA+C;IAC/C,KAAK,EAAE,MAAM,CAAC;IACd,uEAAuE;IACvE,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,UAAU;IACzB,gBAAgB,EAAE,MAAM,CAAC;IACzB,MAAM,EAAE,gBAAgB,CAAC;CAC1B;AAED,MAAM,WAAW,0BAA2B,SAAQ,YAAY;IAC9D,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;CACnB;AAID;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,0BAA0B,GAAG,UAAU,CAkB/E;AAED,6EAA6E;AAC7E,wBAAgB,gBAAgB,IAAI,YAAY,CAK/C;AAUD;;;;;;;;;;;;GAYG;AACH,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC/B,IAAI,EAAE,YAAY,GACjB,UAAU,CA+BZ;AAED,uDAAuD;AACvD,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,UAAU,GAAG;IACvD,gBAAgB,EAAE,MAAM,CAAC;IACzB,sBAAsB,EAAE,gBAAgB,CAAC;CAC1C,CAEA;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,gBAAgB,GAAG,MAAM,CAUzE;AAED,6EAA6E;AAC7E,MAAM,WAAW,gBAAgB;IAC/B,iBAAiB,EAAE,MAAM,CAAC;IAC1B;;;;OAIG;IACH,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED;;;GAGG;AACH,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EACtC,YAAY,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GACnC,gBAAgB,CAMlB;AAED,gFAAgF;AAChF,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,CAE3D;AAED,sEAAsE;AACtE,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,gBAAgB,CAO5E"}
@@ -0,0 +1,176 @@
1
+ // PINNED-BY-BEGIN (generated by gen:pinned-by -- do not hand-edit; checked by lint:pinned-by)
2
+ // Pinned by: packages/daemon/src/config/session-cap.test.ts,
3
+ // packages/daemon/src/focus/heartbeat-session-cap.test.ts,
4
+ // packages/daemon/src/shell/session-cap-runtime.test.ts
5
+ // PINNED-BY-END
6
+ /**
7
+ * The focus-engine session cap, sized by the host the daemon runs on.
8
+ *
9
+ * `engines.focus.maxTotalSessions` resolves as follows (reasoning:
10
+ * docs/DECISIONS.md, "A daemon's session cap is sized by its host"):
11
+ *
12
+ * - unset or "auto" -> DERIVED from the host:
13
+ * min(floor(cores / 2) + 1,
14
+ * floor((totalMemory - reserve) / perSessionAllowance)),
15
+ * never below 1;
16
+ * - a positive integer (daemon.json, or the MAX_TOTAL_SESSIONS env var)
17
+ * -> EXPLICIT, used as-is. The operator chose it; the
18
+ * memory bound does not reduce it.
19
+ *
20
+ * The bound reads TOTAL memory (os.totalmem()), never free/available memory,
21
+ * so the derived cap is a property of the host and does not move while teams
22
+ * are running and consuming memory.
23
+ *
24
+ * This is the ONE derivation site. Startup, the SIGHUP hot-reload, the
25
+ * legacy loadConfig path, the heartbeat and the logs all read the
26
+ * { maxTotalSessions, source } pair produced here, so the published source
27
+ * cannot disagree with the cap the governor enforces.
28
+ */
29
+ import os from 'node:os';
30
+ /**
31
+ * Default per-session memory allowance, in MB, for the memory bound.
32
+ *
33
+ * Grounded in a measurement on sol (16 cores, 62 GB), 2026-09-29: the process
34
+ * tree of a live team under the daemon PID (the claude lead, its in-process
35
+ * teammates, MCP servers, and the npm/node/esbuild children a gate spawns)
36
+ * summed 0.4-0.7 GB RSS between gate runs. The peak is much higher: on
37
+ * 2026-09-28 sol held ~54 GB used at cap 5, ~10 GB per team, because a verify
38
+ * gate (typecheck:all + vitest + the daemon node:test suite) is the dominant
39
+ * resident cost while it runs. Gate runs are transient and do not all coincide,
40
+ * so the allowance sits between the steady state and the all-gates-at-once
41
+ * worst case: 6 GB. On sol that bounds the cap at floor((62 - 4) / 6) = 9,
42
+ * equal to the core formula -- the memory bound bites only on hosts with less
43
+ * memory per core than sol.
44
+ */
45
+ export const DEFAULT_SESSION_MEMORY_ALLOWANCE_MB = 6144;
46
+ /**
47
+ * Default memory reserve, in MB, withheld from the bound for the OS, the
48
+ * daemon itself, and whatever else the host runs (a local Supabase stack, a
49
+ * desktop session). 4 GB.
50
+ */
51
+ export const DEFAULT_SESSION_MEMORY_RESERVE_MB = 4096;
52
+ const MB = 1024 * 1024;
53
+ /**
54
+ * Derive the cap from the host. Pure: cores + total memory + allowance +
55
+ * reserve in, cap and its derivation out. Never below 1.
56
+ */
57
+ export function deriveSessionCap(inputs) {
58
+ // A probe that reports nonsense (0, negative, NaN) still yields one core.
59
+ const cores = Number.isFinite(inputs.cores) ? Math.max(1, Math.floor(inputs.cores)) : 1;
60
+ const coreCap = Math.floor(cores / 2) + 1;
61
+ const totalMb = Math.floor(inputs.totalMemBytes / MB);
62
+ const memoryCap = Math.floor((totalMb - inputs.reserveMb) / inputs.allowanceMb);
63
+ const boundBy = memoryCap < coreCap ? 'memory' : 'cores';
64
+ const maxTotalSessions = Math.max(1, Math.min(coreCap, memoryCap));
65
+ return {
66
+ maxTotalSessions,
67
+ source: {
68
+ mode: 'auto',
69
+ cores,
70
+ coreCap,
71
+ memory: { totalMb, reserveMb: inputs.reserveMb, allowanceMb: inputs.allowanceMb, memoryCap },
72
+ boundBy,
73
+ },
74
+ };
75
+ }
76
+ /** Read the host's capacity. os.availableParallelism() where Node has it. */
77
+ export function readHostCapacity() {
78
+ const cores = typeof os.availableParallelism === 'function'
79
+ ? os.availableParallelism()
80
+ : os.cpus().length;
81
+ return { cores, totalMemBytes: os.totalmem() };
82
+ }
83
+ function positiveIntOrThrow(value, field) {
84
+ if (value === undefined || value === null)
85
+ return undefined;
86
+ if (typeof value === 'number' && Number.isInteger(value) && value > 0)
87
+ return value;
88
+ throw new Error(`Invalid ${field}: ${JSON.stringify(value)}. Must be a positive integer (MB).`);
89
+ }
90
+ /**
91
+ * Resolve the effective cap from the raw inputs.
92
+ *
93
+ * @param envVal raw MAX_TOTAL_SESSIONS (explicit override when non-empty)
94
+ * @param fields the daemon.json block carrying maxTotalSessions,
95
+ * sessionMemoryAllowanceMb, sessionMemoryReserveMb
96
+ * (engines.focus fields, or the flat legacy file config)
97
+ * @param host the host's capacity (injected so tests need no os mock)
98
+ *
99
+ * Throws on an invalid maxTotalSessions (anything other than unset, "auto" or
100
+ * a positive integer) or an invalid memory override -- loudly, at startup or
101
+ * on hot-reload, naming the field.
102
+ */
103
+ export function resolveSessionCap(envVal, fields, host) {
104
+ if (envVal !== undefined && envVal.trim() !== '') {
105
+ const n = Number(envVal);
106
+ if (!Number.isInteger(n) || n <= 0) {
107
+ throw new Error(`Invalid MAX_TOTAL_SESSIONS: "${envVal}". Must be a positive integer.`);
108
+ }
109
+ return { maxTotalSessions: n, source: { mode: 'explicit', from: 'env' } };
110
+ }
111
+ const raw = fields.maxTotalSessions;
112
+ if (typeof raw === 'number') {
113
+ if (!Number.isInteger(raw) || raw <= 0) {
114
+ throw new Error(`Invalid maxTotalSessions: ${String(raw)}. Must be a positive integer or "auto".`);
115
+ }
116
+ return { maxTotalSessions: raw, source: { mode: 'explicit', from: 'config' } };
117
+ }
118
+ if (raw !== undefined && raw !== null && raw !== 'auto') {
119
+ throw new Error(`Invalid maxTotalSessions: ${JSON.stringify(raw)}. Must be a positive integer or "auto".`);
120
+ }
121
+ const allowanceMb = positiveIntOrThrow(fields.sessionMemoryAllowanceMb, 'sessionMemoryAllowanceMb')
122
+ ?? DEFAULT_SESSION_MEMORY_ALLOWANCE_MB;
123
+ const reserveMb = fields.sessionMemoryReserveMb === 0
124
+ ? 0
125
+ : positiveIntOrThrow(fields.sessionMemoryReserveMb, 'sessionMemoryReserveMb')
126
+ ?? DEFAULT_SESSION_MEMORY_RESERVE_MB;
127
+ return deriveSessionCap({ ...host, allowanceMb, reserveMb });
128
+ }
129
+ /** The two DaemonConfig fields a resolved cap sets. */
130
+ export function sessionCapConfigFields(cap) {
131
+ return { maxTotalSessions: cap.maxTotalSessions, maxTotalSessionsSource: cap.source };
132
+ }
133
+ /**
134
+ * One-line description of a source, for the startup and hot-reload logs, e.g.
135
+ * "auto: 16 cores -> 9 (memory allows 9: 62 GB total, 4 GB reserve, 6 GB/session)".
136
+ */
137
+ export function describeSessionCapSource(source) {
138
+ if (source.mode === 'explicit') {
139
+ return source.from === 'env' ? 'explicit (MAX_TOTAL_SESSIONS env)' : 'explicit (daemon.json)';
140
+ }
141
+ const gb = (mb) => `${Math.round(mb / 1024)} GB`;
142
+ const mem = source.memory;
143
+ const memText = `${gb(mem.totalMb)} total, ${gb(mem.reserveMb)} reserve, ${gb(mem.allowanceMb)}/session`;
144
+ return source.boundBy === 'memory'
145
+ ? `auto: bounded by memory to ${Math.max(1, mem.memoryCap)} (${memText}); ${source.cores} cores would allow ${source.coreCap}`
146
+ : `auto: ${source.cores} cores -> ${source.coreCap} (memory allows ${mem.memoryCap}: ${memText})`;
147
+ }
148
+ /**
149
+ * Resolve the global cap: env override > daemon.json maxGlobalSessions > the
150
+ * sum of the per-engine limits (8 when no engine has one).
151
+ */
152
+ export function resolveGlobalSessionCap(envMax, rawFileConfig, engineLimits) {
153
+ if (envMax !== undefined)
154
+ return { maxGlobalSessions: envMax, explicit: true };
155
+ const fileMax = rawFileConfig.maxGlobalSessions;
156
+ if (typeof fileMax === 'number')
157
+ return { maxGlobalSessions: fileMax, explicit: true };
158
+ const sum = Object.values(engineLimits).reduce((total, v) => total + v, 0);
159
+ return { maxGlobalSessions: sum || 8, explicit: false };
160
+ }
161
+ /** Stable identity of a source, so a hot-reload can tell whether it changed. */
162
+ export function sessionCapSourceKey(source) {
163
+ return source === undefined ? '' : JSON.stringify(source);
164
+ }
165
+ /** Guard for a source read back off a loosely-typed config object. */
166
+ export function isSessionCapSource(value) {
167
+ if (typeof value !== 'object' || value === null)
168
+ return false;
169
+ const v = value;
170
+ if (v.mode === 'explicit')
171
+ return v.from === 'env' || v.from === 'config';
172
+ return v.mode === 'auto' && typeof v.cores === 'number' && typeof v.coreCap === 'number'
173
+ && (v.boundBy === 'cores' || v.boundBy === 'memory')
174
+ && typeof v.memory === 'object' && v.memory !== null;
175
+ }
176
+ //# sourceMappingURL=session-cap.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"session-cap.js","sourceRoot":"","sources":["../../src/config/session-cap.ts"],"names":[],"mappings":"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"}
@@ -11,7 +11,7 @@
11
11
  * Owner of the `lifecycle` and `activity` sub-records of FocusTeamState (see
12
12
  * types/focus-team-state.ts, TEAM_STATE_OWNERS): every write of phase,
13
13
  * shutdownReason, shutdownAttribution, shuttingDownAt, lastActivityAt,
14
- * toolActivityCount, errorResultAt and modelReachedAt goes through a writer
14
+ * toolActivityCount, errorResultAt, modelReachedAt and the working delivery goes through a writer
15
15
  * exported here.
16
16
  *
17
17
  * The ONE intentional side-table is `slotTokens`. It is deliberately NOT folded
@@ -40,6 +40,26 @@ import type { ShutdownAttribution, TeamShutdownReason } from '../types/shutdown-
40
40
  * @param now Epoch ms of the event (default Date.now()).
41
41
  */
42
42
  export declare function recordTeamActivity(focusId: string, now?: number): void;
43
+ /**
44
+ * Record the delivery `team` is working, observed at `observedAt`. Bound to the
45
+ * team OBJECT, not its focus: an observation that resolves after its team left
46
+ * activeTeams (and a replacement took the focus) is dropped, never stamped on the
47
+ * replacement. An observation older than the one already recorded is dropped too
48
+ * (resolutions complete out of order).
49
+ */
50
+ export declare function recordTeamWorkingDelivery(team: FocusTeamState, deliveryId: string, observedAt: number): void;
51
+ /**
52
+ * Seed the delivery a team is spawned to work (spawn/team-working-delivery.ts
53
+ * workingDeliveryAtSpawn), before its first act. Dated at epoch 0, so any
54
+ * observation of the team's own acts supersedes it.
55
+ */
56
+ export declare function seedTeamWorkingDelivery(team: FocusTeamState, deliveryId: string): void;
57
+ /**
58
+ * Record that `team` was spawned with no delivery to work on a focus whose
59
+ * deliveries are all terminal (spawn/team-working-delivery.ts). A delivery its
60
+ * own acts later name supersedes it (the producer reads the delivery first).
61
+ */
62
+ export declare function seedTeamResolvingWithoutDelivery(team: FocusTeamState): void;
43
63
  /**
44
64
  * Epoch ms of the team's last recorded agent event, or null when nothing has
45
65
  * been recorded yet (e.g. a team still initializing before its first event, or
@@ -1 +1 @@
1
- {"version":3,"file":"focus-team-state.d.ts","sourceRoot":"","sources":["../../src/daemon-state/focus-team-state.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"focus-team-state.d.ts","sourceRoot":"","sources":["../../src/daemon-state/focus-team-state.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  // PINNED-BY-BEGIN (generated by gen:pinned-by -- do not hand-edit; checked by lint:pinned-by)
2
- // Pinned by: 68 tests -- run: npm run gen:pinned-by -- --list packages/daemon/src/daemon-state/focus-team-state.ts
2
+ // Pinned by: 69 tests -- run: npm run gen:pinned-by -- --list packages/daemon/src/daemon-state/focus-team-state.ts
3
3
  // PINNED-BY-END
4
4
  import { createLogger } from '../log/daemon-log.js';
5
5
  const log = createLogger({ module: 'focus-executor' });
@@ -25,6 +25,41 @@ export function recordTeamActivity(focusId, now = Date.now()) {
25
25
  activity.lastActivityAt = now;
26
26
  }
27
27
  }
28
+ /**
29
+ * Record the delivery `team` is working, observed at `observedAt`. Bound to the
30
+ * team OBJECT, not its focus: an observation that resolves after its team left
31
+ * activeTeams (and a replacement took the focus) is dropped, never stamped on the
32
+ * replacement. An observation older than the one already recorded is dropped too
33
+ * (resolutions complete out of order).
34
+ */
35
+ export function recordTeamWorkingDelivery(team, deliveryId, observedAt) {
36
+ if (activeTeams.get(team.focusId) !== team)
37
+ return;
38
+ if ((team.workingDeliveryObservedAt ?? -Infinity) > observedAt)
39
+ return;
40
+ const activity = team;
41
+ activity.workingDeliveryId = deliveryId;
42
+ activity.workingDeliveryObservedAt = observedAt;
43
+ }
44
+ /**
45
+ * Seed the delivery a team is spawned to work (spawn/team-working-delivery.ts
46
+ * workingDeliveryAtSpawn), before its first act. Dated at epoch 0, so any
47
+ * observation of the team's own acts supersedes it.
48
+ */
49
+ export function seedTeamWorkingDelivery(team, deliveryId) {
50
+ const activity = team;
51
+ activity.workingDeliveryId = deliveryId;
52
+ activity.workingDeliveryObservedAt = 0;
53
+ }
54
+ /**
55
+ * Record that `team` was spawned with no delivery to work on a focus whose
56
+ * deliveries are all terminal (spawn/team-working-delivery.ts). A delivery its
57
+ * own acts later name supersedes it (the producer reads the delivery first).
58
+ */
59
+ export function seedTeamResolvingWithoutDelivery(team) {
60
+ const activity = team;
61
+ activity.resolvingWithoutDelivery = true;
62
+ }
28
63
  /**
29
64
  * Epoch ms of the team's last recorded agent event, or null when nothing has
30
65
  * been recorded yet (e.g. a team still initializing before its first event, or
@@ -1 +1 @@
1
- {"version":3,"file":"focus-team-state.js","sourceRoot":"","sources":["../../src/daemon-state/focus-team-state.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"focus-team-state.js","sourceRoot":"","sources":["../../src/daemon-state/focus-team-state.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  // PINNED-BY-BEGIN (generated by gen:pinned-by -- do not hand-edit; checked by lint:pinned-by)
2
- // Pinned by: 40 tests -- run: npm run gen:pinned-by -- --list packages/daemon/src/directive/directive-queue.ts
2
+ // Pinned by: 41 tests -- run: npm run gen:pinned-by -- --list packages/daemon/src/directive/directive-queue.ts
3
3
  // PINNED-BY-END
4
4
  /**
5
5
  * Directive queue: the pending spawn-directive store + its identity/guard logic.