@kenkaiiii/ggcoder 5.33.0 → 5.34.0

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.
@@ -1 +1 @@
1
- {"version":3,"file":"acp-mode.js","sourceRoot":"","sources":["../../src/modes/acp-mode.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"acp-mode.js","sourceRoot":"","sources":["../../src/modes/acp-mode.ts"],"names":[],"mappings":"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"}
@@ -165,7 +165,11 @@ function updates(frames) {
165
165
  .map((frame) => frame.params.update);
166
166
  }
167
167
  /** Updates a session announces on its own schedule, not as part of a turn. */
168
- const OUT_OF_BAND_UPDATES = new Set(["available_commands_update", "usage_update"]);
168
+ const OUT_OF_BAND_UPDATES = new Set([
169
+ "available_commands_update",
170
+ "usage_update",
171
+ "session_info_update",
172
+ ]);
169
173
  /**
170
174
  * Conversation updates only.
171
175
  *
@@ -180,6 +184,10 @@ function transcript(frames) {
180
184
  function usageUpdates(frames) {
181
185
  return updates(frames).filter((update) => update.sessionUpdate === "usage_update");
182
186
  }
187
+ /** Every update of one kind, in arrival order. */
188
+ function updatesOfKind(frames, kind) {
189
+ return updates(frames).filter((update) => update.sessionUpdate === kind);
190
+ }
183
191
  describe("ACP mode over stdio", () => {
184
192
  it("negotiates initialize and creates a session", async () => {
185
193
  client = new AcpClient();
@@ -196,7 +204,7 @@ describe("ACP mode over stdio", () => {
196
204
  // and `{}` — not `true` — is how ACP spells "supported" for these two.
197
205
  expect(initialize.result.agentCapabilities).toMatchObject({
198
206
  loadSession: true,
199
- sessionCapabilities: { list: {}, resume: {} },
207
+ sessionCapabilities: { list: {}, resume: {}, close: {}, delete: {} },
200
208
  });
201
209
  client.send({ jsonrpc: "2.0", id: 2, method: "session/new", params: { cwd: tmpProject } });
202
210
  const created = (await client.until(2)).at(-1);
@@ -259,10 +267,14 @@ describe("ACP mode over stdio", () => {
259
267
  expect(transcript(frames)).toEqual([
260
268
  {
261
269
  sessionUpdate: "user_message_chunk",
270
+ // Chunks carry the message they belong to, so a client can group them
271
+ // into bubbles instead of guessing at boundaries.
272
+ messageId: "hist-1",
262
273
  content: { type: "text", text: "newer: add the config panel" },
263
274
  },
264
275
  {
265
276
  sessionUpdate: "agent_message_chunk",
277
+ messageId: "hist-2",
266
278
  content: { type: "text", text: "Reading the panel first." },
267
279
  },
268
280
  {
@@ -283,22 +295,27 @@ describe("ACP mode over stdio", () => {
283
295
  },
284
296
  {
285
297
  sessionUpdate: "agent_message_chunk",
298
+ messageId: "hist-3",
286
299
  content: { type: "text", text: "Added the config panel." },
287
300
  },
288
301
  {
289
302
  sessionUpdate: "user_message_chunk",
303
+ messageId: "hist-4",
290
304
  content: { type: "text", text: "after first compaction" },
291
305
  },
292
306
  {
293
307
  sessionUpdate: "agent_message_chunk",
308
+ messageId: "hist-5",
294
309
  content: { type: "text", text: "First follow-up complete." },
295
310
  },
296
311
  {
297
312
  sessionUpdate: "user_message_chunk",
313
+ messageId: "hist-6",
298
314
  content: { type: "text", text: "after second compaction" },
299
315
  },
300
316
  {
301
317
  sessionUpdate: "agent_message_chunk",
318
+ messageId: "hist-7",
302
319
  content: { type: "text", text: "Second follow-up complete." },
303
320
  },
304
321
  ]);
@@ -356,6 +373,7 @@ describe("ACP mode over stdio", () => {
356
373
  expect(frames.at(-1).error).toBeUndefined();
357
374
  expect(transcript(frames)[0]).toEqual({
358
375
  sessionUpdate: "user_message_chunk",
376
+ messageId: "hist-1",
359
377
  content: { type: "text", text: "newer: add the config panel" },
360
378
  });
361
379
  });
@@ -374,6 +392,7 @@ describe("ACP mode over stdio", () => {
374
392
  expect(transcript(frames)).toEqual([
375
393
  {
376
394
  sessionUpdate: "user_message_chunk",
395
+ messageId: "hist-1",
377
396
  content: {
378
397
  type: "text",
379
398
  text: "[Previous conversation summary]\n\nolder fallback summary",
@@ -381,6 +400,7 @@ describe("ACP mode over stdio", () => {
381
400
  },
382
401
  {
383
402
  sessionUpdate: "agent_message_chunk",
403
+ messageId: "hist-2",
384
404
  content: { type: "text", text: "Recovered from summary." },
385
405
  },
386
406
  ]);
@@ -631,8 +651,18 @@ describe("ACP mode over stdio", () => {
631
651
  }
632
652
  expect(transcript(frames)).toEqual([
633
653
  { sessionUpdate: "agent_thought_chunk", content: { type: "text", text: "planning" } },
634
- { sessionUpdate: "agent_message_chunk", content: { type: "text", text: "Hello " } },
635
- { sessionUpdate: "agent_message_chunk", content: { type: "text", text: "world" } },
654
+ // Both deltas belong to the same message, so they share an id; the tool
655
+ // call below ends it, and anything after starts a new one.
656
+ {
657
+ sessionUpdate: "agent_message_chunk",
658
+ messageId: "msg-1",
659
+ content: { type: "text", text: "Hello " },
660
+ },
661
+ {
662
+ sessionUpdate: "agent_message_chunk",
663
+ messageId: "msg-1",
664
+ content: { type: "text", text: "world" },
665
+ },
636
666
  {
637
667
  sessionUpdate: "tool_call",
638
668
  toolCallId: "t1",
@@ -641,6 +671,8 @@ describe("ACP mode over stdio", () => {
641
671
  kind: "read",
642
672
  status: "in_progress",
643
673
  rawInput: { file_path: "/tmp/example.ts" },
674
+ // Drives "follow the agent": the client opens the file being read.
675
+ locations: [{ path: "/tmp/example.ts" }],
644
676
  },
645
677
  {
646
678
  sessionUpdate: "tool_call_update",
@@ -748,6 +780,204 @@ describe("ACP mode over stdio", () => {
748
780
  },
749
781
  ]);
750
782
  }, 20_000);
783
+ it("sends file edits as a real diff instead of the tool's prose", async () => {
784
+ client = new AcpClient();
785
+ const sessionId = await client.handshake();
786
+ client.send({
787
+ jsonrpc: "2.0",
788
+ id: 3,
789
+ method: "session/prompt",
790
+ params: { sessionId, prompt: [{ type: "text", text: "edit a file" }] },
791
+ });
792
+ const frames = await client.until(3);
793
+ const completed = updatesOfKind(frames, "tool_call_update");
794
+ // The BEFORE contents, captured while the tool was still running. Reading
795
+ // the file twice after the fact would report "after" as both sides.
796
+ expect(completed[0]).toMatchObject({
797
+ toolCallId: "d1",
798
+ status: "completed",
799
+ content: [
800
+ {
801
+ type: "diff",
802
+ path: path.join(tmpProject, "diffed.txt"),
803
+ oldText: "before\n",
804
+ newText: "after\n",
805
+ },
806
+ ],
807
+ });
808
+ // A new file has no old side; ACP spells that as null, which clients render
809
+ // as an all-additions diff.
810
+ expect(completed[1]).toMatchObject({
811
+ toolCallId: "d2",
812
+ content: [
813
+ {
814
+ type: "diff",
815
+ path: path.join(tmpProject, "created.txt"),
816
+ oldText: null,
817
+ newText: "brand new\n",
818
+ },
819
+ ],
820
+ });
821
+ // Relative tool arguments are resolved against the session cwd, since the
822
+ // client is running somewhere else and cannot resolve them itself.
823
+ const starts = updatesOfKind(frames, "tool_call");
824
+ expect(starts[1].locations).toEqual([{ path: path.join(tmpProject, "created.txt") }]);
825
+ }, 20_000);
826
+ it("publishes an approved plan and advances it from [DONE:n] markers", async () => {
827
+ client = new AcpClient();
828
+ const sessionId = await client.handshake();
829
+ client.send({
830
+ jsonrpc: "2.0",
831
+ id: 3,
832
+ method: "session/prompt",
833
+ params: { sessionId, prompt: [{ type: "text", text: "approve a plan" }] },
834
+ });
835
+ const frames = await client.until(3);
836
+ const plans = updatesOfKind(frames, "plan");
837
+ expect(plans).toHaveLength(2);
838
+ // On approval the whole plan appears, with the first step already active:
839
+ // steps run in order, so that is what the agent is doing right now.
840
+ expect(plans[0]).toEqual({
841
+ sessionUpdate: "plan",
842
+ entries: [
843
+ { content: "Wire the transport layer", priority: "medium", status: "in_progress" },
844
+ { content: "Render the results", priority: "medium", status: "pending" },
845
+ { content: "Ship the thing", priority: "medium", status: "pending" },
846
+ ],
847
+ });
848
+ // The marker was split across two text deltas and still registered.
849
+ expect(plans[1]).toEqual({
850
+ sessionUpdate: "plan",
851
+ entries: [
852
+ { content: "Wire the transport layer", priority: "medium", status: "completed" },
853
+ { content: "Render the results", priority: "medium", status: "in_progress" },
854
+ { content: "Ship the thing", priority: "medium", status: "pending" },
855
+ ],
856
+ });
857
+ }, 20_000);
858
+ it("names the session from its first prompt, once", async () => {
859
+ client = new AcpClient();
860
+ const sessionId = await client.handshake();
861
+ for (const id of [3, 4]) {
862
+ client.send({
863
+ jsonrpc: "2.0",
864
+ id,
865
+ method: "session/prompt",
866
+ params: { sessionId, prompt: [{ type: "text", text: `turn ${id}` }] },
867
+ });
868
+ await client.until(id);
869
+ }
870
+ const infos = updatesOfKind(client.received(), "session_info_update");
871
+ // Titled after the FIRST exchange and never renamed underneath the user.
872
+ expect(infos).toHaveLength(1);
873
+ expect(infos[0].title).toBe("turn 3");
874
+ expect(Date.parse(infos[0].updatedAt)).not.toBeNaN();
875
+ }, 20_000);
876
+ it("resumes a stored session without replaying its transcript", async () => {
877
+ client = new AcpClient();
878
+ client.send({ jsonrpc: "2.0", id: 1, method: "initialize", params: { protocolVersion: 1 } });
879
+ await client.until(1);
880
+ const [newest] = await client.list(90, tmpProject);
881
+ client.send({
882
+ jsonrpc: "2.0",
883
+ id: 91,
884
+ method: "session/resume",
885
+ params: { sessionId: newest.sessionId, cwd: tmpProject, mcpServers: [] },
886
+ });
887
+ const frames = await client.until(91);
888
+ expect(frames.at(-1).error).toBeUndefined();
889
+ // The whole point of resume over load: the client already has the
890
+ // transcript, so pushing it a second copy is what it asked to avoid.
891
+ expect(transcript(frames)).toEqual([]);
892
+ // The context is genuinely restored, not merely reported as restored.
893
+ client.send({
894
+ jsonrpc: "2.0",
895
+ id: 92,
896
+ method: "session/prompt",
897
+ params: {
898
+ sessionId: newest.sessionId,
899
+ prompt: [{ type: "text", text: "report loaded context" }],
900
+ },
901
+ });
902
+ const answered = await client.until(92);
903
+ const replied = updatesOfKind(answered, "agent_message_chunk")
904
+ .map((update) => update.content.text)
905
+ .join("");
906
+ // Generation 2, exactly as `session/load` restores it: the live context is
907
+ // the newest checkpoint, not the pre-compaction transcript.
908
+ expect(replied).toContain("after second compaction");
909
+ expect(replied).not.toContain("newer: add the config panel");
910
+ }, 20_000);
911
+ it("closes an active session and refuses to close an unknown one", async () => {
912
+ client = new AcpClient();
913
+ const sessionId = await client.handshake();
914
+ client.send({
915
+ jsonrpc: "2.0",
916
+ id: 3,
917
+ method: "session/close",
918
+ params: { sessionId: "not-a-session" },
919
+ });
920
+ const rejected = (await client.until(3)).at(-1);
921
+ expect(rejected.error.code).toBe(-32602);
922
+ client.send({ jsonrpc: "2.0", id: 4, method: "session/close", params: { sessionId } });
923
+ const closed = (await client.until(4)).at(-1);
924
+ expect(closed.result).toEqual({});
925
+ // Closing frees the session, so prompting the closed id is now a client
926
+ // sequencing error rather than a silently ignored no-op.
927
+ client.send({
928
+ jsonrpc: "2.0",
929
+ id: 5,
930
+ method: "session/prompt",
931
+ params: { sessionId, prompt: [{ type: "text", text: "still there?" }] },
932
+ });
933
+ expect((await client.until(5)).at(-1).error.code).toBe(-32602);
934
+ }, 20_000);
935
+ it("waits for a cancelled turn to unwind before closing the session", async () => {
936
+ client = new AcpClient();
937
+ const sessionId = await client.handshake();
938
+ client.send({
939
+ jsonrpc: "2.0",
940
+ id: 3,
941
+ method: "session/prompt",
942
+ params: { sessionId, prompt: [{ type: "text", text: "hang" }] },
943
+ });
944
+ // Let the turn actually start, or close would tear down an idle session and
945
+ // the race this guards against could never happen.
946
+ await new Promise((resolve) => setTimeout(resolve, 300));
947
+ client.send({ jsonrpc: "2.0", id: 4, method: "session/close", params: { sessionId } });
948
+ expect((await client.until(4)).at(-1).result).toEqual({});
949
+ // The cancelled turn resolves as cancelled, not as an error.
950
+ expect((await client.until(3)).at(-1).result).toEqual({ stopReason: "cancelled" });
951
+ // Close only SIGNALS the abort; the turn keeps unwinding and persists its
952
+ // tail on a later tick. Disposing without waiting drops that write, and a
953
+ // resumed session comes back missing its last exchange.
954
+ const witness = JSON.parse(await fs.readFile(path.join(tmpProject, "dispose-witness.json"), "utf8"));
955
+ expect(witness.disposedMidTurn).toBe(false);
956
+ }, 20_000);
957
+ it("deletes a stored session, and succeeds when it is already gone", async () => {
958
+ client = new AcpClient();
959
+ await client.handshake();
960
+ const before = await client.list(90, tmpProject);
961
+ const target = before.find((entry) => entry.title === "older: rename the widget");
962
+ client.send({
963
+ jsonrpc: "2.0",
964
+ id: 92,
965
+ method: "session/delete",
966
+ params: { sessionId: target.sessionId },
967
+ });
968
+ expect((await client.until(92)).at(-1).result).toEqual({});
969
+ const after = await client.list(93, tmpProject);
970
+ expect(after.map((entry) => entry.title)).not.toContain("older: rename the widget");
971
+ // Idempotent by spec: the user's intent is already satisfied, so deleting
972
+ // it again is a success, not an error.
973
+ client.send({
974
+ jsonrpc: "2.0",
975
+ id: 94,
976
+ method: "session/delete",
977
+ params: { sessionId: target.sessionId },
978
+ });
979
+ expect((await client.until(94)).at(-1).result).toEqual({});
980
+ }, 20_000);
751
981
  it("reports a refusal as its own stop reason", async () => {
752
982
  client = new AcpClient();
753
983
  const sessionId = await client.handshake();