Skip to content

Design Notes

Per-slice deep-dive design documentation.

Purpose

These docs explain how each implemented slice actually works in code — the class shapes, runtime flows, lifecycle states, and load-bearing decisions that the spec intentionally abstracted. They're reference material for anyone modifying or extending an existing slice's surface area.

The audience is a future maintainer who needs to understand "if I touch this code tomorrow, what hangs together" — not a reviewer evaluating whether to ship the slice (specs cover that), and not a Copilot agent executing the implementation (tasks cover that).

When to read which doc

SituationRead
Modifying the multi-tag pipeline, adding a new tag, changing emit cadenceSLICE-1.1 design
Learning the multi-tag flow as an app scenario and C#/.NET walkthroughSLICE-1.1 telemetry deep dive
Touching frame allocation, the WriteableBitmap renderer, LOH pressureSLICE-1.2 design
Learning the frame flow from run start to WPF preview and GC behaviorSLICE-1.2 frame pipeline deep dive
Working on the encoder pipeline, timer-resolution issues, channel back-pressureSLICE-1.3 design
Tuning chaos parameters, adding a fault-injection mode, the FlakySdk decoratorSLICE-1.4 design
Modifying the FlaUI capture rig, scenario classes, the PowerShell orchestratorSLICE-1.6 design

Document template

Each design doc follows the same 7-section structure so future maintainers can scan them consistently:

  1. Quick reference — key types, files, tests, metrics
  2. Class shape — ASCII class diagram of the slice's main types
  3. Lifecycle — state diagram if the slice owns state, otherwise omitted
  4. Runtime flow — ASCII sequence diagram(s) for the main path(s)
  5. Decisions made during implementation — design choices that aren't in the spec ("why this shape")
  6. Invariants and traps — load-bearing facts a future maintainer must know before changing things
  7. Test surface — what's covered, what isn't, and why

Companion docs

Coverage

Phase 1 (5 slices, all completed):

  • ✅ SLICE-1.1 — multi-tag telemetry
  • ✅ SLICE-1.2 — real frame payloads
  • ✅ SLICE-1.3 — encoder-rate motion
  • ✅ SLICE-1.4 — storm & soak profiles
  • ✅ SLICE-1.6 — FlaUI capture rig

SLICE-1.5 / 1.5.1 were superseded mid-phase and have no design notes; their architectural choices live in their specs (linked from the Roadmap Progress page).

Phase 2: not yet implemented. SLICE-2.0 (store allocation profiling) is the next slice to land; design notes will follow once the implementation is merged.

Docs-first project memory for AI-assisted implementation.