
Agent Control Protocol (ACP) — Specifica ufficiale in inglese. Architettura di autorizzazione crittograficamente verificabile per agenti AI autonomi.
Controllo di ammissione per azioni degli agenti.
Prima che un agente modifichi lo stato del sistema, ACP risponde a quattro domande: Chi è questo agente? Cosa è autorizzato a fare? Questa azione è conforme alle policy? L'esito può essere ricondotto a un'istituzione responsabile?
Cryptographic identity · Scoped capability tokens · Verifiable delegation chains · Execution proof
https://agentcontrolprotocol.xyz
Agent Control Protocol: Controllo di Ammissione per Azioni degli Agenti Marcelo Fernandez (TraslaIA), 2026
DOI: 10.5281/zenodo.19672575 · arXiv: 2603.18829
ACP è il fondamento pubblicato di una serie di sette articoli sulla governance formale degli agenti. Ogni articolo affronta un diverso livello dello stack di governance.
| Articolo | Titolo | Repo | Stato |
|---|---|---|---|
| Paper 0 | Confini Decisionali Atomici | decision-boundary-model | Zenodo · arXiv:2604.17511 |
| Paper 1 | Agent Control Protocol (ACP) — questo repo | acp-framework-en | Zenodo · arXiv:2603.18829 |
| Paper 2 | Dall'Ammissione agli Invarianti (IML) | iml-benchmark | Zenodo · arXiv:2604.17517 |
| Paper 3/4 | Struttura di Governance Irriducibile | governance-structure | Zenodo · arXiv: in attesa |
| Paper 5 | Modello di Autorità Ricostruttiva (RAM) | reconstructive-authority-model | Zenodo · arXiv:2604.22898 |
| Paper 6 | Operazionalizzazione dell'Autorità Ricostruttiva | operationalizing-ram | Zenodo · arXiv: in attesa |
| Paper 7 | Colmare il Divario di Esecuzione (Empirico) | agent-governance-applied | Zenodo · arXiv: in attesa |
Logica della serie: Il Paper 0 prova quando l'ammissibilità può essere garantita → Il Paper 1 (ACP) costruisce il protocollo → Il Paper 2 rileva la deriva invisibile all'applicazione delle policy → Il Paper 3/4 prova che un'applicazione corretta ≠ allocazione equa e stabilisce l'irriducibilità dell'architettura a quattro livelli → Il Paper 5 (RAM) fornisce chiusura operativa: quando eseguire in condizioni di osservabilità parziale → Il Paper 6 operazionalizza il RAM come un ciclo di recupero a runtime → Il Paper 7 fornisce la prima validazione empirica dell'intero stack su agenti LangGraph reali.
Gli agenti autonomi stanno passando dalla sperimentazione alla produzione. Interagiscono già con API, sistemi aziendali, infrastrutture finanziarie e altri agenti.
Quando un agente agisce tra organizzazioni, sorgono immediatamente diverse domande:
Oggi, la maggior parte dei sistemi non riesce a rispondere a queste domande in modo affidabile.
ACP introduce l'infrastruttura per rispondere a tutte queste domande.
Diverse iniziative affrontano come gli agenti autonomi interagiscono con i sistemi. La maggior parte si concentra sull'accesso agli strumenti o sulla comunicazione. ACP si concentra su autorità, verifica dell'esecuzione e responsabilità istituzionale.
ACP affronta un livello diverso: chi ha autorizzato l'azione, con quale policy e chi è responsabile dell'esito.
Gli ingegneri che valutano ACP spesso chiedono: "perché non usare OPA?" Questi sistemi sono complementari, non competitivi.
OPA può essere utilizzato come motore di valutazione delle policy all'interno di un sistema conforme ad ACP. ACP non sostituisce OPA — aggiunge il livello di identità dell'agente, la catena di delega e la prova di esecuzione che OPA non fornisce.
¹ ACP (Agent Control Protocol) non è correlato ad altre iniziative che condividono lo stesso acronimo.
Kubernetes utilizza un Admission Controller per intercettare le richieste API prima che raggiungano il cluster — valutando le policy, applicando le quote, rifiutando operazioni non conformi. ACP applica lo stesso schema alle azioni degli agenti.``` agent intent ↓ [1] Identity check → pkg/agent + pkg/hp (ACP-AGENT-1.0, ACP-HP-1.0) ↓ [2] Capability check → pkg/ct + pkg/dcma (ACP-CT-1.0, ACP-DCMA-1.0) ↓ [3] Policy check → pkg/risk + pkg/psn (ACP-RISK-3.0, ACP-PSN-1.0) ↓ [4] ADMIT / DENY / ESCALATE ↓ (if ADMIT) [5] Execution token → pkg/exec (ACP-EXEC-1.0) ↓ [6] Ledger record → pkg/ledger (ACP-LEDGER-1.3) ↓ system state mutation
La differenza da Kubernetes: ACP opera attraverso i confini istituzionali. Un agente della Banca A può essere ammesso dalla Banca B senza che la Banca B si fidi dell'infrastruttura interna della Banca A — conta solo la prova crittografica.
---
## Come Funziona ACP
ACP tratta le interazioni degli agenti come **operazioni governate**, non semplici richieste.
Ogni interazione passa attraverso sei fasi strutturate:
1. **Verifica dell'identità** — conferma chi è l'agente (`ACP-AGENT-1.0`, `ACP-HP-1.0`)
2. **Validazione delle capacità** — conferma ciò che l'agente è autorizzato a fare (`ACP-CT-1.0`, `ACP-DCMA-1.0`)
3. **Autorizzazione delle politiche** — conferma che l'azione è permessa secondo la politica corrente (`ACP-RISK-3.0`, `ACP-PSN-1.0`)
4. **Esecuzione deterministica** — esegue esattamente ciò che è stato autorizzato, niente di più (`ACP-EXEC-1.0`)
5. **Registrazione verificabile** — produce prova crittografica di ciò che è accaduto (`ACP-LEDGER-1.3`, `ACP-PROVENANCE-1.0`)
6. **Aggiornamento della fiducia** — aggiorna lo stato di reputazione e attestazione basato sull'interazione (`ACP-REP-1.2`, `ACP-LIA-1.0`)
Ciò permette alle interazioni di diventare tracciabili, verificabili e attribuibili tra organizzazioni.
---
## Invariante Costituzionale
L'esecuzione di ACP è governata da un singolo invariante architetturale.```
Execute(request) ⟹
ValidIdentity ∧ ValidCapability ∧ ValidDelegationChain ∧ AcceptableRisk
| Condizione | Significato |
|---|---|
ValidIdentity | L'agente ha un'identità verificata e firmata |
Nessuna azione dell'agente viene eseguita a meno che tutte e quattro le condizioni siano soddisfatte simultaneamente.
I livelli del protocollo esistono per imporre questo invariante a ogni confine di interazione.
ACP è organizzato in cinque livelli di protocollo. Ogni livello si basa sul precedente e aggiunge una distinta capacità di governance.``` ACP PROTOCOL ARCHITECTURE
┌──────────────────────────────────────┐
│ ACTORS │
│ Humans · Systems · Agents │
└──────────────────────────────────────┘
│
▼
==================================================================== L1 — CORE EXECUTION
┌──────────────────────────────────────────────────────────────────┐ │ IDENTITY & CAPABILITIES │ │ SIGN · AGENT · CT · CAP-REG │ │ │ │ Agent identity, credential verification and capability registry │ └──────────────────────────────────────────────────────────────────┘ │ ▼ ┌──────────────────────────────────────────────────────────────────┐ │ POLICY & AUTHORITY │ │ HP · DCMA │ │ │ │ Policy evaluation and authorization decision │ └──────────────────────────────────────────────────────────────────┘ │ ▼ ┌──────────────────────────────────────────────────────────────────┐ │ EXECUTION │ │ MESSAGES │ │ │ │ Deterministic command execution and interaction handling │ └──────────────────────────────────────────────────────────────────┘
==================================================================== L2 — TRUST LAYER
┌──────────────────────────────────────────────────────────────────┐ │ RISK MANAGEMENT │ │ RISK · REV │ │ │ │ Risk scoring and revocation control │ └──────────────────────────────────────────────────────────────────┘
┌──────────────────────────────────────────────────────────────────┐ │ INTERACTION TRUST │ │ ITA │ │ │ │ Trust attestations for interactions │ └──────────────────────────────────────────────────────────────────┘
==================================================================== L3 — VERIFIABLE EXECUTION
┌──────────────────────────────────────────────────────────────────┐ │ EXECUTION RECORD │ │ EXEC · POLICY-CTX │ │ │ │ Proof of execution and policy context snapshot │ └──────────────────────────────────────────────────────────────────┘
┌──────────────────────────────────────────────────────────────────┐ │ PROVENANCE │ │ PROVENANCE GRAPH │ │ │ │ Interaction lineage and cross-system event tracking │ └──────────────────────────────────────────────────────────────────┘
┌──────────────────────────────────────────────────────────────────┐ │ LEDGER │ │ │ │ Tamper-resistant storage for verifiable execution history │ └──────────────────────────────────────────────────────────────────┘
==================================================================== L4 — GOVERNANCE
┌──────────────────────────────────────────────────────────────────┐ │ GOVERNANCE EVENTS │ │ GOV-EVENTS │ │ │ │ Institutional governance tracking │ └──────────────────────────────────────────────────────────────────┘
┌──────────────────────────────────────────────────────────────────┐ │ REPUTATION & LIABILITY │ │ REP · LIA │ │ │ │ Reputation accumulation and liability attribution │ └──────────────────────────────────────────────────────────────────┘
┌──────────────────────────────────────────────────────────────────┐ │ HISTORICAL RECORD │ │ HIST │ │ │ │ Verifiable long-term interaction history │ └──────────────────────────────────────────────────────────────────┘
==================================================================== L5 — FEDERATION
┌──────────────────────────────────────────────────────────────────┐ │ DECENTRALIZED ACP │ │ ACP-D │ │ │ │ Cross-institution federation and verification │ └──────────────────────────────────────────────────────────────────┘
→ **Novità su ACP? Inizia qui:** [docs/admission-flow.md](https://github.com/chelof100/acp-framework-en/blob/HEAD/docs/admission-flow.md) — la guida completa passo-passo al controllo di ammissione
→ Modello formale del dominio e grafo delle dipendenze: [ARCHITECTURE.md](https://github.com/chelof100/acp-framework-en/blob/HEAD/ARCHITECTURE.md)
---
## Interazione tra istituzioni
ACP è progettato per interazioni tra sistemi indipendenti.
Ogni passo produce un artefatto verificabile che diventa parte del registro di interazione permanente.```
INSTITUTION A INSTITUTION B
┌─────────────────────────────┐ ┌─────────────────────────────┐
│ │ │ │
│ AGENT A │ │ AGENT B │
│ │ │ │
└──────────────┬──────────────┘ └──────────────┬──────────────┘
│ │
│ 1 interaction request │
└────────────────────────────────────────►│
▼
┌───────────────────────────┐
│ AUTHORITY (HP) │
│ policy evaluation │
│ capability validation │
│ risk / revocation check │
└─────────────┬─────────────┘
│ 2 decision
▼
┌───────────────────────────┐
│ EXECUTION │
│ deterministic action │
│ command execution │
└─────────────┬─────────────┘
│ 3 execution record
▼
┌───────────────────────────┐
│ PROVENANCE │
│ interaction lineage │
│ cross-org attribution │
└─────────────┬─────────────┘
│ 4 verifiable record
▼
┌───────────────────────────┐
│ LEDGER │
│ execution hash │
│ policy context snapshot │
└─────────────┬─────────────┘
│ 5 trust update
▼
┌───────────────────────────┐
│ REPUTATION │
│ ITA attestation │
│ reputation update │
└───────────────────────────┘
Ogni azione dell'agente deve essere autorizzata da una policy definita. Nessuna autorizzazione implicita. Nessun accesso ambientale.
L'esecuzione deve corrispondere esattamente al comando autorizzato. Ciò che è stato autorizzato è ciò che viene eseguito — niente di più.
Ogni interazione produce artefatti crittograficamente verificabili. L'esecuzione può essere dimostrata a posteriori, senza fidarsi di una singola parte.
La responsabilità è sempre attribuibile a un attore identificabile. Le catene di delega sono complete e tracciabili fino a una radice istituzionale.
Sistemi indipendenti possono verificarsi reciprocamente senza un'autorità centrale. La fiducia si guadagna attraverso una storia di interazioni verificabili, non si assume.
Identità, capacità, enforcement delle policy ed esecuzione deterministica.
Valutazione dinamica del rischio e gestione della fiducia nelle interazioni.
| Componente | Ruolo |
|---|---|
| RISK | Motore di rischio deterministico — Punteggio di Rischio RS (0–100) |
| REV | Protocollo di revoca — endpoint e CRL |
| ITA | Ancoraggio di Fiducia Istituzionale — attestazioni di fiducia per interazione |
Ogni interazione lascia una registrazione completa e crittograficamente verificabile.
| Componente | Ruolo |
|---|---|
| EXEC | Execution Token — monouso, validità 300 secondi |
Responsabilità a lungo termine e supervisione istituzionale.
| Componente | Ruolo |
|---|
Interoperabilità tra istituzioni indipendenti.
| Componente | Ruolo |
|---|---|
| ACP-D | ACP Decentralizzato — federazione tra istituzioni, quorum BFT |
Versione attuale per specifica. Questa tabella è il riferimento autorevole per "quale versione implementare".
¹ ACP-SIGN-1.0 rimane attiva come baseline Ed25519. ACP-SIGN-2.0 aggiunge l'estensione post-quantum (ML-DSA-65). Entrambe sono in vigore fino a quando Dilithium non sarà distribuito in produzione.
Le versioni sostituite sono archiviate in archive/specs/.
Le implementazioni possono adottare ACP in modo incrementale, a partire da L1.
Requisiti normativi completi per livello:
→ Definizione normativa di conformità: spec/governance/ACP-CONF-1.2.md
A=(ID,C,P,D,L,S)acp:cap:*F_anom + cooldownPatternKey(agentID, cap, res), elimina il mescolamento di stato tra contesti0.6·ITS + 0.4·ERSacp-framework/ ├── spec/ │ ├── core/ ← L1: identity, capability, delegation │ ├── security/ ← L2: trust, risk, revocation │ ├── operations/ ← L3–L4: execution, ledger, governance │ ├── governance/ ← conformance, events, process │ └── decentralized/ ← L5: ACP-D ├── openapi/ │ └── acp-api-1.0.yaml ← OpenAPI 3.1.0 spec for all ACP-API-1.0 endpoints ├── compliance/ │ ├── ACP-TS-1.1.md ← test vector format specification │ ├── test-vectors/ ← single-shot conformance vectors (CORE · DCMA · HP · LEDGER · EXEC · RISK-2.0) │ │ └── sequence/ ← stateful sequence vectors (ACR-1.0, 5 scenarios) │ ├── adversarial/ ← adversarial evaluation (Exp 1–12: cooldown evasion, multi-agent, backend stress, token replay, deviation collapse, threshold sensitivity, multi-tool IPI) │ └── runner/ ← ACR-1.0 compliance runner (library mode + HTTP mode) ├── tla/ │ ├── ACP.tla ← base formal model — Safety · LedgerAppendOnly · RiskDeterminism (v1.17) │ ├── ACP.cfg ← TLC configuration for ACP.tla │ ├── ACP_Extended.tla ← extended model — F_anom · cooldown · liveness · 11 invariants + 4 temporal (v1.25) │ ├── ACP_Extended.cfg ← single-agent config — 5,684,342 states · 3,147,864 distinct · depth 15 · 0 violations │ └── ACP_Extended_2agents.cfg ← two-agent config — 4,294,930,695 distinct states · LEDGER_BOUND=11 · 11 invariants · 0 violations ├── archive/ │ └── specs/ ← superseded specification versions (historical reference) ├── impl/ │ └── go/ ← reference implementation ├── ARCHITECTURE.md ← formal domain model, dependency graph ├── CHANGELOG.md └── README.md
---
## Guida rapida```bash
# Option 1: Go reference server
cd impl/go
docker compose up
# Option 6: ACR-1.0 sequence compliance runner — validate ACP-RISK-3.0 stateful behavior
cd compliance/runner
go run . --mode library --dir ../test-vectors/sequence --strict
# PASS 5/5 — SEQ-BENIGN-001 SEQ-BOUNDARY-001 SEQ-PRIVJUMP-001 SEQ-FANOM-RULE3-001 SEQ-COOLDOWN-001
# Option 5: Multi-org demo — Org-A issues signed policy+reputation, Org-B validates independently
cd examples/multi-org-demo
docker compose up
# Org-A: http://localhost:8081 | Org-B: http://localhost:8082
# Option 2: Python SDK — core admission control pattern (no server required)
cd impl/python
pip install -e .
python examples/admission_control_demo.py
# Option 3: Python SDK — LangChain integration (@acp_tool decorator)
cd impl/python
pip install -e .
python examples/langchain_agent_demo.py
# Option 4: LangChain + real LLM agent
pip install langchain langchain-openai
export OPENAI_API_KEY=sk-...
python examples/langchain_agent_demo.py --with-llm
# Option 7: Real-LLM IPI demo (Ollama + DeepSeek-R1:8b) — ACP blocks IPI-induced fund_transfer
# Requires: ollama serve && ollama pull deepseek-r1:8b
cd demos/ollama-agent
python agent_demo.py
# ACP denies every IPI-induced fund_transfer (RS=80); cooldown activates after 3 denials
Controllo di salute:```bash curl http://localhost:8080/acp/v1/health
[Il contenuto Markdown da tradurre non è stato fornito dopo "INPUT:". Si prega di incollare il testo sorgente per procedere con la traduzione.]```json
{
"acp_version": "1.0",
"status": "operational",
"timestamp": 1718920000,
"components": {
"policy_engine": "operational",
"audit_ledger": "operational",
"agent_registry": "operational",
"rev_endpoint": "operational"
}
}
Apache 2.0
| Protocollo | Focus | Confine di competenza |
|---|
| MCP (Model Context Protocol) | Accesso agli strumenti per LLM | Verifica dell'autorità, applicazione delle policy, auditabilità dell'esecuzione |
| A2A (Agent-to-Agent) | Modelli di comunicazione tra agenti | Fiducia istituzionale, governance, catena di responsabilità |
| OpenAI Agents SDK | Orchestrazione degli strumenti | Autorità inter-organizzativa, provenienza, responsabilità |
| Agent Client Protocol ¹ | Integrazione runtime client/agente | Governance, catene di delega, cronologia di esecuzione verificabile |
| ACP (Agent Control Protocol) | Infrastruttura di governance e responsabilità | — |
| Sistema | Cosa fa | Cosa aggiunge ACP |
|---|
| OPA (Open Policy Agent) | Valuta le policy a partire da dati e regole | Identità crittografica dell'agente + catena di delega + prova di esecuzione |
| AWS IAM / Azure RBAC | Modello di permessi statico per risorse cloud | Delega dinamica agente-a-agente con catena verificabile + registro |
| OAuth 2.0 + OIDC | Autorizzazione di utenti e servizi tramite token | Delega multi-hop per agenti con non-escalation + responsabilità istituzionale |
| SPIFFE / SPIRE | Identità crittografica del workload | ACP si basa sull'identità del workload per aggiungere scoping delle capacità + governance |
| ACP | Controllo di ammissione per azioni degli agenti | — |
ValidCapability | L'agente possiede un Token di Capacità autorizzato |
ValidDelegationChain | Ogni passo di delega è tracciabile fino a una radice istituzionale |
AcceptableRisk | Il punteggio di rischio rientra nelle soglie delle politiche istituzionali |
| Componente | Ruolo |
|---|
| SIGN | Firma crittografica — fondamento di tutti gli oggetti del protocollo |
| AGENT | Specifica formale dell'identità dell'agente A=(ID,C,P,D,L,S) |
| CT | Capability Token — struttura, emissione e verifica |
| CAP-REG | Registro canonico delle capacità acp:cap:* |
| HP | Handshake Protocol — prova crittografica del possesso di una capacità |
| DCMA | Delega multi-hop — non escalation e revoca transitiva |
| MESSAGES | Formato wire — 5 tipi di messaggi normalizzati |
| POLICY-CTX | Snapshot del Contesto della Policy — stato della policy firmato al momento dell'esecuzione |
| PROVENANCE | Provenienza dell'Autorità — prova retrospettiva della catena di delega |
| LEDGER | Registro di Audit — append-only, concatenato con hash |
| GOV-EVENTS | Flusso di eventi di governance — tracciamento istituzionale |
| REP | Estensione della Reputazione — punteggio composito 0.6·ITS + 0.4·ERS |
| LIA | Tracciabilità della Responsabilità — catena di responsabilità attribuita |
| HIST | API di query della cronologia — cronologia delle esecuzioni sottoposte a audit |
| Specifica | Versione attiva | Livello |
|---|
| ACP-SIGN | 2.0 ¹ | L1 |
| ACP-AGENT | 1.0 | L1 |
| ACP-CT | 1.0 | L1 |
| ACP-CAP-REG | 1.0 | L1 |
| ACP-HP | 1.0 | L1 |
| ACP-DCMA | 1.0 | L1 |
| ACP-MESSAGES | 1.0 | L1 |
| ACP-RISK | 3.0 | L2 |
| ACP-REV | 1.0 | L2 |
| ACP-ITA | 1.1 | L2/L4 |
| ACP-API | 1.0 | L3 |
| ACP-EXEC | 1.0 | L3 |
| ACP-LEDGER | 1.3 | L3 |
| ACP-PROVENANCE | 1.0 | L3 |
| ACP-POLICY-CTX | 1.0 | L3 |
| ACP-PSN | 1.0 | L3 |
| ACP-PAY | 1.0 | L4 |
| ACP-REP | 1.2 | L4 |
| ACP-GOV-EVENTS | 1.0 | L4 |
| ACP-LIA | 1.0 | L4 |
| ACP-HIST | 1.0 | L4 |
| ACP-NOTIFY | 1.0 | L4 |
| ACP-DISC | 1.0 | L4 |
| ACP-BULK | 1.0 | L4 |
| ACP-CROSS-ORG | 1.0 | L4 |
| ACP-REP-PORTABILITY | 1.1 | L4 |
| ACP-CONF | 1.2 | — |
| Livello | Nome | Cosa si ottiene |
|---|
| L1 | Core | Identità, token di capacità ed esecuzione |
| L2 | Sicurezza | Punteggio di rischio, revoca e ancore di fiducia |
| L3 | Esecuzione Verificabile | Token di esecuzione, registro e provenienza |
| L4 | Governance | Reputazione, cronologia e responsabilità |
| L5 | Federazione | Reti ACP decentralizzate |
| Livello | Specifiche richieste |
|---|
| L1 | SIGN · AGENT · CT · CAP-REG · HP · DCMA · MESSAGES |
| L2 | L1 + RISK · REV · ITA-1.0 |
| L3 | L2 + API · EXEC · LEDGER · PROVENANCE · POLICY-CTX · PSN |
| L4 | L3 + PAY · REP-1.2 · ITA-1.1 · GOV-EVENTS · LIA · HIST · NOTIFY · DISC · BULK · CROSS-ORG · REP-PORTABILITY |
| L5 | L4 + ACP-D · ITA-1.1 quorum BFT |
| Elemento | Stato |
|---|
| ACP-CONF-1.2 | ✅ Completato — unica fonte normativa di conformità |
| ACP-LEDGER-1.3 | ✅ Completato — firma normativamente obbligatoria |
Specifica OpenAPI (openapi/acp-api-1.0.yaml) | ✅ Completato — OpenAPI 3.1.0, tutti gli endpoint ACP-API-1.0 |
| Vettori di test di conformità (CORE · DCMA · HP · LEDGER · EXEC · PROV · PCTX · REP · RISK-2.0) | ✅ Completato — 73 vettori di test firmati + 65 non firmati RISK-2.0 |
| Implementazione di riferimento — 23 pacchetti Go (L1–L4) | ✅ Completato — impl/go/pkg/ copre tutti i livelli di conformità |
pkg/psn snapshot delle policy | ✅ Completato — transizioni atomiche, singolo snapshot ATTIVO |
SDK Python — ACPAdmissionGuard + @acp_tool (LangChain) | ✅ Completato — impl/python/ |
ACP-RISK-2.0 — F_anom + Cooldown + pkg/risk | ✅ Completato — deterministico, sub-µs, 65 vettori |
ACP-RISK-3.0 — Regola 1 con contesto (pkg/risk/engine.go) | ✅ Completato — v1.22 · CountPattern(ctxKey, 60s) sostituisce CountRequests(agentID) · eliminata la contaminazione dello stato tra contesti |
Demo agente di pagamento (examples/payment-agent/) | ✅ Completato — v1.16 |
| ACP-SIGN-2.0 — Ibrido post-quantum (Ed25519 + ML-DSA-65) | ✅ Completato — specifica v1.16; ML-DSA-65 reale tramite cloudflare/circl pkg/sign2/ v1.20 |
Esecutore di conformità sequenziale ACR-1.0 (compliance/runner/) | ✅ Completato — v1.17 · modalità libreria + HTTP · 5/5 PASS |
Vettori di test sequenziali (compliance/test-vectors/sequence/) | ✅ Completato — v1.17 · 5 scenari con stato |
Modello base TLA+ (tla/ACP.tla) | ✅ Completato — v1.17 · 3 invarianti · 0 violazioni |
Modello esteso TLA+ (tla/ACP_Extended.tla) | ✅ Completato — v1.28 · 11 invarianti + 4 proprietà temporali · agente singolo: 5.684.342 stati · due agenti LB=11: 4.294.930.695 stati distinti · 0 violazioni |
Valutazione avversaria (compliance/adversarial/) | ✅ Completato — v1.29 · 14 esperimenti · dati benchmark reali (N=5 esecuzioni, media±dev.st.) |
Pipelining Redis (compliance/adversarial/redis_pipelined.go) | ✅ Completato — v1.20 · 2 RTT/richiesta · accelerazione ~1,8× |
Benchmark ML-DSA-65 (pkg/sign2/sign2_bench_test.go) | ✅ Completato — v1.20 · Ed25519 ~25 µs firma / ~56 µs verifica · ML-DSA-65 ~100–130 µs firma / ~81 µs verifica |
NullQuerier + StatelessEngine (pkg/risk/null_querier.go, stateless_engine.go) | ✅ Completato — v1.21 · baseline LedgerQuerier a stato zero per confronto stateless/stateful |
Esperimento stateless vs. stateful (Exp 6, pkg/risk/stateless_comparison_test.go) | ✅ Completato — v1.21 · 500 richieste · stateless 500/500 vs ACP 2/500 (0,4%) · latenza di rilevamento 11 azioni |
Test vulnerabilità contaminazione stato (Exp 7, pkg/risk/statemixing_test.go) | ✅ Completato — v1.21 · contaminazione Regola 1 tra contesti · RS +20 · ESCALATED→DENIED dopo 11 data.read |
| Analisi attacco contaminazione stato (articolo §Vulnerabilità contaminazione stato) | ✅ Completato — v1.21 · caratterizzazione formale · dati Exp 7 · percorso mitigazione ACP-RISK-3.0 |
Correzione contaminazione stato (Exp 8, pkg/risk/statemixing_fix_test.go) | ✅ Completato — v1.22 · RISK-3.0 · 3 scenari · RS pulito=50 ESCALATED · RS contaminato=50 ESCALATED · burst stesso contesto RS=85 DENIED |
| Articolo v1.23 — Correzioni sprint | ✅ Completato — v1.23 · §RISK-3.0 in §Meccanismi tecnici · tesi controfattuale · unificato 767–921 ns · Esperimento 3b→Esperimento 4 rinumerato · Esperimento 3 N=5 · tutte le 7 correzioni incrociate |
Collasso deviazione (Exp 9, compliance/adversarial/exp_deviation_collapse.go) | ✅ Completato — v1.23 · 3 fasi: baseline BAR=0,70 → collasso BAR=0,00 → controfattuale BAR=1,00 |
| Simulazione deriva Fase D (estensione Exp 9) | ✅ Completato — v1.25 · 5 lotti × 20 casi · 0%→80% sanificazione · allarme anticipato ΔBAR scatta al lotto 2 (3 lotti prima del collasso) |
| Modello di fiducia ITA (articolo §Modello di fiducia e modalità di guasto) | ✅ Completato — v1.20 · bootstrap / finestra di compromissione / autorità di revoca — affermazioni semi-formali |
SDK TypeScript (impl/typescript/) | ✅ Completato — v1.4.0 · zero dipendenze · 68 test |
SDK Rust (impl/rust/) | ✅ Completato — v1.4.0 · ed25519-dalek v2 · 43 test |
pkg/barmonitor — BAR-Monitor con rilevamento trend ΔBAR (impl/go/pkg/barmonitor/) | ✅ Completato — v1.24 · 18 test · AlertThreshold + AlertTrend (scatta prima della soglia) · buffer circolare thread-safe |
API EvaluateCounterfactual (impl/go/pkg/risk/counterfactual.go) | ✅ Completato — v1.24 · 14 test · 3 fabbriche di mutazioni (strutturale/comportamentale/temporale) · BAR(risultati) · fail-closed |
Simulazione deriva Fase D (Exp 9) + fix buffer circolare computeTrend() | ✅ Completato — v1.25 · allarme anticipato ΔBAR prima della soglia · bug ordine temporale corretto |
TLA+ FailureConditionPreservation + NoDegenerateAdmissibility (11 invarianti) | ✅ Completato — v1.27 · 0 violazioni · 4.294.930.695 stati distinti (due agenti LB=11, 10,5h) |
Endpoint HTTP POST /acp/v1/counterfactual (impl/go/cmd/acp-server/) | ✅ Completato — v1.25 · 7 test di integrazione · mutazioni strutturali + comportamentali via HTTP |
| Modello avversario formale A=(K,S,B) + tassonomia esperimenti (Exp 1–14) | ✅ Completato — v1.29 · black-box / formula-aware / full-state · tutti gli esperimenti mappati |
| Analisi sensibilità soglia (Exp 11, 5 configurazioni ±10 pt) | ✅ Completato — v1.26 · tasso di falso rifiuto 0,00 tutte le configurazioni · BAR monotono 0,75→0,60 · ottimo locale T3 |
| Garanzie di rilevamento — Proposizione + binomiale P(rilevamento) | ✅ Completato — v1.26 · W=40 τ=0,10 · P=1,00 a p₁=0,00 · P=0,95 a p₁=0,05 |
| Confronto funzionale AgentSpec (5 dimensioni) | ✅ Completato — v1.26 · componibile, non competitivo · differenziatore: rilevamento collasso governance |
Exp 12: Controllo ammissione IPI multi-strumento (compliance/adversarial/exp_agent_multitool.go) | ✅ Completato — v1.27 · 4 strumenti · 3 fasi · BAR A=0,30/B=1,00/C=0,30 · persistenza F_anom con stato 24h |
Demo IPI con LLM reale (demos/ollama-agent/agent_demo.py) | ✅ Completato — v1.27 · DeepSeek-R1:8b · 5 turni · IPI bloccato · cooldown attivato |
| Analisi tasso di falso rifiuto (§Analisi tasso di falso rifiuto) | ✅ Completato — v1.27 · 0,00 stato pulito (Exp 11) · 0,00 post-attacco a basso rischio (Exp 12 Fase C) |
| Modello maturità implementazione (Livello 1/2/3) + profili PolicyConfig (Basso/Medio/Alto/Critico) | ✅ Completato — v1.27 · baseline BAR per profilo · guida migrazione RISK-2.0→RISK-3.0 |
Exp 13: Finestra di coordinamento limitata (compliance/adversarial/exp_coordination_window.go) | ✅ Completato — v1.28 · linearità esatta CW=2N · semantica valuta-poi-muta · k₀=2 per agente · limite O(N) |
| Sottosezione Integrazione Agenti LLM spostata in §Meccanismi tecnici | ✅ Completato — v1.28 · dopo §Valutazione deterministica del rischio · componibile con filtri prompt IPI |
Exp 14: Confronto capacità OPA vs ACP (compliance/adversarial/exp_opa_benchmark.go) | ✅ Completato — v1.29 · 3 scenari · motori stateless non possono imporre frequenza/cooldown senza stato esterno · ACP lo impone nativamente · ~852 ns/op ACP vs ~16.000 ns/op OPA |
| §Lavori correlati — Verifica formale e applicazione runtime (ampliato) | ✅ Completato — v1.29 · limite espressivo OPA · allineamento con automi di sicurezza Schneider · riferimento incrociato Exp 14 |
Integrazione serie governance: Articoli 3–4 citati in §15; voce bib fernandez2026comp | ✅ Completato — v1.30 |
| v1.x | Protocollo principale e implementazione di riferimento — attivo |
| v2.0 | ACP decentralizzato (ACP-D) — in progettazione |
| futuro | Verifica ZK, governance decentralizzata |