@modelprofile.com/flexharness 3.7.0 → 4.0.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/changelog.md +21 -0
- package/dist_ts/00_commitinfo_data.js +1 -1
- package/dist_ts/classes.flexharness.d.ts +65 -2
- package/dist_ts/classes.flexharness.js +1401 -222
- package/dist_ts/classes.stores.d.ts +10 -1
- package/dist_ts/classes.stores.js +164 -2
- package/dist_ts/index.d.ts +1 -0
- package/dist_ts/index.js +2 -1
- package/dist_ts/interfaces.d.ts +184 -6
- package/dist_ts/interfaces.js +16 -1
- package/dist_ts/utils.json.d.ts +3 -2
- package/dist_ts/utils.json.js +278 -12
- package/dist_ts/utils.projectmanagement.d.ts +5 -0
- package/dist_ts/utils.projectmanagement.js +141 -0
- package/dist_ts_migration/v3_legacyflexharness.js +1 -1
- package/package.json +1 -1
- package/readme.hints.md +7 -4
- package/readme.md +207 -25
- package/ts/00_commitinfo_data.ts +1 -1
- package/ts/classes.flexharness.ts +2024 -255
- package/ts/classes.stores.ts +265 -6
- package/ts/index.ts +6 -0
- package/ts/interfaces.ts +254 -6
- package/ts/utils.json.ts +321 -13
- package/ts/utils.projectmanagement.ts +226 -0
- package/ts_migration/v3_legacyflexharness.ts +1 -1
package/dist_ts/interfaces.d.ts
CHANGED
|
@@ -104,6 +104,8 @@ export interface IFlexSessionActivity {
|
|
|
104
104
|
export interface IFlexSession {
|
|
105
105
|
scopeId: string;
|
|
106
106
|
sessionId: string;
|
|
107
|
+
sessionGenerationId?: string;
|
|
108
|
+
sessionGenerationSequence?: number;
|
|
107
109
|
title?: string;
|
|
108
110
|
createdAt: string;
|
|
109
111
|
updatedAt: string;
|
|
@@ -325,6 +327,8 @@ export interface IFlexResourceToolProviderResolver<TScope> {
|
|
|
325
327
|
}
|
|
326
328
|
export interface IFlexSessionTombstone {
|
|
327
329
|
sessionId: string;
|
|
330
|
+
sessionGenerationId?: string;
|
|
331
|
+
sessionGenerationSequence?: number;
|
|
328
332
|
deletedAt: string;
|
|
329
333
|
rootSessionId?: string;
|
|
330
334
|
depth?: number;
|
|
@@ -353,7 +357,14 @@ export interface IFlexProjectionSnapshotV1 {
|
|
|
353
357
|
stagedTerminals: IFlexTerminalProjection[];
|
|
354
358
|
}
|
|
355
359
|
export type TFlexReversionSegmentStatus = 'capturing' | 'completed' | 'failed' | 'cancelled';
|
|
356
|
-
export
|
|
360
|
+
export type TFlexReversionProtocolVersion = 1 | 2;
|
|
361
|
+
export type TFlexReversionProvenance = 'transcript' | 'workspace';
|
|
362
|
+
export type TFlexReversionDisposition = 'pending' | 'revertible' | 'no-change' | 'nonrevertible';
|
|
363
|
+
export interface IFlexAffectedWorkspace {
|
|
364
|
+
readonly id: string;
|
|
365
|
+
readonly label: string;
|
|
366
|
+
}
|
|
367
|
+
interface IFlexReversionSegmentV2 {
|
|
357
368
|
runId: string;
|
|
358
369
|
userMessageId: string;
|
|
359
370
|
status: TFlexReversionSegmentStatus;
|
|
@@ -363,12 +374,22 @@ export interface IFlexReversionSegment {
|
|
|
363
374
|
captureId?: string;
|
|
364
375
|
workspaceReference?: TJsonValue;
|
|
365
376
|
}
|
|
366
|
-
export interface
|
|
377
|
+
export interface IFlexReversionSegment extends IFlexReversionSegmentV2 {
|
|
378
|
+
protocolVersion: TFlexReversionProtocolVersion;
|
|
379
|
+
provenance: TFlexReversionProvenance;
|
|
380
|
+
disposition?: TFlexReversionDisposition;
|
|
381
|
+
affectedWorkspaces?: IFlexAffectedWorkspace[];
|
|
382
|
+
reasonCode?: string;
|
|
383
|
+
}
|
|
384
|
+
interface IFlexPendingCaptureReversionV2 {
|
|
367
385
|
kind: 'capture';
|
|
368
386
|
runId: string;
|
|
369
387
|
captureId: string;
|
|
370
388
|
state: 'preparing' | 'prepared' | 'finalizing';
|
|
371
389
|
}
|
|
390
|
+
export interface IFlexPendingCaptureReversion extends IFlexPendingCaptureReversionV2 {
|
|
391
|
+
protocolVersion: TFlexReversionProtocolVersion;
|
|
392
|
+
}
|
|
372
393
|
export interface IFlexPendingApplyReversion {
|
|
373
394
|
kind: 'apply';
|
|
374
395
|
operationId: string;
|
|
@@ -378,31 +399,125 @@ export interface IFlexPendingApplyReversion {
|
|
|
378
399
|
segmentRunIds: string[];
|
|
379
400
|
appliedRunIds: string[];
|
|
380
401
|
}
|
|
402
|
+
type TFlexPendingReversionV2 = IFlexPendingCaptureReversionV2 | IFlexPendingApplyReversion;
|
|
381
403
|
export type TFlexPendingReversion = IFlexPendingCaptureReversion | IFlexPendingApplyReversion;
|
|
382
|
-
|
|
404
|
+
interface IFlexPendingReversionReleaseV2 {
|
|
383
405
|
runId: string;
|
|
384
406
|
captureId: string;
|
|
385
407
|
reference: TJsonValue;
|
|
386
408
|
}
|
|
409
|
+
export interface IFlexPendingReversionRelease extends IFlexPendingReversionReleaseV2 {
|
|
410
|
+
protocolVersion: TFlexReversionProtocolVersion;
|
|
411
|
+
}
|
|
387
412
|
export interface IFlexProjectionSnapshotV2 {
|
|
388
413
|
schemaVersion: 2;
|
|
389
414
|
revision: number;
|
|
390
415
|
messages: IFlexMessage[];
|
|
391
416
|
stagedTerminals: IFlexTerminalProjection[];
|
|
417
|
+
reversionSegments: IFlexReversionSegmentV2[];
|
|
418
|
+
revertCursor: number;
|
|
419
|
+
excludedRunIds: string[];
|
|
420
|
+
pendingReversion?: TFlexPendingReversionV2;
|
|
421
|
+
pendingReversionReleases: IFlexPendingReversionReleaseV2[];
|
|
422
|
+
}
|
|
423
|
+
export interface IFlexProjectionSnapshotV3 {
|
|
424
|
+
schemaVersion: 3;
|
|
425
|
+
revision: number;
|
|
426
|
+
messages: IFlexMessage[];
|
|
427
|
+
stagedTerminals: IFlexTerminalProjection[];
|
|
392
428
|
reversionSegments: IFlexReversionSegment[];
|
|
393
429
|
revertCursor: number;
|
|
394
430
|
excludedRunIds: string[];
|
|
395
431
|
pendingReversion?: TFlexPendingReversion;
|
|
396
432
|
pendingReversionReleases: IFlexPendingReversionRelease[];
|
|
397
433
|
}
|
|
398
|
-
export type IFlexProjectionSnapshot = IFlexProjectionSnapshotV1 | IFlexProjectionSnapshotV2;
|
|
434
|
+
export type IFlexProjectionSnapshot = IFlexProjectionSnapshotV1 | IFlexProjectionSnapshotV2 | IFlexProjectionSnapshotV3;
|
|
399
435
|
export type TFlexProjectionSnapshot = IFlexProjectionSnapshot;
|
|
400
|
-
export type IFlexProjectionSnapshotCurrent =
|
|
436
|
+
export type IFlexProjectionSnapshotCurrent = IFlexProjectionSnapshotV3;
|
|
401
437
|
export interface IFlexPermissionSnapshot {
|
|
402
438
|
schemaVersion: 1;
|
|
403
439
|
revision: number;
|
|
404
440
|
rememberedPermissionKeys: string[];
|
|
405
441
|
}
|
|
442
|
+
export declare const FLEX_PROJECT_MANAGEMENT_SCHEMA_VERSION: 1;
|
|
443
|
+
export declare const FLEX_SESSION_GENERATION_ID_MAX_BYTES = 128;
|
|
444
|
+
export declare const FLEX_PROJECT_MANAGEMENT_LIMITS: Readonly<{
|
|
445
|
+
maxGoalBytes: number;
|
|
446
|
+
maxScratchpadBytes: number;
|
|
447
|
+
maxTaskContentBytes: number;
|
|
448
|
+
maxTaskIdBytes: 512;
|
|
449
|
+
maxTasks: 512;
|
|
450
|
+
maxTitleBytes: 2048;
|
|
451
|
+
maxSnapshotBytes: number;
|
|
452
|
+
}>;
|
|
453
|
+
export type TFlexProjectTaskStatus = 'pending' | 'in_progress' | 'completed' | 'cancelled';
|
|
454
|
+
export type TFlexProjectTaskPriority = 'high' | 'medium' | 'low';
|
|
455
|
+
export interface IFlexProjectTask {
|
|
456
|
+
id: string;
|
|
457
|
+
content: string;
|
|
458
|
+
status: TFlexProjectTaskStatus;
|
|
459
|
+
priority: TFlexProjectTaskPriority;
|
|
460
|
+
createdAt: string;
|
|
461
|
+
updatedAt: string;
|
|
462
|
+
}
|
|
463
|
+
export interface IFlexProjectManagementSnapshot {
|
|
464
|
+
schemaVersion: 1;
|
|
465
|
+
revision: number;
|
|
466
|
+
sessionGenerationId: string;
|
|
467
|
+
sessionGenerationSequence: number;
|
|
468
|
+
goal?: string;
|
|
469
|
+
scratchpad: string;
|
|
470
|
+
tasks: IFlexProjectTask[];
|
|
471
|
+
}
|
|
472
|
+
export interface IFlexProjectManagementTombstone {
|
|
473
|
+
schemaVersion: 1;
|
|
474
|
+
revision: number;
|
|
475
|
+
sessionGenerationId: string;
|
|
476
|
+
sessionGenerationSequence: number;
|
|
477
|
+
deletedAt: string;
|
|
478
|
+
}
|
|
479
|
+
export type TFlexProjectManagementRecord = IFlexProjectManagementSnapshot | IFlexProjectManagementTombstone;
|
|
480
|
+
export type TFlexProjectManagementWriteActor = 'agent' | 'application';
|
|
481
|
+
export interface IFlexProjectManagementWriteContext {
|
|
482
|
+
actor: TFlexProjectManagementWriteActor;
|
|
483
|
+
runId?: string;
|
|
484
|
+
agent?: string;
|
|
485
|
+
toolCallId?: string;
|
|
486
|
+
}
|
|
487
|
+
export interface IFlexProjectManagementStore {
|
|
488
|
+
load(storageKey: string, sessionId: string): Promise<TFlexProjectManagementRecord | undefined>;
|
|
489
|
+
save(storageKey: string, sessionId: string, snapshot: IFlexProjectManagementSnapshot, expectedRevision: number, writeContext: IFlexProjectManagementWriteContext): Promise<void>;
|
|
490
|
+
tombstoneSession(storageKey: string, sessionId: string, tombstone: IFlexProjectManagementTombstone, expectedRevision: number): Promise<void>;
|
|
491
|
+
purgeNamespace(storageKey: string): Promise<void>;
|
|
492
|
+
}
|
|
493
|
+
export interface IFlexCreateProjectTaskInput {
|
|
494
|
+
id: string;
|
|
495
|
+
content: string;
|
|
496
|
+
status?: TFlexProjectTaskStatus;
|
|
497
|
+
priority?: TFlexProjectTaskPriority;
|
|
498
|
+
}
|
|
499
|
+
export interface IFlexUpdateProjectTaskInput {
|
|
500
|
+
id: string;
|
|
501
|
+
content?: string;
|
|
502
|
+
status?: TFlexProjectTaskStatus;
|
|
503
|
+
priority?: TFlexProjectTaskPriority;
|
|
504
|
+
}
|
|
505
|
+
export interface IFlexProjectStateResult {
|
|
506
|
+
revision: number;
|
|
507
|
+
state: IFlexProjectManagementSnapshot;
|
|
508
|
+
}
|
|
509
|
+
export interface IFlexProjectTaskResult extends IFlexProjectStateResult {
|
|
510
|
+
task: IFlexProjectTask;
|
|
511
|
+
}
|
|
512
|
+
export interface IFlexProjectTasksResult extends IFlexProjectStateResult {
|
|
513
|
+
tasks: IFlexProjectTask[];
|
|
514
|
+
}
|
|
515
|
+
export interface IFlexProjectGoalResult extends IFlexProjectStateResult {
|
|
516
|
+
goal: string | null;
|
|
517
|
+
}
|
|
518
|
+
export interface IFlexProjectScratchpadResult extends IFlexProjectStateResult {
|
|
519
|
+
scratchpad: string;
|
|
520
|
+
}
|
|
406
521
|
export interface IFlexScopeStore {
|
|
407
522
|
load(storageKey: string): Promise<IFlexScopeSnapshot | undefined>;
|
|
408
523
|
save(storageKey: string, snapshot: IFlexScopeSnapshot, expectedRevision: number): Promise<void>;
|
|
@@ -431,6 +546,7 @@ export interface IFlexHarnessStores {
|
|
|
431
546
|
scopes: IFlexScopeStore;
|
|
432
547
|
projections: IFlexProjectionStore;
|
|
433
548
|
permissions: IFlexPermissionStore;
|
|
549
|
+
projectManagement: IFlexProjectManagementStore;
|
|
434
550
|
agentEvents: IFlexAgentEventStoreProvider;
|
|
435
551
|
jobs: IFlexToolJobStoreProvider;
|
|
436
552
|
}
|
|
@@ -469,6 +585,10 @@ export declare const FLEX_REVERSION_MAXIMUM_LIMITS: Readonly<{
|
|
|
469
585
|
maxPendingReversionReleases: 10000;
|
|
470
586
|
}>;
|
|
471
587
|
export declare const FLEX_REVERSION_REFERENCE_MAX_BYTES: number;
|
|
588
|
+
export declare const FLEX_REVERSION_MAX_AFFECTED_WORKSPACES = 64;
|
|
589
|
+
export declare const FLEX_REVERSION_WORKSPACE_ID_MAX_BYTES = 512;
|
|
590
|
+
export declare const FLEX_REVERSION_WORKSPACE_LABEL_MAX_BYTES = 2048;
|
|
591
|
+
export declare const FLEX_REVERSION_REASON_CODE_MAX_BYTES = 128;
|
|
472
592
|
export interface IFlexTurnReversionBaseContext<TScope> {
|
|
473
593
|
readonly scopeId: string;
|
|
474
594
|
readonly scope: TScope;
|
|
@@ -501,6 +621,52 @@ export interface IFlexTurnReversionProvider<TScope> {
|
|
|
501
621
|
inspectApply(context: IFlexTurnReversionApplyContext<TScope>): Promise<IFlexTurnReversionApplyInspection> | IFlexTurnReversionApplyInspection;
|
|
502
622
|
release(context: IFlexTurnReversionReleaseContext<TScope>): Promise<void> | void;
|
|
503
623
|
}
|
|
624
|
+
export interface IFlexTurnReversionRevertibleOutcome {
|
|
625
|
+
readonly disposition: 'revertible';
|
|
626
|
+
readonly reference: TJsonValue;
|
|
627
|
+
readonly affectedWorkspaces: readonly IFlexAffectedWorkspace[];
|
|
628
|
+
}
|
|
629
|
+
export interface IFlexTurnReversionNoChangeOutcome {
|
|
630
|
+
readonly disposition: 'no-change';
|
|
631
|
+
readonly reference: TJsonValue;
|
|
632
|
+
readonly affectedWorkspaces?: readonly [];
|
|
633
|
+
}
|
|
634
|
+
export interface IFlexTurnReversionNonrevertibleOutcome {
|
|
635
|
+
readonly disposition: 'nonrevertible';
|
|
636
|
+
readonly reference: TJsonValue;
|
|
637
|
+
readonly reasonCode: string;
|
|
638
|
+
readonly affectedWorkspaces?: readonly IFlexAffectedWorkspace[];
|
|
639
|
+
}
|
|
640
|
+
export type TFlexTurnReversionFinalizedOutcome = IFlexTurnReversionRevertibleOutcome | IFlexTurnReversionNoChangeOutcome | IFlexTurnReversionNonrevertibleOutcome;
|
|
641
|
+
export type TFlexTurnReversionCaptureInspectionV2 = {
|
|
642
|
+
readonly status: 'missing' | 'prepared' | 'unknown';
|
|
643
|
+
} | {
|
|
644
|
+
readonly status: 'finalized';
|
|
645
|
+
readonly outcome: TFlexTurnReversionFinalizedOutcome;
|
|
646
|
+
};
|
|
647
|
+
export interface IFlexTurnReversionProviderV2<TScope> {
|
|
648
|
+
readonly protocolVersion: 2;
|
|
649
|
+
prepare(context: IFlexTurnReversionBaseContext<TScope>): Promise<void> | void;
|
|
650
|
+
inspectCapture(context: IFlexTurnReversionBaseContext<TScope>): Promise<TFlexTurnReversionCaptureInspectionV2> | TFlexTurnReversionCaptureInspectionV2;
|
|
651
|
+
finalize(context: IFlexTurnReversionBaseContext<TScope>): Promise<TFlexTurnReversionFinalizedOutcome> | TFlexTurnReversionFinalizedOutcome;
|
|
652
|
+
apply(context: IFlexTurnReversionApplyContext<TScope>): Promise<void> | void;
|
|
653
|
+
inspectApply(context: IFlexTurnReversionApplyContext<TScope>): Promise<IFlexTurnReversionApplyInspection> | IFlexTurnReversionApplyInspection;
|
|
654
|
+
release(context: IFlexTurnReversionReleaseContext<TScope>): Promise<void> | void;
|
|
655
|
+
}
|
|
656
|
+
export type TFlexReversionPolicy = 'transcript-optional' | 'workspace-required';
|
|
657
|
+
export type TFlexSessionReversionGroupKind = 'candidate' | 'barrier' | 'no-change';
|
|
658
|
+
export interface IFlexSessionReversionGroup {
|
|
659
|
+
readonly runId: string;
|
|
660
|
+
readonly kind: TFlexSessionReversionGroupKind;
|
|
661
|
+
readonly visibility: 'visible' | 'hidden';
|
|
662
|
+
readonly affectedWorkspaces: readonly IFlexAffectedWorkspace[];
|
|
663
|
+
readonly affectedWorkspacesTruncated: boolean;
|
|
664
|
+
}
|
|
665
|
+
export interface IFlexSessionReversionInfo {
|
|
666
|
+
readonly undoAvailable: boolean;
|
|
667
|
+
readonly redoAvailable: boolean;
|
|
668
|
+
readonly groups: readonly IFlexSessionReversionGroup[];
|
|
669
|
+
}
|
|
504
670
|
export interface IFlexUndoSessionResult {
|
|
505
671
|
revertedRunId: string;
|
|
506
672
|
}
|
|
@@ -555,6 +721,15 @@ export interface IFlexSubagentDefinition {
|
|
|
555
721
|
system?: string;
|
|
556
722
|
maxSteps?: number;
|
|
557
723
|
}
|
|
724
|
+
export interface IFlexProjectManagementBuiltInToolsOptions {
|
|
725
|
+
task?: boolean;
|
|
726
|
+
goal?: boolean;
|
|
727
|
+
scratchpad?: boolean;
|
|
728
|
+
}
|
|
729
|
+
export interface IFlexBuiltInToolsOptions {
|
|
730
|
+
renameSession?: boolean;
|
|
731
|
+
projectManagement?: IFlexProjectManagementBuiltInToolsOptions;
|
|
732
|
+
}
|
|
558
733
|
export interface IFlexHarnessOptions<TScope> {
|
|
559
734
|
scopeResolver: IFlexScopeResolver<TScope>;
|
|
560
735
|
modelResolver: IFlexModelResolver<TScope>;
|
|
@@ -567,9 +742,11 @@ export interface IFlexHarnessOptions<TScope> {
|
|
|
567
742
|
callbackLimits?: IFlexCallbackLimits;
|
|
568
743
|
promptQueueLimits?: IFlexPromptQueueLimits;
|
|
569
744
|
reversionLimits?: IFlexReversionLimits;
|
|
570
|
-
turnReversionProvider?: IFlexTurnReversionProvider<TScope>;
|
|
745
|
+
turnReversionProvider?: IFlexTurnReversionProvider<TScope> | IFlexTurnReversionProviderV2<TScope>;
|
|
746
|
+
reversionPolicy?: TFlexReversionPolicy;
|
|
571
747
|
externalErrorProjector?: TFlexExternalErrorProjector;
|
|
572
748
|
subagents?: IFlexSubagentDefinition[];
|
|
749
|
+
builtInTools?: IFlexBuiltInToolsOptions;
|
|
573
750
|
slashCommands?: readonly TFlexSlashCommandRegistration<TScope>[];
|
|
574
751
|
maxSubagentDepth?: number;
|
|
575
752
|
maxSubagentCallsPerRun?: number;
|
|
@@ -684,3 +861,4 @@ export interface IFlexErrorInfo {
|
|
|
684
861
|
}
|
|
685
862
|
export type TFlexHarnessEvent = IFlexSessionCreatedEvent | IFlexSessionUpdatedEvent | IFlexSessionDeletedEvent | IFlexRunStartedEvent | IFlexMessageChangedEvent | IFlexPartChangedEvent | IFlexPermissionRequestedEvent | IFlexPermissionResolvedEvent | IFlexRunFinishedEvent | IFlexPromptQueueEvent | IFlexSessionHistoryChangedEvent;
|
|
686
863
|
export type TFlexHarnessEventListener = (event: TFlexHarnessEvent) => void;
|
|
864
|
+
export {};
|
package/dist_ts/interfaces.js
CHANGED
|
@@ -1,3 +1,14 @@
|
|
|
1
|
+
export const FLEX_PROJECT_MANAGEMENT_SCHEMA_VERSION = 1;
|
|
2
|
+
export const FLEX_SESSION_GENERATION_ID_MAX_BYTES = 128;
|
|
3
|
+
export const FLEX_PROJECT_MANAGEMENT_LIMITS = Object.freeze({
|
|
4
|
+
maxGoalBytes: 8 * 1024,
|
|
5
|
+
maxScratchpadBytes: 64 * 1024,
|
|
6
|
+
maxTaskContentBytes: 8 * 1024,
|
|
7
|
+
maxTaskIdBytes: 512,
|
|
8
|
+
maxTasks: 512,
|
|
9
|
+
maxTitleBytes: 2048,
|
|
10
|
+
maxSnapshotBytes: 96 * 1024,
|
|
11
|
+
});
|
|
1
12
|
export const FLEX_REVERSION_DEFAULT_LIMITS = Object.freeze({
|
|
2
13
|
maxCompletedTurns: 100,
|
|
3
14
|
maxSegments: 300,
|
|
@@ -11,4 +22,8 @@ export const FLEX_REVERSION_MAXIMUM_LIMITS = Object.freeze({
|
|
|
11
22
|
maxPendingReversionReleases: 10_000,
|
|
12
23
|
});
|
|
13
24
|
export const FLEX_REVERSION_REFERENCE_MAX_BYTES = 256 * 1024;
|
|
14
|
-
|
|
25
|
+
export const FLEX_REVERSION_MAX_AFFECTED_WORKSPACES = 64;
|
|
26
|
+
export const FLEX_REVERSION_WORKSPACE_ID_MAX_BYTES = 512;
|
|
27
|
+
export const FLEX_REVERSION_WORKSPACE_LABEL_MAX_BYTES = 2048;
|
|
28
|
+
export const FLEX_REVERSION_REASON_CODE_MAX_BYTES = 128;
|
|
29
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJmYWNlcy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3RzL2ludGVyZmFjZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBMGpCQSxNQUFNLENBQUMsTUFBTSxzQ0FBc0MsR0FBRyxDQUFVLENBQUM7QUFDakUsTUFBTSxDQUFDLE1BQU0sb0NBQW9DLEdBQUcsR0FBRyxDQUFDO0FBRXhELE1BQU0sQ0FBQyxNQUFNLDhCQUE4QixHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUM7SUFDMUQsWUFBWSxFQUFFLENBQUMsR0FBRyxJQUFJO0lBQ3RCLGtCQUFrQixFQUFFLEVBQUUsR0FBRyxJQUFJO0lBQzdCLG1CQUFtQixFQUFFLENBQUMsR0FBRyxJQUFJO0lBQzdCLGNBQWMsRUFBRSxHQUFHO0lBQ25CLFFBQVEsRUFBRSxHQUFHO0lBQ2IsYUFBYSxFQUFFLElBQUk7SUFDbkIsZ0JBQWdCLEVBQUUsRUFBRSxHQUFHLElBQUk7Q0FDNUIsQ0FBQyxDQUFDO0FBeUxILE1BQU0sQ0FBQyxNQUFNLDZCQUE2QixHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUM7SUFDekQsaUJBQWlCLEVBQUUsR0FBRztJQUN0QixXQUFXLEVBQUUsR0FBRztJQUNoQixpQkFBaUIsRUFBRSxJQUFJO0lBQ3ZCLDJCQUEyQixFQUFFLElBQUk7Q0FDbEMsQ0FBQyxDQUFDO0FBRUgsTUFBTSxDQUFDLE1BQU0sNkJBQTZCLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQztJQUN6RCxpQkFBaUIsRUFBRSxJQUFJO0lBQ3ZCLFdBQVcsRUFBRSxJQUFJO0lBQ2pCLGlCQUFpQixFQUFFLE1BQU07SUFDekIsMkJBQTJCLEVBQUUsTUFBTTtDQUNwQyxDQUFDLENBQUM7QUFFSCxNQUFNLENBQUMsTUFBTSxrQ0FBa0MsR0FBRyxHQUFHLEdBQUcsSUFBSSxDQUFDO0FBQzdELE1BQU0sQ0FBQyxNQUFNLHNDQUFzQyxHQUFHLEVBQUUsQ0FBQztBQUN6RCxNQUFNLENBQUMsTUFBTSxxQ0FBcUMsR0FBRyxHQUFHLENBQUM7QUFDekQsTUFBTSxDQUFDLE1BQU0sd0NBQXdDLEdBQUcsSUFBSSxDQUFDO0FBQzdELE1BQU0sQ0FBQyxNQUFNLG9DQUFvQyxHQUFHLEdBQUcsQ0FBQyJ9
|
package/dist_ts/utils.json.d.ts
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
|
-
import type { IFlexJsonLimits, IFlexPermissionSnapshot, IFlexProjectionSnapshotV1, IFlexProjectionSnapshotV2, IFlexScopeSnapshot, TFlexAgentModelMessage, TJsonValue } from './interfaces.js';
|
|
1
|
+
import type { IFlexJsonLimits, IFlexPermissionSnapshot, IFlexProjectionSnapshotV1, IFlexProjectionSnapshotV2, IFlexProjectionSnapshotV3, IFlexScopeSnapshot, TFlexAgentModelMessage, TJsonValue } from './interfaces.js';
|
|
2
2
|
export declare function resolveJsonLimits(limits?: IFlexJsonLimits): Required<IFlexJsonLimits>;
|
|
3
3
|
export declare function normalizeJsonValue(value: unknown, limits?: IFlexJsonLimits): TJsonValue;
|
|
4
4
|
export declare function assertJsonSerializable(value: unknown, path?: string): void;
|
|
5
5
|
export declare function assertFlexScopeSnapshot(value: unknown): asserts value is IFlexScopeSnapshot;
|
|
6
6
|
export declare function assertFlexProjectionSnapshotV1(value: unknown): asserts value is IFlexProjectionSnapshotV1;
|
|
7
7
|
export declare function assertFlexProjectionSnapshotV2(value: unknown): asserts value is IFlexProjectionSnapshotV2;
|
|
8
|
-
export declare function
|
|
8
|
+
export declare function assertFlexProjectionSnapshotV3(value: unknown): asserts value is IFlexProjectionSnapshotV3;
|
|
9
|
+
export declare function assertFlexProjectionSnapshot(value: unknown): asserts value is IFlexProjectionSnapshotV1 | IFlexProjectionSnapshotV2 | IFlexProjectionSnapshotV3;
|
|
9
10
|
export declare function assertFlexPermissionSnapshot(value: unknown): asserts value is IFlexPermissionSnapshot;
|
|
10
11
|
export declare function cloneSerializable<T>(value: T): T;
|
|
11
12
|
export declare function deepFreeze<T>(value: T): T;
|