Extension Refactor Tracker

  • Task
    Add real extension contract in vyasa/extensions.py
  • Task
    Switch built-ins to EXTENSION.register(app)
  • Task
    Remove markdown hard-coded fence fallbacks
  • Task
    Move Mermaid/D2/Cytograph/Tasks/Cryptograph render ownership into extension modules
  • Task
    Move bookmarks and annotations route/storage wiring out of core.py
  • Task
    Move search and RBAC admin route registration behind extensions
  • Task
    Serve slide assets from extension-owned URLs under /static/extensions/...