@aeolus-fleet/common 0.17.2 → 0.18.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.
@@ -2,28 +2,34 @@ import { z } from 'zod';
2
2
  /**
3
3
  * The fleet's shared vocabulary (docs/blueprint.md, "Ubiquitous language"):
4
4
  * scopes, ship kinds, ship statuses, lease locations, selector kinds, delivery
5
- * states and event types. Server and web use the same words.
5
+ * states and event types. Core and console use the same words.
6
6
  */
7
7
  /** A permission of a ship, stored on the server with the ship and checked before every call. */
8
- export declare const SCOPES: readonly ["messages:send", "messages:receive", "fleet:read", "fleet:manage", "fleet:crew"];
8
+ export declare const SCOPES: readonly ["messages:send", "messages:receive", "fleet:read", "fleet:manage", "fleet:crew", "crew:assign", "crew:run"];
9
9
  export declare const scopeSchema: z.ZodEnum<{
10
10
  "messages:send": "messages:send";
11
11
  "messages:receive": "messages:receive";
12
12
  "fleet:read": "fleet:read";
13
13
  "fleet:manage": "fleet:manage";
14
14
  "fleet:crew": "fleet:crew";
15
+ "crew:assign": "crew:assign";
16
+ "crew:run": "crew:run";
15
17
  }>;
16
18
  export type Scope = z.infer<typeof scopeSchema>;
17
19
  /**
18
20
  * The scopes commissioning may add to an agent ship, beside sending and
19
- * receiving, which every agent ship has (ADR 0002). `fleet:crew` is a
21
+ * receiving, which every agent ship has (ADR 0002). `fleet:crew` is the 0.17
20
22
  * trierarch's: it reads one ship, gets its starting prompt and releases it.
23
+ * `crew:assign` writes crew request assignments; `crew:run` crews the ships
24
+ * whose requests are assigned to its ship (decision 0029).
21
25
  */
22
- export declare const FLEET_SCOPES: readonly ["fleet:read", "fleet:manage", "fleet:crew"];
26
+ export declare const FLEET_SCOPES: readonly ["fleet:read", "fleet:manage", "fleet:crew", "crew:assign", "crew:run"];
23
27
  export declare const fleetScopeSchema: z.ZodEnum<{
24
28
  "fleet:read": "fleet:read";
25
29
  "fleet:manage": "fleet:manage";
26
30
  "fleet:crew": "fleet:crew";
31
+ "crew:assign": "crew:assign";
32
+ "crew:run": "crew:run";
27
33
  }>;
28
34
  export type FleetScope = z.infer<typeof fleetScopeSchema>;
29
35
  /** `argo` is the one ship of kind `operator` in a fleet; every other ship is an `agent`. */
@@ -77,7 +83,7 @@ export declare const deliveryStateSchema: z.ZodEnum<{
77
83
  }>;
78
84
  export type DeliveryState = z.infer<typeof deliveryStateSchema>;
79
85
  /** The event types written so far. Each later slice adds the ones it writes. */
80
- export declare const EVENT_TYPES: readonly ["FleetInitialised", "ShipCommissioned", "ShipClaimed", "LeaseRevoked", "CredentialRevoked", "StartingPromptIssued", "OperatorPasswordReset", "MessageAccepted", "DeliveryClaimed", "DeliveryAcknowledged", "DeliveryUndeliverable", "DeliveryReturned", "ShipRetired", "DeliveryAbandoned", "DeliveryDismissed", "ShipRenamed", "ShipReported", "SignInTicketIssued", "FleetLimitsChanged", "ViewerSessionStarted"];
86
+ export declare const EVENT_TYPES: readonly ["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"];
81
87
  export declare const eventTypeSchema: z.ZodEnum<{
82
88
  FleetInitialised: "FleetInitialised";
83
89
  ShipCommissioned: "ShipCommissioned";
@@ -99,5 +105,11 @@ export declare const eventTypeSchema: z.ZodEnum<{
99
105
  SignInTicketIssued: "SignInTicketIssued";
100
106
  FleetLimitsChanged: "FleetLimitsChanged";
101
107
  ViewerSessionStarted: "ViewerSessionStarted";
108
+ CrewRequested: "CrewRequested";
109
+ CrewRequestRemoved: "CrewRequestRemoved";
110
+ CrewAssigned: "CrewAssigned";
111
+ CrewStatusChanged: "CrewStatusChanged";
112
+ CrewRequestExplained: "CrewRequestExplained";
102
113
  }>;
103
114
  export type EventType = z.infer<typeof eventTypeSchema>;
115
+ export * from './mcp-url.js';
@@ -2,17 +2,19 @@ import { z } from 'zod';
2
2
  /**
3
3
  * The fleet's shared vocabulary (docs/blueprint.md, "Ubiquitous language"):
4
4
  * scopes, ship kinds, ship statuses, lease locations, selector kinds, delivery
5
- * states and event types. Server and web use the same words.
5
+ * states and event types. Core and console use the same words.
6
6
  */
7
7
  /** A permission of a ship, stored on the server with the ship and checked before every call. */
8
- export const SCOPES = ['messages:send', 'messages:receive', 'fleet:read', 'fleet:manage', 'fleet:crew'];
8
+ export const SCOPES = ['messages:send', 'messages:receive', 'fleet:read', 'fleet:manage', 'fleet:crew', 'crew:assign', 'crew:run'];
9
9
  export const scopeSchema = z.enum(SCOPES);
10
10
  /**
11
11
  * The scopes commissioning may add to an agent ship, beside sending and
12
- * receiving, which every agent ship has (ADR 0002). `fleet:crew` is a
12
+ * receiving, which every agent ship has (ADR 0002). `fleet:crew` is the 0.17
13
13
  * trierarch's: it reads one ship, gets its starting prompt and releases it.
14
+ * `crew:assign` writes crew request assignments; `crew:run` crews the ships
15
+ * whose requests are assigned to its ship (decision 0029).
14
16
  */
15
- export const FLEET_SCOPES = ['fleet:read', 'fleet:manage', 'fleet:crew'];
17
+ export const FLEET_SCOPES = ['fleet:read', 'fleet:manage', 'fleet:crew', 'crew:assign', 'crew:run'];
16
18
  export const fleetScopeSchema = z.enum(FLEET_SCOPES);
17
19
  /** `argo` is the one ship of kind `operator` in a fleet; every other ship is an `agent`. */
18
20
  export const SHIP_KINDS = ['operator', 'agent', 'viewer'];
@@ -58,6 +60,12 @@ export const EVENT_TYPES = [
58
60
  'SignInTicketIssued',
59
61
  'FleetLimitsChanged',
60
62
  'ViewerSessionStarted',
63
+ 'CrewRequested',
64
+ 'CrewRequestRemoved',
65
+ 'CrewAssigned',
66
+ 'CrewStatusChanged',
67
+ 'CrewRequestExplained',
61
68
  ];
62
69
  export const eventTypeSchema = z.enum(EVENT_TYPES);
70
+ export * from './mcp-url.js';
63
71
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/fleet/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;GAIG;AAEH,gGAAgG;AAChG,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,eAAe,EAAE,kBAAkB,EAAE,YAAY,EAAE,cAAc,EAAE,YAAY,CAAU,CAAC;AACjH,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAG1C;;;;GAIG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,YAAY,EAAE,cAAc,EAAE,YAAY,CAAU,CAAC;AAClF,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;AAGrD,4FAA4F;AAC5F,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,UAAU,EAAE,OAAO,EAAE,QAAQ,CAAU,CAAC;AACnE,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;AAGjD,kFAAkF;AAClF,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAU,CAAC;AAC9E,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;AAGzD;;;GAGG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,cAAc,EAAE,QAAQ,EAAE,SAAS,CAAU,CAAC;AAC5E,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;AAGtD,2GAA2G;AAC3G,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,MAAM,EAAE,MAAM,CAAU,CAAC;AACxD,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;AAGzD;;;;GAIG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,SAAS,EAAE,WAAW,EAAE,cAAc,EAAE,eAAe,EAAE,WAAW,EAAE,WAAW,CAAU,CAAC;AAC5H,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;AAG3D,gFAAgF;AAChF,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,kBAAkB;IAClB,kBAAkB;IAClB,aAAa;IACb,cAAc;IACd,mBAAmB;IACnB,sBAAsB;IACtB,uBAAuB;IACvB,iBAAiB;IACjB,iBAAiB;IACjB,sBAAsB;IACtB,uBAAuB;IACvB,kBAAkB;IAClB,aAAa;IACb,mBAAmB;IACnB,mBAAmB;IACnB,aAAa;IACb,cAAc;IACd,oBAAoB;IACpB,oBAAoB;IACpB,sBAAsB;CACd,CAAC;AACX,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/fleet/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;GAIG;AAEH,gGAAgG;AAChG,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,eAAe,EAAE,kBAAkB,EAAE,YAAY,EAAE,cAAc,EAAE,YAAY,EAAE,aAAa,EAAE,UAAU,CAAU,CAAC;AAC5I,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAG1C;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,YAAY,EAAE,cAAc,EAAE,YAAY,EAAE,aAAa,EAAE,UAAU,CAAU,CAAC;AAC7G,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;AAGrD,4FAA4F;AAC5F,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,UAAU,EAAE,OAAO,EAAE,QAAQ,CAAU,CAAC;AACnE,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;AAGjD,kFAAkF;AAClF,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAU,CAAC;AAC9E,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;AAGzD;;;GAGG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,cAAc,EAAE,QAAQ,EAAE,SAAS,CAAU,CAAC;AAC5E,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;AAGtD,2GAA2G;AAC3G,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,MAAM,EAAE,MAAM,CAAU,CAAC;AACxD,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;AAGzD;;;;GAIG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,SAAS,EAAE,WAAW,EAAE,cAAc,EAAE,eAAe,EAAE,WAAW,EAAE,WAAW,CAAU,CAAC;AAC5H,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;AAG3D,gFAAgF;AAChF,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,kBAAkB;IAClB,kBAAkB;IAClB,aAAa;IACb,cAAc;IACd,mBAAmB;IACnB,sBAAsB;IACtB,uBAAuB;IACvB,iBAAiB;IACjB,iBAAiB;IACjB,sBAAsB;IACtB,uBAAuB;IACvB,kBAAkB;IAClB,aAAa;IACb,mBAAmB;IACnB,mBAAmB;IACnB,aAAa;IACb,cAAc;IACd,oBAAoB;IACpB,oBAAoB;IACpB,sBAAsB;IACtB,eAAe;IACf,oBAAoB;IACpB,cAAc;IACd,mBAAmB;IACnB,sBAAsB;CACd,CAAC;AACX,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;AAGnD,cAAc,cAAc,CAAC"}
@@ -0,0 +1,7 @@
1
+ /** Where the server serves the ship contract as MCP tools. */
2
+ export declare const MCP_PATH = "/mcp";
3
+ /**
4
+ * The fleet's MCP URL, which every starting prompt carries: `/mcp` under the
5
+ * public URL, keeping its path, whether or not it ends in a slash.
6
+ */
7
+ export declare function mcpUrlOf(publicUrl: string): string;
@@ -0,0 +1,10 @@
1
+ /** Where the server serves the ship contract as MCP tools. */
2
+ export const MCP_PATH = '/mcp';
3
+ /**
4
+ * The fleet's MCP URL, which every starting prompt carries: `/mcp` under the
5
+ * public URL, keeping its path, whether or not it ends in a slash.
6
+ */
7
+ export function mcpUrlOf(publicUrl) {
8
+ return `${publicUrl.replace(/\/+$/, '')}${MCP_PATH}`;
9
+ }
10
+ //# sourceMappingURL=mcp-url.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp-url.js","sourceRoot":"","sources":["../../src/fleet/mcp-url.ts"],"names":[],"mappings":"AAAA,8DAA8D;AAC9D,MAAM,CAAC,MAAM,QAAQ,GAAG,MAAM,CAAC;AAE/B;;;GAGG;AACH,MAAM,UAAU,QAAQ,CAAC,SAAiB;IACxC,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,GAAG,QAAQ,EAAE,CAAC;AACvD,CAAC"}
@@ -59,6 +59,8 @@ export declare const consoleSessionOutputSchema: z.ZodObject<{
59
59
  "fleet:read": "fleet:read";
60
60
  "fleet:manage": "fleet:manage";
61
61
  "fleet:crew": "fleet:crew";
62
+ "crew:assign": "crew:assign";
63
+ "crew:run": "crew:run";
62
64
  }>>;
63
65
  }, z.core.$strip>;
