fix(simulation): resolve duplicate examine_result field and regenerate fixtures

Removed duplicate examine_result from ObserverSnapshot (old ExamineResultEvent
superseded by ExamineResultWire). Fixed serde_default test version assertion.
Regenerated golden file and all fixture .msgpack files. 1070 Rust tests passing.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-02-25 12:48:17 +01:00
co-authored by Claude Opus 4.6
parent 7d5fdc82b6
commit 732b5f3adc
16 changed files with 7 additions and 12 deletions
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
-2
View File
@@ -306,7 +306,6 @@ mod tests {
conversation_events: vec![],
conversation_ended: vec![],
follow_state: None,
examine_result: None,
character_pressure: None,
sound_events: vec![],
rng_seed: None,
@@ -441,7 +440,6 @@ mod tests {
conversation_events: vec![],
conversation_ended: vec![],
follow_state: None,
examine_result: None,
character_pressure: None,
sound_events: vec![],
rng_seed: None,
-5
View File
@@ -110,11 +110,6 @@ pub struct ObserverSnapshot {
/// Client shows follow indicator with distance, LOS, and tension.
#[serde(default)]
pub follow_state: Option<crate::simulation::follow::FollowStateWire>,
/// Examine result from Examine verb interaction (#242).
/// Present when the player examined an NPC or object this tick.
/// Client displays character-filtered detail text in an observation panel.
#[serde(default)]
pub examine_result: Option<crate::simulation::examine::ExamineResultEvent>,
/// Character pressure state for client HUD widget (#248).
/// Present when pressure is non-zero. Client renders tension indicator.
#[serde(default)]
+7 -2
View File
@@ -203,7 +203,13 @@ pub fn compute_observer_snapshot(
let current_monologue = monologue_buffer.take();
let dialogue_response = dialogue_response_opt.as_mut().and_then(|buf| buf.take());
let examine_result = examine_result_buffer_opt.as_mut().and_then(|buf| buf.take());
let examine_result = examine_result_buffer_opt.as_mut().and_then(|buf| buf.take()).map(
|evt| crate::bridge::types::ExamineResultWire {
entity_id: evt.target_entity_id,
text: evt.text,
confidence: crate::knowledge::types::KnowledgeConfidence::KnowsDetails,
},
);
let scan_events = scan_event_buffer_opt
.as_mut()
.map(|buf| buf.take())
@@ -403,7 +409,6 @@ pub fn compute_observer_snapshot(
sound_events,
rng_seed: sim_rng.as_deref().map(|r| r.seed()),
poi_list,
examine_result: None, // Populated by examine system when #242 lands
player_knowledge,
});
}
-1
View File
@@ -66,7 +66,6 @@ fn snapshot_roundtrip_over_unix_socket() {
conversation_events: vec![],
conversation_ended: vec![],
follow_state: None,
examine_result: None,
character_pressure: None,
rng_seed: None,
poi_list: vec![],
-1
View File
@@ -52,7 +52,6 @@ fn snapshot_roundtrip_over_tcp() {
conversation_events: vec![],
conversation_ended: vec![],
follow_state: None,
examine_result: None,
character_pressure: None,
rng_seed: None,
poi_list: vec![],
@@ -39,7 +39,6 @@
"z": 0
}
],
"examine_result": null,
"follow_state": null,
"game_time": {
"day": 0,