---
context: phase-3-plan-preferences
captured: 2026-05-20
expires_when: /gsd-plan-phase 3 completes
---

# Phase 3 plan-phase preferences (captured pre-UI-SPEC exit)

User invoked `/gsd-plan-phase 3` 2026-05-20 and answered both initial gate
questions before workflow exited at UI-SPEC gate. These preferences should be
re-honored on next `/gsd-plan-phase 3` invocation (after `/gsd-ui-phase 3`
completes):

## UI Design Contract gate

**Decision:** Generate UI-SPEC.md first → run `/gsd-ui-phase 3` before
re-running plan-phase.

**Caveat to revisit:** Phase 3 is verification-only — the "page" keyword that
tripped the gate refers to Puppeteer test fixture pages (synthetic HTML for
rrweb DOM probing), not user-facing UI. /gsd-ui-phase may produce a thin
UI-SPEC.md or recommend skipping. Either is acceptable. If it surfaces an
"is this a UI phase?" question, answer "no — internal test fixtures only".

## Research gate

**Decision:** Research first (light) → spawn gsd-phase-researcher before
planning.

**Scope for researcher:** light investigation of
- `puppeteer.Page.metrics()` API for optional RAM scaffolding (D-P3-04)
- Any new rrweb 2.0.0-alpha.4 testing patterns relevant to DOM verification
- Verification of alpha-pin safety vs stable v2 ship status (informational —
  upgrade itself is deferred to Phase 4 per D-P3-03)

Researcher should NOT investigate:
- rrweb v2 upgrade implementation path (deferred to Phase 4)
- Full rrweb maskInputFn or data-sensitive masking (out of scope v1 per
  charter shift)
- Programmatic RAM measurement via chrome.devtools Memory API (deferred)

## Auto-cleanup

Delete this file when /gsd-plan-phase 3 successfully completes planner
spawn (after honoring these preferences).
