ARC — Autonomous Reliability & Chaos Harness for AI Agents
ARC (Agent Reliability & Conformance Harness) is a deterministic simulation and chaos-engineering test harness for production AI Agents that perform real-world side effects (calling APIs, executing DB transactions, issuing payments, modifying cloud infrastructure).
🚀 Key Capabilities
- Zero-Prod Simulation & Fork-Replay: Replay production agent execution traces with deterministic virtual clocks and sandboxed tool models without touching production databases.
- Chaos Fault Injection: Inject systematic network timeouts, rate limits, schema mismatches, and double-action faults into agent decision loops.
- Automated Invariant Mining: Extract safety, authorization, and financial invariants from SQL DDL schemas, OpenAPI specs, and incident postmortems with human-in-the-loop approval.
- Delta-Debugging (
ddmin): Automatically minimize long, noisy agent failure traces into the smallest reproducible YAML bug reproducer. - CI/CD Quality Gate: Enforce statistical reliability verdicts in GitHub Actions or GitLab CI with standard POSIX exit codes (
arc gate).
📦 Installation
pip install arc-reliability
For development and testing:
pip install "arc-reliability[dev]"
⚡ Quick Start
1. Instrument Your AI Agent with ARC SDK
from arc.sdk import trace_agent, trace_tool
@trace_tool(name="payment_gateway")
def process_refund(order_id: str, amount: float) -> dict:
# Real API call or simulated response
return {"status": "ok", "refund_id": "ref_123"}
@trace_agent(name="refund_agent")
def handle_customer_request(order_id: str) -> dict:
return process_refund(order_id, 45.99)
if __name__ == "__main__":
result = handle_customer_request("8842")
print("Agent Execution Completed:", result)
2. Run ARC CLI Commands
ARC provides a unified command-line tool arc for debugging, verification, and invariant catalog management:
# Evaluate trace compliance in CI pipeline
arc gate --trace trace.json --budget 100 --alpha 0.05
# Replay and verify minimal bug reproducer in local sandbox
arc repro arc-repro-8842.yaml
# Start local replay debugger proxy
arc debug --port 8080
# Review proposed invariant candidates
arc catalog review --id INV-PAY-002 --accept
# Track and tag escaped incidents
arc incidents tag INC-1042 --candidate-id INV-PAY-002
🏗️ Architecture
ARC
├── src/arc/
│ ├── sdk/ # Interceptor, Virtual Clock, Tier-1 PII Redactor
│ ├── cli/ # Unified CLI application (`arc`)
│ ├── execution/ # Fork Engine, Chaos Injector, Sandbox Runner
│ └── control_plane/ # Approval Gateway, Trace Warehouse, Invariant Miner
└── schemas/ # JSON Schema & SQL DDL definitions
🧪 Running Tests
# Run the complete test suite (Unit, Integration, E2E)
pytest tests/
# Run static quality & security verification
python3 pipeline/scripts/verify.py
📄 License
This project is licensed under the Apache License 2.0.
Metadata
Release files for arc-reliability 0.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| arc_reliability-0.1.1.tar.gz | 86.9 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| arc_reliability-0.1.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 196.5 kB
Release files / arc_reliability-0.1.1.tar.gz
| Download URL | arc_reliability-0.1.1.tar.gz |
|---|---|
| Size | 86.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
b5e15836e7acc62c5e0e2bcc718d63d1206da05beac83d87966537488c0241d0
|
|
BLAKE2b-256 checksum How to use checksums |
d241f3b80550cc916fd3ca101a11d80c96c7796432b7e91107c0668f56d7fcfd
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.2
|
Release files / arc_reliability-0.1.1-py3-none-any.whl
| Download URL | arc_reliability-0.1.1-py3-none-any.whl |
|---|---|
| Size | 109.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
e27b5cfa64e24f045abdc39b93849508c2496d00ed012c3f48cf37855d353a38
|
|
BLAKE2b-256 checksum How to use checksums |
14d9cab90564f5f5c7a9add03ff919f813b68ca74a636ae21356f8137bf2d303
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.2
|
Security for arc-reliability 0.1.1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.