pmacs/tests
Levi Neuwirth 3b8e426f90
test(window): pin the cross-frontend exception, and fix two ledger counts
panel_commit_dedication_refusal matches on `fid` as well as on the
profile: a nested commit for a DIFFERENT frontend may dedicate that
frontend's own side slot, because resolve_placement consults only the
requesting frontend's panel_capable and its own one side window, so
nothing done to B can change where A's side request lands.

That promise was documented and unpinned. Both revision 9 nesting
tests drive a single frontend, so the comparison is trivially true
throughout them: deleting it, and making any outer "panel" contract
globally restrictive, passed the whole file.

a_nested_commit_for_another_frontend_may_dedicate_its_own_slot runs
two frontends. While an outer "panel" commit for A is in force, a
nested commit for B dedicates B's slot and is ALLOWED --- and B's
slot is asserted really dedicated afterwards, not merely unrefused.
The far side runs in the same test: A's slot stays undedicated and
A's result still lands in A's panel, so the row cannot pass by having
weakened the restriction generally.

This is the suite's only POSITIVE row; every other asserts a refusal,
which is the shape it was thinnest on. An exception only the doc
comment knows about is one review round from being simplified out.

Mutation-checked: deleting `&& contract.destination.frontend == fid`
fails ONLY this test. Both single-frontend nesting tests pass under
it, which is the evidence they are independent of the frontend match
rather than merely looking so. journey_acceptance (47),
dired_acceptance (31) and cargo test --lib (1920) stay green.

Two ledger corrections, both section-local:

* "Eight writes exist; five are reachable" then listed four. The
  fifth is quit_window's QuitAction::Restore --- the site proved
  unreachable and guarded anyway. It now appears in the list that
  justifies it, and the bullet counts what actually matters: all five
  are guarded.
* The revision 9 mutation paragraph had the preservation counts
  REVERSED (journey 31 / dired 47). It is journey 47 / dired 31,
  matching the bullet further up and measured per target. The same
  reversal is in 394fa43's commit message; that is left as written
  rather than rewriting a pushed commit, and the ledger now says so
  where the numbers are, so a reader following the SHA takes the
  corrected pair.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_016bqGA6s9tTUFzYpbeW3tai
