Goal
Reskin all 11 v8 project-editor sections in brandbook v2 canon, in v8 workflow order (Theme → Features → Labels → Buildings → Galleries → Location → Levels → Amenity → Units → Plans → Plates), one HTML per screen, every screen consuming the shell + components from admin-panel-foundation.
Method — per-module design loop
Adopted from plans/sales-app-react-module-sequence.md § "Per-module design loop" (SK-260511-02 amendment). Phase 3 ships 11 screens of varied density — линейный «сразу в код» подход Phase 1+2 не масштабируется без drift. Each screen runs:
- Brief (5-10 min) — Claude proposes what's on the screen, what's NOT, why. Sergei reacts: add/remove/reorder fields. Reference brandbook v2 +
REGISTER-NOTES.mdas shared vocabulary. - Sketch or stub — routed by module type (see table below):
- Density modules →
/wireframe2-3 lo-fi variants BEFORE coding. Sergei picks/refines. Then code. - Photo-heavy modules → skip wireframes. Go straight to real HTML stub with real assets / fixture content.
- Density modules →
- Implement — Claude writes HTML against chosen direction.
- Live iterate — Sergei opens in browser (
127.0.0.1:4567). Uses/inspectto point at specific elements;/make-tweakablefor live accent/spacing/font sliders on density screens (esp.03-theme). Loop until Sergei says good.
PAUSE checkbox after each task makes the gate /build-enforceable — /build must wait for explicit Sergei sign-off before moving to the next screen.
Module-type classification
| Screen | Type | Stub route | Notes |
|---|---|---|---|
03-theme |
density | /wireframe first |
Color picker + accent ramp + font scale — /make-tweakable natural fit for live ramp preview |
04-features |
density | /wireframe first |
Feature flags table; 706-line v8 source — IA-defining |
05-labels |
density | /wireframe first |
Terminology overrides; form grid hierarchy choice |
06-buildings |
density | /wireframe first |
Building list + per-building drawer (floors+amenities+assets) |
07-galleries |
photo-heavy | real-stub direct | Gallery groups + cover thumbnails — image grid pattern |
08-location |
photo-heavy | real-stub direct | Map preview dominates; POI rail is sidebar density |
09-levels |
density | /wireframe first |
Floors + plate assignment + ceiling height — table-form |
10-amenities |
density | /wireframe first |
Amenity list with resident/public tier toggles + Phosphor icons |
11-units |
density | /wireframe first |
THE density screen — filterable table, status pills, price in mono |
12-plans |
photo-heavy | real-stub direct | Floor plan thumbnails + metadata — image grid |
13-plates |
photo-heavy | real-stub direct | Plate plan view dominates; layout grid is sidebar density |
7 density / 4 photo-heavy. Density-first ordering already aligned with v8 workflow bar — Theme + Features set the IA before Galleries lands.
Tasks
- [ ] Phase 3 task 1 (amended M6) —
03-theme.html[density / wireframe first]: project accent swatch grid + wordmark upload + hero font scale + dark/light preview toggle. Project-accent picker EXCLUDES any--color-status-*hex (M6 — no oxblood, no burnt-honey, no muted-forest). Pulls from[data-project="cote/velvet/redwall"]existing palettes or a curated 6-stop Stone+Moss ramp.- [ ] PAUSE: Sergei walks
03-theme.html→ confirms before next.
- [ ] PAUSE: Sergei walks
- [ ] Phase 3 task 2 —
04-features.html[density / wireframe first]: feature flags table from v8 (706 lines source; capture data model first, then re-author).- [ ] PAUSE: Sergei walks
04-features.html→ confirms before next.
- [ ] PAUSE: Sergei walks
- [ ] Phase 3 task 3 —
05-labels.html[density / wireframe first]: labels & terminology overrides per project (English only Stage 1).- [ ] PAUSE: Sergei walks
05-labels.html→ confirms before next.
- [ ] PAUSE: Sergei walks
- [ ] Phase 3 task 4 —
06-buildings.html[density / wireframe first]: building list + per-building drawer (floors + amenities + assets).- [ ] PAUSE: Sergei walks
06-buildings.html→ confirms before next.
- [ ] PAUSE: Sergei walks
- [ ] Phase 3 task 5 —
07-galleries.html[photo-heavy / real-stub direct]: gallery groups + cover + count + drag-drop hint.- [ ] PAUSE: Sergei walks
07-galleries.html→ confirms before next.
- [ ] PAUSE: Sergei walks
- [ ] Phase 3 task 6 (amended H5) —
08-location.html[photo-heavy / real-stub direct]: map preview pinningdata-project="cote"(or house-default) and consuming--color-proj-map-water/--color-proj-map-land/--color-proj-map-park/--color-proj-map-road/--color-proj-map-pintokens exclusively. Lat/long inputs + POI list.- [ ] PAUSE: Sergei walks
08-location.html→ confirms before next.
- [ ] PAUSE: Sergei walks
- [ ] Phase 3 task 7 —
09-levels.html[density / wireframe first]: levels per building (floor index + plate assignment + ceiling height + plate count).- [ ] PAUSE: Sergei walks
09-levels.html→ confirms before next.
- [ ] PAUSE: Sergei walks
- [ ] Phase 3 task 8 —
10-amenities.html[density / wireframe first]: amenities list with Phosphor icons (resident / public tiers).- [ ] PAUSE: Sergei walks
10-amenities.html→ confirms before next.
- [ ] PAUSE: Sergei walks
- [ ] Phase 3 task 9 —
11-units.html[density / wireframe first]: unit list table with status pills (oxidised canon) + price in JetBrains Mono.- [ ] PAUSE: Sergei walks
11-units.html→ confirms before next.
- [ ] PAUSE: Sergei walks
- [ ] Phase 3 task 10 —
12-plans.html[photo-heavy / real-stub direct]: floor plan layouts (thumbnail + name + bed count + floors-using-this).- [ ] PAUSE: Sergei walks
12-plans.html→ confirms before next.
- [ ] PAUSE: Sergei walks
- [ ] Phase 3 task 11 —
13-plates.html[photo-heavy / real-stub direct]: floorplates (plan view + layout grid + assigned units).- [ ] PAUSE: Sergei walks
13-plates.html→ confirms before next.
- [ ] PAUSE: Sergei walks
- [ ] Cross-section consistency: every section's shell + topbar from
_shell.css; every form/table/chip/pill from_components.css; NO inline styles in feature HTML; trial banner visible on every screen (driven bydata-banner-scope); role-badge in topbar (driven by?as=URL). - [ ] Per-section verification: open in browser, intra-page tabs work, inter-page nav works, no console errors, drift + AU + Phosphor + hex-literal greps pass.
- [ ] Phase 3 exit gate: Roma + Ilya walk 02 → 03 → 04 → … → 13, no dead-ends, visual register matches brandbook v2. Phase-gate handoff:
Gate-passed: phase-3.
What's Next
After admin-panel-onboarding-overview lands 01 + 02 + 02b (✅ CONV-38), start Phase 3 task 1 via the per-module 4-step loop (Brief → /wireframe 2-3 variants → Implement → Live iterate with /inspect + /make-tweakable). 03-theme.html is density — wireframes BEFORE coding. Read v8 Theme source first, list fields, brief Sergei on field hierarchy, run /wireframe for the accent picker + ramp layout (2-3 lo-fi), Sergei picks, then code. PAUSE checkbox gates the move to 04-features.html.
Key Context
- Plan:
plans/admin-panel-redesign.md(Phase 3) - SPEC-AMEND v1.1 (CONV-36): absorbs H5 + M6
- v8 source:
docs/mockups/admin-panel-v8.html(3163 lines, data-model reference; do NOT visual-reference — gold + glass) - Section order from v8 workflow bar; 11 sections total
- Sub-plan 2 callout: Phase 1.2 / 1.5 / 1.7 referenced by Theme + Features + Location
Session Log
- CONV-36 (2026-05-11): Workstream created from ratified
plans/admin-panel-redesign.md+ SPEC-AMEND v1.1 - SK-260511-02 (2026-05-11): Method amendment. Adopted per-module 4-step design loop + module-type classification (7 density / 4 photo-heavy) + PAUSE checkboxes +
/wireframerouting for density screens +/inspect//make-tweakablefor live iteration. Source pattern:plans/sales-app-react-module-sequence.md§ "Per-module design loop". Rationale: Phase 1+2 linear "сразу в код" подход не масштабируется на 11 экранов варьирующейся плотности — без брифа и wireframes на density-экраны дрейф неизбежен. No plan re-ratification needed (workstream-local method tweak; canonical planplans/admin-panel-redesign.mdPhase 3 deliverables unchanged). - SK-260511-03 (2026-05-11): Method amendment validated end-to-end on 14-team.html build (Phase 4 out-of-order). 4-step loop produced (1) Brief with 6 ambiguities → defaults, (2)
/wireframe3 IA variants atdocs/rendered/wireframes/14-team-ia-wireframes.html(Variant A picked), (3) Implement 1250-line standalone, (4) Live iterate pending. Confirms method scales — Phase 3 (03-themedensity-first) inherits the same flow.