github / github/copilot-sdk

[v2] Complete in-process lifecycle and platform reliability work

Offen
#2,525 4 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
sdk-v2
Vorherrschende Sprache
Java
Sterne
10.5k
Forks
1.5k
Ø Merge
1 T. 11 Std.
Gemergte PRs (30 T.)
127

Beschreibung

## Summary

Complete the remaining in-process runtime lifecycle and platform reliability work required for v2.

These are tracked jobs from #1934, not optional investigation topics. First establish what existing work has already completed, then implement the remainder. If new evidence shows an item no longer applies, document it and obtain maintainer confirmation before closing it without implementation.

## Original concerns

- Windows in-process CI legs for .NET and Rust were disabled because of a `napi-oop` cleanup race. The race was thought unlikely to affect real applications, but the CI legs still needed to be re-enabled and teardown shown to be robust after removing `napi-oop`.
- The underlying runtime did not close SQLite connections after `forceStop`, and possibly not after session disposal. This left locked files on Windows.
- Graceful SQLite shutdown was suspected of being slow. This was the leading hypothesis in #1934 for in-process CI legs taking approximately 25–50% longer than their out-of-process equivalents.

## Required outcomes

- The intended Windows in-process CI coverage is enabled and reliable across SDKs.
- Callback and teardown behavior remains robust after the `napi-oop` cleanup work.
- Force-stop and session disposal release SQLite connections and do not leave locked files on Windows.
- Graceful shutdown does not have unexplained material performance regressions relative to out-of-process operation.
- Any intentionally unsupported platform or test combination is explicitly justified and documented.

## Implementation preparation

- Establish what #1976, #1983, #1986, and #2272 already resolved.
- Reproduce and test any remaining lifecycle or shutdown failures.
- Confirm whether SQLite closure is SDK-owned or requires changes in `github/copilot-cli`, and link the required runtime work.
- Measure shutdown behavior sufficiently to confirm or reject the SQLite performance hypothesis.
- Escalate for maintainer direction if an external runtime defect cannot reasonably be completed for v2.

## Historical context

- #1934
- #1976
- #1983
- #1986
- #2272

## Completion

Deliver the required coverage, teardown, resource-release, and shutdown behavior with reliable regression tests. Any item not implemented requires documented contradictory evidence and explicit maintainer agreement.

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

Start by reading #1934 and determining what #1976, #1983, #1986, and #2272 already resolved. Reproduce the remaining Windows in-process CI, force-stop, session-disposal, and SQLite shutdown behavior, then measure graceful shutdown against out-of-process operation. Done means reliable SDK coverage, teardown and resource-release regression tests, justified unsupported combinations, and maintainer agreement for anything not implemented.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
rust, sqlite
Bereich
backend, databases, operating-systems, performance, testing-qa
Issue-Typ
Bug
Schwierigkeit
5/5
Geschätzter Aufwand
Über eine Woche
Aktivitätsstatus
Aktiv
Klarheit
Muss geklärt werden
Anfängerfreundlichkeit
25/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.