chorus-codes 0.8.45 → 0.8.46

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 (98) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/build-manifest.json +2 -2
  3. package/.next/prerender-manifest.json +3 -3
  4. package/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  5. package/.next/server/app/_global-error.html +1 -1
  6. package/.next/server/app/_global-error.rsc +1 -1
  7. package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  8. package/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  9. package/.next/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
  10. package/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  11. package/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  12. package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  13. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  14. package/.next/server/app/_not-found.html +1 -1
  15. package/.next/server/app/_not-found.rsc +2 -2
  16. package/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
  17. package/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  18. package/.next/server/app/_not-found.segments/_index.segment.rsc +2 -2
  19. package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  20. package/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  21. package/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  22. package/.next/server/app/connect/page_client-reference-manifest.js +1 -1
  23. package/.next/server/app/demo/[scenario]/page_client-reference-manifest.js +1 -1
  24. package/.next/server/app/new/page_client-reference-manifest.js +1 -1
  25. package/.next/server/app/new.html +1 -1
  26. package/.next/server/app/new.rsc +3 -3
  27. package/.next/server/app/new.segments/_full.segment.rsc +3 -3
  28. package/.next/server/app/new.segments/_head.segment.rsc +1 -1
  29. package/.next/server/app/new.segments/_index.segment.rsc +2 -2
  30. package/.next/server/app/new.segments/_tree.segment.rsc +2 -2
  31. package/.next/server/app/new.segments/new/__PAGE__.segment.rsc +2 -2
  32. package/.next/server/app/new.segments/new.segment.rsc +1 -1
  33. package/.next/server/app/onboarding/page_client-reference-manifest.js +1 -1
  34. package/.next/server/app/onboarding.html +1 -1
  35. package/.next/server/app/onboarding.rsc +3 -3
  36. package/.next/server/app/onboarding.segments/_full.segment.rsc +3 -3
  37. package/.next/server/app/onboarding.segments/_head.segment.rsc +1 -1
  38. package/.next/server/app/onboarding.segments/_index.segment.rsc +2 -2
  39. package/.next/server/app/onboarding.segments/_tree.segment.rsc +2 -2
  40. package/.next/server/app/onboarding.segments/onboarding/__PAGE__.segment.rsc +2 -2
  41. package/.next/server/app/onboarding.segments/onboarding.segment.rsc +1 -1
  42. package/.next/server/app/page_client-reference-manifest.js +1 -1
  43. package/.next/server/app/personas/page_client-reference-manifest.js +1 -1
  44. package/.next/server/app/personas.html +1 -1
  45. package/.next/server/app/personas.rsc +3 -3
  46. package/.next/server/app/personas.segments/_full.segment.rsc +3 -3
  47. package/.next/server/app/personas.segments/_head.segment.rsc +1 -1
  48. package/.next/server/app/personas.segments/_index.segment.rsc +2 -2
  49. package/.next/server/app/personas.segments/_tree.segment.rsc +2 -2
  50. package/.next/server/app/personas.segments/personas/__PAGE__.segment.rsc +2 -2
  51. package/.next/server/app/personas.segments/personas.segment.rsc +1 -1
  52. package/.next/server/app/runs/[runId]/page_client-reference-manifest.js +1 -1
  53. package/.next/server/app/runs/page_client-reference-manifest.js +1 -1
  54. package/.next/server/app/settings/page.js +2 -2
  55. package/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  56. package/.next/server/app/settings/permissions/page_client-reference-manifest.js +1 -1
  57. package/.next/server/app/settings.html +1 -1
  58. package/.next/server/app/settings.rsc +3 -3
  59. package/.next/server/app/settings.segments/_full.segment.rsc +3 -3
  60. package/.next/server/app/settings.segments/_head.segment.rsc +1 -1
  61. package/.next/server/app/settings.segments/_index.segment.rsc +2 -2
  62. package/.next/server/app/settings.segments/_tree.segment.rsc +2 -2
  63. package/.next/server/app/settings.segments/settings/__PAGE__.segment.rsc +2 -2
  64. package/.next/server/app/settings.segments/settings.segment.rsc +1 -1
  65. package/.next/server/app/templates/page_client-reference-manifest.js +1 -1
  66. package/.next/server/app/templates.html +1 -1
  67. package/.next/server/app/templates.rsc +3 -3
  68. package/.next/server/app/templates.segments/_full.segment.rsc +3 -3
  69. package/.next/server/app/templates.segments/_head.segment.rsc +1 -1
  70. package/.next/server/app/templates.segments/_index.segment.rsc +2 -2
  71. package/.next/server/app/templates.segments/_tree.segment.rsc +2 -2
  72. package/.next/server/app/templates.segments/templates/__PAGE__.segment.rsc +2 -2
  73. package/.next/server/app/templates.segments/templates.segment.rsc +1 -1
  74. package/.next/server/chunks/681.js +1 -1
  75. package/.next/server/middleware-build-manifest.js +1 -1
  76. package/.next/server/pages/404.html +1 -1
  77. package/.next/server/pages/500.html +1 -1
  78. package/.next/server/server-reference-manifest.json +1 -1
  79. package/.next/static/chunks/{641-8c9e921c7be99a9d.js → 641-81dca4fb9dc808be.js} +1 -1
  80. package/.next/static/chunks/app/settings/page-9e139cc529c0a91c.js +25 -0
  81. package/.next/static/css/e8fdba3e08fd4c61.css +3 -0
  82. package/.next/trace +20 -20
  83. package/.next/trace-build +1 -1
  84. package/dist/daemon/chat-gate.js +285 -0
  85. package/dist/daemon/chat-gate.js.map +1 -0
  86. package/dist/daemon/resource-stats.js +80 -0
  87. package/dist/daemon/resource-stats.js.map +1 -0
  88. package/dist/daemon/routes/settings.js +54 -0
  89. package/dist/daemon/routes/settings.js.map +1 -1
  90. package/dist/daemon/runner.js +48 -0
  91. package/dist/daemon/runner.js.map +1 -1
  92. package/dist/lib/settings/chat-concurrency.js +104 -0
  93. package/dist/lib/settings/chat-concurrency.js.map +1 -0
  94. package/package.json +1 -1
  95. package/.next/static/chunks/app/settings/page-e2f6b190d3794681.js +0 -25
  96. package/.next/static/css/e17f6c0e70cdd1f3.css +0 -3
  97. /package/.next/static/{K3ZP-A6lDlsvS8qZe3cKK → W97_xq3XcOw4uiCeSVQNz}/_buildManifest.js +0 -0
  98. /package/.next/static/{K3ZP-A6lDlsvS8qZe3cKK → W97_xq3XcOw4uiCeSVQNz}/_ssgManifest.js +0 -0
