| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
Update SDK snapshot for Copilot CLI 1.0.88-2 | 30 天前 | |
C# API review fixes (#1343) | 4 个月前 | |
Fix flaky .NET ask-user E2E tests (#2107) | 2 个月前 | |
Complete Fast Auto-tier support across SDKs (#2669) * Complete Fast Auto-tier SDK support Add Fast Auto-tier exposure, contract tests, and lifecycle E2E coverage across the SDKs while preserving runtime-owned eligibility and omitted-tier semantics. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Fix Fast Auto-tier test backend classification and formatting Restrict routing-dependent lifecycle tests to CAPI while retaining direct-provider coverage for the other Auto-tier tests. Apply Python formatting and documentation punctuation fixes. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Remove CLI version requirements from Auto-tier documentation Address maintainer feedback consistently across feature documentation, SDK READMEs, the changelog, and API comments while preserving routing and runtime-error guidance. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Apply suggestion from @stephentoub --------- Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Co-authored-by: Stephen Toub <stoub@microsoft.com> | 1 个月前 | |
Add .NET BYOK E2E coverage (#2010) * Add .NET BYOK E2E coverage Reuse conceptual replay snapshots across Anthropic Messages, OpenAI Responses, and OpenAI Chat Completions, and add three Ubuntu in-process CI legs. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 85a40918-bd95-440b-b6e9-97c757a71f8c * Normalize Anthropic adjacent user turns Collapse runtime-specific blank-line expansion so conceptual replay snapshots match recovery turns consistently. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 85a40918-bd95-440b-b6e9-97c757a71f8c * Document potential BYOK E2E gaps Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 85a40918-bd95-440b-b6e9-97c757a71f8c * Restore workflow path quoting Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 85a40918-bd95-440b-b6e9-97c757a71f8c * Preserve the .NET test matrix Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 85a40918-bd95-440b-b6e9-97c757a71f8c * Clarify replay harness test leg Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 85a40918-bd95-440b-b6e9-97c757a71f8c * Use existing replay harness test coverage Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 85a40918-bd95-440b-b6e9-97c757a71f8c * Simplify BYOK replay harness Make non-CAPI replay explicitly read-only so provider response parsing and SSE aggregation are unnecessary. Keep protocol-complete forward rendering, clarify backend trait naming, and rename the .NET proxy wrapper to reflect its protocol-neutral role. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 85a40918-bd95-440b-b6e9-97c757a71f8c * Unify replay protocol paths Select a protocol descriptor once per backend so CAPI and BYOK share routing, canonical matching, errors, JSON/SSE responses, and exchange inspection. Replay compaction directly from canonical snapshots instead of synthesizing provider-specific responses. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 85a40918-bd95-440b-b6e9-97c757a71f8c * Fix Responses replay stream lifecycle Keep initial Responses events in progress and empty until their matching delta and done events, and use the isolated E2E context when injecting a BYOK provider. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 85a40918-bd95-440b-b6e9-97c757a71f8c | 3 个月前 | |
Update @github/copilot to 1.0.83-0 (#2449) * Update @github/copilot to 1.0.83-0 - Updated nodejs and test harness dependencies - Re-ran code generators - Formatted generated code * test: separate canvas and extension opt-ins Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> --------- Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Shay Rojansky <roji@roji.org> Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> | 1 个月前 | |
Launch managed SDK servers through the Rust runtime wrapper (#2395) * Integrate out-of-process Rust runtime wrapper Stage and launch copilot-runtime beside runtime.node across all SDKs, with an opt-in local runtime-worktree override until published packages include the wrapper. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3f5c3c30-0cf7-4b9a-9a3b-2b01ca073015 * Validate runtime wrapper across SDK harnesses Route out-of-process E2E harnesses through the local runtime override while preserving the residual CLI for in-process execution. Keep Java bundled residual injection intact and surface Python fast-exit diagnostics reliably. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3f5c3c30-0cf7-4b9a-9a3b-2b01ca073015 * Use residual CLI for Python FFI test Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3f5c3c30-0cf7-4b9a-9a3b-2b01ca073015 * Honor per-client runtime environment in .NET Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3f5c3c30-0cf7-4b9a-9a3b-2b01ca073015 * Handle Rust session requests during creation Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3f5c3c30-0cf7-4b9a-9a3b-2b01ca073015 * Skip Go telemetry callback test in-process Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3f5c3c30-0cf7-4b9a-9a3b-2b01ca073015 * Add legacy CLI launch escape hatch Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3f5c3c30-0cf7-4b9a-9a3b-2b01ca073015 * Remove residual Node runtime compatibility Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3f5c3c30-0cf7-4b9a-9a3b-2b01ca073015 * Remove COPILOT_RUNTIME_PATH override Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3f5c3c30-0cf7-4b9a-9a3b-2b01ca073015 * fix(rust): materialize runtime launch contract Ensure managed wrapper launches materialize and hand off the compatible host, and expose the same launch descriptor for health checks and intermediate launchers. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3f5c3c30-0cf7-4b9a-9a3b-2b01ca073015 * Remove residual runtime host contract Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 2455380f-4747-4900-89ca-93b30399de03 * fix(rust): materialize sibling CLI host Extract the bundled CLI beside copilot-runtime and runtime.node so managed and intermediate launches retain compatibility through the wrapper's sibling fallback. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3f5c3c30-0cf7-4b9a-9a3b-2b01ca073015 * fix(rust): create runtime install directory Ensure a clean bundled runtime cache can publish runtime.node, the wrapper, and sibling CLI before any artifact path exists. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3f5c3c30-0cf7-4b9a-9a3b-2b01ca073015 * Complete managed runtime bundle materialization Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3f5c3c30-0cf7-4b9a-9a3b-2b01ca073015 * Remove managed SEA staging for hostless runtime Keep the root CLI artifact bundled for direct and in-process use, while managed out-of-process caches materialize only copilot-runtime and runtime.node. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3f5c3c30-0cf7-4b9a-9a3b-2b01ca073015 * Stage auxiliary runtime assets from npm packages Preserve unknown package assets by default while filtering known CLI-only content in each SDK's existing staging path. Keep wrapper companions adjacent, migrate caches safely, and retain executable metadata for external runtime tools. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3f5c3c30-0cf7-4b9a-9a3b-2b01ca073015 * Exclude runtime package documentation from staging Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3f5c3c30-0cf7-4b9a-9a3b-2b01ca073015 * Finalize runtime wrapper integration after rebase Preserve the explicit .NET single-binary override, refresh stale Rust runtime bundles safely, and document the Python npm registry override. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3f5c3c30-0cf7-4b9a-9a3b-2b01ca073015 * Use executable cache for Node runtime wrapper Stage the managed wrapper under the platform user cache instead of the temporary directory so noexec temp mounts do not prevent startup. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3f5c3c30-0cf7-4b9a-9a3b-2b01ca073015 * Temporarily skip extension-host E2E coverage Document PR #2395 and the Rust-only out-of-process transition on Node extension-authored factory coverage, the real-host extension environment test, and .NET extension lifecycle tests. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3f5c3c30-0cf7-4b9a-9a3b-2b01ca073015 * Address runtime wrapper review feedback Match the successful grep completion to the grep tool invocation and document Java's bundled runtime-wrapper default. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3f5c3c30-0cf7-4b9a-9a3b-2b01ca073015 * Stop resolving SEA for in-process hosting Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3f5c3c30-0cf7-4b9a-9a3b-2b01ca073015 * Keep default runtime bundles SEA-free Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3f5c3c30-0cf7-4b9a-9a3b-2b01ca073015 * Fix cross-platform runtime integration tests Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3f5c3c30-0cf7-4b9a-9a3b-2b01ca073015 * Fix runtime CI harness portability Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3f5c3c30-0cf7-4b9a-9a3b-2b01ca073015 * Relax closed-stream startup assertion Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3f5c3c30-0cf7-4b9a-9a3b-2b01ca073015 * Fix failed-start runtime test handling Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3f5c3c30-0cf7-4b9a-9a3b-2b01ca073015 * Format Python runtime test setup Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3f5c3c30-0cf7-4b9a-9a3b-2b01ca073015 * Clean up failed Node runtime startup Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3f5c3c30-0cf7-4b9a-9a3b-2b01ca073015 * Fix Java token provider sample Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3f5c3c30-0cf7-4b9a-9a3b-2b01ca073015 * Fix runtime integration CI checks Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3f5c3c30-0cf7-4b9a-9a3b-2b01ca073015 * Make Java relative path test drive-safe Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3f5c3c30-0cf7-4b9a-9a3b-2b01ca073015 * Use generated logging for permission failures Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3f5c3c30-0cf7-4b9a-9a3b-2b01ca073015 * Suppress Node pipe writes after runtime exit Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3f5c3c30-0cf7-4b9a-9a3b-2b01ca073015 * Preserve Node startup transport errors Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3f5c3c30-0cf7-4b9a-9a3b-2b01ca073015 * Add Rust extension launch provider Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Clarify extension launch environment Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: efc29e35-611b-46d8-9b8b-e1912d2eccf4 * test(rust): cover runtime extension lifecycle Add a real-wrapper regression that exercises typed provider dispatch, extension registration, tool invocation, disable/re-enable, environment ownership, and process teardown. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3f5c3c30-0cf7-4b9a-9a3b-2b01ca073015 * fix(java): honor runtime path environment override Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3f5c3c30-0cf7-4b9a-9a3b-2b01ca073015 * test(node): skip host-dependent ask user metadata Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * fix(node): preserve startup stderr after pipe errors Wait for the child close event before selecting startup diagnostics so early EPIPE failures do not hide the runtime's actionable stderr output. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * refactor(node): separate exit and diagnostic waits Keep startup RPCs fail-fast on process exit while using child close only to collect fully drained stderr after an early pipe error. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * test(node): preserve ask user metadata coverage Run the Node-hosted metadata assertion through the harness's explicit legacy CLI path instead of disabling it for managed hostless connections. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: b90d19df-b3fa-4539-b921-8b301028da11 * refactor(node): simplify startup failure handling Keep startup teardown fail-fast and verify startup failures without waiting separately for diagnostic stream closure. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: b90d19df-b3fa-4539-b921-8b301028da11 * style(node): format startup failure test Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: b90d19df-b3fa-4539-b921-8b301028da11 * test(python): set plan mode before handler test Await the explicit mode transition before sending the replayed prompt so exit_plan_mode is deterministically available to the model. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: b90d19df-b3fa-4539-b921-8b301028da11 * test: preserve live in-process runtime state Keep isolated runtime home files until the shared in-process client shuts down so later tests never operate on POSIX-unlinked state. Apply the same lifecycle rule to the Node and Python E2E harnesses. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: b90d19df-b3fa-4539-b921-8b301028da11 * test: stabilize transient runtime checks Observe Rust processing state concurrently with message dispatch so fast in-process turns cannot complete before polling starts. Exercise rewind through an edit of a pre-existing file across SDKs, avoiding the runtime's unreliable new-file capture path while preserving file restoration coverage on every platform. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: b90d19df-b3fa-4539-b921-8b301028da11 * Stabilize Rust processing state E2E Hold a replayed custom tool invocation open while asserting the transient processing state, then release it and verify completion. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: b90d19df-b3fa-4539-b921-8b301028da11 * Stabilize Windows .NET E2E coverage Use explicit .NET Framework handling for nondeterministic stdio startup diagnostics and complete a warm-up turn before exercising rewind file tracking across SDKs. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: b90d19df-b3fa-4539-b921-8b301028da11 * test: stabilize rewind and Rust resume E2E Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: b90d19df-b3fa-4539-b921-8b301028da11 * fix: stabilize runtime disconnect races Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: b90d19df-b3fa-4539-b921-8b301028da11 --------- Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Co-authored-by: Stephen Toub <stoub@microsoft.com> Copilot-Session: 3f5c3c30-0cf7-4b9a-9a3b-2b01ca073015 Copilot-Session: 2455380f-4747-4900-89ca-93b30399de03 Copilot-Session: efc29e35-611b-46d8-9b8b-e1912d2eccf4 Copilot-Session: b90d19df-b3fa-4539-b921-8b301028da11 | 1 个月前 | |
Use session detach for SDK cleanup (#2307) Add real-runtime cold resume coverage across SDKs so disconnect preserves persisted sessions across client/runtime restart. Co-authored-by: Steve Sanderson <SteveSandersonMS@users.noreply.github.com> Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> | 1 个月前 | |
Update SDK snapshot for Copilot CLI 1.0.97-0 | 10 天前 | |
C# API review fixes (#1343) | 4 个月前 | |
Update SDK snapshot for Copilot CLI 1.0.101-0 | 3 天前 | |
Update SDK snapshot for Copilot CLI 1.0.92-4 | 18 天前 | |
Update SDK snapshot for Copilot CLI 1.0.101-0 | 3 天前 | |
test: update replay harness default to Claude Sonnet 5 (#2472) * test: update replay harness default to Claude Sonnet 5 Preserve explicit legacy-model replay while advertising a supported default in historical catalogs. Update synthetic C# catalogs, model-list expectations, and the model-specific rate-limit fixture. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * test: preserve legacy selection in catalog and vision fixtures Advertise Sonnet 4.5 alongside the current default when no capture exists, and explicitly pin capability-toggle tests to their existing model so they do not switch model families mid-test. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * test: use Sonnet 5 for both vision capability turns Migrate session creation and capability updates together across Node, Python, Go, and C#. Update the shared fixture catalogs without changing conversation captures. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 79d231f3-b08c-460b-89ec-c2abbd554368 * test: migrate all Sonnet 4.5 fixtures to Sonnet 5 Use Sonnet 5 consistently in test sessions, fake providers, assertions, and replay catalogs. Remove the legacy catalog compatibility shim and retain model-independent replay coverage using an arbitrary provider model. Conversation captures are not regenerated. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 79d231f3-b08c-460b-89ec-c2abbd554368 * test: fix migration formatting and fixture-authoring examples Apply Ruff and Spotless reflow after model identifiers shortened, and update Java snapshot-authoring templates to Sonnet 5 so new tests do not reintroduce the retired model. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 79d231f3-b08c-460b-89ec-c2abbd554368 * test: trim replay coverage to the Sonnet 5 default Keep missing and empty catalog default coverage and the existing cached catalog test; remove tests added for the deleted compatibility shim. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 79d231f3-b08c-460b-89ec-c2abbd554368 --------- Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 79d231f3-b08c-460b-89ec-c2abbd554368 | 1 个月前 | |
test: update replay harness default to Claude Sonnet 5 (#2472) * test: update replay harness default to Claude Sonnet 5 Preserve explicit legacy-model replay while advertising a supported default in historical catalogs. Update synthetic C# catalogs, model-list expectations, and the model-specific rate-limit fixture. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * test: preserve legacy selection in catalog and vision fixtures Advertise Sonnet 4.5 alongside the current default when no capture exists, and explicitly pin capability-toggle tests to their existing model so they do not switch model families mid-test. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * test: use Sonnet 5 for both vision capability turns Migrate session creation and capability updates together across Node, Python, Go, and C#. Update the shared fixture catalogs without changing conversation captures. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 79d231f3-b08c-460b-89ec-c2abbd554368 * test: migrate all Sonnet 4.5 fixtures to Sonnet 5 Use Sonnet 5 consistently in test sessions, fake providers, assertions, and replay catalogs. Remove the legacy catalog compatibility shim and retain model-independent replay coverage using an arbitrary provider model. Conversation captures are not regenerated. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 79d231f3-b08c-460b-89ec-c2abbd554368 * test: fix migration formatting and fixture-authoring examples Apply Ruff and Spotless reflow after model identifiers shortened, and update Java snapshot-authoring templates to Sonnet 5 so new tests do not reintroduce the retired model. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 79d231f3-b08c-460b-89ec-c2abbd554368 * test: trim replay coverage to the Sonnet 5 default Keep missing and empty catalog default coverage and the existing cached catalog test; remove tests added for the deleted compatibility shim. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 79d231f3-b08c-460b-89ec-c2abbd554368 --------- Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 79d231f3-b08c-460b-89ec-c2abbd554368 | 1 个月前 | |
Update SDK snapshot for Copilot CLI 1.0.101-0 | 3 天前 | |
C# API review fixes (#1343) | 4 个月前 | |
C# API review fixes (#1343) | 4 个月前 | |
Use Copilot CLI releases for Node runtime (#2463) * Use Copilot CLI releases for Node runtime Remove the Node SDK dependency on @github/copilot, pin the CLI release and checksums in the repository, and acquire verified platform runtime assets from GitHub Releases. Update packaging, code generation, tests, and cross-SDK version consumers to use the shared release pin. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3043824d-becf-4b5d-b62b-4754511894f7 * Address CLI release runtime review findings Prepare the pinned runtime from Python, .NET, Go, and Rust E2E harnesses; preserve internal npm canaries; and centralize trusted release hashes for Node, Java, and Rust packaging. Update Rust pin validation and bundled runtime contents accordingly. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3043824d-becf-4b5d-b62b-4754511894f7 * Package CLI runtimes by platform Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3043824d-becf-4b5d-b62b-4754511894f7 * Use release checksum manifests Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3043824d-becf-4b5d-b62b-4754511894f7 * Fix cross-platform release runtime CI Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3043824d-becf-4b5d-b62b-4754511894f7 * Address release runtime code scanning Stream Java release archives directly into tar and document generated canary condition branches for CodeQL. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3043824d-becf-4b5d-b62b-4754511894f7 * Fix release runtime CI regressions Preserve the npm runtime layout, use the legacy CLI for standalone extension tests, align the Python account test with current auth behavior, and remove a Go shutdown race. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3043824d-becf-4b5d-b62b-4754511894f7 * Fix runtime packaging integration gaps Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3043824d-becf-4b5d-b62b-4754511894f7 * Report early CLI exits consistently Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3043824d-becf-4b5d-b62b-4754511894f7 * Retrigger PR checks Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3043824d-becf-4b5d-b62b-4754511894f7 * Run npm packaging through Node Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3043824d-becf-4b5d-b62b-4754511894f7 * Resolve runtime path analysis findings Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3043824d-becf-4b5d-b62b-4754511894f7 * Address final runtime review findings Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3043824d-becf-4b5d-b62b-4754511894f7 * Harden release packaging metadata Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3043824d-becf-4b5d-b62b-4754511894f7 * Avoid unsafe runtime path combination Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3043824d-becf-4b5d-b62b-4754511894f7 * Read pinned CLI version in all Rust jobs Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3043824d-becf-4b5d-b62b-4754511894f7 * Isolate legacy extension tests on macOS Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3043824d-becf-4b5d-b62b-4754511894f7 * Address runtime packaging review feedback Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3043824d-becf-4b5d-b62b-4754511894f7 * Split hanging macOS .NET test shard Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3043824d-becf-4b5d-b62b-4754511894f7 * Timeout stalled CLI release downloads Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3043824d-becf-4b5d-b62b-4754511894f7 * Isolate macOS permission test fixtures Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3043824d-becf-4b5d-b62b-4754511894f7 * Isolate macOS RPC test fixtures Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3043824d-becf-4b5d-b62b-4754511894f7 * Cancel blocked tools during resume tests Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3043824d-becf-4b5d-b62b-4754511894f7 * Use cross-target cancellation wait Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3043824d-becf-4b5d-b62b-4754511894f7 * Stabilize cross-platform E2E cleanup Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3043824d-becf-4b5d-b62b-4754511894f7 * Finish CLI runtime rebase Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3043824d-becf-4b5d-b62b-4754511894f7 * Synchronize Go session event shutdown Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3043824d-becf-4b5d-b62b-4754511894f7 * Stabilize event fidelity ordering checks Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3043824d-becf-4b5d-b62b-4754511894f7 * Wait for disconnected tools to unregister Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3043824d-becf-4b5d-b62b-4754511894f7 * Update rebased CLI release pin Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3043824d-becf-4b5d-b62b-4754511894f7 --------- Copilot-Session: 3043824d-becf-4b5d-b62b-4754511894f7 | 1 个月前 | |
Update SDK snapshot for Copilot CLI 1.0.101-0 | 3 天前 | |
Update SDK snapshot for Copilot CLI 1.0.92-4 | 18 天前 | |
Fix SDK test completion races and timeout cleanup (#2642) * Fix approve-all permission test event subscription race Subscribe before sending the permission E2E prompt so an ephemeral session.idle cannot be lost. Exercise the shared scenario against fake RPC with idle before and after the send reply, reusing the abort regression event fence and preserving the 120-second E2E timeout. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Eliminate remaining .NET test completion subscription races Replace post-send history-backfill waits with a send-and-wait helper that preserves the 120-second budget and requires a current-turn assistant message. Keep SendAsync under test with pre-armed completion observation. Exercise the shared helper with early events and reject missing or previous-turn-only answers. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Make Node test completion subscriptions race-free Replace unsafe post-send waits with sendAndWait or a trigger-based helper that subscribes before work starts. Remove ephemeral-idle history fallback, retain send behavior assertions and test budgets, and add deterministic early-event and cleanup regressions. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Pre-arm Go test completion and recovery subscriptions Separate live event waiters from reads of already-completed history. Install listeners synchronously before sends, handler release, and abort/recovery operations; preserve caller contexts and required assistant output. Add deterministic fake-RPC regressions with ephemeral idle omitted from history. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Close Python test completion and scheduled-listener races Use send_and_wait for ordinary turns and synchronously subscribe before sends, aborts, and pending-work operations. Remove ephemeral-idle backfill, retain per-caller timeouts and error policies, and cover early RPC completion plus cancellation cleanup without initializing E2E runtime from unit tests. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Wait for controlled Node send RPC before completing it CI exposed five regression fixtures completing a fake send before trace-context setup reached the RPC handler. Await the existing sendStarted fence so the RPC resolver is installed before delivering its response, without sleeps or timeout changes. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Preserve Python timeout diagnostics before async cleanup Capture suspended await chains, pending RPC metadata, session and transport state, and Python thread stacks at the original pytest-timeout signal. Sample native threads for macOS in-process failures and preserve evidence in xdist reports and CI artifacts without changing timeout or failure semantics. Add deterministic diagnostic regressions and subprocess coverage for xdist reporting, including real POSIX signal timeouts during test calls and fixture teardown. Generated by Copilot Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Add opt-in fail-first Python timeout reproduction dispatch Keep ordinary PR and reusable checks unchanged. The manual reproduce_timeout input selects a single macOS/inprocess job, runs up to five complete pytest/xdist suites, and exits on the first failure with its original status and existing diagnostic artifacts. Preserve the 20-minute job budget. Validated extracted shell syntax and injected failures on invocations 1, 3, and 5, plus the five-success path. Generated by Copilot Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Cancel abandoned Python test task after recording its timeout pytest-timeout's signal interrupts run_until_complete without cancelling the test coroutine. Its held session disconnect lock can then block module cleanup. Identify exactly that task from the interrupted runner's traceback and schedule cancellation after preserving diagnostics; do not cancel unrelated tasks, force-stop the runtime, or hide the first failure. Add actual-plugin/module-fixture regressions for lock-only cleanup recovery and a still-unresponsive runtime. Both retain the original failed test; the latter still reports teardown failure. POSIX uses the real signal timer and Windows invokes the same plugin handler at the event-loop boundary. Generated by Copilot Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Bound Python timeout reproduction scopes within the job budget Limit the full-suite diagnostic scope to two invocations and add an allowlisted session-config scope with ten invocations. Preserve pytest/xdist options and stop at the first nonzero status. Record started/completed invocations, only mark complete after all pass, and attempt diagnostic artifact upload even after cancellation. Ordinary PR/reusable tests and the 20-minute budgets are unchanged. Validated extracted shell syntax, both count limits, first/middle/last failures, exit 130, process interruption, and rejection of unsupported targets. Generated by Copilot Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Preserve bounded macOS .NET hang diagnostics Keep the existing dotnet test command and its selection unchanged. Record allowlisted build/runtime/test/shutdown progress and owned process metadata, then collect bounded native stack samples and terminate only the owned process group before the job deadline. Retain artifacts on failure, cancellation, and successful diagnostic controls. Add focused watchdog regressions including macOS sampling and POSIX pipe-retention cleanup. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Capture Go and Windows .NET hangs before CI deadlines Retain goroutine and bounded managed/native stack evidence before the outer job timeout. Reuse the watchdog with owned Windows Job Object cleanup and preserve test selection, assertions, timeouts, and original failures. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Complete the Python persisted-session fixture before cleanup Use the existing synthetic inference response helpers and observe the completed turn before saving and listing session metadata. Preserve nonempty discriminator assertions and always stop the per-test client when detach fails. Add shared-scenario ordering and cleanup controls. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Remove investigation-only CI instrumentation Restore all three SDK workflows to the PR base and remove the now-unused .NET and Go watchdogs, stack collectors, diagnostic TestMain, supporting tests and documentation. Remove the Python manual reproduction dispatch documentation. Keep the completion fixes, Python interrupted-task cleanup and their regression coverage. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> | 1 个月前 | |
Update @github/copilot to 1.0.76-5 (#2140) * Update @github/copilot to 1.0.76-5 - Updated nodejs and test harness dependencies - Re-ran code generators - Formatted generated code * Fix SDK compatibility with Copilot 1.0.76-5 Update protocol generators and handwritten adapters for the latest RPC schema, including session filesystem SQLite transactions and newly required request fields. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 7b5e2763-c535-4d58-bd7d-409c5d27c448 * Preserve SDK compatibility in Copilot update Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 7b5e2763-c535-4d58-bd7d-409c5d27c448 * Format SessionFs transaction changes Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 7b5e2763-c535-4d58-bd7d-409c5d27c448 * Fix Windows shell timeout test timing Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 7b5e2763-c535-4d58-bd7d-409c5d27c448 * Apply nightly Rust formatting Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 7b5e2763-c535-4d58-bd7d-409c5d27c448 --------- Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Mackinnon Buck <mackinnon.buck@gmail.com> Copilot-Session: 7b5e2763-c535-4d58-bd7d-409c5d27c448 | 2 个月前 | |
Update SDK snapshot for Copilot CLI 1.0.91-0 | 22 天前 | |
Add .NET BYOK E2E coverage (#2010) * Add .NET BYOK E2E coverage Reuse conceptual replay snapshots across Anthropic Messages, OpenAI Responses, and OpenAI Chat Completions, and add three Ubuntu in-process CI legs. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 85a40918-bd95-440b-b6e9-97c757a71f8c * Normalize Anthropic adjacent user turns Collapse runtime-specific blank-line expansion so conceptual replay snapshots match recovery turns consistently. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 85a40918-bd95-440b-b6e9-97c757a71f8c * Document potential BYOK E2E gaps Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 85a40918-bd95-440b-b6e9-97c757a71f8c * Restore workflow path quoting Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 85a40918-bd95-440b-b6e9-97c757a71f8c * Preserve the .NET test matrix Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 85a40918-bd95-440b-b6e9-97c757a71f8c * Clarify replay harness test leg Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 85a40918-bd95-440b-b6e9-97c757a71f8c * Use existing replay harness test coverage Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 85a40918-bd95-440b-b6e9-97c757a71f8c * Simplify BYOK replay harness Make non-CAPI replay explicitly read-only so provider response parsing and SSE aggregation are unnecessary. Keep protocol-complete forward rendering, clarify backend trait naming, and rename the .NET proxy wrapper to reflect its protocol-neutral role. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 85a40918-bd95-440b-b6e9-97c757a71f8c * Unify replay protocol paths Select a protocol descriptor once per backend so CAPI and BYOK share routing, canonical matching, errors, JSON/SSE responses, and exchange inspection. Replay compaction directly from canonical snapshots instead of synthesizing provider-specific responses. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 85a40918-bd95-440b-b6e9-97c757a71f8c * Fix Responses replay stream lifecycle Keep initial Responses events in progress and empty until their matching delta and done events, and use the isolated E2E context when injecting a BYOK provider. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 85a40918-bd95-440b-b6e9-97c757a71f8c | 3 个月前 | |
Update SDK snapshot for Copilot CLI 1.0.91-1 | 22 天前 | |
Update SDK snapshot for Copilot CLI 1.0.91-1 | 22 天前 | |
Add .NET BYOK E2E coverage (#2010) * Add .NET BYOK E2E coverage Reuse conceptual replay snapshots across Anthropic Messages, OpenAI Responses, and OpenAI Chat Completions, and add three Ubuntu in-process CI legs. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 85a40918-bd95-440b-b6e9-97c757a71f8c * Normalize Anthropic adjacent user turns Collapse runtime-specific blank-line expansion so conceptual replay snapshots match recovery turns consistently. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 85a40918-bd95-440b-b6e9-97c757a71f8c * Document potential BYOK E2E gaps Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 85a40918-bd95-440b-b6e9-97c757a71f8c * Restore workflow path quoting Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 85a40918-bd95-440b-b6e9-97c757a71f8c * Preserve the .NET test matrix Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 85a40918-bd95-440b-b6e9-97c757a71f8c * Clarify replay harness test leg Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 85a40918-bd95-440b-b6e9-97c757a71f8c * Use existing replay harness test coverage Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 85a40918-bd95-440b-b6e9-97c757a71f8c * Simplify BYOK replay harness Make non-CAPI replay explicitly read-only so provider response parsing and SSE aggregation are unnecessary. Keep protocol-complete forward rendering, clarify backend trait naming, and rename the .NET proxy wrapper to reflect its protocol-neutral role. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 85a40918-bd95-440b-b6e9-97c757a71f8c * Unify replay protocol paths Select a protocol descriptor once per backend so CAPI and BYOK share routing, canonical matching, errors, JSON/SSE responses, and exchange inspection. Replay compaction directly from canonical snapshots instead of synthesizing provider-specific responses. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 85a40918-bd95-440b-b6e9-97c757a71f8c * Fix Responses replay stream lifecycle Keep initial Responses events in progress and empty until their matching delta and done events, and use the isolated E2E context when injecting a BYOK provider. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 85a40918-bd95-440b-b6e9-97c757a71f8c | 3 个月前 | |
C# API review fixes (#1343) | 4 个月前 | |
Update SDK snapshot for Copilot CLI 1.0.101-0 | 3 天前 | |
Update SDK snapshot for Copilot CLI 1.0.101-0 | 3 天前 | |
Update SDK snapshot for Copilot CLI 1.0.97-0 | 10 天前 | |
Update @github/copilot to 1.0.67 (#1860) * Update @github/copilot to 1.0.67 - Updated nodejs and test harness dependencies - Re-ran code generators - Formatted generated code * Fix hook tests for Copilot 1.0.67 Adapt hook E2E coverage to assert SDK callbacks are invoked now that the runtime accepts hook handlers. Include missing client-global RPC types generated from the updated schema. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Update generated Go RPC comments Include experimental annotations emitted by the Go code generator for newly generated RPC types so generated-file verification stays clean. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Fix Python session FS rename overwrite Use Path.replace in the E2E provider so Windows can overwrite existing workspace metadata files when the runtime renames temporary files into place. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Address hook review comments Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> --------- Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Stephen Toub <stoub@microsoft.com> Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> | 3 个月前 | |
Update SDK snapshot for Copilot CLI 1.0.92-4 | 18 天前 | |
Update SDK snapshot for Copilot CLI 1.0.90-6 | 22 天前 | |
Update SDK snapshot for Copilot CLI 1.0.94-5 | 14 天前 | |
Update SDK snapshot for Copilot CLI 1.0.101-0 | 3 天前 | |
Update SDK snapshot for Copilot CLI 1.0.101-0 | 3 天前 | |
Expand cross-SDK scenario and RPC E2E coverage (#2724) Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> | 1 个月前 | |
Update SDK snapshot for Copilot CLI 1.0.101-0 | 3 天前 | |
Update SDK snapshot for Copilot CLI 1.0.90-6 | 22 天前 | |
Expand cross-SDK scenario and RPC E2E coverage (#2724) Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> | 1 个月前 | |
Expand cross-SDK scenario and RPC E2E coverage (#2724) Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> | 1 个月前 | |
Update SDK snapshot for Copilot CLI 1.0.101-0 | 3 天前 | |
Update SDK snapshot for Copilot CLI 1.0.101-0 | 3 天前 | |
Expand cross-SDK scenario and RPC E2E coverage (#2724) Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> | 1 个月前 | |
Update SDK snapshot for Copilot CLI 1.0.90-6 | 22 天前 | |
Update SDK snapshot for Copilot CLI 1.0.90-6 | 22 天前 | |
Update SDK snapshot for Copilot CLI 1.0.90-6 | 22 天前 | |
Update SDK snapshot for Copilot CLI 1.0.93-3 | 16 天前 | |
Update SDK snapshot for Copilot CLI 1.0.89-2 | 28 天前 | |
Update SDK snapshot for Copilot CLI 1.0.101-0 | 3 天前 | |
Fix session start subscription tests (#2737) Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> | 1 个月前 | |
Expand cross-SDK scenario and RPC E2E coverage (#2724) Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> | 1 个月前 | |
Update SDK snapshot for Copilot CLI 1.0.89-5 | 26 天前 | |
Expand cross-SDK scenario and RPC E2E coverage (#2724) Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> | 1 个月前 | |
Expand cross-SDK scenario and RPC E2E coverage (#2724) Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> | 1 个月前 | |
test: update replay harness default to Claude Sonnet 5 (#2472) * test: update replay harness default to Claude Sonnet 5 Preserve explicit legacy-model replay while advertising a supported default in historical catalogs. Update synthetic C# catalogs, model-list expectations, and the model-specific rate-limit fixture. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * test: preserve legacy selection in catalog and vision fixtures Advertise Sonnet 4.5 alongside the current default when no capture exists, and explicitly pin capability-toggle tests to their existing model so they do not switch model families mid-test. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * test: use Sonnet 5 for both vision capability turns Migrate session creation and capability updates together across Node, Python, Go, and C#. Update the shared fixture catalogs without changing conversation captures. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 79d231f3-b08c-460b-89ec-c2abbd554368 * test: migrate all Sonnet 4.5 fixtures to Sonnet 5 Use Sonnet 5 consistently in test sessions, fake providers, assertions, and replay catalogs. Remove the legacy catalog compatibility shim and retain model-independent replay coverage using an arbitrary provider model. Conversation captures are not regenerated. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 79d231f3-b08c-460b-89ec-c2abbd554368 * test: fix migration formatting and fixture-authoring examples Apply Ruff and Spotless reflow after model identifiers shortened, and update Java snapshot-authoring templates to Sonnet 5 so new tests do not reintroduce the retired model. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 79d231f3-b08c-460b-89ec-c2abbd554368 * test: trim replay coverage to the Sonnet 5 default Keep missing and empty catalog default coverage and the existing cached catalog test; remove tests added for the deleted compatibility shim. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 79d231f3-b08c-460b-89ec-c2abbd554368 --------- Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 79d231f3-b08c-460b-89ec-c2abbd554368 | 1 个月前 | |
Update SDK snapshot for Copilot CLI 1.0.101-0 | 3 天前 | |
Update SDK snapshot for Copilot CLI 1.0.89-2 | 28 天前 | |
Update SDK snapshot for Copilot CLI 1.0.101-0 | 3 天前 | |
Add .NET BYOK E2E coverage (#2010) * Add .NET BYOK E2E coverage Reuse conceptual replay snapshots across Anthropic Messages, OpenAI Responses, and OpenAI Chat Completions, and add three Ubuntu in-process CI legs. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 85a40918-bd95-440b-b6e9-97c757a71f8c * Normalize Anthropic adjacent user turns Collapse runtime-specific blank-line expansion so conceptual replay snapshots match recovery turns consistently. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 85a40918-bd95-440b-b6e9-97c757a71f8c * Document potential BYOK E2E gaps Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 85a40918-bd95-440b-b6e9-97c757a71f8c * Restore workflow path quoting Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 85a40918-bd95-440b-b6e9-97c757a71f8c * Preserve the .NET test matrix Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 85a40918-bd95-440b-b6e9-97c757a71f8c * Clarify replay harness test leg Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 85a40918-bd95-440b-b6e9-97c757a71f8c * Use existing replay harness test coverage Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 85a40918-bd95-440b-b6e9-97c757a71f8c * Simplify BYOK replay harness Make non-CAPI replay explicitly read-only so provider response parsing and SSE aggregation are unnecessary. Keep protocol-complete forward rendering, clarify backend trait naming, and rename the .NET proxy wrapper to reflect its protocol-neutral role. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 85a40918-bd95-440b-b6e9-97c757a71f8c * Unify replay protocol paths Select a protocol descriptor once per backend so CAPI and BYOK share routing, canonical matching, errors, JSON/SSE responses, and exchange inspection. Replay compaction directly from canonical snapshots instead of synthesizing provider-specific responses. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 85a40918-bd95-440b-b6e9-97c757a71f8c * Fix Responses replay stream lifecycle Keep initial Responses events in progress and empty until their matching delta and done events, and use the isolated E2E context when injecting a BYOK provider. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 85a40918-bd95-440b-b6e9-97c757a71f8c | 3 个月前 | |
C# API review fixes (#1343) | 4 个月前 | |
Fix MCP E2E send wait race (#1556) Use SendAndWaitAsync in MCP and custom agent configuration tests so the session idle subscription is registered before sending the prompt. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> | 4 个月前 | |
Update @github/copilot to 1.0.64-0 (#1697) * Update @github/copilot to 1.0.64-0 - Updated nodejs and test harness dependencies - Re-ran code generators - Formatted generated code * Fix CI failures from 1.0.64-0 schema regeneration - Go: Rename Type field to Discriminator in SessionBinaryAssetData to avoid conflict with the Type() SessionEventType interface method. Update codegen to handle this pattern automatically. - Java: Add null for new maxInlineBinaryBytes param in SessionOptionsUpdateParams constructor call. - Rust: Add exclude_host_skills field to SkillsDiscoverRequest test instantiations. - Python: Add backwards-compat alias SessionFSReaddirWithTypesEntryType in copilot.rpc (generated name changed casing to SessionFs...). Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Fix remaining CI failures from schema regeneration - Java: Add null for new sourcePlugin/sourcePluginVersion params in McpServer and DiscoveredMcpServer test constructor calls. - Python: Fix ruff I001 import ordering in copilot/rpc.py. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Regenerate Node E2E snapshots for 1.0.64-0 - Re-recorded 58 snapshot files against live 1.0.64-0 CLI/runtime - Removed report_intent tool references (removed in runtime #10303) - Relaxed assertions for model behavior variance - Fixed token passing for resume tests - Skipped hooks_extended postToolUseFailure test (runtime regression: built-in tools unavailable when hooks configured) 384/399 tests passing (8 skipped) Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Normalize platform-specific shell tool names in snapshot matching The 1.0.64-0 runtime removed report_intent; when the model still calls it, the runtime replies 'Available tools that can be called are <list>.' That list contains platform-specific shell tool names (powershell/read_powershell/ ... on Windows, bash/read_bash/... on Linux/macOS), which broke snapshot matching across CI platform legs. Add a normalizeAvailableToolNames tool-result normalizer that maps the shell tool family names in that error list to stable placeholders (\, \, \, \, \), applied symmetrically to stored snapshots and incoming requests. Re-normalize the 45 affected snapshots accordingly so they match on all platforms. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Make vision_disabled snapshot cross-platform With vision off, the model cannot see the image and flails by running a shell command to verify the file exists. The recorded command was the PowerShell-only Test-Path, which fails on Linux/macOS bash (command not found, exit 127), breaking snapshot replay on those CI legs. Replace it with the cross-platform 'echo True', which yields identical normalized output (True, exit 0) on both PowerShell and bash, so the snapshot replays on all platforms. The test's purpose (verifying image_url presence/absence in traffic) is unaffected. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Make session_todos_changed deterministic via single sql call The test asked the model to run three FK-dependent INSERTs. The model issued them as three parallel sql tool calls; their execution order is not deterministic, so on some platforms the todo_deps INSERT raced ahead of its parent todos rows and hit 'FOREIGN KEY constraint failed', diverging from the recorded snapshot (cache miss on macOS CI). Reword the prompt to ask for a single sql tool call containing all three statements in order. Statements within one call run sequentially, so the FK constraint is always satisfied and the snapshot replays deterministically on all platforms. Re-recorded the snapshot accordingly. Verified stable across 3 replay runs. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Fix Go E2E tests for 1.0.64-0 (report_intent removal) Port the Node test-code changes to Go and regenerate Go-specific permission snapshots for the runtime that removed the report_intent tool: - hooks_extended: postToolUse modifiedResult now drives the built-in `view` tool instead of report_intent (matches the shared, already regenerated snapshot); postToolUseFailure is skipped (built-in tools are unavailable when hooks restrict availableTools under 1.0.64-0). - session_todos_changed: align the prompt with the regenerated shared snapshot (single sql tool call with all three statements in order). - permissions: write-operations snapshot copied from the fresh Node recording (identical prompt); shell-commands prompt aligned to a cross-platform `echo test` conversation with a fresh snapshot. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Port E2E test fixes to .NET/Python/Rust/Java for 1.0.64-0 Mirrors the Go fixes (acb410fd) across the remaining SDKs after runtime change #10303 removed the report_intent tool: - hooks_extended modifiedResult test: drive postToolUse via the built-in view tool instead of report_intent (remove availableTools restriction, relax assertion to case-insensitive "done"). [.NET, Python, Rust] - postToolUseFailure test: skip/ignore; built-in tools are unavailable when hooks restrict availableTools, so the failure path can't be exercised under 1.0.64-0. [.NET, Python, Rust] - session_todos_changed: align prompt to the deterministic single-call wording so it matches the regenerated shared snapshot. [.NET, Python, Rust, Java] - permissions: refresh Java-named snapshots (async_permission_handler, resume_session_with_permission_handler, tool_call_id_in_permission_requests) from the regenerated Node equivalents (identical prompts). Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Fix formatting/lint issues in cross-SDK E2E test fixes - rust/tests/e2e/hooks_extended.rs: apply nightly rustfmt (shortening the tool name to "view" lets the closure collapse onto one line). - python: split the long todos PROMPT into implicit string concatenation to satisfy ruff E501 (line <= 100); string content is byte-identical. - dotnet: keep the postToolUseFailure Skip reason on a single line to match the existing codebase convention and dotnet format. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Fix Java spotless format for todos prompt Eclipse formatter pulls .setPrompt( onto the new MessageOptions() line with the long first segment on its own line. Verified with mvn spotless:check. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Fix stale hooks E2E snapshots for .NET/Rust/Java (1.0.64-0) Test-name sanitization differs across SDKs, so .NET/Rust/Java consume differently-named snapshot files than Node/Go/Python for the same hooks tests. Those files still recorded the removed report_intent tool's "Intent logged" success result. Overwrite them with the fresh new-runtime recordings (report_intent -> "does not exist"): - invoke_both_hooks_for_single_tool_call.yaml (Java) - should_invoke_both_pretooluse_and_posttooluse_hooks_for_single_tool_call.yaml (.NET/Rust) - invoke_pre_tool_use_hook_when_model_runs_a_tool.yaml (Java) - invoke_post_tool_use_hook_after_model_runs_a_tool.yaml (Java) Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Make Rust both-hooks E2E test tolerant of report_intent (1.0.64-0) The 1.0.64-0 runtime removed report_intent, so the model's recorded report_intent call now resolves to "does not exist". That fires a preToolUse hook but no postToolUse hook, so the strict assert_eq!(pre.1, post.1) (first pre tool == first post tool) breaks because the first pre hook is report_intent while the first post hook is view. Collect all pre/post tool names and assert a tool appears in both, matching the tolerant assertion the Go reference test already uses. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --------- Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: Stephen Toub <stoub@microsoft.com> Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> | 4 个月前 | |
Update SDK snapshot for Copilot CLI 1.0.92-3 | 20 天前 | |
Update SDK snapshot for Copilot CLI 1.0.93-0 | 17 天前 | |
Fix .NET in-process E2E transport coverage (#1986) * Fix .NET in-process E2E transport Make the in-process E2E matrix use the FFI runtime, restore the native host environment between tests, and align same-client session resume with the other SDKs while preserving routing after failed resumes. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: c71188a1-1445-46aa-9faf-3b73cf6a6dd9 * Keep same-client session resume rejected Preserve the existing .NET session ownership model while allowing resume E2E coverage to run through the in-process transport. Suspend and locally untrack the original test wrapper before resuming so the runtime session remains available without introducing replacement semantics. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --------- Co-authored-by: Steve Sanderson <1101362+SteveSandersonMS@users.noreply.github.com> Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: c71188a1-1445-46aa-9faf-3b73cf6a6dd9 | 2 个月前 | |
Fix CAPI reasoning E2E fixtures (#2181) * Fix CAPI reasoning E2E fixtures Use gpt-5.4 for tests that explicitly configure high reasoning effort, and advertise that model in the streaming replay fixture. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 9b80f6cb-b851-4598-8294-f4431c6f3143 * Fix reasoning effort model mismatch in Node.js, Python, Go, Rust, and Java test suites The same issue from .NET (using models that don't support configurable reasoning with explicit reasoning_effort) existed in the other five SDKs: - setModel tests used gpt-4.1 (non-reasoning) with reasoning_effort=high in Node.js, Python, Go, and Rust — switched to gpt-5.4 in all four - Streaming fidelity tests created sessions without an explicit model; since the shared snapshot was already updated to gpt-5.4 these would have worked, but explicitly specifying model=gpt-5.4 matches the .NET pattern and makes the reasoning-capability requirement self-documenting (Node.js, Python, Go, Rust, Java) - Java has no setModel-with-reasoning test but the streaming fidelity fix still applies Co-authored-by: stephentoub <2642209+stephentoub@users.noreply.github.com> * Isolate Node reasoning model fixture Use a fresh client for the streaming reasoning test so its gpt-5.4 model catalog is not shadowed by the shared client's earlier cached fixture. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 9b80f6cb-b851-4598-8294-f4431c6f3143 * Isolate Node reasoning fixture context Give the streaming reasoning test a dedicated harness context so both stdio and in-process transports use its gpt-5.4 model catalog. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 9b80f6cb-b851-4598-8294-f4431c6f3143 * Isolate reasoning model switch fixtures Load the gpt-5.4 catalog in dedicated test contexts so model-switch assertions exercise the selected reasoning-capable model across SDKs. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 9b80f6cb-b851-4598-8294-f4431c6f3143 * Isolate reasoning streaming fixtures Give the Python, Go, and .NET streaming reasoning tests dedicated proxy contexts so cached model catalogs cannot hide gpt-5.4. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 9b80f6cb-b851-4598-8294-f4431c6f3143 --------- Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com> Co-authored-by: stephentoub <2642209+stephentoub@users.noreply.github.com> Copilot-Session: 9b80f6cb-b851-4598-8294-f4431c6f3143 | 2 个月前 | |
Update SDK snapshot for Copilot CLI 1.0.99-3 | 6 天前 | |
Update SDK snapshot for Copilot CLI 1.0.98-2 | 9 天前 | |
Add .NET BYOK E2E coverage (#2010) * Add .NET BYOK E2E coverage Reuse conceptual replay snapshots across Anthropic Messages, OpenAI Responses, and OpenAI Chat Completions, and add three Ubuntu in-process CI legs. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 85a40918-bd95-440b-b6e9-97c757a71f8c * Normalize Anthropic adjacent user turns Collapse runtime-specific blank-line expansion so conceptual replay snapshots match recovery turns consistently. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 85a40918-bd95-440b-b6e9-97c757a71f8c * Document potential BYOK E2E gaps Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 85a40918-bd95-440b-b6e9-97c757a71f8c * Restore workflow path quoting Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 85a40918-bd95-440b-b6e9-97c757a71f8c * Preserve the .NET test matrix Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 85a40918-bd95-440b-b6e9-97c757a71f8c * Clarify replay harness test leg Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 85a40918-bd95-440b-b6e9-97c757a71f8c * Use existing replay harness test coverage Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 85a40918-bd95-440b-b6e9-97c757a71f8c * Simplify BYOK replay harness Make non-CAPI replay explicitly read-only so provider response parsing and SSE aggregation are unnecessary. Keep protocol-complete forward rendering, clarify backend trait naming, and rename the .NET proxy wrapper to reflect its protocol-neutral role. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 85a40918-bd95-440b-b6e9-97c757a71f8c * Unify replay protocol paths Select a protocol descriptor once per backend so CAPI and BYOK share routing, canonical matching, errors, JSON/SSE responses, and exchange inspection. Replay compaction directly from canonical snapshots instead of synthesizing provider-specific responses. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 85a40918-bd95-440b-b6e9-97c757a71f8c * Fix Responses replay stream lifecycle Keep initial Responses events in progress and empty until their matching delta and done events, and use the isolated E2E context when injecting a BYOK provider. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 85a40918-bd95-440b-b6e9-97c757a71f8c | 3 个月前 | |
Fix SDK test completion races and timeout cleanup (#2642) * Fix approve-all permission test event subscription race Subscribe before sending the permission E2E prompt so an ephemeral session.idle cannot be lost. Exercise the shared scenario against fake RPC with idle before and after the send reply, reusing the abort regression event fence and preserving the 120-second E2E timeout. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Eliminate remaining .NET test completion subscription races Replace post-send history-backfill waits with a send-and-wait helper that preserves the 120-second budget and requires a current-turn assistant message. Keep SendAsync under test with pre-armed completion observation. Exercise the shared helper with early events and reject missing or previous-turn-only answers. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Make Node test completion subscriptions race-free Replace unsafe post-send waits with sendAndWait or a trigger-based helper that subscribes before work starts. Remove ephemeral-idle history fallback, retain send behavior assertions and test budgets, and add deterministic early-event and cleanup regressions. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Pre-arm Go test completion and recovery subscriptions Separate live event waiters from reads of already-completed history. Install listeners synchronously before sends, handler release, and abort/recovery operations; preserve caller contexts and required assistant output. Add deterministic fake-RPC regressions with ephemeral idle omitted from history. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Close Python test completion and scheduled-listener races Use send_and_wait for ordinary turns and synchronously subscribe before sends, aborts, and pending-work operations. Remove ephemeral-idle backfill, retain per-caller timeouts and error policies, and cover early RPC completion plus cancellation cleanup without initializing E2E runtime from unit tests. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Wait for controlled Node send RPC before completing it CI exposed five regression fixtures completing a fake send before trace-context setup reached the RPC handler. Await the existing sendStarted fence so the RPC resolver is installed before delivering its response, without sleeps or timeout changes. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Preserve Python timeout diagnostics before async cleanup Capture suspended await chains, pending RPC metadata, session and transport state, and Python thread stacks at the original pytest-timeout signal. Sample native threads for macOS in-process failures and preserve evidence in xdist reports and CI artifacts without changing timeout or failure semantics. Add deterministic diagnostic regressions and subprocess coverage for xdist reporting, including real POSIX signal timeouts during test calls and fixture teardown. Generated by Copilot Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Add opt-in fail-first Python timeout reproduction dispatch Keep ordinary PR and reusable checks unchanged. The manual reproduce_timeout input selects a single macOS/inprocess job, runs up to five complete pytest/xdist suites, and exits on the first failure with its original status and existing diagnostic artifacts. Preserve the 20-minute job budget. Validated extracted shell syntax and injected failures on invocations 1, 3, and 5, plus the five-success path. Generated by Copilot Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Cancel abandoned Python test task after recording its timeout pytest-timeout's signal interrupts run_until_complete without cancelling the test coroutine. Its held session disconnect lock can then block module cleanup. Identify exactly that task from the interrupted runner's traceback and schedule cancellation after preserving diagnostics; do not cancel unrelated tasks, force-stop the runtime, or hide the first failure. Add actual-plugin/module-fixture regressions for lock-only cleanup recovery and a still-unresponsive runtime. Both retain the original failed test; the latter still reports teardown failure. POSIX uses the real signal timer and Windows invokes the same plugin handler at the event-loop boundary. Generated by Copilot Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Bound Python timeout reproduction scopes within the job budget Limit the full-suite diagnostic scope to two invocations and add an allowlisted session-config scope with ten invocations. Preserve pytest/xdist options and stop at the first nonzero status. Record started/completed invocations, only mark complete after all pass, and attempt diagnostic artifact upload even after cancellation. Ordinary PR/reusable tests and the 20-minute budgets are unchanged. Validated extracted shell syntax, both count limits, first/middle/last failures, exit 130, process interruption, and rejection of unsupported targets. Generated by Copilot Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Preserve bounded macOS .NET hang diagnostics Keep the existing dotnet test command and its selection unchanged. Record allowlisted build/runtime/test/shutdown progress and owned process metadata, then collect bounded native stack samples and terminate only the owned process group before the job deadline. Retain artifacts on failure, cancellation, and successful diagnostic controls. Add focused watchdog regressions including macOS sampling and POSIX pipe-retention cleanup. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Capture Go and Windows .NET hangs before CI deadlines Retain goroutine and bounded managed/native stack evidence before the outer job timeout. Reuse the watchdog with owned Windows Job Object cleanup and preserve test selection, assertions, timeouts, and original failures. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Complete the Python persisted-session fixture before cleanup Use the existing synthetic inference response helpers and observe the completed turn before saving and listing session metadata. Preserve nonempty discriminator assertions and always stop the per-test client when detach fails. Add shared-scenario ordering and cleanup controls. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Remove investigation-only CI instrumentation Restore all three SDK workflows to the PR base and remove the now-unused .NET and Go watchdogs, stack collectors, diagnostic TestMain, supporting tests and documentation. Remove the Python manual reproduction dispatch documentation. Keep the completion fixes, Python interrupted-task cleanup and their regression coverage. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> | 1 个月前 | |
Fix SDK test completion races and timeout cleanup (#2642) * Fix approve-all permission test event subscription race Subscribe before sending the permission E2E prompt so an ephemeral session.idle cannot be lost. Exercise the shared scenario against fake RPC with idle before and after the send reply, reusing the abort regression event fence and preserving the 120-second E2E timeout. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Eliminate remaining .NET test completion subscription races Replace post-send history-backfill waits with a send-and-wait helper that preserves the 120-second budget and requires a current-turn assistant message. Keep SendAsync under test with pre-armed completion observation. Exercise the shared helper with early events and reject missing or previous-turn-only answers. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Make Node test completion subscriptions race-free Replace unsafe post-send waits with sendAndWait or a trigger-based helper that subscribes before work starts. Remove ephemeral-idle history fallback, retain send behavior assertions and test budgets, and add deterministic early-event and cleanup regressions. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Pre-arm Go test completion and recovery subscriptions Separate live event waiters from reads of already-completed history. Install listeners synchronously before sends, handler release, and abort/recovery operations; preserve caller contexts and required assistant output. Add deterministic fake-RPC regressions with ephemeral idle omitted from history. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Close Python test completion and scheduled-listener races Use send_and_wait for ordinary turns and synchronously subscribe before sends, aborts, and pending-work operations. Remove ephemeral-idle backfill, retain per-caller timeouts and error policies, and cover early RPC completion plus cancellation cleanup without initializing E2E runtime from unit tests. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Wait for controlled Node send RPC before completing it CI exposed five regression fixtures completing a fake send before trace-context setup reached the RPC handler. Await the existing sendStarted fence so the RPC resolver is installed before delivering its response, without sleeps or timeout changes. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Preserve Python timeout diagnostics before async cleanup Capture suspended await chains, pending RPC metadata, session and transport state, and Python thread stacks at the original pytest-timeout signal. Sample native threads for macOS in-process failures and preserve evidence in xdist reports and CI artifacts without changing timeout or failure semantics. Add deterministic diagnostic regressions and subprocess coverage for xdist reporting, including real POSIX signal timeouts during test calls and fixture teardown. Generated by Copilot Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Add opt-in fail-first Python timeout reproduction dispatch Keep ordinary PR and reusable checks unchanged. The manual reproduce_timeout input selects a single macOS/inprocess job, runs up to five complete pytest/xdist suites, and exits on the first failure with its original status and existing diagnostic artifacts. Preserve the 20-minute job budget. Validated extracted shell syntax and injected failures on invocations 1, 3, and 5, plus the five-success path. Generated by Copilot Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Cancel abandoned Python test task after recording its timeout pytest-timeout's signal interrupts run_until_complete without cancelling the test coroutine. Its held session disconnect lock can then block module cleanup. Identify exactly that task from the interrupted runner's traceback and schedule cancellation after preserving diagnostics; do not cancel unrelated tasks, force-stop the runtime, or hide the first failure. Add actual-plugin/module-fixture regressions for lock-only cleanup recovery and a still-unresponsive runtime. Both retain the original failed test; the latter still reports teardown failure. POSIX uses the real signal timer and Windows invokes the same plugin handler at the event-loop boundary. Generated by Copilot Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Bound Python timeout reproduction scopes within the job budget Limit the full-suite diagnostic scope to two invocations and add an allowlisted session-config scope with ten invocations. Preserve pytest/xdist options and stop at the first nonzero status. Record started/completed invocations, only mark complete after all pass, and attempt diagnostic artifact upload even after cancellation. Ordinary PR/reusable tests and the 20-minute budgets are unchanged. Validated extracted shell syntax, both count limits, first/middle/last failures, exit 130, process interruption, and rejection of unsupported targets. Generated by Copilot Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Preserve bounded macOS .NET hang diagnostics Keep the existing dotnet test command and its selection unchanged. Record allowlisted build/runtime/test/shutdown progress and owned process metadata, then collect bounded native stack samples and terminate only the owned process group before the job deadline. Retain artifacts on failure, cancellation, and successful diagnostic controls. Add focused watchdog regressions including macOS sampling and POSIX pipe-retention cleanup. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Capture Go and Windows .NET hangs before CI deadlines Retain goroutine and bounded managed/native stack evidence before the outer job timeout. Reuse the watchdog with owned Windows Job Object cleanup and preserve test selection, assertions, timeouts, and original failures. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Complete the Python persisted-session fixture before cleanup Use the existing synthetic inference response helpers and observe the completed turn before saving and listing session metadata. Preserve nonempty discriminator assertions and always stop the per-test client when detach fails. Add shared-scenario ordering and cleanup controls. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Remove investigation-only CI instrumentation Restore all three SDK workflows to the PR base and remove the now-unused .NET and Go watchdogs, stack collectors, diagnostic TestMain, supporting tests and documentation. Remove the Python manual reproduction dispatch documentation. Keep the completion fixes, Python interrupted-task cleanup and their regression coverage. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> | 1 个月前 | |
Update SDK snapshot for Copilot CLI 1.0.91-1 | 22 天前 | |
Fix SDK test completion races and timeout cleanup (#2642) * Fix approve-all permission test event subscription race Subscribe before sending the permission E2E prompt so an ephemeral session.idle cannot be lost. Exercise the shared scenario against fake RPC with idle before and after the send reply, reusing the abort regression event fence and preserving the 120-second E2E timeout. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Eliminate remaining .NET test completion subscription races Replace post-send history-backfill waits with a send-and-wait helper that preserves the 120-second budget and requires a current-turn assistant message. Keep SendAsync under test with pre-armed completion observation. Exercise the shared helper with early events and reject missing or previous-turn-only answers. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Make Node test completion subscriptions race-free Replace unsafe post-send waits with sendAndWait or a trigger-based helper that subscribes before work starts. Remove ephemeral-idle history fallback, retain send behavior assertions and test budgets, and add deterministic early-event and cleanup regressions. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Pre-arm Go test completion and recovery subscriptions Separate live event waiters from reads of already-completed history. Install listeners synchronously before sends, handler release, and abort/recovery operations; preserve caller contexts and required assistant output. Add deterministic fake-RPC regressions with ephemeral idle omitted from history. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Close Python test completion and scheduled-listener races Use send_and_wait for ordinary turns and synchronously subscribe before sends, aborts, and pending-work operations. Remove ephemeral-idle backfill, retain per-caller timeouts and error policies, and cover early RPC completion plus cancellation cleanup without initializing E2E runtime from unit tests. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Wait for controlled Node send RPC before completing it CI exposed five regression fixtures completing a fake send before trace-context setup reached the RPC handler. Await the existing sendStarted fence so the RPC resolver is installed before delivering its response, without sleeps or timeout changes. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Preserve Python timeout diagnostics before async cleanup Capture suspended await chains, pending RPC metadata, session and transport state, and Python thread stacks at the original pytest-timeout signal. Sample native threads for macOS in-process failures and preserve evidence in xdist reports and CI artifacts without changing timeout or failure semantics. Add deterministic diagnostic regressions and subprocess coverage for xdist reporting, including real POSIX signal timeouts during test calls and fixture teardown. Generated by Copilot Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Add opt-in fail-first Python timeout reproduction dispatch Keep ordinary PR and reusable checks unchanged. The manual reproduce_timeout input selects a single macOS/inprocess job, runs up to five complete pytest/xdist suites, and exits on the first failure with its original status and existing diagnostic artifacts. Preserve the 20-minute job budget. Validated extracted shell syntax and injected failures on invocations 1, 3, and 5, plus the five-success path. Generated by Copilot Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Cancel abandoned Python test task after recording its timeout pytest-timeout's signal interrupts run_until_complete without cancelling the test coroutine. Its held session disconnect lock can then block module cleanup. Identify exactly that task from the interrupted runner's traceback and schedule cancellation after preserving diagnostics; do not cancel unrelated tasks, force-stop the runtime, or hide the first failure. Add actual-plugin/module-fixture regressions for lock-only cleanup recovery and a still-unresponsive runtime. Both retain the original failed test; the latter still reports teardown failure. POSIX uses the real signal timer and Windows invokes the same plugin handler at the event-loop boundary. Generated by Copilot Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Bound Python timeout reproduction scopes within the job budget Limit the full-suite diagnostic scope to two invocations and add an allowlisted session-config scope with ten invocations. Preserve pytest/xdist options and stop at the first nonzero status. Record started/completed invocations, only mark complete after all pass, and attempt diagnostic artifact upload even after cancellation. Ordinary PR/reusable tests and the 20-minute budgets are unchanged. Validated extracted shell syntax, both count limits, first/middle/last failures, exit 130, process interruption, and rejection of unsupported targets. Generated by Copilot Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Preserve bounded macOS .NET hang diagnostics Keep the existing dotnet test command and its selection unchanged. Record allowlisted build/runtime/test/shutdown progress and owned process metadata, then collect bounded native stack samples and terminate only the owned process group before the job deadline. Retain artifacts on failure, cancellation, and successful diagnostic controls. Add focused watchdog regressions including macOS sampling and POSIX pipe-retention cleanup. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Capture Go and Windows .NET hangs before CI deadlines Retain goroutine and bounded managed/native stack evidence before the outer job timeout. Reuse the watchdog with owned Windows Job Object cleanup and preserve test selection, assertions, timeouts, and original failures. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Complete the Python persisted-session fixture before cleanup Use the existing synthetic inference response helpers and observe the completed turn before saving and listing session metadata. Preserve nonempty discriminator assertions and always stop the per-test client when detach fails. Add shared-scenario ordering and cleanup controls. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> * Remove investigation-only CI instrumentation Restore all three SDK workflows to the PR base and remove the now-unused .NET and Go watchdogs, stack collectors, diagnostic TestMain, supporting tests and documentation. Remove the Python manual reproduction dispatch documentation. Keep the completion fixes, Python interrupted-task cleanup and their regression coverage. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> | 1 个月前 | |
Update SDK snapshot for Copilot CLI 1.0.92-4 | 18 天前 |
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 30 天前 | ||
| 4 个月前 | ||
| 2 个月前 | ||
| 1 个月前 | ||
| 3 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 10 天前 | ||
| 4 个月前 | ||
| 3 天前 | ||
| 18 天前 | ||
| 3 天前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 3 天前 | ||
| 4 个月前 | ||
| 4 个月前 | ||
| 1 个月前 | ||
| 3 天前 | ||
| 18 天前 | ||
| 1 个月前 | ||
| 2 个月前 | ||
| 22 天前 | ||
| 3 个月前 | ||
| 22 天前 | ||
| 22 天前 | ||
| 3 个月前 | ||
| 4 个月前 | ||
| 3 天前 | ||
| 3 天前 | ||
| 10 天前 | ||
| 3 个月前 | ||
| 18 天前 | ||
| 22 天前 | ||
| 14 天前 | ||
| 3 天前 | ||
| 3 天前 | ||
| 1 个月前 | ||
| 3 天前 | ||
| 22 天前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 3 天前 | ||
| 3 天前 | ||
| 1 个月前 | ||
| 22 天前 | ||
| 22 天前 | ||
| 22 天前 | ||
| 16 天前 | ||
| 28 天前 | ||
| 3 天前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 26 天前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 3 天前 | ||
| 28 天前 | ||
| 3 天前 | ||
| 3 个月前 | ||
| 4 个月前 | ||
| 4 个月前 | ||
| 4 个月前 | ||
| 20 天前 | ||
| 17 天前 | ||
| 2 个月前 | ||
| 2 个月前 | ||
| 6 天前 | ||
| 9 天前 | ||
| 3 个月前 | ||
| 1 个月前 | ||
| 1 个月前 | ||
| 22 天前 | ||
| 1 个月前 | ||
| 18 天前 |