Part of #14. Ref: docs/ARCHITECTURE_V2.md L2 (the reusable heart).
Extract the virtualized text surface as a standalone module that renders any Document. Introduce one Decoration model (line/range + style + gutter + minimap marker + click action).
Tasks
Done when: viewer-core knows nothing about logs/code; all markers are Decorations.
Part of #14. Ref: docs/ARCHITECTURE_V2.md L2 (the reusable heart).
Extract the virtualized text surface as a standalone module that renders any Document. Introduce one Decoration model (line/range + style + gutter + minimap marker + click action).
Tasks
viewer-coremodule.Decorationtype + registry.Done when: viewer-core knows nothing about logs/code; all markers are Decorations.