feat(ci): add tracing::instrument to heavy per-tick systems, fix stale protocol comment (#344, #527)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-02-19 14:55:00 +01:00
co-authored by Claude Opus 4.6
parent a71218f6bc
commit 3d306b8a2b
9 changed files with 10 additions and 1 deletions
+1 -1
View File
@@ -32,7 +32,7 @@ pub const PROTOCOL_VERSION: u8 = 10;
/// Future fields: ambient sound events, HUD state (D-020 expansion).
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct ObserverSnapshot {
/// Protocol version for forward compatibility. Current: 9.
/// Protocol version for forward compatibility. Current: 10.
pub version: u8,
/// Simulation tick when this snapshot was produced
pub tick: u64,
+1
View File
@@ -40,6 +40,7 @@ pub fn clear_anomaly_markers(mut commands: Commands, markers: Query<Entity, With
/// OR KG.state == Contradicted. Skips the player entity.
///
/// System ordering: after clear_anomaly_markers, before emit_observation_events.
#[tracing::instrument(level = "debug", skip_all)]
pub fn detect_anomalies(
mut commands: Commands,
observer_query: Query<(Entity, &KnowledgeGraph), With<PlayerCharacter>>,
+1
View File
@@ -148,6 +148,7 @@ impl CognitiveDelay {
/// Expired recognitions are converted to DirectObservation KnowledgeEvents.
///
/// System ordering: after emit_observation_events, before process_knowledge_events.
#[tracing::instrument(level = "debug", skip_all)]
pub fn process_cognitive_delay(
time: Res<SimulationTime>,
mut query: Query<(Entity, &mut CognitiveDelay)>,
+2
View File
@@ -29,6 +29,7 @@ use crate::simulation::time::SimulationTime;
/// Stage 1 of the observer pipeline: FOV + vision cone → VisibilityGeometry.
///
/// System ordering: after validate_movement, before compute_observer_snapshot.
#[tracing::instrument(level = "debug", skip_all)]
pub fn compute_visibility_geometry(
walkability: Res<WalkabilityMap>,
mode: Res<ActivePerceptionMode>,
@@ -52,6 +53,7 @@ pub fn compute_visibility_geometry(
///
/// System ordering: after compute_visibility_geometry + compute_nearby_interactions,
/// before advance_tick.
#[tracing::instrument(level = "debug", skip_all)]
#[allow(clippy::type_complexity, clippy::too_many_arguments)]
pub fn compute_observer_snapshot(
time: Res<SimulationTime>,
+1
View File
@@ -337,6 +337,7 @@ pub fn select_dialogue_line<'a>(
/// line to DialogueResponseBuffer.
///
/// System ordering: after process_player_input, before compute_observer_snapshot.
#[tracing::instrument(level = "debug", skip_all)]
#[allow(clippy::type_complexity, clippy::too_many_arguments)]
pub fn process_talk_interaction(
mut commands: Commands,
+1
View File
@@ -164,6 +164,7 @@ impl ObjectType {
/// priority adjustment (e.g. POI -> Observe first) is applied by the observer
/// system after taking the buffer. This keeps the simulation phase free of
/// knowledge graph dependencies (D-010 phase boundary).
#[tracing::instrument(level = "debug", skip_all)]
#[allow(clippy::type_complexity)]
pub fn compute_nearby_interactions(
mut player_query: Query<
+1
View File
@@ -273,6 +273,7 @@ pub struct MoveIntent {
/// entities without intents, then resolve movers in order — first valid claim
/// to a layer slot wins.
/// Always removes MoveIntent component after processing.
#[tracing::instrument(level = "debug", skip_all)]
pub fn validate_movement(
mut commands: Commands,
walkability: Option<Res<WalkabilityMap>>,
+1
View File
@@ -48,6 +48,7 @@ impl MovementSpeed {
/// System: NPC entities with ComputedPath advance along their path.
/// Creates MoveIntent for the next step. Removes ComputedPath when complete.
#[tracing::instrument(level = "debug", skip_all)]
pub fn follow_paths(
mut commands: Commands,
mut query: Query<(Entity, &mut ComputedPath, Option<&mut MovementSpeed>), With<Npc>>,
+1
View File
@@ -58,6 +58,7 @@ pub struct PathBlocked;
/// Cardinal-only is a deliberate v0.1 simplification: diagonal movement
/// would require √2 cost handling and diagonal wall-clipping checks.
/// Removes PathRequest and inserts ComputedPath or PathBlocked.
#[tracing::instrument(level = "debug", skip_all)]
pub fn compute_paths(
mut commands: Commands,
walkability: Option<Res<WalkabilityMap>>,