Port shouldUseReplacedIdentitySectionInResponse E2E test to dotnet, go, nodejs, python, and rust#1691
Conversation
…-Java languages Co-authored-by: edburns <75821+edburns@users.noreply.github.com>
shouldUseReplacedIdentitySectionInResponse E2E test to dotnet, go, nodejs, python, and rust
This comment has been minimized.
This comment has been minimized.
|
@copilot investigate and resolve the failures in the Python SDK tests. Run only the Python SDK tests locally to verify you have fixed the problems. https://github.com/github/copilot-sdk/actions/runs/27640669484/job/81752408215?pr=1691 |
…ctions e2e test Co-authored-by: edburns <75821+edburns@users.noreply.github.com>
The CI failure was a Fixed in commit
Both |
This comment has been minimized.
This comment has been minimized.
There was a problem hiding this comment.
Pull request overview
This PR ports the existing Java-only E2E coverage for system message section overrides—specifically identity section action: replace in systemMessage.mode = customize—to the other SDKs (C#/.NET, Go, Node.js, Python, Rust) using the shared snapshot system_message_sections/should_use_replaced_identity_section_in_response.yaml.
Changes:
- Added a new E2E test in each remaining SDK to validate that replacing the
identitysection causes the assistant response to reflect the custom persona. - Wired the new Rust E2E module into the Rust E2E test suite entrypoint.
Show a summary per file
| File | Description |
|---|---|
| rust/tests/e2e/system_message_sections.rs | Adds Rust E2E test asserting persona adoption via identity section replace override. |
| rust/tests/e2e.rs | Registers the new Rust E2E module so it runs with the rest of the suite. |
| python/e2e/test_system_message_sections_e2e.py | Adds Python E2E test for system_message.sections.identity replace behavior. |
| nodejs/test/e2e/system_message_sections.e2e.test.ts | Adds Node/Vitest E2E test covering systemMessage.sections.identity replace behavior. |
| go/internal/e2e/system_message_sections_e2e_test.go | Adds Go E2E test verifying identity section replacement influences assistant response. |
| dotnet/test/E2E/SystemMessageSectionsE2ETests.cs | Adds .NET E2E test validating Identity section replace override affects assistant response. |
Copilot's findings
- Files reviewed: 6/6 changed files
- Comments generated: 0
Cross-SDK Consistency Review ✅This PR is a well-executed consistency port. All six SDK implementations now share the same E2E test for Test behavior — consistent across all SDKs
Language-idiomatic API usage — all correct
Other checks
No inconsistencies found. This PR brings the cross-SDK test coverage into full parity.
|
The Java-only E2E test validating that a
REPLACEoverride on theidentitysystem message section causes the assistant to adopt a custom persona had no equivalent in any other SDK. This ports that behavior to all five remaining languages using the same snapshot (system_message_sections/should_use_replaced_identity_section_in_response.yaml).Changes
dotnet/test/E2E/SystemMessageSectionsE2ETests.cs(new):SystemMessageSectionsE2ETestsclass withShould_Use_Replaced_Identity_Section_In_Responsego/internal/e2e/system_message_sections_e2e_test.go(new):TestSystemMessageSectionsE2Ewith subtestshould_use_replaced_identity_section_in_responsenodejs/test/e2e/system_message_sections.e2e.test.ts(new): Vitestdescribe("System message sections")with matching test namepython/e2e/test_system_message_sections_e2e.py(new):TestSystemMessageSections.test_should_use_replaced_identity_section_in_responserust/tests/e2e/system_message_sections.rs(new) + wired intorust/tests/e2e.rsTest behavior (consistent across all languages)
Each test:
systemMessage.mode = customizeidentitysection toaction: replace, content:"You are a helpful gardening assistant called Botanica…""Who are you?"botanica,garden, orplantExample (Go):