@aeolus-fleet/core 0.20.4 → 0.21.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.
Files changed (67) hide show
  1. package/dist/adapters/prisma/generated/internal/class.js +4 -4
  2. package/dist/adapters/prisma/generated/internal/class.js.map +1 -1
  3. package/dist/adapters/prisma/generated/internal/prismaNamespace.d.ts +5 -0
  4. package/dist/adapters/prisma/generated/internal/prismaNamespace.js +8 -3
  5. package/dist/adapters/prisma/generated/internal/prismaNamespace.js.map +1 -1
  6. package/dist/adapters/prisma/generated/internal/prismaNamespaceBrowser.d.ts +5 -0
  7. package/dist/adapters/prisma/generated/internal/prismaNamespaceBrowser.js +8 -3
  8. package/dist/adapters/prisma/generated/internal/prismaNamespaceBrowser.js.map +1 -1
  9. package/dist/adapters/prisma/generated/models/CrewRequest.d.ts +53 -1
  10. package/dist/adapters/prisma/generated/models/NetworkSettings.d.ts +107 -1
  11. package/dist/adapters/prisma/generated/models/ReachRefusal.d.ts +40 -1
  12. package/dist/adapters/prisma/migrate.js +17 -4
  13. package/dist/adapters/prisma/migrate.js.map +1 -1
  14. package/dist/adapters/prisma/network.js +30 -10
  15. package/dist/adapters/prisma/network.js.map +1 -1
  16. package/dist/adapters/prisma/registry.js +14 -6
  17. package/dist/adapters/prisma/registry.js.map +1 -1
  18. package/dist/adapters/prisma/rows.d.ts +2 -0
  19. package/dist/adapters/prisma/rows.js +8 -1
  20. package/dist/adapters/prisma/rows.js.map +1 -1
  21. package/dist/adapters/trpc/context.d.ts +6 -0
  22. package/dist/adapters/trpc/fleet.d.ts +35 -3
  23. package/dist/adapters/trpc/fleet.js +32 -3
  24. package/dist/adapters/trpc/fleet.js.map +1 -1
  25. package/dist/adapters/trpc/router.d.ts +32 -3
  26. package/dist/adapters/trpc/ship-contract.js +2 -0
  27. package/dist/adapters/trpc/ship-contract.js.map +1 -1
  28. package/dist/adapters/trpc/trpc.js +2 -0
  29. package/dist/adapters/trpc/trpc.js.map +1 -1
  30. package/dist/domain/registry/check-reach.d.ts +20 -1
  31. package/dist/domain/registry/check-reach.js +20 -6
  32. package/dist/domain/registry/check-reach.js.map +1 -1
  33. package/dist/domain/registry/crew-request.d.ts +9 -3
  34. package/dist/domain/registry/crew-request.js +18 -6
  35. package/dist/domain/registry/crew-request.js.map +1 -1
  36. package/dist/domain/registry/explain-reach.d.ts +34 -0
  37. package/dist/domain/registry/explain-reach.js +42 -0
  38. package/dist/domain/registry/explain-reach.js.map +1 -0
  39. package/dist/domain/registry/network-settings.d.ts +70 -6
  40. package/dist/domain/registry/network-settings.js +97 -4
  41. package/dist/domain/registry/network-settings.js.map +1 -1
  42. package/dist/domain/registry/ports.d.ts +8 -0
  43. package/dist/domain/registry/reach-refusal.d.ts +3 -1
  44. package/dist/domain/registry/read-assigned-crew-requests.d.ts +2 -2
  45. package/dist/domain/registry/read-assigned-crew-requests.js +2 -1
  46. package/dist/domain/registry/read-assigned-crew-requests.js.map +1 -1
  47. package/dist/domain/registry/register-network-plugin.d.ts +28 -0
  48. package/dist/domain/registry/register-network-plugin.js +26 -0
  49. package/dist/domain/registry/register-network-plugin.js.map +1 -0
  50. package/dist/domain/registry/retire-ship.d.ts +7 -4
  51. package/dist/domain/registry/retire-ship.js +14 -3
  52. package/dist/domain/registry/retire-ship.js.map +1 -1
  53. package/dist/domain/registry/set-network-rules.js +1 -1
  54. package/dist/domain/registry/set-network-rules.js.map +1 -1
  55. package/dist/domain/registry/unregister-network-plugin.d.ts +27 -0
  56. package/dist/domain/registry/unregister-network-plugin.js +25 -0
  57. package/dist/domain/registry/unregister-network-plugin.js.map +1 -0
  58. package/dist/domain/shared/errors.d.ts +1 -1
  59. package/dist/domain/shared/errors.js.map +1 -1
  60. package/dist/wiring.d.ts +6 -0
  61. package/dist/wiring.js +6 -0
  62. package/dist/wiring.js.map +1 -1
  63. package/package.json +2 -2
  64. package/src/adapters/prisma/migrations/20261010070000_crew_request_is_final/migration.sql +7 -0
  65. package/src/adapters/prisma/migrations/20261010080000_network_plugin/migration.sql +21 -0
  66. package/src/adapters/prisma/migrations/20261010110000_network_rules_through_plugin/migration.sql +4 -0
  67. package/src/adapters/prisma/schema.prisma +13 -3
@@ -8,11 +8,17 @@
8
8
  * rules. The settings are read after the lock, so they are the latest
9
9
  * committed.
10
10
  */
11
- import { carriedLabelSchema, idSchema, networkRuleSchema } from '@aeolus-fleet/common';
11
+ import { carriedLabelSchema, idSchema, networkRuleSchema, WHILE_UNAVAILABLE } from '@aeolus-fleet/common';
12
12
  import { z } from 'zod';
