Excessibility.TelemetryCapture.Analyzers.StateMachine (Excessibility v0.14.0)
View SourceAnalyzes state transitions across timeline events.
Detects:
- Keys added between events
- Keys removed between events
- Rapid state changes (many transitions)
- Unstable state (keys added then removed)
Uses data from the State enricher (state_keys) to track how the assign keys change over time.
Algorithm
- Compare state_keys between consecutive events
- Identify added and removed keys
- Detect patterns:
- Rapid changes: 3+ transitions with changes
- Unstable state: Keys that appear and then disappear
- Calculate summary statistics
Output
Returns findings and statistics:
%{
findings: [
%{
severity: :info,
message: "2 keys added between events 1→2",
events: [1, 2],
metadata: %{added: [:products, :cart], removed: []}
}
],
stats: %{
total_transitions: 4,
total_keys_added: 5,
total_keys_removed: 2
}
}
Summary
Functions
Callback implementation for Excessibility.TelemetryCapture.Analyzer.analyze/2.
Callback implementation for Excessibility.TelemetryCapture.Analyzer.default_enabled?/0.
Callback implementation for Excessibility.TelemetryCapture.Analyzer.name/0.
Callback implementation for Excessibility.TelemetryCapture.Analyzer.requires_enrichers/0.
Functions
Callback implementation for Excessibility.TelemetryCapture.Analyzer.analyze/2.
Callback implementation for Excessibility.TelemetryCapture.Analyzer.default_enabled?/0.
Callback implementation for Excessibility.TelemetryCapture.Analyzer.name/0.
Callback implementation for Excessibility.TelemetryCapture.Analyzer.requires_enrichers/0.