chore(simulation): address review suggestions — comments and minor fixes

- monologue.rs: tracing::warn on unrecognized trigger in fallback arm
- disclosure.rs: borrow-sequencing comment, first() simplification note
- trait_modifiers.rs: delegate parse_confidence to KnowledgeConfidence::try_from
- npc_knowledge_transfer.rs: fix misleading "draw randomly" comment,
  document one-directional transfer behavior
- graph.rs: document intentional no-retrigger after contradiction
- dialogue.rs: explain entity grant guardrail asymmetry (D-079)
- knowledge/mod.rs: document one-tick monologue lag from system ordering
- poi_discovery.rs: document D-079 carve-out for direct KG write

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-02-24 12:45:47 +01:00
co-authored by Claude Opus 4.6
parent c655878dee
commit 132676c25a
8 changed files with 42 additions and 12 deletions
+6
View File
@@ -177,6 +177,12 @@ impl KnowledgeGraph {
}
// Contradicted entries without a new contradiction stay Contradicted —
// the previous contradiction is still unresolved.
//
// After this write, entry.source is DirectObservation, so subsequent
// observations will NOT re-trigger contradiction detection (the
// pre-overwrite check only fires when existing.source is ToldBy).
// This is intentional: once contradicted, the entry reflects the
// observer's own eyes and cannot be "contradicted" again by looking.
contradiction
}
+4
View File
@@ -37,6 +37,10 @@ impl Plugin for KnowledgePlugin {
.add_systems(
Update,
(
// Runs after snapshot: contradiction monologue and relationship
// shifts from KnowledgeGranted events lag by one tick (~0.1s).
// Acceptable — the player perceives the contradiction on the
// next snapshot, which reads as a natural reaction delay.
events::process_knowledge_events
.after(crate::perception::observer::compute_observer_snapshot),
events::decay_knowledge.after(events::process_knowledge_events),