Tracking issue for the audit-driven improvement chantier (2026-07-18). Orchestrated per dev-methodology: one branch + squash-merged PR per workstream, sequential integration, full suite at each merge. Wave 1 complete — 16 workstreams merged, 127 → 198 tests, CI green on main.
Final status
Lot 1 — reliability
chore(workspace): add CI and clean formatting/clippy drift #9 chore(workspace): CI + fmt/clippy cleanup — PR chore(workspace): add CI and clean formatting/clippy drift #25
test(components): serde round-trip coverage for every component variant and alias #10 test(components): serde round-trip all variants — PR test(components): serde round-trip coverage for every component variant and alias #26
fix(engine): honor start_at/end_at visibility windows in the paint pipeline #5 fix(engine): honor start_at/end_at in paint pipeline — PR fix(engine): honor start_at/end_at visibility windows and wire timeline steps #27
fix(engine): implement or remove the dead timeline field #6 fix(engine): timeline field decision — PR fix(engine): honor start_at/end_at visibility windows and wire timeline steps #27 (implemented: steps = animations with delay += at)
fix(components): wire Caption and Positioned into timed/animatable dispatch #7 fix(components): Caption/Positioned dispatch — PR fix(engine): honor start_at/end_at visibility windows and wire timeline steps #27
fix(components): factor typeface resolution and stop panicking on missing fonts #8 fix(components): typeface resolution fallback — PR fix(components): factor typeface resolution and stop panicking on missing fonts #28
fix(css): reconcile phantom properties (backdrop-filter, overflow-wrap, text-shadow typing) #12 fix(css): phantom properties — PR fix(css): reconcile phantom properties (filter, backdrop-filter, text-shadow, overflow-wrap) #29 (filter + backdrop-filter implemented, text-shadow bridged, validator warnings)
fix(studio): surface write/reload errors, restore debounce, avoid mutex poisoning #13 fix(studio): error surfacing + debounce + poisoning — PR fix(studio): surface write/reload errors, restore debounce, avoid mutex poisoning #30
Lot 2 — authoring & engine features
Lot 3 — studio features
Completeness pass
Backlog (open, scheduled for a future wave)
Decision log
Known remaining limits (documented, not regressions)
Undo: HTML annotation sidecar writes not undoable; undo raced against a pending 250ms debounce can be overwritten.
Sidecar files are not file-watched (studio is the only writer in practice).
Export: no cancellation; preview and export render concurrently (CPU contention only).
Tracking issue for the audit-driven improvement chantier (2026-07-18). Orchestrated per dev-methodology: one branch + squash-merged PR per workstream, sequential integration, full suite at each merge. Wave 1 complete — 16 workstreams merged, 127 → 198 tests, CI green on main.
Final status
Lot 1 — reliability
Lot 2 — authoring & engine features
Lot 3 — studio features
Completeness pass
sizefields converted (found by feat(cli): validate rm-* and JSON component attributes at validation time #33's validation) — PR docs(examples): replace dead size fields in component-showcase #39Backlog (open, scheduled for a future wave)
Decision log
Known remaining limits (documented, not regressions)