package/.next/trace-build CHANGED
@@ -1 +1 @@
1
- [{"name":"run-webpack","duration":10828345,"timestamp":7868360621045,"id":14,"parentId":1,"tags":{},"startTime":1779259731047,"traceId":"66af7c22a3a24821"},{"name":"run-typescript","duration":5904539,"timestamp":7868371453616,"id":2118,"parentId":1,"tags":{},"startTime":1779259741880,"traceId":"66af7c22a3a24821"},{"name":"static-check","duration":444335,"timestamp":7868377407355,"id":2121,"parentId":1,"tags":{},"startTime":1779259747833,"traceId":"66af7c22a3a24821"},{"name":"static-generation","duration":1268256,"timestamp":7868378070274,"id":2161,"parentId":1,"tags":{},"startTime":1779259748496,"traceId":"66af7c22a3a24821"},{"name":"collect-build-traces","duration":6220135,"timestamp":7868377852764,"id":2158,"parentId":1,"tags":{},"startTime":1779259748279,"traceId":"66af7c22a3a24821"},{"name":"telemetry-flush","duration":29,"timestamp":7868384074515,"id":2170,"parentId":1,"tags":{},"startTime":1779259754501,"traceId":"66af7c22a3a24821"},{"name":"next-build","duration":23540075,"timestamp":7868360534477,"id":1,"tags":{"buildMode":"default","version":"16.2.4","bundler":"webpack","has-custom-webpack-config":"false","use-build-worker":"true"},"startTime":1779259730961,"traceId":"66af7c22a3a24821"}]
1
+ [{"name":"run-webpack","duration":10562520,"timestamp":7871679038167,"id":14,"parentId":1,"tags":{},"startTime":1779263049464,"traceId":"1b3c822a1caceb8c"},{"name":"run-typescript","duration":5836893,"timestamp":7871689605225,"id":2124,"parentId":1,"tags":{},"startTime":1779263060031,"traceId":"1b3c822a1caceb8c"},{"name":"static-check","duration":385504,"timestamp":7871695490390,"id":2127,"parentId":1,"tags":{},"startTime":1779263065916,"traceId":"1b3c822a1caceb8c"},{"name":"static-generation","duration":1423182,"timestamp":7871696036886,"id":2167,"parentId":1,"tags":{},"startTime":1779263066463,"traceId":"1b3c822a1caceb8c"},{"name":"collect-build-traces","duration":6124354,"timestamp":7871695876301,"id":2164,"parentId":1,"tags":{},"startTime":1779263066302,"traceId":"1b3c822a1caceb8c"},{"name":"telemetry-flush","duration":32,"timestamp":7871702002251,"id":2176,"parentId":1,"tags":{},"startTime":1779263072428,"traceId":"1b3c822a1caceb8c"},{"name":"next-build","duration":23053501,"timestamp":7871678948792,"id":1,"tags":{"buildMode":"default","version":"16.2.4","bundler":"webpack","has-custom-webpack-config":"false","use-build-worker":"true"},"startTime":1779263049375,"traceId":"1b3c822a1caceb8c"}]
@@ -0,0 +1,285 @@
1
+ "use strict";
2
+ /**
3
+ * Daemon-wide chat admission gate.
4
+ *
5
+ * Sits at the runner-entry: every `runChat` call awaits `admitChat(...)`
6
+ * before fanning out reviewers. When at cap (or under resource pressure)
7
+ * the call blocks; the chat row stays in `drafting` and the cockpit's
8
+ * SSE stream gets a `chat_progress` event tagged with `reason: 'queued'`
9
+ * so the run page can show "Waiting for slot — N chats ahead".
10
+ *
11
+ * Design mirrors `cli-semaphore.ts` (mutex + FIFO queue + dynamic
12
+ * settings re-read). Differences:
13
+ *
14
+ * - Single queue (no per-lineage subqueue) — admission is whole-chat.
15
+ * - Admission check is multi-factor: chat count + free swap +
16
+ * load-per-core, all from settings.
17
+ * - Periodic resource-recheck: even with no chat-end event, the gate
18
+ * re-evaluates every 30s so a transient swap spike clears
19
+ * automatically.
20
+ *
21
+ * The gate is daemon-wide module state — there's exactly one daemon
22
+ * process so this is the authoritative counter. Tests use
23
+ * `_testing.reset()` between cases.
24
+ */
25
+ Object.defineProperty(exports, "__esModule", { value: true });
26
+ exports._testing = void 0;
27
+ exports.evaluateAdmission = evaluateAdmission;
28
+ exports.admitChat = admitChat;
29
+ exports.snapshot = snapshot;
30
+ exports.pokeGate = pokeGate;
31
+ const chat_concurrency_js_1 = require("../lib/settings/chat-concurrency.js");
32
+ const resource_stats_js_1 = require("./resource-stats.js");
33
+ /**
34
+ * Pure decision function — given current admitted count + resource
35
+ * snapshot + config, return whether to admit. No I/O, easy to unit
36
+ * test exhaustively.
37
+ *
38
+ * Order of checks matters for the `reason` field: chats_at_cap wins
39
+ * over swap_low wins over load_high, so the cockpit message is stable
40
+ * across multi-constraint blocks (otherwise UI would flap between
41
+ * "Queued (swap low)" and "Queued (load high)" as conditions oscillate).
42
+ */
43
+ function evaluateAdmission(activeChats, stats, config) {
44
+ if (activeChats >= config.maxConcurrentChats) {
45
+ return {
46
+ admit: false,
47
+ reason: 'chats_at_cap',
48
+ message: `${activeChats}/${config.maxConcurrentChats} chats already running`,
49
+ };
50
+ }
51
+ // swapMinFreeMb=0 → user disabled the check.
52
+ // stats.swapFreeMb=-1 → platform doesn't expose swap (macOS,
53
+ // containers without /proc/meminfo) — skip rather than block.
54
+ // stats.swapFreeMb=0 → swap is genuinely exhausted; THIS is the
55
+ // incident-2026-05-20 case we MUST catch (prior revision used 0
56
+ // as a sentinel and silently bypassed the check at the worst
57
+ // possible moment).
58
+ if (config.swapMinFreeMb > 0 &&
59
+ stats.swapFreeMb >= 0 &&
60
+ stats.swapFreeMb < config.swapMinFreeMb) {
61
+ return {
62
+ admit: false,
63
+ reason: 'swap_low',
64
+ message: `free swap ${stats.swapFreeMb}MB below threshold ${config.swapMinFreeMb}MB`,
65
+ };
66
+ }
67
+ if (config.loadAvgMaxPerCore > 0 && stats.cpuCount > 0) {
68
+ const perCore = stats.loadAvg1 / stats.cpuCount;
69
+ if (perCore > config.loadAvgMaxPerCore) {
70
+ return {
71
+ admit: false,
72
+ reason: 'load_high',
73
+ message: `load/core ${perCore.toFixed(2)} above threshold ${config.loadAvgMaxPerCore}`,
74
+ };
75
+ }
76
+ }
77
+ return { admit: true };
78
+ }
79
+ let activeChats = 0;
80
+ const waiters = [];
81
+ let granting = false;
82
+ let dirty = false;
83
+ /**
84
+ * Recheck cadence when the queue head is blocked on resource pressure
85
+ * (swap/load) rather than chat-cap. Without this, a queue that's
86
+ * blocked purely on swap_low would never re-evaluate until a chat
87
+ * ends — but if no chat is running, that's never.
88
+ */
89
+ const RESOURCE_RECHECK_MS = 30_000;
90
+ let recheckTimer = null;
91
+ function scheduleRecheck() {
92
+ if (recheckTimer)
93
+ return;
94
+ if (waiters.length === 0)
95
+ return;
96
+ recheckTimer = setTimeout(() => {
97
+ recheckTimer = null;
98
+ void tryGrantHead();
99
+ }, RESOURCE_RECHECK_MS);
100
+ }
101
+ function cancelRecheck() {
102
+ if (recheckTimer) {
103
+ clearTimeout(recheckTimer);
104
+ recheckTimer = null;
105
+ }
106
+ }
107
+ /**
108
+ * Try to grant the head waiter. Recursive in spirit (re-runs after
109
+ * each grant) but flattened into a loop. Reentrant-safe via the
110
+ * granting/dirty mutex — same pattern as cli-semaphore.
111
+ *
112
+ * When the head can't be admitted but the reason is resource pressure
113
+ * (not chats_at_cap), notify the waiter so the cockpit shows the
114
+ * current reason, and schedule a periodic recheck so transient
115
+ * swap/load spikes clear.
116
+ */
117
+ async function tryGrantHead() {
118
+ if (granting) {
119
+ dirty = true;
120
+ return;
121
+ }
122
+ granting = true;
123
+ dirty = false;
124
+ try {
125
+ do {
126
+ dirty = false;
127
+ while (waiters.length > 0) {
128
+ const config = await (0, chat_concurrency_js_1.getChatConcurrency)();
129
+ if (waiters.length === 0)
130
+ break;
131
+ const stats = (0, resource_stats_js_1.readResourceStats)();
132
+ const decision = evaluateAdmission(activeChats, stats, config);
133
+ if (!decision.admit) {
134
+ // Notify all waiting chats of their queue position + current
135
+ // reason. Position = 1-indexed slot in the FIFO.
136
+ for (let i = 0; i < waiters.length; i++) {
137
+ try {
138
+ waiters[i].onWait?.(decision, i + 1);
139
+ }
140
+ catch {
141
+ /* swallow — a buggy onWait should not deadlock the gate */
142
+ }
143
+ }
144
+ // If blocked on resource pressure, schedule a periodic recheck
145
+ // since no chat_end event will arrive. chats_at_cap unblocks
146
+ // naturally on release().
147
+ if (decision.reason !== 'chats_at_cap') {
148
+ scheduleRecheck();
149
+ }
150
+ break;
151
+ }
152
+ const head = waiters.shift();
153
+ activeChats++;
154
+ head.cleanup?.();
155
+ head.resolve();
156
+ }
157
+ } while (dirty);
158
+ }
159
+ catch (err) {
160
+ // Settings DB unreadable, resource stats read failed, anything
161
+ // unexpected. Pre-fix this just logged and exited, leaving the
162
+ // queue stranded — convergent self-review (6/6 reviewers on PR
163
+ // #64) flagged this. Two-pronged recovery:
164
+ // 1. Schedule a recheck so the queue gets another chance once
165
+ // the transient issue clears.
166
+ // 2. If the failure persists, the recheck will hit the same
167
+ // catch again; that's acceptable — better a noisy log than
168
+ // a silently stalled queue. For a circuit-breaker we'd add
169
+ // a consecutive-failure counter, but the simpler retry
170
+ // handles the common DB-busy / disk-blip cases.
171
+ console.error('[chorus] chat-gate tryGrantHead failed:', err);
172
+ if (waiters.length > 0) {
173
+ scheduleRecheck();
174
+ }
175
+ }
176
+ finally {
177
+ granting = false;
178
+ }
179
+ }
180
+ /**
181
+ * Acquire an admission slot. Returns a release() function the caller
182
+ * MUST invoke (typically in a finally block) when the chat reaches a
183
+ * terminal state. Idempotent on release — calling twice is a no-op.
184
+ *
185
+ * The chat's row stays at status='drafting' in the DB while queued;
186
+ * onWait fires immediately with the current decision so the cockpit
187
+ * knows whether to render "Drafting" or "Queued (reason)" right away.
188
+ */
189
+ async function admitChat(opts = {}) {
190
+ return new Promise((resolve, reject) => {
191
+ if (opts.signal?.aborted) {
192
+ reject(opts.signal.reason ?? new Error('aborted'));
193
+ return;
194
+ }
195
+ // settled flag prevents double-resolution if abort fires AFTER
196
+ // tryGrantHead has shifted+resolved this waiter but BEFORE the
197
+ // resolve's microtask runs. Node tolerates redundant resolve/
198
+ // reject calls on a settled promise, but a future Promise impl
199
+ // change could surface it as an unhandled rejection — belt-and-
200
+ // suspenders. Convergent self-review (PR #64, ocg-4) flagged it.
201
+ let settled = false;
202
+ const waiter = {
203
+ resolve: () => {
204
+ if (settled)
205
+ return;
206
+ settled = true;
207
+ resolve(makeRelease());
208
+ },
209
+ reject: (err) => {
210
+ if (settled)
211
+ return;
212
+ settled = true;
213
+ reject(err);
214
+ },
215
+ onWait: opts.onWait,
216
+ };
217
+ if (opts.signal) {
218
+ const onAbort = () => {
219
+ const i = waiters.indexOf(waiter);
220
+ if (i >= 0)
221
+ waiters.splice(i, 1);
222
+ // Re-poke in case the abort frees up something at the head.
223
+ void tryGrantHead();
224
+ waiter.reject(opts.signal.reason ?? new Error('aborted'));
225
+ };
226
+ opts.signal.addEventListener('abort', onAbort, { once: true });
227
+ waiter.cleanup = () => opts.signal.removeEventListener('abort', onAbort);
228
+ }
229
+ waiters.push(waiter);
230
+ void tryGrantHead();
231
+ });
232
+ }
233
+ function makeRelease() {
234
+ let released = false;
235
+ return () => {
236
+ if (released)
237
+ return;
238
+ released = true;
239
+ activeChats = Math.max(0, activeChats - 1);
240
+ // Cancel any pending resource recheck — a real release event is
241
+ // a stronger signal than the periodic poll.
242
+ cancelRecheck();
243
+ void tryGrantHead();
244
+ };
245
+ }
246
+ /** Diagnostic snapshot for /api/v1/diagnostics + tests. */
247
+ function snapshot() {
248
+ return {
249
+ activeChats,
250
+ queueDepth: waiters.length,
251
+ };
252
+ }
253
+ /**
254
+ * External poke for "settings changed, re-evaluate the queue". Called
255
+ * by the PUT /settings/chat-concurrency route after a successful save
256
+ * so that an increased maxConcurrentChats / loosened swap floor /
257
+ * loosened load cap admits queued chats immediately — without it,
258
+ * users bumping the cap up would have to wait for an active chat to
259
+ * end before queued chats could proceed. Convergent self-review
260
+ * (2/6 reviewers on PR #64) flagged the gap.
261
+ */
262
+ function pokeGate() {
263
+ void tryGrantHead();
264
+ }
265
+ exports._testing = {
266
+ reset: () => {
267
+ activeChats = 0;
268
+ granting = false;
269
+ dirty = false;
270
+ cancelRecheck();
271
+ while (waiters.length > 0) {
272
+ const w = waiters.shift();
273
+ if (!w)
274
+ break;
275
+ w.cleanup?.();
276
+ try {
277
+ w.reject(new Error('chat-gate reset (tests)'));
278
+ }
279
+ catch {
280
+ /* defensive */
281
+ }
282
+ }
283
+ },
284
+ };
285
+ //# sourceMappingURL=chat-gate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chat-gate.js","sourceRoot":"","sources":["../../src/daemon/chat-gate.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,80 @@
1
+ "use strict";
2
+ /**
3
+ * Lightweight resource stats for the chat-gate admission check.
4
+ *
5
+ * Pure-ish: reads `/proc/meminfo` + `os.loadavg()` synchronously. No
6
+ * subprocess, no network. Both calls are sub-millisecond on Linux.
7
+ * macOS has no /proc/meminfo — swap is reported as 0 free there, which
8
+ * effectively disables the swap-check on macOS (the gate's default
9
+ * `swapMinFreeMb=1024` would refuse every chat). Users on macOS should
10
+ * lower swapMinFreeMb to 0 if they want the gate active.
11
+ *
12
+ * Output shape kept narrow so the admit-decision function (in chat-gate)
13
+ * stays a pure function of (state, config) — no side effects, easy to
14
+ * unit-test.
15
+ */
16
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
17
+ if (k2 === undefined) k2 = k;
18
+ var desc = Object.getOwnPropertyDescriptor(m, k);
19
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
20
+ desc = { enumerable: true, get: function() { return m[k]; } };
21
+ }
22
+ Object.defineProperty(o, k2, desc);
23
+ }) : (function(o, m, k, k2) {
24
+ if (k2 === undefined) k2 = k;
25
+ o[k2] = m[k];
26
+ }));
27
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
28
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
29
+ }) : function(o, v) {
30
+ o["default"] = v;
31
+ });
32
+ var __importStar = (this && this.__importStar) || (function () {
33
+ var ownKeys = function(o) {
34
+ ownKeys = Object.getOwnPropertyNames || function (o) {
35
+ var ar = [];
36
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
37
+ return ar;
38
+ };
39
+ return ownKeys(o);
40
+ };
41
+ return function (mod) {
42
+ if (mod && mod.__esModule) return mod;
43
+ var result = {};
44
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
45
+ __setModuleDefault(result, mod);
46
+ return result;
47
+ };
48
+ })();
49
+ Object.defineProperty(exports, "__esModule", { value: true });
50
+ exports.readResourceStats = readResourceStats;
51
+ const fs = __importStar(require("node:fs"));
52
+ const node_os_1 = require("node:os");
53
+ /**
54
+ * Read free swap from /proc/meminfo. Returns -1 (not 0) when
55
+ * unavailable so callers can distinguish "platform reports nothing"
56
+ * from "SwapFree is genuinely 0 — host is OOM-imminent".
57
+ */
58
+ function readSwapFreeMb() {
59
+ if ((0, node_os_1.platform)() !== 'linux')
60
+ return -1;
61
+ try {
62
+ const meminfo = fs.readFileSync('/proc/meminfo', 'utf-8');
63
+ const match = meminfo.match(/^SwapFree:\s+(\d+)\s+kB/m);
64
+ if (!match)
65
+ return -1;
66
+ return Math.floor(parseInt(match[1], 10) / 1024);
67
+ }
68
+ catch {
69
+ return -1;
70
+ }
71
+ }
72
+ /** Snapshot of current resource pressure. Called per admission attempt. */
73
+ function readResourceStats() {
74
+ return {
75
+ swapFreeMb: readSwapFreeMb(),
76
+ loadAvg1: (0, node_os_1.loadavg)()[0] ?? 0,
77
+ cpuCount: (0, node_os_1.cpus)().length,
78
+ };
79
+ }
80
+ //# sourceMappingURL=resource-stats.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resource-stats.js","sourceRoot":"","sources":["../../src/daemon/resource-stats.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;GAaG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0CH,8CAMC;AA9CD,4CAA8B;AAC9B,qCAAkD;AAqBlD;;;;GAIG;AACH,SAAS,cAAc;IACrB,IAAI,IAAA,kBAAQ,GAAE,KAAK,OAAO;QAAE,OAAO,CAAC,CAAC,CAAC;IACtC,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;QAC1D,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;QACxD,IAAI,CAAC,KAAK;YAAE,OAAO,CAAC,CAAC,CAAC;QACtB,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC;IACnD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,CAAC,CAAC;IACZ,CAAC;AACH,CAAC;AAED,2EAA2E;AAC3E,SAAgB,iBAAiB;IAC/B,OAAO;QACL,UAAU,EAAE,cAAc,EAAE;QAC5B,QAAQ,EAAE,IAAA,iBAAO,GAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QAC3B,QAAQ,EAAE,IAAA,cAAI,GAAE,CAAC,MAAM;KACxB,CAAC;AACJ,CAAC"}
@@ -135,6 +135,60 @@ function registerSettingsRoutes(fastify) {
135
135
  return (0, api_response_js_1.errorResponse)('validation', message);
136
136
  }
