test: fix the duplicate-envelope race pin for cross-isolate unwrapping - #710
test: fix the duplicate-envelope race pin for cross-isolate unwrapping#710grunch wants to merge 1 commit into
Conversation
… pin The pin was added while envelope unwrapping was synchronous; since the per-message crypto moved into Isolate.run, pumpEventQueue cannot observe the cross-isolate port reply and the assertion ran before the valid envelope finished verifying. The two isolate PRs crossed in flight (the worker-isolate branch was stacked on the conversation-key branch, which predated this test), so CI never ran this combination. Bounded 5 s condition wait, same pattern as dispute_chat_reload_test. The product behaviour is correct: the forged copy fails verification and the valid copy is processed on its own.
|
Warning Review limit reachedNext included review available in 15 minutes. View limit detailsLimit details: You’ve used the included review currently available. You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. Review configuration: ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Team Run ID: 📒 Files selected for processing (1)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
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. |
|
Superseded by #709, closing. The same fix landed on This PR's diff no longer applies (the All the PRs that were red on this test (#711–#715, #717, #718, plus #716 through its base) have had |
Summary
dispute_chat_duplicate_envelope_test.dartfails onmain. Root cause: the pin was added (during #702's review) while envelope unwrapping was synchronous; #705 later moved the per-message crypto intoIsolate.run, andpumpEventQueuecannot observe cross-isolate port replies — the assertion runs before the valid envelope finishes verifying. The two PRs crossed in flight (#705 was stacked on #701, whose branch predated this test), so CI never ran the combination.The product behaviour is correct (verified by log trace): the forged copy fails the p-tag check and the valid copy is processed on its own; only the test's wait was implementation-timed.
Changes
dispute_chat_reload_testin perf: run per-message verify and decrypt off the main isolate #705).Test plan
test/features/disputes/— all green (previously 1 failing onmain)flutter analyze— no new issues🤖 Generated with Claude Code
https://claude.ai/code/session_018fTxqxhpdL5siTgKZqwtur