# 02C SEO/GEO/AEO Package — Subnautica2Maps Clean Rerun

- task_id: `t_921972c3`
- project_slug: `subnautica2maps`
- selected_keyword: `subnautica 2 map`
- target_market: US/en
- tenant: `site-rerun-subnautica2maps-20260520-clean`
- clean_rerun: true
- input_artifact: `/root/.hermes/kanban/boards/site-factory/workspaces/t_7f12127a/reports/site-pipeline/site-rerun-subnautica2maps-20260520-clean/subnautica2maps/01-brief-v0.md`
- output_artifact: `reports/site-pipeline/site-rerun-subnautica2maps-20260520-clean/subnautica2maps/02c-seo.md`

## 0. Verdict

SEO verdict: `Conditional Go`

Go 条件：Subnautica2Maps 可以继续进入 PRD / copy / design / implementation，但首版必须以真实 interactive map + route helper 为核心，不能退化成普通攻略站或薄 SEO 页面。

主要理由：

1. `subnautica 2 map` SERP 已经明确是 tool-seeking / interactive-map intent；用户要地图、坐标、筛选、marker detail、路线，不是长文。
2. 当前 SERP Top 3-5 有强站和强工具：IGN、Game8、MapGenie、GamesDB/Steam。新站只有靠“current position → route helper + source/confidence/version transparency + mobile-first”才有可进入空间。
3. Early Access 更新频繁，SEO 成败取决于数据可信度和更新机制；没有真实 marker/source/last verified 的页面必须 noindex。
4. IP/品牌风险高，`Subnautica` 品牌词不可伪装官方；每个核心模板必须有 fan-made / no-affiliation 信号。

不可上线条件：

- 没有可操作地图，只做 landing page。
- 复制 MapGenie/GamesDB/Game8/IGN 地图、marker、截图、图标或文案。
- sitemap 放入 placeholder、薄详情页、未验证 marker、搜索结果页。
- 页面承诺 “official / complete / all locations” 但无数据覆盖证据。
- analytics 只有脚本，没有真实事件收数证据。

## 1. Inputs and evidence boundary

本文件只读取 clean rerun Brief v0：

- `/root/.hermes/kanban/boards/site-factory/workspaces/t_7f12127a/reports/site-pipeline/site-rerun-subnautica2maps-20260520-clean/subnautica2maps/01-brief-v0.md`

本轮重新使用 web search / extract 获取 SERP 与竞品页面证据。未读取、未复用旧 PRD、旧设计、旧 seed data、旧 dist、旧 repo。

Live keyword volume / CPC / KD：未验证。上游已说明 DataForSEO 401，本任务不编造搜索量。

## 2. Search intent and keyword strategy

### Primary keyword

`subnautica 2 map`

Intent: tool-seeking / interactive map / resource locator。

用户真实任务：

- open a Subnautica 2 map now
- search resource / POI / blueprint / supply crate
- check coordinates and depth
- filter marker categories
- set current position
- get direction / distance / route hint
- use on mobile while playing
- save found/collected locally

首屏 SEO 承诺必须是产品承诺，不是内容承诺：

- Good: “A fan-made Subnautica 2 interactive map with resource search, coordinates, depth, and route hints from your current position.”
- Bad: “The ultimate complete official Subnautica 2 map guide.”

### P0 target keyword cluster

| Cluster | Primary query | Intent | Landing page | Index policy |
|---|---|---|---|---|
| Map head term | subnautica 2 map | open map / find locations | `/` | index when map preview/tool exists |
| Interactive map | subnautica 2 interactive map | full map tool | `/map` | index when map fully usable |
| Resource location | subnautica 2 silver location | find specific resource | `/resources/silver` | index only with confirmed marker list + route tips |
| Resource location | subnautica 2 copper location | find specific resource | `/resources/copper` | same |
| Resource location | subnautica 2 sulfur location | find specific resource | `/resources/sulfur` | same |
| POI | subnautica 2 black box locations | find POI / collectible | `/locations/black-boxes` or detail pages | index only with verified POIs |
| Coordinates | subnautica 2 coordinates | learn coordinate usage | `/guides/how-to-find-coordinates` | index |
| In-game map question | does subnautica 2 have a map | answer + tool CTA | `/guides/does-subnautica-2-have-a-map` | index |
| Biome | subnautica 2 coral gardens map | biome navigation | `/biomes/coral-gardens` | index with resource/POI/depth data |
| Biome | subnautica 2 karakorum map | biome navigation | `/biomes/karakorum` | index with resource/POI/depth data |

