@dharma-ai-labs/agent-fabric 0.2.129 → 0.2.131

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.
Files changed (86) hide show
  1. package/AGENT_FABRIC_ONBOARDING.md +1 -1
  2. package/README.md +43 -0
  3. package/dist/demoEnrollment.d.ts.map +1 -1
  4. package/dist/demoEnrollment.js +3 -2
  5. package/dist/demoEnrollment.js.map +1 -1
  6. package/dist/demoPackage.d.ts.map +1 -1
  7. package/dist/demoPackage.js +29 -9
  8. package/dist/demoPackage.js.map +1 -1
  9. package/dist/demoPackage.test.js +75 -1
  10. package/dist/demoPackage.test.js.map +1 -1
  11. package/dist/demoStateRename.d.ts +7 -0
  12. package/dist/demoStateRename.d.ts.map +1 -0
  13. package/dist/demoStateRename.js +21 -0
  14. package/dist/demoStateRename.js.map +1 -0
  15. package/dist/demoStateRename.test.d.ts +2 -0
  16. package/dist/demoStateRename.test.d.ts.map +1 -0
  17. package/dist/demoStateRename.test.js +67 -0
  18. package/dist/demoStateRename.test.js.map +1 -0
  19. package/dist/index.d.ts +2 -0
  20. package/dist/index.d.ts.map +1 -1
  21. package/dist/index.js +107 -21
  22. package/dist/index.js.map +1 -1
  23. package/dist/index.test.js +5 -2
  24. package/dist/index.test.js.map +1 -1
  25. package/dist/namedSessionPackageGate.d.ts +22 -0
  26. package/dist/namedSessionPackageGate.d.ts.map +1 -0
  27. package/dist/namedSessionPackageGate.js +135 -0
  28. package/dist/namedSessionPackageGate.js.map +1 -0
  29. package/dist/namedSessionPackageGate.test.d.ts +2 -0
  30. package/dist/namedSessionPackageGate.test.d.ts.map +1 -0
  31. package/dist/namedSessionPackageGate.test.js +20 -0
  32. package/dist/namedSessionPackageGate.test.js.map +1 -0
  33. package/dist/namedSessionRepositoryState.d.ts +65 -0
  34. package/dist/namedSessionRepositoryState.d.ts.map +1 -0
  35. package/dist/namedSessionRepositoryState.js +54 -0
  36. package/dist/namedSessionRepositoryState.js.map +1 -0
  37. package/dist/namedSessionRepositoryState.test.d.ts +2 -0
  38. package/dist/namedSessionRepositoryState.test.d.ts.map +1 -0
  39. package/dist/namedSessionRepositoryState.test.js +76 -0
  40. package/dist/namedSessionRepositoryState.test.js.map +1 -0
  41. package/dist/namedSessionService.d.ts +5 -1
  42. package/dist/namedSessionService.d.ts.map +1 -1
  43. package/dist/namedSessionService.js +26 -2
  44. package/dist/namedSessionService.js.map +1 -1
  45. package/dist/namedSessionService.test.js +47 -3
  46. package/dist/namedSessionService.test.js.map +1 -1
  47. package/dist/namedSessionTaskExport.d.ts +22 -0
  48. package/dist/namedSessionTaskExport.d.ts.map +1 -0
  49. package/dist/namedSessionTaskExport.js +158 -0
  50. package/dist/namedSessionTaskExport.js.map +1 -0
  51. package/dist/namedSessionTaskExport.test.d.ts +2 -0
  52. package/dist/namedSessionTaskExport.test.d.ts.map +1 -0
  53. package/dist/namedSessionTaskExport.test.js +385 -0
  54. package/dist/namedSessionTaskExport.test.js.map +1 -0
  55. package/dist/namedSessionTaskExportSync.d.ts +57 -0
  56. package/dist/namedSessionTaskExportSync.d.ts.map +1 -0
  57. package/dist/namedSessionTaskExportSync.js +193 -0
  58. package/dist/namedSessionTaskExportSync.js.map +1 -0
  59. package/dist/pidLock.test.js +33 -1
  60. package/dist/pidLock.test.js.map +1 -1
  61. package/dist/relayAutostart.d.ts +5 -3
  62. package/dist/relayAutostart.d.ts.map +1 -1
  63. package/dist/relayAutostart.js +151 -24
  64. package/dist/relayAutostart.js.map +1 -1
  65. package/dist/relayAutostart.test.js +138 -2
  66. package/dist/relayAutostart.test.js.map +1 -1
  67. package/dist/relaySupervisor.test.js +9 -4
  68. package/dist/relaySupervisor.test.js.map +1 -1
  69. package/dist/repositoryPackage.d.ts.map +1 -1
  70. package/dist/repositoryPackage.js +18 -2
  71. package/dist/repositoryPackage.js.map +1 -1
  72. package/dist/repositoryPackage.test.js +29 -0
  73. package/dist/repositoryPackage.test.js.map +1 -1
  74. package/dist/repositoryPackageDelivery.test.js +34 -1
  75. package/dist/repositoryPackageDelivery.test.js.map +1 -1
  76. package/dist/repositoryRelaySupervisor.d.ts +1 -1
  77. package/dist/repositoryRelaySupervisor.d.ts.map +1 -1
  78. package/dist/repositoryRelaySupervisor.js +3 -2
  79. package/dist/repositoryRelaySupervisor.js.map +1 -1
  80. package/dist/repositoryRelaySupervisor.test.js +17 -0
  81. package/dist/repositoryRelaySupervisor.test.js.map +1 -1
  82. package/dist/schemas/codex-task-export-upload-receipt.schema.json +24 -0
  83. package/dist/schemas/codex-task-observation.schema.json +99 -0
  84. package/dist/schemas/codex-task-replay-export.schema.json +375 -0
  85. package/dist/schemas/named-session-task-export-outbox.schema.json +29 -0
  86. package/package.json +7 -7
