Interface RagRetrievalScope

Enterprise access scope applied at retrieval time. The augmentor translates these into the vector-store layer's metadata filter so forbidden context is excluded from results, not retrieved and then asked-to-be-ignored.

Empty/undefined fields are treated as "no constraint" (e.g. no tenantId means cross-tenant retrieval is allowed). When set, only chunks whose matching field matches the scope are eligible:

  • tenantId — exact match
  • aclGroups — intersection with chunk's aclGroups must be non-empty
  • classification — chunk's classification must be <= max sensitivity
  • status — chunk must be one of the listed lifecycle states (default: ['active'])
  • now — chunk's effectiveDate ≤ now ≤ expiresAt window
interface RagRetrievalScope {
    tenantId?: string;
    aclGroups?: string[];
    maxClassification?: "internal" | "public" | "confidential" | "restricted";
    status?: ("active" | "archived" | "deprecated" | "draft")[];
    now?: string;
}

Properties

tenantId?: string
aclGroups?: string[]
maxClassification?: "internal" | "public" | "confidential" | "restricted"

Maximum sensitivity the requesting principal is allowed to see.

status?: ("active" | "archived" | "deprecated" | "draft")[]

Allowed lifecycle states. Defaults to ['active'] when omitted.

now?: string

ISO timestamp for effective-date / expires-at filtering. Defaults to "now".