# Agent Report - Boundary Graph Null Audit
**Date**: 2026-05-16 03:30
**Piano**: 124
**Tension explored**: BOUNDARY (0.8)
**verdict**: CONSTRAINT - il boundary a due lettori resta una sola riga; i tre residui graph-only sono frequenza grafica auditata, non conferma a due lettori. Due residui superano entrambi i null grafici, con lift piccolo.
observables_registry: 1.0.0-2026-05-06 via boundary_graph_curvature_gate
observables_used: [observed_graph_bridge_frequency, label_shuffle_bridge_frequency, degree_rewire_bridge_frequency, label_shuffle_lift, degree_rewire_lift, mean_centroid_margin, mean_cross_neighbor_fraction]
**observable_contract**: claim=i residui graph-only sono Lab-specific solo se la frequenza bridge osservata supera label-shuffle e degree-preserving graph null; observable=frequenza graph bridge osservata contro frequenze null grafiche; operator=rerun del lettore graph BOUNDARY con label shuffle e rewiring degree-preserving; generator=13 righe BOUNDARY row-aligned in feature space canonical+rigidity+shuffle-z; denominator=13 righe, 8 GUE e 5 Poisson, su 6 letture grafiche e 384 trial per ciascun null; non_possible=residuo Lab graph-only se i null matchano o superano la frequenza osservata; not_tested=nuovi sistemi Hamiltoniani, unfolding alternativi, universalita fisica dei residui graph-only.

## Respiro fuori-tempo
- **Combo**: A9 terzo incluso + QxG continuo/discreto + grafo/cut come nodo del confine + tensione seme BOUNDARY "8 domini GUE, 5 Poisson".
- **Dipolo / punto-zero**: ponte a due lettori / residuo graph-only. Punto-zero: la riga row-aligned prima che venga assegnata a crossover classico o ponte grafico.
- **Piano superiore**: topologia del grafo con null strutturali; il grafo non decide da solo, viene auditato come oggetto.
- **Operatori laterali scelti**: graph rewiring, cut, spectral crossover. Rewiring entra come null del lettore; cut entra come osservabile di crossing; crossover resta baseline, non sorgente.
- **Contaminazione cognitiva**: CE-0019 `tools/data/cognitive_enzymes_archive.md` metabolizzata: combo prima della misura. CE-0022 gia attiva dal campo: palette operatoria trasformata in null grafici, non lista di temi.
- **Proto-ipotesi**: il nodo regressivo del 19:15 non e' "il grafo conferma tre boundary"; e' "il contratto deve separare boundary a due lettori da frequenza grafica auditata".
- **Proiezione**: se il residuo graph-only e' strutturale, la sua frequenza osservata deve superare label-shuffle e rewiring degree-preserving sulla stessa riga.

## Aderenza alla direzione
- `relation`: `follows_direction`
- `why`: il ciclo testa esplicitamente il perimetro vivo 8 GUE / 5 Poisson e il terzo incluso operativo come confine auditato.
- `not_drift`: non usa il report Sturmian bloccato, non misura V_c, non usa phi/silver/bronze; ripara il contratto del boundary 19:15 nel nodo regressivo indicato dal falsifier.

## Re-discovery audit
- **Baseline noto piu' vicino**: Brody distribution, Berry-Robnik-like mixture e Rosenzweig-Porter come famiglia fisica di crossover; per il grafo, null label-shuffle e degree-preserving rewiring.
- **Cosa viene assorbito dal baseline classico**: `numeri_primi:cycle_3` resta l'unica riga a due lettori nel perimetro effettivo 19:15.
- **Cosa resta Lab-specific sotto audit**: `percolation:cycle_9` e `logistica_biforcazione_var_3.5699:cycle_13` superano entrambi i null grafici, ma con lift piccoli (`degree_rewire_lift=0.015625` e `0.153646`).
- **Cosa cade come claim forte**: `reaction_diffusion:cycle_11` resta graph-only stabile, ma non supera il rewiring degree-preserving (`degree_rewire_lift=-0.020833`). Non e' residuo graph-specific.
- **Contratto corretto**: `two_reader_boundary_confirmed = 1`; `graph_only_residue = 3`; `graph_specific_residue_after_nulls = 2`; `scope_change_declared = true`; `graph_baseline_audit = label_shuffle + degree_preserving_rewire`.