@@ -7,6 +7,7 @@ import { join } from 'node:path';
7
7
  import test from 'node:test';
8
8
  import { fileURLToPath, pathToFileURL } from 'node:url';
9
9
  import { promisify } from 'node:util';
10
+ import { withRepositoryRelayStage } from './repositoryRelaySupervisor.js';
10
11
  import { acceptedTrajectoryHead, activateAgyPlugin, attestAgySkillActivation, attestHermesSkillBundleActivation, actionDecisionCapabilityFreshUntil, canonicalFilesystemPath, controlAgentDecisionUrl, installAvailableNativeAgentFabricBootstraps, assertCapsuleAuthorizedByCurrentPolicy, assertRecoveredTaskWorkspacePolicy, assertTaskWorkspacePolicy, assertTaskSkillPin, installNativeAgentFabricBootstrap, installClaudeReadOnlyProjectPermissions, installRepositoryAgentFabricSkill, initialBootstrapEvidenceDisposition, isDirectExecution, isTransientBootstrapError, loadAgentFabricOnboardingContract, loadOrCreateInstallationId, materializeWorkspacePolicy, applyServerEvidencePolicy, materializeInlineSkillFiles, validateSkillBundleSources, nativeSkillDirectory, nativeSkillDirectoryForWorkspace, nativeSkillRootMatchingAuthorization, normalizeGitRemoteIdentity, postTaskOutcome, parseCliOptions, parseSelectedProviderIds, pathExistsOrThrow, portalUrl, providerHintFromEnvironment, providerHintFromProcessArgv, probeRelayConnection, preflightBootstrapWorkspaceIdentity, publishedPackageCanDeferSecretEvidence, rawLocalRetentionDays, syncPendingRetentionCapsules, requireCompletedBootstrapEvidence, retryBootstrapOnboarding, synchronizeBootstrapEvidence, deferUnavailableRelayRetention, recoverLegacySkillBundleIdAfterAuthorizationFailure, installedBundleIdForSkillPollAfterAuthorizationFailure, recoveredTaskPolicyWasSuperseded, acquireRelayProcessLease, acquireRelaySupervisorLease, relayProcessState, relaySupervisorProcessState, releaseDailyContentUpload, reserveDailyContentUpload, run, runAssistantCommand, sourceRepositoryFingerprint, stableRepositoryLauncherContents, summarizeBootstrapOrganizationApi, ensureAgyReadOnlyAttestationPermission, attestAgySkillBundleActivation, responseTextFromEvent, taskResponsePreview, taskReceiptSession, taskSkillPinFailureCode, verifyAgentFabricSkillInstallation, waitForRelayReadiness, withWorkspacePolicyRefreshLock, withRelayStartupMutation, withWorkspaceSkillActivationLock, } from './index.js';
11
12
  import { canonicalize, signCanonicalObject } from '@dharma-ai-labs/agent-fabric-contracts';
12
13
  import { buildTrajectoryCapsule, trajectoryCapsuleHash } from '@dharma-ai-labs/agent-fabric-evidence-reduction';
@@ -204,9 +205,9 @@ test('eligible history without disclosure is reported as denied, not synchronize
204
205
  assert.throws(() => initialBootstrapEvidenceDisposition(Number.NaN, true), /invalid trajectory count/);
205
206
  });
206
207
  test('relay defers unavailable retention without stopping signed task polling', async () => {
207
- const result = await deferUnavailableRelayRetention(async () => {
208
+ const result = await withRepositoryRelayStage('pending_capsule_sync', () => deferUnavailableRelayRetention(async () => {
208
209
  throw new Error('agent_fabric_retention_not_ready: Content synchronization is unavailable until retention is enabled.');
209
- });
210
+ }));
210
211
  assert.deepEqual(result, { state: 'deferred', reason: 'retention_not_ready' });
211
212
  });
212
213
  test('relay does not suppress unrelated retention synchronization failures', async () => {
@@ -2103,6 +2104,7 @@ test('native bootstrap installation makes the repository skill verifiable by Cod
2103
2104
  assert.match(await readFile(installed.skillPath, 'utf8'), /dharma skills verify --provider <provider> --workspace <bound-workspace-path>/);
2104
2105
  const verified = await verifyAgentFabricSkillInstallation({ provider: 'codex', workspace, home });
2105
2106
  assert.equal(verified.ready, true);
2107
+ assert.equal(verified.signedMarkerBundleId, null);
2106
2108
  assert.equal(verified.repositoryInstalled, true);
2107
2109
  assert.equal(verified.nativeInstalled, true);
2108
2110
  });
@@ -2132,6 +2134,7 @@ test('signed native ownership remains installed after bootstrap replacement', as
2132
2134
  assert.equal(verified.nativeInstalled, true);
2133
2135
  assert.equal(verified.nativeManaged, true);
2134
2136
  assert.equal(verified.nativeDiscovered, true);
2137
+ assert.equal(verified.signedMarkerBundleId, '11111111-1111-4111-8111-111111111111');
2135
2138
  assert.equal(verified.signedLifecycleReady, false);
2136
2139
  });
2137
2140
  test('signed native ownership rejects a foreign workspace marker', async () => {