@modelprofile.com/flexharness 12.5.0 → 13.1.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_ts/00_commitinfo_data.js +1 -1
- package/dist_ts/classes.flexharness.callbacks.js +10 -3
- package/dist_ts/classes.flexharness.core.js +4 -2
- package/dist_ts/classes.flexharness.permissions.js +11 -3
- package/dist_ts/classes.flexharness.prompts.js +11 -2
- package/dist_ts/classes.flexharness.reversions.js +21 -6
- package/dist_ts/classes.flexharness.runs.js +13 -7
- package/dist_ts/classes.flexharness.subagents.js +4 -5
- package/dist_ts/classes.toolcatalog.d.ts +14 -0
- package/dist_ts/classes.toolcatalog.js +50 -28
- package/dist_ts/errors.d.ts +8 -2
- package/dist_ts/errors.js +13 -5
- package/dist_ts/interfaces.d.ts +27 -0
- package/dist_ts/interfaces.flexharness.d.ts +3 -1
- package/dist_ts/interfaces.js +7 -1
- package/dist_ts/utils.flexharness.d.ts +8 -2
- package/dist_ts/utils.flexharness.js +13 -3
- package/dist_ts/utils.json.js +9 -2
- package/dist_ts/utils.sessionpreview.d.ts +7 -0
- package/dist_ts/utils.sessionpreview.js +35 -0
- package/dist_ts_typedrequest/catalog.d.ts +3 -1
- package/dist_ts_typedrequest/catalog.js +8 -4
- package/dist_ts_typedrequest/describe.js +2 -22
- package/dist_ts_typedrequest/interfaces.d.ts +4 -1
- package/dist_ts_typedrequest/references.d.ts +17 -0
- package/dist_ts_typedrequest/references.js +65 -0
- package/package.json +3 -3
- package/readme.md +8 -4
- package/ts/00_commitinfo_data.ts +1 -1
- package/ts/classes.flexharness.callbacks.ts +9 -3
- package/ts/classes.flexharness.core.ts +2 -1
- package/ts/classes.flexharness.permissions.ts +8 -2
- package/ts/classes.flexharness.prompts.ts +9 -1
- package/ts/classes.flexharness.reversions.ts +21 -5
- package/ts/classes.flexharness.runs.ts +11 -4
- package/ts/classes.flexharness.subagents.ts +3 -3
- package/ts/classes.toolcatalog.ts +51 -23
- package/ts/errors.ts +13 -4
- package/ts/interfaces.flexharness.ts +3 -0
- package/ts/interfaces.ts +33 -0
- package/ts/readme.md +8 -4
- package/ts/utils.flexharness.ts +16 -2
- package/ts/utils.json.ts +12 -1
- package/ts/utils.sessionpreview.ts +32 -0
- package/ts_typedrequest/catalog.ts +7 -3
- package/ts_typedrequest/describe.ts +1 -22
- package/ts_typedrequest/interfaces.ts +4 -1
- package/ts_typedrequest/readme.md +1 -1
- package/ts_typedrequest/references.ts +68 -0
package/dist_ts/errors.d.ts
CHANGED
|
@@ -43,7 +43,8 @@ export declare class FlexHarnessQueueFullError extends FlexHarnessError {
|
|
|
43
43
|
constructor(message: string);
|
|
44
44
|
}
|
|
45
45
|
export declare class FlexHarnessAbortError extends FlexHarnessError {
|
|
46
|
-
|
|
46
|
+
/** `code` names a more specific stop for a subclass, such as a rejected permission. */
|
|
47
|
+
constructor(message?: string, options?: ErrorOptions, code?: string);
|
|
47
48
|
}
|
|
48
49
|
/** The conversational run exhausted its model steps before producing a final answer. */
|
|
49
50
|
export declare class FlexHarnessStepLimitError extends FlexHarnessError {
|
|
@@ -57,7 +58,12 @@ export declare class FlexHarnessExternalError extends FlexHarnessError {
|
|
|
57
58
|
readonly limit: TFlexModelLimit | undefined;
|
|
58
59
|
constructor(info: IFlexErrorInfo);
|
|
59
60
|
}
|
|
60
|
-
|
|
61
|
+
/**
|
|
62
|
+
* A permission was rejected, by a `reject` response or by the session's permission policy. The
|
|
63
|
+
* rejection is a decision, not a fault: it stops the run like an owner's cancellation.
|
|
64
|
+
*/
|
|
65
|
+
export declare class FlexHarnessPermissionRejectedError extends FlexHarnessAbortError {
|
|
66
|
+
readonly permissionId: string;
|
|
61
67
|
constructor(permissionId: string, options?: ErrorOptions);
|
|
62
68
|
}
|
|
63
69
|
export declare class FlexHarnessToolPermissionDeniedError extends FlexHarnessError {
|
package/dist_ts/errors.js
CHANGED
|
@@ -84,8 +84,9 @@ export class FlexHarnessQueueFullError extends FlexHarnessError {
|
|
|
84
84
|
}
|
|
85
85
|
}
|
|
86
86
|
export class FlexHarnessAbortError extends FlexHarnessError {
|
|
87
|
-
|
|
88
|
-
|
|
87
|
+
/** `code` names a more specific stop for a subclass, such as a rejected permission. */
|
|
88
|
+
constructor(message = 'The run was aborted.', options, code = 'FLEX_ABORTED') {
|
|
89
|
+
super(code, message, options);
|
|
89
90
|
this.name = 'FlexHarnessAbortError';
|
|
90
91
|
}
|
|
91
92
|
}
|
|
@@ -112,10 +113,16 @@ export class FlexHarnessExternalError extends FlexHarnessError {
|
|
|
112
113
|
this.limit = info.limit;
|
|
113
114
|
}
|
|
114
115
|
}
|
|
115
|
-
|
|
116
|
+
/**
|
|
117
|
+
* A permission was rejected, by a `reject` response or by the session's permission policy. The
|
|
118
|
+
* rejection is a decision, not a fault: it stops the run like an owner's cancellation.
|
|
119
|
+
*/
|
|
120
|
+
export class FlexHarnessPermissionRejectedError extends FlexHarnessAbortError {
|
|
121
|
+
permissionId;
|
|
116
122
|
constructor(permissionId, options) {
|
|
117
|
-
super(
|
|
123
|
+
super(`Permission "${permissionId}" was rejected.`, options, 'FLEX_PERMISSION_REJECTED');
|
|
118
124
|
this.name = 'FlexHarnessPermissionRejectedError';
|
|
125
|
+
this.permissionId = permissionId;
|
|
119
126
|
}
|
|
120
127
|
}
|
|
121
128
|
export class FlexHarnessToolPermissionDeniedError extends FlexHarnessError {
|
|
@@ -183,6 +190,7 @@ export function errorToInfo(error) {
|
|
|
183
190
|
message: error.message,
|
|
184
191
|
code: error.code,
|
|
185
192
|
...(error instanceof FlexHarnessExternalError && error.limit ? { limit: error.limit } : {}),
|
|
193
|
+
...(error instanceof FlexHarnessPermissionRejectedError ? { permissionId: error.permissionId } : {}),
|
|
186
194
|
};
|
|
187
195
|
}
|
|
188
196
|
if (error instanceof Error) {
|
|
@@ -211,4 +219,4 @@ export function modelLimitErrorInfo(error) {
|
|
|
211
219
|
export function errorMessage(error) {
|
|
212
220
|
return error instanceof Error ? error.message : String(error);
|
|
213
221
|
}
|
|
214
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
222
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3JzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vdHMvZXJyb3JzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxPQUFPLE1BQU0sY0FBYyxDQUFDO0FBR3hDLE1BQU0sb0JBQW9CLEdBQTRDO0lBQ3BFLFdBQVcsRUFBRSxrQkFBa0I7SUFDL0IsVUFBVSxFQUFFLGlCQUFpQjtDQUM5QixDQUFDO0FBRUYsTUFBTSxPQUFPLGdCQUFpQixTQUFRLEtBQUs7SUFDekIsSUFBSSxDQUFTO0lBRTdCLFlBQVksSUFBWSxFQUFFLE9BQWUsRUFBRSxPQUFzQjtRQUMvRCxLQUFLLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQ3hCLElBQUksQ0FBQyxJQUFJLEdBQUcsa0JBQWtCLENBQUM7UUFDL0IsSUFBSSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7SUFDbkIsQ0FBQztDQUNGO0FBRUQsTUFBTSxPQUFPLDBCQUEyQixTQUFRLGdCQUFnQjtJQUM5RCxZQUFZLE9BQWUsRUFBRSxPQUFzQjtRQUNqRCxLQUFLLENBQUMsaUJBQWlCLEVBQUUsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDO1FBQzNDLElBQUksQ0FBQyxJQUFJLEdBQUcsNEJBQTRCLENBQUM7SUFDM0MsQ0FBQztDQUNGO0FBRUQsTUFBTSxPQUFPLHNCQUF1QixTQUFRLGdCQUFnQjtJQUMxRDtRQUNFLEtBQUssQ0FBQyxhQUFhLEVBQUUsMEJBQTBCLENBQUMsQ0FBQztRQUNqRCxJQUFJLENBQUMsSUFBSSxHQUFHLHdCQUF3QixDQUFDO0lBQ3ZDLENBQUM7Q0FDRjtBQUVELE1BQU0sT0FBTyx3QkFBeUIsU0FBUSxnQkFBZ0I7SUFDNUQsWUFBWSxRQUFnQixFQUFFLEVBQVU7UUFDdEMsS0FBSyxDQUFDLGdCQUFnQixFQUFFLEdBQUcsUUFBUSxLQUFLLEVBQUUsa0JBQWtCLENBQUMsQ0FBQztRQUM5RCxJQUFJLENBQUMsSUFBSSxHQUFHLDBCQUEwQixDQUFD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
|
package/dist_ts/interfaces.d.ts
CHANGED
|
@@ -148,6 +148,8 @@ export interface IFlexToolMessagePart {
|
|
|
148
148
|
* did not run; its output is the earlier call's.
|
|
149
149
|
*/
|
|
150
150
|
deduplicatedFrom?: string;
|
|
151
|
+
/** For a failed call whose permission was rejected: the rejected request's `permissionId`. */
|
|
152
|
+
rejectedPermissionId?: string;
|
|
151
153
|
model?: IFlexModelIdentity;
|
|
152
154
|
/** ISO time the tool call began. Absent on parts recorded before part times existed. */
|
|
153
155
|
startedAt?: string;
|
|
@@ -183,6 +185,8 @@ export interface IFlexMessage {
|
|
|
183
185
|
error?: string;
|
|
184
186
|
/** The model limit that failed this run, next to its error. */
|
|
185
187
|
limit?: TFlexModelLimit;
|
|
188
|
+
/** The permission whose rejection stopped this run, next to its error. */
|
|
189
|
+
rejectedPermissionId?: string;
|
|
186
190
|
/** On a user message that steered its running run: the caller's steer identity. */
|
|
187
191
|
steerId?: string;
|
|
188
192
|
}
|
|
@@ -194,6 +198,8 @@ export interface IFlexSessionActivity {
|
|
|
194
198
|
error?: string;
|
|
195
199
|
/** The model limit that failed the last run, next to its error. */
|
|
196
200
|
limit?: TFlexModelLimit;
|
|
201
|
+
/** The permission whose rejection stopped the last run, next to its error. */
|
|
202
|
+
rejectedPermissionId?: string;
|
|
197
203
|
}
|
|
198
204
|
export interface IFlexSession {
|
|
199
205
|
scopeId: string;
|
|
@@ -203,6 +209,13 @@ export interface IFlexSession {
|
|
|
203
209
|
/** Opaque immutable configuration revision bound to this exact session generation. */
|
|
204
210
|
configurationRef?: string;
|
|
205
211
|
title?: string;
|
|
212
|
+
/**
|
|
213
|
+
* The session's first prompt as one line, bounded like a title (`maxTitleBytes`), so a session
|
|
214
|
+
* nobody titled can still be named. The harness sets it when the first run with prompt text is
|
|
215
|
+
* admitted, and for a session stored before previews existed at its next run; it never changes
|
|
216
|
+
* afterwards and is never set by a caller. Absent until then.
|
|
217
|
+
*/
|
|
218
|
+
preview?: string;
|
|
206
219
|
createdAt: string;
|
|
207
220
|
updatedAt: string;
|
|
208
221
|
archivedAt?: string;
|
|
@@ -1364,12 +1377,24 @@ export interface IFlexTurnReversionProviderV2<TScope> {
|
|
|
1364
1377
|
}
|
|
1365
1378
|
export type TFlexReversionPolicy = 'transcript-optional' | 'workspace-required';
|
|
1366
1379
|
export type TFlexSessionReversionGroupKind = 'candidate' | 'barrier' | 'no-change';
|
|
1380
|
+
/**
|
|
1381
|
+
* Why a group is a barrier: `pending` while a capture runs or its outcome is not final,
|
|
1382
|
+
* `nonrevertible` for a workspace outcome that cannot be reverted, `transcript-only` for legacy
|
|
1383
|
+
* transcript history without a workspace capture.
|
|
1384
|
+
*/
|
|
1385
|
+
export type TFlexSessionReversionBarrierCause = 'pending' | 'nonrevertible' | 'transcript-only';
|
|
1386
|
+
/** The barrier causes in the order a group lists them. */
|
|
1387
|
+
export declare const FLEX_SESSION_REVERSION_BARRIER_CAUSES: readonly TFlexSessionReversionBarrierCause[];
|
|
1367
1388
|
export interface IFlexSessionReversionGroup {
|
|
1368
1389
|
readonly runId: string;
|
|
1369
1390
|
readonly kind: TFlexSessionReversionGroupKind;
|
|
1370
1391
|
readonly visibility: 'visible' | 'hidden';
|
|
1371
1392
|
readonly affectedWorkspaces: readonly IFlexAffectedWorkspace[];
|
|
1372
1393
|
readonly affectedWorkspacesTruncated: boolean;
|
|
1394
|
+
/** Each cause of a barrier once, in the order of the type; empty for every other kind. */
|
|
1395
|
+
readonly barrierCauses: readonly TFlexSessionReversionBarrierCause[];
|
|
1396
|
+
/** The distinct reason codes of the group's nonrevertible segments, in segment order. */
|
|
1397
|
+
readonly reasonCodes: readonly string[];
|
|
1373
1398
|
}
|
|
1374
1399
|
export interface IFlexSessionReversionInfo {
|
|
1375
1400
|
readonly undoAvailable: boolean;
|
|
@@ -1722,6 +1747,8 @@ export interface IFlexErrorInfo {
|
|
|
1722
1747
|
code?: string;
|
|
1723
1748
|
/** Set when a model usage or rate limit caused the error. */
|
|
1724
1749
|
limit?: TFlexModelLimit;
|
|
1750
|
+
/** Set when a rejected permission stopped the run: the rejected request's `permissionId`. */
|
|
1751
|
+
permissionId?: string;
|
|
1725
1752
|
}
|
|
1726
1753
|
export type TFlexHarnessEvent = IFlexSessionCreatedEvent | IFlexSessionUpdatedEvent | IFlexSessionDeletedEvent | IFlexRunStartedEvent | IFlexMessageChangedEvent | TFlexPartEvent | IFlexPermissionRequestedEvent | IFlexPermissionResolvedEvent | IFlexRunFinishedEvent | IFlexRunRetryingEvent | TFlexModelUsageEvent | IFlexPromptQueueEvent | IFlexSteerAcceptedEvent | IFlexSteerAppliedEvent | IFlexSessionHistoryChangedEvent;
|
|
1727
1754
|
export type TFlexHarnessEventListener = (event: TFlexHarnessEvent) => void;
|
|
@@ -3,7 +3,7 @@ import type { FlexHarnessAbortError } from './errors.js';
|
|
|
3
3
|
import type { FlexToolCatalog } from './classes.toolcatalog.js';
|
|
4
4
|
import type { FlexCodeSandbox } from './classes.codesandbox.js';
|
|
5
5
|
import type { IFlexProjectionLists } from './utils.projectionchange.js';
|
|
6
|
-
import type { IFlexAgentContextInvocation, IFlexAffectedWorkspace, IFlexDelegatedRunAdmissionContext, IFlexDelegatedRunAdmissionLease, IFlexExecutionContextHandle, IFlexImportedRun, IFlexMessage, IFlexPermissionRequest, IFlexPromptAdmission, IFlexPromptQueueEntry, IFlexPromptOptions, IFlexPromptResult, IFlexReversionSegment, IFlexPendingReversionRelease, IFlexResolvedModel, IFlexResolvedSessionConfiguration, IFlexSession, IFlexSessionMetricsState, IFlexSessionTombstone, IFlexSubagentDefinition, IFlexTerminalProjection, IFlexToolHandle, IFlexToolProviderContext, IFlexUsage, TFlexHarnessEvent, TFlexMessagePart, TFlexProjectTaskPriority, TFlexProjectTaskStatus, TFlexPromptQueueStatus, TFlexPendingReversion, TFlexProjectionSnapshot, TFlexSessionReversionGroupKind, TFlexTurnReversionFinalizedOutcome } from './interfaces.js';
|
|
6
|
+
import type { IFlexAgentContextInvocation, IFlexAffectedWorkspace, IFlexDelegatedRunAdmissionContext, IFlexDelegatedRunAdmissionLease, IFlexExecutionContextHandle, IFlexImportedRun, IFlexMessage, IFlexPermissionRequest, IFlexPromptAdmission, IFlexPromptQueueEntry, IFlexPromptOptions, IFlexPromptResult, IFlexReversionSegment, IFlexPendingReversionRelease, IFlexResolvedModel, IFlexResolvedSessionConfiguration, IFlexSession, IFlexSessionMetricsState, IFlexSessionTombstone, IFlexSubagentDefinition, IFlexTerminalProjection, IFlexToolHandle, IFlexToolProviderContext, IFlexUsage, TFlexHarnessEvent, TFlexMessagePart, TFlexProjectTaskPriority, TFlexProjectTaskStatus, TFlexPromptQueueStatus, TFlexPendingReversion, TFlexProjectionSnapshot, TFlexSessionReversionBarrierCause, TFlexSessionReversionGroupKind, TFlexTurnReversionFinalizedOutcome } from './interfaces.js';
|
|
7
7
|
import type { INormalizedFlexPrompt } from './utils.prompt.js';
|
|
8
8
|
import type { TRegisteredSlashCommand } from './utils.harnessoptions.js';
|
|
9
9
|
import type { INormalizedSessionImportOptions } from './utils.sessionimport.js';
|
|
@@ -69,6 +69,8 @@ export interface IReversionGroup {
|
|
|
69
69
|
kind: TFlexSessionReversionGroupKind;
|
|
70
70
|
affectedWorkspaces: IFlexAffectedWorkspace[];
|
|
71
71
|
affectedWorkspacesTruncated: boolean;
|
|
72
|
+
barrierCauses: TFlexSessionReversionBarrierCause[];
|
|
73
|
+
reasonCodes: string[];
|
|
72
74
|
}
|
|
73
75
|
export type TNormalizedCaptureInspection = {
|
|
74
76
|
status: 'missing' | 'prepared' | 'unknown';
|
package/dist_ts/interfaces.js
CHANGED
|
@@ -115,4 +115,10 @@ export const FLEX_REVERSION_MAX_AFFECTED_WORKSPACES = 64;
|
|
|
115
115
|
export const FLEX_REVERSION_WORKSPACE_ID_MAX_BYTES = 512;
|
|
116
116
|
export const FLEX_REVERSION_WORKSPACE_LABEL_MAX_BYTES = 2048;
|
|
117
117
|
export const FLEX_REVERSION_REASON_CODE_MAX_BYTES = 128;
|
|
118
|
-
|
|
118
|
+
/** The barrier causes in the order a group lists them. */
|
|
119
|
+
export const FLEX_SESSION_REVERSION_BARRIER_CAUSES = [
|
|
120
|
+
'pending',
|
|
121
|
+
'nonrevertible',
|
|
122
|
+
'transcript-only',
|
|
123
|
+
];
|
|
124
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJmYWNlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3RzL2ludGVyZmFjZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBNldBLHlGQUF5RjtBQUN6RixNQUFNLENBQUMsTUFBTSxxQ0FBcUMsR0FBRyxHQUFHLEdBQUcsSUFBSSxDQUFDO0FBQ2hFLE1BQU0sQ0FBQyxNQUFNLHFDQUFxQyxHQUFHLEVBQUUsR0FBRyxJQUFJLENBQUM7QUFDL0QsTUFBTSxDQUFDLE1BQU0sNkJBQTZCLEdBQUcsQ0FBQyxDQUFDO0FBRS9DLE1BQU0sQ0FBQyxNQUFNLGtDQUFrQyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUM7SUFDOUQsY0FBYyxFQUFFLENBQUM7SUFDakIscUJBQXFCLEVBQUUsSUFBSTtJQUMzQixlQUFlLEVBQUUsRUFBRSxHQUFHLElBQUksR0FBRyxJQUFJO0lBQ2pDLFlBQVksRUFBRSxJQUFJLEdBQUcsSUFBSTtJQUN6Qix5QkFBeUIsRUFBRSxDQUFDLEdBQUcsRUFBRSxHQUFHLElBQUk7Q0FDekMsQ0FBQyxDQUFDO0FBRUgsTUFBTSxDQUFDLE1BQU0sa0NBQWtDLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQztJQUM5RCxjQUFjLEVBQUUsRUFBRTtJQUNsQixxQkFBcUIsRUFBRSxNQUFNO0lBQzdCLGVBQWUsRUFBRSxHQUFHLEdBQUcsSUFBSSxHQUFHLElBQUk7SUFDbEMsWUFBWSxFQUFFLElBQUksR0FBRyxJQUFJO0lBQ3pCLHlCQUF5QixFQUFFLEVBQUUsR0FBRyxFQUFFLEdBQUcsSUFBSTtDQUMxQyxDQUFDLENBQUM7QUF1VkgseUZBQXlGO0FBQ3pGLE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLGFBQWEsQ0FBQztBQW9CaEQsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQztJQUM5QyxvREFBb0Q7SUFDcEQsY0FBYyxFQUFFLENBQUMsR0FBRyxJQUFJLEdBQUcsSUFBSTtJQUMvQiwwREFB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
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { FlexHarnessAbortError } from './errors.js';
|
|
1
2
|
import type { IFlexErrorInfo, IFlexMessage, IFlexSession, IFlexSessionActivity, IFlexSessionGeneration, IFlexSessionTombstone } from './interfaces.js';
|
|
2
3
|
/** Runs `operation` after the operations queued before it under `key`, whatever their outcome. */
|
|
3
4
|
export declare function queueOperation<TResult>(queues: Map<string, Promise<void>>, key: string, operation: () => Promise<TResult>): Promise<TResult>;
|
|
@@ -14,6 +15,11 @@ export declare function createFlexResourceIdentityDigest(resourceId: string, att
|
|
|
14
15
|
export declare function createFlexResourceToolNamespace(resourceId: string, attachmentRevision: number): string;
|
|
15
16
|
export declare function createFlexResourceToolName(namespace: string, toolName: string): string;
|
|
16
17
|
export declare function combineErrors(errors: unknown[]): unknown;
|
|
17
|
-
/** The error
|
|
18
|
-
export declare function terminalActivityError(message: IFlexMessage): Pick<IFlexSessionActivity, 'error' | 'limit'>;
|
|
18
|
+
/** The error, model limit and rejected permission a finished run leaves on its session activity. */
|
|
19
|
+
export declare function terminalActivityError(message: IFlexMessage): Pick<IFlexSessionActivity, 'error' | 'limit' | 'rejectedPermissionId'>;
|
|
20
|
+
/**
|
|
21
|
+
* The parent run's cancellation when the runs it delegated share it: a stop stops them alike, but a
|
|
22
|
+
* permission the parent rejected is the parent's own.
|
|
23
|
+
*/
|
|
24
|
+
export declare function delegatedCancellation(reason: unknown): FlexHarnessAbortError | undefined;
|
|
19
25
|
export declare function isAbortError(error: unknown): boolean;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as plugins from './plugins.js';
|
|
2
|
-
import { FlexHarnessAbortError, FlexHarnessRunError, FlexHarnessValidationError, } from './errors.js';
|
|
2
|
+
import { FlexHarnessAbortError, FlexHarnessPermissionRejectedError, FlexHarnessRunError, FlexHarnessValidationError, } from './errors.js';
|
|
3
3
|
import { validateUtf8String } from './utils.validation.js';
|
|
4
4
|
/** Runs `operation` after the operations queued before it under `key`, whatever their outcome. */
|
|
5
5
|
export function queueOperation(queues, key, operation) {
|
|
@@ -68,16 +68,26 @@ export function combineErrors(errors) {
|
|
|
68
68
|
Object.freeze(combined.errors);
|
|
69
69
|
return Object.freeze(combined);
|
|
70
70
|
}
|
|
71
|
-
/** The error
|
|
71
|
+
/** The error, model limit and rejected permission a finished run leaves on its session activity. */
|
|
72
72
|
export function terminalActivityError(message) {
|
|
73
73
|
return {
|
|
74
74
|
...(message.error ? { error: message.error } : {}),
|
|
75
75
|
...(message.limit ? { limit: message.limit } : {}),
|
|
76
|
+
...(message.rejectedPermissionId ? { rejectedPermissionId: message.rejectedPermissionId } : {}),
|
|
76
77
|
};
|
|
77
78
|
}
|
|
79
|
+
/**
|
|
80
|
+
* The parent run's cancellation when the runs it delegated share it: a stop stops them alike, but a
|
|
81
|
+
* permission the parent rejected is the parent's own.
|
|
82
|
+
*/
|
|
83
|
+
export function delegatedCancellation(reason) {
|
|
84
|
+
return reason instanceof FlexHarnessAbortError && !(reason instanceof FlexHarnessPermissionRejectedError)
|
|
85
|
+
? reason
|
|
86
|
+
: undefined;
|
|
87
|
+
}
|
|
78
88
|
export function isAbortError(error) {
|
|
79
89
|
return error instanceof FlexHarnessAbortError
|
|
80
90
|
|| (error instanceof DOMException && error.name === 'AbortError')
|
|
81
91
|
|| (error instanceof Error && error.name === 'AbortError');
|
|
82
92
|
}
|
|
83
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
93
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuZmxleGhhcm5lc3MuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi90cy91dGlscy5mbGV4aGFybmVzcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssT0FBTyxNQUFNLGNBQWMsQ0FBQztBQUN4QyxPQUFPLEVBQ0wscUJBQXFCLEVBQ3JCLGtDQUFrQyxFQUNsQyxtQkFBbUIsRUFDbkIsMEJBQTBCLEdBQzNCLE1BQU0sYUFBYSxDQUFDO0FBU3JCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRTNELGtHQUFrRztBQUNsRyxNQUFNLFVBQVUsY0FBYyxDQUM1QixNQUFrQyxFQUNsQyxHQUFXLEVBQ1gsU0FBaUM7SUFFakMsTUFBTSxRQUFRLEdBQUcsTUFBTSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsSUFBSSxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUM7SUFDdEQsTUFBTSxNQUFNLEdBQUcsUUFBUSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUN4QyxNQUFNLE9BQU8sR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUFDLFNBQVMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUM5RCxNQUFNLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxPQUFPLENBQUMsQ0FBQztJQUN6QixLQUFLLE9BQU8sQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFO1FBQ3JCLElBQUksTUFBTSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsS0FBSyxPQUFPO1lBQUUsTUFBTSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUN0RCxDQUFDLENBQUMsQ0FBQztJQUNILE9BQU8sTUFBTSxDQUFDO0FBQ2hCLENBQUM7QUFFRCxNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxHQUFHLENBQUM7QUFDdEMsTUFBTSxDQUFDLE1BQU0sd0JBQXdCLEdBQUcsR0FB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QUFFLEVBQUUsQ0FBQyxFQUFFLENBQUM7QUFDdEUsQ0FBQztBQUVELE1BQU0sVUFBVSxhQUFhLENBQUMsTUFBaUI7SUFDN0MsSUFBSSxNQUFNLENBQUMsTUFBTSxLQUFLLENBQUM7UUFBRSxPQUFPLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMxQyxNQUFNLFFBQVEsR0FBRyxJQUFJLG1CQUFtQixDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ2pELE1BQU0sQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQy9CLE9BQU8sTUFBTSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztBQUNqQyxDQUFDO0FBRUQsb0dBQW9HO0FBQ3BHLE1BQU0sVUFBVSxxQkFBcUIsQ0FDbkMsT0FBcUI7SUFFckIsT0FBTztRQUNMLEdBQUcsQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssRUFBRSxPQUFPLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUNsRCxHQUFHLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxLQUFLLEVBQUUsT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDbEQsR0FBRyxDQUFDLE9BQU8sQ0FBQyxvQkFBb0IsQ0FBQyxDQUFDLENBQUMsRUFBRSxvQkFBb0IsRUFBRSxPQUFPLENBQUMsb0JBQW9CLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0tBQ2hHLENBQUM7QUFDSixDQUFDO0FBRUQ7OztHQUdHO0FBQ0gsTUFBTSxVQUFVLHFCQUFxQixDQUFDLE1BQWU7SUFDbkQsT0FBTyxNQUFNLFlBQVkscUJBQXFCLElBQUksQ0FBQyxDQUFDLE1BQU0sWUFBWSxrQ0FBa0MsQ0FBQztRQUN2RyxDQUFDLENBQUMsTUFBTTtRQUNSLENBQUMsQ0FBQyxTQUFTLENBQUM7QUFDaEIsQ0FBQztBQUVELE1BQU0sVUFBVSxZQUFZLENBQUMsS0FBYztJQUN6QyxPQUFPLEtBQUssWUFBWSxxQkFBcUI7V0FDeEMsQ0FBQyxLQUFLLFlBQVksWUFBWSxJQUFJLEtBQUssQ0FBQyxJQUFJLEtBQUssWUFBWSxDQUFDO1dBQzlELENBQUMsS0FBSyxZQUFZLEtBQUssSUFBSSxLQUFLLENBQUMsSUFBSSxLQUFLLFlBQVksQ0FBQyxDQUFDO0FBQy9ELENBQUMifQ==
|