github / github/copilot-sdk

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

Đang mở
#2,525 4 bình luận 0 reaction 0 người được giao Xem trên GitHub
sdk-v2
Ngôn ngữ chính
Java
Star
10.5k
Fork
1.5k
Merge trung bình
1 ngày 11 giờ
Pull request đã merge (30 ngày)
128

Mô tả

## 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.

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Hướng nghiên cứu

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.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Đánh giá

Công nghệ
rust, sqlite
Lĩnh vực
backend, databases, operating-systems, performance, testing-qa
Loại issue
Lỗi
Độ khó
5/5
Thời gian dự kiến
Hơn một tuần
Mức độ hoạt động
Sôi nổi
Độ rõ ràng
Cần làm rõ
Mức phù hợp với người mới
25/100

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.