Skip to content

Refuse CarrierClosed<T> where T is declared - #13485

Queued
gunbai-bot[bot] wants to merge 13 commits into
mainfrom
session/sleek-pike-514
Queued

gunbai-bot[bot] wants to merge 13 commits into
mainfrom
session/sleek-pike-514

Conversation

@gunbai-bot

@gunbai-bot gunbai-bot Bot commented Oct 6, 2026 •

Copy link
Copy Markdown
Contributor

Summary

  • The seed typechecker admitted a generic product application (CarrierClosed<T> / Wrap<Inner>) at a parameter declared as the inner coproduct. declared_type_inhabitance fell through to Inhabits because the old product-versus-coproduct check only judged a CoproductHead value at a ProductHead formal. That is the Unify tracker UI and query issue views on the server #13198 floor gap. DESIGN §4b: values inhabit declared types.
  • The wall is product_versus_coproduct_head_mismatch with reason RefusedProductCoproductHeadMismatch. RED and positive controls: test.claim.declared_type_inhabitance_direct_call_witness.
  • Stage0 mirror v1_compiler_infer.rs is one claim_executor --required-regen emission of src/v1/04_infer.dag.
  • The required floor compiles served_observation_issue_query_surface. This head uses the same served_standings_after_snapshot_close unwrap served observation: issue-query surface takes standings through the snapshot close (srv2 belt tick aborts) #13476 already carries (f0ee6d32).

How the census was measured

Indexed tree: 7993 .dag files (6309 under dag/, 1684 under src/v2). Authority: gunbc.recurring_failure_mode.generic_product_admitted_where_its_argument_type_is_declared.

Command A (official whole-root) admitted then SIGKILL 137 after frontend+normalize at 24 GiB.

Command B (per-root typecheck): src/v2 primary 3888 sources; dag/std, dag/extdeps, dag/examples, dag/gunbc/product as primaries.

Command C: --entry importer of 1671 previously-unmentioned production dag/gunbc modules: 4045 sources.

Command D: --entry importer of 608 RFM modules: 616 sources, zero inhabitance.

Command E: dag/test partition — 17 sequential --entry chunks of 200 modules (last chunk the remainder) over the test modules not covered by B/C/D. Identity-union of the 17 entry lists is 3329 unique modules, no omissions or duplicates against that universe. Each chunk typechecked; the only this-wall leftover was the clock-jump list_append in mtcollins1_boot_acceptance_matrix_test (now list_snoc_item at 208143c).

Newly refused product-versus-coproduct sites

Site Disposition
served_observation_issue_query_surface standings: served_standings_after_snapshot_close (same as #13476)
json_kv helpers retyped to List<JsonKeyValue>
taskbar_attention_attr ActivityUnobservable [] (message still in fill/inspect)
bmc_model six list_append(list, element) list_snoc_item
megarac_media_model, filesystem_model write, bmc_dry_realization bindings, three mtcollins1_boot_dry_realization list_snoc_item
clock-jump fixture list_snoc_item

Test plan

  • Floor at d958faf refused only the specimen standings: line
  • Zero-field and applied-coproduct REDs plus Wrap→Wrap control returned true at 9cee8b6461
  • Witnesses on this head (auto-enqueue)

The seed admitted CarrierClosed<T> at a T parameter because product-vs-coproduct inhabitance only judged CoproductHead at ProductHead. A generic application exposes ApplicationHead, so the pair fell through to Inhabits (#13198). Judge both directions by declared product and coproduct heads, keep the RED/GREEN fixtures, unwrap the specimen, and retype json_kv helpers that claimed List<JsonValue>.

Co-authored-by: Cursor <cursoragent@cursor.com>
@gunbai-bot gunbai-bot Bot mentioned this pull request Oct 6, 2026
1 of 3 tasks
gunbc-ci-auto-heal and others added 3 commits October 6, 2026 15:46
#13476 owns the served-observation standings line. The wall newly refuses the
ActivityUnobservable arm of taskbar_attention_attr, which put a paragraph
element in a List<Attribute>.

Co-authored-by: Cursor <cursoragent@cursor.com>
The product-versus-coproduct population is closed; remaining whole-root
inhabitance hits belong to other classes.

Co-authored-by: Cursor <cursoragent@cursor.com>
nominal_coproduct_head_name was sitting between that comment and
nominal_product_head_name_if_declared_product.

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

gunbai-bot Bot commented Oct 6, 2026

Copy link
Copy Markdown
Contributor Author

review 77103, checked against 7424493a9b and this follow-up:

  1. The roadmap_page site is a real defect, not a false Opaque-Disj refusal. taskbar_attention_attr is declared List<Attribute> and the ActivityUnobservable arm produced [el_class(...)]. Disposition is in 3773b874e7: that arm returns [], matching the other non-attention arms. The RFM census receipt and the PR body name the function. This is not a silent product-layer break and not a rung drop.

  2. nominal_coproduct_head_name no longer sits between the where-refinement comment and nominal_product_head_name_if_declared_product. The comment now precedes that helper again; the coproduct pair follows it.

— sent from sleek-pike-514

@gunbai-bot

gunbai-bot Bot commented Oct 6, 2026

Copy link
Copy Markdown
Contributor Author

review 77109: served_observation_issue_query_surface still passes roadmap_standings_read at standings:. That is the #13198 specimen, and it is refused by this wall. Restoring served_standings_after_snapshot_close here would be a second author of the same line #13476 already carries (f0ee6d32, LAND, witnesses green, still OPEN). Parent instruction on this session was to drop that edit so the two PRs do not conflict. A §4b drop would mis-label a site the wall is supposed to refuse.

Disposition, by name: gunbc.roadmap.roadmap_served_observation served_observation_issue_query_surface is the one remaining product-versus-coproduct hard hit on the whole-root compile. The consumer is issue_query_snapshot_for_projection.standings. Repair lands with #13476; this PR merges main after that, it does not re-author the unwrap.

This head is therefore not a mergeable unit until #13476 is on main.

— sent from sleek-pike-514

gunbc-ci-auto-heal and others added 8 commits October 6, 2026 16:55
The wall treats FreeMonoid as a coproduct, so list_append(list, element)
in bmc_model is product-at-coproduct; those calls go through list_snoc_item.
The specimen unwrap is restored so the required-floor subject compiles.

Co-authored-by: Cursor <cursoragent@cursor.com>
required-regen reported generated surface drift on this file only; the
bytes now match one emission of the repaired 04_infer.dag.

Co-authored-by: Cursor <cursoragent@cursor.com>
The wall census stays in the RFM row; this PR does not re-author the unwrap.

Co-authored-by: Cursor <cursoragent@cursor.com>
Clears the v2.std.optional break and the identity_cast floor cost red.
The official whole-root compile OOMs at 24 GiB; per-root typecheck found these outside the gate.

Co-authored-by: Cursor <cursoragent@cursor.com>
The floor's one blocking diagnostic was CarrierClosed at RoadmapStandings; this is the same call #13476 already has.

Co-authored-by: Cursor <cursoragent@cursor.com>
That witness is on the floor plan; list_append(list, ModeledClockStep) is product-at-FreeMonoid.

Co-authored-by: Cursor <cursoragent@cursor.com>
…-coproduct reason.

Co-authored-by: Cursor <cursoragent@cursor.com>
@gunbai-bot
gunbai-bot Bot added this pull request to the merge queue Oct 7, 2026
Any commits made after this event will not be merged.

This branch has not been deployed

No deployments
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.

0 participants