### P1/P2 keyword expansion

P1:

- `subnautica 2 gold location`
- `subnautica 2 lithium location`
- `subnautica 2 lead location`
- `subnautica 2 quartz location`
- `subnautica 2 data box locations`
- `subnautica 2 supply crate locations`
- `subnautica 2 camp one location`
- `subnautica 2 old habitat location`
- `subnautica 2 lifepod location`

P2:

- individual blueprint / fragment pages
- wildlife / plant pages
- update-specific pages after Early Access patches
- route pages only if real shareable route URLs exist and are not doorway pages

Avoid / deprioritize:

- `subnautica 2 official map` — high IP risk, avoid official wording.
- `subnautica 2 complete map` — only use after coverage evidence exists.
- broad `subnautica map` — old game / Below Zero mixed intent.
- scraped “all locations” pages without unique data — spam / thin risk.

## 3. SERP Top 3-5 scan

Query scanned: `subnautica 2 map` and supporting map/resource queries.

### SERP snapshot

| Position observed | Result | URL | SERP signal |
|---:|---|---|---|
| 1 | Steam Community — Useful Interactive Map for Subnautica 2 | `https://steamcommunity.com/app/1962700/discussions/0/844006106470597118/` | Community discovery thread. Mentions GamesDB map and MapGenie; users actively look for interactive maps and route help. |
| 2 | IGN — Subnautica 2 Interactive Map | `https://www.ign.com/wikis/subnautica-2/Subnautica_2_Interactive_Map:_All_Locations,_Resources,_Supply_Crates,_Black_Boxes,_and_More` | Strong media/domain authority + interactive map + resource/supply crate/black box framing. |
| 3 | Game8 — Interactive Map and All Locations | `https://game8.co/games/Subnautica-2/archives/599258` | Strong guide site with map, coordinates, depth, regions, login progress push. |
| 4 | MapGenie — Subnautica 2 Interactive Map | `https://mapgenie.io/subnautica-2/maps/world` | Strong dedicated map product, filters, progress, notes, embed, pro upsell. |
| 5 | MapGenie game hub | `https://mapgenie.io/subnautica-2` | Brand/site cluster result; reinforces MapGenie’s map authority. |
| discovered via Steam / direct extraction | GamesDB — Subnautica 2 Interactive Map | `https://gamesdb.gg/subnautica-2/map` | Important product competitor; route-from-current-position is a direct differentiator/standard to match. |

### Competitor capability breakdown

| Competitor | Strength | Weakness / gap we can attack | Minimum to match |
|---|---|---|---|
| IGN | Authority, guide hub, “all locations/resources/supply crates/black boxes” framing, rich internal guide network | Large-site guide wrapper; may not optimize for route-from-current-position or source/confidence transparency | map embed, resource/POI filters, guide hub, short answer blocks, strong internal links |
| Game8 | Coordinates, depth, POI tables, Early Access version notice, region/biome structure, progress-save via account | Login pressure; page can be heavy; comments/community updates not always source-normalized | coordinates/depth/notes/region/version for each marker; update notice; local progress alternative |
| MapGenie | Dedicated interactive map UX, many categories, progress tracker, notes/bookmark, map embed, pro upgrade | Ads/pro prompts; less content depth per marker; may be less transparent about source/confidence | pan/zoom, category filters, search, progress, marker detail, mobile usable |
| GamesDB | Marker categories, current-position/direction route framing from Steam description, resource/POI/blueprint/wildlife/plants coverage | Extracted content exposes little text/SEO; source/confidence and detail depth unclear | route helper, marker categories, search/filter, resource/POI/blueprint coverage |
| Steam/Reddit/YouTube community results | Shows demand and distribution paths; users share map links and route needs | Not durable owned SEO surface | cold-start channel, UGC feedback source, not primary SEO landing |

### SERP conclusion

The market is not empty. A thin “Subnautica 2 map” landing page has low chance.

Viable wedge:

- faster mobile-first map
- current-position route helper as primary UX
- marker detail with coordinates/depth/version/confidence/source
- local progress without account
- honest fan-made branding
- noindex discipline for weak data

## 4. Competitive minimum

Subnautica2Maps must not ship as “SEO complete” unless these are working and QA-verifiable:

1. Map baseline
   - pan/zoom map
   - self-made schematic/vector/coordinate-grid base
   - visible markers
   - search box
   - category filters
   - result count
   - mobile map + sheet/sidebar UX

2. Marker detail baseline
   - name
   - type/subtype
   - coordinates
   - depth
   - region/biome
   - description/notes
   - route_note
   - nearby markers/resources
   - verified_game_version
   - updated_at
   - source_type
   - confidence

3. Route helper baseline
   - user can set current position
   - target marker can be selected
   - result shows distance, direction, depth delta, and text route hint
   - failed/invalid coordinate state handled

4. Local progress baseline
   - found/collected toggle
   - persists after refresh via local storage
   - no login required in P0

5. SEO baseline
   - `/`, `/map`, resource/biome/guide pages have unique title/meta/H1
   - indexable pages have 800+ words when they are content-heavy pages; map/tool pages may have shorter body only if the tool itself delivers clear unique value and includes answer blocks, FAQ, source/update sections
   - canonical self-reference
   - sitemap includes only real indexable pages
   - robots does not block core JS/CSS/images
   - all images/icons have alt or aria-label where applicable

6. GEO/AEO baseline
   - answer-first blocks
   - definition blocks
   - source/update/confidence blocks
   - FAQ
   - BreadcrumbList + WebApplication + FAQPage where appropriate
   - item/detail schema only when content is real and source-backed

7. Legal baseline
   - visible “fan-made / not affiliated” in footer and relevant templates
   - no official logo/key art as site identity
   - DMCA/contact path
   - Privacy/Terms before launch

## 5. Interaction baseline

These are acceptance tests for product, SEO, QA, and analytics. If users cannot complete these tasks, SEO indexability should be blocked.

### P0 user tasks

| Task | User action | Expected UX | Required event |
|---|---|---|---|
| Open map | Visit `/` then click map CTA | `/map` opens usable map | `hero_cta_click`, `tool_start` |
| Search resource | Search `silver` | map highlights silver markers, list shows count | `map_search` with keyword/result_count |
| Search POI | Search `camp one` / `blackbox` | matching marker(s) shown | `map_search`, `marker_open` |
| Filter category | Select Resources / Blueprints / Data Boxes / Wildlife / Plants / Biomes / Locations | visible filter state + result count | `filter_apply` |
| Open detail | Click marker | detail panel shows name/type/coordinates/depth/region/biome/version/confidence/source | `marker_open`, `detail_open` |
| Set position | Enter current coordinates | position saved/visible | `position_set` |
| Calculate route | Choose marker after setting position | distance/direction/depth delta/text route note | `route_calculate`, `tool_result` |
| Toggle progress | mark found/collected | state persists after refresh | `progress_toggle` |
| Mobile flow | on mobile: search → filter → detail → route | bottom sheet/sidebar usable, no map obstruction | same events + viewport QA evidence |

### P1 user tasks

- Open `/resources/silver`: see short answer, marker table, route tips, source/update/confidence, related resources, map CTA.
- Open `/biomes/coral-gardens`: see depth range, resources, POIs, gear tips, map CTA.
- Open `/guides/how-to-find-coordinates`: learn coordinate input and jump to route helper.
- Open `/guides/does-subnautica-2-have-a-map`: answer question first, then CTA to map.

## 6. Page matrix

### P0 indexable pages

| Priority | URL | Primary keyword | Intent | Required content/tool | Schema | Index condition |
|---|---|---|---|---|---|---|
| P0 | `/` | subnautica 2 map | open useful map | hero map preview, search entry, route helper CTA, fan-made disclaimer, source/update block | WebSite, WebApplication, FAQPage, Organization/Brand minimal | index only after map preview/tool exists |
| P0 | `/map` | subnautica 2 interactive map | use full map | map, search, filters, markers, detail panel, route helper, local progress | WebApplication, BreadcrumbList, FAQPage | index only when tool is fully usable |
| P0 | `/resources/silver` | subnautica 2 silver location | find silver | short answer, marker list, coordinates/depth, route tips, nearby POIs, source/update/confidence | BreadcrumbList, FAQPage, ItemList | confirmed markers + 300+ words unique support text |
| P0 | `/resources/copper` | subnautica 2 copper location | find copper | same | same | same |
| P0 | `/resources/sulfur` | subnautica 2 sulfur location | find sulfur | same | same | same |
| P0 | `/guides/does-subnautica-2-have-a-map` | does subnautica 2 have a map | answer + route to tool | answer-first block, no in-game map caveat, how to navigate, CTA to `/map` | Article/CreativeWork, FAQPage, BreadcrumbList | complete answer and internal links |
| P0 | `/guides/how-to-find-coordinates` | subnautica 2 coordinates | learn coordinate usage | steps, screenshots/diagrams if self-made, input examples, route helper CTA | HowTo, FAQPage, BreadcrumbList | complete step-by-step |

### P1 indexable pages

| Priority | URL | Primary keyword | Required condition |
|---|---|---|---|
| P1 | `/resources/gold` | subnautica 2 gold location | confirmed marker list and route tips |
| P1 | `/resources/lithium` | subnautica 2 lithium location | confirmed marker list and route tips |
| P1 | `/resources/lead` | subnautica 2 lead location | confirmed marker list and route tips |
| P1 | `/resources/quartz` | subnautica 2 quartz location | confirmed marker list and route tips |
| P1 | `/locations/camp-one` | subnautica 2 camp one location | coordinates/depth/notes/source |
| P1 | `/locations/old-habitat` | subnautica 2 old habitat location | coordinates/depth/notes/source |
| P1 | `/locations/black-boxes` | subnautica 2 black box locations | list + map + detail links |
| P1 | `/locations/supply-crates` | subnautica 2 supply crate locations | list + map + detail links |
| P1 | `/biomes/coral-gardens` | subnautica 2 coral gardens map | biome data, resources, POIs, depth, gear tips |
| P1 | `/biomes/karakorum` | subnautica 2 karakorum map | same |
| P1 | `/updates` | subnautica 2 map update | versioned data updates | changelog with dates and affected markers |

### P2 / conditional pages

- individual blueprint pages
- individual wildlife/plant pages
- creator embed/share pages
- route pages
- update-specific affected marker pages

P2 must stay noindex until there is standalone value and real data. Do not create scaled empty programmatic pages.

## 7. Index / noindex / sitemap policy

### Indexable requirements

A page may be indexed only when all conditions are true:

1. Has unique search intent.
2. Has real user task value.
3. Has unique title/meta/H1.
4. Has self-canonical clean URL.
5. Has no `noindex`.
6. Has source/update/confidence where data is factual.
7. Has internal links from nav/hub/map/detail pages.
8. Is present in sitemap only after QA passes.
9. Does not copy official/competitor data/assets.
10. Is not just a query/filter state.

### Noindex by default

- `/map?resource=...`
- `/map?filter=...`
- `/search?...`
- user progress/local state pages
- unverified community marker previews
- empty marker detail pages
- placeholder/coming soon pages
- individual marker pages with description < 300 chars and no standalone task
- route result URLs unless share route feature becomes a real product and each URL has unique value
- tag/filter/category pages with no unique content

### Sitemap policy

Include:

- `/`
- `/map`
- validated resource pages
- validated biome pages
- high-value POI/location pages
- guide pages with complete answers
- update/changelog page if real

Exclude:

- query URLs
- noindex pages
- thin pages
- unverified marker pages
- search results
- local/user state pages

Canonical rules:

- `/map?resource=silver` canonical → `/resources/silver` when the resource page exists and is stronger.
- `/map?filter=resources` canonical → `/map`.
- detail page canonical → clean detail URL.
- duplicated POI aliases canonical → primary slug.

## 8. Content and AEO/GEO templates

### Homepage `/`

Required modules:

1. H1: `A Fan-Made Subnautica 2 Map for Finding Resources Faster`
2. 40-70 word answer-first block.
3. Search/map CTA above the fold.
4. Route helper promise.
5. Popular searches: Silver, Copper, Sulfur, Black Boxes, Camp One, Old Habitat.
6. How the map works: search → filter → detail → route → track progress.
7. Data trust: version, updated_at, confidence, source notes.
8. Fan-made/no-affiliation block.
9. FAQ.
10. Internal links to `/map`, P0 resources, P0 guides, biomes.

Short answer draft:

> Subnautica2Maps is a fan-made interactive Subnautica 2 map for finding resources, POIs, blueprints, and route hints while you play. Search a resource, open a marker for coordinates and depth, set your current position, and get a practical route note with source, version, and confidence signals.

### Map page `/map`

Required modules:

- H1: `Subnautica 2 Interactive Map`
- map tool
- search input with examples
- filters with counts
- marker detail panel
- current position input
- route result panel
- local progress toggle
- source/update/confidence legend
- lightweight FAQ below tool
- fan-made disclaimer

AEO blocks:

- “How to use this Subnautica 2 map” steps.
- “What the confidence label means.”
- “Why some markers are missing or unverified.”

### Resource page template `/resources/[slug]`

Required modules:

- H1: `Where to Find [Resource] in Subnautica 2`
- answer-first 40-70 words
- best known locations table
- map CTA pre-filtered to resource
- route tips from Lifepod/current position
- coordinates/depth table
- nearby resources/POIs
- required gear / safe depth notes
- source/update/confidence block
- FAQ
- links to related resources and biomes

### Biome page template `/biomes/[slug]`

Required modules:

- H1: `[Biome] Map and Locations in Subnautica 2`
- answer-first block
- depth range
- resource list
- POI list
- hazards/wildlife
- gear tips
- marker table
- map CTA filtered to biome
- source/update/confidence block
- FAQ

### Guide page template

Required modules:

- answer-first block
- steps
- examples
- screenshots/diagrams only if self-made or licensed
- “Try it on the map” CTA
- FAQ
- breadcrumb and related links

## 9. Schema plan

| Page type | Required schema | Notes |
|---|---|---|
| All pages | `BreadcrumbList` | Match visible breadcrumbs. |
| Homepage | `WebSite`, `WebApplication`, `FAQPage` | WebApplication only if tool is available. |
| `/map` | `WebApplication`, `FAQPage`, `BreadcrumbList` | Include applicationCategory = GameApplication/UtilitiesApplication; avoid official claims. |
| Resource pages | `BreadcrumbList`, `FAQPage`, `ItemList` | ItemList for marker/location table; no fake ratings/reviews. |
| Biome pages | `BreadcrumbList`, `FAQPage`, `ItemList` | List POIs/resources. |
| Guide pages | `HowTo` or `Article/CreativeWork`, `FAQPage`, `BreadcrumbList` | Use HowTo only for true step-by-step actions. |
| Updates | `CreativeWork` or `CollectionPage` | Include update date and affected marker count. |

Schema prohibitions:

- No fake `AggregateRating`.
- No official publisher identity.
- No copied logo as Organization logo.
- No Product/Offer schema for non-existent paid plans.
- No claiming complete/all locations unless data coverage is verified.

## 10. Internal linking plan

### Navigation

Primary nav:

- Map
- Resources
- Locations
- Biomes
- Guides
- Updates

Footer:

- About
- Contact / DMCA
- Privacy Policy
- Terms
- Fan-made disclaimer

### Hub and detail linking

- `/` links to `/map`, top resource pages, coordinate guide, does-map guide.
- `/map` links to active resource/biome/detail pages from marker detail panels.
- `/resources/[slug]` links back to `/map?resource=[slug]`, related resources, relevant biomes, coordinate guide.
- `/biomes/[slug]` links to resources/POIs in that biome and `/map?biome=[slug]`.
- `/locations/[slug]` links to route helper, biome, nearby markers, related resource pages.
- `/updates` links to affected marker/resource/biome pages.

Anchor text rules:

- Use descriptive anchors: “Silver locations on the Subnautica 2 map”, “Coral Gardens resource markers”.
- Avoid “click here”.
- Avoid exact-match spam repeated unnaturally.

## 11. Asset / media / video SEO constraints

Allowed:

- self-made schematic map
- self-made SVG/Canvas grid
- self-made icons or open-source licensed icons
- self-made screenshots/diagrams if legal approves
- lazy-loaded YouTube embeds on guide/resource pages only when useful

Not allowed:

- official logo as site identity
- official key art as hero background without explicit compliance approval
- copied map tiles, marker data, screenshots, icons from IGN/Game8/MapGenie/GamesDB
- “official” visual treatment

Image/video rules:

- All images need descriptive alt text.
- Map canvas/SVG must provide accessible labels/list fallback for important markers.
- Heavy videos must not load on `/map`; use lazy placeholder on guide/resource pages.
- OG image should be self-made and include fan-made positioning, not official art.
- YouTube embeds must include source attribution and fallback text.

## 12. Analytics / event plan

Implementation must prove real ingestion, not just script presence.

### Universal P0 events

| Event | Trigger | Required properties |
|---|---|---|
| `pageview` | page load | path, referrer, device_type |
| `hero_cta_click` | click map/tool CTA | cta_id, source_page |
| `tool_start` | first meaningful map/search/route interaction | tool_name, source_page |
| `tool_result` | route/search returns usable output | tool_name, result_count/success |
| `pricing_cta_click` | support/donation/sponsor/ad-free CTA if present | cta_id, source_page |

### Map/data-site P0 events

| Event | Trigger | Required properties |
|---|---|---|
| `map_search` | search submitted | keyword, result_count |
| `marker_open` | marker detail opened | marker_id, marker_type, source_context |
| `filter_apply` | filter selected | filter_type, filter_value, result_count |
| `detail_open` | detail page/panel opened | detail_type, slug |
| `position_set` | current position accepted | coordinate_format, success |
| `route_calculate` | route helper result | marker_id, distance_bucket, success |
| `progress_toggle` | found/collected changed | marker_id, state |
| `outbound_click` | external link clicked | destination, context |

QA evidence required downstream:

- Debug log or dashboard screenshot/path for each event.
- At least one successful trigger per P0 event.
- QA must distinguish “script loaded” from “event received”.

## 13. Legal / policy boundary for SEO templates

Mandatory language:

- “Fan-made Subnautica 2 map.”
- “Not affiliated with Unknown Worlds, Krafton, or the Subnautica team.”
- “Marker data may change during Early Access; check version and confidence labels.”

Mandatory pages/blocks:

- footer disclaimer
- About / legal disclaimer
- Contact / DMCA
- Privacy Policy
- Terms
- update/version page or block

SEO copy prohibitions:

- `official`
- `approved`
- `partner`
- `complete` unless proven
- `all locations` unless coverage audit supports it
- copied official lore/screenshot-heavy pages

Domain/brand risk:

- `subnautica2maps` contains branded term. If domain is already fixed, use strong fan-made language on every template and avoid official-looking design.
- If domain is not fixed, prefer a less official-looking brand/domain while still targeting keywords in page copy.

## 14. Technical SEO acceptance checklist

Before launch / index submission:

- [ ] `/robots.txt` exists and does not block core pages/resources.
- [ ] `/sitemap.xml` exists and includes only approved indexable URLs.
- [ ] Each indexable page has self-canonical.
- [ ] No indexable page has `noindex`.
- [ ] No noindex page appears in sitemap.
- [ ] Unique title per page, default 40-60 chars where feasible.
- [ ] Unique meta description per page, 70-160 chars.
- [ ] One H1 per page.
- [ ] H2/H3 structure covers task sections.
- [ ] Indexable content pages have ≥800 words or strong tool value with supporting blocks.
- [ ] All images/icons have alt/aria fallback.
- [ ] OG/Twitter tags exist for core pages.
- [ ] Breadcrumb visible and schema-valid.
- [ ] FAQ schema matches visible FAQ.
- [ ] WebApplication schema present only after tool works.
- [ ] Internal links connect hub ↔ details; no orphan indexable pages.
- [ ] Core JS/CSS/images return 200 and are crawlable.
- [ ] Map tool has accessible non-canvas marker list fallback.
- [ ] SEO audit script blocks build/deploy if Title/Meta/H1/canonical/noindex/sitemap/robots/alt/OG/schema fail.

## 15. SEO audit script requirements for 墨界

Add a build/deploy gate script before production release. Minimum checks:

- title exists and is unique
- meta description exists and is unique
- canonical exists and self-references for indexable pages
- H1 count equals 1
- H2 count meets template baseline
- H3 count for content templates
- word count threshold for content pages
- primary keyword density around 2.5%-3.6% when natural; do not force on tool UI
- no `noindex` on indexable URLs
- sitemap includes indexable URLs
- sitemap excludes noindex URLs
- robots.txt reachable and not blocking assets
- image alt / aria labels
- OG/Twitter meta
- schema JSON-LD parseable and type-valid
- internal link reachability from hub/nav