137
137
  });
138
+ // ─── Chat concurrency (daemon-wide max-active-chats + resource caps) ─
139
+ // Distinct from cli-concurrency above: this caps the NUMBER OF CHATS
140
+ // that can fan out reviewers simultaneously, plus refuses admission
141
+ // when swap/load are under pressure. Added after the 2026-05-20
142
+ // incident where 3 concurrent chats × 8 reviewers each crushed the
143
+ // host (load 320, swap exhausted).
144
+ fastify.get('/settings/chat-concurrency', async () => {
145
+ try {
146
+ const { getChatConcurrency, _defaults } = await import('../../lib/settings/chat-concurrency.js');
147
+ const { snapshot } = await import('../chat-gate.js');
148
+ const { readResourceStats } = await import('../resource-stats.js');
149
+ return (0, api_response_js_1.successResponse)({
150
+ ...(await getChatConcurrency()),
151
+ defaults: _defaults,
152
+ // Live snapshot so the cockpit can show "currently 2/3 chats
153
+ // active, swap 4200MB free, load/core 1.2" alongside the
154
+ // sliders — actionable feedback rather than blind tuning.
155
+ live: {
156
+ ...snapshot(),
157
+ ...readResourceStats(),
158
+ },
159
+ });
160
+ }
161
+ catch (error) {
162
+ const message = error instanceof Error ? error.message : 'Unknown error';
163
+ return (0, api_response_js_1.errorResponse)('internal', message);
164
+ }
165
+ });
166
+ fastify.put('/settings/chat-concurrency', async (request) => {
167
+ try {
168
+ const { getChatConcurrency, setChatConcurrency, ChatConcurrencySchema, } = await import('../../lib/settings/chat-concurrency.js');
169
+ const current = await getChatConcurrency();
170
+ const body = request.body ?? {};
171
+ const merged = {
172
+ maxConcurrentChats: body.maxConcurrentChats ?? current.maxConcurrentChats,
173
+ swapMinFreeMb: body.swapMinFreeMb ?? current.swapMinFreeMb,
174
+ loadAvgMaxPerCore: body.loadAvgMaxPerCore ?? current.loadAvgMaxPerCore,
175
+ };
176
+ const validated = ChatConcurrencySchema.parse(merged);
177
+ await setChatConcurrency(validated);
178
+ // Poke the gate so a loosened cap (3 → 5, or 1024MB → 512MB)
179
+ // admits queued waiters immediately. Without this, queued chats
180
+ // would wait for an active chat to finish before the new cap
181
+ // takes effect — surprising UX. Convergent self-review (2/6
182
+ // reviewers on PR #64) flagged the gap.
183
+ const { pokeGate } = await import('../chat-gate.js');
184
+ pokeGate();
185
+ return (0, api_response_js_1.successResponse)(validated);
186
+ }
187
+ catch (error) {
188
+ const message = error instanceof Error ? error.message : 'Unknown error';
189
+ return (0, api_response_js_1.errorResponse)('validation', message);
190
+ }
191
+ });
138
192
  // ─── Telemetry (anonymous heartbeat opt-out) ─────────────────────────
