@dharma-ai-labs/agent-fabric 0.2.112 → 0.2.113

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/index.js CHANGED
@@ -18,6 +18,7 @@ import { executeTask, FileActionExecutionJournal, FileTaskReceiptStore, provider
18
18
  import { CLI_USAGE } from './usage.js';
19
19
  import { superviseRelay } from './relaySupervisor.js';
20
20
  import { disableRelayAutostart, enableRelayAutostart, relayAutostartStatus, startRelayAutostart } from './relayAutostart.js';
21
+ import { assertStudyExactPoll, studyTaskIdFromFlags } from './studyExactTaskSelector.js';
21
22
  import { initializeRepositoryKnowledge, readRepositoryKnowledgeSource } from './repositoryKnowledge.js';
22
23
  import { inventoryRepositoryPackage, readRepositoryPackageSnapshot, readRepositorySourceBaselineSnapshot, writeRepositoryPackageSnapshot } from './repositoryPackage.js';
23
24
  import { validateRepositorySourceAuthorization } from './repositorySourceAuthorization.js';
@@ -52,7 +53,7 @@ import { openCodexAppServerTransport } from '@dharma-ai-labs/agent-fabric-provid
52
53
  import { createNamedSessionTrust, isNamedSessionOwnerReceipt, renewNamedSessionLifetime } from './namedSessionTrust.js';
53
54
  import { startNamedCodexThread } from './namedCodexThread.js';
54
55
  export { openCooperativeInboxSession } from './cooperativeInboxSession.js';
55
- const VERSION = '0.2.112';
56
+ const VERSION = '0.2.113';
56
57
  const USAGE = CLI_USAGE;
57
58
  const execFileAsync = promisify(execFile);
58
59
  const LOCAL_PROVIDER_IDS = ['codex', 'claude', 'agy', 'hermes'];
@@ -4507,8 +4508,10 @@ async function finalizeRecoveredSignedTaskTrajectories(fabric, vaultPolicy, only
4507
4508
  }
4508
4509
  return finalized;
4509
4510
  }
4510
- async function executeOneTask(fabric, leaseSeconds) {
4511
- const polled = await fabric.pollTask(leaseSeconds);
4511
+ async function executeOneTask(fabric, leaseSeconds, exactStudyTask) {
4512
+ const polled = await fabric.pollTask(leaseSeconds, exactStudyTask?.taskId);
4513
+ if (exactStudyTask)
4514
+ assertStudyExactPoll(polled, exactStudyTask.taskId, exactStudyTask.workspaceId);
4512
4515
  const taskRow = polled.task;
4513
4516
  if (!taskRow?.envelope)
4514
4517
  return { ok: true, task: null };
@@ -4645,10 +4648,11 @@ async function runOneTask(flags) {
4645
4648
  && (!requestedWorkspaceId || item.workspaceId === requestedWorkspaceId)));
4646
4649
  if (!selectedWorkspace)
4647
4650
  throw new Error('Task policy must be the canonical policy of one registered workspace.');
4651
+ const studyTaskId = studyTaskIdFromFlags(flags, selectedWorkspace.workspaceId);
4648
4652
  const policy = await loadVerifiedWorkspacePolicy(policyPath, selectedWorkspace.workspaceId);
4649
4653
  const fabric = await client();
4650
- const recoveredTaskTrajectories = await finalizeRecoveredSignedTaskTrajectories(fabric, policy);
4651
- const result = await executeOneTask(fabric, Number(flags.get('lease-seconds') || 120));
4654
+ const recoveredTaskTrajectories = studyTaskId ? [] : await finalizeRecoveredSignedTaskTrajectories(fabric, policy);
4655
+ const result = await executeOneTask(fabric, Number(flags.get('lease-seconds') || 120), studyTaskId ? { taskId: studyTaskId, workspaceId: selectedWorkspace.workspaceId } : undefined);
4652
4656
  return recoveredTaskTrajectories.length ? { ...result, recoveredTaskTrajectories } : result;
4653
4657
  }
4654
4658
  export function nativeSkillDirectory(provider, env = process.env, home = homedir()) {