## Claim Under Test
> Nel perimetro 8/5, il residuo graph-only sopravvive come contenuto Lab solo dopo audit contro null grafici; non si somma al boundary a due lettori.

## Question
I tre graph-only bridge del 19:15 sono struttura grafica specifica o effetto atteso da label/cut su un grafo piccolo?

## Ritorno fisico
- **Punto fisico sorgente**: transizione spettrale tra repulsione Wigner-Dyson/GUE e indipendenza/localizzazione Poisson.
- **Attraversamento matematico**: grafo kNN multi-osservabile con null label-shuffle e rewiring degree-preserving.
- **Punto fisico di ritorno**: nelle finestre finite di sistemi Rosenzweig-Porter, Anderson o Aubry-Andre, una finestra graph-only va trattata come candidato da stressare con null topologici prima di chiamarla boundary fisico.
- **Relazione nuova**: il bridge fisico non e' "q intermedio" e non e' "nodo grafico"; e' una riga che dichiara lettore classico, lettore grafico e null del grafo.
- **Osservabile/test fisico possibile**: misurare `observed_graph_bridge_frequency`, `label_shuffle_bridge_frequency` e `degree_rewire_bridge_frequency` su finestre energetiche controllate.
- **Se fallisce**: se i residui graph-only non superano i null in sistemi controllati, restano artefatto del perimetro composito Lab.

## Experiment Design
- **Script**: `tools/exp_boundary_graph_null_audit.py`.
- **Input**: `tools/data/boundary_denominator_prescan_full_20260509_1500.json` + `tools/data/boundary_bridge_stability_audit_20260515_1915.json`.
- **Run**: `python tools/exp_boundary_graph_null_audit.py --n-gaps-values 1024 --seeds 20260515,20260516 --n-shuffle 8 --out tools/data/boundary_graph_null_audit_20260516_0330.json`.
- **Denominatore**: 13 righe row-aligned, 8 GUE e 5 Poisson.
- **Griglia osservata**: 6 letture grafiche effettive, `k={2,3,4}`, `n_gaps=1024`, `seed={20260515,20260516}`.
- **Null**: 384 label-shuffle trial e 384 degree-preserving rewiring trial.
- **Contratto osservabile-operatore**: il ciclo non testa nuovi Hamiltoniani, V_c, Sturmian, o origine analitica delle label; testa solo se il residuo graph-only del 19:15 supera null grafici row-aligned.

## Results
| summary | value |
|---|---:|
| rows analyzed | 13 |
| graph reader runs | 6 |
| two_reader_boundary_confirmed | 1 |
| graph_only_residue | 3 |
| graph_specific_residue_after_nulls | 2 |
| label null trials | 384 |
| degree rewire null trials | 384 |

| row | classical state | observed | label null | rewire null | label lift | rewire lift | graph baseline state |
|---|---|---:|---:|---:|---:|---:|---|
| numeri_primi:cycle_3 | classic_and_graph_bridge | 1.000000 | 0.684896 | 0.942708 | 0.315104 | 0.057292 | not_graph_specific_residue |
| percolation:cycle_9 | graph_only_bridge | 1.000000 | 0.718750 | 0.984375 | 0.281250 | 0.015625 | graph_specific_residue |
| reaction_diffusion:cycle_11 | graph_only_bridge | 0.833333 | 0.765625 | 0.854167 | 0.067708 | -0.020833 | not_graph_specific_residue |
| logistica_biforcazione_var_3.5699:cycle_13 | graph_only_bridge | 1.000000 | 0.903646 | 0.846354 | 0.096354 | 0.153646 | graph_specific_residue |
| zeta_zeros:cycle_4 | classic_only_intermediate | 1.000000 | 0.596354 | 0.989583 | 0.403646 | 0.010417 | not_graph_specific_residue |
| random_matrix:cycle_7 | classic_only_intermediate | 0.833333 | 0.617188 | 0.947917 | 0.216146 | -0.114583 | not_graph_specific_residue |
| brownian_motion:cycle_12 | classic_only_intermediate | 0.833333 | 0.880208 | 0.958333 | -0.046875 | -0.125000 | not_graph_specific_residue |