13
13
  import { noNetworkSettings } from '../../domain/registry/network-settings.js';
14
14
  import { Prisma } from './generated/client.js';
15
- const settingsRowSchema = z.object({ rules: z.array(networkRuleSchema).nullable(), version: z.number().int().min(0) });
15
+ const settingsRowSchema = z.object({
16
+ rules: z.array(networkRuleSchema).nullable(),
17
+ version: z.number().int().min(0),
18
+ pluginShipId: idSchema('ship').nullable(),
19
+ pluginWhileUnavailable: z.enum(WHILE_UNAVAILABLE).nullable(),
20
+ pluginNotRespondingAfterSeconds: z.number().int().nullable(),
21
+ });
16
22
  const refusedShipSchema = z.object({ id: idSchema('ship'), name: z.string(), labels: z.array(carriedLabelSchema) });
17
23
  const refusalRowSchema = z.object({
18
24
  id: idSchema('reachRefusal'),
@@ -24,15 +30,23 @@ const refusalRowSchema = z.object({
24
30
  z.object({ kind: z.literal('type'), type: z.string(), ships: z.array(refusedShipSchema) }),
25
31
  ]),
26
32
  settingsVersion: z.number().int().min(1),
33
+ whilePluginUnavailable: z.enum(['block-all', 'keep-latest']).nullable(),
27
34
  });
