Archived
feat: expose membership and job APIs
This commit is contained in:
1 parent
ad192365a1
commit
734ba404c8
12 files changed
+624
-19
No files matched your search
@@ -6,7 +6,8 @@ How `recoll-modern` is built today. Update in the same commit as any structural
|
||||
|
||||
The Python service scaffold, SQLite schema, collection and membership repositories, document
|
||||
discovery/identity modules, durable job worker, engine adapter, authentication service, and initial
|
||||
HTTP shell are built. Membership, search and job resource routes remain to be added. Recoll behaviour
|
||||
HTTP shell, membership routes, and job routes are built. Search and document retrieval remain to be
|
||||
added. Recoll behaviour
|
||||
below was verified against a real container.
|
||||
|
||||
The goal: a self-hosted service that wraps Recoll's indexing and full-text search behind (a) a modern
|
||||
@@ -31,7 +32,7 @@ web UI and (b) an MCP server, running in Docker, with several independent collec
|
||||
| `helper/` | C reader run by Recoll's `metadatacmds` for each indexed file |
|
||||
| `src/recoll_modern/engine/` | Shared Protocol, deterministic fake, and isolated Recoll Python/indexer adapter |
|
||||
| `src/recoll_modern/domain/auth.py`, `storage/auth.py` | Argon2 password checks, seeded administrator, hashed server-side sessions and CSRF verification |
|
||||
| `src/recoll_modern/api/` | HTTP auth, health, file browsing, collection metadata, prefix/proxy handling and JSON errors |
|
||||
| `src/recoll_modern/api/` | HTTP auth, health, file browsing, collection/membership/rule/job resources, prefix/proxy handling and JSON errors |
|
||||
| `tests/` | Automated service tests |
|
||||
|
||||
Discovery produces content hashes and root-relative paths without writing to the document volume.
|
||||
@@ -104,6 +105,10 @@ Core routes use a server-side session cookie and CSRF token; `GET /auth/session`
|
||||
the database only stores hashes. Forwarded scheme, host and prefix are applied only for configured
|
||||
proxy networks.
|
||||
|
||||
Membership, rule, and reindex writes create versioned, durable jobs. The worker updates SQLite
|
||||
provenance, exports the membership map, and forces affected paths through the engine. Document listing
|
||||
derives effective membership from SQLite and includes direct and rule provenance.
|
||||
|
||||
The resource groups are auth, health, read-only file browsing, collections and membership sources,
|
||||
directory rules, scoped search, document text/original retrieval, and indexing jobs. Search callers
|
||||
select returned fields; only `document_id` is unconditional, and inline full text is bounded. Every
|
||||
|
||||
Reference in new issue
Block a user