Repository navigation
WIP: preserve generic application identity in inhabitance checks - #10569
gunbai-bot[bot] wants to merge 6 commits into
Conversation
c2bb5a6 to
4bff996
Compare
Not ready for merge: generated mirrors predate the latest source changes; equal argument aliases and one field-projection false refusal remain. Three-way cycle outcome is modeled but not yet consumed. Preserve this investigation before further integration; no completed floor guarantee is claimed.
Correct product-member accessor and represent nongeneric bases at arity zero. Add regression fixtures. Generated mirrors remain pending; recursive alias comparison and typed outcome consumers are unfinished. This is a recoverable implementation checkpoint, not a merge-ready repair.
Record the measured capture population and preserve the first capture across unchanged rebinding inputs. Source checkpoint only: generated mirrors, recursive comparison and typed cycle consumers remain pending.
2cb30b6 to
9522a1b
Compare
|
Closing this draft. The branch Why closed. The authoring session produced no turn after 2026-09-05 and is being archived. More substantially, the measurement this PR rests on was taken against a tree that no longer exists: What should be salvaged, as its own small PR against post-#10727 main: the callable guard itself. What should not be carried forward without re-deriving it: the owner/argument compensation, and any population figure in this body. #10727 plus its refinement closure now occupies that seam. Re-derive against the merged tree before defending any part of it — do not assume the compensation is still load-bearing, and do not assume it is dissolved either. The The three independent findings recorded in #10567 (parser limitation, general alias-head cycles, unit-variant generic argument identity) are unaffected by this closure. |
Work in progress for dashboard node
adhoc-0a02fa3a-821. This draft was opened automatically from the implementation checkpoint; it is not ready for review or merge.The callable guard mistakes generic type parameters for function parameters. Correcting it to recognize Arrow lets the existing structured mismatch judgment reject
Out<Int>/Other. That shared correction also exposes valid product-alias false refusals, so the implementation carries declaration-bound owner and argument facts to the existing inhabitance judgment. These are separate causal paths: the motivating coproduct is repaired by the guard; product routing repairs collateral alias comparisons.Current checkpoints include the additive
std.type_applicationcarrier, authored formal/field capture, bare-marker checks, and regression fixtures. The latest source represents nongeneric projection bases at arity zero while keeping conformance routing generic-only. The first bootstrap regeneration now includes these source changes; convergence and final semantic evidence remain pending. No hand-edited probe mirror is an implementation artifact.Validation so far is exploratory, not final acceptance: ref-bound baseline
03a3b91fb4c1admits the foreign constructor and rejects the monomorphic control. Generated optional-carrier probe87880de7-9bd7-45db-87dd-5df73f30beaerejects the foreign constructor, accepts Acc, and distinguishes cross-module homonyms. Later throwaway probes isolate formal/field syntax loss and recursive alias identity; they do not establish the shipped artifact. The arity-zero probe26493831-ccf5-42fb-bdc9-e064508e05b8passes output-policy admission and retains Out/Other refusal and Acc acceptance.Remaining before ready: complete recursive argument identity and its bounded typed refusals; consume the modeled cycle/projection outcomes; verify valid generic calls acquire no unintended advisories; complete bootstrap convergence, including byte-for-byte reproduction of the interpreted root by the compiled emitter; execute final controls, deletion mutations and relevant corpus checks on one final tree; update failure-mode rungs to match that evidence. Equivalent nested aliases still falsely refuse in the old-comparator probe.
Three independent findings are recorded in #10567 (parser limitation, general alias-head cycles, and unit-variant generic argument identity). They remain separate from this implementation. The unit-variant population is not claimed repaired here. The #10473 compensation is retained; its later deletion requires independent refusal, a combined-tree deletion mutation, and coverage of every population it currently protects.
Rebase checkpoint
c2bb5a61563080d04b0c40e260260dc5306bb009includes main1001fd03c74. Actual archived-seed generation 802f9c68 produced the nine installed changed mirrors (158 surfaces adjudicated). The current root producer was interpreted against the emitted-population manifest, and the resulting tree built all three release binaries successfully in 23e02049. No generated Rust was hand-edited. This is bootstrap/build evidence, not convergence or final semantic acceptance. The PR remains draft.Declared return positions remain an explicit open boundary:
wrap<T>() -> Out<T> { Zed { q: 1 } }is still accepted in the measured probe. The retained return-boundary witness names that defect; the discriminating payload control usesHolder<T>.r: Out<T>instead. No generic-return wall is claimed.