feat: add pipeline introspection demo mode

- Add PipelineIntrospectionSource that renders live ASCII DAG with metrics
- Add PipelineMetricsSensor exposing pipeline performance as sensor values
- Add PipelineIntrospectionDemo controller with 3-phase animation:
  - Phase 1: Toggle effects one at a time (3s each)
  - Phase 2: LFO drives intensity default→max→min→default
  - Phase 3: All effects with shared LFO (infinite loop)
- Add pipeline-inspect preset
- Add get_frame_times() to Pipeline for sparkline data
- Add tests for new components
- Update mise.toml with pipeline-inspect preset task
This commit is contained in:
2026-03-16 16:55:57 -07:00
parent 2a41a90d79
commit f638fb7597
14 changed files with 1186 additions and 55 deletions

View File

@@ -30,17 +30,6 @@ viewport_height = 24
camera_speed = 0.5
firehose_enabled = false
[presets.pipeline]
description = "Pipeline visualization mode"
source = "pipeline"
display = "terminal"
camera = "trace"
effects = ["hud"]
viewport_width = 80
viewport_height = 24
camera_speed = 1.0
firehose_enabled = false
[presets.websocket]
description = "WebSocket display mode"
source = "headlines"
@@ -74,6 +63,17 @@ viewport_height = 24
camera_speed = 2.0
firehose_enabled = true
[presets.pipeline-inspect]
description = "Live pipeline introspection with DAG and performance metrics"
source = "pipeline-inspect"
display = "terminal"
camera = "vertical"
effects = ["hud"]
viewport_width = 100
viewport_height = 35
camera_speed = 0.3
firehose_enabled = false
# Sensor configuration (for future use with param bindings)
[sensors.mic]
enabled = false