10c879675353b206c6e4230758ab5cb5Old runs that still have results for 10_shardy_true,
11_optimizer_offload_false, or 13_scan_layers_true now show a amber
DEPRECATED badge next to the test name with a tooltip explaining why
the test was removed. The badge appears in all three comparison tables:
per-mode results, branch-vs-main, and NNX-vs-Linen.
698a6c20Remove 3 test cases per mode (6 total across Linen + NNX) that are
identical to existing tests because they only explicitly set a flag to
its base.yml default value:
The non-default counterparts (shardy_false, offload_true, scan_false)
are kept as they test distinct code paths. Total suite: 56 → 50 tests.
e29bd7a1Previously every branch run was compared against the current latest main,
so comparisons would silently change whenever a new main landed. Now each
branch run is compared against the most recent main whose timestamp is
at-or-before the branch run's own timestamp, making each comparison a
stable snapshot.
5dce455fPreviously _mvData was loaded once and never re-fetched, so running a
rebuild while the page was open left search with the old index. Now
mvSearchOpen() always kicks off a fetch; the HTTP cache handles the
common case where nothing changed (304), and a fresh response replaces
stale in-memory data after a rebuild.
ed7ccbcc_html() did a blind str.replace("</table>", "</table></div>") that
appended a stray </div> after every table close, including tables with
attributes (style="width:auto", class="panel-table") used in the tab
panels. Those tables never got the matching opening <div class="table-wrap">
so each stray </div> prematurely closed the enclosing panel div, pushing
the subsequent p/table elements outside the tab.
Fix: replace the two-pass str.replace with a single regex that atomically
wraps only bare <table>...</table> pairs (no attributes), leaving all
attributed tables untouched.
1f39dfa8Replaces four separate collapsible sections (System Info, Memory Breakdown,
HBM Utilization, Per-Step Metrics) with a single card containing four tabs:
Summary, System, HBM, Steps. One card, one click to switch — cleaner layout.
21069b46Adds four collapsible sections below the summary diff table on every
log-compare page, matching what the individual log summary panel shows:
All sections are collapsible via <details> with the same smooth CSS animation
already used elsewhere on the site.
1559430473796effNew features:
Bug fixes:
142f6475fix: and refactor: prefixes are now only shown when scoped to (maxview).
Plain fix:/refactor: commits (infra, scripts) no longer appear on the
Updates page. feat: still included since feature commits tend to be
MaxView-relevant.
470adcd443f3533a676732775f38d3cbcb4706d28fd1535f20b262d6Store dates as UTC ISO 8601 in meta.json (run_tests_xpk.sh).
Wrap date strings in <time data-utc> elements; a small inline JS
snippet converts them to the browser's local timezone on page load.
c95aad94site: rebuild with nav fix, favicon, and Updates page link
a2214b9fd5a6193218c2b3efbfb1358c_pick_baseline was falling back to the most-recent baseline of any hardware
when no hw-matched baseline existed. This caused main_20260417_125726 (v6e-32)
to compare against the v6e-8 prev baseline (no v6e-32 prev exists yet).
Fix: return None when no hw-matched baseline — never substitute a different
machine's baseline. Same fix applied to _hw_matched_main on the index page.
2fa959edAll / v6e-8 / v6e-32 toggle buttons appear above the text search bar.
Clicking a hardware button hides cards whose data-hw doesn't match and
collapses branch-groups that become fully hidden. Both filters compose.
e599fa9dfc1d45c2dcf22f30Extracted 2046-line monolith into a proper Python package:
maxview/
config.py — site constants
assets.py — CSS, JS assets, test_tooltip_js()
html_primitives.py — _html, _badge, _sanitize_md, etc.
parsers.py — results.md, test plan, log file parsers
discovery.py — run discovery
xplane.py — XPlane profile cache
pages/
index.py — index page
run.py — per-run page
results.py — linen/nnx results page
log.py — individual log page
log_compare.py — side-by-side log compare (unified sync JS)
test_reference.py — test reference page
orchestrator.py — build() / main()
build_site.py becomes a thin shim re-exporting all names for
backward compatibility with tests. All 57 unit tests pass.
71c879ec