Views step H part B: semantic search and symbol queries run on views
Merged
AF
4d ago+2467+2467+0123456789012345678901234567890123456789-1836-1836-0123456789012345678901234567890123456789
Views step H, part B. Views stay off by default; with views.enabled, semantic search and symbol queries on a checkout now run on the new (v3) index format instead of the legacy per-root indexes.
- The shared base's owner fills in shared entries and publishes readiness successors; checkouts read the base plus their own deltas (no per-checkout override copies).
- Parent-folder semantic search reads foreign v3 child members only through an opened handle that holds read-marker protection.
- The storage floor is raised durably before every v3 write; views-off writes no v3 data. The legacy
enforceis skipped for v3 owners (it crashed on a v3-only registry). - Checkouts without a steady watcher subscription (every macOS checkout) no longer bump their version on each search, which made their next update refuse its own result; a base-readiness rebind no longer marks already-filled semantic results unverified.
- Speed: semantic publications batched per model request, pass-scoped reader reuse, process-local floor durability proofs.
Build server, merged with main: lib 10,890 passed (3 load failures, each passing alone 3x), integration 2,573 passed (3 subc_format goldens that also fail on main there; 1 readiness test passing alone 3x), bin 184 passed, Linux and Windows compile with warnings as errors. Search descriptor: engine_unwired.
Summary by cubic
Views step H, part B. Views stay off by default; with views.enabled, semantic search and symbol queries on a checkout now run on the new (v3) index format instead of the legacy per-root indexes.
- The shared base's owner fills in shared entries and publishes readiness successors; checkouts read the base plus their own deltas, with no per-checkout override copies.
- Parent-folder semantic search reads foreign v3 child members through an opened handle that holds read-marker protection.
- The storage floor is raised durably before every v3 write, views-off writes no v3 data, and legacy eviction is skipped for v3-only owners. Sidecars that vanish mid-accounting count as zero bytes.
- Checkouts without a steady watcher subscription (every macOS checkout) no longer bump their version on each search, and a base-readiness rebind no longer marks already-filled results unverified.
- Event paths and write-intent wakes are matched through the checkout path identity, so Windows verbatim prefixes, symlinked roots, deletions, and not-yet-created descendants still route.
- Semantic publications are batched per model request, with pass-scoped reader reuse and process-local floor durability proofs.