# Subnautica2Maps SDK Clean 03 — Design Acceptance Re-run

- task_id: `t_56f19add`
- tenant: `site-rerun-subnautica2maps-20260520-stitch-sdk-clean`
- verdict: `DESIGN_GO`
- date: 2026-05-20
- reviewer: 墨策
- repaired_design_source: `/root/.hermes/kanban/boards/site-factory/workspaces/t_c3810340/reports/site-pipeline/site-rerun-subnautica2maps-20260520-stitch-sdk-clean/subnautica2maps/design`
- repair_task: `t_fce73c42`
- visual_review_montage: `/root/.hermes/kanban/boards/site-factory/workspaces/t_56f19add/design-acceptance-montage.jpg`

## Verdict

`DESIGN_GO`.

The previous blocker on `/resources/silver` is repaired. The repaired design package now has valid official Stitch SDK evidence, downloaded HTML/screens, game/map-specific visual direction, map interaction states, mobile bottom sheet, and a content-fit structure that keeps the homepage product-led rather than SEO-wall heavy.

Frontend `t_4e720fda` may start from the repaired design package, with the implementation constraints below.

## 1. Official Stitch SDK evidence

PASS.

Evidence reviewed:

- `design/stitch/screen-index.json`
- `design/stitch/run.log`
- `design/verification.json`
- `design/HANDOFF.md`
- `design/repair-note-resource-silver.md`
- `design/html/*.html`
- `design/screens/*.png`

Findings:

- Production path is official `@google/stitch-sdk`.
- Model recorded as `GEMINI_3_FLASH`.
- `screen-index.json` has 12 accepted screens.
- Each screen has `projectId`, `screenId`, `htmlUrl`, `imageUrl`, downloaded HTML, and downloaded PNG.
- `verification.json` status is `PASS`: `screenCount=12`, `validHtmlCount=12`, `validImageCount=12`, `missingOrInvalid=[]`.
- Deterministic file check found no missing screen-index fields or local files.
- Accepted HTML files start with HTML/DOCTYPE and are not SVG-root fallbacks.
- `local-html-fallback` appears only as a rejected-policy phrase, not as an accepted production path.

## 2. Repair verification: `/resources/silver`

PASS.

Repaired files:

- `html/resource-silver-desktop.html`
- `html/resource-silver-mobile.html`
- `screens/resource-silver-desktop.png`
- `screens/resource-silver-mobile.png`

Repair evidence:

- `repair-note-resource-silver.md` records official `@google/stitch-sdk screen.edit`.
- Current desktop screen: projectId `15241094415756415186`, screenId `e3af7f1334f04f429dc3d5fdea25cbf6`.
- Current mobile screen: projectId `15241094415756415186`, screenId `cab7304783e54c2fa15e258a2dc60e76`.
- `verification.json` marks both repaired screens with `repair=resource-silver-content-contamination-fix` and `bannedGuard=PASS`.
- Grep guard returned zero hits for prior legacy contamination terms:
  - `PRAWN`
  - `Dunes`
  - `Sparse Reef`
  - `Sandstone Outcrops`
  - `Scanner Room`
  - `Safe Shallows`
  - `Kelp Forest`
  - `Subnautica 1`
  - `Subnautica Below Zero`
- Required public-reference fields are present in repaired package context: `marker_id`, `coordinates`, `depth`, `region`, `biome`, `source`, `confidence`, `index_policy`, `retrieved_at`.
- Media placement is acceptable: YouTube/media appears after primary resource data as click-to-load `youtube-nocookie` design, not as the first viewport.

## 3. Game atmosphere / visual direction

PASS.

Visual review of montage and screenshots shows a coherent `Abyssal Tactical Console` direction:

- dark underwater ambience;
- sonar / HUD / scanner panel language;
- coordinate and depth readouts;
- self-made tactical map surface with biome-like layers;
- marker clusters and category grouping;
- teal/green bioluminescent accents;
- map app shell instead of generic SaaS landing layout.

No obvious visual blocker remains. The package no longer depends on neutral placeholder SVGs as the primary product experience.

## 4. Map interaction state coverage

PASS for design coverage.

Covered screens/states:

- homepage desktop/mobile with map/search entry;
- `/map` normal desktop app shell;
- map search/filter active state;
- marker popup/detail state;
- route helper state;
- mobile bottom sheet state;
- `/resources/silver` desktop/mobile;
- `/guides/how-to-find-coordinates` desktop/mobile;
- legal/footer state.

Design supports the required user tasks visually:

- find silver quickly;
- filter resource markers;
- open marker detail;
- see coordinates/depth/source/confidence;
- calculate approximate route hint;
- use a mobile bottom sheet while playing;
- understand fan-made/source/trust posture.

## 5. Content-fit / SEO fit

PASS.

`content-fit-matrix.md` keeps the homepage product-led:

- above-fold map/search cockpit;
- quick resource chips;
- compact route teaser;
- compact trust strip;
- dense SEO/detail content pushed to resource, guide, and legal/detail pages.

This avoids the prior failure mode where SEO copy or compliance text dominates the homepage.

## 6. Competitive minimum vs IGN / Game8 / MapGenie

PASS at design gate.

- IGN baseline: answer-first resource/guide intent + map framing. The design has resource detail, source cards, guide shell, and map CTA.
- Game8 baseline: coordinates, depth, region/biome, Early Access/source confidence. The design exposes coordinates/depth/source/confidence/index policy in marker/resource contexts.
- MapGenie baseline: pan/zoom affordances, filters, search, markers, progress/mobile map shell. The design covers app-like map shell, filter/search states, route helper, marker detail, and mobile bottom sheet.

Frontend must still implement the real interactions and data binding; this gate only accepts the design package as visual/content truth.

## 7. Frontend implementation constraints

`t_4e720fda` should start only from the repaired design directory:

`/root/.hermes/kanban/boards/site-factory/workspaces/t_c3810340/reports/site-pipeline/site-rerun-subnautica2maps-20260520-stitch-sdk-clean/subnautica2maps/design`

Required inputs:

- `HANDOFF.md`
- `stitch/screen-index.json`
- `verification.json`
- `content-fit-matrix.md`
- `html/*.html`
- `screens/*.png`
- `/root/.hermes/kanban/boards/site-factory/workspaces/t_8bae1f08/reports/site-pipeline/site-rerun-subnautica2maps-20260520-stitch-sdk-clean/subnautica2maps/data-assets-carry-forward.json`

Hard constraints for frontend:

- Preserve the Abyssal Tactical Console visual system.
- Implement real search/filter/result count/detail/route/local progress/mobile bottom sheet logic.
- Bind marker data from the public-reference contract; do not infer marker facts from prose.
- Do not copy official/competitor map tiles, screenshots, logos, key art, icons, or copied text/data dumps.
- Use click-to-load `youtube-nocookie` only after primary data on resource/guide pages.
- Keep raw current coordinates out of analytics.
- Respect index policy: standalone marker pages noindex by default; limited-index markers may render inside the map but should not generate sitemap URLs.

## Final gate decision

`DESIGN_GO`.

The repaired official Stitch SDK design package is accepted and can unblock frontend rebuild. Residual risk is implementation-side: static Stitch screens must be converted into working map/search/filter/detail/route/mobile behavior without unauthorized assets or data drift.
