Deterministic 7-phase agentic engineering platform — exposes contract tools for AI coding agents via MCP (Model Context Protocol)
RIGForge exposes 6 tools with complete JSON schemas and basic descriptions. Naming follows verb_noun convention (contract_create, contract_validate, phase_status, proof_seal, seal_and_verify). However, descriptions are terse (10-80 chars), lack context on WHEN to use each tool, and omit error recovery guidance. Parameters have types and constraints (e.g., phase 1-7 with minimum/maximum), but descriptions are minimal or absent for complex objects (gates array in seal_and_verify). No output schemas documented. Error handling returns dicts but provides no actionable recovery guidance. Tool composition is reasonable (each does one thing), but seal_and_verify combines sealing + verification + ledger recording, three concerns that could be split. Overall: functional but below production baseline for LLM-optimized tooling.
Create a new DoneContract with GEV triad
List all DoneContract files
Validate a DoneContract against schema
Get phase seal status (all or single phase)
Seal a phase with a proof packet
Seal an agent's claimed work into a signed ProofPacket, verify it, and record the accept/reject verdict to the ledger under the agent's identity
Descriptions are terse (10-80 chars) and lack context. 'Create a new DoneContract with GEV triad' does not explain WHEN to call this vs contract_validate, what a 'triad' is, or what the return value contains. LLMs cannot infer intent from minimal docstrings.
seal_and_verify combines three responsibilities: sealing work into a ProofPacket, verifying it, and recording verdict to ledger under agent identity. This violates single-responsibility principle. Should split into seal_work + verify_proof + record_verdict for agent composability.
Complex parameter 'gates' in seal_and_verify is documented as 'List of gate outcome dicts with name, passed, detail' but lacks a formal schema. LLMs cannot validate structure without explicit type definitions for nested objects.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 66 | 2026-07-28+ | v2 |
No output schemas documented. contract_create returns 'dc.to_yaml_dict()' but LLMs do not know what fields to expect. phase_status returns different structures depending on whether phase is null, undocumented polymorphism.
Error handling returns {'valid': False, 'error': str(e)} with raw exception messages. No recovery guidance. LLMs cannot determine if error is retryable, user-fixable, or fatal.