Skip to content

Phase 17.2: production final-flush default for Rust opt-in indexing #184

@jununfly

Description

@jununfly

This was generated by AI during triage.

Parent

What to build

Implement the production temp on-disk final-flush path and make it the default write path for explicit Rust indexing. A user running --engine rust should get the production final-flush behavior without opting into an experimental mode. --sqlite-write-mode disk must remain available for debugging and fallback analysis, and memory-final-flush must remain experimental/debug rather than production default.

This issue should keep Rust opt-in. It must not make Rust the default product indexer.

Acceptance criteria

  • --engine rust uses the production temp on-disk final-flush path by default.
  • The staged database is only promoted after a successful Rust indexing run and validation.
  • A failed Rust indexing run leaves the previous good active index intact.
  • --sqlite-write-mode disk still selects the disk write path.
  • memory-final-flush is not the production default and is clearly treated as experimental/debug.
  • Existing TypeScript shell, resolver, MCP, and Explore behavior continue to read the Rust-produced active index.
  • Tests added in Phase 17.1: final-flush default path design and failure-safety tests #183 pass without weakening their failure-safety assertions.
  • No SQLite schema change is introduced.

Blocked by

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requestready-for-agentFully specified and ready for an AFK agent

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions