Vyasa Extension Refactor Audit and Execution Plan

Target Core ShapeURL copied

Core should end near this shape:

vyasa/
  __init__.py
  app.py                 # app factory, no feature routes
  bootstrap.py           # FastHTML/starlette boot helpers
  config.py              # raw config load, root/folder config merge
  extensions.py          # contract, registry, runtime, app facade
  runtime_context.py     # request/render/runtime context objects
  content_tree.py        # content source contract and default index model
  content_paths.py       # slug/path/url safe primitives
  rbac_policy.py         # core RBAC policy
  rbac_store.py          # core RBAC durable state
  logging.py
  main.py                # CLI only

Core should not contain:

  • Mermaid
  • D2
  • Cytograph
  • Tasks
  • Tabs
  • Slides
  • Blog home
  • Search UI
  • Bookmarks
  • Annotations
  • Theme selector behavior
  • Layout HTML
  • Navbar HTML
  • Sidebar HTML
  • Favicon generation, unless kept as a tiny core default asset fallback
  • Static build hard-coded page shell