# Agent Report - Prime vs Mod6 SR Boundary Trace
**Date**: 2026-05-14 03:30  
**Piano**: 117  
**Tension explored**: BOUNDARY / prime-vs-mod6 residual  
**verdict**: CONSTRAINT - `SR` appartiene al pre-bordo `6k +/- 1`; la selezione prime resta come gradiente row-local, non come presenza binaria dell'osservabile  
observables_registry: 1.0.0-2026-05-06  
observables_used: [SR, SR2, L1, L2, triple_var, provider, offset, row_id, source_mode, case_state, sr_rate, focus_signature_count, signature_jaccard, row_local_label_swap_p, trace_jsonl_event]  

## Prima impressione

Il residuo prime-specific non nasce dalla comparsa di `SR`. `SR` e gia nel lattice candidato `6k +/- 1`; i primi non lo accendono, lo attenuano e lo deformano rispetto al pre-bordo.

## Respiro fuori-tempo

- **Combo**: A2 confine det=-1 + A9 terzo incluso + QxG continuo/discreto + BOUNDARY + direzione viva `prime_vs_mod6_SR_boundary`.
- **Dipolo / punto-zero**: pre-bordo `6k +/- 1` / selezione prime. Punto-zero: stessa riga provider/offset, dove il denominatore e identico e la primalita e l'unica selezione aggiunta.
- **Piano superiore**: topologia assiomatica del bordo: il bordo non e presenza/assenza di un segnale, ma passaggio di intensita tra un lattice candidato e il sottoinsieme selezionato.
- **Proto-ipotesi**: la firma utile e `prime_minus_mod6_z_delta` su `SR,L1,triple_var`; `has_SR` e una coordinata troppo larga per nominare primalita.
- **Possibile / non-possibile**: possibile = isolare residuo di selezione con delta z row-local; non-possibile = claim `SR prime-specific` se `SR` resta comune nel contro-perimetro mod6.
- **Proiezione**: 2 provider x 4 offset x 1024 gap; antagonisti `mod6_index_aligned` e `mod6_span_matched`; label-swap row-local; trace JSONL completa.

## Contaminazione cognitiva

- **CE-0001 / KSAR**: usato per reiterare il kernel emerso nel cycle precedente: non allargare il frame, ma far girare lo stesso nodo regressivo con tracciamento piu fine.
- **PVI**: presupposto attaccato = "`SR` persistente implica primalita"; contro-presupposto = "`SR` misura il pre-bordo aritmetico".
- **Vault**: `trace_jsonl_event` conserva casi, class summary, paired rows, audit e verdict come deposito riusabile senza trasformare una seed in invariante.

## Aderenza alla direzione

- `relation`: follows_direction
- `why`: misura l'intensita row-local di `SR/L1/triple_var` su prime vs `6k +/- 1`, con denominatore provider/offset condiviso e label-swap audit.
- `not_drift`: non torna a GUE/Poisson, `V_c`, fit o controlli larghi; il solo antagonista e il pre-bordo mod6 indicato dalla consecutio.

## Observable Contract

- **claim**: `SR` e prime-specific solo se resta piu comune o piu forte nelle finestre prime dopo sottrazione di candidati `6k +/- 1` row-local.
- **observable**: membership di `SR`, firma `[SR,L1,triple_var]`, delta z paired prime-minus-mod6, p-value label-swap.
- **operator**: `tools/exp_prime_vs_mod6_sr_boundary.py` con `--trace-jsonl`.
- **generator**: prime gaps da `row_spacings("numeri_primi")` e `direct_sieve`; mod6 da `index_aligned` e `span_matched`.
- **denominator**: 8 finestre prime paired con 8 `mod6_index_aligned` e 8 `mod6_span_matched`.
- **non_possible**: prime-specific `SR` se `SR` e comune o pari nel contro-perimetro mod6, oppure se il label-swap assorbe i delta.
- **not_tested**: beta atlas globale, `V_c`, `gap_ratio`, origine analitica del trasferimento mod6.

## Results

Main run, seed `202605140330`:

