SRC-05: facetten-filter-api
Facetten- und Filter-API für Suche (Absender, Zeitraum, Postfach, Anhangstyp, Tag), mandantengetrennt, mit UND-Verknüpfung mehrerer Filter. - migrations/0002..0005: vier nummerierte ALTER-Migrationen für die neuen Facettenfelder (Manticore erlaubt nur eine Spalte je ALTER-Anweisung), EnsureSchema wendet sie idempotent nach. - fields.go: FacetFields-Whitelist, einzige zulässige Facettendimensionen. - facets.go: Client.Facets nutzt Manticores strukturierte aggs.terms/ aggs.range-API, kein dynamischer SQL-Klauselbau. Filter kombinieren als zusätzliche equals-Klauseln in derselben bool.must-Liste wie der Tenant-Filter. Zeitraum-Facette über feste Buckets via aggs.range. Prüfungen (alle real durchgeführt, siehe mail/docs/SRC-05-PRUEFPROTOKOLL.md): 1. TestFacets_CountsMatchActualHits: Facettenzahlen stimmen real mit der tatsächlichen Treffermenge überein. 2. TestFacets_ThreeFiltersCombineWithAND: 3 kombinierte Filter schränken 4 Dokumente real auf genau 1 verbleibenden Treffer ein. 3. TestFacets_TenantSeparation: Facetten eines Mandanten enthalten real keine Werte eines anderen. Kein Umbau: Search/Delete/Index-Verhalten aus SRC-01/SRC-03 unverändert, dedup/indexworker/storage/crypto/encstorage unverändert. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01HhgFcLS8tYMhDJpP74C6AQ
This commit is contained in:
co-authored by
Claude Sonnet 5
parent
d23438d3d0
commit
db73aab0de
@@ -0,0 +1 @@
|
||||
ALTER TABLE mail_documents ADD COLUMN sender string attribute indexed
|
||||
@@ -0,0 +1 @@
|
||||
ALTER TABLE mail_documents ADD COLUMN mailbox string attribute indexed
|
||||
@@ -0,0 +1 @@
|
||||
ALTER TABLE mail_documents ADD COLUMN attachment_type string attribute indexed
|
||||
@@ -0,0 +1 @@
|
||||
ALTER TABLE mail_documents ADD COLUMN tag string attribute indexed
|
||||
Reference in New Issue
Block a user