Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
389 commits
Select commit Hold shift + click to select a range
9493e24
fix(frontend): enforce source dates for direct manifest generation
TheHiddenObserver Jul 12, 2026
be161a5
test(frontend): cover direct manifest date enforcement
TheHiddenObserver Jul 12, 2026
49967b2
fix(frontend): register statsmodels in canonical manifest
TheHiddenObserver Jul 12, 2026
8c29b2c
test(frontend): require explicit framework registration
TheHiddenObserver Jul 12, 2026
6f6249d
fix(frontend): simplify speedup chart styling
TheHiddenObserver Jul 15, 2026
451df78
fix(frontend): distinguish computed and reported maxima
TheHiddenObserver Jul 15, 2026
4359f31
feat(frontend): parse June ANOVA benchmark rows
TheHiddenObserver Jul 15, 2026
431cf4c
feat(frontend): register combined ANOVA parser
TheHiddenObserver Jul 15, 2026
2b84f26
feat(frontend): route June module bundle through ANOVA parser
TheHiddenObserver Jul 15, 2026
2f883f0
feat(frontend): register ANOVA model families
TheHiddenObserver Jul 15, 2026
6d80ce1
feat(frontend): register ANOVA and SciPy reference
TheHiddenObserver Jul 15, 2026
46aa3a1
test(frontend): require ANOVA dashboard coverage
TheHiddenObserver Jul 15, 2026
86040d2
test(frontend): cover ANOVA and speedup summary semantics
TheHiddenObserver Jul 15, 2026
201366e
fix(frontend): format ANOVA model names readably
TheHiddenObserver Jul 15, 2026
b5c22bc
chore: publish refreshed ANOVA dashboard assets
TheHiddenObserver Jul 15, 2026
307ffdf
build(frontend): publish ANOVA bundle (1625 runs, 36 models)
github-actions[bot] Jul 15, 2026
97cf3b9
ci(frontend): restore read-only staleness gate
TheHiddenObserver Jul 15, 2026
942871b
docs(frontend): document ANOVA and speedup semantics
TheHiddenObserver Jul 15, 2026
b4b49dc
docs(frontend): update ANOVA bundle coverage
TheHiddenObserver Jul 15, 2026
17cf225
feat(frontend): add focused and full chart view modes
TheHiddenObserver Jul 15, 2026
e0c691a
style(frontend): soften dashboard chart palette
TheHiddenObserver Jul 15, 2026
f349a74
feat(frontend): add explicit focused chart controls
TheHiddenObserver Jul 15, 2026
85171cf
feat(frontend): add focused timing chart presentation
TheHiddenObserver Jul 15, 2026
d3c03d6
style(frontend): clarify speedup parity and soften bars
TheHiddenObserver Jul 15, 2026
81e2457
style(frontend): add content column layout class
TheHiddenObserver Jul 15, 2026
83dc694
style(frontend): refine dashboard header hierarchy
TheHiddenObserver Jul 15, 2026
b02306b
style(frontend): refine category sidebar controls
TheHiddenObserver Jul 15, 2026
0e82e7a
style(frontend): introduce softer accessible dashboard theme
TheHiddenObserver Jul 15, 2026
992247b
test(frontend): assert focused chart defaults
TheHiddenObserver Jul 15, 2026
5856b03
test(frontend): cover focused charts and parity styling
TheHiddenObserver Jul 15, 2026
19008bb
chore: publish refreshed dashboard assets
TheHiddenObserver Jul 15, 2026
a0d9e74
build(frontend): publish focused dashboard theme
github-actions[bot] Jul 15, 2026
57fb223
ci(frontend): restore permanent dashboard checks
TheHiddenObserver Jul 15, 2026
68c59b9
docs(frontend): document focused chart presentation
TheHiddenObserver Jul 15, 2026
3260379
docs(frontend): explain focused chart design
TheHiddenObserver Jul 15, 2026
7982e21
docs(frontend): finalize chart readability guidance
TheHiddenObserver Jul 15, 2026
e6b4f08
fix(frontend): use English category labels
TheHiddenObserver Jul 15, 2026
b756d21
fix(frontend): move 1x parity label away from bars
TheHiddenObserver Jul 15, 2026
0657905
test(frontend): guard English sidebar and parity label placement
TheHiddenObserver Jul 15, 2026
159aad5
chore: publish sidebar and parity fixes
TheHiddenObserver Jul 15, 2026
7106dfb
build(frontend): publish English sidebar and parity label fix
github-actions[bot] Jul 15, 2026
423e89e
ci(frontend): restore permanent staleness checks
TheHiddenObserver Jul 15, 2026
eb483b9
fix(frontend): simplify dashboard summary cards
TheHiddenObserver Jul 15, 2026
0d88538
fix(frontend): align speedup focused and full views
TheHiddenObserver Jul 15, 2026
e151f2b
fix(frontend): expand full speedup matrix capacity
TheHiddenObserver Jul 15, 2026
0ad6b1f
test(frontend): cover expanded full speedup matrix
TheHiddenObserver Jul 15, 2026
1b83fe1
test(frontend): verify speedup focus and summary semantics
TheHiddenObserver Jul 15, 2026
9e114db
test(frontend): use reported speedup headline
TheHiddenObserver Jul 15, 2026
c9fa99b
chore: publish updated speedup dashboard assets
TheHiddenObserver Jul 15, 2026
fd43742
build(frontend): publish summary and speedup view fixes
github-actions[bot] Jul 15, 2026
88cf366
ci(frontend): restore permanent staleness checks
TheHiddenObserver Jul 15, 2026
88857b0
fix(frontend): keep speedup tooltip away from labels
TheHiddenObserver Jul 16, 2026
c86ecf4
test(frontend): guard non-overlapping speedup tooltip
TheHiddenObserver Jul 16, 2026
113dff2
chore: publish tooltip placement assets
TheHiddenObserver Jul 16, 2026
9341223
build(frontend): publish non-overlapping tooltip
github-actions[bot] Jul 16, 2026
ec61ec7
ci(frontend): restore permanent staleness checks
TheHiddenObserver Jul 16, 2026
63350ef
fix(frontend): place speedup tooltip next to hovered bar
TheHiddenObserver Jul 17, 2026
8bcef24
test(frontend): guard adjacent speedup tooltip
TheHiddenObserver Jul 17, 2026
a2542ff
chore: publish adjacent tooltip assets
TheHiddenObserver Jul 17, 2026
276937d
build(frontend): publish adjacent tooltip
github-actions[bot] Jul 17, 2026
9354797
ci(frontend): restore permanent staleness checks
TheHiddenObserver Jul 17, 2026
1fed150
fix(frontend): compact focused speedup labels and lift parity badge
TheHiddenObserver Jul 17, 2026
0f47066
test(frontend): guard compact focused labels and top parity badge
TheHiddenObserver Jul 17, 2026
fb9d99a
chore: publish compact speedup chart assets
TheHiddenObserver Jul 17, 2026
72d3b5e
build(frontend): publish compact speedup labels
github-actions[bot] Jul 17, 2026
b8b9375
ci(frontend): restore permanent staleness checks
TheHiddenObserver Jul 17, 2026
d72fb5c
feat(frontend): focus Penalized GLM charts on penalized rows
TheHiddenObserver Jul 17, 2026
e96c319
feat(frontend): focus Penalized GLM speedups on penalties
TheHiddenObserver Jul 17, 2026
72e5cf5
test(frontend): guard penalized-only focused GLM charts
TheHiddenObserver Jul 17, 2026
699c534
chore: publish penalized-focused dashboard assets
TheHiddenObserver Jul 17, 2026
abfc887
build(frontend): publish penalized-focused charts
github-actions[bot] Jul 17, 2026
9e61508
ci(frontend): restore permanent staleness checks
TheHiddenObserver Jul 17, 2026
262cf8b
fix(frontend): hide survival numba duplicate in focused timing
TheHiddenObserver Jul 18, 2026
75bdfec
fix(frontend): keep survival numba out of focused charts
TheHiddenObserver Jul 18, 2026
eb595f6
test(frontend): guard focused survival implementation scope
TheHiddenObserver Jul 18, 2026
e2fe503
chore: publish focused survival chart assets
TheHiddenObserver Jul 18, 2026
3f68ad5
build(frontend): publish focused survival charts
github-actions[bot] Jul 18, 2026
1d56f40
ci(frontend): restore permanent staleness checks
TheHiddenObserver Jul 18, 2026
d4daeba
feat(frontend): parse CoxPH Breslow benchmark rows
TheHiddenObserver Jul 18, 2026
9763c1f
feat(frontend): use composite loss-function parser
TheHiddenObserver Jul 18, 2026
2270f75
docs(frontend): register CoxPH rows in loss benchmark parser v2
TheHiddenObserver Jul 18, 2026
bda81ab
test(frontend): require CoxPH Breslow dashboard coverage
TheHiddenObserver Jul 18, 2026
9beb895
test(frontend): verify CoxPH Breslow navigation
TheHiddenObserver Jul 18, 2026
595e8d7
chore: publish Breslow dashboard assets
TheHiddenObserver Jul 18, 2026
ae1cd54
build(frontend): publish CoxPH Breslow bundle
github-actions[bot] Jul 18, 2026
602a0c7
ci(frontend): restore permanent staleness checks
TheHiddenObserver Jul 18, 2026
5367373
docs(frontend): document CoxPH Breslow coverage
TheHiddenObserver Jul 18, 2026
7f9919d
docs(benchmark): plan penalized robust and quantile integration
TheHiddenObserver Jul 18, 2026
7b42c08
docs(benchmark): link penalized robust quantile plan
TheHiddenObserver Jul 18, 2026
c21f8c1
fix(frontend): expose all aligned GAM scales
TheHiddenObserver Jul 18, 2026
6779521
chore(frontend): bump complete module parser version
TheHiddenObserver Jul 18, 2026
811faca
docs(frontend): record domain coverage audit and benchmark plan
TheHiddenObserver Jul 18, 2026
6c00126
test(frontend): require complete aligned GAM scale matrix
TheHiddenObserver Jul 18, 2026
b4e2d45
test(frontend): expose every aligned GAM scale
TheHiddenObserver Jul 18, 2026
02a6412
chore: publish complete GAM dashboard assets
TheHiddenObserver Jul 18, 2026
137ffa8
build(frontend): publish complete GAM scale matrix
github-actions[bot] Jul 18, 2026
ae7c241
ci(frontend): restore permanent staleness checks
TheHiddenObserver Jul 18, 2026
5d97cfe
docs(frontend): record complete GAM coverage and domain audit
TheHiddenObserver Jul 18, 2026
86719c2
docs(frontend): describe complete GAM coverage and current gaps
TheHiddenObserver Jul 18, 2026
771a231
fix(frontend-data): expose complete panel scale matrix
TheHiddenObserver Jul 18, 2026
657f70e
fix(frontend-data): route module source through complete parser
TheHiddenObserver Jul 18, 2026
fefeb5a
chore(frontend-data): bump complete module parser contract
TheHiddenObserver Jul 18, 2026
05c0a80
test(frontend-data): require complete panel scale matrix
TheHiddenObserver Jul 18, 2026
bb1648a
docs(benchmark): add robust loss comparison plan
TheHiddenObserver Jul 18, 2026
dec67dd
docs(benchmark): record method-level coverage gaps
TheHiddenObserver Jul 18, 2026
f4767ae
ci(frontend): publish complete panel scale assets
TheHiddenObserver Jul 18, 2026
7110826
build(frontend): publish complete panel scale matrix
github-actions[bot] Jul 18, 2026
26b0848
ci(frontend): restore read-only staleness gate
TheHiddenObserver Jul 18, 2026
7fcb2a3
docs(frontend): document complete panel coverage and method audit
TheHiddenObserver Jul 18, 2026
7958929
docs(frontend): document complete panel and method coverage
TheHiddenObserver Jul 18, 2026
10461d3
test(frontend): verify complete panel source scales
TheHiddenObserver Jul 18, 2026
eef882d
fix(frontend): expose complete unsupervised scale matrix
TheHiddenObserver Jul 18, 2026
28a0928
fix(frontend): expose omitted PR74 inference methods
TheHiddenObserver Jul 18, 2026
2ef568f
fix(frontend): use complete unsupervised and inference parsers
TheHiddenObserver Jul 18, 2026
a54ec7a
fix(frontend): expose both GAM comparison variants
TheHiddenObserver Jul 18, 2026
d55d568
chore(frontend): register complete parser revisions
TheHiddenObserver Jul 18, 2026
39425b5
test(frontend): guard complete source matrices
TheHiddenObserver Jul 18, 2026
933df9f
test(frontend): cover restored source configurations
TheHiddenObserver Jul 18, 2026
7fd5eaf
fix(frontend): keep unsupervised parser Python 3.9 compatible
TheHiddenObserver Jul 18, 2026
8a2dc16
ci(frontend): publish restored benchmark matrices
TheHiddenObserver Jul 18, 2026
f037bf9
build(frontend): publish restored source matrices
github-actions[bot] Jul 18, 2026
6f8eb01
docs(frontend): record remaining module coverage audit
TheHiddenObserver Jul 18, 2026
e6e852e
docs(frontend): describe restored source matrices
TheHiddenObserver Jul 18, 2026
c6572ec
docs(frontend): document complete source audit
TheHiddenObserver Jul 18, 2026
59b7489
ci(frontend): regenerate final audited bundle
TheHiddenObserver Jul 18, 2026
e0f2f91
ci(frontend): restore read-only staleness gate
TheHiddenObserver Jul 18, 2026
4dbd118
fix(frontend): surface metric panels above overview rows
TheHiddenObserver Jul 19, 2026
fd07bde
revert: keep metric panel layout unchanged during coverage audit
TheHiddenObserver Jul 19, 2026
c9ced22
feat(frontend): add benchmark metric scope state
TheHiddenObserver Jul 19, 2026
f6d6107
feat(frontend): define benchmark metric scopes
TheHiddenObserver Jul 19, 2026
7d6eee2
feat(frontend): classify and filter benchmark metric scopes
TheHiddenObserver Jul 19, 2026
f4d7b1c
feat(frontend): expose CV and inference metric scopes
TheHiddenObserver Jul 19, 2026
9295ae6
fix(frontend): reset metric scope with category changes
TheHiddenObserver Jul 19, 2026
59d0e79
fix(frontend): reset metric scope on environment change
TheHiddenObserver Jul 19, 2026
6193ada
feat(frontend): surface metric panels before benchmark table
TheHiddenObserver Jul 19, 2026
ac3b33b
feat(frontend): clarify inference method and timing scope
TheHiddenObserver Jul 19, 2026
1cb18db
style(frontend): add metric-scope and panel-stack styles
TheHiddenObserver Jul 19, 2026
e694d00
style(frontend): load metric scope styles
TheHiddenObserver Jul 19, 2026
11c3790
test(frontend): cover default metric scope
TheHiddenObserver Jul 19, 2026
d643fac
test(frontend): cover inference scope and CV readiness
TheHiddenObserver Jul 19, 2026
3bd4765
docs: define CV and inference frontend contract
TheHiddenObserver Jul 19, 2026
0386fc8
fix(frontend): keep metric scope formatting ES2020-compatible
TheHiddenObserver Jul 19, 2026
366491e
fix(frontend): keep inference labels ES2020-compatible
TheHiddenObserver Jul 19, 2026
fbcd8b0
ci: temporarily publish CV and inference frontend assets
TheHiddenObserver Jul 19, 2026
0a462d2
build(frontend): publish CV and inference scope UI
github-actions[bot] Jul 19, 2026
de82f38
ci: restore read-only benchmark frontend checks
TheHiddenObserver Jul 19, 2026
05a4cf5
docs: add local-model benchmark execution prompt
TheHiddenObserver Jul 19, 2026
1349d21
Merge pull request #78 from TheHiddenObserver/frontend-dashboard-data…
TheHiddenObserver Jul 20, 2026
cca6bf1
docs: refresh Chinese benchmark index
TheHiddenObserver Jul 20, 2026
f6391c5
docs: refresh benchmark index for current dashboard
TheHiddenObserver Jul 20, 2026
d28d2ec
docs: replace obsolete frontend QA snapshot
TheHiddenObserver Jul 20, 2026
72d5d66
fix(frontend): order scale filters by workload
TheHiddenObserver Jul 20, 2026
3817992
fix(frontend): expose complete scale and unpenalized solver filters
TheHiddenObserver Jul 20, 2026
ddf8ae8
test(frontend): cover numeric scale ordering
TheHiddenObserver Jul 20, 2026
55ad0e7
test(frontend): cover unpenalized solver filtering
TheHiddenObserver Jul 20, 2026
eab0055
refactor(frontend): isolate scale ordering helper
TheHiddenObserver Jul 20, 2026
ff5969c
refactor(frontend): reuse pure scale ordering helper
TheHiddenObserver Jul 20, 2026
3b1b68f
test(frontend): import scale helper without Vite globals
TheHiddenObserver Jul 20, 2026
e4c09a9
ci: temporarily publish reviewed frontend assets
TheHiddenObserver Jul 20, 2026
59c0a95
build(frontend): publish reviewed filter fixes
github-actions[bot] Jul 20, 2026
6c52197
ci: restore read-only benchmark frontend checks
TheHiddenObserver Jul 20, 2026
b786cd2
fix(frontend): clear downstream backend and external filters
TheHiddenObserver Jul 20, 2026
e9388ba
test(frontend): cover downstream filter resets
TheHiddenObserver Jul 20, 2026
fd72d93
ci: temporarily publish cascade-reset assets
TheHiddenObserver Jul 20, 2026
b453081
build(frontend): publish cascade-reset fixes
github-actions[bot] Jul 20, 2026
052b64c
ci: restore read-only benchmark frontend checks
TheHiddenObserver Jul 20, 2026
078766e
fix(data): reject non-positive benchmark timings
TheHiddenObserver Jul 20, 2026
f73f028
fix(frontend): keep full matrix chart data reachable
TheHiddenObserver Jul 20, 2026
6b3bdb2
test(frontend): require unbounded full matrix limits
TheHiddenObserver Jul 20, 2026
141f0c4
test(data): reject zero timing for log charts
TheHiddenObserver Jul 20, 2026
999798a
test(frontend): require complete full matrix speedup data
TheHiddenObserver Jul 20, 2026
10ceed5
ci: temporarily upload generated benchmark assets
TheHiddenObserver Jul 20, 2026
307c3f2
ci: temporarily publish reviewed frontend bundle
TheHiddenObserver Jul 20, 2026
5ab1a55
ci: fix temporary asset publish workflow syntax
TheHiddenObserver Jul 20, 2026
a509529
build(frontend): publish full-matrix review fixes
TheHiddenObserver Jul 20, 2026
df36eb2
ci: restore read-only benchmark frontend checks
TheHiddenObserver Jul 20, 2026
af769ea
fix(frontend): make full timing matrix browsable
TheHiddenObserver Jul 20, 2026
b6701f9
test(frontend): require complete full matrix charts
TheHiddenObserver Jul 20, 2026
49c3f0d
ci: temporarily publish timing review assets
TheHiddenObserver Jul 20, 2026
b878a2e
build(frontend): publish timing review assets
TheHiddenObserver Jul 20, 2026
ac576fa
ci: restore read-only benchmark frontend checks
TheHiddenObserver Jul 20, 2026
7047aec
ci: apply core timing validation review fixes
TheHiddenObserver Jul 20, 2026
316ff28
fix(benchmarks): centralize timing validation
TheHiddenObserver Jul 20, 2026
ecd968a
ci: restore read-only benchmark validation
TheHiddenObserver Jul 20, 2026
18e61b7
fix(benchmarks): remove wrapper timing validator duplication
TheHiddenObserver Jul 20, 2026
ad1265c
test(benchmarks): align timing validation expectations
TheHiddenObserver Jul 20, 2026
4516150
build: require jsonschema for benchmark validation
TheHiddenObserver Jul 20, 2026
7c436c7
refactor(benchmarks): make module entry use canonical CLI
TheHiddenObserver Jul 20, 2026
bfa4279
ci: apply schema transaction and speedup review fixes
TheHiddenObserver Jul 20, 2026
f9585ad
fix(benchmarks): enforce schema and bundle integrity
TheHiddenObserver Jul 20, 2026
044cc63
ci: restore read-only benchmark validation
TheHiddenObserver Jul 20, 2026
26645aa
ci: capture benchmark review diagnostics
TheHiddenObserver Jul 20, 2026
92191a4
ci: fix speedup identity regression fixture
TheHiddenObserver Jul 20, 2026
bc7f4d3
test(benchmarks): isolate speedup scale fixture
TheHiddenObserver Jul 20, 2026
0db8d7d
ci: restore read-only benchmark validation
TheHiddenObserver Jul 20, 2026
2e718aa
ci: install required schema validator for staleness
TheHiddenObserver Jul 20, 2026
9d89a08
fix(benchmarks): require JSON Schema format validation
TheHiddenObserver Jul 20, 2026
a340bde
ci: temporarily apply provenance review fixes
TheHiddenObserver Jul 20, 2026
30c708e
ci: trigger provenance review fix on feature branch
TheHiddenObserver Jul 20, 2026
91f4b6c
fix(benchmarks): enforce canonical provenance and date formats
TheHiddenObserver Jul 20, 2026
9864b71
test(benchmarks): cover source hashes and date-time formats
TheHiddenObserver Jul 20, 2026
f8c92cc
ci: restore read-only benchmark frontend checks
TheHiddenObserver Jul 20, 2026
5074bc7
ci: temporarily publish provenance-aware assets
TheHiddenObserver Jul 20, 2026
92c2c5a
build(frontend): publish provenance-aware benchmark assets
TheHiddenObserver Jul 20, 2026
a529704
ci: restore read-only benchmark frontend checks
TheHiddenObserver Jul 20, 2026
a0c8c54
chore: stage PR76 review-fix patch
TheHiddenObserver Jul 20, 2026
19247ac
ci: apply verified PR76 review fixes
TheHiddenObserver Jul 20, 2026
f397caf
fix(frontend): preserve focused coverage and canonical contracts
github-actions[bot] Jul 20, 2026
78157bc
test(frontend): cover focused solver families and scale labels
TheHiddenObserver Jul 20, 2026
0760129
ci: diagnose PR76 frontend typecheck
TheHiddenObserver Jul 20, 2026
ada6a6e
chore: remove PR76 diagnostic workflow
github-actions[bot] Jul 20, 2026
f0ede9a
ci: capture PR76 typecheck diagnostic
TheHiddenObserver Jul 20, 2026
38259b3
chore: capture PR76 typecheck diagnostic
github-actions[bot] Jul 20, 2026
d497ea2
fix(frontend): align e2e dependency type checking
TheHiddenObserver Jul 20, 2026
b5676db
chore: remove PR76 typecheck diagnostic
TheHiddenObserver Jul 20, 2026
e8b73a6
ci: refresh PR76 frontend assets
TheHiddenObserver Jul 20, 2026
071f53c
build(frontend): refresh benchmark dashboard assets
github-actions[bot] Jul 20, 2026
1087491
chore: finalize PR76 review-fix validation
TheHiddenObserver Jul 20, 2026
8c72e94
merge: synchronize benchmark dashboard with statgpu 0.2.4
github-actions[bot] Aug 6, 2026
5f50754
chore: refresh synchronized benchmark dashboard assets
TheHiddenObserver Aug 6, 2026
c394acc
docs: synchronize benchmark dashboard navigation
TheHiddenObserver Aug 6, 2026
565be3a
Merge pull request #99 from TheHiddenObserver/agent/sync-benchmark-da…
TheHiddenObserver Aug 6, 2026
645c3dc
benchmark: implement audited catalog foundation
TheHiddenObserver Aug 6, 2026
55f7ea2
benchmark: add audited source catalog policy
TheHiddenObserver Aug 6, 2026
a443925
benchmark: add canonical coverage matrix
TheHiddenObserver Aug 6, 2026
4dbca53
test: enforce catalog and coverage contracts
TheHiddenObserver Aug 6, 2026
7927505
benchmark: emit audited inventory v2
TheHiddenObserver Aug 6, 2026
8f646f5
benchmark: route module CLI through audited wrapper
TheHiddenObserver Aug 6, 2026
024e280
ci: validate catalog and expose stale bundle
TheHiddenObserver Aug 6, 2026
1f6ead9
docs: define source catalog and coverage contract
TheHiddenObserver Aug 6, 2026
4037833
frontend: load audited inventory v2
TheHiddenObserver Aug 6, 2026
de8848e
frontend: define literal inventory v2 schema
TheHiddenObserver Aug 6, 2026
cef7167
frontend: disclose literal source inventory counts
TheHiddenObserver Aug 6, 2026
3f34b38
frontend: surface audited inventory metadata
TheHiddenObserver Aug 6, 2026
0c814ad
benchmark: preserve in-memory inventory aliases
TheHiddenObserver Aug 6, 2026
44de3d7
test: cover audited inventory disclosure
TheHiddenObserver Aug 6, 2026
902a1c2
ci: cancel superseded benchmark runs
TheHiddenObserver Aug 6, 2026
48c0093
benchmark: publish materialized catalog snapshot
TheHiddenObserver Aug 6, 2026
f8cb521
test: verify published inventory v2 snapshot
TheHiddenObserver Aug 6, 2026
f501eb7
ci: exercise published inventory v2
TheHiddenObserver Aug 6, 2026
c883301
frontend: type the materialized catalog snapshot
TheHiddenObserver Aug 6, 2026
dbcef48
ci: add one-shot benchmark asset refresher
TheHiddenObserver Aug 6, 2026
5eaa619
benchmark: refresh audited inventory assets [skip ci]
github-actions[bot] Aug 6, 2026
5f15fa7
ci: remove one-shot benchmark asset refresher
TheHiddenObserver Aug 6, 2026
f9da2d3
benchmark: count parsed registered files literally
TheHiddenObserver Aug 6, 2026
eff1ddd
fix: require exact canonical manifest identity
TheHiddenObserver Aug 7, 2026
326c30f
test: reject modified manifests from canonical inventory
TheHiddenObserver Aug 7, 2026
69a3237
Merge pull request #110 from TheHiddenObserver/agent/benchmark-source…
TheHiddenObserver Aug 7, 2026
0314173
benchmark: register canonical CV source and dashboard coverage (#111)
TheHiddenObserver Aug 7, 2026
c815b89
benchmark: complete production dashboard QA and accessibility gate (#…
TheHiddenObserver Aug 7, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 6 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
# Benchmark dashboard canonical JSON — ensure consistent line endings for SHA256
results/benchmark_frontend_sources/*.json text eol=lf
dev/benchmarks/*.json text eol=lf
frontend/public/data/*.json text eol=lf
dev/tests/fixtures/benchmark_frontend/*.json text eol=lf
docs/assets/benchmarks/data/*.json text eol=lf
176 changes: 176 additions & 0 deletions .github/workflows/benchmark-frontend.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,176 @@
name: Benchmark Frontend CI

on:
push:
branches: [master]
paths:
- '.github/workflows/benchmark-frontend.yml'
- 'dev/benchmarks/**'
- 'dev/tests/test_benchmark_frontend_data.py'
- 'dev/tests/test_benchmark_catalog.py'
- 'dev/tests/test_benchmark_inventory_v2.py'
- 'dev/tests/test_benchmark_cv_source.py'
- 'dev/tests/test_cv_runner_instrumentation.py'
- 'dev/tests/test_frontend_contracts.py'
- 'dev/tests/test_frontend_domain_coverage.py'
- 'dev/tests/fixtures/benchmark_frontend/**'
- 'frontend/**'
- 'docs/assets/benchmarks/**'
- 'results/benchmark_frontend_sources/**'
- 'pyproject.toml'
pull_request:
paths:
- '.github/workflows/benchmark-frontend.yml'
- 'dev/benchmarks/**'
- 'dev/tests/test_benchmark_frontend_data.py'
- 'dev/tests/test_benchmark_catalog.py'
- 'dev/tests/test_benchmark_inventory_v2.py'
- 'dev/tests/test_benchmark_cv_source.py'
- 'dev/tests/test_cv_runner_instrumentation.py'
- 'dev/tests/test_frontend_contracts.py'
- 'dev/tests/test_frontend_domain_coverage.py'
- 'dev/tests/fixtures/benchmark_frontend/**'
- 'frontend/**'
- 'docs/assets/benchmarks/**'
- 'results/benchmark_frontend_sources/**'
- 'pyproject.toml'

concurrency:
group: benchmark-frontend-${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }}
cancel-in-progress: true

jobs:
python-data:
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ['3.9', '3.11']
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Install test dependencies
run: python -m pip install -U pip pytest 'jsonschema[format]'
- name: Run generator and parser tests
run: |
pytest \
dev/tests/test_benchmark_frontend_data.py \
dev/tests/test_benchmark_catalog.py \
dev/tests/test_benchmark_inventory_v2.py \
dev/tests/test_benchmark_cv_source.py \
dev/tests/test_cv_runner_instrumentation.py \
dev/tests/test_frontend_contracts.py \
dev/tests/test_frontend_domain_coverage.py -v
- name: Validate generator output
run: python dev/benchmarks/generate_benchmark_data.py --check --strict-sources

frontend:
runs-on: ubuntu-latest
defaults:
run:
working-directory: frontend
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: '20'
- name: Reject committed frontend artifacts
run: |
if git -C "$GITHUB_WORKSPACE" ls-files \
'frontend/node_modules/**' \
'frontend/test-results/**' \
'frontend/playwright-report/**' | grep -q .; then
echo "Generated frontend dependencies/test artifacts must not be committed."
exit 1
fi
- run: npm ci
- run: npm run typecheck
- run: npm run build

staleness:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: '3.11'
- name: Install schema validation dependency
run: python -m pip install 'jsonschema[format]'
- uses: actions/setup-node@v4
with:
node-version: '20'
- name: Generate data (deterministic)
run: |
python dev/benchmarks/generate_benchmark_data.py \
--out frontend/public/data/benchmark_data.json \
--report frontend/public/data/parse_report.json \
--inventory-out frontend/public/data/source_inventory.json \
--deterministic --strict-sources
- name: Build frontend
run: |
cd frontend
npm ci
npm run build
- name: Check staleness
run: |
changes="$(git status --porcelain -- frontend/public/data docs/assets/benchmarks)"
if [ -n "$changes" ]; then
echo "Generated benchmark assets are stale:"
printf '%s\n' "$changes"
git diff -- frontend/public/data docs/assets/benchmarks
exit 1
fi
echo "OK — generated benchmark assets are current"
- name: Upload generated bundle for stale-asset diagnosis
if: failure()
uses: actions/upload-artifact@v4
with:
name: benchmark-generated-assets
path: |
frontend/public/data/
docs/assets/benchmarks/
retention-days: 7

frontend-e2e:
runs-on: ubuntu-latest
needs: [frontend, staleness]
defaults:
run:
working-directory: frontend
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: '20'
- run: npm ci
- run: npx playwright install --with-deps chromium
- run: npm run test:e2e
- uses: actions/upload-artifact@v4
if: always()
with:
name: playwright-report
path: frontend/playwright-report/
retention-days: 30

production-qa:
runs-on: ubuntu-latest
needs: [frontend, staleness]
defaults:
run:
working-directory: frontend
steps:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: '20'
- run: npm ci
- run: npx playwright install --with-deps chromium firefox webkit
- name: Test committed docs deployment in Chromium, Firefox, and WebKit
run: npm run test:e2e:production
- uses: actions/upload-artifact@v4
if: always()
with:
name: playwright-production-report
path: frontend/playwright-report/
retention-days: 30
22 changes: 22 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -133,3 +133,25 @@ dev/tests/debug_*.py
dev/tests/remote_gpu_bench.py
dev/tests/test_irls_gpu.py
dev/tests/run_remote_gpu.py

# Frontend dependencies and test artifacts
frontend/node_modules/
frontend/test-results/
frontend/playwright-report/

# Benchmark dashboard tracked implementation and canonical sources
!dev/benchmarks/
!dev/benchmarks/frontend_data/
!dev/benchmarks/frontend_data/**
!dev/benchmarks/generate_benchmark_data.py
!dev/benchmarks/benchmark_frontend_schema.json
!dev/benchmarks/frontend_sources.json
!dev/benchmarks/benchmark_source_catalog.json
!dev/tests/test_benchmark_frontend_data.py
!dev/tests/test_frontend_parsers.py
!dev/tests/fixtures/benchmark_frontend/
!dev/tests/fixtures/benchmark_frontend/**
!results/
results/*
!results/benchmark_frontend_sources/
!results/benchmark_frontend_sources/**
Loading
Loading