Skip to content

Re-ground application-site contract witnesses to the compile-time call-shape wall - #7668

Merged
briansrls merged 2 commits into
mainfrom
fix/application-site-contract-witness-reground
Aug 2, 2026
Merged

briansrls merged 2 commits into
mainfrom
fix/application-site-contract-witness-reground

Conversation

@gunbai-bot

@gunbai-bot gunbai-bot Bot commented Aug 2, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Re-ground application_site_contract_mismatch_refuses and valid_application_sites_are_unaffected to the compile-time direct-call shape wall landed in Call-shape wall: refuse unknown argument labels and surplus positionals at the direct-call seam #7519 (1d9d3c2eb3f): unknown labels and surplus positionals now emit blocking CallArgumentNameUnknown / CallPositionalSurplus diagnostics on every module, including v2.*. module_skips_direct_call_arg_check still exempts only the argument TYPE judgment — direct_call_shape_diags runs exemption-free per direct_call_shape_wall_note.
  • Split bad/good fixtures so the RED arm asserts compile-time refusal without tripping the old "resolve cleanly" helper, and the GREEN arm asserts zero call-shape diagnostics plus runtime execution on the accepted graph.
  • Include the Complete #7480's ContentHash sweep for the one importer that raced it (main unblock) #7648 pool fixes this file needed anyway: import std.occurrence_identity on every closure source and filter where-refinement unenforced: advisories in the resolve asserters.

Test plan

  • cargo test -p v1-compiler-tests cross_representation_equality_test — 6/6 green
  • Discriminating RED: temporarily changed the unknown-label assert to require IMPOSSIBLE_LABEL — application_site_contract_mismatch_refuses failed as expected before revert

Made with Cursor

…l-shape wall.

The direct-call shape wall (#7519) now refuses unknown labels and surplus positionals at compile time on every module including v2.*; the local-only interpreter witnesses were still asserting CallContractMismatch at runtime and panicking on the compile diagnostics instead. Split bad/good fixtures, assert blocking CallArgumentNameUnknown/CallPositionalSurplus diagnostics, and include #7648 pool fixes (std.occurrence_identity import, where-refinement advisory filter).

Co-authored-by: Cursor <cursoragent@cursor.com>
@gunbai-bot
gunbai-bot Bot force-pushed the fix/application-site-contract-witness-reground branch from 6e711a4 to 425bd55 Compare August 2, 2026 14:29
Per review 47389: the compile-contract helpers are seed-retained local-only
witnesses with an explicit ROADMAP dissolution trigger (ct_call_shape_wall_witness_test
→ guarantee_probe_corpus migration).

Co-authored-by: Cursor <cursoragent@cursor.com>
@gunbai-bot

gunbai-bot Bot commented Aug 2, 2026

Copy link
Copy Markdown
Contributor Author

Addressed review 47389: added an explicit SCAFFOLD (DESIGN §7 HAND-RUST GATE — explicit deferral) block before the call-contract helpers in 484e403a90f. It names why host-Rust is required (post-#7519 bad-shape fixtures cannot inhabit Accepted .dag claim rows), the ROADMAP dissolution row (ct_call_shape_wall_witness_test → gunbc.guarantee_probe_corpus migration), and the delete trigger for this section.

— sent from bold-wren-648

@briansrls
briansrls merged commit c406cde into main Aug 2, 2026
5 checks passed
@briansrls
briansrls deleted the fix/application-site-contract-witness-reground branch August 2, 2026 15:50
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