28
35
  export function createPrismaNetworkSettingsRepository(db) {
29
36
  const read = async (fleetId) => {
30
- const row = await db.networkSettings.findUnique({ where: { fleetId }, select: { rules: true, version: true } });
37
+ const row = await db.networkSettings.findUnique({
38
+ where: { fleetId },
39
+ select: { rules: true, version: true, pluginShipId: true, pluginWhileUnavailable: true, pluginNotRespondingAfterSeconds: true },
40
+ });
31
41
  if (!row) {
32
42
  return noNetworkSettings(fleetId);
33
43
  }
34
- const { rules, version } = settingsRowSchema.parse(row);
35
- return { fleetId, rules, version };
44
+ const { rules, version, pluginShipId, pluginWhileUnavailable, pluginNotRespondingAfterSeconds } = settingsRowSchema.parse(row);
45
+ // The table's check keeps the three set together or none.
46
+ const plugin = pluginShipId !== null && pluginWhileUnavailable !== null && pluginNotRespondingAfterSeconds !== null
47
+ ? { shipId: pluginShipId, whileUnavailable: pluginWhileUnavailable, notRespondingAfterSeconds: pluginNotRespondingAfterSeconds }
48
+ : null;
49
+ return { fleetId, rules, version, plugin };
36
50
  };
37
51
  return {
38
52
  findForShare: async (fleetId) => {
@@ -43,16 +57,22 @@ export function createPrismaNetworkSettingsRepository(db) {
43
57
  await db.$executeRaw `SELECT pg_advisory_xact_lock(hashtext(${fleetId}), hashtext('network-settings'))`;
44
58
  return read(fleetId);
45
59
  },
46
- save: async ({ fleetId, rules, version }) => {
47
- const kept = rules === null ? Prisma.DbNull : rules.map((rule) => ({ from: [...rule.from], to: [...rule.to] }));
48
- await db.networkSettings.upsert({ where: { fleetId }, create: { fleetId, rules: kept, version }, update: { rules: kept, version } });
60
+ save: async ({ fleetId, rules, version, plugin }) => {
61
+ const kept = {
62
+ rules: rules === null ? Prisma.DbNull : rules.map((rule) => ({ from: [...rule.from], to: [...rule.to] })),
63
+ version,
64
+ pluginShipId: plugin?.shipId ?? null,
65
+ pluginWhileUnavailable: plugin?.whileUnavailable ?? null,
66
+ pluginNotRespondingAfterSeconds: plugin?.notRespondingAfterSeconds ?? null,
67
+ };
68
+ await db.networkSettings.upsert({ where: { fleetId }, create: { fleetId, ...kept }, update: kept });
49
69
  },
50
70
  };
51
71
  }
52
72
  export function createPrismaReachRefusalRepository(db) {
53
73
  return {
54
- record: async ({ id, fleetId, at, sender, recipient, settingsVersion }) => {
55
- await db.reachRefusal.create({ data: { id, fleetId, at, sender: shipJson(sender), recipient: recipientJson(recipient), settingsVersion } });
74
+ record: async ({ id, fleetId, at, sender, recipient, settingsVersion, whilePluginUnavailable }) => {
75
+ await db.reachRefusal.create({ data: { id, fleetId, at, sender: shipJson(sender), recipient: recipientJson(recipient), settingsVersion, whilePluginUnavailable } });
56
76
  },
57
77
  latest: async (fleetId, limit) => {
58
78
  const rows = await db.reachRefusal.findMany({ where: { fleetId }, orderBy: [{ at: 'desc' }, { id: 'desc' }], take: limit });
@@ -1 +1 @@
1
- {"version":3,"file":"network.js","sourceRoot":"","sources":["../../../src/adapters/prisma/network.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"network.js","sourceRoot":"","sources":["../../../src/adapters/prisma/network.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { PING_CONTENT_TYPE, idSchema } from '@aeolus-fleet/common';
2
2
  import { Prisma } from './generated/client.js';
3
- import { toAbandonedDelivery, toClearRequest, toCrewRequest, toDeliveryFromSql, toFleet, toLabelFromSql, toLease, toListedLabel, toLeaseShipId, toShip, toShipFacts, toShipFromSql, toShipLabel, toShipReport, } from './rows.js';
3
+ import { toAbandonedDelivery, toClearRequest, toCrewRequest, toDeliveryFromSql, toFleet, toLastSeen, toLabelFromSql, toLease, toListedLabel, toLeaseShipId, toShip, toShipFacts, toShipFromSql, toShipLabel, toShipReport, } from './rows.js';
4
4
  export function createPrismaFleetRepository(db) {
5
5
  return {
6
6
  lockInitialisation: async () => {
@@ -77,11 +77,11 @@ export function createPrismaCrewRequestRepository(db) {
77
77
  const row = await db.crewRequest.findUnique({ where: { fleetId_shipId: { fleetId, shipId } }, include: withGivenBack });
78
78
  return row === null ? undefined : toCrewRequest(row);
79
79
  },
80
- save: async ({ fleetId, shipId, settings, settingsVersion, requestedAt, assignedTo, status, reason, attempt, sessionStartedAt, givenBack }) => {
80
+ save: async ({ fleetId, shipId, settings, settingsVersion, requestedAt, assignedTo, status, reason, attempt, sessionStartedAt, isFinal, givenBack }) => {
81
81
  await db.crewRequest.upsert({
82
82
  where: { fleetId_shipId: { fleetId, shipId } },
83
- create: { fleetId, shipId, settings, settingsVersion, requestedAt, assignedTo, status, reason, attempt, sessionStartedAt },
84
- update: { settings, settingsVersion, requestedAt, assignedTo, status, reason, attempt, sessionStartedAt },
83
+ create: { fleetId, shipId, settings, settingsVersion, requestedAt, assignedTo, status, reason, attempt, sessionStartedAt, isFinal },
84
+ update: { settings, settingsVersion, requestedAt, assignedTo, status, reason, attempt, sessionStartedAt, isFinal },
85
85
  });
86
86
  // The request holds its give-backs whole: what it saves replaces what it held.
87
87
  await db.crewRequestGiveBack.deleteMany({ where: { fleetId, shipId } });
@@ -275,6 +275,7 @@ export function createPrismaShipRepository(db) {
275
275
  FOR SHARE`;
276
276
  return row ? toShipFromSql(row) : undefined;
277
277
  },
278
+ listActive: async (fleetId) => (await db.ship.findMany({ where: { fleetId, retiredAt: null, kind: { not: 'viewer' } }, orderBy: { id: 'asc' } })).map(toShip),
278
279
  listActiveOfType: async (fleetId, type) => (await db.ship.findMany({ where: { fleetId, type, retiredAt: null, kind: { not: 'viewer' } }, orderBy: { id: 'asc' } })).map(toShip),
279
280
  hasActiveShipOfType: async (fleetId, type) => {
280
281
  const row = await db.ship.findFirst({ where: { fleetId, type, retiredAt: null, kind: { not: 'viewer' } }, select: { id: true } });
@@ -309,6 +310,13 @@ export function createPrismaLeaseRepository(db) {
309
310
  FOR SHARE`;
310
311
  return row ? toLease(row) : undefined;
311
312
  },
313
+ findLastSeen: async (fleetId, shipId) => {
314
+ const [row] = await db.$queryRaw `
315
+ SELECT COALESCE(last_seen_at, started_at) AS last_seen_at
316
+ FROM leases
317
+ WHERE fleet_id = ${fleetId} AND ship_id = ${shipId} AND ended_at IS NULL`;
318
+ return row === undefined ? undefined : toLastSeen(row);
319
+ },
312
320
  markSeen: async ({ fleetId, leaseId, at }) => {
313
321
  // GREATEST keeps an overlapping call that marked it later from moving it back.
314
322
  await db.$executeRaw `
@@ -490,7 +498,7 @@ export function createPrismaFleetListing(db) {
490
498
  c.issued_at AS secret_issued_at, c.claimed_at AS secret_claimed_at,
491
499
  cr.settings AS crew_request_settings, cr.settings_version AS crew_request_settings_version,
492
500
  cr.requested_at AS crew_request_requested_at, cr.assigned_to_ship_id AS crew_request_assigned_to,
493
- cr.status::text AS crew_request_status, ca.name AS crew_request_assignee_name, cr.reason AS crew_request_reason, cr.attempt AS crew_request_attempt, cr.session_started_at AS crew_request_session_started_at,
501
+ cr.status::text AS crew_request_status, ca.name AS crew_request_assignee_name, cr.reason AS crew_request_reason, cr.attempt AS crew_request_attempt, cr.session_started_at AS crew_request_session_started_at, cr.is_final AS crew_request_is_final,
494
502
  cb.id AS crewed_by_id, cb.name AS crewed_by_name,
495
503
  p.sent_at AS ping_sent_at, p.delivery_state AS ping_delivery_state, p.answered_at AS ping_answered_at,
496
504
  lm.model AS last_model, lm.created_at AS last_model_stated_at,
@@ -537,7 +545,7 @@ export function createPrismaFleetListing(db) {
537
545
  c.issued_at AS secret_issued_at, c.claimed_at AS secret_claimed_at,
538
546
  cr.settings AS crew_request_settings, cr.settings_version AS crew_request_settings_version,
539
547
  cr.requested_at AS crew_request_requested_at, cr.assigned_to_ship_id AS crew_request_assigned_to,
540
- cr.status::text AS crew_request_status, ca.name AS crew_request_assignee_name, cr.reason AS crew_request_reason, cr.attempt AS crew_request_attempt, cr.session_started_at AS crew_request_session_started_at,
548
+ cr.status::text AS crew_request_status, ca.name AS crew_request_assignee_name, cr.reason AS crew_request_reason, cr.attempt AS crew_request_attempt, cr.session_started_at AS crew_request_session_started_at, cr.is_final AS crew_request_is_final,
541
549
  cb.id AS crewed_by_id, cb.name AS crewed_by_name,
542
550
  p.sent_at AS ping_sent_at, p.delivery_state AS ping_delivery_state, p.answered_at AS ping_answered_at,
543
551
  lm.model AS last_model, lm.created_at AS last_model_stated_at,
@@ -1 +1 @@
1
- {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../src/adapters/prisma/registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../src/adapters/prisma/registry.ts"],"names":[],"mappings":"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"}
@@ -33,6 +33,8 @@ export declare function toShipLabel(row: unknown): ShipLabel;
33
33
  export declare function toShipReport(row: unknown): ShipReport | null;
34
34
  /** The ship of a lease as raw SQL reads it. */
35
35
  export declare function toLeaseShipId(row: unknown): ShipId;
36
+ /** When a lease's crew last called the fleet, as raw SQL reads it. */
37
+ export declare function toLastSeen(row: unknown): Date;
36
38
  /** A ship with its open lease's location and its valid secret's dates, as the fleet listing reads it. */
37
39
  export declare function toShipFacts(row: unknown): ShipFacts;
38
40
  export declare function toLease(row: unknown): Lease;
@@ -74,6 +74,7 @@ const crewRequestRow = z.object({
74
74
  reason: z.string().nullable(),
75
75
  attempt: z.int().min(0),
76
76
  sessionStartedAt: z.date().nullable(),
77
+ isFinal: z.boolean(),
77
78
  givenBack: z.array(z.object({ trierarchShipId: idSchema('ship'), settingsVersion: z.int().min(1), reason: z.string(), givenBackAt: z.date() })),
78
79
  });
79
80
  const clearRequestRow = z.object({
@@ -130,6 +131,10 @@ export function toShipReport(row) {
130
131
  export function toLeaseShipId(row) {
131
132
  return z.object({ ship_id: idSchema('ship') }).parse(row).ship_id;
132
133
  }
134
+ /** When a lease's crew last called the fleet, as raw SQL reads it. */
135
+ export function toLastSeen(row) {
136
+ return z.object({ last_seen_at: z.date() }).parse(row).last_seen_at;
137
+ }
133
138
  const shipFactsSqlRow = z.object({
134
139
  lease_location: locationKindSchema.nullable(),
135
140
  lease_location_description: z.string().nullable(),
@@ -154,6 +159,7 @@ const shipFactsSqlRow = z.object({
154
159
  crew_request_reason: z.string().nullable(),
155
160
  crew_request_attempt: z.int().min(0).nullable(),
156
161
  crew_request_session_started_at: z.date().nullable(),
162
+ crew_request_is_final: z.boolean().nullable(),
157
163
  crewed_by_id: idSchema('ship').nullable(),
158
164
  crewed_by_name: z.string().nullable(),
159
165
  labels: z.array(carriedLabelSchema),
@@ -161,7 +167,7 @@ const shipFactsSqlRow = z.object({
161
167
  });
162
168
  /** A ship with its open lease's location and its valid secret's dates, as the fleet listing reads it. */
163
169
  export function toShipFacts(row) {
164
- const { lease_location, lease_location_description, lease_harness, lease_started_at, lease_last_seen_at, secret_issued_at, secret_claimed_at, ping_sent_at, ping_delivery_state, ping_answered_at, last_model, last_model_stated_at, last_viewed_at, last_lease_ended_at, crew_request_settings, crew_request_settings_version, crew_request_requested_at, crew_request_assigned_to, crew_request_status, crew_request_assignee_name, crew_request_reason, crew_request_attempt, crew_request_session_started_at, crewed_by_id, crewed_by_name, labels, crew_request_given_back, } = shipFactsSqlRow.parse(row);
170
+ const { lease_location, lease_location_description, lease_harness, lease_started_at, lease_last_seen_at, secret_issued_at, secret_claimed_at, ping_sent_at, ping_delivery_state, ping_answered_at, last_model, last_model_stated_at, last_viewed_at, last_lease_ended_at, crew_request_settings, crew_request_settings_version, crew_request_requested_at, crew_request_assigned_to, crew_request_status, crew_request_assignee_name, crew_request_reason, crew_request_attempt, crew_request_session_started_at, crew_request_is_final, crewed_by_id, crewed_by_name, labels, crew_request_given_back, } = shipFactsSqlRow.parse(row);
165
171
  const ship = toShipFromSql(row);
166
172
  return {
167
173
  ship,
@@ -188,6 +194,7 @@ export function toShipFacts(row) {
188
194
  reason: crew_request_reason,
189
195
  attempt: crew_request_attempt ?? 0,
190
196
  sessionStartedAt: crew_request_session_started_at,
197
+ isFinal: crew_request_is_final ?? false,
191
198
  givenBack: crew_request_given_back.map(({ trierarchShipId, settingsVersion, reason, givenBackAt }) => ({ trierarchShipId, settingsVersion, reason, givenBackAt })),
192
199
  }
193
200
  : null,
@@ -1 +1 @@
1
- {"version":3,"file":"rows.js","sourceRoot":"","sources":["../../../src/adapters/prisma/rows.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rows.js","sourceRoot":"","sources":["../../../src/adapters/prisma/rows.ts"],"names":[],"mappings":"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"}
@@ -63,8 +63,11 @@ import type { ReadFleetEvents } from '../../domain/shared/read-fleet-events.js';
63
63
  import type { AssignLabel } from '../../domain/registry/assign-label.js';
64
64
  import type { ChangeLabelValues } from '../../domain/registry/change-label-values.js';
65
65
  import type { DefineLabel } from '../../domain/registry/define-label.js';
66
+ import type { ExplainReach } from '../../domain/registry/explain-reach.js';
66
67
  import type { ReadReachRefusals } from '../../domain/registry/read-reach-refusals.js';
68
+ import type { RegisterNetworkPlugin } from '../../domain/registry/register-network-plugin.js';
67
69
  import type { SetNetworkRules } from '../../domain/registry/set-network-rules.js';
70
+ import type { UnregisterNetworkPlugin } from '../../domain/registry/unregister-network-plugin.js';
68
71
  import type { DeleteLabel } from '../../domain/registry/delete-label.js';
69
72
  import type { FindLabelValue } from '../../domain/registry/find-label-value.js';
70
73
  import type { ListLabels } from '../../domain/registry/list-labels.js';
@@ -116,7 +119,10 @@ export interface UseCases {
116
119
  explainCrewRequest: ExplainCrewRequest;
117
120
  defineLabel: DefineLabel;
118
121
  setNetworkRules: SetNetworkRules;
122
+ registerNetworkPlugin: RegisterNetworkPlugin;
123
+ unregisterNetworkPlugin: UnregisterNetworkPlugin;
119
124
  readReachRefusals: ReadReachRefusals;
125
+ explainReach: ExplainReach;
120
126
  changeLabelValues: ChangeLabelValues;
121
127
  assignLabel: AssignLabel;
122
128
  unassignLabel: UnassignLabel;
@@ -182,6 +182,7 @@ export declare const fleetRouter: import("@trpc/server").TRPCBuiltRouter<{
182
182
  settingsVersion: number;
183
183
  requestedAt: string;
184
184
  status: "crewing" | "running" | "restarting" | "crashed" | "releasing" | null;
185
+ isFinal: boolean;
185
186
  }[];
186
187
  meta: import("./trpc.js").ProcedureMeta;
187
188
  }>;
@@ -438,6 +439,25 @@ export declare const fleetRouter: import("@trpc/server").TRPCBuiltRouter<{
438
439
  };
439
440
  meta: import("./trpc.js").ProcedureMeta;
440
441
  }>;
442
+ /** The caller's ship becomes the fleet's networking plugin, with what it declared (decision 0035). */
443
+ registerNetworkPlugin: import("@trpc/server").TRPCMutationProcedure<{
444
+ input: {
445
+ whileUnavailable: "block-all" | "open-all" | "keep-latest";
446
+ notRespondingAfterSeconds: number;
447
+ };
448
+ output: {
449
+ version: number;
450
+ };
451
+ meta: import("./trpc.js").ProcedureMeta;
452
+ }>;
453
+ /** The fleet's networking plugin unregisters, its rules going with it (decision 0035). */
454
+ unregisterNetworkPlugin: import("@trpc/server").TRPCMutationProcedure<{
455
+ input: void;
456
+ output: {
457
+ version: number;
458
+ };
459
+ meta: import("./trpc.js").ProcedureMeta;
460
+ }>;
441
461
  /** The sends the network rules refused, newest first: argo's only (decision 0034). */
442
462
  reachRefusals: import("@trpc/server").TRPCQueryProcedure<{
443
463
  input: void;
@@ -481,9 +501,21 @@ export declare const fleetRouter: import("@trpc/server").TRPCBuiltRouter<{
481
501
  }[];
482
502
  };
483
503
  settingsVersion: number;
504
+ whilePluginUnavailable: "block-all" | "keep-latest" | null;
484
505
  }[];
485
506
  meta: import("./trpc.js").ProcedureMeta;
486
507
  }>;
508
+ /** Which ships a ship reaches now, or whether it reaches one: argo's only, and never why (design on #260). */
509
+ explainReach: import("@trpc/server").TRPCQueryProcedure<{
510
+ input: {
511
+ fromShipId: unknown;
512
+ toShipId?: unknown;
513
+ };
514
+ output: {
515
+ reachableShipIds: `shp_${string}`[];
516
+ };
517
+ meta: import("./trpc.js").ProcedureMeta;
518
+ }>;
487
519
  /** One ship of the fleet, retired ones included, with when it was commissioned, crewed and retired. */
488
520
  ship: import("@trpc/server").TRPCQueryProcedure<{
489
521
  input: {
@@ -572,7 +604,7 @@ export declare const fleetRouter: import("@trpc/server").TRPCBuiltRouter<{
572
604
  output: {
573
605
  seq: number;
574
606
  id: `evt_${string}`;
575
- type: "FleetInitialised" | "ShipCommissioned" | "ShipClaimed" | "LeaseRevoked" | "CredentialRevoked" | "StartingPromptIssued" | "OperatorPasswordReset" | "MessageAccepted" | "DeliveryClaimed" | "DeliveryAcknowledged" | "DeliveryUndeliverable" | "DeliveryReturned" | "ShipRetired" | "DeliveryAbandoned" | "DeliveryDismissed" | "ShipRenamed" | "ShipReported" | "SignInTicketIssued" | "FleetLimitsChanged" | "ViewerSessionStarted" | "CrewRequested" | "CrewRequestRemoved" | "CrewAssigned" | "CrewStatusChanged" | "CrewRequestExplained" | "CrewRequestGivenBack" | "LabelDefined" | "LabelValuesChanged" | "LabelRetired" | "LabelAssigned" | "LabelUnassigned" | "LabelDeleted" | "WorktreeClearRequested" | "WorktreeCleared" | "WorktreeClearRemoved" | "NetworkRulesSet";
607
+ type: "FleetInitialised" | "ShipCommissioned" | "ShipClaimed" | "LeaseRevoked" | "CredentialRevoked" | "StartingPromptIssued" | "OperatorPasswordReset" | "MessageAccepted" | "DeliveryClaimed" | "DeliveryAcknowledged" | "DeliveryUndeliverable" | "DeliveryReturned" | "ShipRetired" | "DeliveryAbandoned" | "DeliveryDismissed" | "ShipRenamed" | "ShipReported" | "SignInTicketIssued" | "FleetLimitsChanged" | "ViewerSessionStarted" | "CrewRequested" | "CrewRequestRemoved" | "CrewAssigned" | "CrewStatusChanged" | "CrewRequestExplained" | "CrewRequestGivenBack" | "LabelDefined" | "LabelValuesChanged" | "LabelRetired" | "LabelAssigned" | "LabelUnassigned" | "LabelDeleted" | "WorktreeClearRequested" | "WorktreeCleared" | "WorktreeClearRemoved" | "NetworkRulesSet" | "NetworkPluginRegistered" | "NetworkPluginUnregistered";
576
608
  occurredAt: string;
577
609
  actor: {
578
610
  id: `shp_${string}`;
@@ -820,7 +852,7 @@ export declare const fleetRouter: import("@trpc/server").TRPCBuiltRouter<{
820
852
  events: {
821
853
  seq: number;
822
854
  id: `evt_${string}`;
823
- type: "FleetInitialised" | "ShipCommissioned" | "ShipClaimed" | "LeaseRevoked" | "CredentialRevoked" | "StartingPromptIssued" | "OperatorPasswordReset" | "MessageAccepted" | "DeliveryClaimed" | "DeliveryAcknowledged" | "DeliveryUndeliverable" | "DeliveryReturned" | "ShipRetired" | "DeliveryAbandoned" | "DeliveryDismissed" | "ShipRenamed" | "ShipReported" | "SignInTicketIssued" | "FleetLimitsChanged" | "ViewerSessionStarted" | "CrewRequested" | "CrewRequestRemoved" | "CrewAssigned" | "CrewStatusChanged" | "CrewRequestExplained" | "CrewRequestGivenBack" | "LabelDefined" | "LabelValuesChanged" | "LabelRetired" | "LabelAssigned" | "LabelUnassigned" | "LabelDeleted" | "WorktreeClearRequested" | "WorktreeCleared" | "WorktreeClearRemoved" | "NetworkRulesSet";
855
+ type: "FleetInitialised" | "ShipCommissioned" | "ShipClaimed" | "LeaseRevoked" | "CredentialRevoked" | "StartingPromptIssued" | "OperatorPasswordReset" | "MessageAccepted" | "DeliveryClaimed" | "DeliveryAcknowledged" | "DeliveryUndeliverable" | "DeliveryReturned" | "ShipRetired" | "DeliveryAbandoned" | "DeliveryDismissed" | "ShipRenamed" | "ShipReported" | "SignInTicketIssued" | "FleetLimitsChanged" | "ViewerSessionStarted" | "CrewRequested" | "CrewRequestRemoved" | "CrewAssigned" | "CrewStatusChanged" | "CrewRequestExplained" | "CrewRequestGivenBack" | "LabelDefined" | "LabelValuesChanged" | "LabelRetired" | "LabelAssigned" | "LabelUnassigned" | "LabelDeleted" | "WorktreeClearRequested" | "WorktreeCleared" | "WorktreeClearRemoved" | "NetworkRulesSet" | "NetworkPluginRegistered" | "NetworkPluginUnregistered";
824
856
  occurredAt: string;
825
857
  actorShipId: `shp_${string}` | null;
826
858
  shipId: `shp_${string}` | null;
@@ -848,7 +880,7 @@ export declare const fleetRouter: import("@trpc/server").TRPCBuiltRouter<{
848
880
  event: {
849
881
  seq: number;
850
882
  id: `evt_${string}`;
851
- type: "FleetInitialised" | "ShipCommissioned" | "ShipClaimed" | "LeaseRevoked" | "CredentialRevoked" | "StartingPromptIssued" | "OperatorPasswordReset" | "MessageAccepted" | "DeliveryClaimed" | "DeliveryAcknowledged" | "DeliveryUndeliverable" | "DeliveryReturned" | "ShipRetired" | "DeliveryAbandoned" | "DeliveryDismissed" | "ShipRenamed" | "ShipReported" | "SignInTicketIssued" | "FleetLimitsChanged" | "ViewerSessionStarted" | "CrewRequested" | "CrewRequestRemoved" | "CrewAssigned" | "CrewStatusChanged" | "CrewRequestExplained" | "CrewRequestGivenBack" | "LabelDefined" | "LabelValuesChanged" | "LabelRetired" | "LabelAssigned" | "LabelUnassigned" | "LabelDeleted" | "WorktreeClearRequested" | "WorktreeCleared" | "WorktreeClearRemoved" | "NetworkRulesSet";
883
+ type: "FleetInitialised" | "ShipCommissioned" | "ShipClaimed" | "LeaseRevoked" | "CredentialRevoked" | "StartingPromptIssued" | "OperatorPasswordReset" | "MessageAccepted" | "DeliveryClaimed" | "DeliveryAcknowledged" | "DeliveryUndeliverable" | "DeliveryReturned" | "ShipRetired" | "DeliveryAbandoned" | "DeliveryDismissed" | "ShipRenamed" | "ShipReported" | "SignInTicketIssued" | "FleetLimitsChanged" | "ViewerSessionStarted" | "CrewRequested" | "CrewRequestRemoved" | "CrewAssigned" | "CrewStatusChanged" | "CrewRequestExplained" | "CrewRequestGivenBack" | "LabelDefined" | "LabelValuesChanged" | "LabelRetired" | "LabelAssigned" | "LabelUnassigned" | "LabelDeleted" | "WorktreeClearRequested" | "WorktreeCleared" | "WorktreeClearRemoved" | "NetworkRulesSet" | "NetworkPluginRegistered" | "NetworkPluginUnregistered";
852
884
  occurredAt: string;
853
885
  actorShipId: `shp_${string}` | null;
854
886
  shipId: `shp_${string}` | null;
@@ -1,4 +1,4 @@
1
- import { commissionShipInputSchema, commissionShipOutputSchema, dismissDeliveryInputSchema, dismissDeliveryOutputSchema, fleetEventsInputSchema, followFleetInputSchema, followFleetOutputSchema, inboxActionOutputSchema, markDoneInputSchema, markReadInputSchema, fleetLimitsOutputSchema, fleetListOutputSchema, messageInputSchema, messageOutputSchema, needsAttentionOutputSchema, operatorInboxInputSchema, operatorInboxOutputSchema, pingShipInputSchema, pingShipOutputSchema, shipDetailOutputSchema, shipInputSchema, shipMessagesOutputSchema, shipTimelineOutputSchema, getStartingPromptInputSchema, recrewShipInputSchema, releaseShipInputSchema, releaseShipOutputSchema, assignCrewInputSchema, assignCrewOutputSchema, assignedCrewRequestsOutputSchema, clearRequestsOutputSchema, clearWorktreeInputSchema, clearWorktreeOutputSchema, confirmWorktreeClearedInputSchema, confirmWorktreeClearedOutputSchema, confirmCrewReleaseInputSchema, giveBackCrewRequestInputSchema, giveBackCrewRequestOutputSchema, explainCrewRequestInputSchema, explainCrewRequestOutputSchema, confirmCrewReleaseOutputSchema, crewRequestInputSchema, crewRequestOutputSchema, reportCrewStatusInputSchema, reportCrewStatusOutputSchema, removeCrewRequestInputSchema, removeCrewRequestOutputSchema, renameShipInputSchema, renameShipOutputSchema, replyInputSchema, replyOutputSchema, resendDeliveryInputSchema, resendDeliveryOutputSchema, retireShipInputSchema, retireShipOutputSchema, startingPromptOutputSchema, assignLabelInputSchema, changeLabelValuesInputSchema, changeLabelValuesOutputSchema, defineLabelInputSchema, defineLabelOutputSchema, deleteLabelInputSchema, findLabelValueInputSchema, reachRefusalsOutputSchema, setNetworkRulesInputSchema, setNetworkRulesOutputSchema, findLabelValueOutputSchema, fleetListInputSchema, labelWriteOutputSchema, labelsOutputSchema, unassignLabelInputSchema, } from '@aeolus-fleet/common';
1
+ import { commissionShipInputSchema, commissionShipOutputSchema, dismissDeliveryInputSchema, dismissDeliveryOutputSchema, fleetEventsInputSchema, followFleetInputSchema, followFleetOutputSchema, inboxActionOutputSchema, markDoneInputSchema, markReadInputSchema, fleetLimitsOutputSchema, fleetListOutputSchema, messageInputSchema, messageOutputSchema, needsAttentionOutputSchema, operatorInboxInputSchema, operatorInboxOutputSchema, pingShipInputSchema, pingShipOutputSchema, shipDetailOutputSchema, shipInputSchema, shipMessagesOutputSchema, shipTimelineOutputSchema, getStartingPromptInputSchema, recrewShipInputSchema, releaseShipInputSchema, releaseShipOutputSchema, assignCrewInputSchema, assignCrewOutputSchema, assignedCrewRequestsOutputSchema, clearRequestsOutputSchema, clearWorktreeInputSchema, clearWorktreeOutputSchema, confirmWorktreeClearedInputSchema, confirmWorktreeClearedOutputSchema, confirmCrewReleaseInputSchema, giveBackCrewRequestInputSchema, giveBackCrewRequestOutputSchema, explainCrewRequestInputSchema, explainCrewRequestOutputSchema, confirmCrewReleaseOutputSchema, crewRequestInputSchema, crewRequestOutputSchema, reportCrewStatusInputSchema, reportCrewStatusOutputSchema, removeCrewRequestInputSchema, removeCrewRequestOutputSchema, renameShipInputSchema, renameShipOutputSchema, replyInputSchema, replyOutputSchema, resendDeliveryInputSchema, resendDeliveryOutputSchema, retireShipInputSchema, retireShipOutputSchema, startingPromptOutputSchema, assignLabelInputSchema, changeLabelValuesInputSchema, changeLabelValuesOutputSchema, defineLabelInputSchema, defineLabelOutputSchema, deleteLabelInputSchema, findLabelValueInputSchema, reachRefusalsOutputSchema, explainReachInputSchema, explainReachOutputSchema, registerNetworkPluginInputSchema, setNetworkRulesInputSchema, setNetworkRulesOutputSchema, findLabelValueOutputSchema, fleetListInputSchema, labelWriteOutputSchema, labelsOutputSchema, unassignLabelInputSchema, } from '@aeolus-fleet/common';
2
2
  import { tracked } from '@trpc/server';
3
3
  import { presentStartingPrompt } from './starting-prompt-text.js';
4
4
  import { anyScopeProcedure, checkCallerStillHolds, okOrThrow, router, scopedCrewCallerProcedure, scopedProcedure } from './trpc.js';
@@ -206,7 +206,7 @@ export const fleetRouter = router({
206
206
  /** The crew requests assigned to the caller's ship: a trierarch's ships. */
207
207
  assignedCrewRequests: scopedProcedure('crew:run')
208
208
  .meta({
209
- description: ['Needs crew:run. The crew requests assigned to your ship, oldest ship first: each ship, its settings and their version, and its status.'].join(' '),
209
+ description: ['Needs crew:run. The crew requests assigned to your ship, oldest ship first: each ship, its settings and their version, its status, and whether its crew is final.'].join(' '),
210
210
  })
211
211
  .output(assignedCrewRequestsOutputSchema)
212
212
  .query(async ({ ctx }) => (await ctx.useCases.readAssignedCrewRequests(ctx.caller)).map((request) => ({ ...request, requestedAt: request.requestedAt.toISOString() }))),
@@ -408,15 +408,38 @@ export const fleetRouter = router({
408
408
  "Needs fleet:network. Sets the fleet's network rules, the whole list at once: each rule lets the ships carrying every label value id in from send to the ships carrying every one in to; an empty selector matches every ship.",
409
409
  'Allow-only: with rules set, a send no rule allows is refused. argo reaches every ship and every ship reaches argo, and a ship always answers the sender of a message it received.',
410
410
  'An empty list allows only those; rules null clears them, back to all-to-all. At most 200 rules, each selector at most 20 values, each once (decision 0034). Answers the new version.',
411
+ "Only the fleet's networking plugin sets them, argo included: without a registered plugin the fleet has no rules, all-to-all, and every set is refused (decision 0035).",
411
412
  ].join(' '),
412
413
  })
413
414
  .input(setNetworkRulesInputSchema)
414
415
  .output(setNetworkRulesOutputSchema)
415
416
  .mutation(async ({ ctx, input }) => okOrThrow(await ctx.useCases.setNetworkRules(ctx.caller, input))),
417
+ /** The caller's ship becomes the fleet's networking plugin, with what it declared (decision 0035). */
418
+ registerNetworkPlugin: scopedProcedure('fleet:network')
419
+ .meta({
420
+ description: [
421
+ "Needs fleet:network. Makes your ship the fleet's networking plugin: from then on only it sets the network rules, until it unregisters or is retired. One plugin a fleet: another ship's registration is refused until it unregisters; yours again replaces what you declared.",
422
+ 'whileUnavailable says what happens to every send while the plugin is unavailable: block-all (only argo and answers go through), open-all (every send, as with no rules) or keep-latest (the rules it set last).',
423
+ 'It is unavailable while its ship holds no lease, or is not responding: no call from its crew for longer than notRespondingAfterSeconds (60 to 86400), judged at each send (decision 0035). Answers the new version.',
424
+ ].join(' '),
425
+ })
426
+ .input(registerNetworkPluginInputSchema)
427
+ .output(setNetworkRulesOutputSchema)
428
+ .mutation(async ({ ctx, input }) => okOrThrow(await ctx.useCases.registerNetworkPlugin(ctx.caller, input))),
429
+ /** The fleet's networking plugin unregisters, its rules going with it (decision 0035). */
430
+ unregisterNetworkPlugin: scopedProcedure('fleet:network')
431
+ .meta({
432
+ description: [
433
+ "Needs fleet:network, and only the fleet's networking plugin calls it: the plugin unregisters, as when it is switched off or deleted for the fleet.",
434
+ 'Its rules go with it: no plugin is all-to-all (decision 0035). Answers the new version.',
435
+ ].join(' '),
436
+ })
437
+ .output(setNetworkRulesOutputSchema)
438
+ .mutation(async ({ ctx }) => okOrThrow(await ctx.useCases.unregisterNetworkPlugin(ctx.caller))),
416
439
  /** The sends the network rules refused, newest first: argo's only (decision 0034). */
417
440
  reachRefusals: scopedProcedure('fleet:read')
418
441
  .output(reachRefusalsOutputSchema)
419
- .query(async ({ ctx }) => okOrThrow(await ctx.useCases.readReachRefusals(ctx.caller)).map(({ id, at, sender, recipient, settingsVersion }) => ({
442
+ .query(async ({ ctx }) => okOrThrow(await ctx.useCases.readReachRefusals(ctx.caller)).map(({ id, at, sender, recipient, settingsVersion, whilePluginUnavailable }) => ({
420
443
  id,
421
444
  at: at.toISOString(),
422
445
  sender: { ...sender, labels: [...sender.labels] },
@@ -424,7 +447,13 @@ export const fleetRouter = router({
424
447
  ? { kind: recipient.kind, ship: { ...recipient.ship, labels: [...recipient.ship.labels] } }
425
448
  : { kind: recipient.kind, type: recipient.type, ships: recipient.ships.map((ship) => ({ ...ship, labels: [...ship.labels] })) },
426
449
  settingsVersion,
450
+ whilePluginUnavailable,
427
451
  }))),
452
+ /** Which ships a ship reaches now, or whether it reaches one: argo's only, and never why (design on #260). */
453
+ explainReach: scopedProcedure('fleet:read')
454
+ .input(explainReachInputSchema)
455
+ .output(explainReachOutputSchema)
456
+ .query(async ({ ctx, input }) => okOrThrow(await ctx.useCases.explainReach(ctx.caller, input))),
428
457
  /** One ship of the fleet, retired ones included, with when it was commissioned, crewed and retired. */
429
458
  ship: anyScopeProcedure('fleet:read', 'crew:run')
430
459
  .meta({