Native query: Atlas VectorSearch ($vectorSearch) translation

XMLWordPrintableJSON

    • Type: Task
    • Resolution: Unresolved
    • Priority: Unknown
    • None
    • Affects Version/s: None
    • Component/s: None
    • None
    • None
    • Dotnet Drivers
    • None
    • None
    • None
    • None
    • None
    • None

      Native LINQ query rewrite sub-project (epic EF-322). Split out of EF-347 (remaining SP6 operators) because Atlas Vector Search is a distinct feature area — it has its own reviewer (vector-search-reviewer) and spans Query/Metadata/Storage/Extensions (VectorIndex_, BinaryVector_, VectorSearch*) — rather than a relational LINQ operator.

      Goal: translate the provider's VectorSearch LINQ extension into a native Atlas $vectorSearch aggregation-pipeline stage on the provider's own native translation path, instead of routing it through the driver-LINQ fallback (the native gate currently detects VectorSearch via ContainsVectorSearch over CapturedExpression and forces fallback — see Query/AGENTS.md).

      Discipline (same as prior native sub-projects): zero regressions, no coverage shrink, driver-LINQ fallback kept behind it; unsupported shapes fall back cleanly (throw only under NativeOnly). Native default + emitted MQL are implementation details, not breaking changes (per the versioning rubric) — results unchanged. Gated behind Atlas (vector search requires Atlas Search; tests run against mongodb/mongodb-atlas-local per the test infra).

      Sequencing: orthogonal to the relational SP6 operators (EF-347) and to SP7 (materializer perf) — can slot in independently. Ships as a stacked branch on the native chain, one squashed commit, per the stacked-PR workflow.

      Roadmap: docs/superpowers/specs/2026-06-23-native-query-provider-design.md ("Sub-projects 2–7", item 6). Split from EF-347.

            Assignee:
            Unassigned
            Reporter:
            Arthur Vickers
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

              Created:
              Updated: