Skip to content

Commit da1788d

Browse files
github-actions[bot]Copilotstephentoub
authored
Update @github/copilot to 1.0.57-3 (#1519)
* Update @github/copilot to 1.0.57-3 - Updated nodejs and test harness dependencies - Re-ran code generators - Formatted generated code * Re-enable pending-work resume e2e tests now that runtime race is fixed Co-authored-by: stephentoub <2642209+stephentoub@users.noreply.github.com> --------- Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: stephentoub <2642209+stephentoub@users.noreply.github.com>
1 parent c8f88c7 commit da1788d

9 files changed

Lines changed: 79 additions & 148 deletions

File tree

dotnet/test/E2E/PendingWorkResumeE2ETests.cs

Lines changed: 2 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -19,14 +19,7 @@ public class PendingWorkResumeE2ETests(E2ETestFixture fixture, ITestOutputHelper
1919
private static readonly TimeSpan PendingWorkTimeout = TimeSpan.FromSeconds(60);
2020
private const string SharedToken = "pending-work-resume-shared-token";
2121

22-
// Skipped after the runtime 1.0.56 bump. Runtime PR #9040 (commit b8e1220b45) changed
23-
// SDKServer.handleConnectionClosed to tear down the session when the last RPC client
24-
// disconnects, so the in-memory pending permission request is gone before the resumed
25-
// client can satisfy it and HandlePendingPermissionRequest returns success=false. This
26-
// test models same-process ForceStop+resume; it needs to be redesigned to either keep
27-
// an owner connected (warm resume) or to model a true process restart against the
28-
// persisted session state.
29-
[Fact(Skip = "Runtime 1.0.56 cleans up the session on last-client disconnect (copilot-agent-runtime PR #9040), so the in-memory pending request is gone before resume can satisfy it. Test needs redesign.")]
22+
[Fact]
3023
public async Task Should_Continue_Pending_Permission_Request_After_Resume()
3124
{
3225
var originalPermissionRequest = new TaskCompletionSource<PermissionRequest>(TaskCreationOptions.RunContinuationsAsynchronously);
@@ -95,12 +88,7 @@ static string ResumePermissionTool([Description("Value to transform")] string va
9588
$"ORIGINAL_SHOULD_NOT_RUN_{value}";
9689
}
9790

98-
// Skipped for the same reason as Should_Continue_Pending_Permission_Request_After_Resume:
99-
// runtime 1.0.56 (copilot-agent-runtime PR #9040) tears down the session when the last
100-
// RPC client disconnects, so the in-memory pending external tool call is gone before
101-
// the resumed client can satisfy it. Needs redesign to keep an owner connected (warm)
102-
// or to model true process-restart resume from persisted state.
103-
[Fact(Skip = "Runtime 1.0.56 cleans up the session on last-client disconnect (copilot-agent-runtime PR #9040), so the in-memory pending tool call is gone before resume can satisfy it. Test needs redesign.")]
91+
[Fact]
10492
public async Task Should_Continue_Pending_External_Tool_Request_After_Resume()
10593
{
10694
var originalToolStarted = new TaskCompletionSource<string>(TaskCreationOptions.RunContinuationsAsynchronously);

go/internal/e2e/pending_work_resume_e2e_test.go

Lines changed: 0 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -25,15 +25,6 @@ func TestPendingWorkResumeE2E(t *testing.T) {
2525
ctx := testharness.NewTestContext(t)
2626

2727
t.Run("should continue pending permission request after resume", func(t *testing.T) {
28-
// Skipped after the runtime 1.0.56 bump. Runtime PR #9040 (commit b8e1220b45)
29-
// changed SDKServer.handleConnectionClosed to tear down the session when the
30-
// last RPC client disconnects, so the in-memory pending permission request is
31-
// gone before the resumed client can satisfy it and HandlePendingPermissionRequest
32-
// returns Success=false. This test models same-process ForceStop+resume; it
33-
// needs to be redesigned to either keep an owner connected (warm resume) or to
34-
// model a true process restart against the persisted session state.
35-
t.Skip("Runtime 1.0.56 cleans up the session on last-client disconnect (copilot-agent-runtime PR #9040), so the in-memory pending request is gone before resume can satisfy it. Test needs redesign.")
36-
3728
ctx.ConfigureForTest(t)
3829

3930
_, cliURL := startTcpServer(t, ctx)
@@ -147,14 +138,6 @@ func TestPendingWorkResumeE2E(t *testing.T) {
147138
})
148139

149140
t.Run("should continue pending external tool request after resume", func(t *testing.T) {
150-
// Skipped for the same reason as "should continue pending permission request
151-
// after resume": runtime 1.0.56 (copilot-agent-runtime PR #9040) tears down
152-
// the session when the last RPC client disconnects, so the in-memory pending
153-
// external tool call is gone before the resumed client can satisfy it. Needs
154-
// redesign to keep an owner connected (warm) or to model true process-restart
155-
// resume from persisted state.
156-
t.Skip("Runtime 1.0.56 cleans up the session on last-client disconnect (copilot-agent-runtime PR #9040), so the in-memory pending tool call is gone before resume can satisfy it. Test needs redesign.")
157-
158141
ctx.ConfigureForTest(t)
159142

160143
_, cliURL := startTcpServer(t, ctx)

nodejs/package-lock.json

Lines changed: 36 additions & 36 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

nodejs/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@
5656
"author": "GitHub",
5757
"license": "MIT",
5858
"dependencies": {
59-
"@github/copilot": "^1.0.57-2",
59+
"@github/copilot": "^1.0.57-3",
6060
"vscode-jsonrpc": "^8.2.1",
6161
"zod": "^4.3.6"
6262
},

nodejs/samples/package-lock.json

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

nodejs/test/e2e/pending_work_resume.e2e.test.ts

Lines changed: 2 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -166,14 +166,7 @@ describe("Pending work resume", async () => {
166166
return `localhost:${port}`;
167167
}
168168

169-
// Skipped after the runtime 1.0.56 bump. Runtime PR #9040 (commit b8e1220b45)
170-
// changed SDKServer.handleConnectionClosed to tear down the session when the
171-
// last RPC client disconnects, so the in-memory pending permission request is
172-
// gone before the resumed client can satisfy it and handlePendingPermissionRequest
173-
// returns success=false. This test models same-process ForceStop+resume; it needs
174-
// to be redesigned to either keep an owner connected (warm resume) or to model
175-
// a true process restart against the persisted session state.
176-
it.skip(
169+
it(
177170
"should continue pending permission request after resume",
178171
{ timeout: TEST_TIMEOUT_MS },
179172
async () => {
@@ -246,13 +239,7 @@ describe("Pending work resume", async () => {
246239
}
247240
);
248241

249-
// Skipped for the same reason as "should continue pending permission request
250-
// after resume": runtime 1.0.56 (copilot-agent-runtime PR #9040) tears down the
251-
// session when the last RPC client disconnects, so the in-memory pending external
252-
// tool call is gone before the resumed client can satisfy it. Needs redesign to
253-
// keep an owner connected (warm) or to model true process-restart resume from
254-
// persisted state.
255-
it.skip(
242+
it(
256243
"should continue pending external tool request after resume",
257244
{ timeout: TEST_TIMEOUT_MS },
258245
async () => {

python/e2e/test_pending_work_resume_e2e.py

Lines changed: 0 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -128,20 +128,6 @@ async def _safe_force_stop(client: CopilotClient) -> None:
128128

129129

130130
class TestPendingWorkResume:
131-
# Skipped after the runtime 1.0.56 bump. Runtime PR #9040 (commit b8e1220b45)
132-
# changed SDKServer.handleConnectionClosed to tear down the session when the last
133-
# RPC client disconnects, so the in-memory pending permission request is gone
134-
# before the resumed client can satisfy it and handle_pending_permission_request
135-
# returns success=False. This test models same-process force_stop+resume; it
136-
# needs to be redesigned to either keep an owner connected (warm resume) or to
137-
# model a true process restart against the persisted session state.
138-
@pytest.mark.skip(
139-
reason=(
140-
"Runtime 1.0.56 cleans up the session on last-client disconnect "
141-
"(copilot-agent-runtime PR #9040), so the in-memory pending request "
142-
"is gone before resume can satisfy it. Test needs redesign."
143-
)
144-
)
145131
async def test_should_continue_pending_permission_request_after_resume(
146132
self, ctx: E2ETestContext
147133
):
@@ -222,19 +208,6 @@ def resumed_tool_handler(args):
222208
finally:
223209
await _safe_force_stop(server)
224210

225-
# Skipped for the same reason as
226-
# test_should_continue_pending_permission_request_after_resume: runtime 1.0.56
227-
# (copilot-agent-runtime PR #9040) tears down the session when the last RPC
228-
# client disconnects, so the in-memory pending external tool call is gone before
229-
# the resumed client can satisfy it. Needs redesign to keep an owner connected
230-
# (warm) or to model true process-restart resume from persisted state.
231-
@pytest.mark.skip(
232-
reason=(
233-
"Runtime 1.0.56 cleans up the session on last-client disconnect "
234-
"(copilot-agent-runtime PR #9040), so the in-memory pending tool call "
235-
"is gone before resume can satisfy it. Test needs redesign."
236-
)
237-
)
238211
async def test_should_continue_pending_external_tool_request_after_resume(
239212
self, ctx: E2ETestContext
240213
):

0 commit comments

Comments
 (0)