Failure must block release.

## 16. Next assignee input

### For 墨策 / PRD

- Product positioning: fan-made interactive map + resource locator + route helper.
- MVP must include map/search/filter/detail/current-position route/local progress.
- Do not accept a PRD that describes only content pages.
- PRD must specify marker schema, data update workflow, index/noindex rules, analytics evidence, legal language.

### For 墨笔 / copy

- Write around player tasks: find resources, check coordinates/depth, route from current position, track progress.
- Use answer-first blocks on every guide/resource/biome page.
- Avoid official/complete/all-locations claims unless verified.
- Every data page needs source/update/confidence copy.

### For 墨影 / design

- Mobile-first map + bottom sheet/sidebar.
- Route helper must be visually prominent.
- Fan-made disclaimer visible but not disruptive.
- Design must not mimic official branding/key art.
- Design required states: search results, filter selected, marker detail, position set, route result, local progress, no results, low confidence.

### For 墨界 / 墨枢

- Self-made map base and marker icons.
- Static/edge-friendly implementation.
- Client-side search/filter first.
- Local progress in browser storage.
- Route calculation with coordinate validation.
- Verified analytics event ingestion.
- Add SEO audit script as release gate.

### For 墨盾

- Review branded domain/trademark risk.
- Approve fan-made/no-affiliation language.
- Block official logo/key art and copied competitor/official assets/data.
- Require Contact/DMCA/Privacy/Terms.

### For 墨账

- Do not design P0 around subscription.
- Allow free core map/search/filter/route.
- Consider donation/sponsor/light ads only after usage proof.
- Later Pro only for cross-device sync, advanced notes, ad-free, creator export.

## 17. Residual risks

1. Live keyword volume/CPC/KD unverified due upstream DataForSEO 401.
2. SERP is already competitive; thin site will fail.
3. Branded domain/IP risk remains high until compliance approval.
4. Marker data source and maintenance owner not locked.
5. Early Access updates can invalidate marker data quickly.
6. Route helper feasibility depends on coordinate model and map base.
7. Mobile performance risk with map + marker count.
8. If sitemap includes thin/placeholder pages, index quality will degrade.

## 18. Acceptance checklist for this task

- [x] Read Brief v0 only from clean rerun parent artifact.
- [x] Re-scanned SERP for `subnautica 2 map` and supporting queries.
- [x] Listed SERP Top 3-5 and competitor capability baseline.
- [x] Produced SEO verdict.
- [x] Produced keyword strategy.
- [x] Produced page matrix P0/P1/P2.
- [x] Distinguished indexable pages from noindex/thin/placeholder pages.
- [x] Produced interaction baseline.
- [x] Produced competitive minimum.
- [x] Produced schema plan.
- [x] Produced internal linking plan.
- [x] Produced asset/video/legal SEO constraints.
- [x] Produced analytics event plan.
- [x] Produced technical SEO acceptance checklist and audit script requirements.
- [x] Included skill_contract_check.

## 19. skill_contract_check

