> ## Documentation Index
> Fetch the complete documentation index at: https://nikita-shkoda.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Roadmap

> What’s developed, verified, and planned: lifecycle, indexing, client, DSL, synonyms/stopwords, and engine extensions.

This page tracks what is currently developed (🟣), verified (debugged 🟢), and planned (🔴).

## Core lifecycle

* 🟢 Schema compile/diff/apply/rollback (Collections/Aliases)
  * Compile model DSL → Typesense schema
  * Apply with blue/green + retention; rollback via alias
  * Docs: <a href="https://typesense.org/docs/29.0/api/collections.html" target="_blank">Collections</a>, <a href="https://typesense.org/docs/29.0/api/aliases.html" target="_blank">Aliases</a>

## Indexing

* 🟢 JSONL bulk import (Documents → Import)
  * Docs: <a href="https://typesense.org/docs/29.0/api/documents.html#bulk-import" target="_blank">Bulk import</a>
* 🟢 Delete by filter (Documents → Delete by query)
  * Docs: <a href="https://typesense.org/docs/29.0/api/documents.html#delete-documents-by-query" target="_blank">Delete by query</a>
* 🟢 Partitioned rebuild (engine feature; orchestrated via DSL/CLI)
* 🟢 Data sources:
  * 🟢 ActiveRecord
  * 🟢 SQL
  * 🟢 Lambda

## Client and execution

* 🟢 Single-search (documents.search)
  * Docs: <a href="https://typesense.org/docs/29.0/api/search.html" target="_blank">Search parameters</a>
* 🟣 Multi-search (federated)
  * Docs: <a href="https://typesense.org/docs/29.0/api/multi-search.html" target="_blank">Multi-search</a>
* 🟣 URL caching knobs <code>use\_cache</code>, <code>cache\_ttl</code>
  * Docs: <a href="https://typesense.org/docs/29.0/api/search.html" target="_blank">Search parameters</a>

## Relation DSL → Search parameters

* 🟢 Query basics: <code>q</code>, <code>query\_by</code>
  * Docs: <a href="https://typesense.org/docs/29.0/api/search.html" target="_blank">Search parameters</a>
* 🟢 Filters: <code>filter\_by</code> (compiled from AST; templates supported)
  * Docs: <a href="https://typesense.org/docs/29.0/api/search.html" target="_blank">Search parameters</a>
* 🟢 Sort: <code>sort\_by</code>
  * Docs: <a href="https://typesense.org/docs/29.0/api/search.html" target="_blank">Search parameters</a>
* 🟣 Field selection: <code>include\_fields</code>, <code>exclude\_fields</code>
  * Docs: <a href="https://typesense.org/docs/29.0/api/search.html" target="_blank">Search parameters</a>
* 🟢 Pagination: <code>page</code>, <code>per\_page</code>
  * Docs: <a href="https://typesense.org/docs/29.0/api/search.html#pagination" target="_blank">Pagination</a>
* 🟣 Grouping: <code>group\_by</code>, <code>group\_limit</code>, <code>group\_missing\_values</code>
  * Docs: <a href="https://typesense.org/docs/29.0/api/search.html#grouping" target="_blank">Grouping</a>
* 🟣 Highlighting: <code>highlight\_fields</code>, <code>highlight\_full\_fields</code>, <code>highlight\_affix\_num\_tokens</code>, <code>highlight\_start\_tag</code>, <code>highlight\_end\_tag</code>, <code>snippet\_threshold</code>
  * Docs: <a href="https://typesense.org/docs/29.0/api/search.html#highlighting" target="_blank">Highlighting</a>
* 🟣 Faceting: <code>facet\_by</code>, <code>max\_facet\_values</code>, <code>facet\_query</code>
  * Docs: <a href="https://typesense.org/docs/29.0/api/search.html#faceting" target="_blank">Faceting</a>
* 🟣 Ranking/typo/prefix: <code>num\_typos</code>, <code>drop\_tokens\_threshold</code>, <code>prioritize\_exact\_match</code>, <code>query\_by\_weights</code>, <code>infix</code> (via DSL <code>prefix</code>)
  * Docs: <a href="https://typesense.org/docs/29.0/api/search.html" target="_blank">Search parameters</a>
* 🟣 Vector search (ANN, <code>vector\_query</code>, hybrid, find similar, historical queries)
  * Schema: <code>embedding</code> macro with auto-embed and external modes
  * Query: <code>vector\_search</code>, <code>find\_similar</code>, sort by vector distance
  * Docs: <a href="/projects/search-engine-for-typesense/v30/vector-search">Vector Search</a>

## Synonyms & Stopwords

* 🟣 Runtime toggles: <code>enable\_synonyms</code> (<code>use\_synonyms</code>), <code>remove\_stop\_words</code> (<code>use\_stopwords</code>)
  * Docs: <a href="https://typesense.org/docs/29.0/api/search.html" target="_blank">Search parameters</a>
* 🟣 Admin APIs: upsert/list/get/delete per collection
  * Docs: <a href="https://typesense.org/docs/29.0/api/synonyms.html" target="_blank">Synonyms API</a>, <a href="https://typesense.org/docs/29.0/api/stopwords.html" target="_blank">Stopwords API</a>

## Engine-specific extensions (not native Typesense features)

* 🟣 JOINs DSL (compile-time `$assoc.field` selection/filter/sort; adapter-side only)
* 🟣 Presets (merge/only/lock) with pruning and conflicts
* 🟣 Hit limits: early cap (`limit_hits`) and post-fetch validation (`validate_hits!`)
* 🟣 Partition planner/dispatcher (inline or ActiveJob)
* 🟣 DX helpers (`explain`, `dry_run!`, `to_params_json`, `to_curl`)
* 🟣 Observability (events, compact logging, optional OpenTelemetry)
* 🟢 Live TTY progress (StepLine, Spinner, LiveRenderer with doc-based progress bars)
* 🟢 Orphan physical collection pruning (`Schema.prune_orphans!` + rake task)
* 🟢 Failed indexation safety (`IndexationAborted` prevents alias swap)
* 🟢 Partition timeout detection (`PartitionTimeout` on pool timeout)
* 🟢 Interrupt-safe pool (`InterruptiblePool` for Ctrl+C handling)

## Not yet implemented

* 🔴 Geo search (filters and distance sort)
  * Docs: <a href="https://typesense.org/docs/29.0/api/search.html#geosearch" target="_blank">Geo search</a>
* 🔴 Overrides management (CRUD)
  * Docs: <a href="https://typesense.org/docs/29.0/api/overrides.html" target="_blank">Overrides API</a>
* 🔴 Exhaustive/cutoff knobs: <code>exhaustive\_search</code>, <code>search\_cutoff\_ms</code>
  * Docs: <a href="https://typesense.org/docs/29.0/api/search.html" target="_blank">Search parameters</a>
* 🔴 Advanced faceting extras (nested/sampling/custom facet sort)
  * Docs: <a href="https://typesense.org/docs/29.0/api/search.html#faceting" target="_blank">Faceting</a>

Backlinks:
<a href="/projects/search-engine-for-typesense/v30/index">Overview</a>,
<a href="/projects/search-engine-for-typesense/v30/cli">CLI</a>,
<a href="/projects/search-engine-for-typesense/v30/configuration">Configuration</a>,
<a href="/projects/search-engine-for-typesense/v30/relation">Relation</a>,
<a href="/projects/search-engine-for-typesense/v30/compiler">Compiler</a>,
<a href="/projects/search-engine-for-typesense/v30/indexer">Indexer</a>
