Full-Text Row Search

Search titles, bodies, and indexed property content with PostgreSQL ranking inside ordinary Dotabase queries.

Overview

Description

Full-Text Row Search applies PostgreSQL text search and ranking to Dotabase titles, bodies, and indexed row content.

The query layer serializes a bounded search clause into parameterized SQL and composes it with the same tenant, archive, filter, sort, and pagination rules used by ordinary row queries. PostgreSQL evaluates the maintained search vector and relevance rank inside the database, avoiding a client-side scan and keeping the lexical result set consistent across surfaces.

Selling Points

  • Works without an embedding provider.
  • Composes with filters, sorting, and pagination.
  • Uses database indexes instead of client-side scans.
  • Searches stored row text without sending content to an inference provider.
  • Shares one ranked query contract across saved views and integrations.

User Story

As a researcher, I search a large Dotabase for exact language and narrow the results with structured filters. I submit a text clause with the relevant Dotabase query, add property filters, and page through ranked matches. The database applies tenant and archive boundaries before returning rows. I walk away with reproducible lexical results that can be automated or stored as view state rather than a browser-only search.

Extension Surface

Automatable: every query-capable surface can supply the same text-search clause.

packages/dotabases/src/query/text-search.ts is the programmatic extension surface: API, CLI, MCP, and UI compositions can provide the documented clause. The tokenizer, SQL serialization, and index semantics remain platform-defined.

Capabilities & Limits

  • Capability: Executes the scoped workflow described above through the cited live implementation paths.
  • Capability: Preserves typed validation and applicable tenant, schema, lifecycle, or service boundaries.
  • Limit: Optimized for lexical relevance; meaning-based matches and RRF fusion belong to Semantic and Hybrid Row Search. The feature supports ranked title, body, and indexed-property lookup alongside filters, sorting, and pagination. It cannot find concepts that share no useful terms, search content excluded from the vector, or replace a semantic retriever. Relevance also follows PostgreSQL lexical configuration rather than a customer-trained ranking model.

Implementation Map

  • packages/dotabases/src/query/text-search.ts
  • packages/dotabases/src/query/row-query.ts
  • packages/db/src/schema/dotabases.ts

Properties

Property
Value
product
dots-platform
extensibility
automatable
module
Dotabases
packages
dotabases, db
status
shipped
surface
api
summary
Search titles, bodies, and indexed property content with PostgreSQL ranking inside ordinary Dotabase queries.

Connections

Full-Text Row Search · Explore connections

  • requirestoTyped Dotabase Query DSL
  • implemented bytopackages/dotabases/src/internal/query/text-search.ts
  • implemented bytopackages/db/src/schema/dotabases.ts
  • complementstoSemantic and Hybrid Row Search
  • implemented bytoserializeTextSearch
  • implemented bytodotabaseRows
  • implementstoDS_Dotabases — Comprehensive Module Spec

Connected Records7

Complements
Implemented by
dotabaseRows
packages/db/src/schema/dotabases.ts
packages/dotabases/src/internal/query/text-search.ts
serializeTextSearch
Implements
DS_Dotabases — Comprehensive Module Spec
Requires
7 connections.