The work took shortcuts in four categories:
- Runtime shortcut: extensions are plain modules with
META and configure().
They do not implement VyasaExtension.
- Registration shortcut:
configure(runtime) mutates lists and dicts on
ExtensionRuntime directly. That bypasses the restricted app contract and
cannot validate that a registration is declared in metadata.
- Ownership shortcut: feature renderers still live in
vyasa/extensions_builtin/markdown/renderer.py. Mermaid, D2, Cytograph, and
Tasks extensions import private functions from Markdown instead of owning
their renderers.
- Asset shortcut: almost all JavaScript and CSS still lives in
vyasa/static/scripts.js and vyasa/static/header.css. Extension folders
may have copied assets, but pages still load the global bundle.