agent-tower 0.7.0-beta.2 → 0.7.0-beta.4
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/runtime/__tests__/acp-driver-lifecycle.test.js +295 -1
- package/dist/runtime/__tests__/acp-driver-lifecycle.test.js.map +1 -1
- package/dist/runtime/acp/acp-driver.d.ts.map +1 -1
- package/dist/runtime/acp/acp-driver.js +198 -3
- package/dist/runtime/acp/acp-driver.js.map +1 -1
- package/dist/runtime/acp/process-manager.d.ts +2 -0
- package/dist/runtime/acp/process-manager.d.ts.map +1 -1
- package/dist/runtime/acp/process-manager.js +7 -0
- package/dist/runtime/acp/process-manager.js.map +1 -1
- package/dist/services/__tests__/conversation.service.test.js +126 -0
- package/dist/services/__tests__/conversation.service.test.js.map +1 -1
- package/dist/services/session-manager.d.ts.map +1 -1
- package/dist/services/session-manager.js +48 -1
- package/dist/services/session-manager.js.map +1 -1
- package/dist/web/assets/AgentDemoPage-CSxPxref.js +1 -0
- package/dist/web/assets/{AgentEnvironmentSettingsPage-B571SLF5.js → AgentEnvironmentSettingsPage-Ddgpwp-M.js} +1 -1
- package/dist/web/assets/{AgentLogo-VGcaaJum.js → AgentLogo-DbpOlTwF.js} +1 -1
- package/dist/web/assets/ConversationPage-uUURqwJy.js +3 -0
- package/dist/web/assets/{CreateTaskInput-kkWy5nmc.js → CreateTaskInput-DcObvyH0.js} +1 -1
- package/dist/web/assets/{DemoPage-CpMV8Rv7.js → DemoPage-CgEElcaL.js} +3 -3
- package/dist/web/assets/{GeneralSettingsPage-BvME4SJc.js → GeneralSettingsPage-CKIO5dUV.js} +1 -1
- package/dist/web/assets/{Icons-DXzgw2xT.js → Icons-BuroZt6O.js} +1 -1
- package/dist/web/assets/{LoadingPreviewPage-D6OzaV9-.js → LoadingPreviewPage-BBuzpdJO.js} +1 -1
- package/dist/web/assets/{McpSettingsPage-CCWuZ-IU.js → McpSettingsPage-iQHuyKTM.js} +1 -1
- package/dist/web/assets/{MemberAvatar-DeKYSBH9.js → MemberAvatar-BheGUhwo.js} +1 -1
- package/dist/web/assets/{NotificationSettingsPage-BOhJqIXv.js → NotificationSettingsPage-DMG-iMnR.js} +1 -1
- package/dist/web/assets/ProfileSettingsPage-B7V6VuSO.js +3 -0
- package/dist/web/assets/{ProjectKanbanPage-Ka243_RU.js → ProjectKanbanPage-BY5XRwbM.js} +34 -34
- package/dist/web/assets/ProjectSettingsPage-DMcANdo2.js +2 -0
- package/dist/web/assets/{ProviderSettingsPage-BCXTXcbc.js → ProviderSettingsPage-ByXzCriF.js} +2 -2
- package/dist/web/assets/SettingsMasterDetail-CuIQcyoo.js +1 -0
- package/dist/web/assets/TeamSettingsPage-CzyI9HzO.js +1 -0
- package/dist/web/assets/{arc-Bl7tPfS7.js → arc-Bh_TyrdR.js} +1 -1
- package/dist/web/assets/{architectureDiagram-3BPJPVTR-CoP7qomY.js → architectureDiagram-3BPJPVTR-Bz1obArO.js} +1 -1
- package/dist/web/assets/{blockDiagram-GPEHLZMM-Dyj3wCtX.js → blockDiagram-GPEHLZMM-CRT7Apz_.js} +1 -1
- package/dist/web/assets/{c4Diagram-AAUBKEIU-BHpYwHH5.js → c4Diagram-AAUBKEIU-D4NFbyto.js} +1 -1
- package/dist/web/assets/channel-B6PEoe-x.js +1 -0
- package/dist/web/assets/check-WPBi3Lqe.js +1 -0
- package/dist/web/assets/{chevron-down-B8PIP1yU.js → chevron-down-KVoCrSjh.js} +1 -1
- package/dist/web/assets/{chevron-right-h-JkCAHM.js → chevron-right-EnpTSiZT.js} +1 -1
- package/dist/web/assets/{chevron-up-C5SQd6qy.js → chevron-up-D7wRa8wQ.js} +1 -1
- package/dist/web/assets/{chunk-2J33WTMH--mm3IA_q.js → chunk-2J33WTMH-ur5QdGIt.js} +1 -1
- package/dist/web/assets/{chunk-4BX2VUAB-DSTjg6vT.js → chunk-4BX2VUAB-B_en9AHw.js} +1 -1
- package/dist/web/assets/{chunk-55IACEB6-BMI8DRl6.js → chunk-55IACEB6-eRIkpvWA.js} +1 -1
- package/dist/web/assets/{chunk-727SXJPM-DB6yt8nI.js → chunk-727SXJPM-C7J_JvNZ.js} +1 -1
- package/dist/web/assets/{chunk-AQP2D5EJ-BMFO2BIQ.js → chunk-AQP2D5EJ-DyanPlgq.js} +1 -1
- package/dist/web/assets/{chunk-FMBD7UC4-BWW53Tgv.js → chunk-FMBD7UC4-Ri0KUPY9.js} +1 -1
- package/dist/web/assets/{chunk-ND2GUHAM-3Q1rz4Rn.js → chunk-ND2GUHAM-CpqlEJJf.js} +1 -1
- package/dist/web/assets/{chunk-QZHKN3VN-DHZfBhTv.js → chunk-QZHKN3VN-FD4ypeA3.js} +1 -1
- package/dist/web/assets/{circle-alert-B2WJJFVc.js → circle-alert-DGvssjE2.js} +1 -1
- package/dist/web/assets/classDiagram-4FO5ZUOK-D0YAtSvQ.js +1 -0
- package/dist/web/assets/classDiagram-v2-Q7XG4LA2-D0YAtSvQ.js +1 -0
- package/dist/web/assets/{code-block-OCS4YCEC-DAvNvPo_.js → code-block-OCS4YCEC-P4qU_nTL.js} +1 -1
- package/dist/web/assets/{confirm-dialog-59aNupkb.js → confirm-dialog-fRHq-Pd3.js} +1 -1
- package/dist/web/assets/{cose-bilkent-S5V4N54A-BkBXPAOW.js → cose-bilkent-S5V4N54A-MGbTxuWC.js} +1 -1
- package/dist/web/assets/cssMode-C2mCavEH.js +1 -0
- package/dist/web/assets/{dagre-BM42HDAG-0o3tAN58.js → dagre-BM42HDAG-DChHOhIv.js} +1 -1
- package/dist/web/assets/{diagram-2AECGRRQ-BaozWVAC.js → diagram-2AECGRRQ-BwUH8mhg.js} +1 -1
- package/dist/web/assets/{diagram-5GNKFQAL-BQGxsEX-.js → diagram-5GNKFQAL-XbzFgg2L.js} +1 -1
- package/dist/web/assets/{diagram-KO2AKTUF-BhOfCrvE.js → diagram-KO2AKTUF-DYrasuIu.js} +1 -1
- package/dist/web/assets/{diagram-LMA3HP47-1C0Ajian.js → diagram-LMA3HP47-CntINWus.js} +1 -1
- package/dist/web/assets/{diagram-OG6HWLK6-BZsvylQi.js → diagram-OG6HWLK6-Xw_mu7Xo.js} +1 -1
- package/dist/web/assets/{erDiagram-TEJ5UH35-BODPoCQX.js → erDiagram-TEJ5UH35-DyF2pftc.js} +1 -1
- package/dist/web/assets/{flowDiagram-I6XJVG4X-B0BsMsro.js → flowDiagram-I6XJVG4X-CTOdFFMu.js} +1 -1
- package/dist/web/assets/{folder-picker-B5RdK3CX.js → folder-picker-CVIEOiUC.js} +1 -1
- package/dist/web/assets/{freemarker2-B62GnwxO.js → freemarker2-C_fqN7zU.js} +2 -2
- package/dist/web/assets/{ganttDiagram-6RSMTGT7-BsXOoMru.js → ganttDiagram-6RSMTGT7-DUqGJi1M.js} +1 -1
- package/dist/web/assets/{gitGraphDiagram-PVQCEYII-DVuq4oVA.js → gitGraphDiagram-PVQCEYII-DAlSgnfz.js} +1 -1
- package/dist/web/assets/handlebars-jEtB40T8.js +1 -0
- package/dist/web/assets/html-Bh5Gburt.js +1 -0
- package/dist/web/assets/htmlMode-BrJ1Lgka.js +1 -0
- package/dist/web/assets/{index-DfRNL5pP.js → index-COmvVRxN.js} +4 -4
- package/dist/web/assets/index-VpADbYUC.css +1 -0
- package/dist/web/assets/index-v06BceAM.js +122 -0
- package/dist/web/assets/{infoDiagram-5YYISTIA-CkI-s2fN.js → infoDiagram-5YYISTIA-Bq5qFWu8.js} +1 -1
- package/dist/web/assets/{ishikawaDiagram-YF4QCWOH-DExbu0jt.js → ishikawaDiagram-YF4QCWOH-D99NYDzh.js} +1 -1
- package/dist/web/assets/javascript-Fmhm9Q_k.js +1 -0
- package/dist/web/assets/{journeyDiagram-JHISSGLW-C03_8hib.js → journeyDiagram-JHISSGLW-4RtTDMik.js} +1 -1
- package/dist/web/assets/{jsonMode-SxmrKu-q.js → jsonMode-C4EEXpoV.js} +4 -4
- package/dist/web/assets/{kanban-definition-UN3LZRKU-CkQ5JqTm.js → kanban-definition-UN3LZRKU-DSnc9ClA.js} +1 -1
- package/dist/web/assets/{layers-DVjF8vaY.js → layers-D4-cobE7.js} +1 -1
- package/dist/web/assets/{linear-VXyesiU2.js → linear-DhjPWs_P.js} +1 -1
- package/dist/web/assets/liquid-BijfGV71.js +1 -0
- package/dist/web/assets/{lspLanguageFeatures-D46XQnYj.js → lspLanguageFeatures-BlsOD7cC.js} +1 -1
- package/dist/web/assets/mdx-B4KHyo_J.js +1 -0
- package/dist/web/assets/{mermaid-NOHMQCX5-Cxj8y3xL.js → mermaid-NOHMQCX5-CPh2dpGh.js} +62 -63
- package/dist/web/assets/{message-square-BleDaJqD.js → message-square-B137NT0P.js} +1 -1
- package/dist/web/assets/{mindmap-definition-RKZ34NQL-OB13sryT.js → mindmap-definition-RKZ34NQL-4UFgjk_n.js} +1 -1
- package/dist/web/assets/{modal-DCycqy3L.js → modal-DPcyYX-s.js} +1 -1
- package/dist/web/assets/{monaco-C5uCiSc1.js → monaco-B_HAoZ85.js} +3 -3
- package/dist/web/assets/{pencil-7Lu7CiFO.js → pencil-DrQlkpwY.js} +1 -1
- package/dist/web/assets/{pieDiagram-4H26LBE5-CU-pnTSj.js → pieDiagram-4H26LBE5-CfmUI2Ac.js} +1 -1
- package/dist/web/assets/python-74qw1GIp.js +1 -0
- package/dist/web/assets/{quadrantDiagram-W4KKPZXB-yZ7s-n8V.js → quadrantDiagram-W4KKPZXB-Beed2lsg.js} +1 -1
- package/dist/web/assets/razor-rk66GvgG.js +1 -0
- package/dist/web/assets/{requirementDiagram-4Y6WPE33-B0anLb96.js → requirementDiagram-4Y6WPE33-CakYbomC.js} +1 -1
- package/dist/web/assets/{sankeyDiagram-5OEKKPKP-DHcV9eve.js → sankeyDiagram-5OEKKPKP-B5ZcrYlL.js} +1 -1
- package/dist/web/assets/{select-EnAkHFwg.js → select-8i5u56th.js} +1 -1
- package/dist/web/assets/{sequenceDiagram-3UESZ5HK-DqgRRD9W.js → sequenceDiagram-3UESZ5HK-BmeBv641.js} +1 -1
- package/dist/web/assets/{server-a_4ZRCwE.js → server-A-2riYHM.js} +1 -1
- package/dist/web/assets/{stateDiagram-AJRCARHV-BM_vAe4X.js → stateDiagram-AJRCARHV-6NXMEWIl.js} +1 -1
- package/dist/web/assets/stateDiagram-v2-BHNVJYJU-BP-jTiu3.js +1 -0
- package/dist/web/assets/{switch-D_UoJD1K.js → switch-M2I0kCl7.js} +1 -1
- package/dist/web/assets/{textarea-Cmy7-X_E.js → textarea-Ca-c3Lx7.js} +1 -1
- package/dist/web/assets/{timeline-definition-PNZ67QCA-BRstBzgi.js → timeline-definition-PNZ67QCA-Cc1BdpV8.js} +1 -1
- package/dist/web/assets/{trash-2-0UA8zJ8I.js → trash-2-DNbX7XWU.js} +1 -1
- package/dist/web/assets/{tsMode-BASXySxT.js → tsMode-DJbrv6DY.js} +2 -2
- package/dist/web/assets/typescript-BwJbkY0z.js +1 -0
- package/dist/web/assets/{upload-CfzBeWxL.js → upload-Ds2nyy2b.js} +1 -1
- package/dist/web/assets/{use-profiles-MVQfFrhT.js → use-profiles-69iafzlK.js} +1 -1
- package/dist/web/assets/{use-projects-CJ8Wn6Xl.js → use-projects-D_Bnf4aC.js} +1 -1
- package/dist/web/assets/{use-providers-DvV0mdqo.js → use-providers-CC6Za0Q5.js} +1 -1
- package/dist/web/assets/useNormalizedLogs-C9xC7O1a.js +1 -0
- package/dist/web/assets/{vennDiagram-CIIHVFJN-DzhupKpF.js → vennDiagram-CIIHVFJN-BbP95yvD.js} +1 -1
- package/dist/web/assets/{wardley-L42UT6IY-BwWhS3dk.js → wardley-L42UT6IY-C6NmXWp4.js} +1 -1
- package/dist/web/assets/{wardleyDiagram-YWT4CUSO-iG6xXnIJ.js → wardleyDiagram-YWT4CUSO-BlFFT9D_.js} +1 -1
- package/dist/web/assets/xml-7Vkw_iuo.js +1 -0
- package/dist/web/assets/{xychartDiagram-2RQKCTM6-hgKK9aU8.js → xychartDiagram-2RQKCTM6-BtXjRK30.js} +1 -1
- package/dist/web/assets/yaml-C0HIytLV.js +1 -0
- package/dist/web/index.html +2 -2
- package/node_modules/@agent-tower/shared/dist/log-adapter.d.ts +4 -1
- package/node_modules/@agent-tower/shared/dist/log-adapter.d.ts.map +1 -1
- package/node_modules/@agent-tower/shared/dist/log-adapter.js +38 -5
- package/node_modules/@agent-tower/shared/dist/log-adapter.js.map +1 -1
- package/package.json +1 -1
- package/dist/web/assets/AgentDemoPage-DP9u0ylA.js +0 -1
- package/dist/web/assets/ConversationPage-CbMlQ5UC.js +0 -3
- package/dist/web/assets/ProfileSettingsPage-BEMuDjhF.js +0 -3
- package/dist/web/assets/ProjectSettingsPage-sE0Thu7d.js +0 -2
- package/dist/web/assets/SettingsMasterDetail-DmqYixrL.js +0 -1
- package/dist/web/assets/TeamSettingsPage-Dxk7-1fD.js +0 -1
- package/dist/web/assets/arrow-left-4_9exfZH.js +0 -1
- package/dist/web/assets/channel-D6ei4By-.js +0 -1
- package/dist/web/assets/check-CIGH6GLr.js +0 -1
- package/dist/web/assets/classDiagram-4FO5ZUOK-Dy0gEbpJ.js +0 -1
- package/dist/web/assets/classDiagram-v2-Q7XG4LA2-Dy0gEbpJ.js +0 -1
- package/dist/web/assets/cssMode-r4PsUEeI.js +0 -1
- package/dist/web/assets/handlebars-BBm4KBDp.js +0 -1
- package/dist/web/assets/html-BlMJourI.js +0 -1
- package/dist/web/assets/htmlMode-vGjPTlal.js +0 -1
- package/dist/web/assets/index-BziFEuBL.js +0 -122
- package/dist/web/assets/index-KjsBZlkg.css +0 -1
- package/dist/web/assets/javascript-CnnNs3bZ.js +0 -1
- package/dist/web/assets/liquid-B_CJMcDS.js +0 -1
- package/dist/web/assets/mdx-B2i6poYS.js +0 -1
- package/dist/web/assets/python-CdqaVxbU.js +0 -1
- package/dist/web/assets/razor-BZtfxDHk.js +0 -1
- package/dist/web/assets/stateDiagram-v2-BHNVJYJU-DXSW0BBn.js +0 -1
- package/dist/web/assets/typescript-DbOfWuuq.js +0 -1
- package/dist/web/assets/useNormalizedLogs-D8-yjxOI.js +0 -1
- package/dist/web/assets/xml-Dn2Ep0JI.js +0 -1
- package/dist/web/assets/yaml-CA2Cgl3R.js +0 -1
|
@@ -16,6 +16,26 @@ function deferred() {
|
|
|
16
16
|
});
|
|
17
17
|
return { promise, resolve, reject };
|
|
18
18
|
}
|
|
19
|
+
/**
|
|
20
|
+
* Detects a UTF-16 code unit kept without its surrogate-pair counterpart.
|
|
21
|
+
* Bounded diagnostics used to be sliced straight at the cut point, which
|
|
22
|
+
* persisted half an emoji (rendered as U+FFFD) instead of a whole character.
|
|
23
|
+
*/
|
|
24
|
+
function hasUnpairedSurrogate(value) {
|
|
25
|
+
for (let index = 0; index < value.length; index += 1) {
|
|
26
|
+
const codeUnit = value.charCodeAt(index);
|
|
27
|
+
if (codeUnit >= 0xd800 && codeUnit <= 0xdbff) {
|
|
28
|
+
const next = value.charCodeAt(index + 1);
|
|
29
|
+
if (!(next >= 0xdc00 && next <= 0xdfff))
|
|
30
|
+
return true;
|
|
31
|
+
index += 1;
|
|
32
|
+
}
|
|
33
|
+
else if (codeUnit >= 0xdc00 && codeUnit <= 0xdfff) {
|
|
34
|
+
return true;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
return false;
|
|
38
|
+
}
|
|
19
39
|
const acpState = vi.hoisted(() => ({
|
|
20
40
|
authMethods: [{ id: 'api-key', name: 'API Key' }],
|
|
21
41
|
loadUpdates: [],
|
|
@@ -34,6 +54,7 @@ const acpState = vi.hoisted(() => ({
|
|
|
34
54
|
processStops: 0,
|
|
35
55
|
processStopErrors: [],
|
|
36
56
|
processStopGate: undefined,
|
|
57
|
+
processExitListeners: [],
|
|
37
58
|
initializeError: undefined,
|
|
38
59
|
}));
|
|
39
60
|
const providerState = vi.hoisted(() => ({
|
|
@@ -130,7 +151,9 @@ vi.mock('../acp/process-manager.js', () => ({
|
|
|
130
151
|
acpState.processStarts += 1;
|
|
131
152
|
return { pid: 123, input: {}, output: {} };
|
|
132
153
|
}
|
|
133
|
-
onExit() {
|
|
154
|
+
onExit(listener) {
|
|
155
|
+
acpState.processExitListeners.push(listener);
|
|
156
|
+
}
|
|
134
157
|
async stop() {
|
|
135
158
|
acpState.processStops += 1;
|
|
136
159
|
await acpState.processStopGate;
|
|
@@ -140,7 +163,12 @@ vi.mock('../acp/process-manager.js', () => ({
|
|
|
140
163
|
}
|
|
141
164
|
},
|
|
142
165
|
}));
|
|
166
|
+
vi.mock('../../utils/error-log.js', async (importOriginal) => ({
|
|
167
|
+
...await importOriginal(),
|
|
168
|
+
writeErrorLog: vi.fn(),
|
|
169
|
+
}));
|
|
143
170
|
import { AcpRuntimeDriver } from '../acp/acp-driver.js';
|
|
171
|
+
import { writeErrorLog } from '../../utils/error-log.js';
|
|
144
172
|
function setup() {
|
|
145
173
|
const sink = {
|
|
146
174
|
stream: vi.fn(),
|
|
@@ -176,6 +204,7 @@ beforeEach(() => {
|
|
|
176
204
|
acpState.processStops = 0;
|
|
177
205
|
acpState.processStopErrors = [];
|
|
178
206
|
acpState.processStopGate = undefined;
|
|
207
|
+
acpState.processExitListeners.length = 0;
|
|
179
208
|
acpState.initializeError = undefined;
|
|
180
209
|
providerState.provider = null;
|
|
181
210
|
});
|
|
@@ -777,5 +806,270 @@ describe('AcpRuntimeDriver lifecycle', () => {
|
|
|
777
806
|
await session.close();
|
|
778
807
|
expect(acpState.processStops).toBe(2);
|
|
779
808
|
});
|
|
809
|
+
it('surfaces the adapter exit reason when the ACP process dies mid-turn', async () => {
|
|
810
|
+
const { sink, input } = setup();
|
|
811
|
+
const session = await new AcpRuntimeDriver().open(input, sink);
|
|
812
|
+
const msgStore = new MsgStore();
|
|
813
|
+
const turn = await session.runTurn({
|
|
814
|
+
turnId: 'turn-process-exit',
|
|
815
|
+
prompt: 'run the heavy test suite',
|
|
816
|
+
msgStore,
|
|
817
|
+
resumeExternalSessionId: 'external-1',
|
|
818
|
+
}, sink);
|
|
819
|
+
// The adapter dies on its own; the SDK then closes the transport first, so
|
|
820
|
+
// without the recorded exit facts the turn only reports the generic error.
|
|
821
|
+
acpState.processExitListeners.at(-1)?.({
|
|
822
|
+
exitCode: 1,
|
|
823
|
+
signal: null,
|
|
824
|
+
stderrExcerpt: 'Fatal: unhandled rejection in the adapter',
|
|
825
|
+
});
|
|
826
|
+
acpState.prompt?.reject(new Error('ACP connection closed'));
|
|
827
|
+
await expect(turn.completion).rejects.toMatchObject({
|
|
828
|
+
code: 'process_exit',
|
|
829
|
+
retryable: true,
|
|
830
|
+
message: expect.stringContaining('Fatal: unhandled rejection in the adapter'),
|
|
831
|
+
});
|
|
832
|
+
expect(msgStore.getSnapshot().entries.map((entry) => entry.content))
|
|
833
|
+
.toEqual([expect.stringContaining('Fatal: unhandled rejection in the adapter')]);
|
|
834
|
+
expect(vi.mocked(writeErrorLog)).toHaveBeenCalledWith(expect.objectContaining({
|
|
835
|
+
level: 'error',
|
|
836
|
+
source: 'session.acp.processExit',
|
|
837
|
+
metadata: expect.objectContaining({
|
|
838
|
+
towerSessionId: 'tower-1',
|
|
839
|
+
exitCode: 1,
|
|
840
|
+
signal: null,
|
|
841
|
+
stderrChars: 'Fatal: unhandled rejection in the adapter'.length,
|
|
842
|
+
stderrSummary: 'Fatal: unhandled rejection in the adapter',
|
|
843
|
+
}),
|
|
844
|
+
}));
|
|
845
|
+
await session.close();
|
|
846
|
+
});
|
|
847
|
+
it('persists a bounded, redacted stderr summary instead of the raw adapter output', async () => {
|
|
848
|
+
const { sink, input } = setup();
|
|
849
|
+
const session = await new AcpRuntimeDriver().open(input, sink);
|
|
850
|
+
const turn = await session.runTurn({
|
|
851
|
+
turnId: 'turn-stderr-summary',
|
|
852
|
+
prompt: 'run the heavy test suite',
|
|
853
|
+
msgStore: new MsgStore(),
|
|
854
|
+
resumeExternalSessionId: 'external-1',
|
|
855
|
+
}, sink);
|
|
856
|
+
const secret = 'sk-live-abcdefghijklmnopqrstuvwxyz';
|
|
857
|
+
// Long enough that both the per-excerpt bound and the line-count tail slice
|
|
858
|
+
// have to drop content. The sensitive dump and the root cause sit in the
|
|
859
|
+
// kept tail, so the assertions below exercise redaction, not just slicing.
|
|
860
|
+
const noise = Array.from({ length: 40 }, (_, index) => `debug line ${index} without the root cause ${'x'.repeat(160)}`).join('\n');
|
|
861
|
+
acpState.processExitListeners.at(-1)?.({
|
|
862
|
+
exitCode: 1,
|
|
863
|
+
signal: null,
|
|
864
|
+
stderrExcerpt: [
|
|
865
|
+
noise,
|
|
866
|
+
'Environment dump:',
|
|
867
|
+
'HOME=/Users/jane.doe',
|
|
868
|
+
`OPENAI_API_KEY=${secret}`,
|
|
869
|
+
'CONTACT=jane.doe@example.com',
|
|
870
|
+
'Operator: jane.doe@example.com',
|
|
871
|
+
'Fatal: adapter crashed while writing /Users/jane.doe/private/session.json',
|
|
872
|
+
].join('\n'),
|
|
873
|
+
});
|
|
874
|
+
acpState.prompt?.reject(new Error('ACP connection closed'));
|
|
875
|
+
const entry = vi.mocked(writeErrorLog).mock.calls.at(-1)?.[0];
|
|
876
|
+
const serialized = JSON.stringify(entry);
|
|
877
|
+
expect(serialized).not.toContain(secret);
|
|
878
|
+
expect(serialized).not.toContain('jane.doe');
|
|
879
|
+
expect(serialized).not.toContain('debug line 0 without the root cause');
|
|
880
|
+
expect(serialized).toContain('HOME=[REDACTED]');
|
|
881
|
+
expect(serialized).toContain('OPENAI_API_KEY=[REDACTED]');
|
|
882
|
+
expect(serialized).toContain('Operator: [EMAIL]');
|
|
883
|
+
expect(serialized).toContain('Fatal: adapter crashed while writing ~/private/session.json');
|
|
884
|
+
const metadata = entry?.metadata;
|
|
885
|
+
expect(metadata.stderrChars).toBeGreaterThan(6_000);
|
|
886
|
+
expect(metadata.stderrSummary).toContain('Fatal: adapter crashed');
|
|
887
|
+
expect(metadata.stderrSummary).toContain('chars omitted');
|
|
888
|
+
expect(metadata.stderrSummary.length).toBeLessThanOrEqual(1_200);
|
|
889
|
+
await expect(turn.completion).rejects.toMatchObject({
|
|
890
|
+
code: 'process_exit',
|
|
891
|
+
message: expect.stringContaining('Fatal: adapter crashed while writing ~/private/session.json'),
|
|
892
|
+
});
|
|
893
|
+
await session.close();
|
|
894
|
+
});
|
|
895
|
+
it('keeps surrogate pairs whole when bounding a stderr line (300 code units)', async () => {
|
|
896
|
+
const { sink, input } = setup();
|
|
897
|
+
const session = await new AcpRuntimeDriver().open(input, sink);
|
|
898
|
+
const turn = await session.runTurn({
|
|
899
|
+
turnId: 'turn-surrogate-line',
|
|
900
|
+
prompt: 'run the heavy test suite',
|
|
901
|
+
msgStore: new MsgStore(),
|
|
902
|
+
resumeExternalSessionId: 'external-1',
|
|
903
|
+
}, sink);
|
|
904
|
+
// The per-line bound is 300 code units: the head cut ends at index 100 and
|
|
905
|
+
// the tail cut starts 152 units before the end. Each line puts an emoji on
|
|
906
|
+
// one of those cuts, so a straight UTF-16 slice keeps half of it.
|
|
907
|
+
const headSplitLine = `${'a'.repeat(99)}😀${'b'.repeat(400)}`;
|
|
908
|
+
const tailSplitLine = `${'b'.repeat(348)}😀${'c'.repeat(151)}`;
|
|
909
|
+
expect(hasUnpairedSurrogate(headSplitLine.slice(0, 100))).toBe(true);
|
|
910
|
+
expect(hasUnpairedSurrogate(tailSplitLine.slice(349))).toBe(true);
|
|
911
|
+
acpState.processExitListeners.at(-1)?.({
|
|
912
|
+
exitCode: 1,
|
|
913
|
+
signal: null,
|
|
914
|
+
stderrExcerpt: [headSplitLine, tailSplitLine].join('\n'),
|
|
915
|
+
});
|
|
916
|
+
acpState.prompt?.reject(new Error('ACP connection closed'));
|
|
917
|
+
const metadata = vi.mocked(writeErrorLog).mock.calls.at(-1)?.[0]?.metadata;
|
|
918
|
+
const summary = metadata?.stderrSummary ?? '';
|
|
919
|
+
expect(summary).toContain('chars omitted');
|
|
920
|
+
expect(summary.length).toBeLessThanOrEqual(1_200);
|
|
921
|
+
expect(hasUnpairedSurrogate(summary)).toBe(false);
|
|
922
|
+
await expect(turn.completion).rejects.toMatchObject({ code: 'process_exit' });
|
|
923
|
+
await session.close();
|
|
924
|
+
});
|
|
925
|
+
it('keeps surrogate pairs whole when the stderr summary bound kicks in (1_200 code units)', async () => {
|
|
926
|
+
const { sink, input } = setup();
|
|
927
|
+
const session = await new AcpRuntimeDriver().open(input, sink);
|
|
928
|
+
const turn = await session.runTurn({
|
|
929
|
+
turnId: 'turn-surrogate-summary',
|
|
930
|
+
prompt: 'run the heavy test suite',
|
|
931
|
+
msgStore: new MsgStore(),
|
|
932
|
+
resumeExternalSessionId: 'external-1',
|
|
933
|
+
}, sink);
|
|
934
|
+
// Seven 200-unit lines stay under the per-line bound, so only the 1_200-unit
|
|
935
|
+
// summary bound runs: its head cut ends at index 400 and its tail cut starts
|
|
936
|
+
// 752 units before the end, inside an emoji on both ends.
|
|
937
|
+
const line = `xy${'😀'.repeat(99)}`;
|
|
938
|
+
const excerpt = Array.from({ length: 7 }, () => line).join('\n');
|
|
939
|
+
expect(excerpt.length).toBe(1_406);
|
|
940
|
+
expect(hasUnpairedSurrogate(excerpt.slice(0, 400))).toBe(true);
|
|
941
|
+
expect(hasUnpairedSurrogate(excerpt.slice(excerpt.length - 752))).toBe(true);
|
|
942
|
+
acpState.processExitListeners.at(-1)?.({ exitCode: 1, signal: null, stderrExcerpt: excerpt });
|
|
943
|
+
acpState.prompt?.reject(new Error('ACP connection closed'));
|
|
944
|
+
const metadata = vi.mocked(writeErrorLog).mock.calls.at(-1)?.[0]?.metadata;
|
|
945
|
+
const summary = metadata?.stderrSummary ?? '';
|
|
946
|
+
expect(summary).toContain('chars omitted');
|
|
947
|
+
expect(summary.length).toBeLessThanOrEqual(1_200);
|
|
948
|
+
expect(hasUnpairedSurrogate(summary)).toBe(false);
|
|
949
|
+
await expect(turn.completion).rejects.toMatchObject({ code: 'process_exit' });
|
|
950
|
+
await session.close();
|
|
951
|
+
});
|
|
952
|
+
it('keeps surrogate pairs whole when bounding the session failure message (4_096 code units)', async () => {
|
|
953
|
+
const { sink, input } = setup();
|
|
954
|
+
const session = await new AcpRuntimeDriver().open(input, sink);
|
|
955
|
+
const msgStore = new MsgStore();
|
|
956
|
+
const turn = await session.runTurn({
|
|
957
|
+
turnId: 'turn-surrogate-failure',
|
|
958
|
+
prompt: 'run the heavy test suite',
|
|
959
|
+
msgStore,
|
|
960
|
+
resumeExternalSessionId: 'external-1',
|
|
961
|
+
}, sink);
|
|
962
|
+
// The 4_096-unit bound cuts the head at index 1_365 and starts the tail
|
|
963
|
+
// 2_683 units before the end; emoji sit exactly on both cuts. Raising an
|
|
964
|
+
// AgentRuntimeError keeps `normalizeAcpError` from bounding the message a
|
|
965
|
+
// second time, so this pins this one bound instead of a bound of a bound.
|
|
966
|
+
const rawFailure = `${'a'.repeat(1_364)}😀${'b'.repeat(300)}😀${'c'.repeat(2_650)}`;
|
|
967
|
+
const headline = 'ACP adapter exited with code 1';
|
|
968
|
+
expect(hasUnpairedSurrogate(rawFailure.slice(0, 1_365))).toBe(true);
|
|
969
|
+
expect(hasUnpairedSurrogate(`${rawFailure}; ${headline}`.slice(1_667))).toBe(true);
|
|
970
|
+
acpState.processExitListeners.at(-1)?.({ exitCode: 1, signal: null, stderrExcerpt: '' });
|
|
971
|
+
acpState.prompt?.reject(new AgentRuntimeError('acp_request_failed', 'prompt', rawFailure, true));
|
|
972
|
+
const failure = await turn.completion.then(() => null, (error) => error);
|
|
973
|
+
expect(failure).toMatchObject({ code: 'process_exit' });
|
|
974
|
+
expect(failure?.message).toContain('chars omitted');
|
|
975
|
+
expect(failure?.message.length).toBeLessThanOrEqual(4_096);
|
|
976
|
+
expect(hasUnpairedSurrogate(failure?.message ?? '')).toBe(false);
|
|
977
|
+
const projected = msgStore.getSnapshot().entries.map((entry) => entry.content).join('\n');
|
|
978
|
+
expect(projected).toContain('chars omitted');
|
|
979
|
+
expect(hasUnpairedSurrogate(projected)).toBe(false);
|
|
980
|
+
await session.close();
|
|
981
|
+
});
|
|
982
|
+
it('never writes the process-exit log for a signal-terminated adapter', async () => {
|
|
983
|
+
const { sink, input } = setup();
|
|
984
|
+
const session = await new AcpRuntimeDriver().open(input, sink);
|
|
985
|
+
const turn = await session.runTurn({
|
|
986
|
+
turnId: 'turn-silent-exit',
|
|
987
|
+
prompt: 'run the heavy test suite',
|
|
988
|
+
msgStore: new MsgStore(),
|
|
989
|
+
resumeExternalSessionId: 'external-1',
|
|
990
|
+
}, sink);
|
|
991
|
+
acpState.processExitListeners.at(-1)?.({
|
|
992
|
+
exitCode: null,
|
|
993
|
+
signal: 'SIGTERM',
|
|
994
|
+
stderrExcerpt: 'terminated by the operator',
|
|
995
|
+
});
|
|
996
|
+
expect(vi.mocked(writeErrorLog)).not.toHaveBeenCalled();
|
|
997
|
+
acpState.prompt?.reject(new Error('ACP connection closed'));
|
|
998
|
+
await expect(turn.completion).rejects.toMatchObject({
|
|
999
|
+
code: 'process_exit',
|
|
1000
|
+
message: expect.stringContaining('signal SIGTERM'),
|
|
1001
|
+
});
|
|
1002
|
+
await session.close();
|
|
1003
|
+
});
|
|
1004
|
+
it('keeps the first exit fact and a single log line for a repeated same-generation exit', async () => {
|
|
1005
|
+
const { sink, input } = setup();
|
|
1006
|
+
const session = await new AcpRuntimeDriver().open(input, sink);
|
|
1007
|
+
const turn = await session.runTurn({
|
|
1008
|
+
turnId: 'turn-repeated-exit',
|
|
1009
|
+
prompt: 'run the heavy test suite',
|
|
1010
|
+
msgStore: new MsgStore(),
|
|
1011
|
+
resumeExternalSessionId: 'external-1',
|
|
1012
|
+
}, sink);
|
|
1013
|
+
const listener = acpState.processExitListeners.at(-1);
|
|
1014
|
+
listener?.({ exitCode: 1, signal: null, stderrExcerpt: 'Fatal: first reported root cause' });
|
|
1015
|
+
listener?.({ exitCode: 1, signal: null, stderrExcerpt: 'late report without the root cause' });
|
|
1016
|
+
expect(vi.mocked(writeErrorLog)).toHaveBeenCalledTimes(1);
|
|
1017
|
+
acpState.prompt?.reject(new Error('ACP connection closed'));
|
|
1018
|
+
const failure = await turn.completion.then(() => null, (error) => error);
|
|
1019
|
+
expect(failure).toMatchObject({ code: 'process_exit' });
|
|
1020
|
+
expect(failure?.message).toContain('Fatal: first reported root cause');
|
|
1021
|
+
expect(failure?.message).not.toContain('late report');
|
|
1022
|
+
await session.close();
|
|
1023
|
+
});
|
|
1024
|
+
it('does not let a retired generation exit rewrite the current turn failure', async () => {
|
|
1025
|
+
const { sink, input } = setup();
|
|
1026
|
+
const session = await new AcpRuntimeDriver().open(input, sink);
|
|
1027
|
+
const first = await session.runTurn({
|
|
1028
|
+
turnId: 'turn-retired-generation',
|
|
1029
|
+
prompt: 'poison the transport',
|
|
1030
|
+
msgStore: new MsgStore(),
|
|
1031
|
+
resumeExternalSessionId: 'external-1',
|
|
1032
|
+
}, sink);
|
|
1033
|
+
const retiredExitListener = acpState.processExitListeners.at(-1);
|
|
1034
|
+
acpState.prompt?.reject(new AgentRuntimeError('protocol_violation', 'protocol', 'bad frame', false));
|
|
1035
|
+
await expect(first.completion).rejects.toMatchObject({ code: 'protocol_violation' });
|
|
1036
|
+
expect(acpState.processStarts).toBe(1);
|
|
1037
|
+
acpState.prompt = deferred();
|
|
1038
|
+
const second = await session.runTurn({
|
|
1039
|
+
turnId: 'turn-current-generation',
|
|
1040
|
+
prompt: 'continue',
|
|
1041
|
+
msgStore: new MsgStore(),
|
|
1042
|
+
resumeExternalSessionId: 'external-1',
|
|
1043
|
+
}, sink);
|
|
1044
|
+
expect(acpState.processStarts).toBe(2);
|
|
1045
|
+
// The retired adapter settles after its replacement is already live.
|
|
1046
|
+
retiredExitListener?.({ exitCode: 1, signal: null, stderrExcerpt: 'Fatal: retired adapter root cause' });
|
|
1047
|
+
expect(vi.mocked(writeErrorLog)).toHaveBeenCalledTimes(1);
|
|
1048
|
+
acpState.prompt?.reject(new Error('ACP connection closed'));
|
|
1049
|
+
const failure = await second.completion.then(() => null, (error) => error);
|
|
1050
|
+
expect(failure).toMatchObject({
|
|
1051
|
+
code: 'acp_request_failed',
|
|
1052
|
+
message: 'ACP connection closed',
|
|
1053
|
+
});
|
|
1054
|
+
expect(failure?.message).not.toContain('retired adapter root cause');
|
|
1055
|
+
await session.close();
|
|
1056
|
+
});
|
|
1057
|
+
it('keeps the transport failure reason when no adapter process exited', async () => {
|
|
1058
|
+
const { sink, input } = setup();
|
|
1059
|
+
const session = await new AcpRuntimeDriver().open(input, sink);
|
|
1060
|
+
const turn = await session.runTurn({
|
|
1061
|
+
turnId: 'turn-no-process-exit',
|
|
1062
|
+
prompt: 'fail without a process exit',
|
|
1063
|
+
msgStore: new MsgStore(),
|
|
1064
|
+
resumeExternalSessionId: 'external-1',
|
|
1065
|
+
}, sink);
|
|
1066
|
+
acpState.prompt?.reject(new Error('ACP connection closed'));
|
|
1067
|
+
await expect(turn.completion).rejects.toMatchObject({
|
|
1068
|
+
code: 'acp_request_failed',
|
|
1069
|
+
message: 'ACP connection closed',
|
|
1070
|
+
});
|
|
1071
|
+
expect(vi.mocked(writeErrorLog)).not.toHaveBeenCalled();
|
|
1072
|
+
await session.close();
|
|
1073
|
+
});
|
|
780
1074
|
});
|
|
781
1075
|
//# sourceMappingURL=acp-driver-lifecycle.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"acp-driver-lifecycle.test.js","sourceRoot":"","sources":["../../../src/runtime/__tests__/acp-driver-lifecycle.test.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"acp-driver-lifecycle.test.js","sourceRoot":"","sources":["../../../src/runtime/__tests__/acp-driver-lifecycle.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"acp-driver.d.ts","sourceRoot":"","sources":["../../../src/runtime/acp/acp-driver.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,WAAW,EAGZ,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"acp-driver.d.ts","sourceRoot":"","sources":["../../../src/runtime/acp/acp-driver.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,WAAW,EAGZ,MAAM,qBAAqB,CAAC;AAM7B,OAAO,KAAK,EACV,aAAa,EAEb,aAAa,EACb,sBAAsB,EACtB,gBAAgB,EAEjB,MAAM,iBAAiB,CAAC;AA8CzB,qBAAa,gBAAiB,YAAW,aAAa;IACpD,QAAQ,CAAC,IAAI,mBAAmB;IAE1B,IAAI,CAAC,KAAK,EAAE,gBAAgB,EAAE,IAAI,EAAE,sBAAsB,GAAG,OAAO,CAAC,aAAa,CAAC;CAG1F"}
|