|
Download packages/app/e2e/performance/timeline-stability/README.md from SaylorTwift/opencode: direct link, hf CLI and curl.
- Browser
- Download file 3.24 kB
-
https://huggingface.co/SaylorTwift/opencode/resolve/main/packages/app/e2e/performance/timeline-stability/README.md
- Command line
-
hf download hf://SaylorTwift/opencode/packages/app/e2e/performance/timeline-stability/README.md
-
curl -L -o README.md https://huggingface.co/SaylorTwift/opencode/resolve/main/packages/app/e2e/performance/timeline-stability/README.md
3.24 kB
| # Timeline Layout Continuity | |
| Run from `packages/app`: | |
| ```sh | |
| bun run test:stability | |
| ``` | |
| The suite runs a production build in one Chromium worker. Selected scenarios use deterministic 4x CPU stress after application readiness. This is a stress profile, not emulation of a specific device. | |
| ## What It Proves | |
| The continuity probe samples DOM-derived layout and visibility state across browser render opportunities. Tests declare explicit contracts such as: | |
| - Preserve a visible semantic anchor while the user is away from the bottom. | |
| - Preserve end anchoring while active content grows or new content appears. | |
| - Keep adjacent visible rows ordered without material overlap. | |
| - Keep user-selected disclosure state through updates and virtualization. | |
| - Avoid a sampled blank interval while one visible surface replaces another. | |
| - Preserve logical row and control identity where local state or focus depends on it. | |
| - Keep keyboard, wheel, and nested-scroll ownership consistent during remeasurement. | |
| The suite exercises real browser reducer, projection, component, virtualizer, layout, focus, and interaction code. The backend and event producer are controlled fixtures. | |
| ## What It Does Not Prove | |
| The pass/fail oracle does not inspect every compositor-presented pixel. A sample taken after `requestAnimationFrame` is a DOM/layout observation, not proof that every sampled state was displayed or that every displayed frame was sampled. | |
| The suite does not provide complete coverage for: | |
| - Compositor-only or raster-only glitches. | |
| - Color, contrast, canvas, WebGL, masks, irregular clips, or arbitrary occlusion. | |
| - Physical display refresh rates, native OS scaling, or a named low-end device. | |
| - TCP packetization, proxy buffering, or the complete real server/provider pipeline. | |
| Playwright video, trace, screenshots, and observation JSON are diagnostic evidence. They are not pixel baselines and do not participate in normal pass/fail decisions. | |
| For optional before/violation/after screenshots, set `OPENCODE_STABILITY_CAPTURE=1`. Capture is opt-in because compositor readback can perturb timing. | |
| ## Test Layers | |
| - **Projection:** admitted rows, grouping, labels, and final visible states. | |
| - **Local state:** disclosure state, identity, duplicate delivery, and virtualization restoration. | |
| - **Interaction:** wheel, keyboard, nested scrolling, actionability, and focus behavior. | |
| - **Layout continuity:** anchoring, adjacency, responsive reflow, and visible surface handoffs. | |
| - **Reducer hardening:** validly shaped but intentionally reordered, duplicated, removed, or replaced events. | |
| - **Oracle contract:** pure analyzer and browser sampler calibration tests. | |
| Production-lifecycle fixtures should model states emitted by the current producer. Impossible or reordered sequences belong in reducer-hardening tests and must not be described as normal provider behavior. | |
| ## Diagnostics | |
| Failures retain: | |
| - `video.webm` | |
| - `trace.zip` | |
| - failure screenshot | |
| - sampled DOM/layout trace JSON | |
| - event markers and summarized violations | |
| The analyzer records both unclipped layout bounds and ancestor-clipped visible intersections. Scrollbar and raw `scrollTop` changes alone do not fail continuity checks; user-visible semantic anchor movement does. | |