| 合同项 | 必需输入 | 必需产出 | 硬约束 | 验收项 | Evidence |
|---|---|---|---|---|---|
| Kanban source of truth | task_id `t_921972c3`, parent `t_7f12127a` | 本文件 + kanban metadata | Telegram 只做可见性 | START/DONE 发送；最终 kanban_complete | kanban_show 当前任务；START sent to telegram:-1003750190535:5318 |
| Clean rerun | new_tenant, Brief v0 | SEO/GEO/AEO 包 | 不读旧 PRD/设计/seed/dist/repo | 本文件只引用 Brief v0 + live SERP | input_artifact path in section 0/1 |
| Bound skill contract | `projects/site-seo-review` | skill_contract_check 表 | 必须列输入/产出/约束/验收/evidence | 本节存在 | site-seo-review skill preloaded |
| Site type | Brief v0 site_type | map/resource locator/route helper SEO boundary | 不做 generic guide site | sections 2, 4, 6 | Brief v0 lines 31-51 |
| SERP Top 3-5 | web_search/web_extract | IGN/Game8/MapGenie/GamesDB/Steam breakdown | 必须实扫，不凭记忆 | section 3 | web_search result positions + extracted competitor pages |
| Competitive minimum | SERP + Brief v0 | minimum ship criteria | 低于 minimum 不上线 | section 4 | competitor tables and SERP evidence |
| Interaction baseline | core user tasks | QA-ready user tasks/events | 必须可转验收 | section 5 | task body analytics list + Brief v0 user tasks |
| Keyword strategy | selected_keyword + SERP | P0/P1/P2 keyword clusters | 不编造 volume/CPC/KD | section 2 | DataForSEO 401 risk explicitly stated |
| Page matrix | Brief v0 + SEO review | P0/P1/P2 pages | thin/placeholder noindex | section 6 | index conditions per row |
| Index/noindex/sitemap | SEO essentials | canonical/sitemap/noindex policy | noindex pages不得进 sitemap | section 7 | explicit include/exclude rules |
| Schema/GEO/AEO | site-seo-review requirements | WebApplication/FAQ/Breadcrumb/ItemList/HowTo plan | 不加 fake rating/official identity | sections 8-9 | schema table and prohibitions |
| Internal links | page matrix | nav/hub/detail linking plan | 避免 orphan pages | section 10 | anchor rules and hub/detail plan |
| Asset/video SEO | game map requirements | media constraints | 不复制官方/竞品资产；heavy video lazy load | section 11 | allowed/not allowed lists |
| Analytics | task body P0 events | event plan | 必须证明真实收数 | section 12 | properties and QA evidence specified |
| Legal/policy | Subnautica brand risk | fan-made/no-affiliation constraints | 禁止 official/approved/partner | section 13 | mandatory language and pages |
| Audit gate |上线前 SEO requirement | SEO audit script checklist | build/deploy 前阻断失败 | sections 14-15 | minimum checks listed |
| Downstream handoff | pipeline needs | next assignee input | 只给下游真实输入 | section 16 | PRD/copy/design/dev/compliance/pricing inputs |

## 20. Sources

1. Brief v0: `/root/.hermes/kanban/boards/site-factory/workspaces/t_7f12127a/reports/site-pipeline/site-rerun-subnautica2maps-20260520-clean/subnautica2maps/01-brief-v0.md`
2. Steam Community — Useful Interactive Map for Subnautica 2: `https://steamcommunity.com/app/1962700/discussions/0/844006106470597118/`
3. IGN — Subnautica 2 Interactive Map: `https://www.ign.com/wikis/subnautica-2/Subnautica_2_Interactive_Map:_All_Locations,_Resources,_Supply_Crates,_Black_Boxes,_and_More`
4. Game8 — Interactive Map and All Locations: `https://game8.co/games/Subnautica-2/archives/599258`
5. MapGenie — Subnautica 2 Interactive Map: `https://mapgenie.io/subnautica-2/maps/world`
6. GamesDB — Subnautica 2 Interactive Map: `https://gamesdb.gg/subnautica-2/map`
7. Unknown Worlds — Subnautica 2 Early Access Roadmap: `https://unknownworlds.com/en/news/subnautica-2-early-access-roadmap`
8. Eurogamer — Where to find Silver in Subnautica 2: `https://www.eurogamer.net/subnautica-2-silver`
9. IGN — Where to Find Silver: `https://www.ign.com/wikis/subnautica-2/Where_to_Find_Silver_-_Location_and_Farming_Guide`
10. Polygon — Where to find silver in Subnautica 2: `https://www.polygon.com/subnautica-2-silver-where-how-to-get-location-farming/`

## 21. Handoff summary

Project: Subnautica2Maps

SEO/GEO/AEO direction:

- Conditional Go.
- Primary keyword: `subnautica 2 map`.
- Site must be a fan-made interactive map + resource locator + current-position route helper.
- P0 pages: `/`, `/map`, `/resources/silver`, `/resources/copper`, `/resources/sulfur`, `/guides/does-subnautica-2-have-a-map`, `/guides/how-to-find-coordinates`.
- P1 pages: high-confidence resource, POI, biome, update pages only after real data exists.
- Noindex all query/search/local-state/unverified/placeholder/thin pages.
- Competitive minimum: pan/zoom/search/filter/marker detail/route helper/local progress/mobile/fan-made disclaimer/source-confidence-version signals.
- Next assignee: `moce` for PRD v1, with this file as SEO hard constraints.