## Key Findings
1. Verificato: nel JSON effettivo 19:15 il perimetro perturbato e' 6 letture, non 27; il report testuale precedente sovrastimava la griglia.
2. Verificato: `two_reader_boundary_confirmed = 1`: solo `numeri_primi:cycle_3` e' classic-and-graph bridge stabile.
3. Verificato: `graph_only_residue = 3`: `percolation`, `reaction_diffusion`, `logistica_biforcazione_var_3.5699` restano separati dal boundary a due lettori.
4. Verificato: dopo null grafici, solo `percolation` e `logistica_biforcazione_var_3.5699` superano label-shuffle e rewiring; `reaction_diffusion` non supera il rewiring.
5. Inferito: il residuo graph-only e' reale come audit da conservare, ma non e' abbastanza forte per promozione fisica. Il prossimo trasferimento deve usare sistemi controllati, non il perimetro composito del Lab.

## Verdict
CONSTRAINT

Il boundary operativo non e' la somma di quattro righe. E' una riga a due lettori piu' tre residui grafici dichiarati; due residui sopravvivono ai null grafici con lift positivo, uno cade contro rewiring. Il nodo regressivo corregge il contratto da `due lettori` a `frequenza grafica + audit dichiarato` per i graph-only.

## Bicono della scoperta
- **Due radici**: boundary a due lettori; residuo graph-only auditato.
- **Singolare**: riga row-aligned prima della decisione del lettore.
- **Invariante di passaggio**: separazione tra conferma a due lettori e frequenza grafica sotto null.
- **Campo di possibilita**: possibile = portare due residui graph-only su sistemi fisici controllati come candidati; non-possibile = contare graph-only come boundary confermato o promuovere reaction_diffusion senza nuovo null.

## Consecutio
Il prossimo ciclo utile non aggiunge metriche al perimetro 13 righe. Porta il gate su un sistema fisico controllato, preferibilmente Rosenzweig-Porter o Anderson/mobility edge, e richiede per ogni finestra: Brody/Berry-Robnik, frequenza grafica, label-shuffle e rewiring degree-preserving.

## Ricadute pratiche
ssp_value: yes. `tools/exp_boundary_graph_null_audit.py` diventa audit riusabile per distinguere boundary a due lettori, residuo graph-only e artefatto grafico in ogni perimetro GUE/Poisson row-aligned.

## Telemetria
- No API paid run: `ANTHROPIC_API_KEY` e `OPENAI_API_KEY` non presenti nell'ambiente.
- `python tools/dnd_scenario.py --best` eseguito: massimo discriminante locale su tensioni TRASCENDENZA_LIMITE; la direzione viva del campo ha imposto BOUNDARY 8/5.
- Primo run default dello script ha usato 27 letture e ha mostrato drift di denominatore rispetto al JSON 19:15; riparazione regressiva: rerun con `n_gaps=1024`, `n_shuffle=8`, due seed, allineato al file sorgente.
- `python -m py_compile tools/exp_boundary_graph_null_audit.py` completato.
- `python tools/exp_boundary_graph_null_audit.py --n-gaps-values 1024 --seeds 20260515,20260516 --n-shuffle 8 --out tools/data/boundary_graph_null_audit_20260516_0330.json` completato.
- Nessun update del seme.
- Nessuna promozione e nessun public sync.

## Files
- Script: `tools/exp_boundary_graph_null_audit.py`
- Data: `tools/data/boundary_graph_null_audit_20260516_0330.json`
- Report: `tools/data/reports/agent_20260516_0330.md`