64
66
  export type ConsoleSessionOutput = z.infer<typeof consoleSessionOutputSchema>;
@@ -0,0 +1,152 @@
1
+ import { z } from 'zod';
2
+ /**
3
+ * Inputs and outputs of the crew request procedures (decision 0029): a
4
+ * standing request that a ship be kept crewed, with settings the server
5
+ * stores without meaning. A requester with fleet:manage sets and removes it.
6
+ */
7
+ /**
8
+ * The most a crew request's settings may hold: 16 KB as the UTF-8 bytes of
9
+ * their serialized JSON (decision 0029).
10
+ */
11
+ export declare const CREW_REQUEST_SETTINGS_MAX_BYTES: number;
12
+ /** The size of a crew request's settings: the UTF-8 bytes of their serialized JSON. */
13
+ export declare function crewRequestSettingsBytes(settings: CrewRequestSettings): number;
14
+ /**
15
+ * A crew request's settings: one JSON object (harness, workspace, options, an
16
+ * optional first prompt, an optional squadron). Their shape is the trierarch
17
+ * plugin's to check, not the server's.
18
+ */
19
+ export declare const crewRequestSettingsSchema: z.ZodRecord<z.ZodString, z.ZodJSONSchema>;
20
+ export type CrewRequestSettings = z.infer<typeof crewRequestSettingsSchema>;
21
+ /**
22
+ * How the assigned trierarch says its crew of the ship stands (decision 0029):
23
+ * crewing, running, restarting, crashed, or releasing once the request is
24
+ * removed.
25
+ */
26
+ export declare const CREW_STATUSES: readonly ["crewing", "running", "restarting", "crashed", "releasing"];
27
+ export declare const crewStatusSchema: z.ZodEnum<{
28
+ crewing: "crewing";
29
+ running: "running";
30
+ restarting: "restarting";
31
+ crashed: "crashed";
32
+ releasing: "releasing";
33
+ }>;
34
+ export type CrewStatus = z.infer<typeof crewStatusSchema>;
35
+ /** The longest reason the assigner may write on a crew request: one line, as a report's note. */
36
+ export declare const CREW_REQUEST_REASON_MAX_LENGTH = 200;
37
+ /** Input of `fleet.crewRequest`: the ship to keep crewed and its settings, replacing any it holds. */
38
+ export declare const crewRequestInputSchema: z.ZodObject<{
39
+ shipId: z.ZodType<`shp_${string}`, unknown, z.core.$ZodTypeInternals<`shp_${string}`, unknown>>;
40
+ settings: z.ZodRecord<z.ZodString, z.ZodJSONSchema>;
41
+ }, z.core.$strip>;
42
+ export type CrewRequestInput = z.infer<typeof crewRequestInputSchema>;
43
+ /** Output of `fleet.crewRequest`: the version of the settings now held, one more on every request. */
44
+ export declare const crewRequestOutputSchema: z.ZodObject<{
45
+ settingsVersion: z.ZodInt;
46
+ }, z.core.$strip>;
47
+ /** Input of `fleet.removeCrewRequest`: the ship whose crew request goes. */
48
+ export declare const removeCrewRequestInputSchema: z.ZodObject<{
49
+ shipId: z.ZodType<`shp_${string}`, unknown, z.core.$ZodTypeInternals<`shp_${string}`, unknown>>;
50
+ }, z.core.$strip>;
51
+ /** Output of `fleet.removeCrewRequest`: nothing; the OK is the answer. */
52
+ export declare const removeCrewRequestOutputSchema: z.ZodObject<{}, z.core.$strict>;
53
+ /**
54
+ * A ship's crew request as the fleet list shows it (ISO 8601 in UTC): its
55
+ * settings version, when it was requested, its assignment and its status,
56
+ * never its settings.
57
+ */
58
+ export declare const listedCrewRequestSchema: z.ZodObject<{
59
+ settingsVersion: z.ZodInt;
60
+ requestedAt: z.ZodISODateTime;
61
+ assignedTo: z.ZodNullable<z.ZodObject<{
62
+ id: z.ZodType<`shp_${string}`, unknown, z.core.$ZodTypeInternals<`shp_${string}`, unknown>>;
63
+ name: z.ZodString;
64
+ }, z.core.$strip>>;
65
+ status: z.ZodNullable<z.ZodEnum<{
66
+ crewing: "crewing";
67
+ running: "running";
68
+ restarting: "restarting";
69
+ crashed: "crashed";
70
+ releasing: "releasing";
71
+ }>>;
72
+ reason: z.ZodNullable<z.ZodString>;
73
+ crewedBy: z.ZodNullable<z.ZodObject<{
74
+ id: z.ZodType<`shp_${string}`, unknown, z.core.$ZodTypeInternals<`shp_${string}`, unknown>>;
75
+ name: z.ZodString;
76
+ }, z.core.$strip>>;
77
+ }, z.core.$strip>;
78
+ /** A ship's crew request whole, for its page: as the fleet list shows it, with its settings. */
79
+ export declare const crewRequestSchema: z.ZodObject<{
80
+ settingsVersion: z.ZodInt;
81
+ requestedAt: z.ZodISODateTime;
82
+ assignedTo: z.ZodNullable<z.ZodObject<{
83
+ id: z.ZodType<`shp_${string}`, unknown, z.core.$ZodTypeInternals<`shp_${string}`, unknown>>;
84
+ name: z.ZodString;
85
+ }, z.core.$strip>>;
86
+ status: z.ZodNullable<z.ZodEnum<{
87
+ crewing: "crewing";
88
+ running: "running";
89
+ restarting: "restarting";
90
+ crashed: "crashed";
91
+ releasing: "releasing";
92
+ }>>;
93
+ reason: z.ZodNullable<z.ZodString>;
94
+ crewedBy: z.ZodNullable<z.ZodObject<{
95
+ id: z.ZodType<`shp_${string}`, unknown, z.core.$ZodTypeInternals<`shp_${string}`, unknown>>;
96
+ name: z.ZodString;
97
+ }, z.core.$strip>>;
98
+ settings: z.ZodRecord<z.ZodString, z.ZodJSONSchema>;
99
+ }, z.core.$strip>;
100
+ /** Input of `fleet.assignCrew` (crew:assign): the ship whose request to assign, and the trierarch ship that crews it. */
101
+ export declare const assignCrewInputSchema: z.ZodObject<{
102
+ shipId: z.ZodType<`shp_${string}`, unknown, z.core.$ZodTypeInternals<`shp_${string}`, unknown>>;
103
+ trierarchShipId: z.ZodType<`shp_${string}`, unknown, z.core.$ZodTypeInternals<`shp_${string}`, unknown>>;
104
+ }, z.core.$strip>;
105
+ /** Output of `fleet.assignCrew`: nothing; the OK is the answer. */
106
+ export declare const assignCrewOutputSchema: z.ZodObject<{}, z.core.$strict>;
107
+ /** Input of `fleet.reportCrewStatus` (crew:run): the ship and how its crew stands. */
108
+ export declare const reportCrewStatusInputSchema: z.ZodObject<{
109
+ shipId: z.ZodType<`shp_${string}`, unknown, z.core.$ZodTypeInternals<`shp_${string}`, unknown>>;
110
+ status: z.ZodEnum<{
111
+ crewing: "crewing";
112
+ running: "running";
113
+ restarting: "restarting";
114
+ crashed: "crashed";
115
+ releasing: "releasing";
116
+ }>;
117
+ }, z.core.$strip>;
118
+ /** Output of `fleet.reportCrewStatus`: nothing; the OK is the answer. */
119
+ export declare const reportCrewStatusOutputSchema: z.ZodObject<{}, z.core.$strict>;
120
+ /** Input of `fleet.confirmCrewRelease` (crew:run): the ship of the releasing request. */
121
+ export declare const confirmCrewReleaseInputSchema: z.ZodObject<{
122
+ shipId: z.ZodType<`shp_${string}`, unknown, z.core.$ZodTypeInternals<`shp_${string}`, unknown>>;
123
+ }, z.core.$strip>;
124
+ /** Output of `fleet.confirmCrewRelease`: nothing; the OK is the answer. */
125
+ export declare const confirmCrewReleaseOutputSchema: z.ZodObject<{}, z.core.$strict>;
126
+ /**
127
+ * Output of `fleet.assignedCrewRequests` (crew:run): the crew requests
128
+ * assigned to the caller's ship, oldest ship first (ISO 8601 in UTC).
129
+ */
130
+ export declare const assignedCrewRequestsOutputSchema: z.ZodArray<z.ZodObject<{
131
+ shipId: z.ZodType<`shp_${string}`, unknown, z.core.$ZodTypeInternals<`shp_${string}`, unknown>>;
132
+ settings: z.ZodRecord<z.ZodString, z.ZodJSONSchema>;
133
+ settingsVersion: z.ZodInt;
134
+ requestedAt: z.ZodISODateTime;
135
+ status: z.ZodNullable<z.ZodEnum<{
136
+ crewing: "crewing";
137
+ running: "running";
138
+ restarting: "restarting";
139
+ crashed: "crashed";
140
+ releasing: "releasing";
141
+ }>>;
142
+ }, z.core.$strip>>;
143
+ /**
144
+ * Input of `fleet.explainCrewRequest` (crew:assign): why no trierarch can
145
+ * take the ship's unassigned request, trimmed, one line; null clears it.
146
+ */
147
+ export declare const explainCrewRequestInputSchema: z.ZodObject<{
148
+ shipId: z.ZodType<`shp_${string}`, unknown, z.core.$ZodTypeInternals<`shp_${string}`, unknown>>;
149
+ reason: z.ZodNullable<z.ZodString>;
150
+ }, z.core.$strip>;
151
+ /** Output of `fleet.explainCrewRequest`: nothing; the OK is the answer. */
152
+ export declare const explainCrewRequestOutputSchema: z.ZodObject<{}, z.core.$strict>;
@@ -0,0 +1,102 @@
1
+ import { z } from 'zod';
2
+ import { idSchema } from '../ids/index.js';
3
+ /**
4
+ * Inputs and outputs of the crew request procedures (decision 0029): a
5
+ * standing request that a ship be kept crewed, with settings the server
6
+ * stores without meaning. A requester with fleet:manage sets and removes it.
7
+ */
8
+ /**
9
+ * The most a crew request's settings may hold: 16 KB as the UTF-8 bytes of
10
+ * their serialized JSON (decision 0029).
11
+ */
12
+ export const CREW_REQUEST_SETTINGS_MAX_BYTES = 16 * 1024;
13
+ const utf8 = new TextEncoder();
14
+ /** The size of a crew request's settings: the UTF-8 bytes of their serialized JSON. */
15
+ export function crewRequestSettingsBytes(settings) {
16
+ return utf8.encode(JSON.stringify(settings)).byteLength;
17
+ }
18
+ /**
19
+ * A crew request's settings: one JSON object (harness, workspace, options, an
20
+ * optional first prompt, an optional squadron). Their shape is the trierarch
21
+ * plugin's to check, not the server's.
22
+ */
23
+ export const crewRequestSettingsSchema = z.record(z.string(), z.json());
24
+ /**
25
+ * How the assigned trierarch says its crew of the ship stands (decision 0029):
26
+ * crewing, running, restarting, crashed, or releasing once the request is
27
+ * removed.
28
+ */
29
+ export const CREW_STATUSES = ['crewing', 'running', 'restarting', 'crashed', 'releasing'];
30
+ export const crewStatusSchema = z.enum(CREW_STATUSES);
31
+ /** The longest reason the assigner may write on a crew request: one line, as a report's note. */
32
+ export const CREW_REQUEST_REASON_MAX_LENGTH = 200;
33
+ const REASON_MESSAGE = `A reason is one line of at most ${String(CREW_REQUEST_REASON_MAX_LENGTH)} characters`;
34
+ /** Input of `fleet.crewRequest`: the ship to keep crewed and its settings, replacing any it holds. */
35
+ export const crewRequestInputSchema = z.object({
36
+ shipId: idSchema('ship'),
37
+ settings: crewRequestSettingsSchema,
38
+ });
39
+ /** Output of `fleet.crewRequest`: the version of the settings now held, one more on every request. */
40
+ export const crewRequestOutputSchema = z.object({ settingsVersion: z.int().min(1) });
41
+ /** Input of `fleet.removeCrewRequest`: the ship whose crew request goes. */
42
+ export const removeCrewRequestInputSchema = z.object({ shipId: idSchema('ship') });
43
+ /** Output of `fleet.removeCrewRequest`: nothing; the OK is the answer. */
44
+ export const removeCrewRequestOutputSchema = z.strictObject({});
45
+ /**
46
+ * A ship's crew request as the fleet list shows it (ISO 8601 in UTC): its
47
+ * settings version, when it was requested, its assignment and its status,
48
+ * never its settings.
49
+ */
50
+ export const listedCrewRequestSchema = z.object({
51
+ settingsVersion: z.int().min(1),
52
+ requestedAt: z.iso.datetime(),
53
+ /** The trierarch ship it is assigned to; null while unassigned, the operator's to-do. */
54
+ assignedTo: z.object({ id: idSchema('ship'), name: z.string() }).nullable(),
55
+ /** How its trierarch says the crew stands; null until it says. */
56
+ status: crewStatusSchema.nullable(),
57
+ /** Why no trierarch can take it, written by the assigner while unassigned; null when none. */
58
+ reason: z.string().nullable(),
59
+ /** The ship that got the starting prompt the ship's crew claimed with: argo for a hand crew, or its trierarch; null while not crewed. */
60
+ crewedBy: z.object({ id: idSchema('ship'), name: z.string() }).nullable(),
61
+ });
62
+ /** A ship's crew request whole, for its page: as the fleet list shows it, with its settings. */
63
+ export const crewRequestSchema = listedCrewRequestSchema.extend({ settings: crewRequestSettingsSchema });
64
+ /** Input of `fleet.assignCrew` (crew:assign): the ship whose request to assign, and the trierarch ship that crews it. */
65
+ export const assignCrewInputSchema = z.object({ shipId: idSchema('ship'), trierarchShipId: idSchema('ship') });
66
+ /** Output of `fleet.assignCrew`: nothing; the OK is the answer. */
67
+ export const assignCrewOutputSchema = z.strictObject({});
68
+ /** Input of `fleet.reportCrewStatus` (crew:run): the ship and how its crew stands. */
69
+ export const reportCrewStatusInputSchema = z.object({ shipId: idSchema('ship'), status: crewStatusSchema });
70
+ /** Output of `fleet.reportCrewStatus`: nothing; the OK is the answer. */
71
+ export const reportCrewStatusOutputSchema = z.strictObject({});
72
+ /** Input of `fleet.confirmCrewRelease` (crew:run): the ship of the releasing request. */
73
+ export const confirmCrewReleaseInputSchema = z.object({ shipId: idSchema('ship') });
74
+ /** Output of `fleet.confirmCrewRelease`: nothing; the OK is the answer. */
75
+ export const confirmCrewReleaseOutputSchema = z.strictObject({});
76
+ /**
77
+ * Output of `fleet.assignedCrewRequests` (crew:run): the crew requests
78
+ * assigned to the caller's ship, oldest ship first (ISO 8601 in UTC).
79
+ */
80
+ export const assignedCrewRequestsOutputSchema = z.array(z.object({
81
+ shipId: idSchema('ship'),
82
+ settings: crewRequestSettingsSchema,
83
+ settingsVersion: z.int().min(1),
84
+ requestedAt: z.iso.datetime(),
85
+ status: crewStatusSchema.nullable(),
86
+ }));
87
+ /**
88
+ * Input of `fleet.explainCrewRequest` (crew:assign): why no trierarch can
89
+ * take the ship's unassigned request, trimmed, one line; null clears it.
90
+ */
91
+ export const explainCrewRequestInputSchema = z.object({
92
+ shipId: idSchema('ship'),
93
+ reason: z
94
+ .string()
95
+ .trim()
96
+ .max(CREW_REQUEST_REASON_MAX_LENGTH, REASON_MESSAGE)
97
+ .refine((reason) => !/[\r\n]/.test(reason), REASON_MESSAGE)
98
+ .nullable(),
99
+ });
100
+ /** Output of `fleet.explainCrewRequest`: nothing; the OK is the answer. */
101
+ export const explainCrewRequestOutputSchema = z.strictObject({});
102
+ //# sourceMappingURL=crew-request.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"crew-request.js","sourceRoot":"","sources":["../../src/schemas/crew-request.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAE3C;;;;GAIG;AAEH;;;GAGG;AACH,MAAM,CAAC,MAAM,+BAA+B,GAAG,EAAE,GAAG,IAAI,CAAC;AAEzD,MAAM,IAAI,GAAG,IAAI,WAAW,EAAE,CAAC;AAE/B,uFAAuF;AACvF,MAAM,UAAU,wBAAwB,CAAC,QAA6B;IACpE,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC;AAC1D,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;AAIxE;;;;GAIG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,SAAS,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,WAAW,CAAU,CAAC;AACnG,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;AAGtD,iGAAiG;AACjG,MAAM,CAAC,MAAM,8BAA8B,GAAG,GAAG,CAAC;AAElD,MAAM,cAAc,GAAG,mCAAmC,MAAM,CAAC,8BAA8B,CAAC,aAAa,CAAC;AAE9G,sGAAsG;AACtG,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7C,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC;IACxB,QAAQ,EAAE,yBAAyB;CACpC,CAAC,CAAC;AAIH,sGAAsG;AACtG,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,eAAe,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;AAErF,4EAA4E;AAC5E,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AAEnF,0EAA0E;AAC1E,MAAM,CAAC,MAAM,6BAA6B,GAAG,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;AAEhE;;;;GAIG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9C,eAAe,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC/B,WAAW,EAAE,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE;IAC7B,yFAAyF;IACzF,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,QAAQ,EAAE;IAC3E,kEAAkE;IAClE,MAAM,EAAE,gBAAgB,CAAC,QAAQ,EAAE;IACnC,8FAA8F;IAC9F,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC7B,yIAAyI;IACzI,QAAQ,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,QAAQ,EAAE;CAC1E,CAAC,CAAC;AAEH,gGAAgG;AAChG,MAAM,CAAC,MAAM,iBAAiB,GAAG,uBAAuB,CAAC,MAAM,CAAC,EAAE,QAAQ,EAAE,yBAAyB,EAAE,CAAC,CAAC;AAEzG,yHAAyH;AACzH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,eAAe,EAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AAE/G,mEAAmE;AACnE,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;AAEzD,sFAAsF;AACtF,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC,CAAC;AAE5G,yEAAyE;AACzE,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;AAE/D,yFAAyF;AACzF,MAAM,CAAC,MAAM,6BAA6B,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;AAEpF,2EAA2E;AAC3E,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;AAEjE;;;GAGG;AACH,MAAM,CAAC,MAAM,gCAAgC,GAAG,CAAC,CAAC,KAAK,CACrD,CAAC,CAAC,MAAM,CAAC;IACP,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC;IACxB,QAAQ,EAAE,yBAAyB;IACnC,eAAe,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC/B,WAAW,EAAE,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE;IAC7B,MAAM,EAAE,gBAAgB,CAAC,QAAQ,EAAE;CACpC,CAAC,CACH,CAAC;AAEF;;;GAGG;AACH,MAAM,CAAC,MAAM,6BAA6B,GAAG,CAAC,CAAC,MAAM,CAAC;IACpD,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC;IACxB,MAAM,EAAE,CAAC;SACN,MAAM,EAAE;SACR,IAAI,EAAE;SACN,GAAG,CAAC,8BAA8B,EAAE,cAAc,CAAC;SACnD,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,cAAc,CAAC;SAC1D,QAAQ,EAAE;CACd,CAAC,CAAC;AAEH,2EAA2E;AAC3E,MAAM,CAAC,MAAM,8BAA8B,GAAG,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC"}
@@ -27,6 +27,8 @@ export declare const commissionShipInputSchema: z.ZodObject<{
27
27
  "fleet:read": "fleet:read";
28
28
  "fleet:manage": "fleet:manage";
29
29
  "fleet:crew": "fleet:crew";
30
+ "crew:assign": "crew:assign";
31
+ "crew:run": "crew:run";
30
32
  }>>>;
