Reference solver/executor service for the IRSB protocol.
IRSB Solver is the actor implementation that:
- Consumes intents from the IRSB protocol
- Runs allowed workflows off-chain
- Produces evidence of execution
- Submits receipts for settlement
This solver is designed for reproducible, auditable execution:
- Deterministic IDs: All identifiers (
runId,receiptId) are computed from canonical inputs, not random UUIDs - Canonical Hashing: JSON is sorted by keys, no floats in hashed content, no wall-clock timestamps in artifacts
- Reproducible Evidence: Given the same intent and inputs, the solver produces identical evidence hashes
- Idempotent Retries: Re-running the same intent produces the same receipt (no duplicate work)
This enables:
- Third-party verification of execution correctness
- Watchtower correlation of receipts to intents
- Dispute resolution based on reproducible evidence
Out of Scope:
| Not Here | Where It Belongs |
|---|---|
| On-chain contracts | irsb-protocol |
| Monitoring/alerting | irsb-watchtower |
| LLM/AI agent orchestration | Not part of IRSB (ERC-8004 discovery shapes only) |
| Multi-solver coordination | Future scope |
| Chain-native execution | Solvers execute off-chain, post receipts on-chain |
| Repo | Purpose |
|---|---|
| irsb-protocol | On-chain contracts, schemas, settlement primitives |
| irsb-watchtower | Indexing, monitoring, alerts, dashboards |
| irsb-solver (this repo) | Reference solver/executor service |
Phase 8: Production Hardening - E2E demo, replay determinism, security documentation.
Run the complete solver demo in one command:
pnpm install
pnpm demoThis will:
- Validate configuration
- Run a sample intent fixture
- Generate evidence bundle with artifacts
- Verify evidence integrity
Verify that the solver produces identical results across runs:
pnpm replayThis script:
- Runs the same fixture twice in isolated directories
- Compares run IDs, artifact hashes, and manifest hashes
- Verifies deterministic execution (excluding timestamps)
See Determinism Pledge for design principles.
The solver exposes a standard agent card for service discovery:
# Start the server
pnpm start
# Fetch agent card
curl http://localhost:3000/.well-known/agent-card.jsonThe agent card declares:
- Service identity (
irsb-solver@0.1.0) - Capabilities (
intent-execution,evidence-generation,receipt-submission) - Endpoints (health, metrics, execute=N/A for non-interactive service)
Note: This solver borrows only the discovery/registration shapes from ERC-8004. It is not an LLM chat agent.
See the Threat Model for:
- Asset classification
- Trust boundaries
- Threat analysis and mitigations
- Current security posture
See the Security Hardening Checklist for production deployment requirements.
# Install dependencies
pnpm install
# Run development server
pnpm dev
# Run tests
pnpm test
# Run linter
pnpm lint
# Build for production
pnpm build- Node.js 20+
- pnpm 9+
MIT License - See LICENSE for details.
This license applies to:
- All source code in this repository
- Documentation in
000-docs/ - Configuration files and examples
This license does NOT cover:
- The IRSB protocol specification (separate ERC proposal)
- On-chain contracts (see irsb-protocol)
- Third-party dependencies (see their respective licenses)