139
193
  fastify.get('/settings/telemetry', async () => {
140
194
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"settings.js","sourceRoot":"","sources":["../../../src/daemon/routes/settings.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"settings.js","sourceRoot":"","sources":["../../../src/daemon/routes/settings.ts"],"names":[],"mappings":"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"}
@@ -23,6 +23,7 @@ const atomic_write_js_1 = require("../lib/atomic-write.js");
23
23
  const index_js_1 = require("../lib/db/index.js");
24
24
  const logger_js_1 = require("../lib/logger.js");
25
25
  const template_schema_js_1 = require("../lib/template-schema.js");
26
+ const chat_gate_js_1 = require("./chat-gate.js");
26
27
  const doer_driver_js_1 = require("./runner/doer-driver.js");
27
28
  const prior_round_js_1 = require("./runner/prior-round.js");
28
29
  const reviewer_driver_js_1 = require("./runner/reviewer-driver.js");
@@ -84,6 +85,50 @@ async function runChat(opts) {
84
85
  emitChatDone({ status: 'cancelled' });
85
86
  };
86
87
  abortSignal.addEventListener('abort', abortListener);
88
+ // Daemon-wide admission gate. Caps the number of chats actively
89
+ // fanning out reviewers (separate from cli-semaphore which caps
90
+ // subprocesses per binary family). Configurable in /settings; default
91
+ // 3 concurrent chats + refuse on low swap or high load. The chat row
92
+ // stays at status='drafting' while queued; we emit `chat_queued`
93
+ // events so the cockpit can render "Waiting for slot — N chats ahead".
94
+ // On admission failure (signal abort), exit cleanly — emitChatDone
95
+ // with cancelled was already wired via the abortListener above.
96
+ let releaseAdmission = null;
97
+ try {
98
+ releaseAdmission = await (0, chat_gate_js_1.admitChat)({
99
+ signal: abortSignal,
100
+ onWait: (decision, position) => {
101
+ // decision.reason is always populated when admit=false (the
102
+ // gate guarantees this — see evaluateAdmission). The `??`
103
+ // fallback is a defensive no-op; we keep it to satisfy the
104
+ // type checker without inventing a sentinel string that
105
+ // isn't in AdmitDenyReason.
106
+ const reason = decision.reason ?? 'chats_at_cap';
107
+ onEvent({
108
+ chatId,
109
+ type: 'chat_queued',
110
+ payload: {
111
+ reason,
112
+ position,
113
+ message: decision.message ?? '',
114
+ },
115
+ ts: Date.now(),
116
+ });
117
+ },
118
+ });
119
+ }
120
+ catch (err) {
121
+ // Aborted while queued — abortListener already fired chat_done.
122
+ // Cleanly exit without proceeding into the doer/reviewer fan-out.
123
+ abortSignal.removeEventListener('abort', abortListener);
124
+ if (!chatDoneEmitted) {
125
+ emitChatDone({
126
+ status: 'cancelled',
127
+ error: err instanceof Error ? err.message : String(err),
128
+ });
129
+ }
130
+ return;
131
+ }
87
132
  // Track whether any phase failed because every reviewer in it failed
88
133
  // (timeout/quota/crash). If so, the chat ends in 'no_review' rather
89
134
  // than 'approved' — there was no actual peer review to approve from.
@@ -471,6 +516,9 @@ async function runChat(opts) {
471
516
  }
472
517
  finally {
473
518
  abortSignal.removeEventListener('abort', abortListener);
519
+ // Release the daemon-wide admission slot so the next queued chat
520
+ // can proceed. Idempotent — releaseAdmission swallows double-release.
521
+ releaseAdmission?.();
474
522
  }
475
523
  }
476
524
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"runner.js","sourceRoot":"","sources":["../../src/daemon/runner.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runner.js","sourceRoot":"","sources":["../../src/daemon/runner.ts"],"names":[],"mappings":"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"}