Commit Graph
5 Commits
Author SHA1 Message Date
Lucas Winther 718d5ce7ff docs: plan search engine API implementation 2026-09-18 17:50:23 +02:00
Lucas Winther 9981645f4e docs: preserve desktop packaging seam 2026-09-18 17:37:17 +02:00
Lucas Winther b776ee603e docs: complete search engine API design 2026-09-18 17:34:16 +02:00
Lucas WintherandClaude Opus 5 3d6067f4fa docs: add spec 001 and a resume note for the next session
Writes docs/specs/001-search-engine-api.md covering the search engine and HTTP
API: collections managed at runtime, per-file membership supplied to Recoll at
index time, content-hash document identity with canonical paths, an in-process
indexing job queue, scoped search, and authentication. Twenty-four numbered
requirements, each with an acceptance criterion, plus the constraints the design
must hold: read-only documents, per-file membership, content-hash identity, and
no silently unscoped search.

The spec is status: draft. It has had its self-review pass but has not been
signed off, so no plan and no code may be written against it yet.

Self-review changed three things. Deleting a collection now states that it
enqueues reindexing of the affected canonical paths, because the previous
wording claimed no index work while leaving the deleted id in the index. The
search scope parameter is specified as collection ids rather than names, since
names are mutable and would break saved queries on rename. And the reported
match count is documented as approximate, because Xapian estimates it for large
result sets.

Three known gaps are recorded rather than left implicit: there is no way to read
a matched document until spec 002, the indexing overhead figures come from small
text files rather than real PDFs, and every authenticated user sees every
collection until spec 004.

docs/TODO.md gains a "Resume here" section stating where the workflow stands,
what the next action is, and the traps a resuming agent would otherwise hit --
chiefly that the extended-attribute membership design was superseded mid-session
and survives in the append-only decision log.

Co-Authored-By: Claude Opus 5 (1M context) <[email protected]>
2026-09-18 17:09:26 +02:00
Lucas WintherandClaude Opus 5 895eabcb69 chore: bootstrap agent-ready docs and rules
Empty repository: no commits, no stack. Establishes AGENTS.md as the single
source of truth, thin CLAUDE.md/GEMINI.md pointers, permission config, and the
docs/ progressive-disclosure tree.

Commands section is deliberately unfilled — no stack exists to verify commands
against.

Co-Authored-By: Claude Opus 5 (1M context) <[email protected]>
2026-09-18 16:41:56 +02:00