@aeolus-fleet/core 0.26.0 → 0.27.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 +1 -1
- package/dist/adapters/http/request-credentials.d.ts +2 -9
- package/dist/adapters/http/request-credentials.js +8 -1
- package/dist/adapters/http/request-credentials.js.map +1 -1
- package/dist/adapters/http/server.js +2 -1
- package/dist/adapters/http/server.js.map +1 -1
- package/dist/adapters/mcp/mcp-endpoint.js +11 -1
- package/dist/adapters/mcp/mcp-endpoint.js.map +1 -1
- package/dist/adapters/prisma/generated/browser.d.ts +8 -0
- package/dist/adapters/prisma/generated/client.d.ts +8 -0
- package/dist/adapters/prisma/generated/enums.d.ts +2 -0
- package/dist/adapters/prisma/generated/enums.js +3 -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 +94 -1
- package/dist/adapters/prisma/generated/internal/prismaNamespace.js +18 -1
- package/dist/adapters/prisma/generated/internal/prismaNamespace.js.map +1 -1
- package/dist/adapters/prisma/generated/internal/prismaNamespaceBrowser.d.ts +18 -0
- package/dist/adapters/prisma/generated/internal/prismaNamespaceBrowser.js +18 -1
- package/dist/adapters/prisma/generated/internal/prismaNamespaceBrowser.js.map +1 -1
- package/dist/adapters/prisma/generated/models/Delivery.d.ts +71 -1
- package/dist/adapters/prisma/generated/models/Fleet.d.ts +275 -0
- package/dist/adapters/prisma/generated/models/Lease.d.ts +113 -1
- package/dist/adapters/prisma/generated/models/NetworkSettings.d.ts +151 -19
- package/dist/adapters/prisma/generated/models/ReachRefusal.d.ts +71 -1
- package/dist/adapters/prisma/generated/models/ScopeNamespace.d.ts +1220 -0
- package/dist/adapters/prisma/generated/models/ScopeNamespace.js +2 -0
- package/dist/adapters/prisma/generated/models/ScopeNamespace.js.map +1 -0
- package/dist/adapters/prisma/generated/models/Ship.d.ts +983 -55
- package/dist/adapters/prisma/generated/models.d.ts +1 -0
- package/dist/adapters/prisma/health.js +27 -7
- package/dist/adapters/prisma/health.js.map +1 -1
- package/dist/adapters/prisma/history.js +14 -70
- package/dist/adapters/prisma/history.js.map +1 -1
- package/dist/adapters/prisma/messaging.js +27 -34
- package/dist/adapters/prisma/messaging.js.map +1 -1
- package/dist/adapters/prisma/network.js +39 -12
- package/dist/adapters/prisma/network.js.map +1 -1
- package/dist/adapters/prisma/registry.js +65 -11
- package/dist/adapters/prisma/registry.js.map +1 -1
- package/dist/adapters/prisma/rows.d.ts +3 -0
- package/dist/adapters/prisma/rows.js +20 -7
- package/dist/adapters/prisma/rows.js.map +1 -1
- package/dist/adapters/prisma/scope-namespaces.d.ts +4 -0
- package/dist/adapters/prisma/scope-namespaces.js +39 -0
- package/dist/adapters/prisma/scope-namespaces.js.map +1 -0
- 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/rest/rest-api.js +2 -2
- package/dist/adapters/rest/rest-api.js.map +1 -1
- package/dist/adapters/trpc/console.d.ts +1 -1
- package/dist/adapters/trpc/console.js +6 -4
- package/dist/adapters/trpc/console.js.map +1 -1
- package/dist/adapters/trpc/context.d.ts +20 -4
- package/dist/adapters/trpc/fleet.d.ts +179 -82
- package/dist/adapters/trpc/fleet.js +117 -53
- package/dist/adapters/trpc/fleet.js.map +1 -1
- package/dist/adapters/trpc/router.d.ts +231 -80
- package/dist/adapters/trpc/ship-contract.js +4 -0
- package/dist/adapters/trpc/ship-contract.js.map +1 -1
- package/dist/adapters/trpc/ship-protocol.js +7 -5
- package/dist/adapters/trpc/ship-protocol.js.map +1 -1
- package/dist/adapters/trpc/ship.d.ts +71 -3
- package/dist/adapters/trpc/ship.js +42 -5
- package/dist/adapters/trpc/ship.js.map +1 -1
- package/dist/adapters/trpc/trpc.d.ts +6 -5
- package/dist/adapters/trpc/trpc.js +76 -21
- package/dist/adapters/trpc/trpc.js.map +1 -1
- package/dist/domain/messaging/check-inbox.d.ts +5 -5
- package/dist/domain/messaging/check-inbox.js +9 -7
- package/dist/domain/messaging/check-inbox.js.map +1 -1
- package/dist/domain/messaging/dismiss-delivery.d.ts +9 -4
- package/dist/domain/messaging/dismiss-delivery.js +26 -19
- package/dist/domain/messaging/dismiss-delivery.js.map +1 -1
- package/dist/domain/messaging/message.d.ts +11 -5
- package/dist/domain/messaging/message.js +11 -4
- package/dist/domain/messaging/message.js.map +1 -1
- package/dist/domain/messaging/ping-ship.d.ts +3 -3
- package/dist/domain/messaging/ping-ship.js +6 -2
- package/dist/domain/messaging/ping-ship.js.map +1 -1
- package/dist/domain/messaging/ports.d.ts +9 -3
- package/dist/domain/messaging/receive-deliveries.d.ts +2 -0
- package/dist/domain/messaging/receive-deliveries.js +1 -0
- package/dist/domain/messaging/receive-deliveries.js.map +1 -1
- package/dist/domain/messaging/resend-delivery.d.ts +5 -2
- package/dist/domain/messaging/resend-delivery.js +8 -4
- package/dist/domain/messaging/resend-delivery.js.map +1 -1
- package/dist/domain/messaging/send-message.d.ts +9 -2
- package/dist/domain/messaging/send-message.js +12 -2
- package/dist/domain/messaging/send-message.js.map +1 -1
- package/dist/domain/messaging/send-request.d.ts +3 -1
- package/dist/domain/messaging/send-request.js +4 -2
- package/dist/domain/messaging/send-request.js.map +1 -1
- package/dist/domain/registry/assign-label.d.ts +2 -1
- package/dist/domain/registry/assign-label.js +3 -2
- package/dist/domain/registry/assign-label.js.map +1 -1
- package/dist/domain/registry/check-reach.d.ts +63 -4
- package/dist/domain/registry/check-reach.js +107 -11
- package/dist/domain/registry/check-reach.js.map +1 -1
- package/dist/domain/registry/commission-ship.d.ts +17 -8
- package/dist/domain/registry/commission-ship.js +24 -10
- package/dist/domain/registry/commission-ship.js.map +1 -1
- package/dist/domain/registry/crew-request.d.ts +1 -1
- package/dist/domain/registry/declare-scopes.d.ts +38 -0
- package/dist/domain/registry/declare-scopes.js +34 -0
- package/dist/domain/registry/declare-scopes.js.map +1 -0
- package/dist/domain/registry/declared-network-rules.d.ts +2 -1
- package/dist/domain/registry/declared-network-rules.js +11 -5
- package/dist/domain/registry/declared-network-rules.js.map +1 -1
- package/dist/domain/registry/discover.d.ts +28 -0
- package/dist/domain/registry/discover.js +54 -0
- package/dist/domain/registry/discover.js.map +1 -0
- package/dist/domain/registry/explain-reach.d.ts +12 -12
- package/dist/domain/registry/explain-reach.js +35 -12
- package/dist/domain/registry/explain-reach.js.map +1 -1
- package/dist/domain/registry/get-ship.d.ts +11 -3
- package/dist/domain/registry/get-ship.js +8 -2
- package/dist/domain/registry/get-ship.js.map +1 -1
- package/dist/domain/registry/get-starting-prompt.d.ts +18 -2
- package/dist/domain/registry/get-starting-prompt.js +7 -7
- package/dist/domain/registry/get-starting-prompt.js.map +1 -1
- package/dist/domain/registry/grant-scopes.d.ts +34 -0
- package/dist/domain/registry/grant-scopes.js +35 -0
- package/dist/domain/registry/grant-scopes.js.map +1 -0
- package/dist/domain/registry/label.d.ts +12 -7
- package/dist/domain/registry/label.js +21 -4
- package/dist/domain/registry/label.js.map +1 -1
- package/dist/domain/registry/list-fleet.d.ts +19 -6
- package/dist/domain/registry/list-fleet.js +18 -3
- package/dist/domain/registry/list-fleet.js.map +1 -1
- package/dist/domain/registry/list-scopes.d.ts +24 -0
- package/dist/domain/registry/list-scopes.js +22 -0
- package/dist/domain/registry/list-scopes.js.map +1 -0
- package/dist/domain/registry/managed-or-assigned.d.ts +25 -0
- package/dist/domain/registry/managed-or-assigned.js +23 -0
- package/dist/domain/registry/managed-or-assigned.js.map +1 -0
- package/dist/domain/registry/named-namespaces.d.ts +19 -0
- package/dist/domain/registry/named-namespaces.js +19 -0
- package/dist/domain/registry/named-namespaces.js.map +1 -0
- package/dist/domain/registry/network-settings.d.ts +84 -24
- package/dist/domain/registry/network-settings.js +134 -45
- package/dist/domain/registry/network-settings.js.map +1 -1
- package/dist/domain/registry/ports.d.ts +63 -1
- package/dist/domain/registry/public.d.ts +3 -2
- package/dist/domain/registry/public.js +3 -2
- package/dist/domain/registry/public.js.map +1 -1
- package/dist/domain/registry/reach-refusal.d.ts +12 -4
- package/dist/domain/registry/read-assigned-crew-requests.d.ts +12 -3
- package/dist/domain/registry/read-assigned-crew-requests.js +8 -8
- package/dist/domain/registry/read-assigned-crew-requests.js.map +1 -1
- package/dist/domain/registry/read-built-in-rules.d.ts +20 -0
- package/dist/domain/registry/read-built-in-rules.js +23 -0
- package/dist/domain/registry/read-built-in-rules.js.map +1 -0
- package/dist/domain/registry/read-clear-requests.d.ts +5 -3
- package/dist/domain/registry/read-clear-requests.js +7 -5
- package/dist/domain/registry/read-clear-requests.js.map +1 -1
- package/dist/domain/registry/read-on-behalf.d.ts +20 -0
- package/dist/domain/registry/read-on-behalf.js +31 -0
- package/dist/domain/registry/read-on-behalf.js.map +1 -0
- package/dist/domain/registry/read-reach.d.ts +62 -0
- package/dist/domain/registry/read-reach.js +78 -0
- package/dist/domain/registry/read-reach.js.map +1 -0
- package/dist/domain/registry/recrew-ship.d.ts +3 -2
- package/dist/domain/registry/recrew-ship.js +6 -1
- package/dist/domain/registry/recrew-ship.js.map +1 -1
- package/dist/domain/registry/release-ship.d.ts +6 -3
- package/dist/domain/registry/release-ship.js +7 -7
- package/dist/domain/registry/release-ship.js.map +1 -1
- package/dist/domain/registry/remove-crew-request.d.ts +4 -3
- package/dist/domain/registry/remove-crew-request.js +6 -1
- package/dist/domain/registry/remove-crew-request.js.map +1 -1
- package/dist/domain/registry/rename-ship.d.ts +7 -5
- package/dist/domain/registry/rename-ship.js +9 -3
- package/dist/domain/registry/rename-ship.js.map +1 -1
- package/dist/domain/registry/request-crew.d.ts +5 -4
- package/dist/domain/registry/request-crew.js +6 -1
- package/dist/domain/registry/request-crew.js.map +1 -1
- package/dist/domain/registry/request-worktree-clear.d.ts +3 -2
- package/dist/domain/registry/request-worktree-clear.js +6 -1
- package/dist/domain/registry/request-worktree-clear.js.map +1 -1
- package/dist/domain/registry/retire-ship.d.ts +16 -7
- package/dist/domain/registry/retire-ship.js +46 -5
- package/dist/domain/registry/retire-ship.js.map +1 -1
- package/dist/domain/registry/scope-grant.d.ts +53 -0
- package/dist/domain/registry/scope-grant.js +74 -0
- package/dist/domain/registry/scope-grant.js.map +1 -0
- package/dist/domain/registry/scope-namespace.d.ts +68 -0
- package/dist/domain/registry/scope-namespace.js +82 -0
- package/dist/domain/registry/scope-namespace.js.map +1 -0
- package/dist/domain/registry/set-built-in-rule.d.ts +28 -0
- package/dist/domain/registry/set-built-in-rule.js +33 -0
- package/dist/domain/registry/set-built-in-rule.js.map +1 -0
- package/dist/domain/registry/set-network-rules.d.ts +3 -3
- package/dist/domain/registry/set-network-rules.js +2 -2
- package/dist/domain/registry/set-owner.d.ts +30 -0
- package/dist/domain/registry/set-owner.js +37 -0
- package/dist/domain/registry/set-owner.js.map +1 -0
- package/dist/domain/registry/set-statement.d.ts +27 -0
- package/dist/domain/registry/set-statement.js +28 -0
- package/dist/domain/registry/set-statement.js.map +1 -0
- package/dist/domain/registry/ship.d.ts +70 -10
- package/dist/domain/registry/ship.js +95 -10
- package/dist/domain/registry/ship.js.map +1 -1
- package/dist/domain/registry/statement.d.ts +32 -0
- package/dist/domain/registry/statement.js +39 -0
- package/dist/domain/registry/statement.js.map +1 -0
- package/dist/domain/registry/unassign-label.js +1 -1
- package/dist/domain/registry/unassign-label.js.map +1 -1
- package/dist/domain/registry/whoami.d.ts +5 -1
- package/dist/domain/registry/whoami.js +7 -4
- package/dist/domain/registry/whoami.js.map +1 -1
- package/dist/domain/shared/caller.d.ts +5 -2
- package/dist/domain/shared/caller.js.map +1 -1
- package/dist/domain/shared/errors.d.ts +1 -1
- package/dist/domain/shared/errors.js.map +1 -1
- package/dist/domain/shared/events-read.d.ts +16 -0
- package/dist/domain/shared/events-read.js +15 -0
- package/dist/domain/shared/events-read.js.map +1 -0
- package/dist/domain/shared/follow-fleet.d.ts +8 -2
- package/dist/domain/shared/follow-fleet.js +14 -4
- package/dist/domain/shared/follow-fleet.js.map +1 -1
- package/dist/domain/shared/health.d.ts +9 -2
- package/dist/domain/shared/health.js +9 -3
- package/dist/domain/shared/health.js.map +1 -1
- package/dist/domain/shared/history.d.ts +9 -42
- package/dist/domain/shared/history.js +9 -0
- package/dist/domain/shared/history.js.map +1 -1
- package/dist/domain/shared/read-fleet-events.d.ts +8 -2
- package/dist/domain/shared/read-fleet-events.js +10 -4
- package/dist/domain/shared/read-fleet-events.js.map +1 -1
- package/dist/domain/shared/read-health.d.ts +4 -1
- package/dist/domain/shared/read-health.js +7 -2
- package/dist/domain/shared/read-health.js.map +1 -1
- package/dist/domain/shared/read-inbox.d.ts +6 -3
- package/dist/domain/shared/read-inbox.js +14 -4
- package/dist/domain/shared/read-inbox.js.map +1 -1
- package/dist/domain/shared/read-message.d.ts +6 -2
- package/dist/domain/shared/read-message.js +6 -2
- package/dist/domain/shared/read-message.js.map +1 -1
- package/dist/domain/shared/read-needs-attention.d.ts +4 -1
- package/dist/domain/shared/read-needs-attention.js +8 -3
- package/dist/domain/shared/read-needs-attention.js.map +1 -1
- package/dist/domain/shared/read-ship-messages.d.ts +6 -2
- package/dist/domain/shared/read-ship-messages.js +7 -2
- package/dist/domain/shared/read-ship-messages.js.map +1 -1
- package/dist/domain/shared/read-ship-timeline.d.ts +5 -2
- package/dist/domain/shared/read-ship-timeline.js +11 -6
- package/dist/domain/shared/read-ship-timeline.js.map +1 -1
- package/dist/domain/shared/read-ship-way.d.ts +11 -4
- package/dist/domain/shared/read-ship-way.js +9 -2
- package/dist/domain/shared/read-ship-way.js.map +1 -1
- package/dist/domain/shared/stuck.d.ts +10 -1
- package/dist/domain/shared/stuck.js +1 -1
- package/dist/domain/shared/stuck.js.map +1 -1
- package/dist/wiring.d.ts +18 -4
- package/dist/wiring.js +37 -18
- package/dist/wiring.js.map +1 -1
- package/package.json +2 -2
- package/src/adapters/prisma/migrations/20261018100000_force_scope/migration.sql +8 -0
- package/src/adapters/prisma/migrations/20261018110000_forced_delivery/migration.sql +4 -0
- package/src/adapters/prisma/migrations/20261018120000_person_and_app_ships/migration.sql +3 -0
- package/src/adapters/prisma/migrations/20261018130000_owners/migration.sql +14 -0
- package/src/adapters/prisma/migrations/20261018140000_owners_on_reach_refusals/migration.sql +14 -0
- package/src/adapters/prisma/migrations/20261018150000_network_verbs/migration.sql +9 -0
- package/src/adapters/prisma/migrations/20261018160000_built_in_rules/migration.sql +13 -0
- package/src/adapters/prisma/migrations/20261018170000_network_rules_a_list/migration.sql +5 -0
- package/src/adapters/prisma/migrations/20261018180000_verb_on_reach_refusals/migration.sql +4 -0
- package/src/adapters/prisma/migrations/20261018200000_lease_statements/migration.sql +3 -0
- package/src/adapters/prisma/migrations/20261018210000_declare_and_grant_scopes/migration.sql +8 -0
- package/src/adapters/prisma/migrations/20261018220000_plugin_scopes/migration.sql +14 -0
- package/src/adapters/prisma/migrations/20261018230000_scope_namespaces/migration.sql +20 -0
- package/src/adapters/prisma/migrations/20261018240000_trierarch_plugin_crew_run/migration.sql +44 -0
- package/src/adapters/prisma/migrations/20261018250000_scope_catalogue/migration.sql +66 -0
- package/src/adapters/prisma/migrations/20261019090000_reach_refusal_asked_by/migration.sql +2 -0
- package/src/adapters/prisma/migrations/20261019100000_on_behalf_scope/migration.sql +59 -0
- package/src/adapters/prisma/migrations/20261019110000_events_fleet_id_occurred_at/migration.sql +2 -0
- package/src/adapters/prisma/schema.prisma +47 -2
- package/dist/domain/shared/read-no-ship-can-take.d.ts +0 -13
- package/dist/domain/shared/read-no-ship-can-take.js +0 -12
- package/dist/domain/shared/read-no-ship-can-take.js.map +0 -1
- package/dist/domain/shared/read-overdue.d.ts +0 -13
- package/dist/domain/shared/read-overdue.js +0 -12
- package/dist/domain/shared/read-overdue.js.map +0 -1
package/dist/wiring.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wiring.js","sourceRoot":"","sources":["../src/wiring.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"wiring.js","sourceRoot":"","sources":["../src/wiring.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aeolus-fleet/core",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.27.0",
|
|
4
4
|
"description": "The Aeolus fleet server: ships, guaranteed delivery and the API for Claude Code, Codex and any agent.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"ai-agents",
|
|
@@ -51,7 +51,7 @@
|
|
|
51
51
|
"postpack": "rm LICENSE"
|
|
52
52
|
},
|
|
53
53
|
"dependencies": {
|
|
54
|
-
"@aeolus-fleet/common": "0.
|
|
54
|
+
"@aeolus-fleet/common": "0.27.0",
|
|
55
55
|
"@fastify/websocket": "^11.3.1",
|
|
56
56
|
"@modelcontextprotocol/server": "^2.3.0",
|
|
57
57
|
"@prisma/adapter-pg": "^7.10.0",
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
-- messages:force (decision 0040): a forced send, whose delivery comes first.
|
|
2
|
+
-- argo holds every scope, so each fleet's argo gets it too.
|
|
3
|
+
ALTER TABLE "ships" DROP CONSTRAINT "ships_scopes_known";
|
|
4
|
+
ALTER TABLE "ships" ADD CONSTRAINT "ships_scopes_known" CHECK (
|
|
5
|
+
"scopes" IS NOT NULL AND "scopes" <@ ARRAY['messages:send', 'messages:receive', 'messages:force', 'fleet:read', 'fleet:manage', 'crew:assign', 'crew:run', 'labels:define', 'labels:assign', 'fleet:network']::TEXT[]
|
|
6
|
+
);
|
|
7
|
+
|
|
8
|
+
UPDATE "ships" SET "scopes" = array_append("scopes", 'messages:force') WHERE "kind" = 'operator' AND NOT ('messages:force' = ANY("scopes"));
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
-- Every ship but argo and the viewer has an owner: a person's ship or argo (decision 0045).
|
|
2
|
+
ALTER TABLE "ships" ADD COLUMN "owner_ship_id" TEXT;
|
|
3
|
+
|
|
4
|
+
CREATE INDEX "ships_fleet_id_owner_ship_id_idx" ON "ships"("fleet_id", "owner_ship_id");
|
|
5
|
+
|
|
6
|
+
ALTER TABLE "ships" ADD CONSTRAINT "ships_fleet_id_owner_ship_id_fkey" FOREIGN KEY ("fleet_id", "owner_ship_id") REFERENCES "ships"("fleet_id", "id") ON DELETE RESTRICT ON UPDATE CASCADE;
|
|
7
|
+
|
|
8
|
+
-- The ships from before owners are argo's, retired ones included.
|
|
9
|
+
UPDATE "ships" AS ship
|
|
10
|
+
SET "owner_ship_id" = argo."id"
|
|
11
|
+
FROM "ships" AS argo
|
|
12
|
+
WHERE argo."fleet_id" = ship."fleet_id"
|
|
13
|
+
AND argo."kind" = 'operator'
|
|
14
|
+
AND ship."kind" NOT IN ('operator', 'viewer');
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
-- A refusal keeps each ship's owner then (decision 0034). Refusals from
|
|
2
|
+
-- before owners knew none, so each of their ships gets none.
|
|
3
|
+
UPDATE "reach_refusals"
|
|
4
|
+
SET
|
|
5
|
+
"sender" = "sender" || '{"owner": null}'::jsonb,
|
|
6
|
+
"recipient" = CASE "recipient"->>'kind'
|
|
7
|
+
WHEN 'ship' THEN jsonb_set("recipient", '{ship}', ("recipient"->'ship') || '{"owner": null}'::jsonb)
|
|
8
|
+
ELSE jsonb_set(
|
|
9
|
+
"recipient",
|
|
10
|
+
'{ships}',
|
|
11
|
+
COALESCE((SELECT jsonb_agg(ship || '{"owner": null}'::jsonb ORDER BY position) FROM jsonb_array_elements("recipient"->'ships') WITH ORDINALITY AS refused(ship, position)), '[]'::jsonb)
|
|
12
|
+
)
|
|
13
|
+
END
|
|
14
|
+
WHERE NOT "sender" ? 'owner';
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
-- Every rule names its verb (decision 0034). Rules allowed only sends before,
|
|
2
|
+
-- so every rule a fleet holds and every rule a ship declared becomes a send rule.
|
|
3
|
+
UPDATE "network_settings"
|
|
4
|
+
SET "rules" = (SELECT jsonb_agg(jsonb_build_object('verb', 'send') || rule ORDER BY position) FROM jsonb_array_elements("rules") WITH ORDINALITY AS kept(rule, position))
|
|
5
|
+
WHERE jsonb_typeof("rules") = 'array' AND jsonb_array_length("rules") > 0;
|
|
6
|
+
|
|
7
|
+
UPDATE "declared_network_rules"
|
|
8
|
+
SET "rules" = (SELECT jsonb_agg(jsonb_build_object('verb', 'send') || rule ORDER BY position) FROM jsonb_array_elements("rules") WITH ORDINALITY AS kept(rule, position))
|
|
9
|
+
WHERE jsonb_array_length("rules") > 0;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
-- The built-in rules that can be off (decision 0034): the viewer reading and
|
|
2
|
+
-- open per verb, on at fleet create.
|
|
3
|
+
ALTER TABLE "network_settings"
|
|
4
|
+
ADD COLUMN IF NOT EXISTS "built_in_viewer_read" BOOLEAN NOT NULL DEFAULT true,
|
|
5
|
+
ADD COLUMN IF NOT EXISTS "built_in_open_send" BOOLEAN NOT NULL DEFAULT true,
|
|
6
|
+
ADD COLUMN IF NOT EXISTS "built_in_open_read" BOOLEAN NOT NULL DEFAULT true,
|
|
7
|
+
ADD COLUMN IF NOT EXISTS "built_in_open_manage" BOOLEAN NOT NULL DEFAULT true;
|
|
8
|
+
|
|
9
|
+
-- A fleet whose networking plugin set rules was checked against them alone, so
|
|
10
|
+
-- open is off for it; every other fleet reached every ship, so open stays on.
|
|
11
|
+
UPDATE "network_settings"
|
|
12
|
+
SET "built_in_open_send" = false, "built_in_open_read" = false, "built_in_open_manage" = false
|
|
13
|
+
WHERE "plugin_ship_id" IS NOT NULL AND "rules" IS NOT NULL;
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
-- A fleet's rules are a list beside the built-in rules (decision 0034): no
|
|
2
|
+
-- rules was all-to-all, which open, on for every such fleet, now says.
|
|
3
|
+
UPDATE "network_settings" SET "rules" = '[]'::jsonb WHERE "rules" IS NULL;
|
|
4
|
+
|
|
5
|
+
ALTER TABLE "network_settings" ALTER COLUMN "rules" SET DEFAULT '[]'::jsonb, ALTER COLUMN "rules" SET NOT NULL;
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
-- A refusal records the verb the sender tried (decision 0034). Only sends were
|
|
2
|
+
-- checked before, so every refusal so far is a refused send.
|
|
3
|
+
ALTER TABLE "reach_refusals" ADD COLUMN IF NOT EXISTS "verb" TEXT NOT NULL DEFAULT 'send';
|
|
4
|
+
ALTER TABLE "reach_refusals" ALTER COLUMN "verb" DROP DEFAULT;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
-- scopes:declare and scopes:grant (decision 0046): taking up a plugin namespace, and granting on a live ship.
|
|
2
|
+
-- argo holds every scope, so each fleet's argo gets both too.
|
|
3
|
+
ALTER TABLE "ships" DROP CONSTRAINT "ships_scopes_known";
|
|
4
|
+
ALTER TABLE "ships" ADD CONSTRAINT "ships_scopes_known" CHECK (
|
|
5
|
+
"scopes" IS NOT NULL AND "scopes" <@ ARRAY['messages:send', 'messages:receive', 'messages:force', 'fleet:read', 'fleet:manage', 'crew:assign', 'crew:run', 'labels:define', 'labels:assign', 'fleet:network', 'scopes:declare', 'scopes:grant']::TEXT[]
|
|
6
|
+
);
|
|
7
|
+
|
|
8
|
+
UPDATE "ships" SET "scopes" = array_cat("scopes", ARRAY['scopes:declare', 'scopes:grant']::TEXT[]) WHERE "kind" = 'operator' AND NOT ('scopes:declare' = ANY("scopes"));
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
-- A ship holds core scopes and plugin scopes, each <namespace>:<action> (decision 0046):
|
|
2
|
+
-- a scope of a core namespace is one of the known core scopes; any other namespace is a plugin's.
|
|
3
|
+
CREATE FUNCTION "ships_scopes_are_known"("scopes" TEXT[]) RETURNS BOOLEAN IMMUTABLE LANGUAGE SQL AS $$
|
|
4
|
+
SELECT "scopes" IS NOT NULL AND NOT EXISTS (
|
|
5
|
+
SELECT 1 FROM unnest("scopes") AS "scope"
|
|
6
|
+
WHERE NOT (
|
|
7
|
+
"scope" = ANY(ARRAY['messages:send', 'messages:receive', 'messages:force', 'fleet:read', 'fleet:manage', 'crew:assign', 'crew:run', 'labels:define', 'labels:assign', 'fleet:network', 'scopes:declare', 'scopes:grant']::TEXT[])
|
|
8
|
+
OR ("scope" ~ '^[a-z][a-z0-9-]{0,31}:[a-z][a-z0-9-]{0,31}$' AND split_part("scope", ':', 1) <> ALL(ARRAY['messages', 'fleet', 'crew', 'labels', 'scopes']::TEXT[]))
|
|
9
|
+
)
|
|
10
|
+
)
|
|
11
|
+
$$;
|
|
12
|
+
|
|
13
|
+
ALTER TABLE "ships" DROP CONSTRAINT "ships_scopes_known";
|
|
14
|
+
ALTER TABLE "ships" ADD CONSTRAINT "ships_scopes_known" CHECK ("ships_scopes_are_known"("scopes"));
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
-- A plugin's namespace (decision 0046): one per declaring ship, unique in the fleet,
|
|
2
|
+
-- with its whole list of scopes and their descriptions.
|
|
3
|
+
-- CreateTable
|
|
4
|
+
CREATE TABLE "scope_namespaces" (
|
|
5
|
+
"fleet_id" TEXT NOT NULL,
|
|
6
|
+
"namespace" TEXT NOT NULL,
|
|
7
|
+
"declared_by" TEXT NOT NULL,
|
|
8
|
+
"scopes" JSONB NOT NULL,
|
|
9
|
+
|
|
10
|
+
CONSTRAINT "scope_namespaces_pkey" PRIMARY KEY ("fleet_id","namespace")
|
|
11
|
+
);
|
|
12
|
+
|
|
13
|
+
-- CreateIndex
|
|
14
|
+
CREATE UNIQUE INDEX "scope_namespaces_fleet_id_declared_by_key" ON "scope_namespaces"("fleet_id", "declared_by");
|
|
15
|
+
|
|
16
|
+
-- AddForeignKey
|
|
17
|
+
ALTER TABLE "scope_namespaces" ADD CONSTRAINT "scope_namespaces_fleet_id_fkey" FOREIGN KEY ("fleet_id") REFERENCES "fleets"("id") ON DELETE RESTRICT ON UPDATE CASCADE;
|
|
18
|
+
|
|
19
|
+
-- AddForeignKey
|
|
20
|
+
ALTER TABLE "scope_namespaces" ADD CONSTRAINT "scope_namespaces_fleet_id_declared_by_fkey" FOREIGN KEY ("fleet_id", "declared_by") REFERENCES "ships"("fleet_id", "id") ON DELETE RESTRICT ON UPDATE CASCADE;
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
-- The trierarch plugin gives each machine's trierarch ship crew:run at commission, and a commission grants
|
|
2
|
+
-- only what its commissioner holds (decision 0046): every active trierarch-plugin ship gets crew:run.
|
|
3
|
+
-- Every state change writes its event: each ship it changes gets ScopesChanged, by the system, taking the
|
|
4
|
+
-- next number of its fleet's stream. Its id is an evt_ id as common/src/ids makes them: the time in
|
|
5
|
+
-- milliseconds, then 80 random bits, in lowercase Crockford base32.
|
|
6
|
+
DO $$
|
|
7
|
+
DECLARE
|
|
8
|
+
alphabet CONSTANT text := '0123456789abcdefghjkmnpqrstvwxyz';
|
|
9
|
+
changed record;
|
|
10
|
+
at timestamptz;
|
|
11
|
+
millis bigint;
|
|
12
|
+
body text;
|
|
13
|
+
next_seq bigint;
|
|
14
|
+
BEGIN
|
|
15
|
+
FOR changed IN
|
|
16
|
+
UPDATE "ships" SET "scopes" = array_append("scopes", 'crew:run')
|
|
17
|
+
WHERE "type" = 'trierarch-plugin' AND "retired_at" IS NULL AND NOT ('crew:run' = ANY("scopes"))
|
|
18
|
+
RETURNING "fleet_id", "id"
|
|
19
|
+
LOOP
|
|
20
|
+
at := clock_timestamp();
|
|
21
|
+
millis := floor(extract(epoch FROM at) * 1000)::bigint;
|
|
22
|
+
body := '';
|
|
23
|
+
FOR position IN REVERSE 9..0 LOOP
|
|
24
|
+
body := body || substr(alphabet, ((millis >> (position * 5)) & 31)::integer + 1, 1);
|
|
25
|
+
END LOOP;
|
|
26
|
+
FOR position IN 1..16 LOOP
|
|
27
|
+
body := body || substr(alphabet, floor(random() * 32)::integer + 1, 1);
|
|
28
|
+
END LOOP;
|
|
29
|
+
|
|
30
|
+
UPDATE "fleets" SET "last_event_seq" = "last_event_seq" + 1 WHERE "id" = changed."fleet_id"
|
|
31
|
+
RETURNING "last_event_seq" INTO next_seq;
|
|
32
|
+
INSERT INTO "events" ("id", "fleet_id", "type", "occurred_at", "ship_id", "details", "seq")
|
|
33
|
+
VALUES (
|
|
34
|
+
'evt_' || body,
|
|
35
|
+
changed."fleet_id",
|
|
36
|
+
'ScopesChanged',
|
|
37
|
+
at,
|
|
38
|
+
changed."id",
|
|
39
|
+
jsonb_build_object('added', 'crew:run', 'removed', ''),
|
|
40
|
+
next_seq
|
|
41
|
+
);
|
|
42
|
+
END LOOP;
|
|
43
|
+
END;
|
|
44
|
+
$$;
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
-- The scope catalogue (decision 0046): fleet:commission and messages:resend are core scopes.
|
|
2
|
+
CREATE OR REPLACE FUNCTION "ships_scopes_are_known"("scopes" TEXT[]) RETURNS BOOLEAN IMMUTABLE LANGUAGE SQL AS $$
|
|
3
|
+
SELECT "scopes" IS NOT NULL AND NOT EXISTS (
|
|
4
|
+
SELECT 1 FROM unnest("scopes") AS "scope"
|
|
5
|
+
WHERE NOT (
|
|
6
|
+
"scope" = ANY(ARRAY['messages:send', 'messages:receive', 'messages:force', 'messages:resend', 'fleet:read', 'fleet:commission', 'fleet:manage', 'crew:assign', 'crew:run', 'labels:define', 'labels:assign', 'fleet:network', 'scopes:declare', 'scopes:grant']::TEXT[])
|
|
7
|
+
OR ("scope" ~ '^[a-z][a-z0-9-]{0,31}:[a-z][a-z0-9-]{0,31}$' AND split_part("scope", ':', 1) <> ALL(ARRAY['messages', 'fleet', 'crew', 'labels', 'scopes']::TEXT[]))
|
|
8
|
+
)
|
|
9
|
+
)
|
|
10
|
+
$$;
|
|
11
|
+
|
|
12
|
+
-- Each holder keeps what it did within the new bounds: every active ship holding fleet:manage also gets
|
|
13
|
+
-- fleet:commission and messages:resend, and each active plugin ship, by its type, holds exactly its set,
|
|
14
|
+
-- losing what the set leaves out. Scopes stay in catalogue order, a plugin's own after them. Every ship it
|
|
15
|
+
-- changes gets one ScopesChanged, by the system, naming what it added and took away, at the next number of
|
|
16
|
+
-- its fleet's stream, with an evt_ id as common/src/ids makes them (the time in milliseconds, then 80 random
|
|
17
|
+
-- bits, in lowercase Crockford base32).
|
|
18
|
+
DO $$
|
|
19
|
+
DECLARE
|
|
20
|
+
alphabet CONSTANT text := '0123456789abcdefghjkmnpqrstvwxyz';
|
|
21
|
+
catalogue CONSTANT text[] := ARRAY['messages:send', 'messages:receive', 'messages:force', 'messages:resend', 'fleet:read', 'fleet:commission', 'fleet:manage', 'crew:assign', 'crew:run', 'labels:define', 'labels:assign', 'fleet:network', 'scopes:declare', 'scopes:grant'];
|
|
22
|
+
ship record;
|
|
23
|
+
wanted text[];
|
|
24
|
+
added text;
|
|
25
|
+
removed text;
|
|
26
|
+
at timestamptz;
|
|
27
|
+
millis bigint;
|
|
28
|
+
body text;
|
|
29
|
+
next_seq bigint;
|
|
30
|
+
BEGIN
|
|
31
|
+
FOR ship IN
|
|
32
|
+
SELECT "id", "fleet_id", "type", "scopes" FROM "ships"
|
|
33
|
+
WHERE "retired_at" IS NULL AND ("type" IN ('squadrons', 'trierarch-plugin') OR 'fleet:manage' = ANY("scopes"))
|
|
34
|
+
ORDER BY "fleet_id", "id"
|
|
35
|
+
FOR UPDATE
|
|
36
|
+
LOOP
|
|
37
|
+
wanted := CASE ship."type"
|
|
38
|
+
WHEN 'squadrons' THEN ARRAY['messages:send', 'messages:receive', 'fleet:read', 'fleet:commission', 'fleet:manage', 'labels:define', 'labels:assign', 'scopes:declare']
|
|
39
|
+
WHEN 'trierarch-plugin' THEN ARRAY['messages:send', 'messages:receive', 'fleet:read', 'fleet:commission', 'crew:assign', 'crew:run', 'labels:define', 'labels:assign']
|
|
40
|
+
ELSE ship."scopes" || ARRAY['fleet:commission', 'messages:resend']
|
|
41
|
+
END;
|
|
42
|
+
SELECT array_agg("scope" ORDER BY coalesce(array_position(catalogue, "scope"), cardinality(catalogue) + 1), "first_at") INTO wanted
|
|
43
|
+
FROM (SELECT "scope", min("place") AS "first_at" FROM unnest(wanted) WITH ORDINALITY AS u("scope", "place") GROUP BY "scope") AS once;
|
|
44
|
+
added := coalesce((SELECT string_agg("scope", ' ' ORDER BY "place") FROM unnest(wanted) WITH ORDINALITY AS u("scope", "place") WHERE "scope" <> ALL(ship."scopes")), '');
|
|
45
|
+
removed := coalesce((SELECT string_agg("scope", ' ' ORDER BY "place") FROM unnest(ship."scopes") WITH ORDINALITY AS u("scope", "place") WHERE "scope" <> ALL(wanted)), '');
|
|
46
|
+
CONTINUE WHEN added = '' AND removed = '';
|
|
47
|
+
|
|
48
|
+
UPDATE "ships" SET "scopes" = wanted WHERE "id" = ship."id";
|
|
49
|
+
|
|
50
|
+
at := clock_timestamp();
|
|
51
|
+
millis := floor(extract(epoch FROM at) * 1000)::bigint;
|
|
52
|
+
body := '';
|
|
53
|
+
FOR position IN REVERSE 9..0 LOOP
|
|
54
|
+
body := body || substr(alphabet, ((millis >> (position * 5)) & 31)::integer + 1, 1);
|
|
55
|
+
END LOOP;
|
|
56
|
+
FOR position IN 1..16 LOOP
|
|
57
|
+
body := body || substr(alphabet, floor(random() * 32)::integer + 1, 1);
|
|
58
|
+
END LOOP;
|
|
59
|
+
|
|
60
|
+
UPDATE "fleets" SET "last_event_seq" = "last_event_seq" + 1 WHERE "id" = ship."fleet_id"
|
|
61
|
+
RETURNING "last_event_seq" INTO next_seq;
|
|
62
|
+
INSERT INTO "events" ("id", "fleet_id", "type", "occurred_at", "ship_id", "details", "seq")
|
|
63
|
+
VALUES ('evt_' || body, ship."fleet_id", 'ScopesChanged', at, ship."id", jsonb_build_object('added', added, 'removed', removed), next_seq);
|
|
64
|
+
END LOOP;
|
|
65
|
+
END;
|
|
66
|
+
$$;
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
-- fleet:on-behalf joins the core scopes (decision 0046): a ship reads on behalf of a named ship with it (decision 0034).
|
|
2
|
+
CREATE OR REPLACE FUNCTION "ships_scopes_are_known"("scopes" TEXT[]) RETURNS BOOLEAN IMMUTABLE LANGUAGE SQL AS $$
|
|
3
|
+
SELECT "scopes" IS NOT NULL AND NOT EXISTS (
|
|
4
|
+
SELECT 1 FROM unnest("scopes") AS "scope"
|
|
5
|
+
WHERE NOT (
|
|
6
|
+
"scope" = ANY(ARRAY['messages:send', 'messages:receive', 'messages:force', 'messages:resend', 'fleet:read', 'fleet:commission', 'fleet:manage', 'crew:assign', 'crew:run', 'labels:define', 'labels:assign', 'fleet:network', 'fleet:on-behalf', 'scopes:declare', 'scopes:grant']::TEXT[])
|
|
7
|
+
OR ("scope" ~ '^[a-z][a-z0-9-]{0,31}:[a-z][a-z0-9-]{0,31}$' AND split_part("scope", ':', 1) <> ALL(ARRAY['messages', 'fleet', 'crew', 'labels', 'scopes']::TEXT[]))
|
|
8
|
+
)
|
|
9
|
+
)
|
|
10
|
+
$$;
|
|
11
|
+
|
|
12
|
+
-- argo holds every scope, and squadrons reads on behalf of a person's ship (decision 0017): every argo and every
|
|
13
|
+
-- active squadrons ship gets fleet:on-behalf, its scopes kept in catalogue order, a plugin's own after them.
|
|
14
|
+
-- Every state change writes its event: each ship it changes gets
|
|
15
|
+
-- ScopesChanged, by the system, taking the next number of its fleet's stream. Its id is an evt_ id as
|
|
16
|
+
-- common/src/ids makes them: the time in milliseconds, then 80 random bits, in lowercase Crockford base32.
|
|
17
|
+
DO $$
|
|
18
|
+
DECLARE
|
|
19
|
+
alphabet CONSTANT text := '0123456789abcdefghjkmnpqrstvwxyz';
|
|
20
|
+
catalogue CONSTANT text[] := ARRAY['messages:send', 'messages:receive', 'messages:force', 'messages:resend', 'fleet:read', 'fleet:commission', 'fleet:manage', 'crew:assign', 'crew:run', 'labels:define', 'labels:assign', 'fleet:network', 'fleet:on-behalf', 'scopes:declare', 'scopes:grant'];
|
|
21
|
+
changed record;
|
|
22
|
+
at timestamptz;
|
|
23
|
+
millis bigint;
|
|
24
|
+
body text;
|
|
25
|
+
next_seq bigint;
|
|
26
|
+
BEGIN
|
|
27
|
+
FOR changed IN
|
|
28
|
+
UPDATE "ships" SET "scopes" = (
|
|
29
|
+
SELECT array_agg("scope" ORDER BY coalesce(array_position(catalogue, "scope"), cardinality(catalogue) + 1), "place")
|
|
30
|
+
FROM unnest(array_append("ships"."scopes", 'fleet:on-behalf')) WITH ORDINALITY AS u("scope", "place")
|
|
31
|
+
)
|
|
32
|
+
WHERE ("kind" = 'operator' OR "type" = 'squadrons') AND "retired_at" IS NULL AND NOT ('fleet:on-behalf' = ANY("scopes"))
|
|
33
|
+
RETURNING "fleet_id", "id"
|
|
34
|
+
LOOP
|
|
35
|
+
at := clock_timestamp();
|
|
36
|
+
millis := floor(extract(epoch FROM at) * 1000)::bigint;
|
|
37
|
+
body := '';
|
|
38
|
+
FOR position IN REVERSE 9..0 LOOP
|
|
39
|
+
body := body || substr(alphabet, ((millis >> (position * 5)) & 31)::integer + 1, 1);
|
|
40
|
+
END LOOP;
|
|
41
|
+
FOR position IN 1..16 LOOP
|
|
42
|
+
body := body || substr(alphabet, floor(random() * 32)::integer + 1, 1);
|
|
43
|
+
END LOOP;
|
|
44
|
+
|
|
45
|
+
UPDATE "fleets" SET "last_event_seq" = "last_event_seq" + 1 WHERE "id" = changed."fleet_id"
|
|
46
|
+
RETURNING "last_event_seq" INTO next_seq;
|
|
47
|
+
INSERT INTO "events" ("id", "fleet_id", "type", "occurred_at", "ship_id", "details", "seq")
|
|
48
|
+
VALUES (
|
|
49
|
+
'evt_' || body,
|
|
50
|
+
changed."fleet_id",
|
|
51
|
+
'ScopesChanged',
|
|
52
|
+
at,
|
|
53
|
+
changed."id",
|
|
54
|
+
jsonb_build_object('added', 'fleet:on-behalf', 'removed', ''),
|
|
55
|
+
next_seq
|
|
56
|
+
);
|
|
57
|
+
END LOOP;
|
|
58
|
+
END;
|
|
59
|
+
$$;
|
|
@@ -53,6 +53,7 @@ model Fleet {
|
|
|
53
53
|
shipLabels ShipLabel[]
|
|
54
54
|
networkSettings NetworkSettings?
|
|
55
55
|
declaredNetworkRules DeclaredNetworkRules[]
|
|
56
|
+
scopeNamespaces ScopeNamespace[]
|
|
56
57
|
reachRefusals ReachRefusal[]
|
|
57
58
|
credentials Credential[]
|
|
58
59
|
messages Message[]
|
|
@@ -68,11 +69,13 @@ model Fleet {
|
|
|
68
69
|
@@map("fleets")
|
|
69
70
|
}
|
|
70
71
|
|
|
71
|
-
///
|
|
72
|
+
/// What a ship is (decision 0044): argo the one operator, the viewer, an agent session, a person's ship or an app's.
|
|
72
73
|
enum ShipKind {
|
|
73
74
|
operator
|
|
74
75
|
agent
|
|
75
76
|
viewer
|
|
77
|
+
person
|
|
78
|
+
app
|
|
76
79
|
|
|
77
80
|
@@map("ship_kind")
|
|
78
81
|
}
|
|
@@ -93,8 +96,12 @@ model Ship {
|
|
|
93
96
|
commissionedBy String? @map("commissioned_by")
|
|
94
97
|
commissionKey String? @map("commission_key")
|
|
95
98
|
commissionRequestHash String? @map("commission_request_hash")
|
|
99
|
+
/// The ship that answers for it, a person's ship or argo (decision 0045); null for argo and the viewer.
|
|
100
|
+
ownerShipId String? @map("owner_ship_id")
|
|
96
101
|
|
|
97
102
|
fleet Fleet @relation(fields: [fleetId], references: [id])
|
|
103
|
+
owner Ship? @relation("ShipOwner", fields: [fleetId, ownerShipId], references: [fleetId, id], onDelete: Restrict)
|
|
104
|
+
ownedShips Ship[] @relation("ShipOwner")
|
|
98
105
|
leases Lease[]
|
|
99
106
|
credentials Credential[]
|
|
100
107
|
sentMessages Message[] @relation("MessageSender")
|
|
@@ -114,6 +121,7 @@ model Ship {
|
|
|
114
121
|
ownedLabels Label[] @relation("LabelOwner")
|
|
115
122
|
labels ShipLabel[] @relation("ShipLabelShip")
|
|
116
123
|
declaredNetworkRules DeclaredNetworkRules[]
|
|
124
|
+
declaredNamespace ScopeNamespace?
|
|
117
125
|
|
|
118
126
|
@@unique([fleetId, id])
|
|
119
127
|
/// An idempotency key is used once per commissioning ship.
|
|
@@ -124,6 +132,7 @@ model Ship {
|
|
|
124
132
|
@@unique([fleetId], map: "ships_fleet_id_operator_key", where: raw("kind = 'operator'::ship_kind"))
|
|
125
133
|
/// At most one viewer ship per fleet (decision 0022).
|
|
126
134
|
@@unique([fleetId], map: "ships_fleet_id_viewer_key", where: raw("kind = 'viewer'::ship_kind"))
|
|
135
|
+
@@index([fleetId, ownerShipId])
|
|
127
136
|
@@map("ships")
|
|
128
137
|
}
|
|
129
138
|
|
|
@@ -178,6 +187,10 @@ model Lease {
|
|
|
178
187
|
reportDetails Json? @map("report_details")
|
|
179
188
|
/// Moves by one each time the details change; 0 before any.
|
|
180
189
|
reportDetailsVersion Int @default(0) @map("report_details_version")
|
|
190
|
+
/// The crew's statement: what its ship is and offers, at most 64 KB, its shape common's; null until it states one (decision 0047).
|
|
191
|
+
statement Json?
|
|
192
|
+
/// Moves by one each time the statement changes; 0 before any.
|
|
193
|
+
statementVersion Int @default(0) @map("statement_version")
|
|
181
194
|
/// From the lease's first push receive: the computer side takes its deliveries, and the agent's plain receive answers nothing (decision 0040).
|
|
182
195
|
pushedAt DateTime? @map("pushed_at") @db.Timestamptz(3)
|
|
183
196
|
/// The session's turn as its hooks last reported it, and when they saw it change; null until they report (decision 0040).
|
|
@@ -350,7 +363,13 @@ model ShipLabel {
|
|
|
350
363
|
/// set take turns on an advisory lock on them (network.ts).
|
|
351
364
|
model NetworkSettings {
|
|
352
365
|
fleetId String @id @map("fleet_id")
|
|
353
|
-
rules Json
|
|
366
|
+
rules Json @default("[]")
|
|
367
|
+
/// The built-in rules that can be off (decision 0034): the viewer reading,
|
|
368
|
+
/// argo's, and open per verb, the networking plugin's. On at fleet create.
|
|
369
|
+
builtInViewerRead Boolean @default(true) @map("built_in_viewer_read")
|
|
370
|
+
builtInOpenSend Boolean @default(true) @map("built_in_open_send")
|
|
371
|
+
builtInOpenRead Boolean @default(true) @map("built_in_open_read")
|
|
372
|
+
builtInOpenManage Boolean @default(true) @map("built_in_open_manage")
|
|
354
373
|
version Int
|
|
355
374
|
/// The fleet's networking plugin (decision 0035): its ship and what it
|
|
356
375
|
/// declared, all three set or none.
|
|
@@ -378,6 +397,24 @@ model DeclaredNetworkRules {
|
|
|
378
397
|
@@map("declared_network_rules")
|
|
379
398
|
}
|
|
380
399
|
|
|
400
|
+
/// A plugin's namespace (decision 0046): taken up for good by the ship that
|
|
401
|
+
/// declared it, one per ship and unique in the fleet, with its whole list of
|
|
402
|
+
/// scopes and their descriptions as JSON, in order. It goes when its declarer
|
|
403
|
+
/// retires.
|
|
404
|
+
model ScopeNamespace {
|
|
405
|
+
fleetId String @map("fleet_id")
|
|
406
|
+
namespace String
|
|
407
|
+
declaredBy String @map("declared_by")
|
|
408
|
+
scopes Json
|
|
409
|
+
|
|
410
|
+
fleet Fleet @relation(fields: [fleetId], references: [id])
|
|
411
|
+
declarer Ship @relation(fields: [fleetId, declaredBy], references: [fleetId, id])
|
|
412
|
+
|
|
413
|
+
@@id([fleetId, namespace])
|
|
414
|
+
@@unique([fleetId, declaredBy])
|
|
415
|
+
@@map("scope_namespaces")
|
|
416
|
+
}
|
|
417
|
+
|
|
381
418
|
/// A send the network rules refused (decision 0034), recorded in the
|
|
382
419
|
/// transaction that refused it. Ids start with rfs_. Sender and recipient are
|
|
383
420
|
/// as they were then: ids, names and the label values they carried, as JSON,
|
|
@@ -387,7 +424,11 @@ model ReachRefusal {
|
|
|
387
424
|
fleetId String @map("fleet_id")
|
|
388
425
|
at DateTime @db.Timestamptz(3)
|
|
389
426
|
sender Json
|
|
427
|
+
/// The plugin ship that read on behalf of the sender (decision 0034); null for the sender's own call.
|
|
428
|
+
askedBy Json? @map("asked_by")
|
|
390
429
|
recipient Json
|
|
430
|
+
/// What the sender tried to do: send, read or manage (decision 0034).
|
|
431
|
+
verb String
|
|
391
432
|
settingsVersion Int @map("settings_version")
|
|
392
433
|
/// What the networking plugin declared, when it refused while the plugin
|
|
393
434
|
/// was not responding (decision 0035): block-all or keep-latest.
|
|
@@ -513,6 +554,8 @@ model Delivery {
|
|
|
513
554
|
handOverNumber Int? @map("hand_over_number")
|
|
514
555
|
/// When its crew handed it once more after the turn that took it died; only once (decision 0040).
|
|
515
556
|
handedOnceMoreAt DateTime? @map("handed_once_more_at") @db.Timestamptz(3)
|
|
557
|
+
/// Whether its message was forced: it comes first in receive and push receive (decision 0040).
|
|
558
|
+
isForced Boolean @default(false) @map("is_forced")
|
|
516
559
|
reachableShipIds String[] @default([]) @map("reachable_ship_ids")
|
|
517
560
|
readAt DateTime? @map("read_at") @db.Timestamptz(3)
|
|
518
561
|
createdAt DateTime @map("created_at") @db.Timestamptz(3)
|
|
@@ -609,6 +652,8 @@ model Event {
|
|
|
609
652
|
@@index([fleetId, shipId])
|
|
610
653
|
@@index([fleetId, messageId])
|
|
611
654
|
@@index([fleetId, deliveryId])
|
|
655
|
+
/// The health reads take a fleet's events since a time (decision 0042).
|
|
656
|
+
@@index([fleetId, occurredAt])
|
|
612
657
|
@@map("events")
|
|
613
658
|
}
|
|
614
659
|
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import type { Caller } from './caller.js';
|
|
2
|
-
import { type ShipHistory, type ShownNoShipCanTakeEntry } from './history.js';
|
|
3
|
-
export type ReadNoShipCanTake = (caller: Caller) => Promise<ShownNoShipCanTakeEntry[]>;
|
|
4
|
-
/**
|
|
5
|
-
* Use case: the pending deliveries of the caller's fleet to a type no active
|
|
6
|
-
* ship can take (decision 0041), oldest sent first, for Needs attention. Each
|
|
7
|
-
* clears by itself once a ship of the type can take it; there is nothing to
|
|
8
|
-
* resend or dismiss. The caller's scope (fleet:read) is checked before this
|
|
9
|
-
* runs.
|
|
10
|
-
*/
|
|
11
|
-
export declare function createReadNoShipCanTake(deps: {
|
|
12
|
-
history: ShipHistory;
|
|
13
|
-
}): ReadNoShipCanTake;
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { withPing } from './history.js';
|
|
2
|
-
/**
|
|
3
|
-
* Use case: the pending deliveries of the caller's fleet to a type no active
|
|
4
|
-
* ship can take (decision 0041), oldest sent first, for Needs attention. Each
|
|
5
|
-
* clears by itself once a ship of the type can take it; there is nothing to
|
|
6
|
-
* resend or dismiss. The caller's scope (fleet:read) is checked before this
|
|
7
|
-
* runs.
|
|
8
|
-
*/
|
|
9
|
-
export function createReadNoShipCanTake(deps) {
|
|
10
|
-
return async (caller) => (await deps.history.noShipCanTake(caller.fleetId)).map((entry) => ({ ...entry, message: withPing(entry.message) }));
|
|
11
|
-
}
|
|
12
|
-
//# sourceMappingURL=read-no-ship-can-take.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"read-no-ship-can-take.js","sourceRoot":"","sources":["../../../src/domain/shared/read-no-ship-can-take.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAAkD,MAAM,cAAc,CAAC;AAIxF;;;;;;GAMG;AACH,MAAM,UAAU,uBAAuB,CAAC,IAA8B;IACpE,OAAO,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,EAAE,OAAO,EAAE,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;AAC/I,CAAC"}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import type { Caller } from './caller.js';
|
|
2
|
-
import { type ShipHistory, type ShownOverdueEntry } from './history.js';
|
|
3
|
-
export type ReadOverdue = (caller: Caller) => Promise<ShownOverdueEntry[]>;
|
|
4
|
-
/**
|
|
5
|
-
* Use case: the deliveries of the caller's fleet argo was told are overdue by
|
|
6
|
-
* the 10 and 60 minute clocks (decision 0040), oldest told first, for Needs
|
|
7
|
-
* attention. Each clears by itself once its delivery leaves the state it was
|
|
8
|
-
* told in or its lease ends; there is nothing to resend or dismiss. The
|
|
9
|
-
* caller's scope (fleet:read) is checked before this runs.
|
|
10
|
-
*/
|
|
11
|
-
export declare function createReadOverdue(deps: {
|
|
12
|
-
history: ShipHistory;
|
|
13
|
-
}): ReadOverdue;
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { withPing } from './history.js';
|
|
2
|
-
/**
|
|
3
|
-
* Use case: the deliveries of the caller's fleet argo was told are overdue by
|
|
4
|
-
* the 10 and 60 minute clocks (decision 0040), oldest told first, for Needs
|
|
5
|
-
* attention. Each clears by itself once its delivery leaves the state it was
|
|
6
|
-
* told in or its lease ends; there is nothing to resend or dismiss. The
|
|
7
|
-
* caller's scope (fleet:read) is checked before this runs.
|
|
8
|
-
*/
|
|
9
|
-
export function createReadOverdue(deps) {
|
|
10
|
-
return async (caller) => (await deps.history.overdue(caller.fleetId)).map((entry) => ({ ...entry, message: withPing(entry.message) }));
|
|
11
|
-
}
|
|
12
|
-
//# sourceMappingURL=read-overdue.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"read-overdue.js","sourceRoot":"","sources":["../../../src/domain/shared/read-overdue.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,QAAQ,EAA4C,MAAM,cAAc,CAAC;AAIlF;;;;;;GAMG;AACH,MAAM,UAAU,iBAAiB,CAAC,IAA8B;IAC9D,OAAO,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,EAAE,OAAO,EAAE,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;AACzI,CAAC"}
|