lattice-orchestrator 2.0.3 → 2.0.5
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.
- package/dist/harness/derive-session-status.d.ts +23 -0
- package/dist/harness/derive-session-status.d.ts.map +1 -0
- package/dist/harness/derive-session-status.js +34 -0
- package/dist/harness/derive-session-status.js.map +1 -0
- package/dist/harness/event-message-reader.d.ts +5 -0
- package/dist/harness/event-message-reader.d.ts.map +1 -1
- package/dist/harness/event-message-reader.js +7 -0
- package/dist/harness/event-message-reader.js.map +1 -1
- package/dist/harness/routes.d.ts.map +1 -1
- package/dist/harness/routes.js +0 -1
- package/dist/harness/routes.js.map +1 -1
- package/dist/harness/sqlite-event-storage.d.ts +0 -1
- package/dist/harness/sqlite-event-storage.d.ts.map +1 -1
- package/dist/harness/sqlite-event-storage.js +3 -7
- package/dist/harness/sqlite-event-storage.js.map +1 -1
- package/dist/process-daemon/process-daemon.d.ts +19 -0
- package/dist/process-daemon/process-daemon.d.ts.map +1 -1
- package/dist/process-daemon/process-daemon.js +102 -15
- package/dist/process-daemon/process-daemon.js.map +1 -1
- package/dist/process-daemon/types.d.ts +6 -0
- package/dist/process-daemon/types.d.ts.map +1 -1
- package/dist/process-daemon/types.js.map +1 -1
- package/dist/routes/debug/debug-harness-snapshot.routes.d.ts +24 -0
- package/dist/routes/debug/debug-harness-snapshot.routes.d.ts.map +1 -0
- package/dist/routes/debug/debug-harness-snapshot.routes.js +205 -0
- package/dist/routes/debug/debug-harness-snapshot.routes.js.map +1 -0
- package/dist/routes/debug/debug.routes.d.ts.map +1 -1
- package/dist/routes/debug/debug.routes.js +2 -0
- package/dist/routes/debug/debug.routes.js.map +1 -1
- package/dist/routes/session/session-status.routes.d.ts.map +1 -1
- package/dist/routes/session/session-status.routes.js +55 -2
- package/dist/routes/session/session-status.routes.js.map +1 -1
- package/dist/web/assets/{CodeHighlight-AX8pcR0a.js → CodeHighlight-BokPRXQ9.js} +1 -1
- package/dist/web/assets/{CodeHighlight-BFCEx5SO.js → CodeHighlight-xo5236pa.js} +1 -1
- package/dist/web/assets/main-CLoS_IlD.js +488 -0
- package/dist/web/assets/main-DuRTw83d.css +1 -0
- package/dist/web/assets/{vendor-markdown-vZ7invOV.js → vendor-markdown-BBN24gHp.js} +2 -2
- package/dist/web/index.html +3 -3
- package/package.json +2 -2
- package/dist/web/assets/main-2MNgdbR4.js +0 -488
- package/dist/web/assets/main-gLRONAqd.css +0 -1
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Event-log-backed session status.
|
|
3
|
+
*
|
|
4
|
+
* The harness event log is the single source of truth for session lifecycle.
|
|
5
|
+
* This helper runs the harness's own deriveStatus/deriveProcessAlive over the
|
|
6
|
+
* full log and maps the result to the status-endpoint shape
|
|
7
|
+
* (ongoing/idle/stopping/completed).
|
|
8
|
+
*
|
|
9
|
+
* This is intentionally a small wrapper rather than a reimplementation: the
|
|
10
|
+
* harness protocol owns the semantics of "what does this event log mean," and
|
|
11
|
+
* we want the server's answer to agree with the client's answer whenever they
|
|
12
|
+
* see the same events. Divergence is the bug class we're eliminating.
|
|
13
|
+
*/
|
|
14
|
+
import { deriveStatus } from '@liggi/agent-ui-harness/protocol';
|
|
15
|
+
import type { SessionEvent } from '@liggi/agent-ui-harness/protocol';
|
|
16
|
+
export type EndpointStatus = 'ongoing' | 'idle' | 'stopping' | 'completed';
|
|
17
|
+
export interface DerivedSessionStatus {
|
|
18
|
+
status: EndpointStatus;
|
|
19
|
+
processAlive: boolean;
|
|
20
|
+
harnessStatus: ReturnType<typeof deriveStatus>;
|
|
21
|
+
}
|
|
22
|
+
export declare function deriveSessionStatusFromEvents(events: readonly SessionEvent[]): DerivedSessionStatus;
|
|
23
|
+
//# sourceMappingURL=derive-session-status.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"derive-session-status.d.ts","sourceRoot":"","sources":["../../src/harness/derive-session-status.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,YAAY,EAAsB,MAAM,kCAAkC,CAAC;AACpF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAErE,MAAM,MAAM,cAAc,GAAG,SAAS,GAAG,MAAM,GAAG,UAAU,GAAG,WAAW,CAAC;AAE3E,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,cAAc,CAAC;IACvB,YAAY,EAAE,OAAO,CAAC;IACtB,aAAa,EAAE,UAAU,CAAC,OAAO,YAAY,CAAC,CAAC;CAChD;AAED,wBAAgB,6BAA6B,CAAC,MAAM,EAAE,SAAS,YAAY,EAAE,GAAG,oBAAoB,CAqBnG"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Event-log-backed session status.
|
|
3
|
+
*
|
|
4
|
+
* The harness event log is the single source of truth for session lifecycle.
|
|
5
|
+
* This helper runs the harness's own deriveStatus/deriveProcessAlive over the
|
|
6
|
+
* full log and maps the result to the status-endpoint shape
|
|
7
|
+
* (ongoing/idle/stopping/completed).
|
|
8
|
+
*
|
|
9
|
+
* This is intentionally a small wrapper rather than a reimplementation: the
|
|
10
|
+
* harness protocol owns the semantics of "what does this event log mean," and
|
|
11
|
+
* we want the server's answer to agree with the client's answer whenever they
|
|
12
|
+
* see the same events. Divergence is the bug class we're eliminating.
|
|
13
|
+
*/
|
|
14
|
+
import { deriveStatus, deriveProcessAlive } from '@liggi/agent-ui-harness/protocol';
|
|
15
|
+
export function deriveSessionStatusFromEvents(events) {
|
|
16
|
+
if (events.length === 0) {
|
|
17
|
+
return { status: 'completed', processAlive: false, harnessStatus: 'idle' };
|
|
18
|
+
}
|
|
19
|
+
const harnessStatus = deriveStatus(events);
|
|
20
|
+
const processAlive = deriveProcessAlive(events);
|
|
21
|
+
const status = (() => {
|
|
22
|
+
switch (harnessStatus) {
|
|
23
|
+
case 'starting':
|
|
24
|
+
case 'streaming':
|
|
25
|
+
return 'ongoing';
|
|
26
|
+
case 'stopping':
|
|
27
|
+
return 'stopping';
|
|
28
|
+
case 'idle':
|
|
29
|
+
return processAlive ? 'idle' : 'completed';
|
|
30
|
+
}
|
|
31
|
+
})();
|
|
32
|
+
return { status, processAlive, harnessStatus };
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=derive-session-status.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"derive-session-status.js","sourceRoot":"","sources":["../../src/harness/derive-session-status.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,kCAAkC,CAAC;AAWpF,MAAM,UAAU,6BAA6B,CAAC,MAA+B;IAC3E,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,YAAY,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,EAAE,CAAC;IAC7E,CAAC;IAED,MAAM,aAAa,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IAC3C,MAAM,YAAY,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC;IAEhD,MAAM,MAAM,GAAmB,CAAC,GAAG,EAAE;QACnC,QAAQ,aAAa,EAAE,CAAC;YACtB,KAAK,UAAU,CAAC;YAChB,KAAK,WAAW;gBACd,OAAO,SAAS,CAAC;YACnB,KAAK,UAAU;gBACb,OAAO,UAAU,CAAC;YACpB,KAAK,MAAM;gBACT,OAAO,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC;QAC/C,CAAC;IACH,CAAC,CAAC,EAAE,CAAC;IAEL,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,aAAa,EAAE,CAAC;AACjD,CAAC"}
|
|
@@ -11,6 +11,11 @@ import type { UnifiedMessage } from '../types/unified-messages.js';
|
|
|
11
11
|
import type { SqliteEventStorageAdapter } from './sqlite-event-storage.js';
|
|
12
12
|
/** Initialize with the storage adapter (called from harness setup). */
|
|
13
13
|
export declare function initEventMessageReader(storage: SqliteEventStorageAdapter): void;
|
|
14
|
+
/**
|
|
15
|
+
* Public accessor for the shared harness event storage adapter.
|
|
16
|
+
* Intended for debug/diagnostic routes that need raw event access.
|
|
17
|
+
*/
|
|
18
|
+
export declare function getEventStorage(): SqliteEventStorageAdapter;
|
|
14
19
|
/** Read all messages for a session from harness event storage. */
|
|
15
20
|
export declare function readMessages(sessionId: string): UnifiedMessage[];
|
|
16
21
|
/** Count message-producing events for a session. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"event-message-reader.d.ts","sourceRoot":"","sources":["../../src/harness/event-message-reader.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AACrE,OAAO,KAAK,EAAE,cAAc,EAAuB,MAAM,8BAA8B,CAAC;AACxF,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AAM3E,uEAAuE;AACvE,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,yBAAyB,GAAG,IAAI,CAE/E;
|
|
1
|
+
{"version":3,"file":"event-message-reader.d.ts","sourceRoot":"","sources":["../../src/harness/event-message-reader.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AACrE,OAAO,KAAK,EAAE,cAAc,EAAuB,MAAM,8BAA8B,CAAC;AACxF,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AAM3E,uEAAuE;AACvE,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,yBAAyB,GAAG,IAAI,CAE/E;AASD;;;GAGG;AACH,wBAAgB,eAAe,IAAI,yBAAyB,CAE3D;AAID,kEAAkE;AAClE,wBAAgB,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,cAAc,EAAE,CAGhE;AAED,oDAAoD;AACpD,wBAAgB,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAKvD;AAED,gFAAgF;AAChF,wBAAgB,qBAAqB,CACnC,SAAS,EAAE,MAAM,EACjB,IAAI,CAAC,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,GAC5C;IAAE,QAAQ,EAAE,cAAc,EAAE,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,CAclD;AAID,mFAAmF;AACnF,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,SAAS,YAAY,EAAE,GAAG,cAAc,EAAE,CASzF"}
|
|
@@ -18,6 +18,13 @@ function getStorage() {
|
|
|
18
18
|
}
|
|
19
19
|
return _storage;
|
|
20
20
|
}
|
|
21
|
+
/**
|
|
22
|
+
* Public accessor for the shared harness event storage adapter.
|
|
23
|
+
* Intended for debug/diagnostic routes that need raw event access.
|
|
24
|
+
*/
|
|
25
|
+
export function getEventStorage() {
|
|
26
|
+
return getStorage();
|
|
27
|
+
}
|
|
21
28
|
// ---- Public API ----
|
|
22
29
|
/** Read all messages for a session from harness event storage. */
|
|
23
30
|
export function readMessages(sessionId) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"event-message-reader.js","sourceRoot":"","sources":["../../src/harness/event-message-reader.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"event-message-reader.js","sourceRoot":"","sources":["../../src/harness/event-message-reader.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAMH,mCAAmC;AAEnC,IAAI,QAAQ,GAAqC,IAAI,CAAC;AAEtD,uEAAuE;AACvE,MAAM,UAAU,sBAAsB,CAAC,OAAkC;IACvE,QAAQ,GAAG,OAAO,CAAC;AACrB,CAAC;AAED,SAAS,UAAU;IACjB,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CAAC,0EAA0E,CAAC,CAAC;IAC9F,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,eAAe;IAC7B,OAAO,UAAU,EAAE,CAAC;AACtB,CAAC;AAED,uBAAuB;AAEvB,kEAAkE;AAClE,MAAM,UAAU,YAAY,CAAC,SAAiB;IAC5C,MAAM,MAAM,GAAG,UAAU,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;IAC5C,OAAO,uBAAuB,CAAC,MAAM,CAAC,CAAC;AACzC,CAAC;AAED,oDAAoD;AACpD,MAAM,UAAU,aAAa,CAAC,SAAiB;IAC7C,6EAA6E;IAC7E,mFAAmF;IACnF,yEAAyE;IACzE,OAAO,UAAU,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;AACvC,CAAC;AAED,gFAAgF;AAChF,MAAM,UAAU,qBAAqB,CACnC,SAAiB,EACjB,IAA6C;IAE7C,MAAM,KAAK,GAAG,IAAI,EAAE,KAAK,IAAI,EAAE,CAAC;IAChC,MAAM,MAAM,GAAG,UAAU,EAAE,CAAC,IAAI,CAAC,SAAS,EAAE;QAC1C,SAAS,EAAE,IAAI,EAAE,SAAS;QAC1B,KAAK,EAAE,KAAK,GAAG,CAAC,EAAE,uCAAuC;KAC1D,CAAC,CAAC;IAEH,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,GAAG,KAAK,CAAC;IACtC,MAAM,KAAK,GAAG,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IAExD,OAAO;QACL,QAAQ,EAAE,uBAAuB,CAAC,KAAK,CAAC;QACxC,OAAO;KACR,CAAC;AACJ,CAAC;AAED,uBAAuB;AAEvB,mFAAmF;AACnF,MAAM,UAAU,uBAAuB,CAAC,MAA+B;IACrE,MAAM,QAAQ,GAAqB,EAAE,CAAC;IAEtC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,MAAM,GAAG,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAC;QACzC,IAAI,GAAG;YAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC9B,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAS,qBAAqB,CAAC,KAAmB;IAChD,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;QACnB,KAAK,SAAS;YACZ,OAAO,qBAAqB,CAAC,KAAK,CAAC,CAAC;QACtC,KAAK,QAAQ;YACX,OAAO,oBAAoB,CAAC,KAAK,CAAC,CAAC;QACrC,KAAK,YAAY;YACf,OAAO,uBAAuB,CAAC,KAAK,CAAC,CAAC;QACxC;YACE,OAAO,IAAI,CAAC;IAChB,CAAC;AACH,CAAC;AAED,SAAS,qBAAqB,CAAC,KAAmB;IAChD,MAAM,IAAI,GAAG,KAAK,CAAC,IAAmD,CAAC;IACvE,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAE1D,MAAM,OAAO,GAA0B,IAAI,CAAC,MAAM;SAC/C,GAAG,CAAC,qBAAqB,CAAC;SAC1B,MAAM,CAAC,OAAO,CAA0B,CAAC;IAC5C,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAEtC,OAAO;QACL,EAAE,EAAE,OAAO,KAAK,CAAC,GAAG,EAAE;QACtB,QAAQ,EAAE,QAAQ;QAClB,IAAI,EAAE,WAAW;QACjB,OAAO;QACP,SAAS,EAAE,IAAI,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE;KACnD,CAAC;AACJ,CAAC;AAED,SAAS,oBAAoB,CAAC,KAAmB;IAC/C,MAAM,IAAI,GAAG,KAAK,CAAC,IAAmD,CAAC;IACvE,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAE1D,MAAM,OAAO,GAA0B,EAAE,CAAC;IAC1C,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QAChC,IAAI,KAAK,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;YACjC,OAAO,CAAC,IAAI,CAAC;gBACX,IAAI,EAAE,aAAa;gBACnB,SAAS,EAAG,KAAK,CAAC,WAAsB,IAAI,EAAE;gBAC9C,MAAM,EAAE,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC;gBACzF,OAAO,EAAG,KAAK,CAAC,QAAoB,IAAI,KAAK;aAC9C,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAEtC,OAAO;QACL,EAAE,EAAE,OAAO,KAAK,CAAC,GAAG,EAAE;QACtB,QAAQ,EAAE,QAAQ;QAClB,IAAI,EAAE,MAAM;QACZ,OAAO;QACP,SAAS,EAAE,IAAI,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE;KACnD,CAAC;AACJ,CAAC;AAED,SAAS,uBAAuB,CAAC,KAAmB;IAClD,MAAM,IAAI,GAAG,KAAK,CAAC,IAAyB,CAAC;IAC7C,IAAI,CAAC,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IAE5B,OAAO;QACL,EAAE,EAAE,OAAO,KAAK,CAAC,GAAG,EAAE;QACtB,QAAQ,EAAE,QAAQ;QAClB,IAAI,EAAE,MAAM;QACZ,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;QAC5C,SAAS,EAAE,IAAI,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE;KACnD,CAAC;AACJ,CAAC;AAED,SAAS,qBAAqB,CAAC,KAA8B;IAC3D,QAAQ,KAAK,CAAC,IAAI,EAAE,CAAC;QACnB,KAAK,MAAM;YACT,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,CAAC,IAAc,EAAE,CAAC;QACtD,KAAK,UAAU;YACb,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,KAAK,CAAC,QAAkB,EAAE,CAAC;QAC9D,KAAK,UAAU;YACb,OAAO;gBACL,IAAI,EAAE,UAAU;gBAChB,EAAE,EAAE,KAAK,CAAC,EAAY;gBACtB,IAAI,EAAE,KAAK,CAAC,IAAc;gBAC1B,KAAK,EAAG,KAAK,CAAC,KAAiC,IAAI,EAAE;aACtD,CAAC;QACJ;YACE,OAAO,IAAI,CAAC;IAChB,CAAC;AACH,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"routes.d.ts","sourceRoot":"","sources":["../../src/harness/routes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,MAAM,EAAkD,MAAM,SAAS,CAAC;AACjF,OAAO,EAAE,cAAc,EAAoB,MAAM,gCAAgC,CAAC;AAYlF,MAAM,WAAW,qBAAqB;IACpC,uFAAuF;IACvF,sBAAsB,EAAE,CAAC,cAAc,EAAE,MAAM,KAAK,MAAM,CAAC;IAC3D,yDAAyD;IACzD,uBAAuB,EAAE,CAAC,cAAc,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC;IACxE;;2EAEuE;IACvE,mBAAmB,CAAC,EAAE,CAAC,cAAc,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;CACnE;AAED,wBAAgB,mBAAmB,CAAC,cAAc,EAAE,cAAc,EAAE,SAAS,EAAE,qBAAqB,GAAG,MAAM,
|
|
1
|
+
{"version":3,"file":"routes.d.ts","sourceRoot":"","sources":["../../src/harness/routes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,EAAE,MAAM,EAAkD,MAAM,SAAS,CAAC;AACjF,OAAO,EAAE,cAAc,EAAoB,MAAM,gCAAgC,CAAC;AAYlF,MAAM,WAAW,qBAAqB;IACpC,uFAAuF;IACvF,sBAAsB,EAAE,CAAC,cAAc,EAAE,MAAM,KAAK,MAAM,CAAC;IAC3D,yDAAyD;IACzD,uBAAuB,EAAE,CAAC,cAAc,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,CAAC;IACxE;;2EAEuE;IACvE,mBAAmB,CAAC,EAAE,CAAC,cAAc,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;CACnE;AAED,wBAAgB,mBAAmB,CAAC,cAAc,EAAE,cAAc,EAAE,SAAS,EAAE,qBAAqB,GAAG,MAAM,CAwL5G"}
|
package/dist/harness/routes.js
CHANGED
|
@@ -147,7 +147,6 @@ export function createHarnessRoutes(sessionManager, resolvers) {
|
|
|
147
147
|
res.json({ events: [], hasMore: false });
|
|
148
148
|
return;
|
|
149
149
|
}
|
|
150
|
-
// If we got more than limit, there are more events
|
|
151
150
|
const hasMore = events.length > limit;
|
|
152
151
|
const page = hasMore ? events.slice(0, limit) : events;
|
|
153
152
|
logger.debug('[HISTORY] Served events', {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"routes.js","sourceRoot":"","sources":["../../src/harness/routes.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"routes.js","sourceRoot":"","sources":["../../src/harness/routes.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,7 +12,6 @@ import type Database from 'better-sqlite3';
|
|
|
12
12
|
import type { EventStorageAdapter } from '@liggi/agent-ui-harness/server';
|
|
13
13
|
import type { SessionEvent } from '@liggi/agent-ui-harness/protocol';
|
|
14
14
|
export declare class SqliteEventStorageAdapter implements EventStorageAdapter {
|
|
15
|
-
private db;
|
|
16
15
|
private stmtWrite;
|
|
17
16
|
private stmtReadAfter;
|
|
18
17
|
private stmtReadBefore;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sqlite-event-storage.d.ts","sourceRoot":"","sources":["../../src/harness/sqlite-event-storage.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAC3C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AAC1E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAwBrE,qBAAa,yBAA0B,YAAW,mBAAmB;IACnE,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"sqlite-event-storage.d.ts","sourceRoot":"","sources":["../../src/harness/sqlite-event-storage.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAC3C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AAC1E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAwBrE,qBAAa,yBAA0B,YAAW,mBAAmB;IACnE,OAAO,CAAC,SAAS,CAAqB;IACtC,OAAO,CAAC,aAAa,CAAqB;IAC1C,OAAO,CAAC,cAAc,CAAqB;IAC3C,OAAO,CAAC,aAAa,CAAqB;IAC1C,OAAO,CAAC,SAAS,CAAqB;IACtC,OAAO,CAAC,YAAY,CAAqB;gBAE7B,EAAE,EAAE,QAAQ,CAAC,QAAQ;IA4CjC,KAAK,CAAC,KAAK,EAAE,YAAY,GAAG,IAAI;IAYhC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE;QAC7B,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,GAAG,YAAY,EAAE;IAmBlB,KAAK,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM;IAKhC,QAAQ,CAAC,eAAe,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;CASlF"}
|
|
@@ -28,7 +28,6 @@ const CREATE_INDEX = `
|
|
|
28
28
|
ON harness_events (session_id, timestamp)
|
|
29
29
|
`;
|
|
30
30
|
export class SqliteEventStorageAdapter {
|
|
31
|
-
db;
|
|
32
31
|
stmtWrite;
|
|
33
32
|
stmtReadAfter;
|
|
34
33
|
stmtReadBefore;
|
|
@@ -36,7 +35,6 @@ export class SqliteEventStorageAdapter {
|
|
|
36
35
|
stmtCount;
|
|
37
36
|
stmtCopyFrom;
|
|
38
37
|
constructor(db) {
|
|
39
|
-
this.db = db;
|
|
40
38
|
db.exec(CREATE_TABLE);
|
|
41
39
|
db.exec(CREATE_INDEX);
|
|
42
40
|
this.stmtWrite = db.prepare(`
|
|
@@ -61,7 +59,8 @@ export class SqliteEventStorageAdapter {
|
|
|
61
59
|
ORDER BY seq ASC
|
|
62
60
|
`);
|
|
63
61
|
this.stmtCount = db.prepare(`
|
|
64
|
-
SELECT COUNT(*) as count FROM harness_events
|
|
62
|
+
SELECT COUNT(*) as count FROM harness_events
|
|
63
|
+
WHERE session_id = ?
|
|
65
64
|
`);
|
|
66
65
|
this.stmtCopyFrom = db.prepare(`
|
|
67
66
|
INSERT OR IGNORE INTO harness_events (session_id, seq, run_id, timestamp, type, data, meta)
|
|
@@ -80,16 +79,13 @@ export class SqliteEventStorageAdapter {
|
|
|
80
79
|
const limit = opts?.limit ?? 10000;
|
|
81
80
|
let rows;
|
|
82
81
|
if (afterSeq !== undefined && beforeSeq !== undefined) {
|
|
83
|
-
// Range query: events between two seqs (for EventLog gap fill)
|
|
84
82
|
rows = this.stmtReadRange.all(sessionId, afterSeq, beforeSeq);
|
|
85
83
|
}
|
|
86
84
|
else if (beforeSeq !== undefined) {
|
|
87
|
-
// Pagination: N most recent events before cutoff (DESC + reverse)
|
|
88
85
|
rows = this.stmtReadBefore.all(sessionId, beforeSeq, limit);
|
|
89
|
-
rows.reverse();
|
|
86
|
+
rows.reverse();
|
|
90
87
|
}
|
|
91
88
|
else {
|
|
92
|
-
// Forward replay: events after a seq (for SSE catchup)
|
|
93
89
|
rows = this.stmtReadAfter.all(sessionId, afterSeq ?? 0, limit);
|
|
94
90
|
}
|
|
95
91
|
return rows.map(rowToEvent);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sqlite-event-storage.js","sourceRoot":"","sources":["../../src/harness/sqlite-event-storage.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAKH,OAAO,EAAE,YAAY,EAAE,MAAM,sCAAsC,CAAC;AACpE,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAE7C,MAAM,MAAM,GAAG,YAAY,CAAC,oBAAoB,CAAC,CAAC;AAElD,MAAM,YAAY,GAAG;;;;;;;;;;;CAWpB,CAAC;AAEF,MAAM,YAAY,GAAG;;;CAGpB,CAAC;AAEF,MAAM,OAAO,yBAAyB;IAC5B,
|
|
1
|
+
{"version":3,"file":"sqlite-event-storage.js","sourceRoot":"","sources":["../../src/harness/sqlite-event-storage.ts"],"names":[],"mappings":"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"}
|
|
@@ -26,12 +26,31 @@ export declare class ProcessDaemon extends EventEmitter {
|
|
|
26
26
|
private claudeExecutablePath;
|
|
27
27
|
private codexExecutablePath;
|
|
28
28
|
private envOverrides;
|
|
29
|
+
private claudeSupportsThinkingDisplay;
|
|
30
|
+
private static readonly STDERR_BUFFER_MAX;
|
|
31
|
+
private stderrBuffers;
|
|
29
32
|
private pendingSystemInits;
|
|
30
33
|
constructor(config?: DaemonConfig);
|
|
31
34
|
/**
|
|
32
35
|
* Find the Claude executable
|
|
33
36
|
*/
|
|
34
37
|
private findClaudeExecutable;
|
|
38
|
+
/**
|
|
39
|
+
* Probe the resolved `claude` CLI to see if it accepts `--thinking-display`.
|
|
40
|
+
*
|
|
41
|
+
* Context: this is a hidden CLI flag that was rolled out progressively
|
|
42
|
+
* (and may be auth-tier gated). Versions without it exit with code 1 and
|
|
43
|
+
* `error: unknown option '--thinking-display'` the moment they're spawned,
|
|
44
|
+
* which used to crash every session on machines running older CLIs.
|
|
45
|
+
*
|
|
46
|
+
* We invoke the CLI with a deliberately invalid value and parse stderr:
|
|
47
|
+
* - "unknown option" → flag not supported, must NOT be passed
|
|
48
|
+
* - "invalid. Allowed choices" → flag parsed, supported
|
|
49
|
+
* - anything else → assume unsupported (safe default)
|
|
50
|
+
*
|
|
51
|
+
* Cached after first call. ~50–100ms one-time cost at first spawn.
|
|
52
|
+
*/
|
|
53
|
+
private supportsThinkingDisplay;
|
|
35
54
|
/**
|
|
36
55
|
* Find the Codex executable
|
|
37
56
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"process-daemon.d.ts","sourceRoot":"","sources":["../../src/process-daemon/process-daemon.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAgCtC,OAAO,EAWL,YAAY,EAMb,MAAM,YAAY,CAAC;AAmFpB;;GAEG;AACH,qBAAa,aAAc,SAAQ,YAAY;IAC7C,OAAO,CAAC,SAAS,CAA0C;IAC3D,OAAO,CAAC,aAAa,CAAkC;IACvD,OAAO,CAAC,QAAQ,CAA4C;IAC5D,OAAO,CAAC,mBAAmB,CAA8C;IACzE,OAAO,CAAC,UAAU,CAAkC;IACpD,OAAO,CAAC,eAAe,CAA0B;IACjD,OAAO,CAAC,YAAY,CAA0C;IAC9D,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,eAAe,CAAiB;IAGxD,OAAO,CAAC,aAAa,CAAwC;IAC7D,OAAO,CAAC,qBAAqB,CAId;IAEf,OAAO,CAAC,SAAS,CAA2B;IAC5C,OAAO,CAAC,gBAAgB,CAA8B;IACtD,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,oBAAoB,CAAS;IACrC,OAAO,CAAC,mBAAmB,CAAS;IACpC,OAAO,CAAC,YAAY,CAAqC;
|
|
1
|
+
{"version":3,"file":"process-daemon.d.ts","sourceRoot":"","sources":["../../src/process-daemon/process-daemon.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AAgCtC,OAAO,EAWL,YAAY,EAMb,MAAM,YAAY,CAAC;AAmFpB;;GAEG;AACH,qBAAa,aAAc,SAAQ,YAAY;IAC7C,OAAO,CAAC,SAAS,CAA0C;IAC3D,OAAO,CAAC,aAAa,CAAkC;IACvD,OAAO,CAAC,QAAQ,CAA4C;IAC5D,OAAO,CAAC,mBAAmB,CAA8C;IACzE,OAAO,CAAC,UAAU,CAAkC;IACpD,OAAO,CAAC,eAAe,CAA0B;IACjD,OAAO,CAAC,YAAY,CAA0C;IAC9D,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,eAAe,CAAiB;IAGxD,OAAO,CAAC,aAAa,CAAwC;IAC7D,OAAO,CAAC,qBAAqB,CAId;IAEf,OAAO,CAAC,SAAS,CAA2B;IAC5C,OAAO,CAAC,gBAAgB,CAA8B;IACtD,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,oBAAoB,CAAS;IACrC,OAAO,CAAC,mBAAmB,CAAS;IACpC,OAAO,CAAC,YAAY,CAAqC;IAKzD,OAAO,CAAC,6BAA6B,CAAwB;IAK7D,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,iBAAiB,CAAQ;IACjD,OAAO,CAAC,aAAa,CAAkC;IAGvD,OAAO,CAAC,kBAAkB,CAOZ;gBAEF,MAAM,GAAE,YAAkD;IAQtE;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAqC5B;;;;;;;;;;;;;;OAcG;IACH,OAAO,CAAC,uBAAuB;IAgC/B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAiC3B;;;OAGG;YACW,uBAAuB;IA4BrC;;OAEG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAoC5B;;OAEG;IACG,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAiC3B;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAoC9B;;OAEG;YACW,aAAa;IAuE3B;;OAEG;IACH,OAAO,CAAC,YAAY;IAIpB;;OAEG;IACH,OAAO,CAAC,cAAc;YAeR,WAAW;IA2KzB;;;;;;;OAOG;YACW,qBAAqB;YA4IrB,UAAU;IAKxB,OAAO,CAAC,eAAe;IAKvB,OAAO,CAAC,eAAe;IAKvB,OAAO,CAAC,WAAW;IAsBnB,OAAO,CAAC,wBAAwB;YAiClB,gBAAgB;IA0C9B,OAAO,CAAC,qBAAqB;IAiB7B,OAAO,CAAC,qBAAqB;IAgB7B,OAAO,CAAC,iBAAiB;IASzB,OAAO,CAAC,eAAe;IAIvB,OAAO,CAAC,gBAAgB;IAQxB,OAAO,CAAC,OAAO;IAgCf;;OAEG;IACH,OAAO,CAAC,uBAAuB;IA0D/B;;;OAGG;IACH,OAAO,CAAC,yBAAyB;IAqEjC,OAAO,CAAC,mBAAmB;IAsE3B,OAAO,CAAC,kBAAkB;IAkD1B,OAAO,CAAC,kBAAkB;IAe1B,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,eAAe;IAgCvB;;;;;;;OAOG;IACH,OAAO,CAAC,mBAAmB;IAmB3B,OAAO,CAAC,cAAc;IAiEtB;;;OAGG;IACH,OAAO,CAAC,sBAAsB;IAuD9B,OAAO,CAAC,iBAAiB;YAeX,gBAAgB;IA8G9B,OAAO,CAAC,eAAe;IAiCvB,OAAO,CAAC,sBAAsB;IAQ9B,OAAO,CAAC,oBAAoB;IAI5B,OAAO,CAAC,eAAe;IAmDvB,OAAO,CAAC,oBAAoB;IAkB5B,OAAO,CAAC,cAAc;IAuEtB;;;OAGG;IACH,OAAO,CAAC,wBAAwB;CAkCjC"}
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
*/
|
|
7
7
|
import * as net from 'net';
|
|
8
8
|
import * as fs from 'fs';
|
|
9
|
-
import { spawn } from 'child_process';
|
|
9
|
+
import { spawn, spawnSync } from 'child_process';
|
|
10
10
|
import { EventEmitter } from 'events';
|
|
11
11
|
import { v4 as uuidv4 } from 'uuid';
|
|
12
12
|
import path from 'path';
|
|
@@ -114,6 +114,15 @@ export class ProcessDaemon extends EventEmitter {
|
|
|
114
114
|
claudeExecutablePath;
|
|
115
115
|
codexExecutablePath;
|
|
116
116
|
envOverrides;
|
|
117
|
+
// Cached capability probes for the resolved `claude` CLI. Lazily populated
|
|
118
|
+
// on first spawn; guards against passing flags the user's CLI doesn't know
|
|
119
|
+
// about (hidden flags that vary by version/auth tier).
|
|
120
|
+
claudeSupportsThinkingDisplay = null;
|
|
121
|
+
// Rolling stderr buffer per streamingId (capped). Included in process-closed
|
|
122
|
+
// events/logs so crash reasons surface in server.log without tailing
|
|
123
|
+
// daemon.log separately.
|
|
124
|
+
static STDERR_BUFFER_MAX = 4096;
|
|
125
|
+
stderrBuffers = new Map();
|
|
117
126
|
// Pending system init resolvers (streamingId -> {resolve, reject})
|
|
118
127
|
pendingSystemInits = new Map();
|
|
119
128
|
constructor(config = { socketPath: DEFAULT_SOCKET_PATH }) {
|
|
@@ -159,6 +168,51 @@ export class ProcessDaemon extends EventEmitter {
|
|
|
159
168
|
'Then authenticate with: claude\n\n' +
|
|
160
169
|
'More info: https://docs.anthropic.com/en/docs/claude-code');
|
|
161
170
|
}
|
|
171
|
+
/**
|
|
172
|
+
* Probe the resolved `claude` CLI to see if it accepts `--thinking-display`.
|
|
173
|
+
*
|
|
174
|
+
* Context: this is a hidden CLI flag that was rolled out progressively
|
|
175
|
+
* (and may be auth-tier gated). Versions without it exit with code 1 and
|
|
176
|
+
* `error: unknown option '--thinking-display'` the moment they're spawned,
|
|
177
|
+
* which used to crash every session on machines running older CLIs.
|
|
178
|
+
*
|
|
179
|
+
* We invoke the CLI with a deliberately invalid value and parse stderr:
|
|
180
|
+
* - "unknown option" → flag not supported, must NOT be passed
|
|
181
|
+
* - "invalid. Allowed choices" → flag parsed, supported
|
|
182
|
+
* - anything else → assume unsupported (safe default)
|
|
183
|
+
*
|
|
184
|
+
* Cached after first call. ~50–100ms one-time cost at first spawn.
|
|
185
|
+
*/
|
|
186
|
+
supportsThinkingDisplay() {
|
|
187
|
+
if (this.claudeSupportsThinkingDisplay !== null) {
|
|
188
|
+
return this.claudeSupportsThinkingDisplay;
|
|
189
|
+
}
|
|
190
|
+
try {
|
|
191
|
+
const result = spawnSync(this.claudeExecutablePath, ['--thinking-display', '__lattice_probe__'], { encoding: 'utf8', timeout: 5000, stdio: ['ignore', 'pipe', 'pipe'] });
|
|
192
|
+
const stderr = (result.stderr || '') + (result.stdout || '');
|
|
193
|
+
if (/unknown option/i.test(stderr)) {
|
|
194
|
+
this.claudeSupportsThinkingDisplay = false;
|
|
195
|
+
}
|
|
196
|
+
else if (/Allowed choices/i.test(stderr) || /--thinking-display/i.test(stderr)) {
|
|
197
|
+
this.claudeSupportsThinkingDisplay = true;
|
|
198
|
+
}
|
|
199
|
+
else {
|
|
200
|
+
// Unrecognized output — assume unsupported to avoid crashing sessions.
|
|
201
|
+
this.claudeSupportsThinkingDisplay = false;
|
|
202
|
+
}
|
|
203
|
+
logger.info('Claude CLI capability probe: --thinking-display', {
|
|
204
|
+
supported: this.claudeSupportsThinkingDisplay,
|
|
205
|
+
claudePath: this.claudeExecutablePath,
|
|
206
|
+
});
|
|
207
|
+
}
|
|
208
|
+
catch (err) {
|
|
209
|
+
logger.warn('Claude CLI capability probe failed, assuming --thinking-display unsupported', {
|
|
210
|
+
error: err instanceof Error ? err.message : String(err),
|
|
211
|
+
});
|
|
212
|
+
this.claudeSupportsThinkingDisplay = false;
|
|
213
|
+
}
|
|
214
|
+
return this.claudeSupportsThinkingDisplay;
|
|
215
|
+
}
|
|
162
216
|
/**
|
|
163
217
|
* Find the Codex executable
|
|
164
218
|
*/
|
|
@@ -972,7 +1026,15 @@ export class ProcessDaemon extends EventEmitter {
|
|
|
972
1026
|
}
|
|
973
1027
|
});
|
|
974
1028
|
childProcess.stderr?.on('data', (data) => {
|
|
975
|
-
|
|
1029
|
+
const chunk = data.toString();
|
|
1030
|
+
logger.warn('Claude CLI stderr (piped)', { streamingId, stderr: chunk });
|
|
1031
|
+
const existing = this.stderrBuffers.get(streamingId) || '';
|
|
1032
|
+
const combined = existing + chunk;
|
|
1033
|
+
// Keep only the tail — early crashes fit easily, later verbose output is
|
|
1034
|
+
// truncated but the last error is what we care about at close time.
|
|
1035
|
+
this.stderrBuffers.set(streamingId, combined.length > ProcessDaemon.STDERR_BUFFER_MAX
|
|
1036
|
+
? combined.slice(-ProcessDaemon.STDERR_BUFFER_MAX)
|
|
1037
|
+
: combined);
|
|
976
1038
|
});
|
|
977
1039
|
childProcess.on('close', (code) => {
|
|
978
1040
|
this.handleProcessClose(streamingId, code);
|
|
@@ -1051,20 +1113,41 @@ export class ProcessDaemon extends EventEmitter {
|
|
|
1051
1113
|
const sessionId = this.sessionIds.get(streamingId);
|
|
1052
1114
|
const process = this.processes.get(streamingId);
|
|
1053
1115
|
const pid = process?.pid;
|
|
1054
|
-
|
|
1055
|
-
//
|
|
1116
|
+
const stderr = this.stderrBuffers.get(streamingId);
|
|
1117
|
+
// Include stderr tail in the close log so non-zero exits are diagnosable
|
|
1118
|
+
// from server.log / daemon.log directly, without cross-referencing the
|
|
1119
|
+
// stream of per-chunk stderr warnings above.
|
|
1120
|
+
if (code && code !== 0 && stderr && stderr.trim().length > 0) {
|
|
1121
|
+
logger.warn('Process closed with non-zero exit; stderr tail included', {
|
|
1122
|
+
streamingId,
|
|
1123
|
+
code,
|
|
1124
|
+
sessionId,
|
|
1125
|
+
pid,
|
|
1126
|
+
stderrTail: stderr,
|
|
1127
|
+
});
|
|
1128
|
+
}
|
|
1129
|
+
else {
|
|
1130
|
+
logger.info('Process closed', { streamingId, code, sessionId, pid });
|
|
1131
|
+
}
|
|
1132
|
+
// Reject any pending system init. Include stderr in the error message so
|
|
1133
|
+
// the server surface ("process exited before system init") tells the user
|
|
1134
|
+
// *why* instead of just that it happened.
|
|
1056
1135
|
const pending = this.pendingSystemInits.get(streamingId);
|
|
1057
1136
|
if (pending) {
|
|
1058
1137
|
clearTimeout(pending.timeout);
|
|
1059
1138
|
this.pendingSystemInits.delete(streamingId);
|
|
1060
|
-
|
|
1139
|
+
const stderrSuffix = stderr && stderr.trim().length > 0
|
|
1140
|
+
? `: ${stderr.trim().slice(-500)}`
|
|
1141
|
+
: '';
|
|
1142
|
+
pending.reject(new LatticeError('CLAUDE_PROCESS_EXITED_EARLY', `Claude CLI process exited before sending system init (code=${code})${stderrSuffix}`, 500));
|
|
1061
1143
|
}
|
|
1062
1144
|
this.cleanup(streamingId);
|
|
1145
|
+
this.stderrBuffers.delete(streamingId);
|
|
1063
1146
|
this.broadcastEvent({
|
|
1064
1147
|
event: 'process-closed',
|
|
1065
|
-
data: { streamingId, code, sessionId, pid },
|
|
1148
|
+
data: { streamingId, code, sessionId, pid, stderr },
|
|
1066
1149
|
});
|
|
1067
|
-
this.emit('process-closed', { streamingId, code, sessionId, pid });
|
|
1150
|
+
this.emit('process-closed', { streamingId, code, sessionId, pid, stderr });
|
|
1068
1151
|
}
|
|
1069
1152
|
handleProcessError(streamingId, error) {
|
|
1070
1153
|
logger.error('Process error', error, { streamingId });
|
|
@@ -1084,12 +1167,14 @@ export class ProcessDaemon extends EventEmitter {
|
|
|
1084
1167
|
const args = this.buildBaseArgs();
|
|
1085
1168
|
// Resume message is sent via stdin (not as CLI arg) so that Claude stays
|
|
1086
1169
|
// in stdin-reading mode for mid-turn message injection.
|
|
1087
|
-
args.push('--resume', config.sessionId, '--output-format', 'stream-json', '--input-format', 'stream-json', '--verbose'
|
|
1170
|
+
args.push('--resume', config.sessionId, '--output-format', 'stream-json', '--input-format', 'stream-json', '--verbose');
|
|
1088
1171
|
// Opus 4.7 defaults thinking display to "omitted" (signature only, empty
|
|
1089
1172
|
// text). Force summarized so the UI receives readable thinking content.
|
|
1090
|
-
// Hidden CLI flag —
|
|
1091
|
-
//
|
|
1092
|
-
|
|
1173
|
+
// Hidden CLI flag — version/auth-tier gated; probe first to avoid crashing
|
|
1174
|
+
// sessions on CLIs that don't recognize it (see supportsThinkingDisplay).
|
|
1175
|
+
if (this.supportsThinkingDisplay()) {
|
|
1176
|
+
args.push('--thinking-display', 'summarized');
|
|
1177
|
+
}
|
|
1093
1178
|
// Pass model if specified - needed for experimental features like Agent Teams
|
|
1094
1179
|
if (config.model) {
|
|
1095
1180
|
args.push('--model', config.model);
|
|
@@ -1128,12 +1213,14 @@ export class ProcessDaemon extends EventEmitter {
|
|
|
1128
1213
|
const args = this.buildBaseArgs();
|
|
1129
1214
|
// Initial prompt is sent via stdin (not as CLI arg) so that Claude stays
|
|
1130
1215
|
// in stdin-reading mode for mid-turn message injection.
|
|
1131
|
-
args.push('--output-format', 'stream-json', '--input-format', 'stream-json', '--verbose'
|
|
1216
|
+
args.push('--output-format', 'stream-json', '--input-format', 'stream-json', '--verbose');
|
|
1132
1217
|
// Opus 4.7 defaults thinking display to "omitted" (signature only, empty
|
|
1133
1218
|
// text). Force summarized so the UI receives readable thinking content.
|
|
1134
|
-
// Hidden CLI flag —
|
|
1135
|
-
//
|
|
1136
|
-
|
|
1219
|
+
// Hidden CLI flag — version/auth-tier gated; probe first to avoid crashing
|
|
1220
|
+
// sessions on CLIs that don't recognize it (see supportsThinkingDisplay).
|
|
1221
|
+
if (this.supportsThinkingDisplay()) {
|
|
1222
|
+
args.push('--thinking-display', 'summarized');
|
|
1223
|
+
}
|
|
1137
1224
|
if (config.model) {
|
|
1138
1225
|
args.push('--model', config.model);
|
|
1139
1226
|
}
|