2026-08-10 14:11:43 +02:00
..
common test(isolation): migrate the corpus off the ambient roots 2026-07-31 18:48:45 -04:00
fixtures V0.2-prerequisite pull-forward + M10.11 clean audit round 2026-05-18 10:31:31 -04:00
support docs: record the pipe-masking gate trap in the handoff 2026-07-29 12:25:29 -04:00
acceptance.rs Collapse if-let nests into let-chains (MSRV-1.95 collapsible_if sweep) 2026-05-18 14:29:36 -04:00
ambient_isolation_acceptance.rs fix(isolation): the isolation suite must not itself be ambient 2026-07-31 19:46:18 -04:00
auto_indent_acceptance.rs test(isolation): migrate the corpus off the ambient roots 2026-07-31 18:48:45 -04:00
auto_indent_crdt_acceptance.rs fix(lint): make the crdt targets pass clippy for the first time 2026-08-01 09:38:36 -04:00
auto_pair_acceptance.rs test(isolation): migrate the corpus off the ambient roots 2026-07-31 18:48:45 -04:00
auto_pair_crdt_acceptance.rs feat(edit): auto-pairing (Arc 2) 2026-07-11 17:11:56 +01:00
autosave_acceptance.rs test(isolation): migrate the corpus off the ambient roots 2026-07-31 18:48:45 -04:00
bottom_panel_stage1_acceptance.rs test(panel): pin that the OMITTED default degrades on a pre-panel frontend 2026-08-03 11:16:08 -04:00
bottom_panel_stage2a_acceptance.rs test(isolation): migrate the corpus off the ambient roots 2026-07-31 18:48:45 -04:00
bottom_panel_stage2b_daemon_acceptance.rs fix(tests): eight version assertions the v22 bump broke, five of them defects 2026-08-07 20:15:33 +02:00
bottom_panel_stage2b_gpu_acceptance.rs fix(tests): eight version assertions the v22 bump broke, five of them defects 2026-08-07 20:15:33 +02:00
bottom_panel_stage2b_protocol_acceptance.rs fix(tests): eight version assertions the v22 bump broke, five of them defects 2026-08-07 20:15:33 +02:00
comment_toggle_acceptance.rs test(isolation): migrate the corpus off the ambient roots 2026-07-31 18:48:45 -04:00
compile_mode_acceptance.rs feat(view): horizontal scroll, text and decorations together 2026-08-07 22:43:17 +02:00
compile_mode_crdt_acceptance.rs review round 1: the crdt suite Stage 3 missed, and two stale explanations 2026-08-04 12:08:28 +02:00
completion_popup_acceptance.rs test(isolation): migrate the corpus off the ambient roots 2026-07-31 18:48:45 -04:00
config_registry_acceptance.rs test(isolation): migrate the corpus off the ambient roots 2026-07-31 18:48:45 -04:00
cua_region_acceptance.rs test(isolation): migrate the corpus off the ambient roots 2026-07-31 18:48:45 -04:00
desktop_acceptance.rs test(isolation): migrate the corpus off the ambient roots 2026-07-31 18:48:45 -04:00
destination_capture_acceptance.rs test(window): pin the cross-frontend exception, and fix two ledger counts 2026-08-10 14:11:43 +02:00
dired_acceptance.rs test(isolation): migrate the corpus off the ambient roots 2026-07-31 18:48:45 -04:00
discovery_acceptance.rs fix(help): forwarders must work programmatically, not only from M-x 2026-07-31 20:31:00 -04:00
editops_acceptance.rs test(isolation): migrate the corpus off the ambient roots 2026-07-31 18:48:45 -04:00
find_file_acceptance.rs test(isolation): migrate the corpus off the ambient roots 2026-07-31 18:48:45 -04:00
folding_acceptance.rs test(isolation): migrate the corpus off the ambient roots 2026-07-31 18:48:45 -04:00
folding_stage2_acceptance.rs test(isolation): migrate the corpus off the ambient roots 2026-07-31 18:48:45 -04:00
full_grid_resync_acceptance.rs fix(frontend): honor full_grid — the flag existed and nothing read it 2026-08-06 15:05:59 +02:00
gate_script_acceptance.rs test(gate): assert the real plan's (name, command) pair, not one half 2026-08-09 18:02:36 +02:00
gpu_font_acceptance.rs test(isolation): migrate the corpus off the ambient roots 2026-07-31 18:48:45 -04:00
gpu_initial_target_acceptance.rs Implement session-scoped GPU initial targets 2026-07-23 19:03:25 -04:00
gpu_invocation_acceptance.rs test(isolation): migrate the corpus off the ambient roots 2026-07-31 18:48:45 -04:00
gui_zoom_acceptance.rs docs(zoom): the ties both round up, they do not oppose 2026-08-06 17:50:03 +02:00
horizontal_scroll_acceptance.rs docs(test): five adopters, four of them decorator families 2026-08-07 22:49:59 +02:00
injection_acceptance.rs test(isolation): migrate the corpus off the ambient roots 2026-07-31 18:48:45 -04:00
journey_acceptance.rs test(isolation): migrate the corpus off the ambient roots 2026-07-31 18:48:45 -04:00
kill_ring_acceptance.rs test(isolation): migrate the corpus off the ambient roots 2026-07-31 18:48:45 -04:00
lean4_server_acceptance.rs test(isolation): migrate the corpus off the ambient roots 2026-07-31 18:48:45 -04:00
lean4_stage1_acceptance.rs test(isolation): migrate the corpus off the ambient roots 2026-07-31 18:48:45 -04:00
lean_input_acceptance.rs test(isolation): migrate the corpus off the ambient roots 2026-07-31 18:48:45 -04:00
line_wrap_acceptance.rs fix(editor): the renderer never got the mode everything else was reading 2026-08-07 18:48:11 +02:00
listview_acceptance.rs feat(view): horizontal scroll, text and decorations together 2026-08-07 22:43:17 +02:00
long_line_readable_acceptance.rs feat(view): horizontal scroll, text and decorations together 2026-08-07 22:43:17 +02:00
lsp_dispatch_seams_acceptance.rs test(isolation): migrate the corpus off the ambient roots 2026-07-31 18:48:45 -04:00
lsp_latex_acceptance.rs fix(lsp): a `/` search boundary no longer disables the LaTeX marker walk 2026-08-10 10:48:49 +02:00
lsp_multi_root_acceptance.rs test(isolation): migrate the corpus off the ambient roots 2026-07-31 18:48:45 -04:00
lsp_spawn_guidance_acceptance.rs test(isolation): migrate the corpus off the ambient roots 2026-07-31 18:48:45 -04:00
m3_acceptance.rs Initial commit: v0.1.0 2026-05-03 19:51:06 -04:00
m4_acceptance.rs fix(tests): bound the LSP fixture's project detection — retires R8 (#226) 2026-08-09 08:54:06 +00:00
m5_5_acceptance.rs test(isolation): migrate the corpus off the ambient roots 2026-07-31 18:48:45 -04:00
m5_6_acceptance.rs Initial commit: v0.1.0 2026-05-03 19:51:06 -04:00
m5_7_acceptance.rs test(isolation): migrate the corpus off the ambient roots 2026-07-31 18:48:45 -04:00
m5_8_acceptance.rs test(isolation): migrate the corpus off the ambient roots 2026-07-31 18:48:45 -04:00
m5_perf_acceptance.rs test(isolation): migrate the corpus off the ambient roots 2026-07-31 18:48:45 -04:00
m6_4_repl_acceptance.rs test(isolation): migrate the corpus off the ambient roots 2026-07-31 18:48:45 -04:00
m6_5_repl_acceptance.rs test(isolation): migrate the corpus off the ambient roots 2026-07-31 18:48:45 -04:00
m6_7_scrollback_acceptance.rs test(isolation): migrate the corpus off the ambient roots 2026-07-31 18:48:45 -04:00
m6_8_multi_repl_acceptance.rs test(isolation): migrate the corpus off the ambient roots 2026-07-31 18:48:45 -04:00
m6_perf_acceptance.rs test(isolation): migrate the corpus off the ambient roots 2026-07-31 18:48:45 -04:00
m7_3_acceptance.rs Fix CI and Documentation issues 2026-05-04 10:19:19 -04:00
m7_5_acceptance.rs fix(packages): basename-collision reject, SHA-256 cache key, timeout thread join, commit→revision, dead-code (F-005/F-009–F-012) 2026-07-03 18:47:23 -04:00
m7_6_acceptance.rs fix(packages): basename-collision reject, SHA-256 cache key, timeout thread join, commit→revision, dead-code (F-005/F-009–F-012) 2026-07-03 18:47:23 -04:00
m7_7_acceptance.rs M7 tail: package system, audit lint, lockfile, resolver 2026-05-07 16:50:37 -04:00
m7_8_acceptance.rs M7 tail: package system, audit lint, lockfile, resolver 2026-05-07 16:50:37 -04:00
m7_9_acceptance.rs M7 tail: package system, audit lint, lockfile, resolver 2026-05-07 16:50:37 -04:00
m7_10_acceptance.rs fix(packages): basename-collision reject, SHA-256 cache key, timeout thread join, commit→revision, dead-code (F-005/F-009–F-012) 2026-07-03 18:47:23 -04:00
m7_11_acceptance.rs test(isolation): migrate the corpus off the ambient roots 2026-07-31 18:48:45 -04:00
m7_review_acceptance.rs M7 tail: package system, audit lint, lockfile, resolver 2026-05-07 16:50:37 -04:00
m8_1_acceptance.rs test(isolation): migrate the corpus off the ambient roots 2026-07-31 18:48:45 -04:00
m8_1c_acceptance.rs M7 tail: package system, audit lint, lockfile, resolver 2026-05-07 16:50:37 -04:00
m8_1d_acceptance.rs M7 tail: package system, audit lint, lockfile, resolver 2026-05-07 16:50:37 -04:00
m8_2_acceptance.rs test(isolation): migrate the corpus off the ambient roots 2026-07-31 18:48:45 -04:00
m8_3_acceptance.rs test(isolation): migrate the corpus off the ambient roots 2026-07-31 18:48:45 -04:00
m8_5_acceptance.rs test(isolation): migrate the corpus off the ambient roots 2026-07-31 18:48:45 -04:00
m8_6_acceptance.rs test(isolation): migrate the corpus off the ambient roots 2026-07-31 18:48:45 -04:00
m8_7_acceptance.rs test(isolation): migrate the corpus off the ambient roots 2026-07-31 18:48:45 -04:00
m8_9_acceptance.rs test(isolation): migrate the corpus off the ambient roots 2026-07-31 18:48:45 -04:00
m8_10_acceptance.rs test(isolation): migrate the corpus off the ambient roots 2026-07-31 18:48:45 -04:00
m9_1_acceptance.rs test(isolation): migrate the corpus off the ambient roots 2026-07-31 18:48:45 -04:00
m9_2_acceptance.rs test(isolation): migrate the corpus off the ambient roots 2026-07-31 18:48:45 -04:00
m9_3_acceptance.rs test(isolation): migrate the corpus off the ambient roots 2026-07-31 18:48:45 -04:00
m9_4_acceptance.rs test(isolation): migrate the corpus off the ambient roots 2026-07-31 18:48:45 -04:00
m9_5_acceptance.rs test(isolation): migrate the corpus off the ambient roots 2026-07-31 18:48:45 -04:00
m9_6_acceptance.rs test(isolation): migrate the corpus off the ambient roots 2026-07-31 18:48:45 -04:00
m9_7_acceptance.rs test(isolation): migrate the corpus off the ambient roots 2026-07-31 18:48:45 -04:00
m9_8_acceptance.rs test(isolation): migrate the corpus off the ambient roots 2026-07-31 18:48:45 -04:00
m10_2_perf.rs M10.10 ship gate 2026-05-13 16:28:46 -04:00
m10_10_perf.rs M10.10 ship gate 2026-05-13 16:28:46 -04:00
m10_10_postcard_unknown_variant.rs M10.10 ship gate 2026-05-13 16:28:46 -04:00
m10_11_acceptance.rs M11.1: semantic-frontend protocol scaffolding (wire + capability) 2026-05-18 19:39:07 -04:00
m10_11_perf.rs M10.11: adversarial two-laptop acceptance + jitter; the M10 arc verified 2026-05-15 20:51:00 -04:00
m11_5_semantic_acceptance.rs test(isolation): migrate the corpus off the ambient roots 2026-07-31 18:48:45 -04:00
mode_system_wiring_acceptance.rs Keep the v21 panel wire dark for v20 clients 2026-07-28 14:08:17 -04:00
overlay_reattach_acceptance.rs test(isolation): migrate the corpus off the ambient roots 2026-07-31 18:48:45 -04:00
persistence_acceptance.rs test(isolation): migrate the corpus off the ambient roots 2026-07-31 18:48:45 -04:00
query_replace_acceptance.rs test(isolation): migrate the corpus off the ambient roots 2026-07-31 18:48:45 -04:00
resource_reconciliation_acceptance.rs test(isolation): migrate the corpus off the ambient roots 2026-07-31 18:48:45 -04:00
save_clobber_guard_acceptance.rs test(isolation): migrate the corpus off the ambient roots 2026-07-31 18:48:45 -04:00
statusline_segments_acceptance.rs fix(tests): eight version assertions the v22 bump broke, five of them defects 2026-08-07 20:15:33 +02:00
tab_width_acceptance.rs feat(view): horizontal scroll, text and decorations together 2026-08-07 22:43:17 +02:00
terminal_config_acceptance.rs test(isolation): migrate the corpus off the ambient roots 2026-07-31 18:48:45 -04:00
terminal_copy_mode_acceptance.rs feat(view): horizontal scroll, text and decorations together 2026-08-07 22:43:17 +02:00
theme_faces_acceptance.rs test(isolation): migrate the corpus off the ambient roots 2026-07-31 18:48:45 -04:00
typed_edit_chain_acceptance.rs test(isolation): migrate the corpus off the ambient roots 2026-07-31 18:48:45 -04:00
vterm_stage1_acceptance.rs test(isolation): migrate the corpus off the ambient roots 2026-07-31 18:48:45 -04:00
vterm_stage2_acceptance.rs fix(test): retire R2 and R4 — two readiness predicates weaker than their assertions 2026-08-05 13:41:05 +02:00
vterm_stage3_acceptance.rs fix(tests): eight version assertions the v22 bump broke, five of them defects 2026-08-07 20:15:33 +02:00
worker_shutdown_acceptance.rs test(isolation): migrate the corpus off the ambient roots 2026-07-31 18:48:45 -04:00