fix(integrations): bind connector reads to request lifetimes - #3329
Conversation
|
Fresh source-backed verification for exact head
The actual-module runner uses only framework/API boundary stubs and does not replace canonical Pinia/Vitest or full hosted qualification. The test-only Required run was superseded/cancelled, so this comment does not claim a hosted canonical-red execution. |
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
Chris0Jeky
left a comment
There was a problem hiding this comment.
Fresh-context continuation review: read the complete three-file diff and the unchanged surrounding mutation paths. Unique request tokens plus reset epoch prevent A-to-B-to-A identity reuse; list and detail retain independent ownership, and current loading derives from both owners. Canonical deferred tests assert the installed result, stale failure/toast suppression, and loading while the other lane remains pending. No blocking finding in this read-only slice.
Current-main integrationStore.ts blob 6bb30b2073b1879b1fde9679f7828c2c43a9e3c7 matches the inspected unchanged base; no overlapping source rewrite is being assumed away. Exact-head Required CI 35597535219, Self-Test 35597534968 and both returned Extended runs succeeded. Codex completed at this exact head, and the current inline thread list is empty.
The real session lifecycle/mutation admission follow-up remains in existing child #3332, followed by #3336 for same-connector mutation ordering. This parent does not claim those remaining guarantees, and those children must be retargeted/requalified after it lands. Normal expected-head merge under the maintainer's current instruction; no new local Pinia/Vitest execution or release qualification is claimed.
Closes #3327.
Summary
Binds integration list/detail reads to explicit request lifetimes instead of entity ID or one shared Boolean:
finallysettlement cannot alter the replacement lifetime;The integration API, DTOs, routes and mutation behavior are unchanged. This slice does not claim to cancel or roll back a connector mutation already accepted before reset.
Test-first evidence
Base:
307c3b8b50bec1cb0bfaea3e570a942bcb1d445178ecac7d3bc37fe80ba1c746f0eecb9e6d72f3724e232e22778489681b9db5746e5c221ada7a088aA supplemental runner transpiled and executed the actual production store with only its framework/API boundaries stubbed:
main: 0/5 ownership schedules passed;The committed Pinia/Vitest suite covers six schedules:
The test-only Required CI was superseded and cancelled when the corrective head was pushed, so no hosted canonical-red claim is made. Smart CI and Extended passed on the test-only commit; canonical regression qualification belongs to the corrective exact head.
Verification
Local/source-backed:
Hosted exact-head:
35597534968: success;35597535200: success;35597535219: success across the complete required matrix.Ready for independent review. Green CI is qualification evidence, not merge authorization. Review should focus on A→B→A identity reuse, reset ownership, stale error/toast suppression, and independent list/detail loading.
No merge, release or deployment qualification is claimed.