31
33
  note: z.ZodOptional<z.ZodString>;
32
34
  idempotencyKey: z.ZodString;
@@ -182,6 +184,8 @@ export declare const listedShipSchema: z.ZodObject<{
182
184
  "fleet:read": "fleet:read";
183
185
  "fleet:manage": "fleet:manage";
184
186
  "fleet:crew": "fleet:crew";
187
+ "crew:assign": "crew:assign";
188
+ "crew:run": "crew:run";
185
189
  }>>;
186
190
  report: z.ZodNullable<z.ZodObject<{
187
191
  state: z.ZodEnum<{
@@ -191,6 +195,27 @@ export declare const listedShipSchema: z.ZodObject<{
191
195
  }>;
192
196
  note: z.ZodNullable<z.ZodString>;
193
197
  reportedAt: z.ZodISODateTime;
198
+ detailsVersion: z.ZodInt;
199
+ }, z.core.$strip>>;
200
+ crewRequest: z.ZodNullable<z.ZodObject<{
201
+ settingsVersion: z.ZodInt;
202
+ requestedAt: z.ZodISODateTime;
203
+ assignedTo: z.ZodNullable<z.ZodObject<{
204
+ id: z.ZodType<`shp_${string}`, unknown, z.core.$ZodTypeInternals<`shp_${string}`, unknown>>;
205
+ name: z.ZodString;
206
+ }, z.core.$strip>>;
207
+ status: z.ZodNullable<z.ZodEnum<{
208
+ crewing: "crewing";
209
+ running: "running";
210
+ restarting: "restarting";
211
+ crashed: "crashed";
212
+ releasing: "releasing";
213
+ }>>;
214
+ reason: z.ZodNullable<z.ZodString>;
215
+ crewedBy: z.ZodNullable<z.ZodObject<{
216
+ id: z.ZodType<`shp_${string}`, unknown, z.core.$ZodTypeInternals<`shp_${string}`, unknown>>;
217
+ name: z.ZodString;
218
+ }, z.core.$strip>>;
194
219
  }, z.core.$strip>>;
195
220
  awaitingCrewSince: z.ZodNullable<z.ZodISODateTime>;
196
221
  retiredAt: z.ZodNullable<z.ZodISODateTime>;
@@ -246,6 +271,8 @@ export declare const fleetListOutputSchema: z.ZodArray<z.ZodObject<{
246
271
  "fleet:read": "fleet:read";
247
272
  "fleet:manage": "fleet:manage";
248
273
  "fleet:crew": "fleet:crew";
274
+ "crew:assign": "crew:assign";
275
+ "crew:run": "crew:run";
249
276
  }>>;
250
277
  report: z.ZodNullable<z.ZodObject<{
251
278
  state: z.ZodEnum<{
@@ -255,6 +282,27 @@ export declare const fleetListOutputSchema: z.ZodArray<z.ZodObject<{
255
282
  }>;
256
283
  note: z.ZodNullable<z.ZodString>;
257
284
  reportedAt: z.ZodISODateTime;
285
+ detailsVersion: z.ZodInt;
286
+ }, z.core.$strip>>;
287
+ crewRequest: z.ZodNullable<z.ZodObject<{
288
+ settingsVersion: z.ZodInt;
289
+ requestedAt: z.ZodISODateTime;
290
+ assignedTo: z.ZodNullable<z.ZodObject<{
291
+ id: z.ZodType<`shp_${string}`, unknown, z.core.$ZodTypeInternals<`shp_${string}`, unknown>>;
292
+ name: z.ZodString;
293
+ }, z.core.$strip>>;
294
+ status: z.ZodNullable<z.ZodEnum<{
295
+ crewing: "crewing";
296
+ running: "running";
297
+ restarting: "restarting";
298
+ crashed: "crashed";
299
+ releasing: "releasing";
300
+ }>>;
301
+ reason: z.ZodNullable<z.ZodString>;
302
+ crewedBy: z.ZodNullable<z.ZodObject<{
303
+ id: z.ZodType<`shp_${string}`, unknown, z.core.$ZodTypeInternals<`shp_${string}`, unknown>>;
304
+ name: z.ZodString;
305
+ }, z.core.$strip>>;
258
306
  }, z.core.$strip>>;
259
307
  awaitingCrewSince: z.ZodNullable<z.ZodISODateTime>;
260
308
  retiredAt: z.ZodNullable<z.ZodISODateTime>;
@@ -298,6 +346,11 @@ export declare const liveFleetEventSchema: z.ZodObject<{
298
346
  SignInTicketIssued: "SignInTicketIssued";
299
347
  FleetLimitsChanged: "FleetLimitsChanged";
300
348
  ViewerSessionStarted: "ViewerSessionStarted";
349
+ CrewRequested: "CrewRequested";
350
+ CrewRequestRemoved: "CrewRequestRemoved";
351
+ CrewAssigned: "CrewAssigned";
352
+ CrewStatusChanged: "CrewStatusChanged";
353
+ CrewRequestExplained: "CrewRequestExplained";
301
354
  }>;
302
355
  occurredAt: z.ZodISODateTime;
303
356
  actorShipId: z.ZodNullable<z.ZodType<`shp_${string}`, unknown, z.core.$ZodTypeInternals<`shp_${string}`, unknown>>>;
@@ -336,6 +389,11 @@ export declare const fleetStreamItemSchema: z.ZodDiscriminatedUnion<[z.ZodObject
336
389
  SignInTicketIssued: "SignInTicketIssued";
337
390
  FleetLimitsChanged: "FleetLimitsChanged";
338
391
  ViewerSessionStarted: "ViewerSessionStarted";
392
+ CrewRequested: "CrewRequested";
393
+ CrewRequestRemoved: "CrewRequestRemoved";
394
+ CrewAssigned: "CrewAssigned";
395
+ CrewStatusChanged: "CrewStatusChanged";
396
+ CrewRequestExplained: "CrewRequestExplained";
339
397
  }>;
340
398
  occurredAt: z.ZodISODateTime;
341
399
  actorShipId: z.ZodNullable<z.ZodType<`shp_${string}`, unknown, z.core.$ZodTypeInternals<`shp_${string}`, unknown>>>;
@@ -2,7 +2,8 @@ import { z } from 'zod';
2
2
  import { eventTypeSchema, fleetScopeSchema, locationKindSchema, scopeSchema, shipKindSchema, shipStatusSchema } from '../fleet/index.js';
3
3
  import { idSchema } from '../ids/index.js';
4
4
  import { idempotencyKeySchema } from './idempotency-key.js';
5
- import { reportStateSchema } from './report.js';
5
+ import { listedCrewRequestSchema } from './crew-request.js';
6
+ import { listedReportSchema } from './report.js';
6
7
  /**
7
8
  * Inputs and outputs of the fleet procedures: commission a ship, get its
8
9
  * starting prompt, release it, list the fleet, follow its events live.
@@ -151,16 +152,13 @@ export const listedShipSchema = z.object({
151
152
  /** What the ship may do, checked on every call: every agent ship sends and receives, argo has all. */
152
153
  scopes: z.array(scopeSchema),
153
154
  /**
154
- * The crew's last report (ISO 8601 in UTC): its state, its note, and when it
155
- * last reported. Null until the crew reports, and for a ship no session crews.
155
+ * The crew's last report (ISO 8601 in UTC): its state, its note, when it
156
+ * last reported and the version of its details, never the details
157
+ * themselves. Null until the crew reports, and for a ship no session crews.
156
158
  */
157
- report: z
158
- .object({
159
- state: reportStateSchema,
160
- note: z.string().nullable(),
161
- reportedAt: z.iso.datetime(),
162
- })
163
- .nullable(),
159
+ report: listedReportSchema.nullable(),
160
+ /** The ship's crew request (decision 0029); null when it holds none. */
161
+ crewRequest: listedCrewRequestSchema.nullable(),
164
162
  /** Since when the ship awaits crew (ISO 8601 in UTC): its commission, or the end of its last session. Null unless it awaits crew. */
165
163
  awaitingCrewSince: z.iso.datetime().nullable(),
166
164
  /** When the operator retired the ship (ISO 8601 in UTC); null while it is active. */
@@ -1 +1 @@
1
- {"version":3,"file":"fleet.js","sourceRoot":"","sources":["../../src/schemas/fleet.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fleet.js","sourceRoot":"","sources":["../../src/schemas/fleet.ts"],"names":[],"mappings":"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"}
@@ -42,6 +42,11 @@ export declare const followFleetOutputSchema: z.ZodObject<{
42
42
  SignInTicketIssued: "SignInTicketIssued";
43
43
  FleetLimitsChanged: "FleetLimitsChanged";
44
44
  ViewerSessionStarted: "ViewerSessionStarted";
45
+ CrewRequested: "CrewRequested";
46
+ CrewRequestRemoved: "CrewRequestRemoved";
47
+ CrewAssigned: "CrewAssigned";
48
+ CrewStatusChanged: "CrewStatusChanged";
49
+ CrewRequestExplained: "CrewRequestExplained";
45
50
  }>;
46
51
  occurredAt: z.ZodISODateTime;
47
52
  actorShipId: z.ZodNullable<z.ZodType<`shp_${string}`, unknown, z.core.$ZodTypeInternals<`shp_${string}`, unknown>>>;
@@ -75,7 +75,11 @@ export declare const shipDetailOutputSchema: z.ZodObject<{
75
75
  "fleet:read": "fleet:read";
76
76
  "fleet:manage": "fleet:manage";
77
77
  "fleet:crew": "fleet:crew";
78
+ "crew:assign": "crew:assign";
79
+ "crew:run": "crew:run";
78
80
  }>>;
81
+ awaitingCrewSince: z.ZodNullable<z.ZodISODateTime>;
82
+ retiredAt: z.ZodNullable<z.ZodISODateTime>;
79
83
  report: z.ZodNullable<z.ZodObject<{
80
84
  state: z.ZodEnum<{
81
85
  working: "working";
@@ -84,9 +88,30 @@ export declare const shipDetailOutputSchema: z.ZodObject<{
84
88
  }>;
85
89
  note: z.ZodNullable<z.ZodString>;
86
90
  reportedAt: z.ZodISODateTime;
91
+ detailsVersion: z.ZodInt;
92
+ details: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodJSONSchema>>;
93
+ }, z.core.$strip>>;
94
+ crewRequest: z.ZodNullable<z.ZodObject<{
95
+ settingsVersion: z.ZodInt;
96
+ requestedAt: z.ZodISODateTime;
97
+ assignedTo: z.ZodNullable<z.ZodObject<{
98
+ id: z.ZodType<`shp_${string}`, unknown, z.core.$ZodTypeInternals<`shp_${string}`, unknown>>;
99
+ name: z.ZodString;
100
+ }, z.core.$strip>>;
101
+ status: z.ZodNullable<z.ZodEnum<{
102
+ crewing: "crewing";
103
+ running: "running";
104
+ restarting: "restarting";
105
+ crashed: "crashed";
106
+ releasing: "releasing";
107
+ }>>;
108
+ reason: z.ZodNullable<z.ZodString>;
109
+ crewedBy: z.ZodNullable<z.ZodObject<{
110
+ id: z.ZodType<`shp_${string}`, unknown, z.core.$ZodTypeInternals<`shp_${string}`, unknown>>;
111
+ name: z.ZodString;
112
+ }, z.core.$strip>>;
113
+ settings: z.ZodRecord<z.ZodString, z.ZodJSONSchema>;
87
114
  }, z.core.$strip>>;
88
- awaitingCrewSince: z.ZodNullable<z.ZodISODateTime>;
89
- retiredAt: z.ZodNullable<z.ZodISODateTime>;
90
115
  commissionedAt: z.ZodISODateTime;
91
116
  crewedSince: z.ZodNullable<z.ZodISODateTime>;
92
117
  inFlightDeliveries: z.ZodInt;
@@ -118,6 +143,11 @@ export declare const timelineEntrySchema: z.ZodObject<{
118
143
  SignInTicketIssued: "SignInTicketIssued";
119
144
  FleetLimitsChanged: "FleetLimitsChanged";
120
145
  ViewerSessionStarted: "ViewerSessionStarted";
146
+ CrewRequested: "CrewRequested";
147
+ CrewRequestRemoved: "CrewRequestRemoved";
148
+ CrewAssigned: "CrewAssigned";
149
+ CrewStatusChanged: "CrewStatusChanged";
150
+ CrewRequestExplained: "CrewRequestExplained";
121
151
  }>;
122
152
  occurredAt: z.ZodISODateTime;
123
153
  actor: z.ZodNullable<z.ZodObject<{
@@ -175,6 +205,11 @@ export declare const shipTimelineOutputSchema: z.ZodArray<z.ZodObject<{
175
205
  SignInTicketIssued: "SignInTicketIssued";
176
206
  FleetLimitsChanged: "FleetLimitsChanged";
177
207
  ViewerSessionStarted: "ViewerSessionStarted";
208
+ CrewRequested: "CrewRequested";
209
+ CrewRequestRemoved: "CrewRequestRemoved";
210
+ CrewAssigned: "CrewAssigned";
211
+ CrewStatusChanged: "CrewStatusChanged";
212
+ CrewRequestExplained: "CrewRequestExplained";
178
213
  }>;
179
214
  occurredAt: z.ZodISODateTime;
180
215
  actor: z.ZodNullable<z.ZodObject<{
@@ -2,6 +2,8 @@ import { z } from 'zod';
2
2
  import { deliveryStateSchema, eventTypeSchema, locationKindSchema } from '../fleet/index.js';
3
3
  import { idSchema } from '../ids/index.js';
4
4
  import { listedShipSchema } from './fleet.js';
5
+ import { crewRequestSchema } from './crew-request.js';
6
+ import { reportSchema } from './report.js';
5
7
  /**
6
8
  * Inputs and outputs of the history procedures, for the ship page: one ship,
7
9
  * its timeline from the event log, its messages, and one message with the
@@ -24,6 +26,10 @@ export const shipInputSchema = z.object({ shipId: idSchema('ship') });
24
26
  * when it retired.
25
27
  */
26
28
  export const shipDetailOutputSchema = listedShipSchema.extend({
29
+ /** The crew's last report as the fleet lists it, with its details. */
30
+ report: reportSchema.nullable(),
31
+ /** The ship's crew request, settings included. */
32
+ crewRequest: crewRequestSchema.nullable(),
27
33
  commissionedAt: isoTime,
28
34
  crewedSince: isoTime.nullable(),
29
35
  /** What its crew holds in flight now: what a release or a re-crew returns to pending. */
@@ -1 +1 @@
1
- {"version":3,"file":"history.js","sourceRoot":"","sources":["../../src/schemas/history.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"history.js","sourceRoot":"","sources":["../../src/schemas/history.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,5 @@
1
1
  export * from './console.js';
2
+ export * from './crew-request.js';
2
3
  export * from './delivery.js';
3
4
  export * from './fleet.js';
4
5
  export * from './follow.js';
@@ -1,4 +1,5 @@
1
1
  export * from './console.js';
2
+ export * from './crew-request.js';
2
3
  export * from './delivery.js';
3
4
  export * from './fleet.js';
4
5
  export * from './follow.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/schemas/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,sBAAsB,CAAC;AACrC,cAAc,mBAAmB,CAAC;AAClC,cAAc,cAAc,CAAC;AAC7B,cAAc,sBAAsB,CAAC;AACrC,cAAc,aAAa,CAAC;AAC5B,cAAc,qBAAqB,CAAC;AACpC,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/schemas/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,mBAAmB,CAAC;AAClC,cAAc,eAAe,CAAC;AAC9B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC;AAC7B,cAAc,sBAAsB,CAAC;AACrC,cAAc,mBAAmB,CAAC;AAClC,cAAc,cAAc,CAAC;AAC7B,cAAc,sBAAsB,CAAC;AACrC,cAAc,aAAa,CAAC;AAC5B,cAAc,qBAAqB,CAAC;AACpC,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC;AAC5B,cAAc,WAAW,CAAC;AAC1B,cAAc,aAAa,CAAC"}
@@ -11,7 +11,23 @@ export type ReportState = z.infer<typeof reportStateSchema>;
11
11
  export declare const REPORT_NOTE_MAX_LENGTH = 200;
12
12
  /** Whether a note fits on one line. */
13
13
  export declare function isOneLine(text: string): boolean;
14
- /** Input of `report`: the crew's state and a short note on what it is doing, trimmed. Calling it is a check-in. */
14
+ /**
15
+ * The most a report's details may hold: 16 KB as the UTF-8 bytes of their
16
+ * serialized JSON (decision 0028). Status, not storage: content goes
17
+ * elsewhere, by reference.
18
+ */
19
+ export declare const REPORT_DETAILS_MAX_BYTES: number;
20
+ /** The size of a report's details: the UTF-8 bytes of their serialized JSON. */
21
+ export declare function reportDetailsBytes(details: ReportDetails): number;
22
+ /** A report's details: one JSON object, whose meaning lives outside the server (decision 0028). */
23
+ export declare const reportDetailsSchema: z.ZodRecord<z.ZodString, z.ZodJSONSchema>;
24
+ export type ReportDetails = z.infer<typeof reportDetailsSchema>;
25
+ /**
26
+ * Input of `report`: the crew's state and a short note on what it is doing,
27
+ * trimmed, and optionally its details. `details` sets them whole, null clears
28
+ * them; `detailsPatch` applies a JSON Merge Patch (RFC 7386) to them; never
29
+ * both. Left out, the details stay as they are. Calling it is a check-in.
30
+ */
15
31
  export declare const reportInputSchema: z.ZodObject<{
16
32
  state: z.ZodEnum<{
17
33
  working: "working";
@@ -19,7 +35,67 @@ export declare const reportInputSchema: z.ZodObject<{
19
35
  idle: "idle";
20
36
  }>;
21
37
  note: z.ZodOptional<z.ZodString>;
38
+ details: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodJSONSchema>>>;
39
+ detailsPatch: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodJSONSchema>>>;
22
40
  }, z.core.$strip>;
23
41
  export type ReportInput = z.infer<typeof reportInputSchema>;
24
42
  /** Output of `report`: nothing; the OK is the answer. */
25
43
  export declare const reportOutputSchema: z.ZodObject<{}, z.core.$strict>;
44
+ /**
45
+ * A crew's report as the fleet list shows it (ISO 8601 in UTC): its state,
46
+ * its note, when it last reported, and the version of its details, which
47
+ * moves each time they change (0 before any).
48
+ */
49
+ export declare const listedReportSchema: z.ZodObject<{
50
+ state: z.ZodEnum<{
51
+ working: "working";
52
+ blocked: "blocked";
53
+ idle: "idle";
54
+ }>;
55
+ note: z.ZodNullable<z.ZodString>;
56
+ reportedAt: z.ZodISODateTime;
57
+ detailsVersion: z.ZodInt;
58
+ }, z.core.$strip>;
59
+ /** A crew's report whole: as the fleet list shows it, with its details; null when it has none. */
60
+ export declare const reportSchema: z.ZodObject<{
61
+ state: z.ZodEnum<{
62
+ working: "working";
63
+ blocked: "blocked";
64
+ idle: "idle";
65
+ }>;
66
+ note: z.ZodNullable<z.ZodString>;
67
+ reportedAt: z.ZodISODateTime;
68
+ detailsVersion: z.ZodInt;
69
+ details: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodJSONSchema>>;
70
+ }, z.core.$strip>;
71
+ export type ShipReportOutput = z.infer<typeof reportSchema>;
72
+ /**
73
+ * Output of `reportLog`: the crew's own report, and the last report of the
74
+ * ship's previous crew, read-only (the crew log of the previous crew). Each
75
+ * null when there is none.
76
+ */
77
+ export declare const reportLogOutputSchema: z.ZodObject<{
78
+ report: z.ZodNullable<z.ZodObject<{
79
+ state: z.ZodEnum<{
80
+ working: "working";
81
+ blocked: "blocked";
82
+ idle: "idle";
83
+ }>;
84
+ note: z.ZodNullable<z.ZodString>;
85
+ reportedAt: z.ZodISODateTime;
86
+ detailsVersion: z.ZodInt;
87
+ details: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodJSONSchema>>;
88
+ }, z.core.$strip>>;
89
+ previousCrew: z.ZodNullable<z.ZodObject<{
90
+ state: z.ZodEnum<{
91
+ working: "working";
92
+ blocked: "blocked";
93
+ idle: "idle";
94
+ }>;
95
+ note: z.ZodNullable<z.ZodString>;
96
+ reportedAt: z.ZodISODateTime;
97
+ detailsVersion: z.ZodInt;
98
+ details: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodJSONSchema>>;
99
+ }, z.core.$strip>>;
100
+ }, z.core.$strip>;
101
+ export type ReportLogOutput = z.infer<typeof reportLogOutputSchema>;
@@ -9,11 +9,58 @@ const NOTE_MESSAGE = `A note is one line of at most ${String(REPORT_NOTE_MAX_LEN
9
9
  export function isOneLine(text) {
10
10
  return !/[\r\n]/.test(text);
11
11
  }
12
- /** Input of `report`: the crew's state and a short note on what it is doing, trimmed. Calling it is a check-in. */
13
- export const reportInputSchema = z.object({
12
+ /**
13
+ * The most a report's details may hold: 16 KB as the UTF-8 bytes of their
14
+ * serialized JSON (decision 0028). Status, not storage: content goes
15
+ * elsewhere, by reference.
16
+ */
17
+ export const REPORT_DETAILS_MAX_BYTES = 16 * 1024;
18
+ const utf8 = new TextEncoder();
19
+ /** The size of a report's details: the UTF-8 bytes of their serialized JSON. */
20
+ export function reportDetailsBytes(details) {
21
+ return utf8.encode(JSON.stringify(details)).byteLength;
22
+ }
23
+ /** A report's details: one JSON object, whose meaning lives outside the server (decision 0028). */
24
+ export const reportDetailsSchema = z.record(z.string(), z.json());
25
+ /**
26
+ * Input of `report`: the crew's state and a short note on what it is doing,
27
+ * trimmed, and optionally its details. `details` sets them whole, null clears
28
+ * them; `detailsPatch` applies a JSON Merge Patch (RFC 7386) to them; never
29
+ * both. Left out, the details stay as they are. Calling it is a check-in.
30
+ */
31
+ export const reportInputSchema = z
32
+ .object({
14
33
  state: reportStateSchema,
15
34
  note: z.string().trim().max(REPORT_NOTE_MAX_LENGTH, NOTE_MESSAGE).refine(isOneLine, NOTE_MESSAGE).optional(),
35
+ details: reportDetailsSchema.nullable().optional(),
36
+ detailsPatch: reportDetailsSchema.nullable().optional(),
37
+ })
38
+ .refine((input) => input.details === undefined || input.detailsPatch === undefined, {
39
+ message: 'Give details or detailsPatch, not both',
40
+ path: ['detailsPatch'],
16
41
  });
17
42
  /** Output of `report`: nothing; the OK is the answer. */
18
43
  export const reportOutputSchema = z.strictObject({});
44
+ /**
45
+ * A crew's report as the fleet list shows it (ISO 8601 in UTC): its state,
46
+ * its note, when it last reported, and the version of its details, which
47
+ * moves each time they change (0 before any).
48
+ */
49
+ export const listedReportSchema = z.object({
50
+ state: reportStateSchema,
51
+ note: z.string().nullable(),
52
+ reportedAt: z.iso.datetime(),
53
+ detailsVersion: z.int().min(0),
54
+ });
55
+ /** A crew's report whole: as the fleet list shows it, with its details; null when it has none. */
56
+ export const reportSchema = listedReportSchema.extend({ details: reportDetailsSchema.nullable() });
57
+ /**
58
+ * Output of `reportLog`: the crew's own report, and the last report of the
59
+ * ship's previous crew, read-only (the crew log of the previous crew). Each
60
+ * null when there is none.
61
+ */
62
+ export const reportLogOutputSchema = z.object({
63
+ report: reportSchema.nullable(),
64
+ previousCrew: reportSchema.nullable(),
65
+ });
19
66
  //# sourceMappingURL=report.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"report.js","sourceRoot":"","sources":["../../src/schemas/report.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,8FAA8F;AAC9F,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,SAAS,EAAE,SAAS,EAAE,MAAM,CAAU,CAAC;AACrE,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;AAGvD,0CAA0C;AAC1C,MAAM,CAAC,MAAM,sBAAsB,GAAG,GAAG,CAAC;AAE1C,MAAM,YAAY,GAAG,iCAAiC,MAAM,CAAC,sBAAsB,CAAC,aAAa,CAAC;AAElG,uCAAuC;AACvC,MAAM,UAAU,SAAS,CAAC,IAAY;IACpC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC9B,CAAC;AAED,mHAAmH;AACnH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,KAAK,EAAE,iBAAiB;IACxB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,sBAAsB,EAAE,YAAY,CAAC,CAAC,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC,QAAQ,EAAE;CAC7G,CAAC,CAAC;AAIH,yDAAyD;AACzD,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC"}
1
+ {"version":3,"file":"report.js","sourceRoot":"","sources":["../../src/schemas/report.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,8FAA8F;AAC9F,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,SAAS,EAAE,SAAS,EAAE,MAAM,CAAU,CAAC;AACrE,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;AAGvD,0CAA0C;AAC1C,MAAM,CAAC,MAAM,sBAAsB,GAAG,GAAG,CAAC;AAE1C,MAAM,YAAY,GAAG,iCAAiC,MAAM,CAAC,sBAAsB,CAAC,aAAa,CAAC;AAElG,uCAAuC;AACvC,MAAM,UAAU,SAAS,CAAC,IAAY;IACpC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC9B,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,EAAE,GAAG,IAAI,CAAC;AAElD,MAAM,IAAI,GAAG,IAAI,WAAW,EAAE,CAAC;AAE/B,gFAAgF;AAChF,MAAM,UAAU,kBAAkB,CAAC,OAAsB;IACvD,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC;AACzD,CAAC;AAED,mGAAmG;AACnG,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;AAIlE;;;;;GAKG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC;KAC/B,MAAM,CAAC;IACN,KAAK,EAAE,iBAAiB;IACxB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,sBAAsB,EAAE,YAAY,CAAC,CAAC,MAAM,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC,QAAQ,EAAE;IAC5G,OAAO,EAAE,mBAAmB,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAClD,YAAY,EAAE,mBAAmB,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;CACxD,CAAC;KACD,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,OAAO,KAAK,SAAS,IAAI,KAAK,CAAC,YAAY,KAAK,SAAS,EAAE;IAClF,OAAO,EAAE,wCAAwC;IACjD,IAAI,EAAE,CAAC,cAAc,CAAC;CACvB,CAAC,CAAC;AAIL,yDAAyD;AACzD,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;AAErD;;;;GAIG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,MAAM,CAAC;IACzC,KAAK,EAAE,iBAAiB;IACxB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC3B,UAAU,EAAE,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE;IAC5B,cAAc,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;CAC/B,CAAC,CAAC;AAEH,kGAAkG;AAClG,MAAM,CAAC,MAAM,YAAY,GAAG,kBAAkB,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,mBAAmB,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;AAInG;;;;GAIG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5C,MAAM,EAAE,YAAY,CAAC,QAAQ,EAAE;IAC/B,YAAY,EAAE,YAAY,CAAC,QAAQ,EAAE;CACtC,CAAC,CAAC"}
@@ -13,12 +13,12 @@ export declare const FIRST_PROMPT_MAX_BYTES = 8192;
13
13
  /** Where an entry stands in the trierarch's loop; running covers idle and busy. */
14
14
  export declare const TRIERARCH_ENTRY_STATES: readonly ["wanted", "crewing", "running", "restarting", "crashed", "releasing"];
15
15
  export declare const trierarchEntryStateSchema: z.ZodEnum<{
16
- running: "running";
17
- wanted: "wanted";
18
16
  crewing: "crewing";
17
+ running: "running";
19
18
  restarting: "restarting";
20
19
  crashed: "crashed";
21
20
  releasing: "releasing";
21
+ wanted: "wanted";
22
22
  }>;
23
23
  export type TrierarchEntryState = z.infer<typeof trierarchEntryStateSchema>;
24
24
  /** A new git worktree of a configured repository, or a configured folder used as it is: named, never a path. */
@@ -32,11 +32,27 @@ export declare const trierarchWorkspaceSchema: z.ZodDiscriminatedUnion<[z.ZodObj
32
32
  }, z.core.$strict>], "kind">;
33
33
  export type TrierarchWorkspace = z.infer<typeof trierarchWorkspaceSchema>;
34
34
  export declare const describeCommandSchema: z.ZodObject<{}, z.core.$strict>;
35
+ /** A flag a harness adapter adds itself, as mechanism, never the operator's: on every launch or on a restart only. */
36
+ export declare const trierarchAdapterFlagSchema: z.ZodObject<{
37
+ flag: z.ZodString;
38
+ when: z.ZodEnum<{
39
+ always: "always";
40
+ restart: "restart";
41
+ }>;
42
+ }, z.core.$strict>;
43
+ export type TrierarchAdapterFlag = z.infer<typeof trierarchAdapterFlagSchema>;
35
44
  export declare const describedAnswerSchema: z.ZodObject<{
36
45
  harnesses: z.ZodArray<z.ZodObject<{
37
46
  harness: z.ZodString;
38
47
  options: z.ZodRecord<z.ZodString, z.ZodJSONSchema>;
39
48
  flags: z.ZodArray<z.ZodString>;
49
+ adapterFlags: z.ZodArray<z.ZodObject<{
50
+ flag: z.ZodString;
51
+ when: z.ZodEnum<{
52
+ always: "always";
53
+ restart: "restart";
54
+ }>;
55
+ }, z.core.$strict>>;
40
56
  }, z.core.$strict>>;
41
57
  workspaces: z.ZodObject<{
42
58
  repositories: z.ZodArray<z.ZodString>;
@@ -94,12 +110,12 @@ export declare const listedAnswerSchema: z.ZodObject<{
94
110
  shipId: z.ZodType<`shp_${string}`, unknown, z.core.$ZodTypeInternals<`shp_${string}`, unknown>>;
95
111
  harness: z.ZodString;
96
112
  state: z.ZodEnum<{
97
- running: "running";
98
- wanted: "wanted";
99
113
  crewing: "crewing";
114
+ running: "running";
100
115
  restarting: "restarting";
101
116
  crashed: "crashed";
102
117
  releasing: "releasing";
118
+ wanted: "wanted";
103
119
  }>;
104
120
  since: z.ZodISODateTime;
105
121
  restarts: z.ZodInt;
@@ -29,6 +29,8 @@ export const trierarchWorkspaceSchema = z.discriminatedUnion('kind', [
29
29
  /** A worktree the trierarch kept because it had changes, until a human or a release with force clears it. */
30
30
  const keptWorktreeSchema = z.strictObject({ shipId: shipIdSchema, path: z.string().min(1) });
31
31
  export const describeCommandSchema = z.strictObject({});
32
+ /** A flag a harness adapter adds itself, as mechanism, never the operator's: on every launch or on a restart only. */
33
+ export const trierarchAdapterFlagSchema = z.strictObject({ flag: z.string().min(1), when: z.enum(['always', 'restart']) });
32
34
  export const describedAnswerSchema = z.strictObject({
33
35
  harnesses: z.array(z.strictObject({
34
36
  harness: harnessSchema,
@@ -36,6 +38,8 @@ export const describedAnswerSchema = z.strictObject({
36
38
  options: z.record(z.string(), z.json()),
37
39
  /** The flags every launch of this harness gets, as the configuration makes them. */
38
40
  flags: z.array(z.string()),
41
+ /** The flags the harness's adapter adds itself, beside the configured ones. */
42
+ adapterFlags: z.array(trierarchAdapterFlagSchema),
39
43
  })),
40
44
  workspaces: z.strictObject({ repositories: z.array(trierarchNameSchema), folders: z.array(trierarchNameSchema) }),
41
45
  caps: z.strictObject({ ships: z.int().positive(), running: z.int().positive() }),
@@ -52,6 +56,8 @@ export const wantCommandSchema = z.strictObject({
52
56
  .string()
53
57
  .min(1)
54
58
  .refine((prompt) => utf8.encode(prompt).byteLength <= FIRST_PROMPT_MAX_BYTES, `A first prompt is at most ${String(FIRST_PROMPT_MAX_BYTES)} bytes`)
59
+ // A harness would read it as a flag the operator never configured (decision 0027).
60
+ .refine((prompt) => !prompt.startsWith('-'), 'A first prompt may not start with -, which reads as a flag')
55
61
  .optional(),
56
62
  /** Named settings from what describe offers; checked against its JSON Schema by the trierarch. */
57
63
  options: z.record(z.string(), z.json()),
@@ -1 +1 @@
1
- {"version":3,"file":"protocol.js","sourceRoot":"","sources":["../../src/trierarch/protocol.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"protocol.js","sourceRoot":"","sources":["../../src/trierarch/protocol.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAEjD;;;;;;GAMG;AAEH,+FAA+F;AAC/F,MAAM,UAAU,oBAAoB,CAAC,IAAY;IAC/C,OAAO,oCAAoC,IAAI,OAAO,CAAC;AACzD,CAAC;AAED,qFAAqF;AACrF,MAAM,CAAC,MAAM,sBAAsB,GAAG,IAAI,CAAC;AAE3C,MAAM,IAAI,GAAG,IAAI,WAAW,EAAE,CAAC;AAE/B,mFAAmF;AACnF,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,WAAW,CAAU,CAAC;AACtH,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;AAGxE,MAAM,YAAY,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;AAEtC,gHAAgH;AAChH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,kBAAkB,CAAC,MAAM,EAAE;IACnE,CAAC,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,UAAU,EAAE,mBAAmB,EAAE,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC;IACnH,CAAC,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,mBAAmB,EAAE,CAAC;CACzE,CAAC,CAAC;AAGH,6GAA6G;AAC7G,MAAM,kBAAkB,GAAG,CAAC,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,YAAY,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;AAE7F,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;AAExD,sHAAsH;AACtH,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC,EAAE,CAAC,CAAC;AAG3H,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,YAAY,CAAC;IAClD,SAAS,EAAE,CAAC,CAAC,KAAK,CAChB,CAAC,CAAC,YAAY,CAAC;QACb,OAAO,EAAE,aAAa;QACtB,4DAA4D;QAC5D,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QACvC,oFAAoF;QACpF,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;QAC1B,+EAA+E;QAC/E,YAAY,EAAE,CAAC,CAAC,KAAK,CAAC,0BAA0B,CAAC;KAClD,CAAC,CACH;IACD,UAAU,EAAE,CAAC,CAAC,YAAY,CAAC,EAAE,YAAY,EAAE,CAAC,CAAC,KAAK,CAAC,mBAAmB,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,mBAAmB,CAAC,EAAE,CAAC;IACjH,IAAI,EAAE,CAAC,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC;IAChF,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,kBAAkB,CAAC;IACjC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;CAC3B,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,YAAY,CAAC;IAC9C,MAAM,EAAE,YAAY;IACpB,OAAO,EAAE,aAAa;IACtB,SAAS,EAAE,wBAAwB;IACnC,+GAA+G;IAC/G,QAAQ,EAAE,gBAAgB,CAAC,QAAQ,EAAE;IACrC,WAAW,EAAE,CAAC;SACX,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,CAAC;SACN,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,UAAU,IAAI,sBAAsB,EAAE,6BAA6B,MAAM,CAAC,sBAAsB,CAAC,QAAQ,CAAC;QAClJ,mFAAmF;SAClF,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,4DAA4D,CAAC;SACzG,QAAQ,EAAE;IACb,kGAAkG;IAClG,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;CACxC,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,CAAC;AAE3E,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,YAAY,CAAC;IAChD,MAAM,EAAE,YAAY;IACpB,yEAAyE;IACzE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IACnC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;CAC1B,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;AAE5G,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,YAAY,CAAC;IACjD,MAAM,EAAE,YAAY;IACpB,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IACtC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;CACnC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;AAEpD,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,CAAC,YAAY,CAAC;IAC/C,KAAK,EAAE,CAAC,CAAC,KAAK,CACZ,CAAC,CAAC,YAAY,CAAC;QACb,MAAM,EAAE,YAAY;QACpB,OAAO,EAAE,aAAa;QACtB,KAAK,EAAE,yBAAyB;QAChC,KAAK,EAAE,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE;QACvB,QAAQ,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,WAAW,EAAE;KAChC,CAAC,CACH;IACD,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,kBAAkB,CAAC;IACjC,mFAAmF;IACnF,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;CAC9D,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,CAAC;AAE5E,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;AAEvG,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,CAAC;AAE/E,iEAAiE;AACjE,MAAM,CAAC,MAAM,uBAAuB,GAAwC;IAC1E,QAAQ,EAAE,qBAAqB;IAC/B,IAAI,EAAE,iBAAiB;IACvB,OAAO,EAAE,oBAAoB;IAC7B,IAAI,EAAE,iBAAiB;CACxB,CAAC;AAEF,0DAA0D;AAC1D,MAAM,CAAC,MAAM,sBAAsB,GAAwC;IACzE,SAAS,EAAE,qBAAqB;IAChC,MAAM,EAAE,kBAAkB;IAC1B,OAAO,EAAE,mBAAmB;IAC5B,QAAQ,EAAE,oBAAoB;IAC9B,MAAM,EAAE,kBAAkB;CAC3B,CAAC;AAEF,qEAAqE;AACrE,MAAM,CAAC,MAAM,sBAAsB,GAAwC;IACzE,OAAO,EAAE,mBAAmB;IAC5B,OAAO,EAAE,mBAAmB;IAC5B,UAAU,EAAE,sBAAsB;CACnC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aeolus-fleet/common",
3
- "version": "0.17.2",
3
+ "version": "0.18.0",
4
4
  "description": "Aeolus shared schemas, prefixed ids and types.",
5
5
  "license": "Apache-2.0",
6
6
  "type": "module",