Level 0 — Zero Effort
Drop in a component with no contract. The library infers intent from the tag name, text content, and ARIA attributes. Agents get something — not perfect, but better than nothing.
Rendered component — no contract specified
INFERRED — not specified by developer
Confidence: medium
<button> — action type inferred from semantic HTML; Text content "Place Order" suggests intent "place-order"
inferContract() output — what the agent sees
{
"inferred": {
"type": "action",
"intent": "place-order",
"safetyLevel": "high",
"reversible": true,
"requiresConfirmation": true,
"destructive": false
},
"confidence": "medium",
"reasoning": "<button> — action type inferred from semantic HTML; Text content \"Place Order\" suggests intent \"place-order\"",
"missing": [
"id",
"description",
"requires",
"requiredPermissions",
"consequence",
"affects",
"contractVersion"
]
}