@aeolus-fleet/common 0.27.0 → 0.28.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/fleet/core-version.d.ts +20 -0
- package/dist/fleet/core-version.js +59 -0
- package/dist/fleet/core-version.js.map +1 -0
- package/dist/fleet/index.d.ts +27 -4
- package/dist/fleet/index.js +43 -2
- package/dist/fleet/index.js.map +1 -1
- package/dist/ids/index.d.ts +3 -0
- package/dist/ids/index.js +2 -0
- package/dist/ids/index.js.map +1 -1
- package/dist/schemas/account-token.d.ts +49 -0
- package/dist/schemas/account-token.js +51 -0
- package/dist/schemas/account-token.js.map +1 -0
- package/dist/schemas/console.d.ts +8 -0
- package/dist/schemas/console.js +3 -1
- package/dist/schemas/console.js.map +1 -1
- package/dist/schemas/delivery.d.ts +69 -3
- package/dist/schemas/delivery.js +35 -3
- package/dist/schemas/delivery.js.map +1 -1
- package/dist/schemas/fleet.d.ts +40 -2
- package/dist/schemas/fleet.js +21 -4
- package/dist/schemas/fleet.js.map +1 -1
- package/dist/schemas/follow.d.ts +14 -0
- package/dist/schemas/history.d.ts +111 -9
- package/dist/schemas/history.js +19 -3
- package/dist/schemas/history.js.map +1 -1
- package/dist/schemas/index.d.ts +2 -0
- package/dist/schemas/index.js +2 -0
- package/dist/schemas/index.js.map +1 -1
- package/dist/schemas/installation.d.ts +12 -0
- package/dist/schemas/installation.js +14 -1
- package/dist/schemas/installation.js.map +1 -1
- package/dist/schemas/label.d.ts +19 -5
- package/dist/schemas/label.js +7 -2
- package/dist/schemas/label.js.map +1 -1
- package/dist/schemas/network.d.ts +409 -90
- package/dist/schemas/network.js +76 -51
- package/dist/schemas/network.js.map +1 -1
- package/dist/schemas/statement.d.ts +94 -4
- package/dist/schemas/statement.js +33 -4
- package/dist/schemas/statement.js.map +1 -1
- package/dist/schemas/verified-fact.d.ts +109 -0
- package/dist/schemas/verified-fact.js +57 -0
- package/dist/schemas/verified-fact.js.map +1 -0
- package/dist/trierarch/crew-settings.js +1 -1
- package/dist/trierarch/report-details.js +2 -2
- package/package.json +1 -3
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/** Where core says its version, without authentication. */
|
|
2
|
+
export declare const CORE_VERSION_PATH = "/api/version";
|
|
3
|
+
/** The part of `fetch` the check uses, so a test hands in its own core. */
|
|
4
|
+
export type VersionFetch = (url: string, init: {
|
|
5
|
+
signal: AbortSignal;
|
|
6
|
+
}) => Promise<{
|
|
7
|
+
status: number;
|
|
8
|
+
json(): Promise<unknown>;
|
|
9
|
+
}>;
|
|
10
|
+
/**
|
|
11
|
+
* Why the package may not start against the fleet's core, or none when it
|
|
12
|
+
* may: core is at least `minimum`, or is `0.0.0`.
|
|
13
|
+
*/
|
|
14
|
+
export declare function coreVersionRefusal(input: {
|
|
15
|
+
packageName: string;
|
|
16
|
+
version: string;
|
|
17
|
+
minimum: string;
|
|
18
|
+
fleetUrl: string;
|
|
19
|
+
fetch: VersionFetch;
|
|
20
|
+
}): Promise<string | undefined>;
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The minimum core version check (decision 0049, docs/compatibility.md): a
|
|
3
|
+
* package of another release train reads core's version at start and refuses
|
|
4
|
+
* to run against an older core, saying both versions.
|
|
5
|
+
*/
|
|
6
|
+
import { z } from 'zod';
|
|
7
|
+
/** Where core says its version, without authentication. */
|
|
8
|
+
export const CORE_VERSION_PATH = '/api/version';
|
|
9
|
+
/** How long a package waits for core's version before it counts the fleet as not answering. */
|
|
10
|
+
const CORE_VERSION_TIMEOUT_MS = 10_000;
|
|
11
|
+
/** The HTTP statuses that answer a version. */
|
|
12
|
+
const HTTP_OK_FIRST = 200;
|
|
13
|
+
const HTTP_OK_LAST = 299;
|
|
14
|
+
/** A plain release version; core `0.0.0` is a build from main. */
|
|
15
|
+
const VERSION_PATTERN = /^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)$/;
|
|
16
|
+
/** Core's version as `/api/version` answers it. */
|
|
17
|
+
const coreVersionAnswerSchema = z.object({ server: z.string() });
|
|
18
|
+
function versionOf(text) {
|
|
19
|
+
const match = VERSION_PATTERN.exec(text);
|
|
20
|
+
return match === null ? undefined : [Number(match[1]), Number(match[2]), Number(match[3])];
|
|
21
|
+
}
|
|
22
|
+
function isOlder(version, than) {
|
|
23
|
+
const differing = version.findIndex((part, index) => part !== than[index]);
|
|
24
|
+
return differing !== -1 && (version[differing] ?? 0) < (than[differing] ?? 0);
|
|
25
|
+
}
|
|
26
|
+
/** Core's version, or why it could not be read. */
|
|
27
|
+
async function readCoreVersion(fleetUrl, fetch) {
|
|
28
|
+
try {
|
|
29
|
+
const response = await fetch(`${fleetUrl.replace(/\/+$/, '')}${CORE_VERSION_PATH}`, { signal: AbortSignal.timeout(CORE_VERSION_TIMEOUT_MS) });
|
|
30
|
+
if (response.status < HTTP_OK_FIRST || response.status > HTTP_OK_LAST) {
|
|
31
|
+
return { unread: `HTTP ${String(response.status)}` };
|
|
32
|
+
}
|
|
33
|
+
const answer = coreVersionAnswerSchema.safeParse(await response.json());
|
|
34
|
+
const parsed = answer.success ? versionOf(answer.data.server) : undefined;
|
|
35
|
+
return answer.success && parsed !== undefined ? { core: answer.data.server, parsed } : { unread: `its ${CORE_VERSION_PATH} answered no core version` };
|
|
36
|
+
}
|
|
37
|
+
catch (error) {
|
|
38
|
+
return { unread: error instanceof Error ? error.message : String(error) };
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Why the package may not start against the fleet's core, or none when it
|
|
43
|
+
* may: core is at least `minimum`, or is `0.0.0`.
|
|
44
|
+
*/
|
|
45
|
+
export async function coreVersionRefusal(input) {
|
|
46
|
+
const { packageName, version, minimum, fleetUrl, fetch } = input;
|
|
47
|
+
const needs = `${packageName} ${version} needs core ${minimum} or later`;
|
|
48
|
+
const minimumVersion = versionOf(minimum);
|
|
49
|
+
if (minimumVersion === undefined) {
|
|
50
|
+
throw new Error(`${packageName}'s minimum core version ${minimum} is not MAJOR.MINOR.PATCH`);
|
|
51
|
+
}
|
|
52
|
+
const read = await readCoreVersion(fleetUrl, fetch);
|
|
53
|
+
if ('unread' in read) {
|
|
54
|
+
return `${needs}, and could not read the version of the fleet at ${fleetUrl}: ${read.unread}`;
|
|
55
|
+
}
|
|
56
|
+
const isMainBuild = read.parsed.every((part) => part === 0);
|
|
57
|
+
return isMainBuild || !isOlder(read.parsed, minimumVersion) ? undefined : `${needs}; the fleet at ${fleetUrl} runs core ${read.core}: upgrade core first`;
|
|
58
|
+
}
|
|
59
|
+
//# sourceMappingURL=core-version.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"core-version.js","sourceRoot":"","sources":["../../src/fleet/core-version.ts"],"names":[],"mappings":"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"}
|
package/dist/fleet/index.d.ts
CHANGED
|
@@ -10,9 +10,11 @@ import { z } from 'zod';
|
|
|
10
10
|
* message, one that comes first (decision 0040); `fleet:on-behalf` reads on
|
|
11
11
|
* behalf of a named ship (decision 0034); `scopes:declare` takes up a
|
|
12
12
|
* plugin namespace and `scopes:grant` grants and revokes on a live ship
|
|
13
|
-
* (decision 0046).
|
|
13
|
+
* (decision 0046). `fleet:person`, `fleet:owner`, `fleet:explain`,
|
|
14
|
+
* `fleet:connect` and `labels:any` are the jobs that were argo's alone
|
|
15
|
+
* (decision 0053). `fleet:verify` writes verified facts (decision 0059).
|
|
14
16
|
*/
|
|
15
|
-
export declare const SCOPES: readonly ["messages:send", "messages:receive", "messages:force", "messages:resend", "fleet:read", "fleet:commission", "fleet:manage", "crew:assign", "crew:run", "labels:define", "labels:assign", "fleet:network", "fleet:on-behalf", "scopes:declare", "scopes:grant"];
|
|
17
|
+
export declare const SCOPES: readonly ["messages:send", "messages:receive", "messages:force", "messages:resend", "fleet:read", "fleet:commission", "fleet:manage", "crew:assign", "crew:run", "labels:define", "labels:assign", "fleet:network", "fleet:on-behalf", "fleet:person", "fleet:owner", "fleet:explain", "fleet:connect", "labels:any", "fleet:verify", "scopes:declare", "scopes:grant"];
|
|
16
18
|
export declare const scopeSchema: z.ZodEnum<{
|
|
17
19
|
"messages:send": "messages:send";
|
|
18
20
|
"messages:receive": "messages:receive";
|
|
@@ -27,6 +29,12 @@ export declare const scopeSchema: z.ZodEnum<{
|
|
|
27
29
|
"labels:assign": "labels:assign";
|
|
28
30
|
"fleet:network": "fleet:network";
|
|
29
31
|
"fleet:on-behalf": "fleet:on-behalf";
|
|
32
|
+
"fleet:person": "fleet:person";
|
|
33
|
+
"fleet:owner": "fleet:owner";
|
|
34
|
+
"fleet:explain": "fleet:explain";
|
|
35
|
+
"fleet:connect": "fleet:connect";
|
|
36
|
+
"labels:any": "labels:any";
|
|
37
|
+
"fleet:verify": "fleet:verify";
|
|
30
38
|
"scopes:declare": "scopes:declare";
|
|
31
39
|
"scopes:grant": "scopes:grant";
|
|
32
40
|
}>;
|
|
@@ -60,8 +68,10 @@ export type ScopeName = z.infer<typeof scopeNameSchema>;
|
|
|
60
68
|
* their values; `labels:assign` assigns and unassigns the labels its ship owns
|
|
61
69
|
* (decision 0031). `fleet:network` sets the fleet's network rules (decision
|
|
62
70
|
* 0034). `fleet:on-behalf` reads on behalf of a named ship (decision 0034).
|
|
71
|
+
* The jobs that were argo's alone are scopes an agent ship can hold too
|
|
72
|
+
* (decision 0053), and so is writing verified facts (decision 0059).
|
|
63
73
|
*/
|
|
64
|
-
export declare const FLEET_SCOPES: readonly ["messages:resend", "fleet:read", "fleet:commission", "fleet:manage", "crew:assign", "crew:run", "labels:define", "labels:assign", "fleet:network", "fleet:on-behalf"];
|
|
74
|
+
export declare const FLEET_SCOPES: readonly ["messages:resend", "fleet:read", "fleet:commission", "fleet:manage", "crew:assign", "crew:run", "labels:define", "labels:assign", "fleet:network", "fleet:on-behalf", "fleet:person", "fleet:owner", "fleet:explain", "fleet:connect", "labels:any", "fleet:verify"];
|
|
65
75
|
export declare const fleetScopeSchema: z.ZodEnum<{
|
|
66
76
|
"messages:resend": "messages:resend";
|
|
67
77
|
"fleet:read": "fleet:read";
|
|
@@ -73,6 +83,12 @@ export declare const fleetScopeSchema: z.ZodEnum<{
|
|
|
73
83
|
"labels:assign": "labels:assign";
|
|
74
84
|
"fleet:network": "fleet:network";
|
|
75
85
|
"fleet:on-behalf": "fleet:on-behalf";
|
|
86
|
+
"fleet:person": "fleet:person";
|
|
87
|
+
"fleet:owner": "fleet:owner";
|
|
88
|
+
"fleet:explain": "fleet:explain";
|
|
89
|
+
"fleet:connect": "fleet:connect";
|
|
90
|
+
"labels:any": "labels:any";
|
|
91
|
+
"fleet:verify": "fleet:verify";
|
|
76
92
|
}>;
|
|
77
93
|
export type FleetScope = z.infer<typeof fleetScopeSchema>;
|
|
78
94
|
/**
|
|
@@ -148,7 +164,7 @@ export declare const deliveryStateSchema: z.ZodEnum<{
|
|
|
148
164
|
}>;
|
|
149
165
|
export type DeliveryState = z.infer<typeof deliveryStateSchema>;
|
|
150
166
|
/** The event types written so far. Each later slice adds the ones it writes. */
|
|
151
|
-
export declare const EVENT_TYPES: readonly ["FleetInitialised", "ShipCommissioned", "OwnerSet", "OwnerChanged", "ShipClaimed", "LeaseRevoked", "CredentialRevoked", "StartingPromptIssued", "OperatorPasswordReset", "MessageAccepted", "LeasePushed", "DeliveryReceived", "DeliveryHanded", "DeliveryAcknowledged", "DeliveryHandled", "DeliveryNotHandled", "DeliveryOverdue", "DeliveryUndeliverable", "DeliveryReturned", "ShipRetired", "DeliveryAbandoned", "DeliveryDismissed", "ShipRenamed", "ShipReported", "StatementSet", "TurnReported", "SignInTicketIssued", "FleetLimitsChanged", "ViewerSessionStarted", "CrewRequested", "CrewRequestRemoved", "CrewAssigned", "CrewStatusChanged", "CrewRequestExplained", "CrewRequestGivenBack", "LabelDefined", "LabelValuesChanged", "LabelRetired", "LabelAssigned", "LabelUnassigned", "LabelDeleted", "WorktreeClearRequested", "WorktreeCleared", "WorktreeClearRemoved", "NetworkRulesSet", "NetworkRulesDeclared", "NetworkPluginRegistered", "NetworkPluginUnregistered", "BuiltInRuleChanged", "ScopesDeclared", "ScopesChanged"];
|
|
167
|
+
export declare const EVENT_TYPES: readonly ["FleetInitialised", "ShipCommissioned", "OwnerSet", "OwnerChanged", "ShipClaimed", "LeaseRevoked", "CredentialRevoked", "StartingPromptIssued", "OperatorPasswordReset", "MessageAccepted", "LeasePushed", "DeliveryReceived", "DeliveryHanded", "DeliveryAcknowledged", "DeliveryHandled", "DeliveryNotHandled", "DeliveryOverdue", "DeliveryUndeliverable", "DeliveryReturned", "ShipRetired", "DeliveryAbandoned", "DeliveryDismissed", "ShipRenamed", "ShipReported", "StatementSet", "TurnReported", "SignInTicketIssued", "FleetLimitsChanged", "ViewerSessionStarted", "CrewRequested", "CrewRequestRemoved", "CrewAssigned", "CrewStatusChanged", "CrewRequestExplained", "CrewRequestGivenBack", "LabelDefined", "LabelValuesChanged", "LabelRetired", "LabelAssigned", "LabelUnassigned", "LabelDeleted", "WorktreeClearRequested", "WorktreeCleared", "WorktreeClearRemoved", "NetworkRulesSet", "NetworkRulesDeclared", "NetworkRulesDraftSaved", "NetworkRulesDraftDiscarded", "NetworkPluginRegistered", "NetworkPluginUnregistered", "BuiltInRuleChanged", "ScopesDeclared", "ScopesChanged", "PluginConnected", "PluginDisconnected", "VerifiedFactsSet", "VerifiedFactsRemoved"];
|
|
152
168
|
export declare const eventTypeSchema: z.ZodEnum<{
|
|
153
169
|
FleetInitialised: "FleetInitialised";
|
|
154
170
|
ShipCommissioned: "ShipCommissioned";
|
|
@@ -196,15 +212,22 @@ export declare const eventTypeSchema: z.ZodEnum<{
|
|
|
196
212
|
WorktreeClearRemoved: "WorktreeClearRemoved";
|
|
197
213
|
NetworkRulesSet: "NetworkRulesSet";
|
|
198
214
|
NetworkRulesDeclared: "NetworkRulesDeclared";
|
|
215
|
+
NetworkRulesDraftSaved: "NetworkRulesDraftSaved";
|
|
216
|
+
NetworkRulesDraftDiscarded: "NetworkRulesDraftDiscarded";
|
|
199
217
|
NetworkPluginRegistered: "NetworkPluginRegistered";
|
|
200
218
|
NetworkPluginUnregistered: "NetworkPluginUnregistered";
|
|
201
219
|
BuiltInRuleChanged: "BuiltInRuleChanged";
|
|
202
220
|
ScopesDeclared: "ScopesDeclared";
|
|
203
221
|
ScopesChanged: "ScopesChanged";
|
|
222
|
+
PluginConnected: "PluginConnected";
|
|
223
|
+
PluginDisconnected: "PluginDisconnected";
|
|
224
|
+
VerifiedFactsSet: "VerifiedFactsSet";
|
|
225
|
+
VerifiedFactsRemoved: "VerifiedFactsRemoved";
|
|
204
226
|
}>;
|
|
205
227
|
export type EventType = z.infer<typeof eventTypeSchema>;
|
|
206
228
|
export * from './argo-message.js';
|
|
207
229
|
export * from './busy-wait.js';
|
|
230
|
+
export * from './core-version.js';
|
|
208
231
|
export * from './mcp-url.js';
|
|
209
232
|
export * from './no-terminal-questions.js';
|
|
210
233
|
/**
|
package/dist/fleet/index.js
CHANGED
|
@@ -10,7 +10,9 @@ import { z } from 'zod';
|
|
|
10
10
|
* message, one that comes first (decision 0040); `fleet:on-behalf` reads on
|
|
11
11
|
* behalf of a named ship (decision 0034); `scopes:declare` takes up a
|
|
12
12
|
* plugin namespace and `scopes:grant` grants and revokes on a live ship
|
|
13
|
-
* (decision 0046).
|
|
13
|
+
* (decision 0046). `fleet:person`, `fleet:owner`, `fleet:explain`,
|
|
14
|
+
* `fleet:connect` and `labels:any` are the jobs that were argo's alone
|
|
15
|
+
* (decision 0053). `fleet:verify` writes verified facts (decision 0059).
|
|
14
16
|
*/
|
|
15
17
|
export const SCOPES = [
|
|
16
18
|
'messages:send',
|
|
@@ -26,6 +28,12 @@ export const SCOPES = [
|
|
|
26
28
|
'labels:assign',
|
|
27
29
|
'fleet:network',
|
|
28
30
|
'fleet:on-behalf',
|
|
31
|
+
'fleet:person',
|
|
32
|
+
'fleet:owner',
|
|
33
|
+
'fleet:explain',
|
|
34
|
+
'fleet:connect',
|
|
35
|
+
'labels:any',
|
|
36
|
+
'fleet:verify',
|
|
29
37
|
'scopes:declare',
|
|
30
38
|
'scopes:grant',
|
|
31
39
|
];
|
|
@@ -45,6 +53,12 @@ export const CORE_SCOPE_DESCRIPTIONS = {
|
|
|
45
53
|
'labels:assign': 'Assign and unassign the values of labels its ship owns',
|
|
46
54
|
'fleet:network': "The networking plugin's calls: the fleet's network rules",
|
|
47
55
|
'fleet:on-behalf': "Read on behalf of a named ship, with that ship's read reach",
|
|
56
|
+
'fleet:person': 'Commission person ships, each owning itself',
|
|
57
|
+
'fleet:owner': 'Change the owner of the ships it manages',
|
|
58
|
+
'fleet:explain': 'Explain reach and read the reach refusals of the ships it reads',
|
|
59
|
+
'fleet:connect': 'Connect a plugin, which then reads every ship',
|
|
60
|
+
'labels:any': 'Assign and unassign the values of any label on the ships it manages',
|
|
61
|
+
'fleet:verify': 'Write and withdraw its verified facts about the ships it manages',
|
|
48
62
|
'scopes:declare': 'Take up one plugin namespace and declare its scopes',
|
|
49
63
|
'scopes:grant': 'Grant and revoke scopes on a live ship, within what its ship may grant',
|
|
50
64
|
};
|
|
@@ -81,8 +95,27 @@ export const scopeNameSchema = z
|
|
|
81
95
|
* their values; `labels:assign` assigns and unassigns the labels its ship owns
|
|
82
96
|
* (decision 0031). `fleet:network` sets the fleet's network rules (decision
|
|
83
97
|
* 0034). `fleet:on-behalf` reads on behalf of a named ship (decision 0034).
|
|
98
|
+
* The jobs that were argo's alone are scopes an agent ship can hold too
|
|
99
|
+
* (decision 0053), and so is writing verified facts (decision 0059).
|
|
84
100
|
*/
|
|
85
|
-
export const FLEET_SCOPES = [
|
|
101
|
+
export const FLEET_SCOPES = [
|
|
102
|
+
'messages:resend',
|
|
103
|
+
'fleet:read',
|
|
104
|
+
'fleet:commission',
|
|
105
|
+
'fleet:manage',
|
|
106
|
+
'crew:assign',
|
|
107
|
+
'crew:run',
|
|
108
|
+
'labels:define',
|
|
109
|
+
'labels:assign',
|
|
110
|
+
'fleet:network',
|
|
111
|
+
'fleet:on-behalf',
|
|
112
|
+
'fleet:person',
|
|
113
|
+
'fleet:owner',
|
|
114
|
+
'fleet:explain',
|
|
115
|
+
'fleet:connect',
|
|
116
|
+
'labels:any',
|
|
117
|
+
'fleet:verify',
|
|
118
|
+
];
|
|
86
119
|
export const fleetScopeSchema = z.enum(FLEET_SCOPES);
|
|
87
120
|
/**
|
|
88
121
|
* What a ship is (decision 0044): `argo` is the one `operator`, the console's
|
|
@@ -176,15 +209,23 @@ export const EVENT_TYPES = [
|
|
|
176
209
|
'WorktreeClearRemoved',
|
|
177
210
|
'NetworkRulesSet',
|
|
178
211
|
'NetworkRulesDeclared',
|
|
212
|
+
'NetworkRulesDraftSaved',
|
|
213
|
+
'NetworkRulesDraftDiscarded',
|
|
214
|
+
// Written no more since the networking plugin went (decision 0034); the event log keeps them.
|
|
179
215
|
'NetworkPluginRegistered',
|
|
180
216
|
'NetworkPluginUnregistered',
|
|
181
217
|
'BuiltInRuleChanged',
|
|
182
218
|
'ScopesDeclared',
|
|
183
219
|
'ScopesChanged',
|
|
220
|
+
'PluginConnected',
|
|
221
|
+
'PluginDisconnected',
|
|
222
|
+
'VerifiedFactsSet',
|
|
223
|
+
'VerifiedFactsRemoved',
|
|
184
224
|
];
|
|
185
225
|
export const eventTypeSchema = z.enum(EVENT_TYPES);
|
|
186
226
|
export * from './argo-message.js';
|
|
187
227
|
export * from './busy-wait.js';
|
|
228
|
+
export * from './core-version.js';
|
|
188
229
|
export * from './mcp-url.js';
|
|
189
230
|
export * from './no-terminal-questions.js';
|
|
190
231
|
/**
|
package/dist/fleet/index.js.map
CHANGED
|
@@ -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
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/fleet/index.ts"],"names":[],"mappings":"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"}
|
package/dist/ids/index.d.ts
CHANGED
|
@@ -22,6 +22,8 @@ export declare const ID_PREFIXES: {
|
|
|
22
22
|
readonly label: "lbl";
|
|
23
23
|
readonly labelValue: "lbv";
|
|
24
24
|
readonly reachRefusal: "rfs";
|
|
25
|
+
/** A pending request for an outside party, which the gateway keeps (decision 0056). */
|
|
26
|
+
readonly request: "req";
|
|
25
27
|
};
|
|
26
28
|
export type IdKind = keyof typeof ID_PREFIXES;
|
|
27
29
|
/** Every kind of id, in the order of ID_PREFIXES. */
|
|
@@ -40,6 +42,7 @@ export type ConsoleSessionId = Id<'consoleSession'>;
|
|
|
40
42
|
export type LabelId = Id<'label'>;
|
|
41
43
|
export type LabelValueId = Id<'labelValue'>;
|
|
42
44
|
export type ReachRefusalId = Id<'reachRefusal'>;
|
|
45
|
+
export type RequestId = Id<'request'>;
|
|
43
46
|
export interface IdGeneratorOptions {
|
|
44
47
|
/** Milliseconds since the Unix epoch. Defaults to `Date.now`. */
|
|
45
48
|
now?: () => number;
|
package/dist/ids/index.js
CHANGED
|
@@ -22,6 +22,8 @@ export const ID_PREFIXES = {
|
|
|
22
22
|
label: 'lbl',
|
|
23
23
|
labelValue: 'lbv',
|
|
24
24
|
reachRefusal: 'rfs',
|
|
25
|
+
/** A pending request for an outside party, which the gateway keeps (decision 0056). */
|
|
26
|
+
request: 'req',
|
|
25
27
|
};
|
|
26
28
|
function isIdKind(value) {
|
|
27
29
|
return value in ID_PREFIXES;
|
package/dist/ids/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ids/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,KAAK,EAAE,KAAK;IACZ,IAAI,EAAE,KAAK;IACX,OAAO,EAAE,KAAK;IACd,QAAQ,EAAE,KAAK;IACf,KAAK,EAAE,KAAK;IACZ,KAAK,EAAE,KAAK;IACZ,UAAU,EAAE,KAAK;IACjB,QAAQ,EAAE,KAAK;IACf,cAAc,EAAE,KAAK;IACrB,KAAK,EAAE,KAAK;IACZ,UAAU,EAAE,KAAK;IACjB,YAAY,EAAE,KAAK;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/ids/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
/** The longest account id core accepts: pagasae's opaque id, never an email (decision 0058). */
|
|
3
|
+
export declare const ACCOUNT_ID_MAX_LENGTH = 128;
|
|
4
|
+
/** An account's id as pagasae names it: opaque to core, which stores no account (decision 0058). */
|
|
5
|
+
export declare const accountIdSchema: z.core.$ZodBranded<z.ZodString, "AccountId", "out">;
|
|
6
|
+
export type AccountId = z.infer<typeof accountIdSchema>;
|
|
7
|
+
/**
|
|
8
|
+
* The claims of an account token pagasae signed for one account in one fleet
|
|
9
|
+
* (decision 0058), read once its signature and issuer are checked: the
|
|
10
|
+
* account, its organisation, the fleet (its audience), the scopes and `group`
|
|
11
|
+
* values its groups and own rights give there, its person ship there if it
|
|
12
|
+
* has one, and when it was issued and ends. Times are JWT seconds.
|
|
13
|
+
*/
|
|
14
|
+
export declare const accountTokenClaimsSchema: z.ZodPipe<z.ZodObject<{
|
|
15
|
+
iss: z.ZodString;
|
|
16
|
+
aud: z.ZodType<`flt_${string}`, unknown, z.core.$ZodTypeInternals<`flt_${string}`, unknown>>;
|
|
17
|
+
sub: z.core.$ZodBranded<z.ZodString, "AccountId", "out">;
|
|
18
|
+
org: z.ZodString;
|
|
19
|
+
scope: z.ZodString;
|
|
20
|
+
group: z.ZodArray<z.ZodString>;
|
|
21
|
+
person_ship: z.ZodOptional<z.ZodType<`shp_${string}`, unknown, z.core.$ZodTypeInternals<`shp_${string}`, unknown>>>;
|
|
22
|
+
iat: z.ZodNumber;
|
|
23
|
+
exp: z.ZodNumber;
|
|
24
|
+
}, z.core.$strip>, z.ZodTransform<{
|
|
25
|
+
issuer: string;
|
|
26
|
+
fleetId: `flt_${string}`;
|
|
27
|
+
accountId: string & z.core.$brand<"AccountId">;
|
|
28
|
+
organisationId: string;
|
|
29
|
+
scopes: string[];
|
|
30
|
+
groupValues: string[];
|
|
31
|
+
personShipId: `shp_${string}` | null;
|
|
32
|
+
issuedAt: Date;
|
|
33
|
+
endsAt: Date;
|
|
34
|
+
}, {
|
|
35
|
+
iss: string;
|
|
36
|
+
aud: `flt_${string}`;
|
|
37
|
+
sub: string & z.core.$brand<"AccountId">;
|
|
38
|
+
org: string;
|
|
39
|
+
scope: string;
|
|
40
|
+
group: string[];
|
|
41
|
+
iat: number;
|
|
42
|
+
exp: number;
|
|
43
|
+
person_ship?: `shp_${string}` | undefined;
|
|
44
|
+
}>>;
|
|
45
|
+
export type AccountTokenClaims = z.infer<typeof accountTokenClaimsSchema>;
|
|
46
|
+
/** The request header whoever acts for a human presents the account's token in, beside its own crew token if it has one (decision 0058). */
|
|
47
|
+
export declare const ACCOUNT_TOKEN_HEADER = "aeolus-account-token";
|
|
48
|
+
/** The request header the installation names the fleet it acts in with, beside its installation token (decision 0057). */
|
|
49
|
+
export declare const FLEET_HEADER = "aeolus-fleet";
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { scopeNameSchema } from '../fleet/index.js';
|
|
3
|
+
import { idSchema } from '../ids/index.js';
|
|
4
|
+
/** The longest account id core accepts: pagasae's opaque id, never an email (decision 0058). */
|
|
5
|
+
export const ACCOUNT_ID_MAX_LENGTH = 128;
|
|
6
|
+
/** An account's id as pagasae names it: opaque to core, which stores no account (decision 0058). */
|
|
7
|
+
export const accountIdSchema = z.string().min(1).max(ACCOUNT_ID_MAX_LENGTH).brand();
|
|
8
|
+
const MILLISECONDS_PER_SECOND = 1000;
|
|
9
|
+
/**
|
|
10
|
+
* The claims of an account token pagasae signed for one account in one fleet
|
|
11
|
+
* (decision 0058), read once its signature and issuer are checked: the
|
|
12
|
+
* account, its organisation, the fleet (its audience), the scopes and `group`
|
|
13
|
+
* values its groups and own rights give there, its person ship there if it
|
|
14
|
+
* has one, and when it was issued and ends. Times are JWT seconds.
|
|
15
|
+
*/
|
|
16
|
+
export const accountTokenClaimsSchema = z
|
|
17
|
+
.object({
|
|
18
|
+
iss: z.string(),
|
|
19
|
+
aud: idSchema('fleet'),
|
|
20
|
+
sub: accountIdSchema,
|
|
21
|
+
org: z.string().min(1),
|
|
22
|
+
scope: z.string(),
|
|
23
|
+
group: z.array(z.string()),
|
|
24
|
+
person_ship: idSchema('ship').optional(),
|
|
25
|
+
iat: z.number(),
|
|
26
|
+
exp: z.number(),
|
|
27
|
+
})
|
|
28
|
+
.transform((claims, context) => {
|
|
29
|
+
const scopes = claims.scope.split(' ').filter((scope) => scope !== '');
|
|
30
|
+
const parsed = z.array(scopeNameSchema).safeParse(scopes);
|
|
31
|
+
if (!parsed.success) {
|
|
32
|
+
context.addIssue({ code: 'custom', message: 'scope holds a malformed or unknown scope', path: ['scope'] });
|
|
33
|
+
return z.NEVER;
|
|
34
|
+
}
|
|
35
|
+
return {
|
|
36
|
+
issuer: claims.iss,
|
|
37
|
+
fleetId: claims.aud,
|
|
38
|
+
accountId: claims.sub,
|
|
39
|
+
organisationId: claims.org,
|
|
40
|
+
scopes: parsed.data,
|
|
41
|
+
groupValues: claims.group,
|
|
42
|
+
personShipId: claims.person_ship ?? null,
|
|
43
|
+
issuedAt: new Date(claims.iat * MILLISECONDS_PER_SECOND),
|
|
44
|
+
endsAt: new Date(claims.exp * MILLISECONDS_PER_SECOND),
|
|
45
|
+
};
|
|
46
|
+
});
|
|
47
|
+
/** The request header whoever acts for a human presents the account's token in, beside its own crew token if it has one (decision 0058). */
|
|
48
|
+
export const ACCOUNT_TOKEN_HEADER = 'aeolus-account-token';
|
|
49
|
+
/** The request header the installation names the fleet it acts in with, beside its installation token (decision 0057). */
|
|
50
|
+
export const FLEET_HEADER = 'aeolus-fleet';
|
|
51
|
+
//# sourceMappingURL=account-token.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"account-token.js","sourceRoot":"","sources":["../../src/schemas/account-token.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAE3C,gGAAgG;AAChG,MAAM,CAAC,MAAM,qBAAqB,GAAG,GAAG,CAAC;AAEzC,oGAAoG;AACpG,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAC,KAAK,EAAe,CAAC;AAGjG,MAAM,uBAAuB,GAAG,IAAI,CAAC;AAErC;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC;KACtC,MAAM,CAAC;IACN,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE;IACf,GAAG,EAAE,QAAQ,CAAC,OAAO,CAAC;IACtB,GAAG,EAAE,eAAe;IACpB,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACtB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;IACjB,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IAC1B,WAAW,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE;IACxC,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE;IACf,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE;CAChB,CAAC;KACD,SAAS,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE;IAC7B,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,EAAE,CAAC,CAAC;IACvE,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IAC1D,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,OAAO,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,0CAA0C,EAAE,IAAI,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAC3G,OAAO,CAAC,CAAC,KAAK,CAAC;IACjB,CAAC;IACD,OAAO;QACL,MAAM,EAAE,MAAM,CAAC,GAAG;QAClB,OAAO,EAAE,MAAM,CAAC,GAAG;QACnB,SAAS,EAAE,MAAM,CAAC,GAAG;QACrB,cAAc,EAAE,MAAM,CAAC,GAAG;QAC1B,MAAM,EAAE,MAAM,CAAC,IAAI;QACnB,WAAW,EAAE,MAAM,CAAC,KAAK;QACzB,YAAY,EAAE,MAAM,CAAC,WAAW,IAAI,IAAI;QACxC,QAAQ,EAAE,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,GAAG,uBAAuB,CAAC;QACxD,MAAM,EAAE,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,GAAG,uBAAuB,CAAC;KACvD,CAAC;AACJ,CAAC,CAAC,CAAC;AAGL,4IAA4I;AAC5I,MAAM,CAAC,MAAM,oBAAoB,GAAG,sBAAsB,CAAC;AAE3D,0HAA0H;AAC1H,MAAM,CAAC,MAAM,YAAY,GAAG,cAAc,CAAC"}
|
|
@@ -61,6 +61,12 @@ export declare const consoleSessionOutputSchema: z.ZodObject<{
|
|
|
61
61
|
"labels:assign": "labels:assign";
|
|
62
62
|
"fleet:network": "fleet:network";
|
|
63
63
|
"fleet:on-behalf": "fleet:on-behalf";
|
|
64
|
+
"fleet:person": "fleet:person";
|
|
65
|
+
"fleet:owner": "fleet:owner";
|
|
66
|
+
"fleet:explain": "fleet:explain";
|
|
67
|
+
"fleet:connect": "fleet:connect";
|
|
68
|
+
"labels:any": "labels:any";
|
|
69
|
+
"fleet:verify": "fleet:verify";
|
|
64
70
|
"scopes:declare": "scopes:declare";
|
|
65
71
|
"scopes:grant": "scopes:grant";
|
|
66
72
|
}>>;
|
|
@@ -82,12 +88,14 @@ export declare const accountOutputSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
|
82
88
|
session: z.ZodObject<{
|
|
83
89
|
device: z.ZodString;
|
|
84
90
|
since: z.ZodISODateTime;
|
|
91
|
+
accountId: z.ZodOptional<z.ZodNullable<z.core.$ZodBranded<z.ZodString, "AccountId", "out">>>;
|
|
85
92
|
}, z.core.$strip>;
|
|
86
93
|
}, z.core.$strip>, z.ZodObject<{
|
|
87
94
|
kind: z.ZodLiteral<"viewer">;
|
|
88
95
|
session: z.ZodObject<{
|
|
89
96
|
device: z.ZodString;
|
|
90
97
|
since: z.ZodISODateTime;
|
|
98
|
+
accountId: z.ZodOptional<z.ZodNullable<z.core.$ZodBranded<z.ZodString, "AccountId", "out">>>;
|
|
91
99
|
}, z.core.$strip>;
|
|
92
100
|
}, z.core.$strip>], "kind">;
|
|
93
101
|
export type Account = z.infer<typeof accountOutputSchema>;
|
package/dist/schemas/console.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
2
|
import { scopeSchema } from '../fleet/index.js';
|
|
3
3
|
import { idSchema } from '../ids/index.js';
|
|
4
|
+
import { accountIdSchema } from './account-token.js';
|
|
4
5
|
import { EMAIL_REQUIRED, EMAIL_TOO_LONG, OPERATOR_EMAIL_MAX_LENGTH, OPERATOR_PASSWORD_MAX_LENGTH, PASSWORD_REQUIRED, PASSWORD_TOO_LONG } from '../rules/sign-in.js';
|
|
5
6
|
/** One @ with something on each side, and no whitespace. */
|
|
6
7
|
export const OPERATOR_EMAIL_PATTERN = /^[^\s@]+@[^\s@]+$/;
|
|
@@ -42,7 +43,8 @@ export const consoleSessionOutputSchema = z.object({
|
|
|
42
43
|
kind: consoleSessionKindSchema,
|
|
43
44
|
scopes: z.array(scopeSchema),
|
|
44
45
|
});
|
|
45
|
-
|
|
46
|
+
/** This console session: its device, since when, and the account that signed in as argo, by its id, or none (decision 0054). */
|
|
47
|
+
const accountSessionSchema = z.object({ device: z.string(), since: isoTime, accountId: accountIdSchema.nullable().optional() });
|
|
46
48
|
/**
|
|
47
49
|
* Output of `console.account`: the signed-in operator, their theme, and this
|
|
48
50
|
* console session: the device it signed in from and since when. A viewer's
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"console.js","sourceRoot":"","sources":["../../src/schemas/console.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,yBAAyB,EAAE,4BAA4B,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAEpK,4DAA4D;AAC5D,MAAM,CAAC,MAAM,sBAAsB,GAAG,mBAAmB,CAAC;AAC1D,OAAO,EAAE,0BAA0B,EAAE,yBAAyB,EAAE,4BAA4B,EAAE,MAAM,qBAAqB,CAAC;AAE1H;;;;;GAKG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACxC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC,GAAG,CAAC,yBAAyB,EAAE,cAAc,CAAC;IAC9F,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,iBAAiB,CAAC,CAAC,GAAG,CAAC,4BAA4B,EAAE,iBAAiB,CAAC;CACpG,CAAC,CAAC;AAIH,2FAA2F;AAC3F,MAAM,yBAAyB,GAAG,GAAG,CAAC;AAEtC;;;;GAIG;AACH,MAAM,CAAC,MAAM,6BAA6B,GAAG,CAAC,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,yBAAyB,CAAC,EAAE,CAAC,CAAC;AAE1H,8GAA8G;AAC9G,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAU,CAAC;AAC3D,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AAG1C,uBAAuB;AACvB,MAAM,OAAO,GAAG,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC;AAEjC,wHAAwH;AACxH,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAC;AAEvE;;;;;GAKG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC;IACjD,OAAO,EAAE,QAAQ,CAAC,OAAO,CAAC;IAC1B,SAAS,EAAE,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE;IAC3B,IAAI,EAAE,wBAAwB;IAC9B,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC;CAC7B,CAAC,CAAC;AAIH,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"console.js","sourceRoot":"","sources":["../../src/schemas/console.ts"],"names":[],"mappings":"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"}
|
|
@@ -80,6 +80,14 @@ export declare const receiveOutputSchema: z.ZodObject<{
|
|
|
80
80
|
}, z.core.$strip>>;
|
|
81
81
|
}, z.core.$strip>;
|
|
82
82
|
export type ReceiveOutput = z.infer<typeof receiveOutputSchema>;
|
|
83
|
+
/**
|
|
84
|
+
* Input of `ship.receiveReply`: the message whose reply to receive. Its
|
|
85
|
+
* output is `receiveOutputSchema`, with one delivery at most.
|
|
86
|
+
*/
|
|
87
|
+
export declare const receiveReplyInputSchema: z.ZodObject<{
|
|
88
|
+
messageId: z.ZodType<`msg_${string}`, unknown, z.core.$ZodTypeInternals<`msg_${string}`, unknown>>;
|
|
89
|
+
}, z.core.$strip>;
|
|
90
|
+
export type ReceiveReplyInput = z.infer<typeof receiveReplyInputSchema>;
|
|
83
91
|
/**
|
|
84
92
|
* One delivery a push receive takes for the crew's computer side (decision
|
|
85
93
|
* 0040): received, not yet handed to the agent and with no attempt counted,
|
|
@@ -112,6 +120,22 @@ export declare const pushReceivedDeliverySchema: z.ZodObject<{
|
|
|
112
120
|
handOverNumber: z.ZodNullable<z.ZodInt>;
|
|
113
121
|
}, z.core.$strip>;
|
|
114
122
|
export type PushReceivedDelivery = z.infer<typeof pushReceivedDeliverySchema>;
|
|
123
|
+
/**
|
|
124
|
+
* Input of `ship.pushReceive`: at most how many deliveries to take, 1 to 10,
|
|
125
|
+
* one without it, and what wakes the ship, kept from the lease's first push
|
|
126
|
+
* receive (interop 5.1).
|
|
127
|
+
*/
|
|
128
|
+
export declare const pushReceiveInputSchema: z.ZodOptional<z.ZodObject<{
|
|
129
|
+
max: z.ZodOptional<z.ZodInt>;
|
|
130
|
+
waker: z.ZodOptional<z.ZodEnum<{
|
|
131
|
+
trierarch: "trierarch";
|
|
132
|
+
pluginWatcher: "pluginWatcher";
|
|
133
|
+
personApp: "personApp";
|
|
134
|
+
gateway: "gateway";
|
|
135
|
+
adapter: "adapter";
|
|
136
|
+
}>>;
|
|
137
|
+
}, z.core.$strip>>;
|
|
138
|
+
export type PushReceiveInput = z.infer<typeof pushReceiveInputSchema>;
|
|
115
139
|
/** Output of `ship.pushReceive`: the deliveries taken, none when the wait ended without one. */
|
|
116
140
|
export declare const pushReceiveOutputSchema: z.ZodObject<{
|
|
117
141
|
deliveries: z.ZodArray<z.ZodObject<{
|
|
@@ -146,12 +170,14 @@ export type PushReceiveOutput = z.infer<typeof pushReceiveOutputSchema>;
|
|
|
146
170
|
* Input of `ship.handed`: the delivery the computer side handed to the agent,
|
|
147
171
|
* and the number of that hand-over, counting from 1 under the crew's lease.
|
|
148
172
|
* Once more: it hands a confirmed message once more, after the turn that took
|
|
149
|
-
* it died (decision 0040).
|
|
173
|
+
* it died (decision 0040). The channel it handed it through, kept with
|
|
174
|
+
* DeliveryHanded (interop 5.1).
|
|
150
175
|
*/
|
|
151
176
|
export declare const handedInputSchema: z.ZodObject<{
|
|
152
177
|
deliveryId: z.ZodType<`dlv_${string}`, unknown, z.core.$ZodTypeInternals<`dlv_${string}`, unknown>>;
|
|
153
178
|
handOverNumber: z.ZodInt;
|
|
154
179
|
isOnceMore: z.ZodOptional<z.ZodBoolean>;
|
|
180
|
+
channel: z.ZodOptional<z.ZodString>;
|
|
155
181
|
}, z.core.$strip>;
|
|
156
182
|
export type HandedInput = z.infer<typeof handedInputSchema>;
|
|
157
183
|
/** Output of `ship.handed`: where the delivery stands now. Undeliverable: that was the fifth attempt, and nothing is handed. */
|
|
@@ -175,8 +201,9 @@ export type HandledOutput = z.infer<typeof handledOutputSchema>;
|
|
|
175
201
|
export declare const NOT_HANDLED_REASON_MAX_LENGTH = 200;
|
|
176
202
|
/**
|
|
177
203
|
* Input of `ship.notHandled`: the delivery handed once more whose turn died
|
|
178
|
-
* too, and
|
|
179
|
-
* attention shows with the
|
|
204
|
+
* too, or handed and not confirmed and unsafe to hand again, and why the
|
|
205
|
+
* crew's computer side judged so (#847), which Needs attention shows with the
|
|
206
|
+
* entry. The use case requires the reason for one not confirmed.
|
|
180
207
|
*/
|
|
181
208
|
export declare const notHandledInputSchema: z.ZodObject<{
|
|
182
209
|
deliveryId: z.ZodType<`dlv_${string}`, unknown, z.core.$ZodTypeInternals<`dlv_${string}`, unknown>>;
|
|
@@ -214,3 +241,42 @@ export declare const inboxOutputSchema: z.ZodObject<{
|
|
|
214
241
|
forced: z.ZodInt;
|
|
215
242
|
}, z.core.$strip>;
|
|
216
243
|
export type InboxOutput = z.infer<typeof inboxOutputSchema>;
|
|
244
|
+
/** Input of `ship.sentMessage`: a message the caller sent. */
|
|
245
|
+
export declare const sentMessageInputSchema: z.ZodObject<{
|
|
246
|
+
messageId: z.ZodType<`msg_${string}`, unknown, z.core.$ZodTypeInternals<`msg_${string}`, unknown>>;
|
|
247
|
+
}, z.core.$strip>;
|
|
248
|
+
export type SentMessageInput = z.infer<typeof sentMessageInputSchema>;
|
|
249
|
+
/**
|
|
250
|
+
* Output of `ship.sentMessage`: where the delivery of a message its sender
|
|
251
|
+
* sent stands, and since when, with its recipient by name or type. No payload.
|
|
252
|
+
*/
|
|
253
|
+
export declare const sentMessageOutputSchema: z.ZodObject<{
|
|
254
|
+
messageId: z.ZodType<`msg_${string}`, unknown, z.core.$ZodTypeInternals<`msg_${string}`, unknown>>;
|
|
255
|
+
sentAt: z.ZodISODateTime;
|
|
256
|
+
recipient: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
257
|
+
kind: z.ZodLiteral<"ship">;
|
|
258
|
+
ship: z.ZodObject<{
|
|
259
|
+
id: z.ZodType<`shp_${string}`, unknown, z.core.$ZodTypeInternals<`shp_${string}`, unknown>>;
|
|
260
|
+
name: z.ZodString;
|
|
261
|
+
}, z.core.$strip>;
|
|
262
|
+
}, z.core.$strip>, z.ZodObject<{
|
|
263
|
+
kind: z.ZodLiteral<"type">;
|
|
264
|
+
type: z.ZodString;
|
|
265
|
+
}, z.core.$strip>], "kind">;
|
|
266
|
+
delivery: z.ZodObject<{
|
|
267
|
+
deliveryId: z.ZodType<`dlv_${string}`, unknown, z.core.$ZodTypeInternals<`dlv_${string}`, unknown>>;
|
|
268
|
+
state: z.ZodEnum<{
|
|
269
|
+
pending: "pending";
|
|
270
|
+
received: "received";
|
|
271
|
+
handed: "handed";
|
|
272
|
+
acknowledged: "acknowledged";
|
|
273
|
+
handled: "handled";
|
|
274
|
+
notHandled: "notHandled";
|
|
275
|
+
undeliverable: "undeliverable";
|
|
276
|
+
dismissed: "dismissed";
|
|
277
|
+
abandoned: "abandoned";
|
|
278
|
+
}>;
|
|
279
|
+
since: z.ZodISODateTime;
|
|
280
|
+
}, z.core.$strip>;
|
|
281
|
+
}, z.core.$strip>;
|
|
282
|
+
export type SentMessageOutput = z.infer<typeof sentMessageOutputSchema>;
|