Skip to content

test: characterize TypeScript client lifecycle boundaries (S3) - #140

Merged
Eduardo Villalpando Mello (edvilme) merged 1 commit into
mainfrom
test/s3-client-lifecycle
Nov 12, 2026
Merged

Eduardo Villalpando Mello (edvilme) merged 1 commit into
mainfrom
test/s3-client-lifecycle

Conversation

@edvilme

Copy link
Copy Markdown
Contributor

Summary

Closes #137.

Validation

Windows ARM64, Node 24.17.0:

  • Targeted lifecycle tests: 39 passing.
  • Full TypeScript suite: 152 passing.
  • TypeScript build and source lint pass; changed test files also pass ESLint (pre-existing warnings only).
  • git diff --check passes. Two in-memory regression probes confirm the strengthened retry and creation-failure assertions.
  • The existing format-check still 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.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: e9d001d1-6e2b-442b-a159-3f0ebb10b36b

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🟢 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

@rchiodo

Copy link
Copy Markdown
Contributor

🔒 Automated review in progress — Rich Chiodo (@rchiodo) is auto-reviewing this PR.

@rchiodo

Copy link
Copy Markdown
Contributor

Reviewed commit: 0f854d883e99591281137a5a508d547f6e573927

Result: 🔴 could-not-verify

Verification details

Verification: 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 &#x27;pyrx-automation&#x27; is not running.

Test runs: none recorded.

@rchiodo Rich Chiodo (rchiodo) left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approved via Review Center.

@rchiodo Rich Chiodo (rchiodo) added the review-auto:approved Automated review: no blocking findings (approval posted). label Nov 12, 2026
@edvilme
Eduardo Villalpando Mello (edvilme) merged commit d70cc19 into main Nov 12, 2026
20 of 21 checks passed
@edvilme
Eduardo Villalpando Mello (edvilme) deleted the test/s3-client-lifecycle branch November 12, 2026 00:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

no-changelog Updates not included in the release notes or changelog review-auto:approved Automated review: no blocking findings (approval posted).

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[S3] Characterize TypeScript client lifecycle boundaries

3 participants