Repository navigation
CTX-PROOF 2/2: parity fixture proving rem lengths in the music player's flex and positioned contexts - #180
Merged
Conversation
…rs (device-lanes.yml) for the landing tree
…ring the CI run; merge both halves with device-ci.ts; the local run until master has device-lanes.yml
…h (a leftover never blocks the next run; a failed delete is a warning); runs of master's workflow only; a refused merge fails with its own reasons; cancel the CI run and remove rejected outcomes on failure
…h driver's buildPosition, judged against the previous position; all device lanes on CI (no Mac half)
…upervisor cancels it and deletes the scratch branch after an interrupt (abandonInflight, tested); merge origin/master
… flex and positioned contexts ctx-proof-rem (both directions): padding and min-height in rem on relative flex-row items, padding in rem on absolute boxes, width, max-width, left and top in rem on flex-column items, min-width in rem on flex-row items. Passes linux-dragon-layout and chrome-dual against live Chrome.
…e builder records its own CI run in flight, and stopping it cancels that run
Commands: pnpm regen --skip lanes-host --skip tw-sweep (macos-26) and pnpm regen --only lanes-host (xcode-27), alternated to a fixed point, then pnpm regen --only tw-sweep (macos-26). Base: 8b47a5c Run: https://github.com/compiled-run/dragoncss/actions/runs/37335981744
…m ctx-proof's GROUPS line (#179)
Commands: pnpm regen --skip lanes-host --skip tw-sweep (macos-26) and pnpm regen --only lanes-host (xcode-27), alternated to a fixed point, then pnpm regen --only tw-sweep (macos-26). Base: f24f174 Run: https://github.com/compiled-run/dragoncss/actions/runs/37342969009
…ve flex-row items (review of #180) A flex-start row: b3's content is 30px, so min-height: 2.5rem sets its 40px height; b4 (no min-height) is 42px from padding-bottom: 1.5rem; b5 is 54px with padding-bottom: 1rem under a taller child. The stretched row r1 could not detect an ignored min-height or a wrong rem padding-bottom.
Commands: pnpm regen --skip lanes-host --skip tw-sweep (macos-26) and pnpm regen --only lanes-host (xcode-27), alternated to a fixed point, then pnpm regen --only tw-sweep (macos-26). Base: cc53581 Run: https://github.com/compiled-run/dragoncss/actions/runs/37349291047
Commands: pnpm regen
…res as new since its base (same line as #179)
regen: default --jobs 4 (forced regen 787 s -> 467 s, same outputs)
Contributor
Author
|
Landing stopped at step Fix the cause, then hand #180 back to the landing queue with the new clean head. |
Commands: pnpm regen
Landing driver: LAND_DEVICES=ci (device lanes on GitHub runners, hybrid)
Commands: pnpm regen; pnpm run parity:devices; pnpm regen
thejackshelton
added a commit
that referenced
this pull request
Oct 5, 2026
…inned spec, on an absolute box in a flex column The milestone-1 spec (span text 'auto') is pinned byte-identical by seams.test; margin-top:auto is still unproven in absolute-in-flex-column after #179 and #180, so only the fixture HTML moves (as reject-selector-hover and reject-unit-* did), and fixture-reader keeps checking the BASE text.
thejackshelton
added a commit
that referenced
this pull request
Oct 5, 2026
thejackshelton
added a commit
that referenced
this pull request
Oct 6, 2026
…st) into inl1a-lowering. hit-capture-identity.test.ts takes master's registered-fixture check and keeps INL1a's: no file beyond the base belongs to a base fixture (now judged by fixtureOf, which knows the ~ixN and #N suffixes). glyph-clearance-pins.json keeps both sides' entries. rt-animator.ts patchChild (master's replaced-leaf patch) takes INL1a's inline children and passes them through unchanged, as INL1a's patchBox did
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
CTX-PROOF 2/2 (music player). The north-star check refuses 19 declarations per native target with DRAGON_UNPROVEN_CONTEXT. Sixteen of them are
remlengths in contexts where px (or calc) was proven andremhad no fixture. This PR adds one parity fixture that uses those exact values in those contexts. No engine, compiler, gate or tolerance change. Profile rows come from regen's profile-rows step.What changed
rem-contexts(packages/parity/src/fixture-groups/rem-contexts.ts; named so itsGROUPSline is not next to CTX-PROOF 1/2: parity fixtures proving auto margins and auto insets in block, flex and positioned contexts #179'sctx-proofline, one line inGROUPS) withctx-proof-rem, run in ltr and rtl:padding: 0.5rem(and a four-value rem padding) plusmin-height: 2.5remonposition: relativeflex-row items, as on.library-button.r3usesalign-items: flex-start, so each item's height comes from its content:b3's content is 30px, somin-height: 2.5remsets its height to 40px.b4has no min-height;padding-bottom: 1.5remmakes it 42px.b5is 54px:padding-bottom: 1remunder a 30px child.r1alone could not catch an ignored min-height or a wrong rem padding-bottom (review of 061e8d0).padding: 1rem(and a four-value rem padding) on absolute boxes in a block containing block, as on.animate-track.width: 18rem,max-width: 18rem/12.5remon flex-column items, as on.time-controland.song-title.left: 1rem,top: 0.75remon a static flex-column item. That is the context.mini-video-shellreaches once itsposition: fixedis blanked. The fixture proves the static case (insets have no effect, Chrome-equal). The fixed box itself stays refused under its own diagnostic until POSX-f.min-width: 2.5rem/6remon flex-row items, as on.time-control p.Not covered (stay refused, for a reason other than a missing fixture)
overflow-x: hiddenonhtml: viewport propagation (OVFL).display: inline-flex/inline-blockin block flow: atomic inlines (INL2a, INL2a 1/2: atomic inlines in the layout engine (inline-block, inline-flex) #112/INL2a 2/2: inline-block and inline-flex in the compiler, with Chrome fixtures #115).font-familypinned in a text-in-flex-item context (web only): real fonts (TXT1a).Verification
runFixturewith live Chrome (liveAuthored, profilesderive). Both cases pass linux-dragon-layout and chrome-dual. Their ios keys include all 16 refused keys, in both directions.registry-claims.test.ts: pass.pnpm typecheck: pass.regenlabel on CI, in their own commit.Result (on the tree merged with master)
<length-rem>for padding-*, min-height, min-width, width, max-width, left and top in the contexts above, ltr and rtl). Rows removed: 0. Status changes: 0.north-star-check.json: DRAGON_UNPROVEN_CONTEXT goes from 19 to 3 per native target (web from 21 to 5). Errors go from 286 to 238. Declarations supported on both native targets go from 193 to 196 of 289 applicable. The other refused declarations still carry a different error, such asposition: fixedor transitions.registry-claims,north-star-accounting,north-star-treeandprofile-indextests: 18/18 pass.pnpm typecheck: pass.Fixtures added
This adds 1 new fixture. No fixture, test, check or tolerance was changed or removed.
🤖 Generated with Claude Code