{"coderifts_version":"1.0","decision":"BLOCK","risk_score":92,"safe_for_agent":false,"breaking_changes":1,"patterns":["TOOL_RESULT_SHAPE_DRIFT"],"requires_migration":true,"evidence_quality":"HIGH","timestamp":"2026-04-05T01:53:21.553Z","scenario":{"name":"Order Status Field Removed","description":"The order_status field was renamed to status. This breaks any agent that reads order_status.","change_type":"RESPONSE_FIELD_REMOVED"},"execution_trace":[{"step":1,"agent":"RefundWorkflow","action":"GET /orders/{id}","status":"executed","result":"ok"},{"step":2,"agent":"CodeRifts","action":"preflight_check","status":"BLOCK","reason":"TOOL_RESULT_SHAPE_DRIFT — order_status field removed","decision":"BLOCK","risk_score":92},{"step":3,"agent":"RefundWorkflow","action":"POST /refunds","status":"aborted","reason":"CodeRifts BLOCK — execution halted before unsafe API call"}],"enforcement":{"agent_aborted":true,"abort_reason":"CodeRifts decision: BLOCK","cascade_stopped":true,"steps_prevented":1,"framework":"generic"},"reproduce":{"curl":"curl -s -X POST https://app.coderifts.com/api/v1/agent-abort-demo -H 'Authorization: Bearer YOUR_KEY' -H 'Content-Type: application/json' -d '{...}'","github":"https://github.com/coderifts/example-minimal-python"},"correlation_id":"690fed2d-7aa9-43c8-9b6c-9ca41c971385"}