[v2] Complete in-process lifecycle and platform reliability work
- Lenguaje dominante
- Java
- Estrellas
- 10.5k
- Forks
- 1.5k
- Merge medio
- 1 d 11 h
- PR fusionados (30 d)
- 127
Descripción
## 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.
Guía de contribución
Línea de trabajo
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.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- rust, sqlite
- Área
- backend, databases, operating-systems, performance, testing-qa
- Tipo de issue
- Error
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Estado de actividad
- Activo
- Claridad
- Necesita aclaración
- Aptitud para principiantes
- 25/100