ID:WORK-051Status:in-progress
Editor Package Awareness
Priority:highComplexity:complexMilestone:v1.0.0
No incremental history — criteria tracking started on Apr 17.
The editor (packages/editor/) only sees core runes. It doesn't load community or official packages from refrakt.config.json, so package runes don't appear in the palette, fail to parse in preview, and can't be edited. This gap existed before the official packages breakout but is now critical — official @refrakt-md/* runes like hero, character, and api are invisible to the editor.
The SvelteKit plugin (packages/sveltekit/src/plugin.ts) and CLI inspect command already load packages via loadRunePackage() + mergePackages(). The editor needs the same treatment.
refrakt.config.json on startup using loadRunePackage() + mergePackages()/api/runes endpoint)RunePackage.displayName)CHILD_RUNES set is derived from rune schemas rather than hardcodedRUNE_CATEGORIES map uses package displayName for package runes instead of hardcoded categoriesRuneConfig entries are included in the theme config sent to the client for preview renderingpostTransform hooks survive the server→client serialisation boundaryRefraktConfig (or config.packages) through to startEditor() via EditorOptionsloadRunePackage() + mergePackages() in packages/editor/src/server.ts on startupMarkdoc.transform() in packages/editor/src/preview.ts/api/runes responseRuneConfig entries into the themeConfig sent to the clientCHILD_RUNES with schema-derived detection (runes with a parent tag are children)RUNE_CATEGORIES with dynamic grouping: core runes keep functional categories, package runes use RunePackage.displayName