feat(content): populate knowledge fact catalogs for v0.1 transit district

Add machine-readable fact catalog YAML files for all knowledge categories.
Makes the check-fact-ids pre-commit hook validation functional.

New files: awareness.yaml, behavioral.yaml, knowledge.yaml, social.yaml
Populated: investigation.yaml, contraband.yaml, location.yaml,
           relationship.yaml, world.yaml, progress.yaml

50+ canonical fact IDs covering: smuggling ring operations, investigation
findings, behavioral patterns, situational awareness, location facts,
inter-NPC relationships, and social positioning. Character starting
confidence annotated per fact. Derived from knowledge-vocabulary-v01.md (#368).

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-02-19 16:22:12 +01:00
co-authored by Claude Sonnet 4.6
parent cfbd00f876
commit 266510c3d8
11 changed files with 932 additions and 0 deletions
+42
View File
@@ -0,0 +1,42 @@
# Fact catalog: awareness
# Situational awareness — who's present, active threats, operational status
# Source: docs/design/knowledge-vocabulary-v01.md §4.2 (#368)
facts:
- fact_id: awareness.detective_presence
description: A Commission detective is operating on Sova Station
typical_confidence: knows_of
characters: [smuggler]
notes: "Smuggler learns through rumor or direct observation. Detective does not hold this fact about themselves."
- fact_id: awareness.detective_investigating_ring
description: The detective is specifically targeting the smuggling ring, not a routine audit
typical_confidence: knows_details
characters: [smuggler]
- fact_id: awareness.commission_audit_scheduled
description: A Commission audit is coming — officially scheduled
typical_confidence: knows_of
characters: [smuggler, detective]
- fact_id: awareness.ring_route_compromise
description: The current drop route may be compromised or under observation
typical_confidence: suspects
characters: [smuggler]
- fact_id: awareness.surveillance_change
description: Surveillance patterns in the maintenance corridors have changed recently
typical_confidence: suspects
characters: [smuggler]
- fact_id: awareness.ring_tension_escalation
description: Something is wrong inside the ring — someone is scared or making moves
typical_confidence: suspects
characters: [smuggler]
- fact_id: awareness.inspection_sweep_active
description: Active inspection sweep in progress right now
typical_confidence: direct
characters: [smuggler, detective]
notes: "direct confidence — set by environmental observation, not investigation"
+42
View File
@@ -0,0 +1,42 @@
# Fact catalog: behavioral
# Behavioral patterns recognized through repeated observation across multiple scenes
# Source: docs/design/knowledge-vocabulary-v01.md §4.3 (#368)
facts:
- fact_id: behavioral.kael_evasion
description: Kael looks left when lying — personal tell recognized post-conversation
typical_confidence: direct
characters: [smuggler]
notes: "Set during a conversation where evasion is detected. direct confidence = just confirmed."
- fact_id: behavioral.kael_behavioral_change
description: Kael's behavior has noticeably changed — quieter, distracted, different routine
typical_confidence: suspects
characters: [smuggler]
- fact_id: behavioral.sera_avoidance_pattern
description: Sera consistently avoids Torek Lintar — leaves when he arrives, repositions
typical_confidence: suspects
characters: [smuggler, detective]
notes: "One observation = suspects; three observations = knows_of (pattern confirmed for detective)"
- fact_id: behavioral.sera_topic_deflection
description: Sera deflects specific topics — Commission work, manifest audits, freight
typical_confidence: suspects
characters: [smuggler, detective]
- fact_id: behavioral.sera_kiosk_pattern
description: Sera habitually stops at the same Commission kiosk at the same time
typical_confidence: knows_of
characters: [smuggler, detective]
- fact_id: behavioral.sera_knowledge_detail
description: Sera's offhand comments reveal detailed knowledge of manifest routing she shouldn't have
typical_confidence: knows_of
characters: [smuggler]
- fact_id: behavioral.voss_awareness
description: Voss is tracking people — situational awareness beyond normal supervisor behavior
typical_confidence: suspects
characters: [detective]
+38
View File
@@ -1 +1,39 @@
# Fact catalog: contraband
# Smuggling ring world facts — existence, components, operations, supply chain
# Source: docs/design/knowledge-vocabulary-v01.md §4.5 (#368)
facts:
- fact_id: contraband.ring_exists
description: A smuggling operation is running through Sova Transit District
typical_confidence: suspects
characters: [smuggler, detective]
notes: "Smuggler starts at knows_details (Background — they ARE in the ring). Detective starts at suspects."
- fact_id: contraband.ring_lattice_components
description: The ring moves unlicensed lattice components — aftermarket neural mods
typical_confidence: knows_of
characters: [smuggler, detective]
notes: "Smuggler starts at knows_details (Background). Detective discovers through investigation."
- fact_id: contraband.ring_medical_components
description: The ring also diverts medical-grade lattice replacements from Syndic supply chains
typical_confidence: knows_details
characters: [smuggler, detective]
notes: "Deep investigation only — the moral dimension of the operation"
- fact_id: contraband.supply_chain
description: Understanding of the ring's supply chain — where components come from
typical_confidence: knows_details
characters: [smuggler, detective]
- fact_id: contraband.severance_tech_presence
description: Severance counter-surveillance technology is in play on the station
typical_confidence: suspects
characters: [detective]
- fact_id: contraband.drop_tonight
description: A drop is scheduled for tonight specifically
typical_confidence: knows_details
characters: [smuggler]
notes: "Seed-dependent — only relevant in seeds where a drop is scheduled during play session"
+126
View File
@@ -1 +1,127 @@
# Fact catalog: investigation
# Case-specific findings — events witnessed, evidence discovered, NPC behaviors confirmed
# Source: docs/design/knowledge-vocabulary-v01.md §4.1 (#368)
facts:
- fact_id: investigation.kael_corridor_meeting
description: Kael was seen in corridor B-7 off-shift, apparently meeting someone
typical_confidence: suspects
characters: [smuggler, detective]
notes: "Shared fact ID; smuggler perspective = operational security breach; detective perspective = initial observation"
- fact_id: investigation.kael_corridor_sighting
description: Detective's initial B-7 observation — Kael spotted in maintenance corridors at unusual hour
typical_confidence: suspects
characters: [detective]
notes: "Detective-only initial ID; may upgrade to kael_corridor_meeting after corroboration"
- fact_id: investigation.kael_unknown_contact
description: The person Kael met in B-7 is unknown — not from the regular rotation
typical_confidence: suspects
characters: [smuggler, detective]
- fact_id: investigation.kael_ring_membership
description: Kael is a member of the smuggling ring
typical_confidence: suspects
characters: [smuggler, detective]
- fact_id: investigation.kael_exit_attempt
description: Kael is actively trying to leave the ring
typical_confidence: knows_of
characters: [smuggler, detective]
- fact_id: investigation.manifest_discrepancy
description: Cargo manifests show irregularities — containers, weights, routing anomalies
typical_confidence: suspects
characters: [smuggler, detective]
notes: "Detective starts with this at suspects (Background). Smuggler may encounter it during operational checks."
- fact_id: investigation.cargo_anomaly
description: A specific cargo anomaly — wrong container, wrong weight, wrong route
typical_confidence: suspects
characters: [detective]
- fact_id: investigation.shift_mismatch
description: Shift records don't match observed personnel — someone is covering for someone
typical_confidence: knows_of
characters: [smuggler, detective]
- fact_id: investigation.voss_ring_involvement
description: Voss manages schedule changes to cover drops — involved in ring operations
typical_confidence: knows_of
characters: [smuggler, detective]
- fact_id: investigation.torek_spending_pattern
description: Torek is spending beyond his dock-worker means — visible at bar
typical_confidence: knows_of
characters: [smuggler, detective]
- fact_id: investigation.drin_inspection_pattern
description: Drin's inspections are conspicuously lax — clearing containers without real checking
typical_confidence: knows_of
characters: [detective]
- fact_id: investigation.drin_gambling_debt
description: Drin has a gambling debt — leverage for whoever is running him
typical_confidence: knows_details
characters: [detective]
- fact_id: investigation.oversight_gap_pattern
description: Inspection gaps are systematic, not accidental — someone designed the blind spots
typical_confidence: knows_of
characters: [detective]
- fact_id: investigation.surveillance_gaps
description: Specific surveillance camera blind spots in the maintenance corridors
typical_confidence: knows_details
characters: [smuggler, detective]
notes: "Smuggler knows from Background (operational necessity). Detective discovers through investigation."
- fact_id: investigation.smuggling_route
description: The specific smuggling route through the station
typical_confidence: knows_details
characters: [smuggler, detective]
- fact_id: investigation.ring_existence
description: A smuggling ring is definitely operating through Sova Transit (detective's confirmation)
typical_confidence: suspects
characters: [detective]
notes: "Detective starts with suspects from manifest anomalies. Smuggler knows via Background (knows_details)."
- fact_id: investigation.renn_courier_role
description: Renn operates as a courier in the ring — runs packages between drop sites
typical_confidence: knows_of
characters: [detective]
- fact_id: investigation.corridor_regular_use
description: The maintenance corridors are regularly used for smuggling, not just incidentally
typical_confidence: knows_of
characters: [detective]
- fact_id: investigation.container_delay
description: A specific container has been held in temporary storage longer than normal
typical_confidence: suspects
characters: [smuggler]
- fact_id: investigation.sera_evidence_held
description: Sera has unreported evidence about manifest irregularities — sitting on it deliberately
typical_confidence: suspects
characters: [detective]
notes: "suspects from avoidance pattern; knows_details only if Sera discloses or evidence found independently"
- fact_id: investigation.naia_lattice_condition
description: Naia's neural lattice is degrading — the medical components are for her
typical_confidence: knows_details
characters: [smuggler, detective]
notes: "Requires Kael disclosure or independent medical evidence"
- fact_id: investigation.ring_leadership
description: Who directs ring operations — late-game discovery
typical_confidence: knows_details
characters: [smuggler, detective]
- fact_id: investigation.drin_inspection_pattern
description: Drin's inspection patterns protect specific containers at specific shift windows
typical_confidence: knows_of
characters: [detective]
+32
View File
@@ -0,0 +1,32 @@
# Fact catalog: knowledge
# Operational knowledge — ring procedures, social dynamics, institutional mechanics
# Source: docs/design/knowledge-vocabulary-v01.md §4.4 (#368)
facts:
- fact_id: knowledge.ring_routing_knowledge
description: Full knowledge of the ring's drop routes and timing protocols
typical_confidence: knows_details
characters: [smuggler]
notes: "Smuggler starts at knows_details (Background). Not available to detective through normal investigation paths."
- fact_id: knowledge.ring_bar_operations
description: The bar (The Last Shift) has a role in ring communications or social cover
typical_confidence: knows_of
characters: [smuggler, detective]
- fact_id: knowledge.bar_back_room_significance
description: The bar's back room is significant — meeting space, handoff point, or storage
typical_confidence: suspects
characters: [detective]
- fact_id: knowledge.bar_ring_awareness
description: Bar regulars have varying levels of awareness of the ring — open secret at some level
typical_confidence: knows_of
characters: [smuggler, detective]
- fact_id: knowledge.kael_exit_plan
description: Kael has a specific exit plan — timing, conditions, contact
typical_confidence: knows_details
characters: [smuggler, detective]
notes: "Only available through Kael's deep trust disclosure or independent investigation"
+50
View File
@@ -1 +1,51 @@
# Fact catalog: location
# Location-specific access, restrictions, and significance
# Source: docs/design/knowledge-vocabulary-v01.md §4.6 (#368)
facts:
- fact_id: location.corridor_b7_restricted
description: Corridor B-7 is a restricted access zone — requires credentials
typical_confidence: knows_of
characters: [smuggler, detective]
notes: "Both characters have this from Background (signage, institutional knowledge)"
- fact_id: location.corridor_b7_drop_site
description: B-7 is an active drop site for the ring
typical_confidence: knows_details
characters: [smuggler, detective]
notes: "Smuggler from Background. Detective through investigation."
- fact_id: location.maintenance_corridors_access
description: Character knows the maintenance corridor layout and can navigate it
typical_confidence: knows_of
characters: [smuggler, detective]
notes: "Smuggler at knows_details (Background — daily operational space). Detective at knows_of after investigation."
- fact_id: location.bay4_sealed
description: Bay 4 is sealed — inspection or deliberate cover
typical_confidence: suspects
characters: [smuggler, detective]
- fact_id: location.span_gate_schedule_gap
description: The span gate schedule has a window that enables unseen cargo drops
typical_confidence: knows_details
characters: [smuggler]
- fact_id: location.smuggling_route
description: The complete physical route the ring uses through the station
typical_confidence: knows_details
characters: [smuggler, detective]
notes: "Smuggler from Background. Detective from deep investigation."
- fact_id: location.surveillance_gaps
description: Specific camera blind spots in the maintenance corridor network
typical_confidence: knows_details
characters: [smuggler, detective]
notes: "Smuggler from Background. Detective must discover independently."
- fact_id: location.dead_drop_location
description: Specific dead drop location(s) used for handoffs
typical_confidence: knows_details
characters: [smuggler]
notes: "Smuggler operational knowledge"
+35
View File
@@ -1 +1,36 @@
# Fact catalog: progress
# Narrative milestone flags
# Note: progress.* facts are NOT recommended for direct authoring in prerequisite blocks.
# Use investigation fact chains and relationship states instead.
# These exist for potential storyteller/arc-tracking use.
# Source: docs/design/knowledge-vocabulary-v01.md §3.2 (#368)
facts:
- fact_id: progress.friend_arc_phase_1
description: FRIEND arc Phase 1 warmth established (baseline positive relationship)
notes: "Set by relationship state transition to Friendly. Do not author directly — use relationship checks."
- fact_id: progress.friend_arc_phase_2
description: FRIEND arc Phase 2 trust built (deep rapport + initial social context)
notes: "Set by trust tier advancement. Do not author directly — use investigation + relationship checks."
- fact_id: progress.friend_arc_contradiction
description: FRIEND contradiction discovered (KnowledgeState → Contradicted)
notes: "Set by contradiction detection system. Use relationship state person_of_interest + investigation fact instead."
- fact_id: progress.friend_arc_confrontation
description: FRIEND confronted about contradiction
notes: "Set post-confrontation by dialogue system."
- fact_id: progress.opening_complete
description: Opening tutorial sequence completed (first 5 minutes)
notes: "Set by storyteller after initial objective sequence."
- fact_id: progress.first_ring_contact
description: Smuggler completed first ring operation during play session
characters: [smuggler]
- fact_id: progress.first_evidence_filed
description: Detective filed first manifest discrepancy evidence
characters: [detective]
@@ -1 +1,33 @@
# Fact catalog: relationship
# Inter-NPC connections — what one character knows about relationships between others
# Source: docs/design/knowledge-vocabulary-v01.md §4.7 (#368)
facts:
- fact_id: relationship.kael_naia_connection
description: Kael and Naia are romantically partnered — not just colleagues
typical_confidence: knows_of
characters: [smuggler, detective]
notes: "Smuggler may know from background or Kael mentioning Naia. Detective through social observation."
- fact_id: relationship.ring_membership
description: Character has identified specific ring members
typical_confidence: knows_of
characters: [smuggler, detective]
notes: "knows_of = partial list; knows_details = full ring membership identified"
- fact_id: relationship.trust_network
description: Understanding of who trusts whom inside the ring — operational reliability mapping
typical_confidence: knows_details
characters: [smuggler]
notes: "Smuggler-specific operational knowledge"
- fact_id: relationship.tamm_family
description: Connection between Naia Tamm and her family situation
typical_confidence: knows_of
characters: [smuggler, detective]
- fact_id: relationship.torek_bar_arrangement
description: Torek has a financial arrangement related to the bar or its operations
typical_confidence: knows_of
characters: [smuggler, detective]
+11
View File
@@ -0,0 +1,11 @@
# Fact catalog: social
# Social positioning facts — standing in a specific social context
# Source: docs/design/knowledge-vocabulary-v01.md §4.8 (#368)
facts:
- fact_id: social.bar_regular_status
description: Character is an established regular at The Last Shift — recognized, trusted in that context
typical_confidence: knows_of
characters: [smuggler, detective]
notes: "Smuggler may have this from Background. Detective builds it through multiple bar visits."
+34
View File
@@ -1 +1,35 @@
# Fact catalog: world
# Faction and institutional knowledge — Commission, lattice regulation, broader context
# Source: docs/design/knowledge-vocabulary-v01.md §4.6 (#368)
facts:
- fact_id: world.lattice_regulation_active
description: Commission actively regulates neural lattice component access in this system
typical_confidence: knows_of
characters: [smuggler, detective]
notes: "Both characters have this from Background"
- fact_id: world.unlicensed_lattice_demand
description: High demand for unlicensed lattice upgrades on working-class stations like Sova
typical_confidence: knows_of
characters: [smuggler, detective]
notes: "The moral context of the operation — smuggler knows it as justification; detective may learn it as complication"
- fact_id: world.commission_sova_jurisdiction
description: Commission has jurisdiction over Sova Transit District
typical_confidence: knows_details
characters: [detective]
notes: "Detective Background knowledge — institutional mandate"
- fact_id: world.ring_cross_system
description: The ring operates across multiple star systems — Sova is one node
typical_confidence: knows_details
characters: [smuggler, detective]
notes: "Late-game discovery — changes scope of the operation"
- fact_id: world.shift_schedule
description: Sova Transit District shift schedule — who works when
typical_confidence: knows_of
characters: [smuggler, detective]
notes: "Smuggler from Background (colleague). Detective through investigation."