<?xml version="1.0" encoding="UTF-8"?>
<mxfile host="eli.ai" agent="eli.ai diagram exporter" version="1">
  <diagram id="authorized-graphrag-retrieval-5c5b9f53" name="Authorized GraphRAG retrieval">
    <mxGraphModel dx="1600" dy="1200" grid="1" gridSize="10" guides="1" tooltips="1" connect="1" arrows="1" fold="1" page="1" pageScale="1" pageWidth="1600" pageHeight="1200" math="0" shadow="0">
      <root>
        <mxCell id="0"/>
        <object id="1" label="Authorized GraphRAG retrieval" schemaVersion="1" diagramId="authorized-graphrag-retrieval-5c5b9f53" canonicalAppearanceKey="tsx:src/app/(docs)/docs/concepts/retrieval/page.tsx:graphragChart#1" sourceSha256="5c5b9f53cd907e12b340f13caf3fb9a69a07d462562edf0ae5e723299ced020f" metadataPayloadSha256="bd92441320655c2d5cf439b60f45514ceb041182ab57bc85efc224c208eab6e3" generationKey="07174fd49e884a18148b9c48615197c4dcb4feb3dfc51f2a919b5ce85a230078" concepts="[&quot;Retrieval&quot;,&quot;Graphrag&quot;]" keywords="[&quot;content ACL&quot;,&quot;reciprocal-rank fusion&quot;,&quot;ACL-filtered expansion&quot;,&quot;shared judgeAssertions&quot;,&quot;user question + authenticated actor&quot;,&quot;workspace-visible OR principal intersection&quot;,&quot;ACL-filtered FTS channel&quot;,&quot;ACL-filtered vector channel (pgvector)&quot;,&quot;chat model → grounded answer + citations&quot;,&quot;async groundedness check&quot;,&quot;graph/entity&quot;,&quot;retrieve()&quot;,&quot;Sn&quot;]" application="{&quot;name&quot;:&quot;eli-ai&quot;,&quot;version&quot;:&quot;0.1.0&quot;}" packages="{&quot;mermaid&quot;:&quot;11.16.0&quot;,&quot;mermaidCli&quot;:&quot;11.16.0&quot;,&quot;playwright&quot;:&quot;1.62.1&quot;,&quot;playwrightCore&quot;:&quot;1.62.1&quot;,&quot;puppeteer&quot;:&quot;25.6.0&quot;,&quot;puppeteerCore&quot;:&quot;25.6.0&quot;}" environment="{&quot;architecture&quot;:&quot;x64&quot;,&quot;containerImage&quot;:&quot;playwright:v1.62.1-noble@sha256:c091b21d9fae78c76e85cd4356431e9b018402f172a214fc7d7a5e9a7e29d8ac+node:26.3.1-bookworm-slim@sha256:209558c3e5e40e8adff68959d3c2ba7cd73723e716d89196878a0c362fa1e109&quot;,&quot;node&quot;:&quot;v26.3.1&quot;,&quot;platform&quot;:&quot;linux&quot;,&quot;yarn&quot;:&quot;4.17.1&quot;}" renderer="{&quot;browser&quot;:{&quot;executableSha256&quot;:&quot;0b20b130e7edd9dd51873be867761295fe0cfad490c2b9a64f95bd3cfc08fa71&quot;,&quot;name&quot;:&quot;chromium&quot;,&quot;revision&quot;:&quot;1234&quot;,&quot;version&quot;:&quot;151.0.7922.34&quot;},&quot;font&quot;:{&quot;family&quot;:&quot;Eli Diagram Inter Variable&quot;,&quot;fileSha256&quot;:&quot;3100e775e8616cd2611beecfa23a4263d7037586789b43f035236a2e6fbd4c62&quot;,&quot;licenseSha256&quot;:&quot;3b0a5fca3d17942cde889069889dedbbbd075e9b599968c82a95f4d944e9b345&quot;},&quot;mermaidConfigSha256&quot;:&quot;68c10966fe84406ee626034d58bfabd555df9f65f691204b7c46db24038da101&quot;,&quot;themeCssSha256&quot;:&quot;c80287a78d80ad63d27bd5ca348b2ef9a7e2f44da289e436be6484ea28a1b033&quot;}" adapterVersions="{&quot;diagramGenerator&quot;:&quot;2&quot;,&quot;drawioFlowchart&quot;:&quot;1&quot;,&quot;drawioGantt&quot;:&quot;1&quot;,&quot;drawioSequence&quot;:&quot;1&quot;,&quot;drawioState&quot;:&quot;1&quot;}" mermaidType="flowchart" direction="LR" generatedAt="2026-08-12T23:37:03.077Z" mermaidSource="flowchart LR&#10;  Qy[&quot;user question + authenticated actor&quot;] --&gt; ACL[&quot;content ACL&lt;br/&gt;workspace-visible OR principal intersection&quot;]&#10;  ACL --&gt; R[&quot;retrieve()&quot;]&#10;  R --&gt; FTSc[&quot;ACL-filtered FTS channel (BM25-ish)&quot;]&#10;  R --&gt; Vec[&quot;ACL-filtered vector channel (pgvector)&quot;]&#10;  FTSc --&gt; Fuse[&quot;reciprocal-rank fusion&quot;]&#10;  Vec --&gt; Fuse&#10;  Fuse --&gt; Graph[&quot;ACL-filtered graph/entity expansion&quot;]&#10;  Graph --&gt; Ctx[&quot;context assembly&lt;br/&gt;[Sn] sources, dedup, budget&quot;]&#10;  Ctx --&gt; Gen[&quot;chat model → grounded answer + citations&quot;]&#10;  Gen --&gt; Badge[&quot;async groundedness check&lt;br/&gt;(shared judgeAssertions)&quot;]">
          <mxCell parent="0"/>
        </object>
        <object id="n:Qy" label="user question + authenticated actor" mermaidId="Qy" mermaidShape="rectangle">
          <mxCell parent="1" vertex="1" style="fillColor=#ECECFF;fontColor=#333333;html=1;rounded=0;strokeColor=#9370DB;whiteSpace=wrap;">
            <mxGeometry x="8" y="71" width="256" height="76" as="geometry"/>
          </mxCell>
        </object>
        <object id="n:ACL" label="content ACLworkspace-visible OR principal intersection" mermaidId="ACL" mermaidShape="rectangle">
          <mxCell parent="1" vertex="1" style="fillColor=#ECECFF;fontColor=#333333;html=1;rounded=0;strokeColor=#9370DB;whiteSpace=wrap;">
            <mxGeometry x="314" y="59" width="256" height="100" as="geometry"/>
          </mxCell>
        </object>
        <object id="n:R" label="retrieve()" mermaidId="R" mermaidShape="rectangle">
          <mxCell parent="1" vertex="1" style="fillColor=#ECECFF;fontColor=#333333;html=1;rounded=0;strokeColor=#9370DB;whiteSpace=wrap;">
            <mxGeometry x="620" y="83" width="125.078125" height="52" as="geometry"/>
          </mxCell>
        </object>
        <object id="n:FTSc" label="ACL-filtered FTS channel (BM25-ish)" mermaidId="FTSc" mermaidShape="rectangle">
          <mxCell parent="1" vertex="1" style="fillColor=#ECECFF;fontColor=#333333;html=1;rounded=0;strokeColor=#9370DB;whiteSpace=wrap;">
            <mxGeometry x="795.078125" y="8" width="256" height="76" as="geometry"/>
          </mxCell>
        </object>
        <object id="n:Vec" label="ACL-filtered vector channel (pgvector)" mermaidId="Vec" mermaidShape="rectangle">
          <mxCell parent="1" vertex="1" style="fillColor=#ECECFF;fontColor=#333333;html=1;rounded=0;strokeColor=#9370DB;whiteSpace=wrap;">
            <mxGeometry x="795.078125" y="134" width="256" height="76" as="geometry"/>
          </mxCell>
        </object>
        <object id="n:Fuse" label="reciprocal-rank fusion" mermaidId="Fuse" mermaidShape="rectangle">
          <mxCell parent="1" vertex="1" style="fillColor=#ECECFF;fontColor=#333333;html=1;rounded=0;strokeColor=#9370DB;whiteSpace=wrap;">
            <mxGeometry x="1101.078125" y="83" width="223.265625" height="52" as="geometry"/>
          </mxCell>
        </object>
        <object id="n:Graph" label="ACL-filtered graph/entity expansion" mermaidId="Graph" mermaidShape="rectangle">
          <mxCell parent="1" vertex="1" style="fillColor=#ECECFF;fontColor=#333333;html=1;rounded=0;strokeColor=#9370DB;whiteSpace=wrap;">
            <mxGeometry x="1374.34375" y="71" width="256" height="76" as="geometry"/>
          </mxCell>
        </object>
        <object id="n:Ctx" label="context assembly[Sn] sources, dedup, budget" mermaidId="Ctx" mermaidShape="rectangle">
          <mxCell parent="1" vertex="1" style="fillColor=#ECECFF;fontColor=#333333;html=1;rounded=0;strokeColor=#9370DB;whiteSpace=wrap;">
            <mxGeometry x="1680.34375" y="59" width="256" height="100" as="geometry"/>
          </mxCell>
        </object>
        <object id="n:Gen" label="chat model → grounded answer + citations" mermaidId="Gen" mermaidShape="rectangle">
          <mxCell parent="1" vertex="1" style="fillColor=#ECECFF;fontColor=#333333;html=1;rounded=0;strokeColor=#9370DB;whiteSpace=wrap;">
            <mxGeometry x="1986.34375" y="71" width="256" height="76" as="geometry"/>
          </mxCell>
        </object>
        <object id="n:Badge" label="async groundedness check(shared judgeAssertions)" mermaidId="Badge" mermaidShape="rectangle">
          <mxCell parent="1" vertex="1" style="fillColor=#ECECFF;fontColor=#333333;html=1;rounded=0;strokeColor=#9370DB;whiteSpace=wrap;">
            <mxGeometry x="2292.34375" y="59" width="256" height="100" as="geometry"/>
          </mxCell>
        </object>
        <object id="e:L_Qy_ACL_0" label="" mermaidId="L_Qy_ACL_0" mermaidKind="relationship">
          <mxCell parent="1" source="n:Qy" target="n:ACL" edge="1" style="edgeStyle=orthogonalEdgeStyle;endArrow=block;endFill=1;html=1;jettySize=auto;orthogonalLoop=1;rounded=0;strokeColor=#333333;">
            <mxGeometry relative="1" as="geometry">
              <mxPoint x="264" y="109" as="sourcePoint"/>
              <mxPoint x="314" y="109" as="targetPoint"/>
              <Array as="points">
                <mxPoint x="289" y="109"/>
              </Array>
            </mxGeometry>
          </mxCell>
        </object>
        <object id="e:L_ACL_R_0" label="" mermaidId="L_ACL_R_0" mermaidKind="relationship">
          <mxCell parent="1" source="n:ACL" target="n:R" edge="1" style="edgeStyle=orthogonalEdgeStyle;endArrow=block;endFill=1;html=1;jettySize=auto;orthogonalLoop=1;rounded=0;strokeColor=#333333;">
            <mxGeometry relative="1" as="geometry">
              <mxPoint x="570" y="109" as="sourcePoint"/>
              <mxPoint x="620" y="109" as="targetPoint"/>
              <Array as="points">
                <mxPoint x="595" y="109"/>
              </Array>
            </mxGeometry>
          </mxCell>
        </object>
        <object id="e:L_R_FTSc_0" label="" mermaidId="L_R_FTSc_0" mermaidKind="relationship">
          <mxCell parent="1" source="n:R" target="n:FTSc" edge="1" style="edgeStyle=orthogonalEdgeStyle;endArrow=block;endFill=1;html=1;jettySize=auto;orthogonalLoop=1;rounded=0;strokeColor=#333333;">
            <mxGeometry relative="1" as="geometry">
              <mxPoint x="718.666295" y="83" as="sourcePoint"/>
              <mxPoint x="795.078125" y="46" as="targetPoint"/>
              <Array as="points">
                <mxPoint x="770.078125" y="46"/>
              </Array>
            </mxGeometry>
          </mxCell>
        </object>
        <object id="e:L_R_Vec_0" label="" mermaidId="L_R_Vec_0" mermaidKind="relationship">
          <mxCell parent="1" source="n:R" target="n:Vec" edge="1" style="edgeStyle=orthogonalEdgeStyle;endArrow=block;endFill=1;html=1;jettySize=auto;orthogonalLoop=1;rounded=0;strokeColor=#333333;">
            <mxGeometry relative="1" as="geometry">
              <mxPoint x="718.666295" y="135" as="sourcePoint"/>
              <mxPoint x="795.078125" y="172" as="targetPoint"/>
              <Array as="points">
                <mxPoint x="770.078125" y="172"/>
              </Array>
            </mxGeometry>
          </mxCell>
        </object>
        <object id="e:L_FTSc_Fuse_0" label="" mermaidId="L_FTSc_Fuse_0" mermaidKind="relationship">
          <mxCell parent="1" source="n:FTSc" target="n:Fuse" edge="1" style="edgeStyle=orthogonalEdgeStyle;endArrow=block;endFill=1;html=1;jettySize=auto;orthogonalLoop=1;rounded=0;strokeColor=#333333;">
            <mxGeometry relative="1" as="geometry">
              <mxPoint x="1051.078125" y="46" as="sourcePoint"/>
              <mxPoint x="1156.322793" y="83" as="targetPoint"/>
              <Array as="points">
                <mxPoint x="1076.078125" y="46"/>
              </Array>
            </mxGeometry>
          </mxCell>
        </object>
        <object id="e:L_Vec_Fuse_0" label="" mermaidId="L_Vec_Fuse_0" mermaidKind="relationship">
          <mxCell parent="1" source="n:Vec" target="n:Fuse" edge="1" style="edgeStyle=orthogonalEdgeStyle;endArrow=block;endFill=1;html=1;jettySize=auto;orthogonalLoop=1;rounded=0;strokeColor=#333333;">
            <mxGeometry relative="1" as="geometry">
              <mxPoint x="1051.078125" y="172" as="sourcePoint"/>
              <mxPoint x="1156.322793" y="135" as="targetPoint"/>
              <Array as="points">
                <mxPoint x="1076.078125" y="172"/>
              </Array>
            </mxGeometry>
          </mxCell>
        </object>
        <object id="e:L_Fuse_Graph_0" label="" mermaidId="L_Fuse_Graph_0" mermaidKind="relationship">
          <mxCell parent="1" source="n:Fuse" target="n:Graph" edge="1" style="edgeStyle=orthogonalEdgeStyle;endArrow=block;endFill=1;html=1;jettySize=auto;orthogonalLoop=1;rounded=0;strokeColor=#333333;">
            <mxGeometry relative="1" as="geometry">
              <mxPoint x="1324.34375" y="109" as="sourcePoint"/>
              <mxPoint x="1374.34375" y="109" as="targetPoint"/>
              <Array as="points">
                <mxPoint x="1349.34375" y="109"/>
              </Array>
            </mxGeometry>
          </mxCell>
        </object>
        <object id="e:L_Graph_Ctx_0" label="" mermaidId="L_Graph_Ctx_0" mermaidKind="relationship">
          <mxCell parent="1" source="n:Graph" target="n:Ctx" edge="1" style="edgeStyle=orthogonalEdgeStyle;endArrow=block;endFill=1;html=1;jettySize=auto;orthogonalLoop=1;rounded=0;strokeColor=#333333;">
            <mxGeometry relative="1" as="geometry">
              <mxPoint x="1630.34375" y="109" as="sourcePoint"/>
              <mxPoint x="1680.34375" y="109" as="targetPoint"/>
              <Array as="points">
                <mxPoint x="1655.34375" y="109"/>
              </Array>
            </mxGeometry>
          </mxCell>
        </object>
        <object id="e:L_Ctx_Gen_0" label="" mermaidId="L_Ctx_Gen_0" mermaidKind="relationship">
          <mxCell parent="1" source="n:Ctx" target="n:Gen" edge="1" style="edgeStyle=orthogonalEdgeStyle;endArrow=block;endFill=1;html=1;jettySize=auto;orthogonalLoop=1;rounded=0;strokeColor=#333333;">
            <mxGeometry relative="1" as="geometry">
              <mxPoint x="1936.34375" y="109" as="sourcePoint"/>
              <mxPoint x="1986.34375" y="109" as="targetPoint"/>
              <Array as="points">
                <mxPoint x="1961.34375" y="109"/>
              </Array>
            </mxGeometry>
          </mxCell>
        </object>
        <object id="e:L_Gen_Badge_0" label="" mermaidId="L_Gen_Badge_0" mermaidKind="relationship">
          <mxCell parent="1" source="n:Gen" target="n:Badge" edge="1" style="edgeStyle=orthogonalEdgeStyle;endArrow=block;endFill=1;html=1;jettySize=auto;orthogonalLoop=1;rounded=0;strokeColor=#333333;">
            <mxGeometry relative="1" as="geometry">
              <mxPoint x="2242.34375" y="109" as="sourcePoint"/>
              <mxPoint x="2292.34375" y="109" as="targetPoint"/>
              <Array as="points">
                <mxPoint x="2267.34375" y="109"/>
              </Array>
            </mxGeometry>
          </mxCell>
        </object>
      </root>
    </mxGraphModel>
  </diagram>
</mxfile>
