8. Quality Attributes and Budgets
Quality Attributes and Budgets requirements from the authoritative Glitchpad Technical Specification.
Budgets are measured on release builds with fixtures stored in the repository corpus. CI records hardware class, operating system, WebView version, cold or warm state, fixture digest, sample count, median, p95, and peak memory. A release fails a hard limit; two consecutive warning-limit regressions require a performance slice.
| Attribute | Target | Warning | Hard limit |
|---|---|---|---|
| Cold shell interactive, desktop | p95 ≤ 1.5 s | > 1.5 s | > 2.5 s |
| Cold shell interactive, Android | p95 ≤ 2.5 s | > 2.5 s | > 4.0 s |
| 1 MiB UTF-8 text to first content | p95 ≤ 300 ms | > 300 ms | > 750 ms |
| 1 MiB Markdown to first rendered content | p95 ≤ 800 ms | > 800 ms | > 1.5 s |
| 1 MiB representative Mermaid to first rendered content, desktop | p95 ≤ 1.5 s | > 1.5 s | > 2.5 s |
| 1 MiB representative Mermaid to first rendered content, Android | p95 ≤ 2.5 s | > 2.5 s | > 4.0 s |
| Normal Mermaid edit to current preview after debounce | p95 ≤ 1.0 s | > 1.0 s | Any stale commit or repeated > 2.0 s result |
| Editor input to paint | p95 ≤ 50 ms | > 50 ms | Any repeated > 100 ms stall |
| Cancellation acknowledgement | p95 ≤ 100 ms | > 100 ms | > 250 ms |
| Idle desktop working set | ≤ 160 MiB | > 160 MiB | > 250 MiB |
| Idle Android proportional set | ≤ 180 MiB | > 180 MiB | > 256 MiB |
| Suspended text tab overhead | ≤ source bytes × 2.5 + 10 MiB | Above target | > source bytes × 4 + 20 MiB |
| Desktop compressed installer | ≤ 35 MiB | > 35 MiB | > 60 MiB |
| Universal Android APK | ≤ 40 MiB | > 40 MiB | > 65 MiB |
| Save durability | 100% revision precondition and recovery corpus pass | Any non-durable fallback | Any silent loss or partial destination |
| Accessibility | WCAG 2.2 AA automated and manual critical-flow pass | Minor non-blocking defect | Keyboard, touch, screen-reader, or contrast blocker |
Package-size hard limits may change only through a dated decision that identifies the dependency or artifact responsible and measures user value against download and storage impact.