feat(content): migrate line IDs to NPC-scoped namespace (D-035)
Line IDs in all dialogue and monologue pool files renamed from the old location-scoped format (e.g. the-terminal_d_039) to the new NPC-scoped format (e.g. kael-davan_d_001) per the D-035 Sprint 15 amendment. Changes: - 20 dialogue pool files across 3 locations renamed - 14 monologue pool files (detective + smuggler) renamed - Schema descriptions updated in dialogue/monologue schema files - Authoring style guide and design docs updated with new examples - Multi-location NPCs (kael-davan, pc-detective, pc-smuggler) given globally unique cross-file sequences to satisfy XREF uniqueness check The location-scoped scheme already caused a collision (the-terminal_d_039 appearing in multiple NPC files) and would not scale to procedurally generated NPC populations (D-029). Zero content changes — pure ID substitution. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -188,7 +188,7 @@ XREF ERROR: dialogue location "the-warehouse" not in district
|
||||
```
|
||||
XREF ERROR: unknown fact_id "investigation.unknown_fact"
|
||||
In: campaigns/main/.../dialogue/the-terminal/kael-davan.yaml
|
||||
Line: the-terminal_d_099
|
||||
Line: kael-davan_d_099
|
||||
Canonical fact_ids: 42 defined in content/global/knowledge/
|
||||
```
|
||||
|
||||
@@ -228,7 +228,7 @@ XREF WARNING: npc_count mismatch in transit district
|
||||
|
||||
#### Check 8: Dialogue line ID uniqueness within pool
|
||||
|
||||
**What:** Each dialogue line has an `id` field (e.g., `the-terminal_d_001`). IDs MUST be unique within each dialogue file.
|
||||
**What:** Each dialogue line has an `id` field (e.g., `kael-davan_d_001`). IDs MUST be unique within each dialogue file.
|
||||
|
||||
**Where:** `content/campaigns/**/dialogue/**/*.yaml` → `lines[].id`
|
||||
|
||||
@@ -236,7 +236,7 @@ XREF WARNING: npc_count mismatch in transit district
|
||||
|
||||
**Error format:**
|
||||
```
|
||||
XREF ERROR: duplicate dialogue line id "the-terminal_d_015"
|
||||
XREF ERROR: duplicate dialogue line id "kael-davan_d_015"
|
||||
In: campaigns/main/.../dialogue/the-terminal/kael-davan.yaml
|
||||
First occurrence: line 167
|
||||
Duplicate: line 215
|
||||
|
||||
Reference in New Issue
Block a user