1% Author: Simon-Pierre Boucher — simon-pierre.boucher@uqo.ca2% Standalone TikZ source of the architecture schematic (compiled to fig_architecture.pdf; included by3% paper/sections/architecture.tex with \includegraphics). Rebuild: pdflatex fig_architecture.tex4\documentclass[border=4pt]{standalone}5\usepackage{mathptmx}6\usepackage{tikz}7\usetikzlibrary{arrows.meta,positioning,fit,calc}8\begin{document}9\begin{tikzpicture}[10 font=\footnotesize,11 box/.style={draw, rounded corners=1.5pt, align=center, minimum height=9mm, inner sep=4pt, text width=23mm},12 small/.style={draw, align=center, minimum height=6mm, inner sep=2pt, text width=12mm, font=\scriptsize},13 arr/.style={-{Latex[length=2mm]}, thick},14 node distance=6mm and 9mm15]16\node[box] (packet) {Evidence packet\\[1pt] {\scriptsize P, C01--C12, M1, G1}};17\node[box, right=of packet] (views) {Least-privilege\\ role views\\[1pt] {\scriptsize 12 roles}};18\node[box, right=of views] (r0) {Round 0\\ independent\\ estimates};19\node[box, right=of r0] (rounds) {Rounds $1\ldots r$\\ critique, then\\ revision};20\node[box, right=of rounds] (agg) {Aggregation\\ in log space\\[1pt] {\scriptsize point, 90\,\% interval}};21\draw[arr] (packet) -- (views);22\draw[arr] (views) -- (r0);23\draw[arr] (r0) -- (rounds);24\draw[arr] (rounds) -- (agg);25% annotations26\node[below=3mm of packet, text width=26mm, align=center, font=\scriptsize] (a1) {no price, no address;\\ cutoff $=t-1$};27\node[below=3mm of views, text width=26mm, align=center, font=\scriptsize] (a2) {sections per role:\\ subject / comps / market / geo};28\node[below=3mm of r0, text width=26mm, align=center, font=\scriptsize] (a3) {JSON contract,\\ $\le 2$ corrective retries};29\node[below=3mm of rounds, text width=30mm, align=center, font=\scriptsize] (a4) {anonymised table, committee\\ median, evidence ids only;\\ stop if $\Delta$IQR $<1\,\%$ (recorded)};30\node[below=3mm of agg, text width=26mm, align=center, font=\scriptsize] (a5) {weights from\\ validation only};31% arms32\node[above=4mm of r0, font=\scriptsize] (armF) {arm F stops here (E: one generalist)};33\draw[arr, dashed] (armF.south) -- (r0.north);34\node[above=4mm of rounds, font=\scriptsize] (armG) {arms G, H, I ($r\in\{1,2,4\}$)};35\draw[arr, dashed] (armG.south) -- (rounds.north);36\end{tikzpicture}37\end{document}38