Repository navigation
test: characterize TypeScript client lifecycle boundaries (S3) - #140
Conversation
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Copilot-Session: e9d001d1-6e2b-442b-a159-3f0ebb10b36b
There was a problem hiding this comment.
🟢 Approval recommended
No active review issues block the lifecycle characterization tests, and existing formatter gaps are tracked separately in #138 and #139.
No open issues 🎉
What changed in this PR
Adds deterministic characterization tests for TypeScript client lifecycle boundaries, completing S3 (#137) without changing production behavior. Existing formatter lifecycle gaps remain tracked separately in #138 and #139.
Changes:
- Strengthens restart ordering, busy/ready status, and creation/start/trace failure assertions.
- Covers overlapping restart requests, retry coalescing, package-change debounce, and disposal cancellation.
- Verifies late-result cleanup, deactivation ordering, and formatter ownership across replacements and stale client events.
| File | Description |
|---|---|
typescript/tests/server.test.ts |
Tests asynchronous restart ordering, status transitions, failure cleanup, and listener disposal. |
typescript/tests/activation.test.ts |
Tests retry and debounce timing, context disposal, deactivation ordering, and formatter lifecycle boundaries. |
Review effort: Balanced
|
🔒 Automated review in progress — Rich Chiodo (@rchiodo) is auto-reviewing this PR. |
|
Reviewed commit: Result: 🔴 Verification detailsVerification: Automated verification is best effort. The PR author remains responsible for testing. Summary: [unavailable] Container verification could not start and local execution was not authorized for this PR HEAD: Podman machine 'pyrx-automation' is not running. Test runs: none recorded. |
Rich Chiodo (rchiodo)
left a comment
There was a problem hiding this comment.
Approved via Review Center.
d70cc19
into
main
Summary
Closes #137.
Validation
Windows ARM64, Node 24.17.0:
git diff --checkpasses. Two in-memory regression probes confirm the strengthened retry and creation-failure assertions.format-checkstill reports 14 unchanged production-source files, as noted in [S3] Characterize TypeScript client lifecycle boundaries #137. Both changed test files also fail a direct Prettier check on the baseline.