@aeolus-fleet/core 0.24.0 → 0.25.0
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.
- package/README.md +5 -5
- package/dist/adapters/prisma/generated/browser.d.ts +12 -3
- package/dist/adapters/prisma/generated/client.d.ts +12 -3
- package/dist/adapters/prisma/generated/commonInputTypes.d.ts +60 -0
- package/dist/adapters/prisma/generated/enums.d.ts +15 -1
- package/dist/adapters/prisma/generated/enums.js +13 -1
- package/dist/adapters/prisma/generated/enums.js.map +1 -1
- package/dist/adapters/prisma/generated/internal/class.d.ts +11 -0
- package/dist/adapters/prisma/generated/internal/class.js +4 -4
- package/dist/adapters/prisma/generated/internal/class.js.map +1 -1
- package/dist/adapters/prisma/generated/internal/prismaNamespace.d.ts +109 -1
- package/dist/adapters/prisma/generated/internal/prismaNamespace.js +16 -0
- package/dist/adapters/prisma/generated/internal/prismaNamespace.js.map +1 -1
- package/dist/adapters/prisma/generated/internal/prismaNamespaceBrowser.d.ts +17 -0
- package/dist/adapters/prisma/generated/internal/prismaNamespaceBrowser.js +16 -0
- package/dist/adapters/prisma/generated/internal/prismaNamespaceBrowser.js.map +1 -1
- package/dist/adapters/prisma/generated/models/Delivery.d.ts +304 -4
- package/dist/adapters/prisma/generated/models/Fleet.d.ts +267 -0
- package/dist/adapters/prisma/generated/models/Lease.d.ts +332 -1
- package/dist/adapters/prisma/generated/models/OverdueDelivery.d.ts +1687 -0
- package/dist/adapters/prisma/generated/models/OverdueDelivery.js +2 -0
- package/dist/adapters/prisma/generated/models/OverdueDelivery.js.map +1 -0
- package/dist/adapters/prisma/generated/models/Ship.d.ts +271 -0
- package/dist/adapters/prisma/generated/models.d.ts +1 -0
- package/dist/adapters/prisma/history.js +231 -46
- package/dist/adapters/prisma/history.js.map +1 -1
- package/dist/adapters/prisma/installation.js +30 -1
- package/dist/adapters/prisma/installation.js.map +1 -1
- package/dist/adapters/prisma/messaging.js +11 -7
- package/dist/adapters/prisma/messaging.js.map +1 -1
- package/dist/adapters/prisma/overdue.d.ts +4 -0
- package/dist/adapters/prisma/overdue.js +63 -0
- package/dist/adapters/prisma/overdue.js.map +1 -0
- package/dist/adapters/prisma/registry.js +32 -7
- package/dist/adapters/prisma/registry.js.map +1 -1
- package/dist/adapters/prisma/rows.d.ts +12 -1
- package/dist/adapters/prisma/rows.js +46 -1
- package/dist/adapters/prisma/rows.js.map +1 -1
- package/dist/adapters/prisma/unit-of-work.d.ts +2 -1
- package/dist/adapters/prisma/unit-of-work.js +2 -0
- package/dist/adapters/prisma/unit-of-work.js.map +1 -1
- package/dist/adapters/trpc/context.d.ts +16 -0
- package/dist/adapters/trpc/fleet.d.ts +232 -14
- package/dist/adapters/trpc/fleet.js +49 -6
- package/dist/adapters/trpc/fleet.js.map +1 -1
- package/dist/adapters/trpc/installation.d.ts +14 -0
- package/dist/adapters/trpc/installation.js +7 -1
- package/dist/adapters/trpc/installation.js.map +1 -1
- package/dist/adapters/trpc/router.d.ts +301 -9
- package/dist/adapters/trpc/ship-protocol.js +2 -2
- package/dist/adapters/trpc/ship-protocol.js.map +1 -1
- package/dist/adapters/trpc/ship.d.ts +87 -0
- package/dist/adapters/trpc/ship.js +96 -1
- package/dist/adapters/trpc/ship.js.map +1 -1
- package/dist/adapters/trpc/starting-prompt-text.d.ts +1 -1
- package/dist/adapters/trpc/starting-prompt-text.js +22 -25
- package/dist/adapters/trpc/starting-prompt-text.js.map +1 -1
- package/dist/adapters/trpc/trpc.js +3 -0
- package/dist/adapters/trpc/trpc.js.map +1 -1
- package/dist/app.d.ts +4 -2
- package/dist/app.js +21 -9
- package/dist/app.js.map +1 -1
- package/dist/domain/messaging/delivery.d.ts +88 -28
- package/dist/domain/messaging/delivery.js +213 -39
- package/dist/domain/messaging/delivery.js.map +1 -1
- package/dist/domain/messaging/dismiss-delivery.d.ts +1 -1
- package/dist/domain/messaging/dismiss-delivery.js +1 -1
- package/dist/domain/messaging/hand-over-delivery.d.ts +38 -0
- package/dist/domain/messaging/hand-over-delivery.js +46 -0
- package/dist/domain/messaging/hand-over-delivery.js.map +1 -0
- package/dist/domain/messaging/message.d.ts +12 -1
- package/dist/domain/messaging/message.js +2 -0
- package/dist/domain/messaging/message.js.map +1 -1
- package/dist/domain/messaging/overdue.d.ts +60 -0
- package/dist/domain/messaging/overdue.js +52 -0
- package/dist/domain/messaging/overdue.js.map +1 -0
- package/dist/domain/messaging/ports.d.ts +20 -0
- package/dist/domain/messaging/public.d.ts +1 -0
- package/dist/domain/messaging/public.js +2 -0
- package/dist/domain/messaging/public.js.map +1 -0
- package/dist/domain/messaging/push-receive-deliveries.d.ts +48 -0
- package/dist/domain/messaging/push-receive-deliveries.js +70 -0
- package/dist/domain/messaging/push-receive-deliveries.js.map +1 -0
- package/dist/domain/messaging/receive-deliveries.d.ts +39 -6
- package/dist/domain/messaging/receive-deliveries.js +80 -50
- package/dist/domain/messaging/receive-deliveries.js.map +1 -1
- package/dist/domain/messaging/report-handled.d.ts +22 -0
- package/dist/domain/messaging/report-handled.js +13 -0
- package/dist/domain/messaging/report-handled.js.map +1 -0
- package/dist/domain/messaging/report-not-handled.d.ts +22 -0
- package/dist/domain/messaging/report-not-handled.js +13 -0
- package/dist/domain/messaging/report-not-handled.js.map +1 -0
- package/dist/domain/messaging/report-turn-end.d.ts +29 -0
- package/dist/domain/messaging/report-turn-end.js +36 -0
- package/dist/domain/messaging/report-turn-end.js.map +1 -0
- package/dist/domain/messaging/resend-delivery.d.ts +1 -1
- package/dist/domain/messaging/resend-delivery.js +1 -1
- package/dist/domain/messaging/tell-overdue-deliveries.d.ts +25 -0
- package/dist/domain/messaging/tell-overdue-deliveries.js +30 -0
- package/dist/domain/messaging/tell-overdue-deliveries.js.map +1 -0
- package/dist/domain/registry/installation-fleet.d.ts +3 -2
- package/dist/domain/registry/installation-fleet.js.map +1 -1
- package/dist/domain/registry/leases.d.ts +26 -0
- package/dist/domain/registry/leases.js +26 -1
- package/dist/domain/registry/leases.js.map +1 -1
- package/dist/domain/registry/ping-status.d.ts +2 -2
- package/dist/domain/registry/ping-status.js +7 -4
- package/dist/domain/registry/ping-status.js.map +1 -1
- package/dist/domain/registry/ports.d.ts +40 -0
- package/dist/domain/registry/public.d.ts +2 -2
- package/dist/domain/registry/public.js +1 -1
- package/dist/domain/registry/public.js.map +1 -1
- package/dist/domain/registry/report-turn.d.ts +28 -0
- package/dist/domain/registry/report-turn.js +28 -0
- package/dist/domain/registry/report-turn.js.map +1 -0
- package/dist/domain/registry/turn.d.ts +25 -0
- package/dist/domain/registry/turn.js +30 -0
- package/dist/domain/registry/turn.js.map +1 -0
- package/dist/domain/shared/delivery-way.d.ts +83 -0
- package/dist/domain/shared/delivery-way.js +89 -0
- package/dist/domain/shared/delivery-way.js.map +1 -0
- package/dist/domain/shared/errors.d.ts +1 -1
- package/dist/domain/shared/errors.js.map +1 -1
- package/dist/domain/shared/history.d.ts +116 -19
- package/dist/domain/shared/history.js +1 -1
- package/dist/domain/shared/history.js.map +1 -1
- package/dist/domain/shared/read-message.d.ts +7 -3
- package/dist/domain/shared/read-message.js +7 -4
- package/dist/domain/shared/read-message.js.map +1 -1
- package/dist/domain/shared/read-needs-attention.d.ts +5 -5
- package/dist/domain/shared/read-needs-attention.js +4 -4
- package/dist/domain/shared/read-needs-attention.js.map +1 -1
- package/dist/domain/shared/read-no-ship-can-take.d.ts +13 -0
- package/dist/domain/shared/read-no-ship-can-take.js +12 -0
- package/dist/domain/shared/read-no-ship-can-take.js.map +1 -0
- package/dist/domain/shared/read-overdue.d.ts +13 -0
- package/dist/domain/shared/read-overdue.js +12 -0
- package/dist/domain/shared/read-overdue.js.map +1 -0
- package/dist/domain/shared/read-ship-messages.d.ts +4 -1
- package/dist/domain/shared/read-ship-messages.js +6 -1
- package/dist/domain/shared/read-ship-messages.js.map +1 -1
- package/dist/domain/shared/read-ship-way.d.ts +41 -0
- package/dist/domain/shared/read-ship-way.js +39 -0
- package/dist/domain/shared/read-ship-way.js.map +1 -0
- package/dist/repeating-pass.d.ts +15 -0
- package/dist/repeating-pass.js +31 -0
- package/dist/repeating-pass.js.map +1 -0
- package/dist/wiring.d.ts +19 -0
- package/dist/wiring.js +25 -0
- package/dist/wiring.js.map +1 -1
- package/package.json +2 -2
- package/src/adapters/prisma/migrations/20261012190000_delivery_handed/migration.sql +11 -0
- package/src/adapters/prisma/migrations/20261012210000_push_receive/migration.sql +7 -0
- package/src/adapters/prisma/migrations/20261013090000_handled/migration.sql +6 -0
- package/src/adapters/prisma/migrations/20261013100000_turn/migration.sql +6 -0
- package/src/adapters/prisma/migrations/20261013120000_overdue/migration.sql +28 -0
- package/src/adapters/prisma/migrations/20261013140000_delivery_state_index/migration.sql +4 -0
- package/src/adapters/prisma/schema.prisma +66 -4
package/README.md
CHANGED
|
@@ -64,7 +64,7 @@ A session crews an agent ship with `ship.register`: the ship id and secret from
|
|
|
64
64
|
|
|
65
65
|
`ship.send` sends a message from the calling ship (a crew token, or the console session as `argo`); it needs the `messages:send` scope. It takes a selector (`{ "kind": "ship", "shipId": "shp_..." }`, `{ "kind": "ship", "name": "scout" }` or `{ "kind": "type", "type": "reviewer" }`), a payload (text of at most 64 KB in UTF-8, never parsed), optionally its content type (any well-formed media type, such as `text/plain` or `application/json; charset=utf-8`, passed on untouched; `text/plain` when left out), the sender's own idempotency key (1 to 256 characters) and, for a reply, `inReplyTo` (a message id of the fleet). A name is resolved to the ship's id when the message is sent; a retired or unknown ship, or a type without an active ship, is refused. It answers `{ "messageId": "msg_..." }` only once the message and its delivery are stored. A repeat of the key with the same request (selector as sent, payload, content type, `inReplyTo`; no content type is the same as `text/plain`) answers with the original id; the same key with another request is refused (`CONFLICT`). When the send commits, Postgres `NOTIFY` announces the delivery on the channel `aeolus_delivery_pending`.
|
|
66
66
|
|
|
67
|
-
`ship.receive` and `ship.ack` take the crew token only (the console session is refused) and need the `messages:receive` scope. `ship.receive` takes `{ "max": 1 to 10 }`, one when left out, and answers `{ "deliveries": [...] }`: the crew's own unacknowledged deliveries in flight first, then the oldest pending ones for its ship or its type. Each comes with its message and its sender (`deliveryId`, `messageId`, `senderShipId`, `senderName`, `senderType`, `recipient`, `payload`, `contentType`, `inReplyTo`, `sentAt`, `attempts`; the sender's name and type as they are at the receive, so a renamed sender goes by its new name) and
|
|
67
|
+
`ship.receive` and `ship.ack` take the crew token only (the console session is refused) and need the `messages:receive` scope. `ship.receive` takes `{ "max": 1 to 10 }`, one when left out, and answers `{ "deliveries": [...] }`: the crew's own unacknowledged deliveries in flight first, then the oldest pending ones for its ship or its type. Each comes with its message and its sender (`deliveryId`, `messageId`, `senderShipId`, `senderName`, `senderType`, `recipient`, `payload`, `contentType`, `inReplyTo`, `sentAt`, `attempts`; the sender's name and type as they are at the receive, so a renamed sender goes by its new name) and is handed at once: in flight with the crew until acknowledged or the lease ends. The crew's next receive hands it again, counted as another attempt, so a lost reply loses nothing. The fifth attempt of a delivery never acknowledged is refused: it becomes undeliverable instead and is handed to no one. With nothing there, a receive waits about 25 seconds and answers with no deliveries; a delivery for its ship or type wakes it at once. **Unreleased, next version:** `ship.pushReceive`, `ship.handed`, `ship.handled` and `ship.turn` are not available in npm 0.24.0. `ship.pushReceive` (decision 0040), for a pushed ship's trierarch or plugin watcher, takes the same input as `ship.receive` and answers the same deliveries, each with `state` (`received` or `handed`) and `handOverNumber`: a pending one becomes received, in flight with the crew, with no attempt counted; the crew's own received and handed ones come first again, unchanged. From the lease's first push receive until it ends, `ship.receive` answers no deliveries. `ship.handed` takes `{ "deliveryId": "dlv_...", "handOverNumber": n }` and answers `{ "state": "handed" | "acknowledged" | "undeliverable" }`: a number higher than the last counts one attempt, the same or a lower one changes nothing, and the fifth attempt is undeliverable; with `"isOnceMore": true` it hands an acknowledged delivery once more after its turn died, counting no attempt, only once. `ship.handled` and `ship.notHandled` take `{ "deliveryId": "dlv_..." }` and answer `{}`: the turn that took an acknowledged delivery ended by itself, or the turn it was handed once more to died too; again is OK, and a delivery not acknowledged, or not handed once more for `notHandled`, is refused (`CONFLICT`). `ship.ack` takes `{ "deliveryId": "dlv_..." }` and answers `{}`: only the ship holding the delivery in flight, received or handed, acknowledges it, and acknowledging it again is OK. `ship.pong` takes the crew token and the same scope, takes `{ "deliveryId": "dlv_..." }` of a ping the ship holds in flight and answers `{}`: it acknowledges the ping, with `answer: pong` in `DeliveryAcknowledged`, and marks the lease last seen, in one transaction; again is OK and changes nothing, and a delivery that is not a ping is refused (`CONFLICT`). `ship.report` takes the crew token and no scope: `{ "state": "working" | "blocked" | "idle", "note"?: "..." }` (one line, at most 200 characters, trimmed), answers `{}`. The report is kept with the crew's lease, so the ship's next crew starts with none, and `fleet.list` and `fleet.ship` show it (`report: { state, note, reportedAt }` or null); `ShipReported` is written only when the state or the note changes, so reporting the same again is a check-in. `ship.turn` takes the crew token and no scope: `{ "turn": "idle" | "busy", "at": "<ISO 8601>" }`, answers `{}`; the lease keeps the turn at that time with `TurnReported`, and the same turn again or a report older than the one held changes nothing. `ship.inbox` takes the crew token and the same scope, takes `{ "waitSeconds": 0 to 25 }`, none when left out, and answers `{ "waiting": n }`: how many deliveries the crew's next receive would hand it, its own in flight included. It claims nothing. While none waits it waits up to `waitSeconds`, woken like a receive. A mutation only so REST takes its body; it changes nothing.
|
|
68
68
|
|
|
69
69
|
A lease ends cleanly in two ways. The operator releases a crewed ship with `fleet.release` (`{ "shipId": "shp_..." }`, scope `fleet:manage`); `argo` is never released, and a ship awaiting crew gets a new starting prompt instead (`CONFLICT`). A crew ends its own lease with `ship.deregister`, which takes the crew token only and no scope. Both work in one transaction: the secret is invalidated, the lease and its crew token end, and the deliveries the lease held in flight return to pending, to the ship's inbox or its type's queue, their attempts kept, each announced on `aeolus_delivery_pending` as a send is, so a waiting receive of another ship of the type takes a returned type delivery at once. Both answer `{}`. The old crew token then fails on every call, refused as `LEASE_ENDED` with `This ship was released; this session no longer crews it.` (the `UNAUTHORIZED` code at `/trpc`, which knows only tRPC's codes), and the old secret fails on `register`; the next crew needs a new starting prompt. A receive of that crew still waiting hands out nothing: it answers empty at the end of its wait, or `LEASE_ENDED` if a delivery wakes it first.
|
|
70
70
|
|
|
@@ -74,14 +74,14 @@ A lease ends cleanly in two ways. The operator releases a crewed ship with `flee
|
|
|
74
74
|
|
|
75
75
|
The operator retires a ship for good with `fleet.retire` (`{ "shipId": "shp_..." }`, scope `fleet:manage`), crewed or not, never `argo` (`FORBIDDEN`), never twice (`CONFLICT`). In one transaction it locks the ship, invalidates its secret, ends a crewed ship's lease as a release does, abandons the deliveries pending to the ship itself (one `DeliveryAbandoned` each, with `ShipRetired`) and retires it: it is never claimed or addressed again and its name is free. Deliveries to its type stay for the other ships of the type, and an undeliverable one stays for the operator. A send racing it either commits first and is abandoned, or comes after and is refused. It answers `{ "abandonedDeliveries": n }`. `fleet.recrew` (`{ "shipId": "shp_..." }`, `fleet:manage`) gives a crewed ship whose session is gone a new crew: a release and a new starting prompt in one transaction, answering the prompt and crew line once, as `fleet.getStartingPrompt` does. `fleet.ship` counts `inFlightDeliveries` (what a release returns) and `openDeliveries` (what a retire abandons).
|
|
76
76
|
|
|
77
|
-
Needs attention: `fleet.needsAttention` (`fleet:read`) lists every undeliverable delivery of the fleet, oldest first by when it became undeliverable, each with its
|
|
77
|
+
Needs attention: `fleet.needsAttention` (`fleet:read`) lists every undeliverable delivery of the fleet, oldest first by when it became undeliverable, each with its attempts, `since` and its whole message. `fleet.dismiss` (`{ "deliveryId": "dlv_..." }`, `fleet:manage`) sets one to dismissed with `DeliveryDismissed`, and answers `{}`; again is OK. `fleet.resend` (`{ "deliveryId": "dlv_..." }`, `fleet:manage`) sends it again: a new message from the original sender, to the same ship or type, with the same payload, content type and `inReplyTo`, naming the original (`resend_of`), and dismisses the original, in one transaction. It answers `{ "messageId": "msg_..." }`; a second resend of the delivery answers the same. Any delivery not undeliverable is refused (`CONFLICT`); a selector that no longer resolves is refused as a send would be, and the original stays undeliverable. `fleet.overdue` (`fleet:read`) lists the deliveries argo was told are overdue by the 10 and 60 minute clocks (decision 0040), oldest told first: each with its ship, `state`, `clock` (`notConfirmed`, `idle`, `busy`), `minutes`, `toldAt` and its whole message, while it is still in that state on an open lease. Core passes the clocks every 30 seconds while it serves, writing `DeliveryOverdue` once per lease and delivery.
|
|
78
78
|
|
|
79
|
-
The operator inbox: `fleet.inbox` (`{ "filter": "open" | "done" | "all" }`, `fleet:read`) lists the messages addressed to the caller itself (argo's, for the console; argo's too for a viewer session, decision 0022), newest first, each with its delivery's state, `readAt`, `doneAt`, `repliedWith` and its whole message. Only argo's console session calls the rest; any other ship is refused (`FORBIDDEN`), and a delivery not in argo's inbox is `NOT_FOUND`. `fleet.markRead` (`{ "deliveryId", "isRead" }`, `messages:receive`) marks it read (keeping the first read) or unread; read is not done, and no event is written. `fleet.markDone` (`{ "deliveryId" }`, `messages:receive`)
|
|
79
|
+
The operator inbox: `fleet.inbox` (`{ "filter": "open" | "done" | "all" }`, `fleet:read`) lists the messages addressed to the caller itself (argo's, for the console; argo's too for a viewer session, decision 0022), newest first, each with its delivery's state, `readAt`, `doneAt`, `repliedWith` and its whole message. Only argo's console session calls the rest; any other ship is refused (`FORBIDDEN`), and a delivery not in argo's inbox is `NOT_FOUND`. `fleet.markRead` (`{ "deliveryId", "isRead" }`, `messages:receive`) marks it read (keeping the first read) or unread; read is not done, and no event is written. `fleet.markDone` (`{ "deliveryId" }`, `messages:receive`) hands and acknowledges it at once under the console session's lease; again is OK. `fleet.reply` (`{ "deliveryId", "payload", "idempotencyKey" }`, `messages:send` and `messages:receive`) sends the payload as `text/plain` from argo to the message's sender with `inReplyTo`, and marks the message done in one transaction; it answers `{ "messageId" }`, and a repeat of the key answers the same reply.
|
|
80
80
|
|
|
81
81
|
A ship reaches the same calls without installing anything, as REST under `/api/v1` or as MCP tools at `/mcp`. Both map onto the ship procedures above and hold no logic of their own; neither reads the console session cookie, so a call without a valid crew token is told to use the crew token alone, and failed `register` attempts count against one limit per client address whichever door they come through. A failure in either door, inside a procedure or not, answers only `Internal error` and the request's id. The MCP server sends the ship protocol (`adapters/trpc/ship-protocol.ts`) as its instructions when a client connects, and the OpenAPI spec's description opens with the same text: register once, at the start, and keep the crew token; then receive, ack each delivery and act only if the ack succeeded, and answer by `senderName` with `inReplyTo`; keep receiving while waiting for an answer; deregister only when the session ends for good; end the turn when the work is done and no answer is expected; and once a call answers `LEASE_ENDED`, stop calling the fleet. Each call's description states only that call's own rules, such as `inReplyTo` taking the message id and a new idempotency key for every message; no rule is stated in both.
|
|
82
82
|
|
|
83
|
-
- **REST**: `POST /api/v1/ship/register`, `GET /api/v1/ship/whoami`, and `POST /api/v1/ship/send`, `/receive`, `/ack`, `/inbox` and `/deregister`, each with a JSON body where it takes input and the crew token as `Authorization: Bearer`. A refusal answers with its code's HTTP status and `{ "code": "CONFLICT", "message": "..." }`. The OpenAPI 3.1 spec is at `/api/v1/openapi.json`, and as a readable page at `/api/v1/docs`.
|
|
84
|
-
- **MCP**: a remote MCP server over streamable HTTP, one tool per call. The connection carries no ship, so many conversations can share it (ADR 0015): every tool but `register` takes the crew token as its `crewToken` argument. A refusal is a tool error reading `CODE: message`. To add it to Claude Code, for every session on the machine: `claude mcp add --transport http --scope user aeolus <PUBLIC_URL>/mcp`.
|
|
83
|
+
- **REST**: `POST /api/v1/ship/register`, `GET /api/v1/ship/whoami`, and `POST /api/v1/ship/send`, `/receive`, `/pushReceive`, `/handed`, `/handled`, `/notHandled`, `/ack`, `/turn`, `/inbox` and `/deregister`, each with a JSON body where it takes input and the crew token as `Authorization: Bearer`. A refusal answers with its code's HTTP status and `{ "code": "CONFLICT", "message": "..." }`. The OpenAPI 3.1 spec is at `/api/v1/openapi.json`, and as a readable page at `/api/v1/docs`.
|
|
84
|
+
- **MCP**: a remote MCP server over streamable HTTP, one tool per call. The connection carries no ship, so many conversations can share it (ADR 0015): every tool but `register` takes the crew token as its `crewToken` argument. A refusal is a tool error reading `CODE: message`. To add it to Claude Code, for every session on the machine: `claude mcp add --transport http --scope user aeolus <PUBLIC_URL>/mcp`. A chat app (Claude chat, ChatGPT) connects `<PUBLIC_URL>/mcp` as a remote MCP server or connector, without auth.
|
|
85
85
|
|
|
86
86
|
The server listens on `aeolus_delivery_pending` over a connection of its own (named `aeolus-delivery-listener` in Postgres), which needs a direct database connection, not a transaction pooler. After a lost connection it listens again, with a delay that doubles up to 30 seconds, and every waiting receive then looks again, since notices sent meanwhile are gone.
|
|
87
87
|
|
|
@@ -99,15 +99,24 @@ export type Message = Prisma.MessageModel;
|
|
|
99
99
|
/**
|
|
100
100
|
* Model Delivery
|
|
101
101
|
* One message to one resolved recipient: a ship or a type. Ids start with dlv_.
|
|
102
|
-
* A receive
|
|
103
|
-
*
|
|
104
|
-
*
|
|
102
|
+
* A receive hands it to the ship and the lease of the crew receiving, or a push
|
|
103
|
+
* receive takes it for them: set while it is received or handed, kept once
|
|
104
|
+
* acknowledged, none while it is pending. Attempts count the hand-overs; the fifth
|
|
105
|
+
* makes it undeliverable. The hand-over number is the last one the crew reported
|
|
106
|
+
* with handed (decision 0040), none while pending.
|
|
105
107
|
* The read date is set when the operator opens a message to argo.
|
|
106
108
|
* For a type under network rules, the ships of the type its sender may reach,
|
|
107
109
|
* fixed at send time: only they claim it (decision 0034). Empty: any ship of
|
|
108
110
|
* the type, as a send no ship of the type may take is refused.
|
|
109
111
|
*/
|
|
110
112
|
export type Delivery = Prisma.DeliveryModel;
|
|
113
|
+
/**
|
|
114
|
+
* Model OverdueDelivery
|
|
115
|
+
* A delivery argo was told is overdue on a pushed lease: its clock ran out
|
|
116
|
+
* while it waited in the state kept here. Once per lease and delivery, so a
|
|
117
|
+
* pass after a restart, or a second pass at once, tells nothing again.
|
|
118
|
+
*/
|
|
119
|
+
export type OverdueDelivery = Prisma.OverdueDeliveryModel;
|
|
111
120
|
/**
|
|
112
121
|
* Model Event
|
|
113
122
|
* Append-only log of every state change: never updated or deleted. Ids start with evt_.
|
|
@@ -118,15 +118,24 @@ export type Message = Prisma.MessageModel;
|
|
|
118
118
|
/**
|
|
119
119
|
* Model Delivery
|
|
120
120
|
* One message to one resolved recipient: a ship or a type. Ids start with dlv_.
|
|
121
|
-
* A receive
|
|
122
|
-
*
|
|
123
|
-
*
|
|
121
|
+
* A receive hands it to the ship and the lease of the crew receiving, or a push
|
|
122
|
+
* receive takes it for them: set while it is received or handed, kept once
|
|
123
|
+
* acknowledged, none while it is pending. Attempts count the hand-overs; the fifth
|
|
124
|
+
* makes it undeliverable. The hand-over number is the last one the crew reported
|
|
125
|
+
* with handed (decision 0040), none while pending.
|
|
124
126
|
* The read date is set when the operator opens a message to argo.
|
|
125
127
|
* For a type under network rules, the ships of the type its sender may reach,
|
|
126
128
|
* fixed at send time: only they claim it (decision 0034). Empty: any ship of
|
|
127
129
|
* the type, as a send no ship of the type may take is refused.
|
|
128
130
|
*/
|
|
129
131
|
export type Delivery = Prisma.DeliveryModel;
|
|
132
|
+
/**
|
|
133
|
+
* Model OverdueDelivery
|
|
134
|
+
* A delivery argo was told is overdue on a pushed lease: its clock ran out
|
|
135
|
+
* while it waited in the state kept here. Once per lease and delivery, so a
|
|
136
|
+
* pass after a restart, or a second pass at once, tells nothing again.
|
|
137
|
+
*/
|
|
138
|
+
export type OverdueDelivery = Prisma.OverdueDeliveryModel;
|
|
130
139
|
/**
|
|
131
140
|
* Model Event
|
|
132
141
|
* Append-only log of every state change: never updated or deleted. Ids start with evt_.
|
|
@@ -228,6 +228,12 @@ export type IntFilter<$PrismaModel = never> = {
|
|
|
228
228
|
gte?: number | Prisma.IntFieldRefInput<$PrismaModel>;
|
|
229
229
|
not?: Prisma.NestedIntFilter<$PrismaModel> | number;
|
|
230
230
|
};
|
|
231
|
+
export type EnumTurnStateNullableFilter<$PrismaModel = never> = {
|
|
232
|
+
equals?: $Enums.TurnState | Prisma.EnumTurnStateFieldRefInput<$PrismaModel> | null;
|
|
233
|
+
in?: $Enums.TurnState[] | Prisma.ListEnumTurnStateFieldRefInput<$PrismaModel> | null;
|
|
234
|
+
notIn?: $Enums.TurnState[] | Prisma.ListEnumTurnStateFieldRefInput<$PrismaModel> | null;
|
|
235
|
+
not?: Prisma.NestedEnumTurnStateNullableFilter<$PrismaModel> | $Enums.TurnState | null;
|
|
236
|
+
};
|
|
231
237
|
export type EnumLocationKindWithAggregatesFilter<$PrismaModel = never> = {
|
|
232
238
|
equals?: $Enums.LocationKind | Prisma.EnumLocationKindFieldRefInput<$PrismaModel>;
|
|
233
239
|
in?: $Enums.LocationKind[] | Prisma.ListEnumLocationKindFieldRefInput<$PrismaModel>;
|
|
@@ -281,6 +287,15 @@ export type IntWithAggregatesFilter<$PrismaModel = never> = {
|
|
|
281
287
|
_min?: Prisma.NestedIntFilter<$PrismaModel>;
|
|
282
288
|
_max?: Prisma.NestedIntFilter<$PrismaModel>;
|
|
283
289
|
};
|
|
290
|
+
export type EnumTurnStateNullableWithAggregatesFilter<$PrismaModel = never> = {
|
|
291
|
+
equals?: $Enums.TurnState | Prisma.EnumTurnStateFieldRefInput<$PrismaModel> | null;
|
|
292
|
+
in?: $Enums.TurnState[] | Prisma.ListEnumTurnStateFieldRefInput<$PrismaModel> | null;
|
|
293
|
+
notIn?: $Enums.TurnState[] | Prisma.ListEnumTurnStateFieldRefInput<$PrismaModel> | null;
|
|
294
|
+
not?: Prisma.NestedEnumTurnStateNullableWithAggregatesFilter<$PrismaModel> | $Enums.TurnState | null;
|
|
295
|
+
_count?: Prisma.NestedIntNullableFilter<$PrismaModel>;
|
|
296
|
+
_min?: Prisma.NestedEnumTurnStateNullableFilter<$PrismaModel>;
|
|
297
|
+
_max?: Prisma.NestedEnumTurnStateNullableFilter<$PrismaModel>;
|
|
298
|
+
};
|
|
284
299
|
export type JsonFilter<$PrismaModel = never> = Prisma.PatchUndefined<Prisma.Either<Required<JsonFilterBase<$PrismaModel>>, Exclude<keyof Required<JsonFilterBase<$PrismaModel>>, 'path'>>, Required<JsonFilterBase<$PrismaModel>>> | Prisma.OptionalFlat<Omit<Required<JsonFilterBase<$PrismaModel>>, 'path'>>;
|
|
285
300
|
export type JsonFilterBase<$PrismaModel = never> = {
|
|
286
301
|
equals?: runtime.InputJsonValue | Prisma.JsonFieldRefInput<$PrismaModel> | Prisma.JsonNullValueFilter;
|
|
@@ -363,6 +378,21 @@ export type EnumDeliveryStateWithAggregatesFilter<$PrismaModel = never> = {
|
|
|
363
378
|
_min?: Prisma.NestedEnumDeliveryStateFilter<$PrismaModel>;
|
|
364
379
|
_max?: Prisma.NestedEnumDeliveryStateFilter<$PrismaModel>;
|
|
365
380
|
};
|
|
381
|
+
export type EnumOverdueClockFilter<$PrismaModel = never> = {
|
|
382
|
+
equals?: $Enums.OverdueClock | Prisma.EnumOverdueClockFieldRefInput<$PrismaModel>;
|
|
383
|
+
in?: $Enums.OverdueClock[] | Prisma.ListEnumOverdueClockFieldRefInput<$PrismaModel>;
|
|
384
|
+
notIn?: $Enums.OverdueClock[] | Prisma.ListEnumOverdueClockFieldRefInput<$PrismaModel>;
|
|
385
|
+
not?: Prisma.NestedEnumOverdueClockFilter<$PrismaModel> | $Enums.OverdueClock;
|
|
386
|
+
};
|
|
387
|
+
export type EnumOverdueClockWithAggregatesFilter<$PrismaModel = never> = {
|
|
388
|
+
equals?: $Enums.OverdueClock | Prisma.EnumOverdueClockFieldRefInput<$PrismaModel>;
|
|
389
|
+
in?: $Enums.OverdueClock[] | Prisma.ListEnumOverdueClockFieldRefInput<$PrismaModel>;
|
|
390
|
+
notIn?: $Enums.OverdueClock[] | Prisma.ListEnumOverdueClockFieldRefInput<$PrismaModel>;
|
|
391
|
+
not?: Prisma.NestedEnumOverdueClockWithAggregatesFilter<$PrismaModel> | $Enums.OverdueClock;
|
|
392
|
+
_count?: Prisma.NestedIntFilter<$PrismaModel>;
|
|
393
|
+
_min?: Prisma.NestedEnumOverdueClockFilter<$PrismaModel>;
|
|
394
|
+
_max?: Prisma.NestedEnumOverdueClockFilter<$PrismaModel>;
|
|
395
|
+
};
|
|
366
396
|
export type EnumThemeFilter<$PrismaModel = never> = {
|
|
367
397
|
equals?: $Enums.Theme | Prisma.EnumThemeFieldRefInput<$PrismaModel>;
|
|
368
398
|
in?: $Enums.Theme[] | Prisma.ListEnumThemeFieldRefInput<$PrismaModel>;
|
|
@@ -675,6 +705,12 @@ export type NestedEnumReportStateNullableFilter<$PrismaModel = never> = {
|
|
|
675
705
|
notIn?: $Enums.ReportState[] | Prisma.ListEnumReportStateFieldRefInput<$PrismaModel> | null;
|
|
676
706
|
not?: Prisma.NestedEnumReportStateNullableFilter<$PrismaModel> | $Enums.ReportState | null;
|
|
677
707
|
};
|
|
708
|
+
export type NestedEnumTurnStateNullableFilter<$PrismaModel = never> = {
|
|
709
|
+
equals?: $Enums.TurnState | Prisma.EnumTurnStateFieldRefInput<$PrismaModel> | null;
|
|
710
|
+
in?: $Enums.TurnState[] | Prisma.ListEnumTurnStateFieldRefInput<$PrismaModel> | null;
|
|
711
|
+
notIn?: $Enums.TurnState[] | Prisma.ListEnumTurnStateFieldRefInput<$PrismaModel> | null;
|
|
712
|
+
not?: Prisma.NestedEnumTurnStateNullableFilter<$PrismaModel> | $Enums.TurnState | null;
|
|
713
|
+
};
|
|
678
714
|
export type NestedEnumLocationKindWithAggregatesFilter<$PrismaModel = never> = {
|
|
679
715
|
equals?: $Enums.LocationKind | Prisma.EnumLocationKindFieldRefInput<$PrismaModel>;
|
|
680
716
|
in?: $Enums.LocationKind[] | Prisma.ListEnumLocationKindFieldRefInput<$PrismaModel>;
|
|
@@ -725,6 +761,15 @@ export type NestedIntWithAggregatesFilter<$PrismaModel = never> = {
|
|
|
725
761
|
_min?: Prisma.NestedIntFilter<$PrismaModel>;
|
|
726
762
|
_max?: Prisma.NestedIntFilter<$PrismaModel>;
|
|
727
763
|
};
|
|
764
|
+
export type NestedEnumTurnStateNullableWithAggregatesFilter<$PrismaModel = never> = {
|
|
765
|
+
equals?: $Enums.TurnState | Prisma.EnumTurnStateFieldRefInput<$PrismaModel> | null;
|
|
766
|
+
in?: $Enums.TurnState[] | Prisma.ListEnumTurnStateFieldRefInput<$PrismaModel> | null;
|
|
767
|
+
notIn?: $Enums.TurnState[] | Prisma.ListEnumTurnStateFieldRefInput<$PrismaModel> | null;
|
|
768
|
+
not?: Prisma.NestedEnumTurnStateNullableWithAggregatesFilter<$PrismaModel> | $Enums.TurnState | null;
|
|
769
|
+
_count?: Prisma.NestedIntNullableFilter<$PrismaModel>;
|
|
770
|
+
_min?: Prisma.NestedEnumTurnStateNullableFilter<$PrismaModel>;
|
|
771
|
+
_max?: Prisma.NestedEnumTurnStateNullableFilter<$PrismaModel>;
|
|
772
|
+
};
|
|
728
773
|
export type NestedEnumCrewStatusNullableFilter<$PrismaModel = never> = {
|
|
729
774
|
equals?: $Enums.CrewStatus | Prisma.EnumCrewStatusFieldRefInput<$PrismaModel> | null;
|
|
730
775
|
in?: $Enums.CrewStatus[] | Prisma.ListEnumCrewStatusFieldRefInput<$PrismaModel> | null;
|
|
@@ -787,6 +832,21 @@ export type NestedEnumDeliveryStateWithAggregatesFilter<$PrismaModel = never> =
|
|
|
787
832
|
_min?: Prisma.NestedEnumDeliveryStateFilter<$PrismaModel>;
|
|
788
833
|
_max?: Prisma.NestedEnumDeliveryStateFilter<$PrismaModel>;
|
|
789
834
|
};
|
|
835
|
+
export type NestedEnumOverdueClockFilter<$PrismaModel = never> = {
|
|
836
|
+
equals?: $Enums.OverdueClock | Prisma.EnumOverdueClockFieldRefInput<$PrismaModel>;
|
|
837
|
+
in?: $Enums.OverdueClock[] | Prisma.ListEnumOverdueClockFieldRefInput<$PrismaModel>;
|
|
838
|
+
notIn?: $Enums.OverdueClock[] | Prisma.ListEnumOverdueClockFieldRefInput<$PrismaModel>;
|
|
839
|
+
not?: Prisma.NestedEnumOverdueClockFilter<$PrismaModel> | $Enums.OverdueClock;
|
|
840
|
+
};
|
|
841
|
+
export type NestedEnumOverdueClockWithAggregatesFilter<$PrismaModel = never> = {
|
|
842
|
+
equals?: $Enums.OverdueClock | Prisma.EnumOverdueClockFieldRefInput<$PrismaModel>;
|
|
843
|
+
in?: $Enums.OverdueClock[] | Prisma.ListEnumOverdueClockFieldRefInput<$PrismaModel>;
|
|
844
|
+
notIn?: $Enums.OverdueClock[] | Prisma.ListEnumOverdueClockFieldRefInput<$PrismaModel>;
|
|
845
|
+
not?: Prisma.NestedEnumOverdueClockWithAggregatesFilter<$PrismaModel> | $Enums.OverdueClock;
|
|
846
|
+
_count?: Prisma.NestedIntFilter<$PrismaModel>;
|
|
847
|
+
_min?: Prisma.NestedEnumOverdueClockFilter<$PrismaModel>;
|
|
848
|
+
_max?: Prisma.NestedEnumOverdueClockFilter<$PrismaModel>;
|
|
849
|
+
};
|
|
790
850
|
export type NestedEnumThemeFilter<$PrismaModel = never> = {
|
|
791
851
|
equals?: $Enums.Theme | Prisma.EnumThemeFieldRefInput<$PrismaModel>;
|
|
792
852
|
in?: $Enums.Theme[] | Prisma.ListEnumThemeFieldRefInput<$PrismaModel>;
|
|
@@ -10,6 +10,11 @@ export declare const ReportState: {
|
|
|
10
10
|
readonly idle: "idle";
|
|
11
11
|
};
|
|
12
12
|
export type ReportState = (typeof ReportState)[keyof typeof ReportState];
|
|
13
|
+
export declare const TurnState: {
|
|
14
|
+
readonly idle: "idle";
|
|
15
|
+
readonly busy: "busy";
|
|
16
|
+
};
|
|
17
|
+
export type TurnState = (typeof TurnState)[keyof typeof TurnState];
|
|
13
18
|
export declare const LocationKind: {
|
|
14
19
|
readonly DEVICE: "DEVICE";
|
|
15
20
|
readonly CLOUD: "CLOUD";
|
|
@@ -32,13 +37,22 @@ export declare const SelectorKind: {
|
|
|
32
37
|
export type SelectorKind = (typeof SelectorKind)[keyof typeof SelectorKind];
|
|
33
38
|
export declare const DeliveryState: {
|
|
34
39
|
readonly pending: "pending";
|
|
35
|
-
readonly
|
|
40
|
+
readonly received: "received";
|
|
41
|
+
readonly handed: "handed";
|
|
36
42
|
readonly acknowledged: "acknowledged";
|
|
43
|
+
readonly handled: "handled";
|
|
44
|
+
readonly notHandled: "notHandled";
|
|
37
45
|
readonly undeliverable: "undeliverable";
|
|
38
46
|
readonly dismissed: "dismissed";
|
|
39
47
|
readonly abandoned: "abandoned";
|
|
40
48
|
};
|
|
41
49
|
export type DeliveryState = (typeof DeliveryState)[keyof typeof DeliveryState];
|
|
50
|
+
export declare const OverdueClock: {
|
|
51
|
+
readonly notConfirmed: "notConfirmed";
|
|
52
|
+
readonly idle: "idle";
|
|
53
|
+
readonly busy: "busy";
|
|
54
|
+
};
|
|
55
|
+
export type OverdueClock = (typeof OverdueClock)[keyof typeof OverdueClock];
|
|
42
56
|
export declare const ConsoleSessionEndReason: {
|
|
43
57
|
readonly takenOver: "takenOver";
|
|
44
58
|
readonly signedOut: "signedOut";
|
|
@@ -17,6 +17,10 @@ export const ReportState = {
|
|
|
17
17
|
blocked: 'blocked',
|
|
18
18
|
idle: 'idle'
|
|
19
19
|
};
|
|
20
|
+
export const TurnState = {
|
|
21
|
+
idle: 'idle',
|
|
22
|
+
busy: 'busy'
|
|
23
|
+
};
|
|
20
24
|
export const LocationKind = {
|
|
21
25
|
DEVICE: 'DEVICE',
|
|
22
26
|
CLOUD: 'CLOUD',
|
|
@@ -36,12 +40,20 @@ export const SelectorKind = {
|
|
|
36
40
|
};
|
|
37
41
|
export const DeliveryState = {
|
|
38
42
|
pending: 'pending',
|
|
39
|
-
|
|
43
|
+
received: 'received',
|
|
44
|
+
handed: 'handed',
|
|
40
45
|
acknowledged: 'acknowledged',
|
|
46
|
+
handled: 'handled',
|
|
47
|
+
notHandled: 'notHandled',
|
|
41
48
|
undeliverable: 'undeliverable',
|
|
42
49
|
dismissed: 'dismissed',
|
|
43
50
|
abandoned: 'abandoned'
|
|
44
51
|
};
|
|
52
|
+
export const OverdueClock = {
|
|
53
|
+
notConfirmed: 'notConfirmed',
|
|
54
|
+
idle: 'idle',
|
|
55
|
+
busy: 'busy'
|
|
56
|
+
};
|
|
45
57
|
export const ConsoleSessionEndReason = {
|
|
46
58
|
takenOver: 'takenOver',
|
|
47
59
|
signedOut: 'signedOut',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"enums.js","sourceRoot":"","sources":["../../../../src/adapters/prisma/generated/enums.ts"],"names":[],"mappings":"AACA,qEAAqE;AACrE,oBAAoB;AACpB,wCAAwC;AACxC,eAAe;AACf;;;;EAIE;AAEF,MAAM,CAAC,MAAM,QAAQ,GAAG;IACtB,QAAQ,EAAE,UAAU;IACpB,KAAK,EAAE,OAAO;IACd,MAAM,EAAE,QAAQ;CACR,CAAA;AAKV,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;IAClB,IAAI,EAAE,MAAM;CACJ,CAAA;AAKV,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,MAAM,EAAE,QAAQ;IAChB,KAAK,EAAE,OAAO;IACd,MAAM,EAAE,QAAQ;IAChB,KAAK,EAAE,OAAO;CACN,CAAA;AAKV,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;IAClB,UAAU,EAAE,YAAY;IACxB,OAAO,EAAE,SAAS;IAClB,SAAS,EAAE,WAAW;CACd,CAAA;AAKV,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;CACJ,CAAA;AAKV,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,OAAO,EAAE,SAAS;IAClB,
|
|
1
|
+
{"version":3,"file":"enums.js","sourceRoot":"","sources":["../../../../src/adapters/prisma/generated/enums.ts"],"names":[],"mappings":"AACA,qEAAqE;AACrE,oBAAoB;AACpB,wCAAwC;AACxC,eAAe;AACf;;;;EAIE;AAEF,MAAM,CAAC,MAAM,QAAQ,GAAG;IACtB,QAAQ,EAAE,UAAU;IACpB,KAAK,EAAE,OAAO;IACd,MAAM,EAAE,QAAQ;CACR,CAAA;AAKV,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;IAClB,IAAI,EAAE,MAAM;CACJ,CAAA;AAKV,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;CACJ,CAAA;AAKV,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,MAAM,EAAE,QAAQ;IAChB,KAAK,EAAE,OAAO;IACd,MAAM,EAAE,QAAQ;IAChB,KAAK,EAAE,OAAO;CACN,CAAA;AAKV,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,OAAO,EAAE,SAAS;IAClB,OAAO,EAAE,SAAS;IAClB,UAAU,EAAE,YAAY;IACxB,OAAO,EAAE,SAAS;IAClB,SAAS,EAAE,WAAW;CACd,CAAA;AAKV,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;CACJ,CAAA;AAKV,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,OAAO,EAAE,SAAS;IAClB,QAAQ,EAAE,UAAU;IACpB,MAAM,EAAE,QAAQ;IAChB,YAAY,EAAE,cAAc;IAC5B,OAAO,EAAE,SAAS;IAClB,UAAU,EAAE,YAAY;IACxB,aAAa,EAAE,eAAe;IAC9B,SAAS,EAAE,WAAW;IACtB,SAAS,EAAE,WAAW;CACd,CAAA;AAKV,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,YAAY,EAAE,cAAc;IAC5B,IAAI,EAAE,MAAM;IACZ,IAAI,EAAE,MAAM;CACJ,CAAA;AAKV,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACrC,SAAS,EAAE,WAAW;IACtB,SAAS,EAAE,WAAW;IACtB,aAAa,EAAE,eAAe;CACtB,CAAA;AAKV,MAAM,CAAC,MAAM,KAAK,GAAG;IACnB,KAAK,EAAE,OAAO;IACd,IAAI,EAAE,MAAM;IACZ,MAAM,EAAE,QAAQ;CACR,CAAA;AAKV,MAAM,CAAC,MAAM,QAAQ,GAAG;IACtB,QAAQ,EAAE,UAAU;IACpB,MAAM,EAAE,QAAQ;CACR,CAAA;AAKV,MAAM,CAAC,MAAM,uBAAuB,GAAG;IACrC,WAAW,EAAE,aAAa;IAC1B,WAAW,EAAE,aAAa;CAClB,CAAA;AAKV,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,QAAQ,EAAE,UAAU;IACpB,SAAS,EAAE,WAAW;IACtB,OAAO,EAAE,SAAS;CACV,CAAA;AAKV,MAAM,CAAC,MAAM,kBAAkB,GAAG;IAChC,IAAI,EAAE,MAAM;IACZ,OAAO,EAAE,SAAS;IAClB,QAAQ,EAAE,UAAU;CACZ,CAAA"}
|
|
@@ -282,6 +282,17 @@ export interface PrismaClient<in LogOpts extends Prisma.LogLevel = never, in out
|
|
|
282
282
|
get delivery(): Prisma.DeliveryDelegate<ExtArgs, {
|
|
283
283
|
omit: OmitOpts;
|
|
284
284
|
}>;
|
|
285
|
+
/**
|
|
286
|
+
* `prisma.overdueDelivery`: Exposes CRUD operations for the **OverdueDelivery** model.
|
|
287
|
+
* Example usage:
|
|
288
|
+
* ```ts
|
|
289
|
+
* // Fetch zero or more OverdueDeliveries
|
|
290
|
+
* const overdueDeliveries = await prisma.overdueDelivery.findMany()
|
|
291
|
+
* ```
|
|
292
|
+
*/
|
|
293
|
+
get overdueDelivery(): Prisma.OverdueDeliveryDelegate<ExtArgs, {
|
|
294
|
+
omit: OmitOpts;
|
|
295
|
+
}>;
|
|
285
296
|
/**
|
|
286
297
|
* `prisma.event`: Exposes CRUD operations for the **Event** model.
|
|
287
298
|
* Example usage:
|