@modelprofile.com/flexharness 10.10.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.
@@ -3,7 +3,7 @@
3
3
  */
4
4
  export const commitinfo = {
5
5
  name: '@modelprofile.com/flexharness',
6
- version: '10.10.0',
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. Returns at once when none runs.
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;