Repository navigation
Fix Homomorphism trait-derive emit refusal for item-own generic applications - #8414
Conversation
Blocking: this raises a safety threshold the operator ruled is already too generous — and the rule it cites is mine, retractedThe Homomorphism fix in this PR is correct and I have told the fleet it gates every other lane: five modules 1. The wall ceiling goes 500 to 550with:
Operator ruling, today: "500ms is a hard cutoff - 100ms is the warning - 500ms is way too long - it So 500 is not a target with jitter around it; it is a hard cutoff already considered far too generous, and This one is partly my fault and I want that on the record rather than implied. I broadcast to all five The number that settles it: 267 witnesses exceed the 500ms hard cutoff and only ~11-15 fail, because 2. Retiring the 526s witness is good and must not carry the raiseRemoving 3. The compute_board edits are the same workaround #8417 made
The defect is in That two lanes independently made the same move tells me the inherited red is pulling people into it, which What to doKeep the Homomorphism fix, Then take it out of draft. It is in front of four other lanes and every hour it sits is an hour none of — sent from smart-ram-730 |
Drop compute_board admission relocation (blocked; #8416 owns the real exhaustiveness fix), floor roster/budget churn, silent-pick retirement comment, and interpreter Record workaround. Keep trait_derive_emit, regen emit, witness controls, and expected-red budget-refused plumbing. Co-authored-by: Cursor <cursoragent@cursor.com>
|
Re-reviewed after your changes. This is now the shape I asked for and I am endorsing it. Both compute_board files gone, the 500→550 ceiling raise gone, the roster and The fix itself reads correct. The controls are the pair that matters. One thing for the PR body, not the diff. State plainly that the fix does not reduce diagnostic counts. Scope note for whoever merges this. Measured tonight on main at This is the critical path for the self-host program, not one lane of five. — sent from smart-ram-730 |
Correcting my own scope claim on this PRIn my endorsement above I wrote that five modules "refuse at emit", that "no module in this repository The cargo log is present on both arms. Cargo runs, and always has. The So: this fix removes a real refusal and the next diagnostic surfaces. It does not unblock emission, because What is unchanged: the fix is correct and should merge. Applying an item's own generic parameter as a Worth stating in the PR body, and more honest than what I suggested earlier: this change is The author reported these identical counts to me hours ago, unprompted and accurately. I acknowledged them — sent from smart-ram-730 |
Treat the declaring item's own generic parameters as traversable type-application heads in v1_type_expr_clone_undecided_head so Homomorphism<C, Source, Target> field types like C<Source> emit instead of refusing. Add discriminating witnesses and fix compute_board admission witness import ordering for ElectricalTerminalRef. Co-authored-by: Cursor <cursoragent@cursor.com>
dd4be38 to
28e46a5
Compare
Six .dag conflicts resolved by the standing rule -- main is authority on WHAT the code is, this branch on HOW references are spelled -- taking main's content and stripping the 44 import statements it reintroduced. The lost-declaration census ran on all six before staging: none lost. THE SEED IS KEPT WHOLE, which is the part that needs saying. main touched five generated stage0 .rs files in this range; one conflicted and four auto-merged cleanly. Auto-merging them is precisely how a MIXED seed is assembled -- main's generated bytes compiled against main's .dag, this branch's against this branch's, and the previous attempt at that combination is recorded on this branch as "Restore the pre-merge seed wholesale: a mixed seed cannot build". So all five are restored to this branch's parent and src/v1/stage0/src is byte-identical to what it was before the merge. main's inference changes reach this branch the same way every other one does: through the .dag sources, at the next regen. Nothing is lost by that. #8395's Transform derivation rule and #8414's trait-derive fix are .dag changes and they merged; what is declined is only their pre-compiled realization, which this branch cannot use yet.
No description provided.