Nishi Family › Atlas › Browser evidence
Hardened, measured evidence — 2026-07-21. This very page is served bits-up by the Nishi stack and renders the fix it documents.
Every display:inline-block element — chips, tags, nav pills, buttons, badges, and <img>/<input> — was promoted to a full block box, so each took its own full-width row. A chip list, tag row, or nav bar rendered as a tall vertical stack. Root cause: rh_promote_display_kinds mapped inline-block → BLOCK because INLINE_BLOCK boxes had no atomic sizing and never painted a background.
The Nishi stack serving this page renders these as horizontal wrapping pills — the feature documenting itself:
| File | Change |
|---|---|
nx_render_html.nx | map inline-block/inline-flex → INLINE_BLOCK kind (was BLOCK) |
nx_layout_block.nx | atomic inline-block: intrinsic-width shrink-to-fit + padding/border/margin + wrap-as-a-unit |
nx_browser_render.nx | paint INLINE_BLOCK background + border (was gated to BLOCK only) |
One keystone fixes chips, tags, nav pills, buttons, badges, and the box model for <img>/<input> at once — they are all INLINE_BLOCK by default.
| Gate | Result |
|---|---|
| browser bg (17 assertions on bg/border/layout) | GREEN 17/17 |
| browser forms / forms-render / find | GREEN 7/7 · 6/6 · 7/7 |
| browser darkmode | 4/5 — pre-existing T3, not this change |
| browser doc (E2E) | fixture-fetch env, not render |
The Windows nishi.exe PE build is blocked by a pre-existing toolchain bug (axc_pass arity mismatch) unrelated to this fix; the Linux/NAS render path builds clean. Also open: bare <nav> element flow, and atomic sizing of loaded-<img> dimensions.
Served bits-up by the Nishi stack — TLS 1.3, zero third-party web server, no JavaScript. Evidence gathered live via the sovereign toolchain (nx_cc → nxasm_x86, no gcc). Measured, never asserted.