Permission-Aware Retrieval

Every matching branch consumes current authorization before ranking or projection

Permission-Aware Retrieval Every matching branch consumes current authorization before ranking or projection 01 / Sources 02 / Match 03 / Authorize 04 / Rank 05 / Project Shared Corpus · connected knowledge · 01 / Sources · source ACL Shared Corpus connected knowledge source ACL Member Query · current principal · 01 / Sources · viewer scope Member Query current principal viewer scope Private Uploads · owner-only index · 01 / Sources · separate corpus Private Uploads owner-only index separate corpus Lexical · BM25 or GIN · 02 / Match Lexical BM25 or GIN Semantic · HNSW or exact · 02 / Match Semantic HNSW or exact Near-Miss · optional fuzzy · 02 / Match Near-Miss optional fuzzy Authorized Rows · ACL relation joined · 03 / Authorize · inside SQL Authorized Rows ACL relation joined inside SQL Authorized Rows · ACL relation joined · 03 / Authorize · inside SQL Authorized Rows ACL relation joined inside SQL Authorized Rows · ACL relation joined · 03 / Authorize · inside SQL Authorized Rows ACL relation joined inside SQL Fusion · reciprocal-rank merge · 04 / Rank · authorized only Fusion reciprocal-rank merge authorized only Optional Rerank · exact survivors · 04 / Rank Optional Rerank exact survivors Evidence Set · Search or Chat · 05 / Project · bounded projection Evidence Set Search or Chat bounded projection shared passages source ACL query signal member-scoped private passages owner-only lexical candidates current access semantic candidates current access rows current access authorized lexical survivors only authorized semantic survivors only authorized fallback survivors only optional order no widening ranked evidence bounded Legend primary data policy / PII async batch data store data flow

Several Matchers

  • • Lexical, semantic, exact, and optional fuzzy branches contribute
  • • Deterministic fusion combines authorized survivors

Authorization Is In The Query

  • • Every branch joins the current authorization relation
  • • Raw candidates never cross into application code
  • • Counts, snippets, facets, and cache writes use survivors only

Bounded Evidence

  • • Search returns ranked source projections
  • • Chat cites evidence, not navigation-only history
  • • Opening an anchor authorizes again