sinfactura-types 1.10.487 → 1.10.488

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/dist/platform.d.ts +55 -0
  2. package/package.json +1 -1
@@ -1008,4 +1008,59 @@ export type IntegrationEvent = (IntegrationEventCommon & {
1008
1008
  provider: 'mercadopago';
1009
1009
  type: 'reconcile-sweep';
1010
1010
  });
1011
+ /**
1012
+ * One DEAD order-outbox event — a durable delivery intent the relay gave up on
1013
+ * after every retry — as `GET /platform/outbox?storeId=` lists it. Only events
1014
+ * still inside the replay window (28 days from `createdAt`) are listed. Ids,
1015
+ * consumer names and counters only: the stored row's `customerId` is not on
1016
+ * the wire.
1017
+ */
1018
+ export interface DeadOrderOutboxEvent {
1019
+ /** `order.created#{orderId}` — what `POST /platform/outbox { mode: 'replay' }` takes. */
1020
+ eventId: string;
1021
+ eventType: 'order.created';
1022
+ orderId: string;
1023
+ source: 'storefront';
1024
+ /** The consumers still undelivered — the only ones a replay re-runs. */
1025
+ pendingConsumers: string[];
1026
+ /** Relay attempts spent before the row died. */
1027
+ attempts: number;
1028
+ /** Unix ms the row was dead-lettered. */
1029
+ deadAt: number;
1030
+ /** The last failure's error NAME, never its message. */
1031
+ lastErrorName?: string;
1032
+ /** Unix ms the order (and its intent) committed. */
1033
+ createdAt: number;
1034
+ }
1035
+ /** `GET /platform/outbox?storeId=&limit=&cursor=` — `data`. */
1036
+ export interface DeadOrderOutboxListResponse {
1037
+ storeId: string;
1038
+ events: DeadOrderOutboxEvent[];
1039
+ /**
1040
+ * Opaque; present means "keep paging". It can be present on the page that
1041
+ * already reached the store's last row, and a page can be empty while it is
1042
+ * present — page until it is absent, never on `events.length`.
1043
+ */
1044
+ nextCursor?: string;
1045
+ }
1046
+ /** `POST /platform/outbox { mode: 'replay' }`. */
1047
+ export interface OrderOutboxReplayOpBody {
1048
+ mode: 'replay';
1049
+ storeId: string;
1050
+ /** `order.created#{orderId}`, as the list returns it. */
1051
+ eventId: string;
1052
+ /** Must equal `storeId`. Required — absent or wrong is `400 CONFIRMATION_MISMATCH`. */
1053
+ confirm: string;
1054
+ /** REQUIRED here (10-500 characters, the {@link PlatformOperatorReason} rules). Internal — recorded only on the platform audit row. */
1055
+ reason: string;
1056
+ }
1057
+ /** `POST /platform/outbox { mode: 'replay' }` — `data`. */
1058
+ export interface OrderOutboxReplayResponse {
1059
+ storeId: string;
1060
+ eventId: string;
1061
+ /** The consumers the next relay tick will dispatch. */
1062
+ pendingConsumers: string[];
1063
+ /** Unix ms — the row is due from this instant, so the next tick claims it. */
1064
+ pendingPushReadyAt: number;
1065
+ }
1011
1066
  export {};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "sinfactura-types",
3
- "version": "1.10.487",
3
+ "version": "1.10.488",
4
4
  "description": "Shared wire and entity contracts for the SINFACTURA platform.",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",