{"version":"1.0","policy":"no-charge-on-refusal","refusals":[{"code":"policy_refusal","http":409,"charge":"never","reason":"The server refuses to execute the job under its evaluation/fulfillment policy (e.g. job not in a valid state, policy pack unsatisfiable)."},{"code":"insufficient_subject","http":422,"charge":"never","reason":"The submitted subject lacks the data required to produce a meaningful result (e.g. no history, unreachable target, empty evidence)."},{"code":"execution_failed","http":502,"charge":"never","refund":"auto","reason":"Execution failed due to a server-side or upstream error after payment was verified. If a settlement already happened (self-settle rails), an automatic refund is attempted."},{"code":"data_unavailable","http":503,"charge":"never","reason":"The requested live-data feed is stale beyond its freshness window or fully unavailable. The request is refused instead of serving outdated data as fresh."}],"degraded":{"field":"degraded","marker":"data_status","statuses":["fresh","stale","unavailable"],"stale_since":"ISO-8601","charge_policy":"paid requests on unavailable data are refused (charge: never); only free-tier responses may carry degraded markers"},"price_truth":"402 accept.amount is canonical; clients verify vs /api/v1/services","disclosure":"unilateral decisions carry a disclosure field"}