ID:WORK-051Status:in-progress
Editor Package Awareness
Priority:highComplexity:complexMilestone:v1.0.0Source:SPEC-001
e900a90f262d7b2637549a129a9ea3330072f24c14The 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