Back to Serial Studio

Architecture — Index

doc/claude/architecture.md

4.0.32.4 KB
Original Source

Architecture — Index

The architecture corpus is split per subsystem under doc/claude/architecture/ so "read the relevant doc in full" loads only the subsystem being touched. Every fact from the old monolithic file lives in exactly one file below; this index carries no unique content. The most dangerous rules (threading, hotpath connections, no-alloc, ctor closure) are also summarized inline in CLAUDE.md — the sub-files hold the full detail.

FileRead it in full before touching
architecture/dataflow.mdAnything on the Driver → FrameReader → FrameBuilder → Dashboard path: data-flow diagram, timestamp ownership, threading rules, cached hotpath flags (m_changeDriven, m_captureLatestFrame, ...), the 256 kHz benchmark gate and its CI mechanics.
architecture/startup.mdModuleManager, singleton construction order, the ProjectModel ctor-closure protected surface, AppState, operation modes, MMCSS, the packaging-aware updater.
architecture/io.mdIO drivers and managers: the no-singleton-driver model, UI-vs-live driver split, file transmission protocols. New drivers: ss-new-driver skill + BluetoothLE reference.
architecture/project.mdProjectModel/ProjectEditor split, file watcher, rolling backups, multi-source, JSON Keys:: + schema versioning, the Modbus map / DBC importers and their generated parsers + dashboards.
architecture/scripting.mdThe three parser engines (JS/Lua/Native), watchdogs, per-dataset transforms, data tables, control scripts (worker-thread contract + lifecycle), embedded code-editor plumbing, binary-decoder byte-table semantics.
architecture/dashboard.mdUI::Dashboard ingest push tables, alarm bands, dashboard tools, plot X-axis / TimeRing / downsamplers / GPU curves / area fill / sweep-trigger, time range, waterfall, output widgets, workspaces.
architecture/export.mdCSV/MDF4 export schema, the Sessions SQLite DB (schema, replay, snapshots, PK/index rules).

Cross-cutting reads: a Dashboard ingest change is also a hotpath change (dataflow.md); a ProjectModel ctor-adjacent change is also a startup change (startup.md). When a change spans subsystems, read every file it touches.