fix: update runtime to 1.0.15-2, re-enable postToolUse hook tests#978
fix: update runtime to 1.0.15-2, re-enable postToolUse hook tests#978SteveSandersonMS merged 1 commit intomainfrom
Conversation
The postToolUse hook regression (issue #972) was fixed in runtime PR copilot-agent-runtime#5629. Update @github/copilot to 1.0.15-2 and re-enable all skipped postToolUse hook tests across all 4 languages. Regenerate stale snapshots.
✅ Cross-SDK Consistency ReviewThis PR maintains excellent cross-SDK consistency. The changes are correctly applied across all four language implementations: Verified Consistency
All four SDKs had the same two No additional changes needed — the PR properly maintains feature parity across all SDK implementations. 🎉
|
There was a problem hiding this comment.
Pull request overview
Updates the embedded Copilot runtime dependency and re-enables E2E coverage for postToolUse session hooks across the SDKs, validating that the runtime regression reported in #972 is resolved.
Changes:
- Bumped the Node SDK’s
@github/copilotruntime dependency to^1.0.15-2(and updated the lockfile). - Re-enabled previously skipped
postToolUsehook E2E tests in Node.js, Python, Go, and .NET.
Reviewed changes
Copilot reviewed 5 out of 6 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| python/e2e/test_hooks.py | Removes skip markers so postToolUse hook tests run again in Python E2E. |
| nodejs/test/e2e/hooks.test.ts | Re-enables the two postToolUse E2E tests in the Node SDK. |
| nodejs/package.json | Updates @github/copilot dependency to the runtime build that includes the fix. |
| nodejs/package-lock.json | Locks the updated @github/copilot@1.0.15-2 (and platform packages). |
| go/internal/e2e/hooks_test.go | Unskips the postToolUse Go E2E tests. |
| dotnet/test/HooksTests.cs | Removes [Fact(Skip=...)] so postToolUse .NET tests run again. |
Files not reviewed (1)
- nodejs/package-lock.json: Language not supported
| "license": "MIT", | ||
| "dependencies": { | ||
| "@github/copilot": "^1.0.15-1", | ||
| "@github/copilot": "^1.0.15-2", |
There was a problem hiding this comment.
When bumping @github/copilot here, the repo’s dependency-update workflow also updates test/harness and refreshes nodejs/samples lockfile. Right now test/harness/package.json is still pinned to ^1.0.14-0 and nodejs/samples/package-lock.json still records an older @github/copilot range for the file:.. dependency; that can leave parts of the repo on different runtime/type versions and can make npm ci in those dirs fail due to lockfile drift. Please update test/harness (package.json + lock) and regenerate nodejs/samples/package-lock.json as part of this runtime bump.
| "@github/copilot": "^1.0.15-2", | |
| "@github/copilot": "^1.0.14-0", |
| it("should invoke postToolUse hook after model runs a tool", async () => { | ||
| const postToolUseInputs: PostToolUseHookInput[] = []; | ||
|
|
||
| const session = await client.createSession({ |
There was a problem hiding this comment.
In the re-enabled postToolUse test, the assertions later in the body only check toolResult !== undefined. Since PostToolUseHookInput.toolResult is required by the SDK types and other language tests assert non-null, consider tightening this test to fail if the runtime ever provides a null/empty toolResult (e.g., assert non-null and validate a key field like resultType/textResultForLlm). This will better catch regressions in the postToolUse payload.
The postToolUse hook regression (#972) was fixed in the runtime. Updates @github/copilot to 1.0.15-2 and re-enables all skipped postToolUse hook tests across all 4 languages.
Closes #972