What this family does
Two resources share this family because they are the same idea seen from both ends. Contradictions are conflicts Exo detected and will not resolve on your behalf. Proposals are connections the background daemon believes exist and will not commit without a decision. Accepting a proposal writes the edge. Rejecting one records the rejection, which is how the daemon learns what this subject does not consider related.Routes
Headers that apply here
Neither header is declared as an OpenAPI parameter, so neither appears in the generated schema tables.X-Exo-Subjectselects which subject the call acts for on the subject-aware routes above. Omit it to act as the key owner. See Subjects.Idempotency-Keymakes a retry safe onPOST /v1/proposals/{proposal_id}/accept,POST /v1/proposals/{proposal_id}/reject. See Idempotency.
The shape of a call
List open contradictions.Traps
Every contradiction isopen. The v1 store tracks no resolution state, so filtering status=resolved returns an empty page. Resolve a tension by superseding the side that lost, with POST /v1/graph/nodes/{node_id}/supersede.
Both decision routes replay. Accept and reject honour Idempotency-Key, so a retried decision returns the original outcome rather than fighting the first one.
Proposals are subject-scoped. A proposal id that belongs to another subject is 404 proposal_not_found.
Related
API reference
Base URL, authentication, and the conventions every route shares.
Errors
The problem envelope and the full code catalogue.