- Add paginated thread history with bounded snapshots and replay limits - Trim oversized wire payloads and support progressive mobile history loading
Showing the changes to docs (1 of 43 files). Show all
Unified · Split
| @@ -0,0 +1,30 @@ | |||
| 1 | # Performance regression checks | ||
| 2 | |||
| 3 | The v2 transport has a focused regression command: | ||
| 4 | |||
| 5 | ```bash | ||
| 6 | vp run test:perf:v2-wire | ||
| 7 | ``` | ||
| 8 | |||
| 9 | It exercises the real v2 projection and client reducers. This matters because the older | ||
| 10 | built-app benchmark fixtures seed v1 orchestration events; running those fixtures against a v2 | ||
| 11 | client can produce reassuring timings while missing the active transport path. | ||
| 12 | |||
| 13 | The v2 checks pin these invariants: | ||
| 14 | |||
| 15 | - Client cold opens use a recent timeline window capped at 75 rows and about 1 MiB of encoded | ||
| 16 | timeline data. | ||
| 17 | - The bounded snapshot does not retain the full duplicate conversation-message table. | ||
| 18 | - Older activity is fetched in bounded HTTP pages and merged without disturbing the live scroll | ||
| 19 | window. | ||
| 20 | - Resume catch-up replays at most 128 thread events and 1 MiB of projected event JSON before | ||
| 21 | replacing stale state with a current snapshot. | ||
| 22 | - Oversized dynamic-tool results and detail strings are reduced only at the wire boundary; the | ||
| 23 | persisted event remains complete. | ||
| 24 | - Shell resume sends deltas plus compact repository-enrichment metadata, not another full project | ||
| 25 | and thread snapshot. | ||
| 26 | - Known idle sends and interrupts do not fetch a full thread projection before dispatch. | ||
| 27 | |||
| 28 | When changing projection schemas, paging, shell synchronization, or thread state, run this command | ||
| 29 | alongside the focused package typechecks and a real-client pass on every affected surface. Payload | ||
| 30 | budgets belong in these tests rather than logs or one-off recordings so regressions fail locally. | ||