docs(02-10): complete timing-regression verdict plan

This commit is contained in:
archipelago
2026-07-31 06:58:05 -04:00
parent 1d6b6c22c1
commit 63f367ad74
4 changed files with 270 additions and 17 deletions
+14 -11
View File
@@ -3,18 +3,18 @@ gsd_state_version: 1.0
milestone: v1.8.0
milestone_name: milestone
current_phase: 02
current_phase_name: ui-performance
status: verifying
stopped_at: "Completed 02-09-PLAN.md — Server/Web5 KeepAlive gap closure: no source change needed, checkpoint approved"
last_updated: "2026-07-31T10:08:38.935Z"
stopped_at: Completed 02-10-PLAN.md — Phase 02 (ui-performance) gap closure complete, both verification gaps resolved
last_updated: "2026-07-31T10:57:35.534Z"
last_activity: 2026-07-31
last_activity_desc: 02-09 gap closure complete (checkpoint approved); 02-10 in progress
last_activity_desc: 02-09 gap closure complete
progress:
total_phases: 9
completed_phases: 1
completed_phases: 2
total_plans: 27
completed_plans: 16
percent: 11
current_phase_name: ui-performance
completed_plans: 17
percent: 22
---
# Project State
@@ -29,11 +29,11 @@ See: .planning/PROJECT.md (updated 2026-07-29)
## Current Position
Phase: 02 — gap closure in progress
Plan: 9 of 10 (02-09 complete; 02-10 running concurrently)
Plan: 10 of 10 (02-09 complete; 02-10 running concurrently)
Status: 02-09 complete (checkpoint approved); 02-10 in progress
Last activity: 2026-07-31 — 02-09 gap closure complete
Progress: [█████░░░░] 52%
Progress: [█████░░░░] 63%
## Performance Metrics
@@ -61,6 +61,7 @@ Progress: [█████░░░░░] 52%
| Phase 02 P07 | 75min | 3 tasks | 5 files |
| Phase 02 P08 | ~190min | 3 tasks | 4 files |
| Phase 02 P09 | 130min | 3 tasks | 3 files |
| Phase 02 P10 | 55min | 2 tasks | 3 files |
## Accumulated Context
@@ -112,6 +113,7 @@ Decisions are logged in PROJECT.md (10 locked ADRs in the `<decisions>` block +
- [Phase ?]: 02-08: 4 other user-reported UX issues (Paid Files window.open, PiP not closing lightbox, missing loader on Paid Files item-open, PiP not surviving tab changes) classified as pre-existing (predate phase 2 via git history) and captured into UIFIX-04/05/06, not fixed
- [Phase ?]: 02-09: /dashboard/server's (and Web5's) 'genuinely remounts' reading was a proven probe-measurement artifact (generic .view-container selector can't disambiguate the foreground tab from other still-connected cached tabs) — confirmed via document.elementFromPoint() hit-test contradicting the naive verdict across device runs; no source change needed, pinned with vm.$.uid-based regression tests instead
- [Phase ?]: 02-09: committed neode-ui/e2e/perf/keepalive-remount-probe.spec.ts as a re-runnable, instrumented probe covering every KEEP_ALIVE_PATHS tab, replacing the ad-hoc 02-08 probe so this class of false positive cannot recur
- [Phase ?]: [Phase 2, gap closure 02-10]: Wallet/send-flow's timing regression cleared as environmental noise (re-measure at/below baseline); Discover/Server/Web5/AppDetails/OpenWrtGateway confirmed as real, phase-2-caused client-side render/reactivation regressions via 3-run dispersion + git bisection, recorded as accepted deviations (not fixed — deploy blocked mid-session by a shared-tree hazard with concurrent security-follow-up and BotFights sessions)
### Pending Todos
@@ -133,6 +135,7 @@ Decisions are logged in PROJECT.md (10 locked ADRs in the `<decisions>` block +
- cloud.ts's navigate() needs a TTL gate to fully satisfy 'no new RPC within TTL' for CloudFolder.vue — currently always re-fetches on revisit (just doesn't block paint)
- [Phase 2, RESOLVED by 02-09] ~~Server.vue does not survive a tab round-trip despite KEEP_ALIVE_PATHS registration~~ — retracted: proven a probe-measurement artifact (shared generic `.view-container` selector couldn't disambiguate the foreground tab from other cached tabs), not a real defect. Server.vue's (and Web5.vue's) instance genuinely survives; pinned with `vm.$.uid`-based regression tests immune to the same ambiguity. Checkpoint approved on real hardware.
- [Phase 2, carried forward] Timing regressions on Discover/Web5/Fleet/AppDetails/OpenWrtGateway (02-PERF-AFTER.json vs baseline) — a same-time-of-day re-run would help disambiguate real regression from node-load noise
- [Phase 2, carried forward] Discover/Server/Web5/AppDetails/OpenWrtGateway/Fleet all show a confirmed, growing, phase-2-caused client-side render/reactivation revisit-ms regression (02-10's re-measure verdict) — needs DevTools Performance-panel profiling to pinpoint the mechanism, plus a clean deploy window once the concurrent security-follow-up/BotFights sessions land their own work
### Quick Tasks Completed
@@ -154,6 +157,6 @@ Decisions are logged in PROJECT.md (10 locked ADRs in the `<decisions>` block +
## Session Continuity
Last session: 2026-07-31T10:08:38.916Z
Stopped at: Completed 02-09-PLAN.md — Server/Web5 KeepAlive gap closure: no source change needed, checkpoint approved
Last session: 2026-07-31T10:57:35.509Z
Stopped at: Completed 02-10-PLAN.md — Phase 02 (ui-performance) gap closure complete, both verification gaps resolved
Resume file: None