@modelprofile.com/flexharness 10.11.0 → 10.12.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.d.ts +14 -2
- package/dist_ts/classes.flexharness.js +340 -57
- package/dist_ts/errors.d.ts +5 -0
- package/dist_ts/errors.js +10 -1
- package/dist_ts/interfaces.d.ts +29 -0
- package/dist_ts/interfaces.js +1 -1
- package/dist_ts/plugins.d.ts +3 -3
- package/dist_ts/plugins.js +3 -3
- package/dist_ts/utils.json.js +37 -2
- package/dist_ts/utils.sessionmetrics.d.ts +17 -0
- package/dist_ts/utils.sessionmetrics.js +72 -0
- package/package.json +5 -5
- package/readme.md +58 -8
- package/ts/00_commitinfo_data.ts +1 -1
- package/ts/classes.flexharness.ts +378 -53
- package/ts/errors.ts +8 -0
- package/ts/interfaces.ts +31 -0
- package/ts/plugins.ts +3 -2
- package/ts/readme.md +58 -8
- package/ts/utils.json.ts +33 -1
- package/ts/utils.sessionmetrics.ts +104 -0
- package/ts_chat_harness/readme.md +1 -1
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*/
|
|
4
4
|
export const commitinfo = {
|
|
5
5
|
name: '@modelprofile.com/flexharness',
|
|
6
|
-
version: '10.
|
|
6
|
+
version: '10.12.0',
|
|
7
7
|
description: 'The FlexHarness toolbox source repository and shared dependency catalog.'
|
|
8
8
|
};
|
|
9
9
|
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMDBfY29tbWl0aW5mb19kYXRhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vdHMvMDBfY29tbWl0aW5mb19kYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHO0lBQ3hCLElBQUksRUFBRSwrQkFBK0I7SUFDckMsT0FBTyxFQUFFLFNBQVM7SUFDbEIsV0FBVyxFQUFFLDBFQUEwRTtDQUN4RixDQUFBIn0=
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { IFlexBackgroundExecution, IFlexBeginSessionImportOptions, IFlexCompactSessionOptions, IFlexCreateProjectTaskInput, IFlexCreateSessionOptions, IFlexDeleteSessionGenerationCohortInput, IFlexDeleteSessionGenerationCohortResult, IFlexEventArchiveMetadata, IFlexHarnessOptions, IFlexImportedRun, IFlexMessage, IFlexMessagePage, IFlexMessagePageOptions, IFlexPermissionRequest, IFlexProjectGoalResult, IFlexSteerAdmission, IFlexSteerInput, IFlexProjectScratchpadResult, IFlexProjectStateResult, IFlexProjectTaskResult, IFlexProjectTasksResult, IFlexPromptAdmission, IFlexPromptQueueAdmission, IFlexPromptQueueEntry, IFlexPromptOptions, IFlexPromptResult, IFlexRedoSessionResult, IFlexScheduledPromptAdmission, IFlexSchedulePromptOptions, IFlexSession, IFlexSessionView, IFlexSessionImportHandle, IFlexSessionImportProgress, IFlexSessionReversionInfo, IFlexSlashCommandDescriptor, IFlexSlashCommandExecutionOptions, IFlexUncertainToolExecution, IFlexUndoSessionResult, IFlexUpdateSessionOptions, IFlexUpdateProjectTaskInput, IJsonObject, TFlexBeginSessionImportResult, TFlexHarnessEventListener, TFlexPermissionDecision, TFlexPrompt, TFlexSlashCommandExecutionResult, TFlexToolExecutionReconciliation } from './interfaces.js';
|
|
1
|
+
import type { IFlexBackgroundExecution, IFlexBeginSessionImportOptions, IFlexCompactSessionOptions, IFlexCreateProjectTaskInput, IFlexCreateSessionOptions, IFlexDeleteSessionGenerationCohortInput, IFlexDeleteSessionGenerationCohortResult, IFlexEventArchiveMetadata, IFlexHarnessOptions, IFlexImportedRun, IFlexMessage, IFlexMessagePage, IFlexMessagePageOptions, IFlexPermissionRequest, IFlexProjectGoalResult, IFlexSteerAdmission, IFlexSteerInput, IFlexProjectScratchpadResult, IFlexProjectStateResult, IFlexProjectTaskResult, IFlexProjectTasksResult, IFlexPromptAdmission, IFlexPromptQueueAdmission, IFlexPromptQueueEntry, IFlexPromptOptions, IFlexPromptResult, IFlexRedoSessionResult, IFlexScheduledPromptAdmission, IFlexSchedulePromptOptions, IFlexSession, IFlexSessionView, IFlexSessionMetrics, IFlexSessionImportHandle, IFlexSessionImportProgress, IFlexSessionReversionInfo, IFlexSlashCommandDescriptor, IFlexSlashCommandExecutionOptions, IFlexUncertainToolExecution, IFlexUndoSessionResult, IFlexUpdateSessionOptions, IFlexUpdateProjectTaskInput, IJsonObject, TFlexBeginSessionImportResult, TFlexHarnessEventListener, TFlexPermissionDecision, TFlexPrompt, TFlexSlashCommandExecutionResult, TFlexToolExecutionReconciliation } from './interfaces.js';
|
|
2
2
|
export declare function createFlexResourceToolNamespace(resourceId: string, attachmentRevision: number): string;
|
|
3
3
|
export declare function createFlexResourceToolName(namespace: string, toolName: string): string;
|
|
4
4
|
export declare class FlexHarness<TScope = unknown> {
|
|
@@ -73,6 +73,8 @@ export declare class FlexHarness<TScope = unknown> {
|
|
|
73
73
|
/** Discards a staged import. Nothing of it was persisted; an unknown or finished handle is ignored. */
|
|
74
74
|
abortSessionImport(handle: IFlexSessionImportHandle): Promise<void>;
|
|
75
75
|
getSession(scopeId: string, sessionId: string): Promise<IFlexSession>;
|
|
76
|
+
/** Bounded projection-state read: no message, event, archive or child-history scan. */
|
|
77
|
+
getSessionMetrics(scopeId: string, sessionId: string): Promise<IFlexSessionMetrics>;
|
|
76
78
|
getSessionReversionInfo(scopeId: string, sessionId: string): Promise<IFlexSessionReversionInfo>;
|
|
77
79
|
updateSession(scopeId: string, sessionId: string, options: IFlexUpdateSessionOptions): Promise<IFlexSession>;
|
|
78
80
|
getProjectState(scopeId: string, sessionId: string): Promise<IFlexProjectStateResult>;
|
|
@@ -149,6 +151,13 @@ export declare class FlexHarness<TScope = unknown> {
|
|
|
149
151
|
* next turn.
|
|
150
152
|
*/
|
|
151
153
|
steerPrompt(scopeId: string, sessionId: string, queueId: string, steer: IFlexSteerInput): Promise<IFlexSteerAdmission>;
|
|
154
|
+
/** Sends follow-up input only to an exact running direct child owned by this parent run. */
|
|
155
|
+
sendSubagentInput(scopeId: string, parentSessionId: string, parentRunId: string, taskId: string, steer: IFlexSteerInput): Promise<IFlexSteerAdmission>;
|
|
156
|
+
/** The shared synchronous admission point; neither entrypoint starts or resumes a run. */
|
|
157
|
+
private admitRunSteer;
|
|
158
|
+
private sendSubagentInputInRun;
|
|
159
|
+
/** Fences live ownership by exact runtime pointers and admission seeds all the way to root. */
|
|
160
|
+
private assertLiveSubagentOwnership;
|
|
152
161
|
abort(scopeId: string, sessionId: string): Promise<boolean>;
|
|
153
162
|
listPendingPermissions(scopeId: string, sessionId?: string): Promise<IFlexPermissionRequest[]>;
|
|
154
163
|
respondToPermission(scopeId: string, sessionId: string, permissionId: string, decision: TFlexPermissionDecision): Promise<void>;
|
|
@@ -202,7 +211,8 @@ export declare class FlexHarness<TScope = unknown> {
|
|
|
202
211
|
/**
|
|
203
212
|
* Holds the end of a run's generation until one more of its background subagents settles. The
|
|
204
213
|
* subagent commits its result to the generation before it settles, so the model takes the result
|
|
205
|
-
* in with another step instead of the run ending without it.
|
|
214
|
+
* in with another step instead of the run ending without it. The engine bounds the scoped
|
|
215
|
+
* wait from its observed dispatch and commits timer check-ins. Returns at once when none runs.
|
|
206
216
|
*/
|
|
207
217
|
private awaitNextBackgroundSubagent;
|
|
208
218
|
private executeRun;
|
|
@@ -247,6 +257,7 @@ export declare class FlexHarness<TScope = unknown> {
|
|
|
247
257
|
private createProjectTaskId;
|
|
248
258
|
private createSubagentTool;
|
|
249
259
|
private executeSubagentTask;
|
|
260
|
+
private createSubagentSendTool;
|
|
250
261
|
private createSubagentResultTool;
|
|
251
262
|
private createDelegatedRunAdmissionSeed;
|
|
252
263
|
private acquireSubagentSession;
|
|
@@ -332,6 +343,7 @@ export declare class FlexHarness<TScope = unknown> {
|
|
|
332
343
|
* the usage of a run that exhausted its callback budget or failed in a callback must not be lost.
|
|
333
344
|
*/
|
|
334
345
|
private onModelCallUsage;
|
|
346
|
+
private settleMetricsOperation;
|
|
335
347
|
private callbackRun;
|
|
336
348
|
private reserveCallbackCapacity;
|
|
337
349
|
private failCallback;
|