# DGENIUS handoff · 2026-10-30 · Grok Bot box → Oracle workstation

**→ Read first: [`START-HERE-CLAUDE.md`](START-HERE-CLAUDE.md)** (verify, serve previews on your phone, re-judge, merge plan, guardrails). Tool-neutral copy: `START-HERE-CHATGPT.md`. Preview server: `serve-preview.py`; preview list: `index.html`.
For: Claude Code and Cursor (cursor / cursor-agent) on dgenius-workstation-vnic. Goal: take what the DGENIUS bot org built and productionize it toward live.
Snapshot: Fri 2026-10-30, sealed ~03:50 AM CDT. Source: Grok Bot box (read-only copies; originals untouched there). Refresh01 (~04:00 CDT): Flow State v1. **Refresh02 (~05:15 CDT): Julee truth-fix v2 + Nail Retreat v3.1** (see "Refresh02" below).

> ## ⚠ PRIVATE CONCEPTS — READ FIRST
> - **Nothing here is public.** Not pushed, deployed, published, shared or contacted. Every site sends noindex and binds 127.0.0.1. Keep it that way.
> - **Media rights are UNKNOWN for all harvested media** (pros' Instagram/booking-site photos and video). Two-tier rule: private concept use only until the pro **claims and grants rights**. Client faces (incl. partial-face close-ups: eyes, lips) need **claim + attestation** on top of that. Remove noindex / host publicly only per-pro, after rights.
> - No outreach until the pre-outreach gate in `03-claim-landing-outreach/` is fully ticked (incl. the 30-day photo-deletion job).
> - No secrets are in this bundle (scanned). Don't add any.

## Layout
**Start with `DESIGN-SYSTEM/` (creative direction, scorecard, lessons, pill ruling, brand R6, reviews) and `PIPELINE-PLAYBOOK.md` (run Styled.page without the bots).** Cursor usage is nearly exhausted; this bundle is how work continues in Claude Code, Antigravity and Codex here.

| Path | What |
|---|---|
| `DESIGN-SYSTEM/` | Every Muse brief, BRIEF-TEMPLATE, scorecard v1.1 (82+ pass), lessons L-001–L-005, pill ruling, brand handoff R6, creative-library patterns, reviews/scores per concept |
| `PIPELINE-PLAYBOOK.md` | Tool-agnostic step-by-step: pick prospect → harvest package → brief → build (slots.json template route or bespoke) → score → rights/claim → pre-outreach gates |
| `PROSPECTS/` | **SIFT likely-to-yes refresh 20261030** (1,724 people; A 64 · B 155 · C 1,435 · hold 70; TOP15 build-next) + previous 20261029 list (1,344 ranked) |
| `01-salons-site-challenger/` | salons.site multi-tenant challenger: 5 pros, HIVE directory, pro editor, 304-slot swap manifest. + `prior-labs/` (archetype lab M-20261029-011) |
| `02-styled-page-concepts/` | Styled.page single-pro booking-first sites (Julee Marie, Arcane Glow, Nail Retreat Room v3, Unforgettable Hair) + Muse briefs/BUILD-LOGs |
| `03-claim-landing-outreach/` | Claim landing (C picked, A control), LANDING.md with pre-outreach gate, S3-OUTREACH.md |
| `04-product-tiers/` | TIERS.md rev2, revenue model, other DG Products research; Muse brand handoff, brief template |
| `06-lens-styled-page-audit/` | Lens audit of live https://styled.page (REPORT, metrics, shots, side-by-side) |
| `05-workflow-orchestration/` | Mission Control registry, bot-org skills, ENRICH tools/schemas/intake converter |
| `MANIFEST.json`, `SHA256SUMS.txt` | every file: path, bytes, sha256 |
Each folder has a `README-HANDOFF.md`. Each build has its own README/BUILD-LOG with run + QA commands.

## Projects, state, evidence, what "live" needs
**1. salons.site challenger** — **Muse review: all 5 pro pages FAIL on booking (G5): 57–65/100; ≈66–74 even with booking fixed, under the 82 bar.** Muse's NEW salons.site booking rule: opaque docked full-width bar ≥64px + safe-area padding, content padded beneath, visible ≥90% of scroll depth, hidden only while the finale CTA is on screen; only ≥56px targets count (floating pill stays an option for cinematic Styled.page sites). Muse's ranked top-10 fixes = first backlog in `01-…/README-HANDOFF.md` (docked bar, 56px targets, truth flags p2–p5, landscape-opening rule, operator theme layer, p1 onto the kit, 3 block orders, craft, perf). Muse's **recommended** Standard/Pro split (PENDING Tony): booking identical in both; Standard = operator theme, 3 static photos, 1 layout; Pro = her palette/font/logo, full portfolio + video, signature module, 3 layouts. Lens review done (best booking page of the four, not yet a better platform base than BeautyOS; plan = challenger page design on BeautyOS data model; real LH mobile LCP 1.35–2.93s; see `01-…/README-HANDOFF.md`). Builder QA: built + QA-passed (1 tap to book everywhere, CTA 88.9–100%, LCP 160–260ms lab, CLS ≤0.01, 0 a11y/overflow/JS errors; editor edits persist). Lens + Muse head-to-head reviews vs BeautyOS / Rogers / Salon Park are both included. Live needs: real data via the `data/slots.json` swap pipeline, a backend for the editor (currently localStorage), claim flow + Standard/Pro toggle, multi-tenant hosting behind the shared tenant dashboard, rights per pro.
**2. Styled.page concepts** — Nail Retreat Room **v3.1 = latest** (`SR-86cf68c094/v3.1/`, S2b-polish: caption crossover, 4:5 rail, taller stage, sharper purple; CTA depth 92.9–97% closed menu; not re-scored by Muse; v3 = Muse PASS 83. Caveats: `_build/gen.py` is STALE — re-running it undoes the polish; `_build/extract4.py` overwrites the `*_pre_polish` keys in assets-log.json (restore from v3); tilt needs a real iOS + Android test; weight 2.2MB) (v3 **Muse PASS 83/100**); Arcane Glow built; Julee Marie **truth fix v2** (`M-20261029-008/v2/`: line through name removed; hero = her verbatim "The rumors are true. Makeup by Julee Marie is elevating." from DSP_IKCjRq-; **still FAILS L-005 CTA depth ~11% at 390** — backlog: docked booking bar to the pill/docked-bar ruling, duplicate "elevating" line under Era, book bar over open service menu, sub-44px targets: skip link 41, wordmark 18, footer 38, desktop nav 35; root = pre-truth-fix v1); Unforgettable Hair **v3 = latest (not yet re-reviewed by Muse)**; Flow State Lounge (Nick) **v1 built, not yet Muse-reviewed** (FS-02 clip + listed stills excluded for safeguarding, a minor couldn't be ruled out; next builder must not re-add; open: surname/years/licence, Booksy photo ownership, no real-device test). Live needs: per-pro claim + rights, real-device QA, production media (faithful upscales only, never AI-altered work), hosting.
**3. Claim landing + outreach** — Muse ACCEPTED fix1; Tony's 3 decisions applied. Gate open (below). Nothing sent.
**4. Tiers/pricing** — TIERS.md rev2 + revenue-model.csv/model.py.
**5. Workflow** — the bot-org registry, lessons (L-005 etc.), skills and ENRICH tooling that produced the harvest packages already in `~/DGENIUS-Deliveries/beauty-os/`.

## styled.page (live marketing site) — Lens audit `06-lens-styled-page-audit/`
**Verdict: fast and accessible, but not yet safe as the outreach backstop.** Lighthouse 100/100/100 (SEO 66), mobile LCP 986ms, CLS 0, 0 axe violations, 0 broken links — but a pro arriving from Tony's message finds nothing that confirms it. CTA on screen only ~56–59% of mobile scroll. **4 examples have no booking control.** Lens Page: https://cursor.com/canvas/store-bdfd562c-d775-4e08-ae37-12862dbda265/099f8414-ff78-49e7-bac6-1622fc84ae1b
Fix list:
1. Invited-pro strip + a `/for/<token>` preview route — build **only after landing C's pre-outreach gates** are ticked.
2. A "Made by Tony, founder and designer" block with the three photo promises.
3. `/privacy/` and `/terms/` pages covering the 30-day photo deletion.
4. One price story (**Tony decides**; live site says "From $49 / month", see $49 conflict).
5. Indexing, OG card and sitemap (**Tony decides**).
Also: sticky mobile CTA; defer the 2.34MB opening animation (`assets/editorial/sequence/mobile-frames.txt`, 72% of mobile weight); add a www DNS record; HSTS and CSP headers.
**Any deploy of styled.page needs Tony's written OK.**

**Tony's homepage example rule (styled.page):** examples stay **fictional** because there are no customers yet, but they must look **realistic**: believable pro names, cities, services and prices; a **working Book button on every one**; and a small **"sample site"** label. They can be inspired by real pros, but **no real pros' photos or names until they claim and grant rights**. Swap in real claimed sites as they come. (Today 4 examples have no booking control, which breaks this rule.)

## Product decisions Tony made (use exactly)
- **salons.site is one multi-tenant SaaS** (shared tenant dashboard and web studio) that adapts to each operator's brand.
- **Operators ≈ $99/mo per location**; onboarding/build fee is credited; multi-location discount possible.
- **Tenant Pro (~$9/mo) and standalone websites are the main revenue**, so **Standard must stay lean**.
- **Every harvested tenant profile shows Pro before claim.** Claim screen offers **"Claim free (Standard)"** or **"Claim Pro (~$9/mo)"**; the profile defaults to the chosen tier; **unclaimed profiles drop to Standard after 30 days**.
- **Styled.page builds are booking-first** (L-005): sticky mobile Book CTA, "Book this look" after each work section, ≥3 booking touchpoints, 1 tap to book.
- **Claim previews have a live Book button** to her real booking page (deposits as her page handles them; we never book for her).
- **Decline** ("Not for me"): her photos are deleted within 30 days; the design/art direction is kept, identity-stripped.
- **Outreach** signed "Tony, founder and designer"; "You're one of the first pros we've invited." No numbers, no "exclusive".

**Open — NOT decided:** Standard photo cap (3 recommended); Pro founding $9 vs $19 regular and for how long; sponsored seats; the $49 Styled.page product conflict (see dgenius.co PR #1012).
**Decision record:** dgenius-brain PR https://github.com/DGENIUS-DESIGNS/dgenius-brain/pull/5 (docs-only, **unmerged; Tony merges**). Note: the Brain voice note "a forwarded page must not link to anything that takes money" conflicts with the live-Book ruling and needs updating.
**Authority:** DGENIUS OS v2 (`~/DGENIUS-Deliveries/Dgenius-os-v2`) for live ops status; Brain + repos hold decisions. This bundle is evidence + source, not authority.

## Build next — SIFT likely-to-yes refresh (`PROSPECTS/sift-styled-ready-refresh-20261030/`)
SIFT Page: https://cursor.com/canvas/store-bdfd562c-d775-4e08-ae37-12862dbda265/eef0a4e9-a994-4344-b1c0-2ed3c735a8a2
- 1,724 people. Likely-to-yes **A 64 · B 155 · C 1,435 · hold 70**.
- Top 15 to build next (`TOP15-build-next.csv`), in order: Selena Martin · Chloe Neese · Elle Dejaynes · Tanner Joe / Lexi D · Lindsey Moore · Katelynne Parker · Dayramar Alvarez · Destiny Haynes · Laci Peacock · Jasmyn Eden · Jennifer Evans · Antoinette Knight · Chy the Nail Tech · Inked By Ella · Shea Levasseur.
- Holds: Vannie (build_hold, account deleted). Pros not accepting new clients are penalized.
- Media is private concept only (rights UNKNOWN until claim + grant). Scoring weights are untested — calibrate against real claim/yes rates.
- Proposed ENRICH requests ER-01..ER-11 (~$5 Apify) were **NOT run** — needs Tony's OK.

## Production backlog
1. **Claim flow + Standard/Pro toggle** (Pro-before-claim, two claim buttons, default to chosen tier, day-30 drop to Standard).
2. **30-day photo-deletion job** + identity-strip of kept designs (hard blocker for any outreach).
3. **Rights / attestation capture** at claim (media grant; client-face attestation).
4. **Booking-link health checks** (ENRICH found PROVEN / BROKEN / UNTESTED links; e.g. 817/972: 17/4/5).
5. **Swap pipeline** from `01…/data/slots.json` (304 slots, all public_ready=false) fed by ENRICH native packages.
6. **Real-device QA**: IG in-app (iOS/Android), iOS Safari, OG unfurls, tilt/gyro (only emulated so far).
7. **Hosting**; remove noindex per pro **only after rights**.
8. Polish queue: ~~Nail Retreat v3.1~~ (done, refresh02), Julee L-005 docked bar + backlog (refresh02 notes), landing peek crop, challenger weak list (claim choice up front, Call/Save contact/reviews, desktop design, p4 row labels).

## Target repos (don't duplicate in-flight work; no PRs opened by this handoff)
- **DGENIUS-DESIGNS/beauty-os** — open at snapshot: #67 lobby experience (draft), #66 profile UX integration of #61+#62 (draft), #65 Styled.page hub in Professional Activation (draft, stacked on #64), **#64 Pro Experience V2: premium directory profile + the pro's own Styled.page (draft)**, #63 The Suites Co flagship (draft), #62 mobile audit remediation (draft), #61 profile conversion/SEO (draft), #60 ownership sign-in + PostgreSQL CI, #39 Square sandbox foundation (draft), #18 Hermes PROOF intake, #15 salon.site design lab (do not merge), #14 Salon.site journey + menu imports (draft). #53 was not open at snapshot. Check #64/#65/#61/#66 before building claim/profile features.
- **DGENIUS-DESIGNS/dgenius.co** — relevant open: **#1012 "$49 Styled.page claim for McKenna Kathryn Hair"** (the $49 conflict — undecided), #1022 Styled.page/Salons.site brand identities (draft), #1023 builder readiness (draft), #1017 Blue Rose analytics pilot.
- **DGENIUS-DESIGNS/dgenius-brain** — #5 decisions (unmerged).
Also on this machine: `~/DGENIUS-Deliveries/Salons.site/`, `~/DGENIUS-Deliveries/beauty-os/` (ENRICH packages + prior deliveries), `~/worktrees/`.

## In flight at snapshot (anything finished after sealing goes in a refresh bundle)
- Grok Bot, in this order: ~~S2d Flow State build~~ (done, refresh01) → ~~Julee truth fix~~ (done, refresh02 `M-20261029-008/v2/`) → ~~Nail Retreat S2b-polish v3.1~~ (done, refresh02). Grok Bot builder idle.
- Muse re-review of Unforgettable Hair v3.
- (Done, included) Lens challenger review → `01-salons-site-challenger/lens-review-M-20261030-001/`.
- (Done, included) SIFT likely-to-yes refresh → `PROSPECTS/sift-styled-ready-refresh-20261030/`.
- Hermes Stage A seals for 817/972 and Chicago packages (gates fail only on missing base.sha256): `05…/dgenius-control/handoffs/HO-hermes-stageA-seals-817-chicago-20261030.md`.

## What's excluded (and why)
- Raw harvest media and ENRICH package outputs — already on this machine in `~/DGENIUS-Deliveries/beauty-os/`.
- `node_modules`, `__pycache__`, `.git` — reinstall (`npm ci`).
- `_capture` scroll recordings (*.webm/*.mp4) and prior-version capture folders (v1/v2) — regenerable QA evidence; kept on the box. List: `EXCLUDED-TRIM.txt`.
- Muse `work/` scratch (incl. PRIVATE-video; 18 absolute symlinks into it from `_build/work/` were removed, they would dangle here), ENRICH intake-converter out/builds/work. Re-running `_build/extract*.py` needs the source clips from the ENRICH packages.
- Scraped third-party doc pages in dg-products/first-look-image-test (embedded third-party key strings).
- Secrets of any kind: .env, tokens, cookies, browser profiles, ~/.config, vault data.
- The tier analysis naming harvested pros stays out of public repos.

## Refresh02 (2026-10-30 ~05:15 CDT) — added, nothing removed
- `02-styled-page-concepts/M-20261029-008/v2/` — Julee Marie **truth fix v2** (`M-20261029-008/v2/`: line through name removed; hero = her verbatim "The rumors are true. Makeup by Julee Marie is elevating." from DSP_IKCjRq-; **still FAILS L-005 CTA depth ~11% at 390** — backlog: docked booking bar to the pill/docked-bar ruling, duplicate "elevating" line under Era, book bar over open service menu, sub-44px targets: skip link 41, wordmark 18, footer 38, desktop nav 35; root = pre-truth-fix v1). BUILD-LOG: `02-styled-page-concepts/muse-briefs/M-20261029-008/BUILD-LOG.md` (truth-fix section). Captures: `v2/_capture/truth-fix/{before-after,namecheck,stills,qa}/`. `content.json` keeps the old line as `hero_line_removed` (invented, do not reuse).
- `02-styled-page-concepts/M-20261029-010/SR-86cf68c094/v3.1/` — Nail Retreat Room **v3.1 = latest** (`SR-86cf68c094/v3.1/`, S2b-polish: caption crossover, 4:5 rail, taller stage, sharper purple; CTA depth 92.9–97% closed menu; not re-scored by Muse; v3 = Muse PASS 83. Caveats: `_build/gen.py` is STALE — re-running it undoes the polish; `_build/extract4.py` overwrites the `*_pre_polish` keys in assets-log.json (restore from v3); tilt needs a real iOS + Android test; weight 2.2MB). BUILD-LOG (adds "S2b-polish … v3.1" section): `02-styled-page-concepts/muse-briefs/M-20261029-010/SR-86cf68c094/BUILD-LOG-v3.1-refresh02.md` (existing BUILD-LOG.md left as-is).
- Trimmed like refresh01: `_capture` scroll recordings (*.webm/*.mp4), `_build` video scratch, Julee's copied prior-version capture folders (`_capture/v1`, `_capture/v2`, root `_capture/*.png` = v1 duplicates), and absolute symlinks into PRIVATE work dirs (NR `_build/work/*.mp4`, Julee `_build/node_modules`). List: `EXCLUDED-TRIM-refresh02.txt`.
- Neither build is Muse-reviewed yet; re-judge both against `DESIGN-SYSTEM/SCORECARD-v1.1.md`.
