Vyasa Extension Refactor Audit and Execution Plan
vyasa/extensions_builtin/default_search.py
- Search files are still core even though search is optional.
- The default search extension does not own routes or ranking.
- Create
vyasa/extensions_builtin/default_search/.
- Move ranking, indexing, result views, HTTP JSON routes, and search pages into
that extension.
- Core exposes a content snapshot interface.
- Extension registers route prefixes and search provider.
- Leverage: future search providers reuse the same search interface.
- Locality: ranking and UI behavior change together.
- Tests: temp content root plus enabled search extension returns expected pages
and JSON.