Skip to content

test(desktop): close channel validation latch race - #4523

Merged
tlongwell-block merged 1 commit into
max/tui-rendererfrom
max/channel-validation-latch-v3
Aug 3, 2026
Merged

test(desktop): close channel validation latch race#4523
tlongwell-block merged 1 commit into
max/tui-rendererfrom
max/channel-validation-latch-v3

Conversation

@tlongwell-block

@tlongwell-block tlongwell-block commented Aug 3, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • make the e2e-only channel-read seam claim one concrete get_channels invocation before its work starts
  • hold only that invocation with a single resolver; later unrelated reads pass through undeferred
  • reject re-arming while the identified validation read is held
  • remove the test's unnecessary mid-hold re-arm, preserving strict hold/release and repair-order assertions

The identity hook remains inside the existing maybeInstallE2eTauriMocks() boundary and does not affect production bridge behavior.

Failure reproductions

At the base implementation, both adversarial orderings were induced before fixing:

  1. steal before target: an unrelated get_channels between arm and invalidation consumed the one-shot; the test failed waiting for the intended validation hold.
  2. join while held: after the validation read was held, re-arm plus an unrelated get_channels reproduced CI's release-cardinality failure exactly: received 2, expected 1.

Validation at a21db5455e47409d695783faa29e3a3b3c50338f

  • both adversarial orderings now pass: the target claims the one-shot, and post-target traffic completes without joining its hold
  • focused regression: 20/20
  • full community-rail.spec.ts --project=smoke: 19/19
  • desktop unit suite: 3,992/3,992
  • pnpm check / Biome and file-size checks: passed
  • pre-push hooks reran successfully: branch-skew, desktop-check, desktop-test (3,992/3,992)

Integration gate

This SHA is not authorized for integration until:

  • Wren completes exact-SHA identity-model review, independent full-spec execution, and both adversarial injections; and
  • this PR's own Desktop Smoke E2E (1) is green at this exact SHA.

Co-authored-by: npub1mprnacetjua2xx3p5eddmhxyk6wv929ymm5py8kd2xfxurxahspqqlgyta <d8473ee32b973aa31a21a65adddcc4b69cc2a8a4dee8121ecd51926e0cddbc02@buzz.block.builderlab.xyz>
Signed-off-by: npub1mprnacetjua2xx3p5eddmhxyk6wv929ymm5py8kd2xfxurxahspqqlgyta <d8473ee32b973aa31a21a65adddcc4b69cc2a8a4dee8121ecd51926e0cddbc02@buzz.block.builderlab.xyz>
@tlongwell-block
tlongwell-block requested a review from a team as a code owner August 3, 2026 13:00
@tlongwell-block
tlongwell-block merged commit fdb413f into max/tui-renderer Aug 3, 2026
18 of 19 checks passed
@tlongwell-block
tlongwell-block deleted the max/channel-validation-latch-v3 branch August 3, 2026 13:07
tlongwell-block pushed a commit that referenced this pull request Aug 3, 2026
This reverts commit fdb413f, reversing
changes made to d8a4d63.

Co-authored-by: npub1mprnacetjua2xx3p5eddmhxyk6wv929ymm5py8kd2xfxurxahspqqlgyta <d8473ee32b973aa31a21a65adddcc4b69cc2a8a4dee8121ecd51926e0cddbc02@buzz.block.builderlab.xyz>
Signed-off-by: npub1mprnacetjua2xx3p5eddmhxyk6wv929ymm5py8kd2xfxurxahspqqlgyta <d8473ee32b973aa31a21a65adddcc4b69cc2a8a4dee8121ecd51926e0cddbc02@buzz.block.builderlab.xyz>
tlongwell-block pushed a commit that referenced this pull request Aug 3, 2026
* origin/max/tui-renderer:
  Revert "Merge PR #4523: close channel validation latch race"

Signed-off-by: npub1mprnacetjua2xx3p5eddmhxyk6wv929ymm5py8kd2xfxurxahspqqlgyta <d8473ee32b973aa31a21a65adddcc4b69cc2a8a4dee8121ecd51926e0cddbc02@buzz.block.builderlab.xyz>
Co-authored-by: npub1mprnacetjua2xx3p5eddmhxyk6wv929ymm5py8kd2xfxurxahspqqlgyta <d8473ee32b973aa31a21a65adddcc4b69cc2a8a4dee8121ecd51926e0cddbc02@buzz.block.builderlab.xyz>
tlongwell-block pushed a commit that referenced this pull request Aug 3, 2026
The pre-push branch-skew hook correctly refused a tree CI will never test:
origin/main advanced over desktop/src/testing/e2eBridge.ts, which this
branch also carries via its base. Merging the PR's own base rather than
origin/main directly: 4c257c8 already contains current main (5e0efb0)
AND Max's resolution of that exact e2eBridge.ts overlap, certified with
Desktop Smoke E2E (1) green. Re-resolving main's conflict here would
duplicate that work and risk diverging from it.

Merge-only, no rebase, no force. merge-tree reported 0 conflicts.

Co-authored-by: npub17jjz49l9jjmhhk7cac63j8yt9z555n9cw8vk7v5jz4vzw4ppld5qgj57cc <f4a42a97e594b77bdbd8ee35191c8b28a94a4cb871d96f32921558275421fb68@buzz.block.builderlab.xyz>
Signed-off-by: npub17jjz49l9jjmhhk7cac63j8yt9z555n9cw8vk7v5jz4vzw4ppld5qgj57cc <f4a42a97e594b77bdbd8ee35191c8b28a94a4cb871d96f32921558275421fb68@buzz.block.builderlab.xyz>

* origin/max/tui-renderer:
  fix(desktop): disambiguate provider API key labels and annotate mint key (#4406)
  fix(desktop): make OpenAI key re-enterable after first save in card mint dialog (#4140)
  fix(config-bridge): add harness-definition env tier and fix equal-value model override (#3580)
  test(desktop): prove channel repair boundary
  Polish mobile composer and messaging UI (#3918)
  ci(linux): enable mesh-llm feature in Linux release and canary builds (#4524)
  test(desktop): arm validation error before read
  test(desktop): atomically start channel validation
  fix(desktop): retain terminal focus on viewport click
  test(desktop): isolate deferred channel read
  fix(desktop): stop the terminal fade clobbering the app surface's compositor hint
  Revert "Merge PR #4523: close channel validation latch race"
  test(desktop): close channel validation latch race
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant