<?xml version="1.0" encoding="UTF-8"?>
<mxfile host="eli.ai" agent="eli.ai diagram exporter" version="1">
  <diagram id="crucible-system-architecture-8b71cd97" name="Crucible — system architecture">
    <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="Crucible — system architecture" schemaVersion="1" diagramId="crucible-system-architecture-8b71cd97" canonicalAppearanceKey="tsx:src/app/(docs)/docs/modules/crucible/page.tsx:systemArchitectureChart#1" sourceSha256="8b71cd979f407554e9aca770e4912be31e2342e0e6bebb7b062a9e1c3ec63ce1" metadataPayloadSha256="051fc109f6e5d62cc8e3d14b2bba913ad54485dec8fa76e75d8ab635e1aeda89" generationKey="9b760951e4a0c609b11e19a4dec61ef58e5c2282e2c766da50b14a0ee7a092aa" concepts="[&quot;System architecture&quot;,&quot;Public surface&quot;,&quot;Scoring services&quot;,&quot;Run production (workspace app + scheduler)&quot;,&quot;Modules&quot;,&quot;Crucible&quot;]" keywords="[&quot;GET {id}/metrics (API)&quot;,&quot;GET (API)&quot;,&quot;POST (API)&quot;,&quot;Eval runner (service)&quot;,&quot;model: judge&quot;,&quot;store, append-only&quot;,&quot;Scheduled runs + drift scans (service)&quot;,&quot;Drift + freshness monitor (service)&quot;,&quot;Run aggregation + paired significance (service)&quot;,&quot;Real retrieval + answer pipeline under test (service)&quot;,&quot;Metric math: retrieval, abstention, RAGAS (service)&quot;,&quot;/api/v1/evals/runs&quot;,&quot;/api/v1/qrels&quot;,&quot;id&quot;,&quot;/api/v1/evals/runs/compare&quot;,&quot;store&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="TB" generatedAt="2026-08-17T18:32:22.397Z" mermaidSource="flowchart TB&#10;  subgraph SURFACE[&quot;Public surface&quot;]&#10;    METRICS_API[&quot;GET /api/v1/evals/runs/{id}/metrics (API)&quot;]&#10;    COMPARE_API[&quot;GET /api/v1/evals/runs/compare (API)&quot;]&#10;    QRELS_API[&quot;POST /api/v1/qrels (API)&quot;]&#10;  end&#10;&#10;  subgraph PRODUCTION[&quot;Run production (workspace app + scheduler)&quot;]&#10;    RUNNER[&quot;Eval runner (service)&quot;]&#10;    SCHED[&quot;Scheduled runs + drift scans (service)&quot;]&#10;    DRIFT[&quot;Drift + freshness monitor (service)&quot;]&#10;  end&#10;&#10;  subgraph SCORING[&quot;Scoring services&quot;]&#10;    PIPE[&quot;Real retrieval + answer pipeline under test (service)&quot;]&#10;    JUDGE(&quot;Judge model: assertions, truthfulness, RAGAS (model: judge)&quot;)&#10;    MATH[&quot;Metric math: retrieval, abstention, RAGAS (service)&quot;]&#10;    AGG[&quot;Run aggregation + paired significance (service)&quot;]&#10;  end&#10;&#10;  subgraph STORES[&quot;Workspace stores (RLS)&quot;]&#10;    T_GOLD[(&quot;golden_items + golden_assertions + golden_citations (store)&quot;)]&#10;    T_QREL[(&quot;qrels (store, append-only)&quot;)]&#10;    T_CFG[(&quot;eval_configs + config_snapshots (store)&quot;)]&#10;    T_RUNS[(&quot;eval_runs + eval_results + judgments (store)&quot;)]&#10;    T_RM[(&quot;run_metrics (store)&quot;)]&#10;    T_DRIFT[(&quot;drift_snapshots + alerts (store)&quot;)]&#10;    T_AUDIT[(&quot;audit_log (store, append-only)&quot;)]&#10;  end&#10;&#10;  SCHED --&gt; RUNNER&#10;  SCHED --&gt; DRIFT&#10;  RUNNER --&gt; T_GOLD&#10;  RUNNER --&gt; T_QREL&#10;  RUNNER --&gt; T_CFG&#10;  RUNNER --&gt; PIPE&#10;  RUNNER --&gt; JUDGE&#10;  RUNNER --&gt; MATH&#10;  RUNNER --&gt; T_RUNS&#10;  RUNNER --&gt; T_RM&#10;  DRIFT --&gt; T_DRIFT&#10;  METRICS_API --&gt; AGG&#10;  COMPARE_API --&gt; AGG&#10;  AGG --&gt; T_RUNS&#10;  AGG --&gt; T_RM&#10;  QRELS_API --&gt; T_QREL&#10;  QRELS_API --&gt; T_AUDIT">
          <mxCell parent="0"/>
        </object>
        <object id="c:STORES" label="Workspace stores (RLS)" mermaidId="STORES" mermaidShape="frame">
          <mxCell parent="1" vertex="1" style="collapsible=0;container=1;dashed=1;fillColor=none;fontColor=#333333;html=1;recursiveResize=0;rounded=0;strokeColor=#9370DB;whiteSpace=wrap;">
            <mxGeometry x="29" y="559" width="2641.640625" height="183.334244" as="geometry"/>
          </mxCell>
        </object>
        <object id="c:SCORING" label="Scoring services" mermaidId="SCORING" mermaidShape="frame">
          <mxCell parent="1" vertex="1" style="collapsible=0;container=1;dashed=1;fillColor=none;fontColor=#333333;html=1;recursiveResize=0;rounded=0;strokeColor=#9370DB;whiteSpace=wrap;">
            <mxGeometry x="603.304688" y="359" width="1329.632813" height="150" as="geometry"/>
          </mxCell>
        </object>
        <object id="c:PRODUCTION" label="Run production (workspace app + scheduler)" mermaidId="PRODUCTION" mermaidShape="frame">
          <mxCell parent="1" vertex="1" style="collapsible=0;container=1;dashed=1;fillColor=none;fontColor=#333333;html=1;recursiveResize=0;rounded=0;strokeColor=#9370DB;whiteSpace=wrap;">
            <mxGeometry x="8" y="8" width="1136.410156" height="301" as="geometry"/>
          </mxCell>
        </object>
        <object id="c:SURFACE" label="Public surface" mermaidId="SURFACE" mermaidShape="frame">
          <mxCell parent="1" vertex="1" style="collapsible=0;container=1;dashed=1;fillColor=none;fontColor=#333333;html=1;recursiveResize=0;rounded=0;strokeColor=#9370DB;whiteSpace=wrap;">
            <mxGeometry x="1571.0625" y="159" width="964.125" height="150" as="geometry"/>
          </mxCell>
        </object>
        <object id="n:METRICS_API" label="GET /api/v1/evals/runs/{id}/metrics (API)" mermaidId="METRICS_API" mermaidShape="rectangle">
          <mxCell parent="c:SURFACE" vertex="1" style="fillColor=#ECECFF;fontColor=#333333;html=1;rounded=0;strokeColor=#9370DB;whiteSpace=wrap;">
            <mxGeometry x="35" y="25" width="289.390625" height="100" as="geometry"/>
          </mxCell>
        </object>
        <object id="n:COMPARE_API" label="GET /api/v1/evals/runs/compare (API)" mermaidId="COMPARE_API" mermaidShape="rectangle">
          <mxCell parent="c:SURFACE" vertex="1" style="fillColor=#ECECFF;fontColor=#333333;html=1;rounded=0;strokeColor=#9370DB;whiteSpace=wrap;">
            <mxGeometry x="374.390625" y="25" width="266.875" height="100" as="geometry"/>
          </mxCell>
        </object>
        <object id="n:QRELS_API" label="POST /api/v1/qrels (API)" mermaidId="QRELS_API" mermaidShape="rectangle">
          <mxCell parent="c:SURFACE" vertex="1" style="fillColor=#ECECFF;fontColor=#333333;html=1;rounded=0;strokeColor=#9370DB;whiteSpace=wrap;">
            <mxGeometry x="691.265625" y="49" width="237.859375" height="52" as="geometry"/>
          </mxCell>
        </object>
        <object id="n:RUNNER" label="Eval runner (service)" mermaidId="RUNNER" mermaidShape="rectangle">
          <mxCell parent="c:PRODUCTION" vertex="1" style="fillColor=#ECECFF;fontColor=#333333;html=1;rounded=0;strokeColor=#9370DB;whiteSpace=wrap;">
            <mxGeometry x="800.605469" y="200" width="213.015625" height="52" as="geometry"/>
          </mxCell>
        </object>
        <object id="n:SCHED" label="Scheduled runs + drift scans (service)" mermaidId="SCHED" mermaidShape="rectangle">
          <mxCell parent="c:PRODUCTION" vertex="1" style="fillColor=#ECECFF;fontColor=#333333;html=1;rounded=0;strokeColor=#9370DB;whiteSpace=wrap;">
            <mxGeometry x="177.253906" y="25" width="256" height="76" as="geometry"/>
          </mxCell>
        </object>
        <object id="n:DRIFT" label="Drift + freshness monitor (service)" mermaidId="DRIFT" mermaidShape="rectangle">
          <mxCell parent="c:PRODUCTION" vertex="1" style="fillColor=#ECECFF;fontColor=#333333;html=1;rounded=0;strokeColor=#9370DB;whiteSpace=wrap;">
            <mxGeometry x="35" y="188" width="256" height="76" as="geometry"/>
          </mxCell>
        </object>
        <object id="n:PIPE" label="Real retrieval + answer pipeline under test (service)" mermaidId="PIPE" mermaidShape="rectangle">
          <mxCell parent="c:SCORING" vertex="1" style="fillColor=#ECECFF;fontColor=#333333;html=1;rounded=0;strokeColor=#9370DB;whiteSpace=wrap;">
            <mxGeometry x="619" y="25" width="256" height="100" as="geometry"/>
          </mxCell>
        </object>
        <object id="n:JUDGE" label="Judge model: assertions, truthfulness, RAGAS (model: judge)" mermaidId="JUDGE" mermaidShape="rounded">
          <mxCell parent="c:SCORING" vertex="1" style="arcSize=12;fillColor=#ECECFF;fontColor=#333333;html=1;rounded=1;strokeColor=#9370DB;whiteSpace=wrap;">
            <mxGeometry x="341" y="25" width="228" height="100" as="geometry"/>
          </mxCell>
        </object>
        <object id="n:MATH" label="Metric math: retrieval, abstention, RAGAS (service)" mermaidId="MATH" mermaidShape="rectangle">
          <mxCell parent="c:SCORING" vertex="1" style="fillColor=#ECECFF;fontColor=#333333;html=1;rounded=0;strokeColor=#9370DB;whiteSpace=wrap;">
            <mxGeometry x="35" y="25" width="256" height="100" as="geometry"/>
          </mxCell>
        </object>
        <object id="n:AGG" label="Run aggregation + paired significance (service)" mermaidId="AGG" mermaidShape="rectangle">
          <mxCell parent="c:SCORING" vertex="1" style="fillColor=#ECECFF;fontColor=#333333;html=1;rounded=0;strokeColor=#9370DB;whiteSpace=wrap;">
            <mxGeometry x="946.066406" y="37" width="256" height="76" as="geometry"/>
          </mxCell>
        </object>
        <object id="n:T_GOLD" label="golden_items + golden_assertions + golden_citations (store)" mermaidId="T_GOLD" mermaidShape="cylinder">
          <mxCell parent="c:STORES" vertex="1" style="backgroundOutline=1;boundedLbl=1;fillColor=#ECECFF;fontColor=#333333;html=1;shape=cylinder3;size=15;strokeColor=#9370DB;whiteSpace=wrap;">
            <mxGeometry x="1751.113281" y="24.994556" width="214" height="133.345133" as="geometry"/>
          </mxCell>
        </object>
        <object id="n:T_QREL" label="qrels (store, append-only)" mermaidId="T_QREL" mermaidShape="cylinder">
          <mxCell parent="c:STORES" vertex="1" style="backgroundOutline=1;boundedLbl=1;fillColor=#ECECFF;fontColor=#333333;html=1;shape=cylinder3;size=15;strokeColor=#9370DB;whiteSpace=wrap;">
            <mxGeometry x="2015.113281" y="49.109586" width="211.203125" height="85.115072" as="geometry"/>
          </mxCell>
        </object>
        <object id="n:T_CFG" label="eval_configs + config_snapshots (store)" mermaidId="T_CFG" mermaidShape="cylinder">
          <mxCell parent="c:STORES" vertex="1" style="backgroundOutline=1;boundedLbl=1;fillColor=#ECECFF;fontColor=#333333;html=1;shape=cylinder3;size=15;strokeColor=#9370DB;whiteSpace=wrap;">
            <mxGeometry x="530.644531" y="36.994556" width="214" height="109.345133" as="geometry"/>
          </mxCell>
        </object>
        <object id="n:T_RUNS" label="eval_runs + eval_results + judgments (store)" mermaidId="T_RUNS" mermaidShape="cylinder">
          <mxCell parent="c:STORES" vertex="1" style="backgroundOutline=1;boundedLbl=1;fillColor=#ECECFF;fontColor=#333333;html=1;shape=cylinder3;size=15;strokeColor=#9370DB;whiteSpace=wrap;">
            <mxGeometry x="1112.414063" y="36.994556" width="214" height="109.345133" as="geometry"/>
          </mxCell>
        </object>
        <object id="n:T_RM" label="run_metrics (store)" mermaidId="T_RM" mermaidShape="cylinder">
          <mxCell parent="c:STORES" vertex="1" style="backgroundOutline=1;boundedLbl=1;fillColor=#ECECFF;fontColor=#333333;html=1;shape=cylinder3;size=15;strokeColor=#9370DB;whiteSpace=wrap;">
            <mxGeometry x="323.457031" y="51.778418" width="157.1875" height="79.777409" as="geometry"/>
          </mxCell>
        </object>
        <object id="n:T_DRIFT" label="drift_snapshots + alerts (store)" mermaidId="T_DRIFT" mermaidShape="cylinder">
          <mxCell parent="c:STORES" vertex="1" style="backgroundOutline=1;boundedLbl=1;fillColor=#ECECFF;fontColor=#333333;html=1;shape=cylinder3;size=15;strokeColor=#9370DB;whiteSpace=wrap;">
            <mxGeometry x="35" y="36.994556" width="214" height="109.345133" as="geometry"/>
          </mxCell>
        </object>
        <object id="n:T_AUDIT" label="audit_log (store, append-only)" mermaidId="T_AUDIT" mermaidShape="cylinder">
          <mxCell parent="c:STORES" vertex="1" style="backgroundOutline=1;boundedLbl=1;fillColor=#ECECFF;fontColor=#333333;html=1;shape=cylinder3;size=15;strokeColor=#9370DB;whiteSpace=wrap;">
            <mxGeometry x="2392.640625" y="36.994556" width="214" height="109.345133" as="geometry"/>
          </mxCell>
        </object>
        <object id="e:L_SCHED_RUNNER_0" label="" mermaidId="L_SCHED_RUNNER_0" mermaidKind="relationship">
          <mxCell parent="1" source="n:SCHED" target="n:RUNNER" 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="441.253906" y="84.398479" as="sourcePoint"/>
              <mxPoint x="915.113281" y="208" as="targetPoint"/>
              <Array as="points">
                <mxPoint x="915.113281" y="134"/>
                <mxPoint x="915.113281" y="159"/>
              </Array>
            </mxGeometry>
          </mxCell>
        </object>
        <object id="e:L_SCHED_DRIFT_0" label="" mermaidId="L_SCHED_DRIFT_0" mermaidKind="relationship">
          <mxCell parent="1" source="n:SCHED" target="n:DRIFT" 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="227.449963" y="109" as="sourcePoint"/>
              <mxPoint x="171" y="196" as="targetPoint"/>
              <Array as="points">
                <mxPoint x="171" y="134"/>
                <mxPoint x="171" y="159"/>
              </Array>
            </mxGeometry>
          </mxCell>
        </object>
        <object id="e:L_RUNNER_T_GOLD_0" label="" mermaidId="L_RUNNER_T_GOLD_0" mermaidKind="relationship">
          <mxCell parent="1" source="n:RUNNER" target="n:T_GOLD" 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="962.882865" y="260" as="sourcePoint"/>
              <mxPoint x="1971.712871" y="590.119076" as="targetPoint"/>
              <Array as="points">
                <mxPoint x="1052.910156" y="309"/>
                <mxPoint x="1052.910156" y="334"/>
                <mxPoint x="2003.4375" y="359"/>
                <mxPoint x="2003.4375" y="434"/>
                <mxPoint x="2003.4375" y="509"/>
                <mxPoint x="2003.4375" y="534"/>
                <mxPoint x="2003.4375" y="559"/>
              </Array>
            </mxGeometry>
          </mxCell>
        </object>
        <object id="e:L_RUNNER_T_QREL_0" label="" mermaidId="L_RUNNER_T_QREL_0" mermaidKind="relationship">
          <mxCell parent="1" source="n:RUNNER" target="n:T_QREL" 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="955.949531" y="260" as="sourcePoint"/>
              <mxPoint x="2058.358653" y="615.937049" as="targetPoint"/>
              <Array as="points">
                <mxPoint x="1032.910156" y="309"/>
                <mxPoint x="1032.910156" y="334"/>
                <mxPoint x="1952.9375" y="359"/>
                <mxPoint x="1952.9375" y="434"/>
                <mxPoint x="1952.9375" y="509"/>
                <mxPoint x="1952.9375" y="534"/>
                <mxPoint x="1952.9375" y="559"/>
              </Array>
            </mxGeometry>
          </mxCell>
        </object>
        <object id="e:L_RUNNER_T_CFG_0" label="" mermaidId="L_RUNNER_T_CFG_0" mermaidKind="relationship">
          <mxCell parent="1" source="n:RUNNER" target="n:T_CFG" 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="811.631927" y="260" as="sourcePoint"/>
              <mxPoint x="616.943515" y="597.805818" as="targetPoint"/>
              <Array as="points">
                <mxPoint x="616.609375" y="309"/>
                <mxPoint x="616.609375" y="334"/>
                <mxPoint x="583.304688" y="359"/>
                <mxPoint x="583.304688" y="434"/>
                <mxPoint x="583.304688" y="509"/>
                <mxPoint x="583.304688" y="534"/>
                <mxPoint x="583.304688" y="559"/>
              </Array>
            </mxGeometry>
          </mxCell>
        </object>
        <object id="e:L_RUNNER_PIPE_0" label="" mermaidId="L_RUNNER_PIPE_0" mermaidKind="relationship">
          <mxCell parent="1" source="n:RUNNER" target="n:PIPE" 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="808.605469" y="259.080025" as="sourcePoint"/>
              <mxPoint x="1350.304688" y="384" as="targetPoint"/>
              <Array as="points">
                <mxPoint x="596.609375" y="309"/>
                <mxPoint x="596.609375" y="334"/>
                <mxPoint x="1350.304688" y="359"/>
              </Array>
            </mxGeometry>
          </mxCell>
        </object>
        <object id="e:L_RUNNER_JUDGE_0" label="" mermaidId="L_RUNNER_JUDGE_0" mermaidKind="relationship">
          <mxCell parent="1" source="n:RUNNER" target="n:JUDGE" 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="808.605469" y="251.213384" as="sourcePoint"/>
              <mxPoint x="1058.304688" y="384" as="targetPoint"/>
              <Array as="points">
                <mxPoint x="451.050781" y="309"/>
                <mxPoint x="451.050781" y="334"/>
                <mxPoint x="1058.304688" y="359"/>
              </Array>
            </mxGeometry>
          </mxCell>
        </object>
        <object id="e:L_RUNNER_MATH_0" label="" mermaidId="L_RUNNER_MATH_0" mermaidKind="relationship">
          <mxCell parent="1" source="n:RUNNER" target="n:MATH" 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="808.605469" y="250.502179" as="sourcePoint"/>
              <mxPoint x="766.304688" y="384" as="targetPoint"/>
              <Array as="points">
                <mxPoint x="431.050781" y="309"/>
                <mxPoint x="431.050781" y="334"/>
                <mxPoint x="766.304688" y="359"/>
              </Array>
            </mxGeometry>
          </mxCell>
        </object>
        <object id="e:L_RUNNER_T_RUNS_0" label="" mermaidId="L_RUNNER_T_RUNS_0" mermaidKind="relationship">
          <mxCell parent="1" source="n:RUNNER" target="n:T_RUNS" 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="808.605469" y="249.847412" as="sourcePoint"/>
              <mxPoint x="1141.414063" y="638.953709" as="targetPoint"/>
              <Array as="points">
                <mxPoint x="411.050781" y="309"/>
                <mxPoint x="411.050781" y="334"/>
                <mxPoint x="411.050781" y="359"/>
                <mxPoint x="411.050781" y="434"/>
                <mxPoint x="411.050781" y="509"/>
                <mxPoint x="411.050781" y="534"/>
                <mxPoint x="411.050781" y="559"/>
              </Array>
            </mxGeometry>
          </mxCell>
        </object>
        <object id="e:L_RUNNER_T_RM_0" label="" mermaidId="L_RUNNER_T_RM_0" mermaidKind="relationship">
          <mxCell parent="1" source="n:RUNNER" target="n:T_RM" 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="808.605469" y="246.961015" as="sourcePoint"/>
              <mxPoint x="373.500848" y="615.220185" as="targetPoint"/>
              <Array as="points">
                <mxPoint x="298.796875" y="309"/>
                <mxPoint x="298.796875" y="334"/>
                <mxPoint x="298.796875" y="359"/>
                <mxPoint x="298.796875" y="434"/>
                <mxPoint x="298.796875" y="509"/>
                <mxPoint x="298.796875" y="534"/>
                <mxPoint x="298.796875" y="559"/>
              </Array>
            </mxGeometry>
          </mxCell>
        </object>
        <object id="e:L_DRIFT_T_DRIFT_0" label="" mermaidId="L_DRIFT_T_DRIFT_0" mermaidKind="relationship">
          <mxCell parent="1" source="n:DRIFT" target="n:T_DRIFT" 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="171" y="272" as="sourcePoint"/>
              <mxPoint x="171" y="596.000004" as="targetPoint"/>
              <Array as="points">
                <mxPoint x="171" y="309"/>
                <mxPoint x="171" y="334"/>
                <mxPoint x="171" y="359"/>
                <mxPoint x="171" y="434"/>
                <mxPoint x="171" y="509"/>
                <mxPoint x="171" y="534"/>
                <mxPoint x="171" y="559"/>
              </Array>
            </mxGeometry>
          </mxCell>
        </object>
        <object id="e:L_METRICS_API_AGG_0" label="" mermaidId="L_METRICS_API_AGG_0" mermaidKind="relationship">
          <mxCell parent="1" source="n:METRICS_API" target="n:AGG" 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="1750.757813" y="284" as="sourcePoint"/>
              <mxPoint x="1594.244115" y="396" as="targetPoint"/>
              <Array as="points">
                <mxPoint x="1750.757813" y="309"/>
                <mxPoint x="1750.757813" y="334"/>
                <mxPoint x="1513.304688" y="359"/>
              </Array>
            </mxGeometry>
          </mxCell>
        </object>
        <object id="e:L_COMPARE_API_AGG_0" label="" mermaidId="L_COMPARE_API_AGG_0" mermaidKind="relationship">
          <mxCell parent="1" source="n:COMPARE_API" target="n:AGG" 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="2078.890625" y="284" as="sourcePoint"/>
              <mxPoint x="1760.498073" y="396" as="targetPoint"/>
              <Array as="points">
                <mxPoint x="2078.890625" y="309"/>
                <mxPoint x="2078.890625" y="334"/>
                <mxPoint x="1841.4375" y="359"/>
              </Array>
            </mxGeometry>
          </mxCell>
        </object>
        <object id="e:L_AGG_T_RUNS_0" label="" mermaidId="L_AGG_T_RUNS_0" mermaidKind="relationship">
          <mxCell parent="1" source="n:AGG" target="n:T_RUNS" 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="1708.818073" y="472" as="sourcePoint"/>
              <mxPoint x="1355.414063" y="630.691737" as="targetPoint"/>
              <Array as="points">
                <mxPoint x="1739.4375" y="509"/>
                <mxPoint x="1739.4375" y="534"/>
                <mxPoint x="1739.4375" y="559"/>
              </Array>
            </mxGeometry>
          </mxCell>
        </object>
        <object id="e:L_AGG_T_RM_0" label="" mermaidId="L_AGG_T_RM_0" mermaidKind="relationship">
          <mxCell parent="1" source="n:AGG" target="n:T_RM" 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="1549.371094" y="452.196761" as="sourcePoint"/>
              <mxPoint x="509.644531" y="640.643576" as="targetPoint"/>
              <Array as="points">
                <mxPoint x="1149.804688" y="509"/>
                <mxPoint x="1149.804688" y="534"/>
                <mxPoint x="1149.804688" y="559"/>
              </Array>
            </mxGeometry>
          </mxCell>
        </object>
        <object id="e:L_QRELS_API_T_QREL_0" label="" mermaidId="L_QRELS_API_T_QREL_0" mermaidKind="relationship">
          <mxCell parent="1" source="n:QRELS_API" target="n:T_QREL" 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="2384.765104" y="260" as="sourcePoint"/>
              <mxPoint x="2255.316406" y="626.315103" as="targetPoint"/>
              <Array as="points">
                <mxPoint x="2391.375" y="309"/>
                <mxPoint x="2391.375" y="334"/>
                <mxPoint x="2391.375" y="359"/>
                <mxPoint x="2391.375" y="434"/>
                <mxPoint x="2391.375" y="509"/>
                <mxPoint x="2391.375" y="534"/>
                <mxPoint x="2391.375" y="559"/>
              </Array>
            </mxGeometry>
          </mxCell>
        </object>
        <object id="e:L_QRELS_API_T_AUDIT_0" label="" mermaidId="L_QRELS_API_T_AUDIT_0" mermaidKind="relationship">
          <mxCell parent="1" source="n:QRELS_API" target="n:T_AUDIT" 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="2332.314167" y="260" as="sourcePoint"/>
              <mxPoint x="2421.640625" y="616.677088" as="targetPoint"/>
              <Array as="points">
                <mxPoint x="2240.074219" y="309"/>
                <mxPoint x="2240.074219" y="334"/>
                <mxPoint x="2240.074219" y="359"/>
                <mxPoint x="2240.074219" y="434"/>
                <mxPoint x="2240.074219" y="509"/>
                <mxPoint x="2240.074219" y="534"/>
                <mxPoint x="2240.074219" y="559"/>
              </Array>
            </mxGeometry>
          </mxCell>
        </object>
      </root>
    </mxGraphModel>
  </diagram>
</mxfile>
