test(simulation): Sprint 24 tests — archetype, tell escalation, ticker, v0.1 playthrough (#593, #595)

- 7 archetype→monologue regression tests (smuggler/detective pool partitioning)
- 3 tell escalation unit tests (RoutineDeviation insertion + expiry)
- 6 news ticker tests (pool loading, SimRng rotation, zone gating)
- 3 live integration tests against real server binary (Layer 3)
- Update existing tests for current_ticker field and protocol v19

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-03-05 09:13:24 +01:00
co-authored by Claude Opus 4.6
parent b04ad93a0f
commit fd824a1028
13 changed files with 941 additions and 5 deletions
+4 -1
View File
@@ -40,6 +40,7 @@ fn test_snapshot(tick: u64, entities: Vec<VisibleEntity>) -> ObserverSnapshot {
state_hash: None,
debug_response: None,
sim_errors: vec![],
current_ticker: None,
}
}
@@ -302,6 +303,7 @@ fn snapshot_v2_fields_roundtrip() {
state_hash: None,
debug_response: None,
sim_errors: vec![],
current_ticker: None,
};
let bytes = rmp_serde::to_vec_named(&snapshot).expect("serialize");
@@ -356,7 +358,7 @@ fn protocol_version_constant_matches_snapshot() {
let snapshot = test_snapshot(0, vec![]);
assert_eq!(snapshot.version, PROTOCOL_VERSION);
assert_eq!(
PROTOCOL_VERSION, 18,
PROTOCOL_VERSION, 19,
"bump this assertion when protocol version changes"
);
}
@@ -410,6 +412,7 @@ fn all_facing_direction_variants_roundtrip() {
state_hash: None,
debug_response: None,
sim_errors: vec![],
current_ticker: None,
};
let bytes = rmp_serde::to_vec_named(&snapshot).expect("serialize");
let decoded: ObserverSnapshot = rmp_serde::from_slice(&bytes).expect("deserialize");