| class | cases | SR hits | focus [SR,L1,triple_var] | common obs | states |
|---|---:|---:|---:|---|---|
| prime | 8 | 8 | 3 | SR | beta_absent_blank=5, beta_chart_recovered=3 |
| mod6_index_aligned | 8 | 8 | 8 | L1,SR,triple_var | beta_chart_recovered=8 |
| mod6_span_matched | 8 | 7 | 7 | [] | support_falls=1, beta_chart_recovered=6, beta_absent_blank=1 |

Seed check, seed `202605140331`:

| class | cases | SR hits | focus [SR,L1,triple_var] | common obs | states |
|---|---:|---:|---:|---|---|
| prime | 8 | 8 | 6 | SR | beta_chart_recovered=5, beta_absent_blank=3 |
| mod6_index_aligned | 8 | 8 | 6 | L1,SR | beta_chart_recovered=7, beta_absent_blank=1 |
| mod6_span_matched | 8 | 8 | 7 | L1,SR | support_falls=1, beta_chart_recovered=6, beta_absent_blank=1 |

Row-local label-swap audit:

| pair | seed | mean Jaccard | mean SR delta | p(SR delta) | mean z_SR delta | p(z_SR delta) |
|---|---:|---:|---:|---:|---:|---:|
| prime - mod6_index | 202605140330 | 0.433 | 0.000 | 1.0000 | 28.246 | 0.0081 |
| prime - mod6_span | 202605140330 | 0.423 | 0.125 | 1.0000 | 20.793 | 0.0093 |
| prime - mod6_index | 202605140331 | 0.517 | 0.000 | 1.0000 | 28.547 | 0.0083 |
| prime - mod6_span | 202605140331 | 0.560 | 0.000 | 1.0000 | 18.844 | 0.0090 |

## Key Findings

1. **Verificato**: `SR` non e prime-specific come presenza binaria. In entrambi i run, `prime=8/8` e `mod6_index_aligned=8/8`; nel seed check anche `mod6_span_matched=8/8`.
2. **Verificato**: il count `SR` non discrimina. `p(SR delta)=1.0000` in tutti i pair audit.
3. **Verificato**: il delta di intensita discrimina. `p(z_SR delta)=0.0081/0.0083` contro `mod6_index` e `0.0093/0.0090` contro `mod6_span`.
4. **Verificato**: `mod6_index_aligned` e piu rigido dei primi: focus signature main `8/8` contro prime `3/8`, e common obs `L1,SR,triple_var` contro solo `SR`.
5. **Inferito dal perimetro**: il prossimo osservabile deve essere vettoriale e paired: `prime_minus_mod6_z_delta(SR,L1,triple_var)`, non `has_SR`.

## Verdict

**CONSTRAINT / REDIRECT**.

Formula chiusa nel perimetro: `SR` appartiene al pre-bordo `6k +/- 1`. La primalita non genera `SR`; seleziona dentro un lattice gia rigido e lascia un residuo misurabile come delta z row-local.

## Bicono

- **Due radici**: lattice candidato mod6 / sequenza prime selezionata.
- **Singolare**: riga provider-offset condivisa.
- **Invariante di passaggio**: presenza di `SR` attraversa il confine.
- **Campo di possibilita**: misurare selezione come delta z.
- **Campo non-possibile**: usare `SR` binario come firma prime-specific.

## Consecutio

Il prossimo ciclo deve formalizzare `prime_minus_mod6_z_delta` come osservabile dedicato e scalarlo su finestre piu larghe. `mod6_index_aligned` resta antagonista primario; `mod6_span_matched` resta controllo fragile perche conserva span numerico ma introduce downsample.

## Ricadute pratiche

ssp_value: yes. Lo script ora produce `--trace-jsonl`, utile per audit, replay e falsifier row-local senza riaprire il JSON aggregato.

## Files

- Script: `tools/exp_prime_vs_mod6_sr_boundary.py`
- Data: `tools/data/prime_vs_mod6_sr_boundary_20260514_0330.json`
- Trace: `tools/data/prime_vs_mod6_sr_boundary_20260514_0330.trace.jsonl`
- Seed check: `tools/data/prime_vs_mod6_sr_boundary_20260514_0330_seedcheck.json`
- Seed trace: `tools/data/prime_vs_mod6_sr_boundary_20260514_0330_seedcheck.trace.jsonl`
- Report: `tools/data/reports/agent_20260514_0330.md`
