Skip to content

Performance report

Review reproducible query, serialization, and client bundle benchmarks.

Generated from real implementation paths at 2026-07-27T06:30:14.189Z.

Runtime: Node v26.5.0 on linux 6.8.0-124-generic (vmi3453501).

Every timed benchmark uses 2 warmups and validates its result invariants on every run. Values below are observed medians and p95; durable raw JSON evidence includes every sample.

Benchmark Real path / shape Median p95 Target Result
50-field descriptor cold compile 50 text fields in one compiled schema 0.591 ms 0.742 ms < 25 ms (p95) pass
50-field descriptor cache hit same resource/key, fresh protocol tree 0.207 ms 0.333 ms < 1 ms (median) pass
100-column / 100k-row production index buildIndexPipeline eager-load path + serializeIndexPage in bounded 1k-row pages 6529.455 ms 6764.909 ms reported observed
100-column / 100k-row CSV export streaming exportCsv; every output chunk consumed 5482.673 ms 7332.559 ms reported observed
Database-backed N+1 query sweep buildIndexPipeline + Knex/better-sqlite3 count/select/preload at 5 and 1000 rows 3.000 queries 3.000 queries = 3 queries (median) pass
Widget grouped deferred request 20 CustomWidgets through DashboardController + Inertia defer boundary 1.000 requests 1.000 requests = 1 requests (median) pass
UI table server render DataTable with 100 columns × 100 rows via React SSR 815.650 ms 1325.515 ms reported observed
Base panel bundle gzip scaffolded panel entry, React/Inertia external 57430.000 bytes 57430.000 bytes <= 180000 bytes (median) pass
Static lazy-editor leaks 4 lazy chunks audited 0.000 modules 0.000 modules = 0 modules (median) pass
Missing mandatory lazy editors code/image/rich-text modules required in lazy graph 0.000 modules 0.000 modules = 0 modules (median) pass

Reproduce

pnpm perf

The command regenerates this page, .performance/report.{json,md}, and docs/public/performance-report.json, and exits non-zero when a normative TECH_SPEC §18 gate fails. Timing figures are environment-specific; query, grouping, lazy-loading, and bundle limits are invariant gates.

Navigation

Type to search…

↑↓ navigate↵ selectEsc close