@aeolus-fleet/core 0.27.1 → 0.28.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/dist/adapters/crypto/account-token-signatures.d.ts +12 -0
- package/dist/adapters/crypto/account-token-signatures.js +104 -0
- package/dist/adapters/crypto/account-token-signatures.js.map +1 -0
- package/dist/adapters/http/request-credentials.d.ts +7 -1
- package/dist/adapters/http/request-credentials.js +18 -5
- package/dist/adapters/http/request-credentials.js.map +1 -1
- package/dist/adapters/http/server.js +4 -2
- package/dist/adapters/http/server.js.map +1 -1
- package/dist/adapters/prisma/event-log.js +13 -1
- package/dist/adapters/prisma/event-log.js.map +1 -1
- package/dist/adapters/prisma/generated/browser.d.ts +30 -0
- package/dist/adapters/prisma/generated/client.d.ts +30 -0
- package/dist/adapters/prisma/generated/commonInputTypes.d.ts +120 -0
- package/dist/adapters/prisma/generated/enums.d.ts +25 -0
- package/dist/adapters/prisma/generated/enums.js +22 -1
- package/dist/adapters/prisma/generated/enums.js.map +1 -1
- package/dist/adapters/prisma/generated/internal/class.d.ts +44 -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 +372 -9
- package/dist/adapters/prisma/generated/internal/prismaNamespace.js +38 -11
- package/dist/adapters/prisma/generated/internal/prismaNamespace.js.map +1 -1
- package/dist/adapters/prisma/generated/internal/prismaNamespaceBrowser.d.ts +39 -8
- package/dist/adapters/prisma/generated/internal/prismaNamespaceBrowser.js +38 -11
- package/dist/adapters/prisma/generated/internal/prismaNamespaceBrowser.js.map +1 -1
- package/dist/adapters/prisma/generated/models/AccountCutOff.d.ts +944 -0
- package/dist/adapters/prisma/generated/models/AccountCutOff.js +2 -0
- package/dist/adapters/prisma/generated/models/AccountCutOff.js.map +1 -0
- package/dist/adapters/prisma/generated/models/ConsoleSession.d.ts +59 -1
- package/dist/adapters/prisma/generated/models/Event.d.ts +426 -1
- package/dist/adapters/prisma/generated/models/Fleet.d.ts +871 -0
- package/dist/adapters/prisma/generated/models/InstallationDeclaredNetworkRules.d.ts +1031 -0
- package/dist/adapters/prisma/generated/models/InstallationDeclaredNetworkRules.js +2 -0
- package/dist/adapters/prisma/generated/models/InstallationDeclaredNetworkRules.js.map +1 -0
- package/dist/adapters/prisma/generated/models/Label.d.ts +113 -39
- package/dist/adapters/prisma/generated/models/NetworkRulesDraft.d.ts +1133 -0
- package/dist/adapters/prisma/generated/models/NetworkRulesDraft.js +2 -0
- package/dist/adapters/prisma/generated/models/NetworkRulesDraft.js.map +1 -0
- package/dist/adapters/prisma/generated/models/NetworkSettings.d.ts +24 -255
- package/dist/adapters/prisma/generated/models/ReachRefusal.d.ts +1 -40
- package/dist/adapters/prisma/generated/models/Ship.d.ts +782 -6
- package/dist/adapters/prisma/generated/models/SignInTicket.d.ts +39 -1
- package/dist/adapters/prisma/generated/models/VerifiedFacts.d.ts +1325 -0
- package/dist/adapters/prisma/generated/models/VerifiedFacts.js +2 -0
- package/dist/adapters/prisma/generated/models/VerifiedFacts.js.map +1 -0
- package/dist/adapters/prisma/generated/models.d.ts +4 -0
- package/dist/adapters/prisma/history.js +1 -0
- package/dist/adapters/prisma/history.js.map +1 -1
- package/dist/adapters/prisma/identity.d.ts +3 -1
- package/dist/adapters/prisma/identity.js +41 -8
- package/dist/adapters/prisma/identity.js.map +1 -1
- package/dist/adapters/prisma/network.d.ts +7 -2
- package/dist/adapters/prisma/network.js +92 -65
- package/dist/adapters/prisma/network.js.map +1 -1
- package/dist/adapters/prisma/registry.js +19 -14
- package/dist/adapters/prisma/registry.js.map +1 -1
- package/dist/adapters/prisma/rows.d.ts +9 -4
- package/dist/adapters/prisma/rows.js +75 -19
- package/dist/adapters/prisma/rows.js.map +1 -1
- package/dist/adapters/prisma/unit-of-work.d.ts +4 -2
- package/dist/adapters/prisma/unit-of-work.js +5 -2
- package/dist/adapters/prisma/unit-of-work.js.map +1 -1
- package/dist/adapters/prisma/verified-facts.d.ts +4 -0
- package/dist/adapters/prisma/verified-facts.js +65 -0
- package/dist/adapters/prisma/verified-facts.js.map +1 -0
- 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 +3 -1
- package/dist/adapters/trpc/context.d.ts +22 -8
- package/dist/adapters/trpc/fleet.d.ts +259 -52
- package/dist/adapters/trpc/fleet.js +121 -84
- package/dist/adapters/trpc/fleet.js.map +1 -1
- package/dist/adapters/trpc/installation-token.d.ts +7 -0
- package/dist/adapters/trpc/installation-token.js +10 -0
- package/dist/adapters/trpc/installation-token.js.map +1 -0
- package/dist/adapters/trpc/installation.d.ts +32 -2
- package/dist/adapters/trpc/installation.js +14 -10
- package/dist/adapters/trpc/installation.js.map +1 -1
- package/dist/adapters/trpc/router.d.ts +307 -43
- package/dist/adapters/trpc/ship-contract.js +6 -4
- package/dist/adapters/trpc/ship-contract.js.map +1 -1
- package/dist/adapters/trpc/ship.d.ts +32 -1
- package/dist/adapters/trpc/ship.js +4 -2
- package/dist/adapters/trpc/ship.js.map +1 -1
- package/dist/adapters/trpc/trpc.d.ts +36 -13
- package/dist/adapters/trpc/trpc.js +117 -26
- package/dist/adapters/trpc/trpc.js.map +1 -1
- package/dist/app.d.ts +2 -0
- package/dist/app.js +22 -0
- package/dist/app.js.map +1 -1
- package/dist/config.d.ts +5 -0
- package/dist/config.js +3 -1
- package/dist/config.js.map +1 -1
- package/dist/domain/identity/authenticate-account.d.ts +35 -0
- package/dist/domain/identity/authenticate-account.js +54 -0
- package/dist/domain/identity/authenticate-account.js.map +1 -0
- package/dist/domain/identity/authenticate-installation.d.ts +23 -0
- package/dist/domain/identity/authenticate-installation.js +20 -0
- package/dist/domain/identity/authenticate-installation.js.map +1 -0
- package/dist/domain/identity/authenticate.d.ts +2 -2
- package/dist/domain/identity/console-session.d.ts +6 -3
- package/dist/domain/identity/console-session.js.map +1 -1
- package/dist/domain/identity/cut-off-account.d.ts +29 -0
- package/dist/domain/identity/cut-off-account.js +37 -0
- package/dist/domain/identity/cut-off-account.js.map +1 -0
- package/dist/domain/identity/dismiss-notice.d.ts +2 -2
- package/dist/domain/identity/issue-sign-in-ticket.d.ts +9 -3
- package/dist/domain/identity/issue-sign-in-ticket.js +8 -2
- package/dist/domain/identity/issue-sign-in-ticket.js.map +1 -1
- package/dist/domain/identity/ports.d.ts +52 -5
- package/dist/domain/identity/read-account.d.ts +8 -4
- package/dist/domain/identity/read-account.js +1 -1
- package/dist/domain/identity/read-account.js.map +1 -1
- package/dist/domain/identity/read-guide.d.ts +2 -2
- package/dist/domain/identity/read-notices.d.ts +2 -2
- package/dist/domain/identity/record-guide-progress.d.ts +2 -2
- package/dist/domain/identity/redeem-sign-in-ticket.d.ts +2 -1
- package/dist/domain/identity/redeem-sign-in-ticket.js +3 -2
- package/dist/domain/identity/redeem-sign-in-ticket.js.map +1 -1
- package/dist/domain/identity/set-theme.d.ts +2 -2
- package/dist/domain/identity/sign-in-ticket.d.ts +3 -1
- package/dist/domain/identity/sign-in.d.ts +2 -2
- package/dist/domain/identity/sign-in.js +2 -0
- package/dist/domain/identity/sign-in.js.map +1 -1
- package/dist/domain/identity/sign-out.d.ts +2 -2
- package/dist/domain/identity/sign-out.js +1 -1
- package/dist/domain/identity/sign-out.js.map +1 -1
- package/dist/domain/identity/start-console-session.d.ts +4 -2
- package/dist/domain/identity/start-console-session.js +6 -4
- package/dist/domain/identity/start-console-session.js.map +1 -1
- package/dist/domain/identity/start-viewer-session.js +1 -0
- package/dist/domain/identity/start-viewer-session.js.map +1 -1
- package/dist/domain/messaging/delivery.d.ts +3 -1
- package/dist/domain/messaging/delivery.js +9 -6
- package/dist/domain/messaging/delivery.js.map +1 -1
- package/dist/domain/messaging/dismiss-delivery.d.ts +2 -2
- package/dist/domain/messaging/message.d.ts +3 -1
- package/dist/domain/messaging/message.js +1 -1
- package/dist/domain/messaging/message.js.map +1 -1
- package/dist/domain/messaging/ping-ship.d.ts +2 -2
- package/dist/domain/messaging/ping-ship.js +1 -1
- package/dist/domain/messaging/ping-ship.js.map +1 -1
- package/dist/domain/messaging/resend-delivery.d.ts +2 -2
- package/dist/domain/messaging/resend-delivery.js +1 -0
- package/dist/domain/messaging/resend-delivery.js.map +1 -1
- package/dist/domain/messaging/send-message.d.ts +3 -3
- package/dist/domain/messaging/send-message.js +1 -0
- package/dist/domain/messaging/send-message.js.map +1 -1
- package/dist/domain/registry/apply-network-rules.d.ts +32 -0
- package/dist/domain/registry/apply-network-rules.js +33 -0
- package/dist/domain/registry/apply-network-rules.js.map +1 -0
- package/dist/domain/registry/assign-crew.d.ts +2 -2
- package/dist/domain/registry/assign-crew.js +3 -2
- package/dist/domain/registry/assign-crew.js.map +1 -1
- package/dist/domain/registry/assign-label.d.ts +7 -5
- package/dist/domain/registry/assign-label.js +16 -6
- package/dist/domain/registry/assign-label.js.map +1 -1
- package/dist/domain/registry/change-label-values.d.ts +1 -1
- package/dist/domain/registry/change-label-values.js +4 -3
- package/dist/domain/registry/change-label-values.js.map +1 -1
- package/dist/domain/registry/check-reach.d.ts +45 -24
- package/dist/domain/registry/check-reach.js +76 -42
- package/dist/domain/registry/check-reach.js.map +1 -1
- package/dist/domain/registry/clear-request.d.ts +1 -1
- package/dist/domain/registry/clear-request.js +1 -1
- package/dist/domain/registry/clear-request.js.map +1 -1
- package/dist/domain/registry/commission-ship.d.ts +23 -14
- package/dist/domain/registry/commission-ship.js +167 -21
- package/dist/domain/registry/commission-ship.js.map +1 -1
- package/dist/domain/registry/confirm-crew-release.d.ts +2 -2
- package/dist/domain/registry/confirm-crew-release.js +3 -2
- package/dist/domain/registry/confirm-crew-release.js.map +1 -1
- package/dist/domain/registry/confirm-worktree-cleared.d.ts +2 -2
- package/dist/domain/registry/confirm-worktree-cleared.js +3 -2
- package/dist/domain/registry/confirm-worktree-cleared.js.map +1 -1
- package/dist/domain/registry/connect-plugin.d.ts +5 -4
- package/dist/domain/registry/connect-plugin.js +6 -7
- package/dist/domain/registry/connect-plugin.js.map +1 -1
- package/dist/domain/registry/crew-request.d.ts +2 -2
- package/dist/domain/registry/crew-request.js.map +1 -1
- package/dist/domain/registry/declare-network-rules.d.ts +9 -6
- package/dist/domain/registry/declare-network-rules.js +13 -8
- package/dist/domain/registry/declare-network-rules.js.map +1 -1
- package/dist/domain/registry/declare-scopes.d.ts +2 -2
- package/dist/domain/registry/declared-network-rules.d.ts +30 -21
- package/dist/domain/registry/declared-network-rules.js +46 -22
- package/dist/domain/registry/declared-network-rules.js.map +1 -1
- package/dist/domain/registry/define-label.d.ts +1 -1
- package/dist/domain/registry/define-label.js +5 -5
- package/dist/domain/registry/define-label.js.map +1 -1
- package/dist/domain/registry/delete-label.d.ts +1 -1
- package/dist/domain/registry/delete-label.js +4 -3
- package/dist/domain/registry/delete-label.js.map +1 -1
- package/dist/domain/registry/discard-network-rules-draft.d.ts +23 -0
- package/dist/domain/registry/discard-network-rules-draft.js +24 -0
- package/dist/domain/registry/discard-network-rules-draft.js.map +1 -0
- package/dist/domain/registry/discover.d.ts +11 -10
- package/dist/domain/registry/discover.js +11 -5
- package/dist/domain/registry/discover.js.map +1 -1
- package/dist/domain/registry/explain-crew-request.d.ts +2 -2
- package/dist/domain/registry/explain-crew-request.js +3 -2
- package/dist/domain/registry/explain-crew-request.js.map +1 -1
- package/dist/domain/registry/explain-reach.d.ts +21 -14
- package/dist/domain/registry/explain-reach.js +53 -53
- package/dist/domain/registry/explain-reach.js.map +1 -1
- package/dist/domain/registry/get-ship.d.ts +2 -2
- package/dist/domain/registry/get-starting-prompt.d.ts +4 -2
- package/dist/domain/registry/get-starting-prompt.js +7 -5
- package/dist/domain/registry/get-starting-prompt.js.map +1 -1
- package/dist/domain/registry/give-back-crew-request.d.ts +2 -2
- package/dist/domain/registry/give-back-crew-request.js +3 -2
- package/dist/domain/registry/give-back-crew-request.js.map +1 -1
- package/dist/domain/registry/grant-scopes.d.ts +8 -5
- package/dist/domain/registry/grant-scopes.js +14 -5
- package/dist/domain/registry/grant-scopes.js.map +1 -1
- package/dist/domain/registry/label.d.ts +69 -18
- package/dist/domain/registry/label.js +79 -28
- package/dist/domain/registry/label.js.map +1 -1
- package/dist/domain/registry/lease.d.ts +1 -1
- package/dist/domain/registry/list-fleet.d.ts +2 -0
- package/dist/domain/registry/list-fleet.js +1 -0
- package/dist/domain/registry/list-fleet.js.map +1 -1
- package/dist/domain/registry/list-scopes.d.ts +2 -1
- package/dist/domain/registry/list-scopes.js +2 -1
- package/dist/domain/registry/list-scopes.js.map +1 -1
- package/dist/domain/registry/managed-or-assigned.d.ts +12 -4
- package/dist/domain/registry/managed-or-assigned.js +25 -7
- package/dist/domain/registry/managed-or-assigned.js.map +1 -1
- package/dist/domain/registry/network-rules-draft.d.ts +45 -0
- package/dist/domain/registry/network-rules-draft.js +41 -0
- package/dist/domain/registry/network-rules-draft.js.map +1 -0
- package/dist/domain/registry/network-settings.d.ts +92 -122
- package/dist/domain/registry/network-settings.js +99 -159
- package/dist/domain/registry/network-settings.js.map +1 -1
- package/dist/domain/registry/ports.d.ts +47 -11
- package/dist/domain/registry/reach-refusal.d.ts +18 -4
- package/dist/domain/registry/read-assigned-crew-requests.d.ts +2 -2
- package/dist/domain/registry/read-built-in-rules.d.ts +4 -3
- package/dist/domain/registry/read-built-in-rules.js +7 -6
- package/dist/domain/registry/read-built-in-rules.js.map +1 -1
- package/dist/domain/registry/read-clear-requests.d.ts +2 -2
- package/dist/domain/registry/read-clear-requests.js.map +1 -1
- package/dist/domain/registry/read-declared-network-rules.d.ts +5 -5
- package/dist/domain/registry/read-declared-network-rules.js +4 -4
- package/dist/domain/registry/read-declared-network-rules.js.map +1 -1
- package/dist/domain/registry/read-network-rules-draft-changes.d.ts +22 -0
- package/dist/domain/registry/read-network-rules-draft-changes.js +53 -0
- package/dist/domain/registry/read-network-rules-draft-changes.js.map +1 -0
- package/dist/domain/registry/read-network-rules.d.ts +30 -0
- package/dist/domain/registry/read-network-rules.js +18 -0
- package/dist/domain/registry/read-network-rules.js.map +1 -0
- package/dist/domain/registry/read-on-behalf.d.ts +3 -3
- package/dist/domain/registry/read-on-behalf.js.map +1 -1
- package/dist/domain/registry/read-reach-refusals.d.ts +6 -5
- package/dist/domain/registry/read-reach-refusals.js +13 -8
- package/dist/domain/registry/read-reach-refusals.js.map +1 -1
- package/dist/domain/registry/read-reach.d.ts +6 -8
- package/dist/domain/registry/read-reach.js +21 -16
- package/dist/domain/registry/read-reach.js.map +1 -1
- package/dist/domain/registry/recrew-ship.d.ts +2 -2
- package/dist/domain/registry/recrew-ship.js +3 -3
- package/dist/domain/registry/recrew-ship.js.map +1 -1
- package/dist/domain/registry/release-ship.d.ts +3 -2
- package/dist/domain/registry/release-ship.js +4 -3
- package/dist/domain/registry/release-ship.js.map +1 -1
- package/dist/domain/registry/remove-crew-request.d.ts +2 -2
- package/dist/domain/registry/remove-crew-request.js +4 -3
- package/dist/domain/registry/remove-crew-request.js.map +1 -1
- package/dist/domain/registry/rename-ship.d.ts +1 -1
- package/dist/domain/registry/rename-ship.js +4 -3
- package/dist/domain/registry/rename-ship.js.map +1 -1
- package/dist/domain/registry/report-crew-status.d.ts +2 -2
- package/dist/domain/registry/report-crew-status.js +3 -2
- package/dist/domain/registry/report-crew-status.js.map +1 -1
- package/dist/domain/registry/request-crew.d.ts +3 -3
- package/dist/domain/registry/request-crew.js +4 -3
- package/dist/domain/registry/request-crew.js.map +1 -1
- package/dist/domain/registry/request-worktree-clear.d.ts +2 -2
- package/dist/domain/registry/request-worktree-clear.js +4 -3
- package/dist/domain/registry/request-worktree-clear.js.map +1 -1
- package/dist/domain/registry/retire-ship.d.ts +16 -12
- package/dist/domain/registry/retire-ship.js +28 -21
- package/dist/domain/registry/retire-ship.js.map +1 -1
- package/dist/domain/registry/save-network-rules-draft.d.ts +31 -0
- package/dist/domain/registry/save-network-rules-draft.js +27 -0
- package/dist/domain/registry/save-network-rules-draft.js.map +1 -0
- package/dist/domain/registry/scope-grant.d.ts +19 -19
- package/dist/domain/registry/scope-grant.js +8 -9
- package/dist/domain/registry/scope-grant.js.map +1 -1
- package/dist/domain/registry/set-built-in-rule.d.ts +3 -3
- package/dist/domain/registry/set-built-in-rule.js +5 -9
- package/dist/domain/registry/set-built-in-rule.js.map +1 -1
- package/dist/domain/registry/set-owner.d.ts +9 -6
- package/dist/domain/registry/set-owner.js +14 -8
- package/dist/domain/registry/set-owner.js.map +1 -1
- package/dist/domain/registry/set-verified-facts.d.ts +36 -0
- package/dist/domain/registry/set-verified-facts.js +58 -0
- package/dist/domain/registry/set-verified-facts.js.map +1 -0
- package/dist/domain/registry/ship.d.ts +52 -18
- package/dist/domain/registry/ship.js +76 -18
- package/dist/domain/registry/ship.js.map +1 -1
- package/dist/domain/registry/statement.d.ts +2 -2
- package/dist/domain/registry/statement.js +2 -2
- package/dist/domain/registry/statement.js.map +1 -1
- package/dist/domain/registry/turn.d.ts +2 -2
- package/dist/domain/registry/turn.js +2 -2
- package/dist/domain/registry/turn.js.map +1 -1
- package/dist/domain/registry/unassign-label.d.ts +8 -5
- package/dist/domain/registry/unassign-label.js +17 -6
- package/dist/domain/registry/unassign-label.js.map +1 -1
- package/dist/domain/registry/verified-facts.d.ts +75 -0
- package/dist/domain/registry/verified-facts.js +107 -0
- package/dist/domain/registry/verified-facts.js.map +1 -0
- package/dist/domain/registry/whoami.d.ts +2 -2
- package/dist/domain/shared/caller.d.ts +40 -6
- package/dist/domain/shared/caller.js +20 -0
- 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.d.ts +13 -2
- package/dist/domain/shared/events.js.map +1 -1
- package/dist/domain/shared/history.d.ts +3 -1
- package/dist/domain/shared/history.js.map +1 -1
- package/dist/domain/shared/read-fleet-limits.d.ts +2 -2
- package/dist/domain/shared/read-health.d.ts +2 -2
- package/dist/domain/shared/read-inbox.d.ts +2 -2
- package/dist/domain/shared/read-message.d.ts +2 -2
- package/dist/domain/shared/read-needs-attention.d.ts +2 -2
- package/dist/domain/shared/read-sent-message.d.ts +2 -2
- package/dist/domain/shared/read-ship-messages.d.ts +2 -2
- package/dist/domain/shared/read-ship-timeline.d.ts +2 -2
- package/dist/domain/shared/read-ship-way.d.ts +2 -2
- package/dist/domain/shared/read-ship-way.js +1 -1
- package/dist/domain/shared/read-ship-way.js.map +1 -1
- package/dist/start.js +1 -0
- package/dist/start.js.map +1 -1
- package/dist/testing/account-token-issuer.d.ts +30 -0
- package/dist/testing/account-token-issuer.js +48 -0
- package/dist/testing/account-token-issuer.js.map +1 -0
- package/dist/testing/fleet.d.ts +2 -2
- package/dist/testing/index.d.ts +1 -1
- package/dist/wiring.d.ts +21 -8
- package/dist/wiring.js +32 -13
- package/dist/wiring.js.map +1 -1
- package/package.json +2 -5
- package/src/adapters/prisma/migrations/20261019200000_account_cut_offs/migration.sql +10 -0
- package/src/adapters/prisma/migrations/20261019210000_event_actors/migration.sql +32 -0
- package/src/adapters/prisma/migrations/20261020090000_argos_jobs_as_scopes/migration.sql +65 -0
- package/src/adapters/prisma/migrations/20261020100000_installation_labels/migration.sql +7 -0
- package/src/adapters/prisma/migrations/20261020110000_installation_declared_network_rules/migration.sql +10 -0
- package/src/adapters/prisma/migrations/20261020120000_commissioning_actors/migration.sql +14 -0
- package/src/adapters/prisma/migrations/20261020130000_console_sign_in_accounts/migration.sql +4 -0
- package/src/adapters/prisma/migrations/20261020140000_event_signed_in_accounts/migration.sql +4 -0
- package/src/adapters/prisma/migrations/20261020150000_account_cut_off_ends_console_sessions/migration.sql +2 -0
- package/src/adapters/prisma/migrations/20261020160000_network_in_core/migration.sql +30 -0
- package/src/adapters/prisma/migrations/20261020170000_verify_scope/migration.sql +64 -0
- package/src/adapters/prisma/migrations/20261020180000_verified_facts/migration.sql +21 -0
- package/src/adapters/prisma/migrations/20261020190000_verified_facts_by_writer/migration.sql +3 -0
- package/src/adapters/prisma/schema.prisma +132 -23
- package/dist/domain/registry/read-network-plugin.d.ts +0 -23
- package/dist/domain/registry/read-network-plugin.js +0 -15
- package/dist/domain/registry/read-network-plugin.js.map +0 -1
- package/dist/domain/registry/register-network-plugin.d.ts +0 -28
- package/dist/domain/registry/register-network-plugin.js +0 -26
- package/dist/domain/registry/register-network-plugin.js.map +0 -1
- package/dist/domain/registry/set-network-rules.d.ts +0 -31
- package/dist/domain/registry/set-network-rules.js +0 -27
- package/dist/domain/registry/set-network-rules.js.map +0 -1
- package/dist/domain/registry/unregister-network-plugin.d.ts +0 -27
- package/dist/domain/registry/unregister-network-plugin.js +0 -25
- package/dist/domain/registry/unregister-network-plugin.js.map +0 -1
|
@@ -5,8 +5,9 @@ import { createPrismaCallerLookup, createPrismaConsoleSessionRepository, createP
|
|
|
5
5
|
import { createPrismaInstallationRequestRepository, createPrismaInstallationSettings } from './installation.js';
|
|
6
6
|
import { createPrismaDeliveryRepository, createPrismaMessageRepository } from './messaging.js';
|
|
7
7
|
import { createPrismaOverdueDeliveryRepository } from './overdue.js';
|
|
8
|
-
import { createPrismaDeclaredNetworkRulesRepository, createPrismaNetworkSettingsRepository, createPrismaReachRefusalRepository } from './network.js';
|
|
8
|
+
import { createPrismaDeclaredNetworkRulesRepository, createPrismaNetworkRulesDraftRepository, createPrismaNetworkSettingsRepository, createPrismaReachRefusalRepository } from './network.js';
|
|
9
9
|
import { createPrismaPluginConnectionRepository } from './plugin-connections.js';
|
|
10
|
+
import { createPrismaVerifiedFactsRepository } from './verified-facts.js';
|
|
10
11
|
import { createPrismaScopeNamespaceRepository } from './scope-namespaces.js';
|
|
11
12
|
import { createPrismaClearRequestRepository, createPrismaCrewRequestRepository, createPrismaFleetRepository, createPrismaInFlightDeliveries, createPrismaLabelRepository, createPrismaLeaseRepository, createPrismaShipRepository, } from './registry.js';
|
|
12
13
|
export function createPrismaTx(db) {
|
|
@@ -19,8 +20,10 @@ export function createPrismaTx(db) {
|
|
|
19
20
|
labels: createPrismaLabelRepository(db),
|
|
20
21
|
networkSettings: createPrismaNetworkSettingsRepository(db),
|
|
21
22
|
declaredNetworkRules: createPrismaDeclaredNetworkRulesRepository(db),
|
|
23
|
+
networkRulesDrafts: createPrismaNetworkRulesDraftRepository(db),
|
|
22
24
|
scopeNamespaces: createPrismaScopeNamespaceRepository(db),
|
|
23
25
|
pluginConnections: createPrismaPluginConnectionRepository(db),
|
|
26
|
+
verifiedFacts: createPrismaVerifiedFactsRepository(db),
|
|
24
27
|
reachRefusals: createPrismaReachRefusalRepository(db),
|
|
25
28
|
inFlightDeliveries: createPrismaInFlightDeliveries(db),
|
|
26
29
|
credentials: createPrismaCredentialRepository(db),
|
|
@@ -80,7 +83,7 @@ function createUnitOfWork(prisma, options) {
|
|
|
80
83
|
},
|
|
81
84
|
};
|
|
82
85
|
}
|
|
83
|
-
/**
|
|
86
|
+
/** ShipCaller lookups run outside a unit of work: each is one statement. */
|
|
84
87
|
export function createPrismaCallers(prisma) {
|
|
85
88
|
return createPrismaCallerLookup(prisma);
|
|
86
89
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"unit-of-work.js","sourceRoot":"","sources":["../../../src/adapters/prisma/unit-of-work.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"unit-of-work.js","sourceRoot":"","sources":["../../../src/adapters/prisma/unit-of-work.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { VerifiedFactsRepository } from '../../domain/registry/ports.js';
|
|
2
|
+
import type { Db } from './client.js';
|
|
3
|
+
/** Each writer's verified facts about a ship, on Postgres (decision 0059). */
|
|
4
|
+
export declare function createPrismaVerifiedFactsRepository(db: Db): VerifiedFactsRepository;
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import { accountIdSchema, idSchema, verifiedFactSchema } from '@aeolus-fleet/common';
|
|
2
|
+
import { z } from 'zod';
|
|
3
|
+
/** The columns that name a writer; the installation, which has no id, by its name. */
|
|
4
|
+
function writerColumns(writer) {
|
|
5
|
+
switch (writer.kind) {
|
|
6
|
+
case 'ship':
|
|
7
|
+
return { writerKind: writer.kind, writer: writer.shipId };
|
|
8
|
+
case 'account':
|
|
9
|
+
return { writerKind: writer.kind, writer: writer.accountId };
|
|
10
|
+
case 'installation':
|
|
11
|
+
return { writerKind: writer.kind, writer: 'installation' };
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
/** The writer from its two columns. */
|
|
15
|
+
function writerOf(kind, writer) {
|
|
16
|
+
switch (kind) {
|
|
17
|
+
case 'ship':
|
|
18
|
+
return { kind, shipId: idSchema('ship').parse(writer) };
|
|
19
|
+
case 'account':
|
|
20
|
+
return { kind, accountId: accountIdSchema.parse(writer) };
|
|
21
|
+
case 'installation':
|
|
22
|
+
return { kind };
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
const factsSchema = z.array(verifiedFactSchema);
|
|
26
|
+
function writtenOf(row) {
|
|
27
|
+
return {
|
|
28
|
+
fleetId: idSchema('fleet').parse(row.fleetId),
|
|
29
|
+
shipId: idSchema('ship').parse(row.shipId),
|
|
30
|
+
writer: writerOf(row.writerKind, row.writer),
|
|
31
|
+
facts: factsSchema.parse(row.facts),
|
|
32
|
+
at: row.writtenAt,
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
/** Each writer's verified facts about a ship, on Postgres (decision 0059). */
|
|
36
|
+
export function createPrismaVerifiedFactsRepository(db) {
|
|
37
|
+
return {
|
|
38
|
+
find: async (fleetId, { shipId, writer }) => {
|
|
39
|
+
const row = await db.verifiedFacts.findUnique({ where: { fleetId_shipId_writerKind_writer: { fleetId, shipId, ...writerColumns(writer) } } });
|
|
40
|
+
return row === null ? undefined : writtenOf(row);
|
|
41
|
+
},
|
|
42
|
+
save: async ({ fleetId, shipId, writer, facts, at }) => {
|
|
43
|
+
const key = { fleetId, shipId, ...writerColumns(writer) };
|
|
44
|
+
await db.verifiedFacts.upsert({
|
|
45
|
+
where: { fleetId_shipId_writerKind_writer: key },
|
|
46
|
+
create: { ...key, facts: [...facts], writtenAt: at },
|
|
47
|
+
update: { facts: [...facts], writtenAt: at },
|
|
48
|
+
});
|
|
49
|
+
},
|
|
50
|
+
list: async (fleetId) => (await db.verifiedFacts.findMany({ where: { fleetId } })).map(writtenOf),
|
|
51
|
+
listAbout: async (fleetId, shipId) => (await db.verifiedFacts.findMany({ where: { fleetId, shipId }, orderBy: [{ writtenAt: 'asc' }, { writerKind: 'asc' }, { writer: 'asc' }, { shipId: 'asc' }] })).map(writtenOf),
|
|
52
|
+
listBy: async (fleetId, shipId) => (await db.verifiedFacts.findMany({ where: { fleetId, writerKind: 'ship', writer: shipId }, orderBy: [{ writtenAt: 'asc' }, { writerKind: 'asc' }, { writer: 'asc' }, { shipId: 'asc' }] })).map(writtenOf),
|
|
53
|
+
// A transaction-level advisory lock on the fleet and the writer ship: shared for a set by it, exclusive for its retire.
|
|
54
|
+
holdWriter: async (fleetId, shipId) => {
|
|
55
|
+
await db.$executeRaw `SELECT pg_advisory_xact_lock_shared(hashtext(${fleetId}), hashtext(${`verified-facts-writer:${shipId}`}))`;
|
|
56
|
+
},
|
|
57
|
+
lockWriter: async (fleetId, shipId) => {
|
|
58
|
+
await db.$executeRaw `SELECT pg_advisory_xact_lock(hashtext(${fleetId}), hashtext(${`verified-facts-writer:${shipId}`}))`;
|
|
59
|
+
},
|
|
60
|
+
remove: async (fleetId, { shipId, writer }) => {
|
|
61
|
+
await db.verifiedFacts.deleteMany({ where: { fleetId, shipId, ...writerColumns(writer) } });
|
|
62
|
+
},
|
|
63
|
+
};
|
|
64
|
+
}
|
|
65
|
+
//# sourceMappingURL=verified-facts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"verified-facts.js","sourceRoot":"","sources":["../../../src/adapters/prisma/verified-facts.ts"],"names":[],"mappings":"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"}
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
* console session cookie is never read here: REST is a door for ships.
|
|
11
11
|
*/
|
|
12
12
|
import fastifyApiReference from '@scalar/fastify-api-reference';
|
|
13
|
-
import { readBearer, readOnBehalfOf } from '../http/request-credentials.js';
|
|
13
|
+
import { readAccountToken, readBearer, readOnBehalfOf } from '../http/request-credentials.js';
|
|
14
14
|
import { callShip, refusalBody, SHIP_CALLS, unexpectedFailure } from '../trpc/ship-contract.js';
|
|
15
15
|
import { API_TITLE, openApiDocument } from './openapi.js';
|
|
16
16
|
const PREFIX = '/api/v1';
|
|
@@ -41,7 +41,7 @@ export function registerRestApi(server, options) {
|
|
|
41
41
|
handler: async (request, reply) => {
|
|
42
42
|
try {
|
|
43
43
|
const result = await callShip(call, {
|
|
44
|
-
ctx: options.contextFor(request, { bearer: readBearer(request.headers.authorization), onBehalfOf: readOnBehalfOf(request.headers) }),
|
|
44
|
+
ctx: options.contextFor(request, { bearer: readBearer(request.headers.authorization), onBehalfOf: readOnBehalfOf(request.headers), accountToken: readAccountToken(request.headers) }),
|
|
45
45
|
input: request.body,
|
|
46
46
|
log: request.log,
|
|
47
47
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"rest-api.js","sourceRoot":"","sources":["../../../src/adapters/rest/rest-api.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,mBAAmB,MAAM,+BAA+B,CAAC;AAGhE,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"rest-api.js","sourceRoot":"","sources":["../../../src/adapters/rest/rest-api.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AACH,OAAO,mBAAmB,MAAM,+BAA+B,CAAC;AAGhE,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAE9F,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAChG,OAAO,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAE1D,MAAM,MAAM,GAAG,SAAS,CAAC;AAEzB,MAAM,YAAY,GAAG,GAAG,MAAM,eAAe,CAAC;AAE9C,MAAM,gBAAgB,GAAG,eAAe,CAAC,UAAU,CAAC,CAAC;AAOrD,8GAA8G;AAC9G,MAAM,UAAU,eAAe,CAAC,MAAuB,EAAE,OAAuB;IAC9E,MAAM,CAAC,GAAG,CAAC,YAAY,EAAE,GAAG,EAAE,CAAC,gBAAgB,CAAC,CAAC;IAEjD,4EAA4E;IAC5E,4EAA4E;IAC5E,4EAA4E;IAC5E,gDAAgD;IAChD,KAAK,MAAM,CAAC,QAAQ,CAAC,mBAAmB,EAAE;QACxC,WAAW,EAAE,GAAG,MAAM,OAAO;QAC7B,aAAa,EAAE;YACb,GAAG,EAAE,YAAY;YACjB,SAAS,EAAE,SAAS;YACpB,gBAAgB,EAAE,KAAK;YACvB,KAAK,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE;YACzB,kBAAkB,EAAE,OAAO;YAC3B,SAAS,EAAE,KAAK;SACjB;KACF,CAAC,CAAC;IAEH,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;QAC9B,MAAM,CAAC,KAAK,CAAC;YACX,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,GAAG,EAAE,GAAG,MAAM,GAAG,IAAI,CAAC,KAAK,EAAE;YAC7B,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE;gBAChC,IAAI,CAAC;oBACH,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE;wBAClC,GAAG,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,UAAU,EAAE,cAAc,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,YAAY,EAAE,gBAAgB,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;wBACrL,KAAK,EAAE,OAAO,CAAC,IAAI;wBACnB,GAAG,EAAE,OAAO,CAAC,GAAG;qBACjB,CAAC,CAAC;oBACH,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;wBAChB,OAAO,MAAM,CAAC,MAAM,CAAC;oBACvB,CAAC;oBACD,OAAO,MAAM,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC;gBACvF,CAAC;gBAAC,OAAO,MAAM,EAAE,CAAC;oBAChB,MAAM,OAAO,GAAG,iBAAiB,CAAC,MAAM,EAAE,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;oBACvF,OAAO,MAAM,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,CAAC;gBACzE,CAAC;YACH,CAAC;SACF,CAAC,CAAC;IACL,CAAC;AACH,CAAC"}
|
|
@@ -53,12 +53,14 @@ export declare const consoleRouter: import("@trpc/server").TRPCBuiltRouter<{
|
|
|
53
53
|
session: {
|
|
54
54
|
device: string;
|
|
55
55
|
since: string;
|
|
56
|
+
accountId?: (string & import("zod").$brand<"AccountId">) | null | undefined;
|
|
56
57
|
};
|
|
57
58
|
} | {
|
|
58
59
|
kind: "viewer";
|
|
59
60
|
session: {
|
|
60
61
|
device: string;
|
|
61
62
|
since: string;
|
|
63
|
+
accountId?: (string & import("zod").$brand<"AccountId">) | null | undefined;
|
|
62
64
|
};
|
|
63
65
|
};
|
|
64
66
|
meta: import("./trpc.js").ProcedureMeta;
|
|
@@ -80,7 +82,7 @@ export declare const consoleRouter: import("@trpc/server").TRPCBuiltRouter<{
|
|
|
80
82
|
fleetId: `flt_${string}`;
|
|
81
83
|
expiresAt: string;
|
|
82
84
|
kind: "operator" | "viewer";
|
|
83
|
-
scopes: ("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")[];
|
|
85
|
+
scopes: ("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" | "fleet:person" | "fleet:owner" | "fleet:explain" | "fleet:connect" | "labels:any" | "fleet:verify" | "scopes:declare" | "scopes:grant")[];
|
|
84
86
|
};
|
|
85
87
|
meta: import("./trpc.js").ProcedureMeta;
|
|
86
88
|
}>;
|
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
import type { FleetId, SystemVersionOutput } from '@aeolus-fleet/common';
|
|
2
2
|
import type { Authenticate } from '../../domain/identity/authenticate.js';
|
|
3
|
+
import type { AuthenticateAccount } from '../../domain/identity/authenticate-account.js';
|
|
4
|
+
import type { AuthenticateInstallation } from '../../domain/identity/authenticate-installation.js';
|
|
5
|
+
import type { CutOffAccount } from '../../domain/identity/cut-off-account.js';
|
|
3
6
|
import type { ReadAccount } from '../../domain/identity/read-account.js';
|
|
4
7
|
import type { SetTheme } from '../../domain/identity/set-theme.js';
|
|
5
8
|
import type { SignIn } from '../../domain/identity/sign-in.js';
|
|
@@ -49,6 +52,7 @@ import type { ListFleet } from '../../domain/registry/list-fleet.js';
|
|
|
49
52
|
import type { RecrewShip } from '../../domain/registry/recrew-ship.js';
|
|
50
53
|
import type { ReleaseShip } from '../../domain/registry/release-ship.js';
|
|
51
54
|
import type { SetOwner } from '../../domain/registry/set-owner.js';
|
|
55
|
+
import type { SetVerifiedFacts } from '../../domain/registry/set-verified-facts.js';
|
|
52
56
|
import type { ConnectPlugin } from '../../domain/registry/connect-plugin.js';
|
|
53
57
|
import type { RenameShip } from '../../domain/registry/rename-ship.js';
|
|
54
58
|
import type { RetireShip } from '../../domain/registry/retire-ship.js';
|
|
@@ -80,12 +84,13 @@ import type { DefineLabel } from '../../domain/registry/define-label.js';
|
|
|
80
84
|
import type { ExplainReach } from '../../domain/registry/explain-reach.js';
|
|
81
85
|
import type { ReadDeclaredNetworkRules } from '../../domain/registry/read-declared-network-rules.js';
|
|
82
86
|
import type { ReadReachRefusals } from '../../domain/registry/read-reach-refusals.js';
|
|
83
|
-
import type {
|
|
84
|
-
import type {
|
|
87
|
+
import type { ApplyNetworkRules } from '../../domain/registry/apply-network-rules.js';
|
|
88
|
+
import type { DiscardNetworkRulesDraft } from '../../domain/registry/discard-network-rules-draft.js';
|
|
89
|
+
import type { ReadNetworkRules } from '../../domain/registry/read-network-rules.js';
|
|
90
|
+
import type { ReadNetworkRulesDraftChanges } from '../../domain/registry/read-network-rules-draft-changes.js';
|
|
91
|
+
import type { SaveNetworkRulesDraft } from '../../domain/registry/save-network-rules-draft.js';
|
|
85
92
|
import type { ReadBuiltInRules } from '../../domain/registry/read-built-in-rules.js';
|
|
86
|
-
import type { ReadNetworkPlugin } from '../../domain/registry/read-network-plugin.js';
|
|
87
93
|
import type { SetBuiltInRule } from '../../domain/registry/set-built-in-rule.js';
|
|
88
|
-
import type { UnregisterNetworkPlugin } from '../../domain/registry/unregister-network-plugin.js';
|
|
89
94
|
import type { DeleteLabel } from '../../domain/registry/delete-label.js';
|
|
90
95
|
import type { FindLabelValue } from '../../domain/registry/find-label-value.js';
|
|
91
96
|
import type { ListLabels } from '../../domain/registry/list-labels.js';
|
|
@@ -116,12 +121,16 @@ export interface UseCases {
|
|
|
116
121
|
readGuide: ReadGuide;
|
|
117
122
|
recordGuideProgress: RecordGuideProgress;
|
|
118
123
|
authenticate: Authenticate;
|
|
124
|
+
authenticateAccount: AuthenticateAccount;
|
|
125
|
+
authenticateInstallation: AuthenticateInstallation;
|
|
126
|
+
cutOffAccount: CutOffAccount;
|
|
119
127
|
commissionShip: CommissionShip;
|
|
120
128
|
getStartingPrompt: GetStartingPrompt;
|
|
121
129
|
releaseShip: ReleaseShip;
|
|
122
130
|
retireShip: RetireShip;
|
|
123
131
|
renameShip: RenameShip;
|
|
124
132
|
setOwner: SetOwner;
|
|
133
|
+
setVerifiedFacts: SetVerifiedFacts;
|
|
125
134
|
connectPlugin: ConnectPlugin;
|
|
126
135
|
recrewShip: RecrewShip;
|
|
127
136
|
listFleet: ListFleet;
|
|
@@ -149,12 +158,13 @@ export interface UseCases {
|
|
|
149
158
|
declareScopes: DeclareScopes;
|
|
150
159
|
grantScopes: GrantScopes;
|
|
151
160
|
listScopes: ListScopes;
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
161
|
+
saveNetworkRulesDraft: SaveNetworkRulesDraft;
|
|
162
|
+
discardNetworkRulesDraft: DiscardNetworkRulesDraft;
|
|
163
|
+
applyNetworkRules: ApplyNetworkRules;
|
|
164
|
+
readNetworkRules: ReadNetworkRules;
|
|
165
|
+
readNetworkRulesDraftChanges: ReadNetworkRulesDraftChanges;
|
|
155
166
|
setBuiltInRule: SetBuiltInRule;
|
|
156
167
|
readBuiltInRules: ReadBuiltInRules;
|
|
157
|
-
readNetworkPlugin: ReadNetworkPlugin;
|
|
158
168
|
readReachRefusals: ReadReachRefusals;
|
|
159
169
|
declareNetworkRules: DeclareNetworkRules;
|
|
160
170
|
readDeclaredNetworkRules: ReadDeclaredNetworkRules;
|
|
@@ -212,6 +222,10 @@ export interface RequestCredentials {
|
|
|
212
222
|
sessionToken?: string;
|
|
213
223
|
/** The ship a plugin reads on behalf of, as the `Aeolus-On-Behalf-Of` header named it (decision 0034). */
|
|
214
224
|
onBehalfOf?: string;
|
|
225
|
+
/** An account token pagasae signed, from the `Aeolus-Account-Token` header; a bearer crew token beside it names the ship that presented it (decision 0058). */
|
|
226
|
+
accountToken?: string;
|
|
227
|
+
/** The fleet the installation acts in, from the `Aeolus-Fleet` header, beside the installation token (decision 0057); tRPC only. */
|
|
228
|
+
fleet?: string;
|
|
215
229
|
}
|
|
216
230
|
/** Writes the console session cookie on the response. */
|
|
217
231
|
export interface SessionCookie {
|