@dharma-ai-labs/agent-fabric 0.2.186 → 0.2.187

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 (37) hide show
  1. package/dist/index.d.ts +74 -0
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +296 -12
  4. package/dist/index.js.map +1 -1
  5. package/dist/repositoryCandidateSync.d.ts +109 -2
  6. package/dist/repositoryCandidateSync.d.ts.map +1 -1
  7. package/dist/repositoryCandidateSync.js +327 -22
  8. package/dist/repositoryCandidateSync.js.map +1 -1
  9. package/dist/repositoryCandidateSync.test.js +912 -6
  10. package/dist/repositoryCandidateSync.test.js.map +1 -1
  11. package/dist/repositoryKnowledgeRetention.test.js +319 -3
  12. package/dist/repositoryKnowledgeRetention.test.js.map +1 -1
  13. package/dist/repositorySourceInventoryClient.d.ts +1 -0
  14. package/dist/repositorySourceInventoryClient.d.ts.map +1 -1
  15. package/dist/repositorySourceInventoryClient.js +4 -1
  16. package/dist/repositorySourceInventoryClient.js.map +1 -1
  17. package/dist/repositorySourceRestoration.d.ts +47 -0
  18. package/dist/repositorySourceRestoration.d.ts.map +1 -0
  19. package/dist/repositorySourceRestoration.js +140 -0
  20. package/dist/repositorySourceRestoration.js.map +1 -0
  21. package/dist/repositorySourceRestorationCommand.test.d.ts +2 -0
  22. package/dist/repositorySourceRestorationCommand.test.d.ts.map +1 -0
  23. package/dist/repositorySourceRestorationCommand.test.js +754 -0
  24. package/dist/repositorySourceRestorationCommand.test.js.map +1 -0
  25. package/dist/repositorySourceSync.d.ts +1 -0
  26. package/dist/repositorySourceSync.d.ts.map +1 -1
  27. package/dist/repositorySourceSync.js +10 -4
  28. package/dist/repositorySourceSync.js.map +1 -1
  29. package/dist/repositorySourceSync.test.js +38 -4
  30. package/dist/repositorySourceSync.test.js.map +1 -1
  31. package/dist/schemas/repository-candidate-fence-v1.schema.json +55 -0
  32. package/dist/schemas/repository-candidate-upload-v1.schema.json +60 -0
  33. package/dist/schemas/repository-knowledge-restoration-v1.schema.json +16 -0
  34. package/dist/usage.d.ts.map +1 -1
  35. package/dist/usage.js +3 -1
  36. package/dist/usage.js.map +1 -1
  37. package/package.json +1 -1
package/dist/index.d.ts CHANGED
@@ -7,6 +7,7 @@ import { AgentFabricClient, type DeviceConfig, type SecureSecretStore } from '@d
7
7
  import { type SkillBundle } from '@dharma-ai-labs/agent-fabric-skill-manager';
8
8
  import { type TaskEnvelope, type TaskReceipt } from '@dharma-ai-labs/agent-fabric-task-runner';
9
9
  import { type RepositoryInstallerInput } from './repositoryInstallerFiles.js';
10
+ import { type RepositoryCandidateReceipt } from './repositoryCandidateSync.js';
10
11
  import { type CodexSetupFailureDiagnostic, type CodexSetupFailureObserver } from './codexSetupDiagnostic.js';
11
12
  import { type BootstrapHostScope, type CodexBootstrapHostInput } from './bootstrapHostScope.js';
12
13
  import { startCodexSetupNativeHost } from './codexSetupNativeHost.js';
@@ -300,6 +301,79 @@ export declare function installRepositoryAgentFabricSkill(input: RepositoryInsta
300
301
  disposition: "signed_release_reused";
301
302
  } | null;
302
303
  }>;
304
+ export declare function repositoryRestoreCommand(flags: Map<string, string | boolean>): Promise<{
305
+ ok: boolean;
306
+ stage: string;
307
+ fence: {
308
+ fenceId: string;
309
+ operationId: string;
310
+ workspaceId: string;
311
+ repositoryBindingId: string;
312
+ repositoryAgentId: string;
313
+ sourceSnapshotHash: string;
314
+ sourceManifestHash: string;
315
+ policyGenerationId: string;
316
+ requestPolicyGenerationId?: string;
317
+ state: "fenced";
318
+ createdAt: string;
319
+ } | null;
320
+ candidate: RepositoryCandidateReceipt | null;
321
+ localMutation: boolean;
322
+ serverSourceMutation: boolean;
323
+ serverOperationFenced: boolean;
324
+ activated: boolean;
325
+ nextAction: string;
326
+ planHash?: undefined;
327
+ priorReleaseId?: undefined;
328
+ dryRun?: undefined;
329
+ priorGeneration?: undefined;
330
+ headCandidateId?: undefined;
331
+ operationId?: undefined;
332
+ expectedLatestSourceFingerprint?: undefined;
333
+ snapshotHash?: undefined;
334
+ protocolSessionCreated?: undefined;
335
+ published?: undefined;
336
+ } | {
337
+ ok: boolean;
338
+ stage: string;
339
+ planHash: string;
340
+ candidate: RepositoryCandidateReceipt;
341
+ priorReleaseId: string;
342
+ localMutation: boolean;
343
+ serverSourceMutation: boolean;
344
+ activated: boolean;
345
+ nextAction: string;
346
+ fence?: undefined;
347
+ serverOperationFenced?: undefined;
348
+ dryRun?: undefined;
349
+ priorGeneration?: undefined;
350
+ headCandidateId?: undefined;
351
+ operationId?: undefined;
352
+ expectedLatestSourceFingerprint?: undefined;
353
+ snapshotHash?: undefined;
354
+ protocolSessionCreated?: undefined;
355
+ published?: undefined;
356
+ } | {
357
+ ok: boolean;
358
+ stage: string;
359
+ dryRun: boolean;
360
+ planHash: string;
361
+ priorReleaseId: string;
362
+ priorGeneration: number;
363
+ headCandidateId: string;
364
+ operationId: string;
365
+ expectedLatestSourceFingerprint: string;
366
+ snapshotHash: string;
367
+ localMutation: boolean;
368
+ serverSourceMutation: boolean;
369
+ protocolSessionCreated: boolean;
370
+ activated: boolean;
371
+ published: boolean;
372
+ fence?: undefined;
373
+ candidate?: undefined;
374
+ serverOperationFenced?: undefined;
375
+ nextAction?: undefined;
376
+ }>;
303
377
  export declare function repositorySourceResolutionCommand(flags: Map<string, string | boolean>): Promise<{
304
378
  ok: boolean;
305
379
  stage: string;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAUA,OAAO,EAGL,KAAK,kBAAkB,EAAE,KAAK,UAAU,EAAE,KAAK,0BAA0B,EAC1E,MAAM,wCAAwC,CAAC;AAChD,OAAO,EAAwI,KAAK,iBAAiB,EAAE,MAAM,iDAAiD,CAAC;AAC/N,OAAO,EAAsE,KAAK,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AAClJ,OAAO,EAAkI,KAAK,eAAe,EAAE,MAAM,gDAAgD,CAAC;AACtN,OAAO,EACL,iBAAiB,EAIyC,KAAK,YAAY,EAAE,KAAK,iBAAiB,EACpG,MAAM,2CAA2C,CAAC;AAOnD,OAAO,EAA8O,KAAK,WAAW,EAAE,MAAM,4CAA4C,CAAC;AAC1T,OAAO,EAKL,KAAK,YAAY,EACjB,KAAK,WAAW,EACjB,MAAM,0CAA0C,CAAC;AAoBlD,OAAO,EACL,KAAK,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAoBvE,OAAO,EAEL,KAAK,0BAA0B,EAAE,MAAM,8BAA8B,CAAC;AAKxE,OAAO,EAA0B,KAAK,2BAA2B,EAAE,KAAK,yBAAyB,EAAC,MAAM,2BAA2B,CAAC;AAuCpI,OAAO,EAAsM,KAAK,kBAAkB,EAAE,KAAK,uBAAuB,EAAC,MAAM,yBAAyB,CAAC;AAEnS,OAAO,EAAC,yBAAyB,EAAC,MAAM,2BAA2B,CAAC;AAEpE,OAAO,EAAC,yBAAyB,EAAC,MAAM,2BAA2B,CAAC;AACpE,OAAO,EAAC,0BAA0B,EAAC,MAAM,6BAA6B,CAAC;AAEvE,OAAO,EAAC,8BAA8B,EAAC,MAAM,0BAA0B,CAAC;AACxE,OAAO,EAAiC,KAAK,wBAAwB,EAAE,KAAK,gBAAgB,EAAC,MAAM,0BAA0B,CAAC;AAE9H,OAAO,KAAK,EAA4C,gBAAgB,EAAC,MAAM,0CAA0C,CAAC;AAG1H,OAAO,EAAE,2BAA2B,EAAE,KAAK,yBAAyB,EAAE,MAAM,8BAA8B,CAAC;AAC3G,YAAY,EAAC,uBAAuB,EAAC,MAAM,yBAAyB,CAAC;AAMrE,KAAK,MAAM,GAAG,OAAO,CAAC;AAItB,wBAAsB,iCAAiC;;;GAOtD;AAMD,UAAU,eAAe;IACvB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,yBAAyB,CAAC,EAAE,eAAe,GAAG,WAAW,CAAC;IAC1D,iBAAiB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,iBAAiB,CAAC,EAAE;QAClB,KAAK,EAAE,QAAQ,GAAG,UAAU,GAAG,YAAY,GAAG,WAAW,GAAG,SAAS,CAAC;QACtE,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;QAC3B,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;QAC3B,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;QAC5B,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;QAClC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;QACzB,UAAU,EAAE,MAAM,CAAC;QACnB,iBAAiB,EAAE,oBAAoB,GAAG,mBAAmB,GAAG,IAAI,CAAC;QACrE,wBAAwB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QACzC,yBAAyB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAC1C,0BAA0B,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAC3C,wBAAwB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QACzC,uBAAuB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;KACzC,CAAC;IACF,cAAc,CAAC,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAClE,kBAAkB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACnC,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,MAAM,EAAE,QAAQ,CAAC;IACjB,UAAU,CAAC,EAAE,QAAQ,GAAG,gBAAgB,CAAC;CAC1C;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG;IAC/C,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC;IACrC,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC;CAChD,CAuBA;AAQD,wBAAgB,SAAS,CAAC,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,EAAE,QAAQ,SAA6B,GAAG,MAAM,CAE7G;AAMD,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAQrE;AAyCD,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAO1F;AAWD,wBAAsB,0BAA0B,CAAC,IAAI,SAA6B,GAAG,OAAO,CAAC,MAAM,CAAC,CA4CnG;AAqDD,wBAAsB,iBAAiB,CACrC,IAAI,EAAE,MAAM,EACZ,KAAK,GAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAU,oBASnD;AAED,wBAAsB,uBAAuB,CAAC,IAAI,EAAE,MAAM,mBAEzD;AA2BD,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,IAAI,CAAC,kBAAkB,EAAE,WAAW,CAAC,GAAG,MAAM,CAM3F;AAED,wBAAsB,4BAA4B,CAChD,KAAK,EAAE;IACL,uBAAuB,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;QAAE,YAAY,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,CAAC,CAAA;KAAE,CAAC,CAAC,CAAC;IACpI,iBAAiB,CAAC,YAAY,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAChF,yBAAyB,CAAC,YAAY,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC1G,EACD,MAAM,EAAE,iBAAiB,EACzB,MAAM,EAAE,kBAAkB,EAC1B,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,MAAM,CAAC,CAsFjB;AA2BD,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,QAKtE;AAWD,wBAAgB,sCAAsC,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,kBAAkB,QAqLlH;AAoOD,wBAAsB,yBAAyB,CAC7C,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,kBAAkB,EAAE,KAAK,CAAC,EAAE,iBAAiB,iBAOxF;AAED,wBAAsB,yBAAyB,CAC7C,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,kBAAkB,EAAE,MAAM,CAAC,EAAE,iBAAiB,iBAmBzF;AAoBD,wBAAsB,iBAAiB,CAAC,IAAI,SAAe,GAAG,OAAO,CAAC,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC,CAEvG;AAED,wBAAsB,2BAA2B,CAAC,IAAI,SAAe,GAAG,OAAO,CAAC,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC,CAEjH;AAED,wBAAsB,wBAAwB,CAAC,IAAI,SAAe,GAAG,OAAO,CAAC,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,CAoBhG;AAED,wBAAsB,2BAA2B,CAAC,IAAI,SAAe,GAAG,OAAO,CAAC,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,CAoBnG;AAED,wBAAsB,0BAA0B,CAAC,KAAK,EAAE;IACtD,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,yBAAyB,CAAC,EAAE,OAAO,CAAC;IACpC,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,WAAW,CAAC,EAAE,iBAAiB,CAAC;CACjC;;;;GAiGA;AAoBD,wBAAsB,wBAAwB,CAAC,CAAC,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,SAAe,GAAG,OAAO,CAAC,CAAC,CAAC,CAS9G;AAED,wBAAsB,8BAA8B,CAAC,CAAC,EAAE,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAOpH;AAED,wBAAsB,gCAAgC,CAAC,CAAC,EACtD,WAAW,EAAE,MAAM,EACnB,QAAQ,EAAE,UAAU,EACpB,SAAS,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAC1B,OAAO,CAAC,CAAC,CAAC,CAUZ;AAuGD,wBAAgB,yBAAyB,CACvC,IAAI,EAAE,kBAAkB,EACxB,KAAK,EAAE,OAAO,EACd,sBAAsB,EAAE,MAAM,EAC9B,cAAc,EAAE,MAAM,EACtB,WAAW,EAAE,MAAM,EACnB,GAAG,OAAa,GACf,kBAAkB,CAsFpB;AAUD,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CA4BhE;AAED,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG;IAC/F,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,QAAQ,GAAG,cAAc,CAAC;CACnC,CAiBA;AAED,wBAAsB,mCAAmC,CACvD,SAAS,EAAE,MAAM,EACjB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,GAC1B,OAAO,CAAC,UAAU,CAAC,OAAO,2BAA2B,CAAC,CAAC,CAKzD;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAmBnE;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,WAAW;;;;;SAqBvD;AAED,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,YAAY,CAAC,aAAa,CAAC,EACnC,MAAM,EAAE;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,GACtD,IAAI,CAaN;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAM9D;AA4FD,KAAK,gBAAgB,GAAG,IAAI,CAAC,iBAAiB,EAAE,QAAQ,GAAG,aAAa,CAAC,CAAC;AAE1E,wBAAsB,oBAAoB,CACxC,UAAU,GAAE,MAAM,OAAO,CAAC,gBAAgB,CAIxC;;;;;;GAYH;AA0BD,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAMjE;AAED,wBAAsB,wBAAwB,CAAC,CAAC,EAC9C,SAAS,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EAC3B,OAAO,GAAE;IACP,QAAQ,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC7B,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACtC,GACL,OAAO,CAAC,CAAC,CAAC,CAYZ;AAED,KAAK,gCAAgC,GAAG;IACtC,KAAK,EAAE,cAAc,GAAG,UAAU,GAAG,mBAAmB,CAAC;IACzD,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,MAAM,CAAC,EAAE,iBAAiB,GAAG,qBAAqB,GAAG,qBAAqB,CAAC;IAC3E,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAgBF,wBAAgB,sCAAsC,CACpD,QAAQ,EAAE,gCAAgC,EAC1C,iBAAiB,EAAE,WAAW,CAAC,eAAe,CAAC,mBAAmB,CAAC,CAAC,EACpE,wBAAwB,EAAE,MAAM,GAC/B,OAAO,CAIT;AAED,wBAAgB,mCAAmC,CACjD,UAAU,EAAE,MAAM,EAClB,eAAe,EAAE,OAAO,GACvB,gCAAgC,CAQlC;AAED,wBAAsB,4BAA4B,CAChD,SAAS,EAAE,MAAM,OAAO,CAAC;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,GAC7D,OAAO,CAAC,gCAAgC,CAAC,CAgB3C;AAED,wBAAsB,8BAA8B,CAAC,CAAC,EACpD,SAAS,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAC1B,OAAO,CAAC;IAAE,KAAK,EAAE,WAAW,CAAC;IAAC,KAAK,EAAE,CAAC,CAAA;CAAE,GAAG;IAAE,KAAK,EAAE,UAAU,CAAC;IAAC,MAAM,EAAE,qBAAqB,CAAA;CAAE,CAAC,CAUlG;AAED,wBAAgB,iCAAiC,CAC/C,MAAM,EAAE,gCAAgC,EACxC,UAAU,EAAE,MAAM,GACjB,IAAI,CAQN;AAkDD,wBAAgB,gCAAgC,CAAC,OAAO,SAAU,EAChE,OAAO,CAAC,EAAE;IAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC;IAAC,aAAa,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,cAAc,CAAC,EAAE,MAAM,CAAA;CAAE;;;EAE7G;AA+ID,wBAAsB,qBAAqB,CAAC,OAAO,GAAE;IACnD,YAAY,CAAC,EAAE,MAAM,OAAO,CAAC,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC,CAAC;IAChE,KAAK,CAAC,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,OAAO,oBAAoB,CAAC,CAAC,CAAC,CAAC;IACxE,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1C,eAAe,CAAC,EAAE,MAAM,CAAC;CACrB;;;;;;;;;GA6BL;AAwVD,wBAAgB,2BAA2B,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,UAAU,GAAG,IAAI,CAMnG;AAED,wBAAgB,2BAA2B,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,GAAG,UAAU,GAAG,IAAI,CAkBlF;AAsDD,wBAAgB,8BAA8B,CAAC,KAAK,EAAE;IACpD,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC;IACrC,QAAQ,EAAE,IAAI,CAAC,YAAY,EAAE,gBAAgB,GAAG,OAAO,CAAC,GAAG,IAAI,CAAC;IAChE,cAAc,EAAE,MAAM,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;CACf,QAQA;AAED;2EAC2E;AAC3E,wBAAsB,uBAAuB,CAAC,KAAK,EAAE,uBAAuB,GAAG,OAAO,CAAC,MAAM,CAAC,CAQ7F;AAED,oFAAoF;AACpF,wBAAsB,4BAA4B,CAAC,KAAK,EAAE,kBAAkB,EAC1E,cAAc,CAAC,EAAE,yBAAyB,GAAG,OAAO,CAAC,MAAM,CAAC,CAgB7D;AAED,KAAK,oBAAoB,GAAG,IAAI,CAAC,gBAAgB,EAAE,2BAA2B,GAAG,wBAAwB,GACrG,2BAA2B,GAAG,wBAAwB,GAAG,uBAAuB,CAAC,CAAC;AAwNtF,mEAAmE;AACnE,wBAAsB,mCAAmC,CAAC,KAAK,EAAE,kBAAkB,EAAE,KAAK,EAAE,oBAAoB,EAC9G,cAAc,CAAC,EAAE,yBAAyB;qBAYjB,QAAQ,CAAC,wBAAwB,CAAC;;;;;;;;IAsB5D;AAED,yFAAyF;AACzF,wBAAsB,4BAA4B,CAAC,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,OAAO,6BAA6B,CAAC,CAAC,CAAC,CAAC,EAChH,WAAW,GAAG,2BAA2B,CAAC,GAAG;IAAC,oBAAoB,EAAE,MAAM,CAAA;CAAC;;;;;;IA6C5E;AAED,4FAA4F;AAC5F,wBAAsB,mCAAmC,CAAC,KAAK,EAAE,UAAU,CAAC,OAAO,4BAA4B,CAAC,CAAC,CAAC,CAAC,GAC/G;IAAC,UAAU,EAAE,SAAS,MAAM,EAAE,CAAA;CAAC;;;;;;IA+ClC;AAED;iFACiF;AACjF,wBAAsB,6BAA6B,CAAC,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,OAAO,yBAAyB,CAAC,CAAC,CAAC,CAAC,EAC7G,aAAa,GAAG,SAAS,GAAG,iBAAiB,CAAC;;;;;;IAwC/C;AAkiBD,wBAAgB,iCAAiC,CAAC,KAAK,EAAE;IACvD,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,OAAO,CAAC;IACtB,MAAM,EAAE,OAAO,CAAC;IAChB,WAAW,EAAE,OAAO,CAAC;IACrB,QAAQ,EAAE,OAAO,CAAC;IAClB,YAAY,EAAE,OAAO,CAAC;IACtB,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,EAAE,OAAO,CAAC;CAChB;;;;;;;;;;;EAqBA;AA6FD,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,EAAE,MAAM,EAAE,MAAM,QAI/F;AA2GD,MAAM,MAAM,qBAAqB,GAAG,IAAI,CAAC,iBAAiB,EACxD,0BAA0B,GACxB,2BAA2B,GAC3B,2BAA2B,GAC3B,wBAAwB,CAC3B,CAAC;AAEF,KAAK,4BAA4B,GAAG,MAAM,OAAO,CAAC,qBAAqB,CAAC,CAAC;AAezE,wBAAgB,uBAAuB,CAAC,KAAK,EAAE;IAC7C,YAAY,EAAE,MAAM,CAAC;IACrB,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,SAAS,GAAG,QAAQ,CAAC;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,UAUA;AAED,wBAAsB,mBAAmB,CACvC,UAAU,EAAE,MAAM,GAAG,SAAS,EAC9B,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,EACpC,UAAU,GAAE,4BAAqC,EACjD,OAAO,GAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAuB,GAC/D,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAqElC;AA6MD,KAAK,sBAAsB,GAAG;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAAC;AAE/E,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,GAAG,sBAAsB,CAiBnG;AA0eD,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,KAAK,CAAC,MAAM,GAAG,OAAO,CAAC,GAAG,UAAU,EAAE,GAAG,IAAI,CAW7F;AAED,wBAAgB,kCAAkC,CAChD,MAAM,EAAE,0BAA0B,EAClC,kBAAkB,EAAE,MAAM,EAAE,EAC5B,GAAG,OAAa,GACf,MAAM,CASR;AAQD,wBAAsB,gCAAgC,CACpD,SAAS,EAAE,kBAAkB,EAAE,EAC/B,GAAG,OAAa,GACf,OAAO,CAAC,kBAAkB,EAAE,CAAC,CAgD/B;AAgCD,wBAAsB,qBAAqB,CACzC,IAAI,EAAE,eAAe,EACrB,aAAa,GAAE,CAAC,SAAS,EAAE,eAAe,KAAK,OAAO,CAAC,OAAO,CAAgC,oBAI/F;AAED,wBAAgB,0BAA0B,CAAC,KAAK,EAAE,OAAO,GAAG,WAAW,CAAC,eAAe,CAAC,mBAAmB,CAAC,CAAC,CAyB5G;AAED,wBAAgB,0CAA0C,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,CAMpG;AAED,wBAAgB,mCAAmC,CACjD,iBAAiB,EAAE,WAAW,CAAC,eAAe,CAAC,mBAAmB,CAAC,CAAC,EACpE,kBAAkB,EAAE,MAAM,GACzB,OAAO,CAIT;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,OAAO,GAAG,eAAe,CAAC,gBAAgB,CAAC,CAUvF;AAs2BD,wBAAsB,iCAAiC,CAAC,KAAK,EAAE,wBAAwB;;;;;;;;;;;;;;;;;GAgFtF;AAiCD,wBAAsB,wBAAwB,CAAC,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyOlF;AAED,wBAAsB,iCAAiC,CAAC,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC;;;;;;;;;;;;;;GA4D3F;AAwhBD,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,YAAY,EAAE,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,GAAG,eAAe,CAmE/G;AAmGD,wBAAgB,kCAAkC,CAAC,KAAK,EAAE;IACxD,mBAAmB,EAAE,MAAM,CAAC;IAC5B,SAAS,EAAE;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,MAAM,CAAA;KAAE,CAAC;IAC3D,MAAM,EAAE,IAAI,CAAC,kBAAkB,EAAE,gBAAgB,GAAG,qBAAqB,CAAC,CAAC;CAC5E,GAAG,IAAI,CASP;AAED,wBAAgB,gCAAgC,CAC9C,OAAO,EAAE,IAAI,CAAC,iBAAiB,EAAE,kBAAkB,CAAC,EACpD,aAAa,EAAE,IAAI,CAAC,kBAAkB,EAAE,UAAU,CAAC,GAClD,OAAO,CAET;AAED,wBAAgB,yBAAyB,CAAC,KAAK,EAAE;IAC/C,IAAI,EAAE,IAAI,CAAC,YAAY,EAAE,gBAAgB,GAAG,aAAa,CAAC,CAAC;IAC3D,SAAS,EAAE;QAAE,WAAW,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,MAAM,CAAA;KAAE,CAAC;IAC3D,MAAM,EAAE,IAAI,CAAC,kBAAkB,EAAE,gBAAgB,GAAG,qBAAqB,CAAC,CAAC;CAC5E,GAAG,IAAI,CAQP;AAED,wBAAsB,6BAA6B,CAAC,KAAK,EAAE;IACzD,IAAI,EAAE,IAAI,CAAC,YAAY,EAAE,QAAQ,GAAG,gBAAgB,CAAC,CAAC;IACtD,OAAO,EAAE,IAAI,CAAC,WAAW,EAAE,uBAAuB,CAAC,CAAC;IACpD,eAAe,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,eAAe,EAAE,WAAW,CAAC,WAAW,CAAC,uBAAuB,CAAC,CAAC,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;CAC/H,GAAG,OAAO,CAAC,OAAO,CAAC,CAUnB;AAED,wBAAsB,eAAe,CAAC,KAAK,EAAE;IAC3C,IAAI,EAAE,IAAI,CAAC,YAAY,EAAE,QAAQ,GAAG,gBAAgB,CAAC,CAAC;IACtD,OAAO,EAAE,IAAI,CAAC,WAAW,EAAE,QAAQ,GAAG,uBAAuB,CAAC,CAAC;IAC/D,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,eAAe,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,eAAe,EAAE,WAAW,CAAC,WAAW,CAAC,uBAAuB,CAAC,CAAC,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAC9H,SAAS,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,WAAW,CAAC,QAAQ,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;CACrH,oBAGA;AAiUD,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,UAAU,EACpB,GAAG,GAAE,MAAM,CAAC,UAAwB,EACpC,IAAI,SAAY,UAMjB;AAED,wBAAsB,gCAAgC,CAAC,KAAK,EAAE;IAC5D,QAAQ,EAAE,UAAU,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IACxB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,mBAoDA;AAED,wBAAsB,oCAAoC,CAAC,KAAK,EAAE;IAChE,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;CACrB,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAiBzB;AA0BD,wBAAsB,uCAAuC,CAAC,cAAc,EAAE,MAAM;;;;;GAoCnF;AAED,KAAK,mBAAmB,GAAG,CACzB,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,MAAM,EAAE,EACd,OAAO,EAAE;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC,UAAU,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,KAC9D,OAAO,CAAC;IAAE,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,CAAC,CAAC;AAE3C,wBAAsB,kBAAkB,CAAC,KAAK,EAAE;IAC9C,SAAS,EAAE,MAAM,CAAC;IAClB,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IACxB,OAAO,CAAC,EAAE,mBAAmB,CAAC;CAC/B;;;GASA;AAED,wBAAsB,iCAAiC,CAAC,KAAK,EAAE;IAC7D,QAAQ,EAAE,UAAU,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IACxB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,aAAa,CAAC,EAAE,mBAAmB,CAAC;CACrC;;;;;;;;;;;;GA+DA;AAED,KAAK,yBAAyB,GAAG;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,CAAC;AAC5E,KAAK,wBAAwB,GAAG,OAAO,iCAAiC,CAAC;AAEzE,wBAAsB,2CAA2C,CAAC,KAAK,EAAE;IACvE,SAAS,EAAE,yBAAyB,EAAE,CAAC;IACvC,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,wBAAwB,CAAC;CACpC;;;;;;;;;;;;;;;kBAGmC,MAAM;cAAQ,6BAA6B;iBAAW,MAAM;;GAoB/F;AAED,wBAAsB,kCAAkC,CAAC,KAAK,EAAE;IAC9D,QAAQ,EAAE,UAAU,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IACxB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,cAAc,CAAC,EAAE,CACf,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,MAAM,EAAE,EACd,OAAO,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC,UAAU,CAAA;KAAE,KACjD,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC,CAAC;IAC1C,gBAAgB,CAAC,EAAE,mBAAmB,CAAC;CACxC;;;;;;;;;;;;;;;;;;;;GAsIA;AAED,wBAAsB,iCAAiC,CAAC,KAAK,EAAE;IAC7D,MAAM,EAAE,WAAW,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IACxB,OAAO,CAAC,EAAE,mBAAmB,CAAC;CAC/B;;;;;;;;;;;;GA2DA;AAED,KAAK,iBAAiB,GAAG,CACvB,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,MAAM,EAAE,EACd,OAAO,EAAE;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC,UAAU,CAAA;CAAE,KACjD,OAAO,CAAC,OAAO,CAAC,CAAC;AAEtB,wBAAsB,iBAAiB,CAAC,KAAK,GAAE;IAC7C,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IACxB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,iBAAiB,CAAC;CACxB,iBAYL;AAKD,wBAAsB,sCAAsC,CAAC,KAAK,GAAE;IAClE,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IACxB,IAAI,CAAC,EAAE,MAAM,CAAC;CACV;;;;GA8BL;AAED,KAAK,sBAAsB,GAAG,CAC5B,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,MAAM,EAAE,EACd,OAAO,EAAE;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC,UAAU,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,KAC9D,OAAO,CAAC;IAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAAA;CAAE,CAAC,CAAC;AAe1C,wBAAsB,wBAAwB,CAAC,KAAK,EAAE;IACpD,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,GAAG,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC;IACxB,OAAO,CAAC,EAAE,sBAAsB,CAAC;CAClC;;;;;;;;;;;;GAqEA;AAED,wBAAsB,8BAA8B,CAAC,KAAK,EAAE;IAC1D,MAAM,EAAE,WAAW,CAAC;IACpB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,SAAS,EAAE,MAAM,CAAC;CACnB;;;;;;;;;;;;GAsBA;AAcD,wBAAsB,2BAA2B,CAAC,MAAM,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE,aAAa,GAAE,MAAM,IAAe,oBAmC9H;AAED,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,WAAW;;;EAiB7D;AAED,wBAAsB,mDAAmD,CAAC,KAAK,EAAE;IAC/E,oBAAoB,EAAE,MAAM,CAAC;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,kBAAkB,EAAE,OAAO,CAAC;CAC7B,GAAG,OAAO,CAAC,MAAM,CAAC,CAQlB;AAED,wBAAsB,sDAAsD,CAAC,KAAK,EAAE;IAClF,oBAAoB,EAAE,MAAM,CAAC;IAC7B,WAAW,EAAE,MAAM,CAAC;IACpB,kBAAkB,EAAE,OAAO,CAAC;CAC7B,GAAG,OAAO,CAAC,MAAM,CAAC,CAElB;AAED,wBAAsB,8BAA8B,CAClD,UAAU,EAAE,MAAM,EAClB,WAAW,EAAE,MAAM,EACnB,WAAW,CAAC,EAAE,iBAAiB;;;;;GAyBhC;AAED,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,GAAG;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,OAAO,CAAC;IAAC,iBAAiB,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,IAAI,CAaxJ;AAED,wBAAsB,kBAAkB,CAAC,KAAK,EAAE;IAC9C,WAAW,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,UAAU,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAC9D,MAAM,CAAC,EAAE,iBAAiB,CAAC;IAAC,KAAK,CAAC,EAAE,iBAAiB,CAAC;IACtD,SAAS,CAAC,EAAE,OAAO,CAAC;IAAC,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;CACjD;;;;;;;YAnB2F,MAAM;gBAAU,OAAO;4BAAsB,OAAO;;;;;;;;;;;;;;UAqK/I;AA4HD,wBAAsB,SAAS,CAAC,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,EAAE,WAAW,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,MAAM,CAAC,CAmBtH;AA+hBD,wBAAsB,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CA4XzD"}
package/dist/index.js CHANGED
@@ -41,6 +41,7 @@ import { isIsolatedDeviceSession, runInIsolatedDeviceSession } from './connectio
41
41
  import { resolveBootstrapRepositoryWorkspace } from './bootstrapRepositorySelection.js';
42
42
  import { receiveRepositoryPackageDelivery } from './repositoryPackageDelivery.js';
43
43
  import { selectInstalledRepositoryKnowledge } from './repositoryInstalledKnowledge.js';
44
+ import { collectRepositorySourceRestoration } from './repositorySourceRestoration.js';
44
45
  import { planRepositorySourceResolution, reconcileRepositorySourceSnapshot } from './repositorySourceReconciliation.js';
45
46
  import { fetchPublishedRepositorySource } from './repositorySourceInventoryClient.js';
46
47
  import { activateRepositorySourceResolution, readActiveRepositorySourceResolution, readRepositorySourceResolutionPlan, saveRepositorySourceResolutionPlan } from './repositorySourceResolutionStore.js';
@@ -48,7 +49,7 @@ import { prepareProvidersIndependently, startSkillPreparationPump } from './skil
48
49
  import { serializeSkillPreparationRecord } from './skillPreparationRecord.js';
49
50
  import { skillPreparationScopeRoot, withSkillPreparationTransaction } from './skillPreparationTransaction.js';
50
51
  import { publishSkillPreparationCache, takeSkillPreparationCache } from './skillPreparationCache.js';
51
- import { adoptRepositoryCandidate, pollRepositoryCandidate, synchronizeRepositoryCandidate } from './repositoryCandidateSync.js';
52
+ import { adoptRepositoryCandidate, checkpointRepositoryRestorationCandidate, checkpointRepositoryRestorationFence, checkpointRepositoryRestorationRegistry, fenceRepositoryRestorationUpload, readRepositoryRestorationAttempt, pollRepositoryCandidate, recoverRepositoryRestorationCandidate, synchronizeRepositoryCandidate } from './repositoryCandidateSync.js';
52
53
  import { registerRepositoryRoleMetadata, discoverRepositoryRoleMetadata } from './repositoryRoleMetadata.js';
53
54
  import { askRepositoryRoleQuestion, readRepositoryRoleReply } from './repositoryRoleQuestion.js';
54
55
  import { deriveRepositoryRole } from './repositoryRoleDerivation.js';
@@ -99,7 +100,7 @@ import { assertCodexSetupExecutionLease } from './codexSetupAdmission.js';
99
100
  import { parseLocalCodexSetupReadiness } from '@dharma-ai-labs/agent-fabric-local-vault/setup-readiness';
100
101
  import { writeBootstrapHostJson, writeBootstrapHostText } from './bootstrapHostFiles.js';
101
102
  export { openCooperativeInboxSession } from './cooperativeInboxSession.js';
102
- const VERSION = '0.2.186';
103
+ const VERSION = '0.2.187';
103
104
  const USAGE = CLI_USAGE;
104
105
  const execFileAsync = promisify(execFile);
105
106
  const LOCAL_PROVIDER_IDS = ['codex', 'claude', 'agy', 'hermes'];
@@ -1594,13 +1595,14 @@ async function saveRegistry(items) {
1594
1595
  throw new Error('workspace_registry_write_failed');
1595
1596
  }
1596
1597
  }
1597
- async function saveWorkspaceRecord(entry) {
1598
+ async function saveWorkspaceRecord(entry, guard) {
1598
1599
  const scope = currentBootstrapHostScope();
1599
1600
  const step = (operation) => scope ? scope.step(operation) : operation();
1600
1601
  let release;
1601
1602
  try {
1602
1603
  await scope?.assert();
1603
- const snapshot = scope ? structuredClone(entry) : entry;
1604
+ let snapshot = structuredClone(entry);
1605
+ const expected = guard ? structuredClone(guard.expected) : undefined;
1604
1606
  await step(async () => {
1605
1607
  release = await acquirePidLock(`${workspaceRegistryPath()}.mutation.lock`, 10_000, 'Workspace registry is busy; preserve it for recovery.');
1606
1608
  });
@@ -1612,7 +1614,16 @@ async function saveWorkspaceRecord(entry) {
1612
1614
  const items = JSON.parse(value);
1613
1615
  if (!Array.isArray(items))
1614
1616
  throw new Error('Workspace registry is invalid; preserve it for recovery.');
1617
+ if (expected && canonicalize(items.find(item => item.workspaceId === snapshot.workspaceId) ?? null) !== canonicalize(expected)) {
1618
+ throw new Error('workspace_registry_compare_and_swap_failed');
1619
+ }
1620
+ if (guard?.beforeSave)
1621
+ await step(guard.beforeSave);
1622
+ if (guard?.preparePackage)
1623
+ snapshot = { ...snapshot, repositoryPackage: await step(guard.preparePackage) };
1615
1624
  await saveRegistry([...items.filter(item => item.workspaceId !== snapshot.workspaceId), snapshot]);
1625
+ if (guard?.afterSave)
1626
+ await step(() => guard.afterSave(snapshot));
1616
1627
  }
1617
1628
  catch (error) {
1618
1629
  if (!scope)
@@ -5803,6 +5814,254 @@ async function repositoryInstallerRecoveryCommand(flags) {
5803
5814
  return { ok: true, dryRun: !recovery.applied, serverMutation: false, recovery,
5804
5815
  nextAction: 'Resume pinned onboarding; recovery is not signed skill installation or activation.' };
5805
5816
  }
5817
+ export async function repositoryRestoreCommand(flags) {
5818
+ flags = new Map(flags);
5819
+ const allowed = new Set(['workspace-id', 'dry-run', 'apply', 'plan-hash', 'fence-upload', 'json']);
5820
+ if ([...flags].some(([key, value]) => !allowed.has(key)
5821
+ || (['workspace-id', 'plan-hash'].includes(key) ? typeof value !== 'string' || !value : value !== true))
5822
+ || flags.has('apply') === flags.has('dry-run') || flags.has('apply') !== flags.has('plan-hash')
5823
+ || flags.has('fence-upload') && !flags.has('apply')) {
5824
+ throw new Error('repository_source_restoration_option_invalid');
5825
+ }
5826
+ const workspaceId = required(flags, 'workspace-id'), apply = flags.has('apply');
5827
+ const config = await readDeviceConfig();
5828
+ const workspace = (await registry()).find(row => row.workspaceId === workspaceId && row.organizationId === config?.organizationId);
5829
+ if (!config || !workspace?.repositoryBindingId || !workspace.repositoryAgentId
5830
+ || workspace.accessMode === 'knowledge_only' || !workspace.repositoryPackage
5831
+ || workspace.repositoryPackage.generation < 1 || !apply && workspace.repositoryPackage.pendingLocalOperationId) {
5832
+ throw new Error('repository_source_restoration_workspace_not_authorized');
5833
+ }
5834
+ // An explicit recovery must not race the relay's candidate outbox or silently
5835
+ // undo containment. The operator uses the normal owned relay stop/start flow.
5836
+ if (apply && (await relaySupervisorProcessState() !== 'stopped' || await relayProcessState() !== 'stopped')) {
5837
+ throw new Error('repository_source_restoration_requires_stopped_relay');
5838
+ }
5839
+ const policy = await loadVerifiedWorkspacePolicy(resolve(workspace.path, '.dharma', 'approved-policy.json'), workspaceId);
5840
+ if (!policy.serverAuthorization)
5841
+ throw new Error('repository_source_restoration_workspace_not_authorized');
5842
+ await assertWorkspaceAuthorizationCurrent(workspaceId, policy.serverAuthorization);
5843
+ const enrollment = await loadDeviceEnrollmentAnchor({ config, hostScope: currentBootstrapHostScope(), readOnly: !apply });
5844
+ const fabric = await AgentFabricClient.open({ configPath: configPath(), statePath: protocolStatePath(),
5845
+ hostScope: currentBootstrapHostScope(), readOnly: !apply });
5846
+ await fabric.openSession(VERSION);
5847
+ const scope = { organizationId: workspace.organizationId, workspaceId,
5848
+ repositoryBindingId: workspace.repositoryBindingId, repositoryAgentId: workspace.repositoryAgentId };
5849
+ if (apply) {
5850
+ const authorization = validateRepositorySourceAuthorization(await fetchRepositorySourceAuthorization(fabric, scope), scope, new Date());
5851
+ if (!authorization.policy.automaticValidatedPublication)
5852
+ throw new Error('repository_source_restoration_publication_denied');
5853
+ if (flags.has('fence-upload')) {
5854
+ if (workspace.repositoryPackage.pendingLocalOperationId)
5855
+ throw new Error('repository_source_restoration_workspace_not_authorized');
5856
+ let fenced;
5857
+ const assertFenceAuthority = async () => {
5858
+ const current = validateRepositorySourceAuthorization(await fetchRepositorySourceAuthorization(fabric, scope), scope, new Date());
5859
+ if (canonicalize(current) !== canonicalize(authorization))
5860
+ throw new Error('repository_source_restoration_policy_changed');
5861
+ await assertWorkspaceAuthorizationCurrent(workspaceId, policy.serverAuthorization);
5862
+ if (await relaySupervisorProcessState() !== 'stopped' || await relayProcessState() !== 'stopped') {
5863
+ throw new Error('repository_source_restoration_requires_stopped_relay');
5864
+ }
5865
+ };
5866
+ await saveWorkspaceRecord(workspace, { expected: workspace, beforeSave: async () => {
5867
+ await assertFenceAuthority();
5868
+ fenced = await fenceRepositoryRestorationUpload({ transport: fabric, scope,
5869
+ outboxRoot: resolve(dharmaHome(), 'relay', 'repository-candidates'), planHash: required(flags, 'plan-hash'),
5870
+ policyGenerationId: authorization.generationId,
5871
+ expectedPreviousOperationId: workspace.repositoryPackage.operationId ?? null });
5872
+ // Persist acknowledged containment even if source authority rolls over
5873
+ // during the request. This receipt cannot authorize another upload.
5874
+ if (await relaySupervisorProcessState() !== 'stopped' || await relayProcessState() !== 'stopped') {
5875
+ throw new Error('repository_source_restoration_requires_stopped_relay');
5876
+ }
5877
+ if (fenced.fence)
5878
+ await checkpointRepositoryRestorationFence({ scope, fenced,
5879
+ outboxRoot: resolve(dharmaHome(), 'relay', 'repository-candidates') });
5880
+ await assertFenceAuthority();
5881
+ } });
5882
+ if (!fenced)
5883
+ throw new Error('repository_source_restoration_fence_unavailable');
5884
+ return { ok: true, stage: fenced.fence ? 'repository_restoration_upload_fenced' : 'repository_restoration_admission_found',
5885
+ fence: fenced.fence, candidate: fenced.candidate, localMutation: true, serverSourceMutation: false,
5886
+ serverOperationFenced: Boolean(fenced.fence), activated: false,
5887
+ nextAction: fenced.fence ? 'Obtain a fresh restoration dry-run plan before applying; retain the terminal fence archive.'
5888
+ : 'Retry the original plan without --fence-upload to reconcile the admitted candidate; no operation was cancelled.' };
5889
+ }
5890
+ const recovered = await recoverRepositoryRestorationCandidate({ transport: fabric, scope,
5891
+ outboxRoot: resolve(dharmaHome(), 'relay', 'repository-candidates'), planHash: required(flags, 'plan-hash') });
5892
+ if (recovered) {
5893
+ const currentOperationId = workspace.repositoryPackage.operationId ?? null;
5894
+ if (currentOperationId !== recovered.previousOperationId && currentOperationId !== recovered.candidate.operationId) {
5895
+ throw new Error('repository_source_restoration_checkpoint_registry_changed');
5896
+ }
5897
+ if (workspace.repositoryPackage.pendingLocalOperationId
5898
+ && workspace.repositoryPackage.pendingLocalOperationId !== recovered.candidate.operationId) {
5899
+ throw new Error('repository_source_restoration_checkpoint_registry_changed');
5900
+ }
5901
+ if (recovered.candidate.state === 'published' && recovered.candidate.releaseId === recovered.priorReleaseId) {
5902
+ throw new Error('repository_source_restoration_archived_release_reused');
5903
+ }
5904
+ let admissionAuthorization;
5905
+ for (const hash of new Set([recovered.candidate.snapshotHash, recovered.localSnapshotHash,
5906
+ ...(recovered.baselineSnapshotHash ? [recovered.baselineSnapshotHash] : [])])) {
5907
+ const snapshot = await readRepositoryPackageSnapshot(workspace.path, hash);
5908
+ if (!snapshot || snapshot.manifest.organizationId !== scope.organizationId || snapshot.manifest.workspaceId !== workspaceId
5909
+ || snapshot.manifest.knowledge?.repositoryAgentId !== scope.repositoryAgentId
5910
+ || hash === recovered.candidate.snapshotHash && sha256(canonicalize(snapshot.manifest)) !== recovered.sourceManifestHash) {
5911
+ throw new Error('repository_source_restoration_checkpoint_snapshot_invalid');
5912
+ }
5913
+ // Historical policy may predate admission, but every retained snapshot
5914
+ // must belong to this exact repository binding, including the baseline.
5915
+ const historical = validateRepositorySourceAuthorization(snapshot.manifest.sourceAuthorization, scope);
5916
+ if (hash === recovered.localSnapshotHash || hash === recovered.candidate.snapshotHash) {
5917
+ if (admissionAuthorization && canonicalize(historical) !== canonicalize(admissionAuthorization)) {
5918
+ throw new Error('repository_source_restoration_checkpoint_snapshot_invalid');
5919
+ }
5920
+ admissionAuthorization = historical;
5921
+ }
5922
+ }
5923
+ if (!admissionAuthorization)
5924
+ throw new Error('repository_source_restoration_checkpoint_snapshot_invalid');
5925
+ const currentAuthorization = validateRepositorySourceAuthorization(await fetchRepositorySourceAuthorization(fabric, scope), scope, new Date());
5926
+ if (canonicalize(currentAuthorization) !== canonicalize(authorization))
5927
+ throw new Error('repository_source_restoration_policy_changed');
5928
+ if (await relaySupervisorProcessState() !== 'stopped' || await relayProcessState() !== 'stopped') {
5929
+ throw new Error('repository_source_restoration_requires_stopped_relay');
5930
+ }
5931
+ await assertWorkspaceAuthorizationCurrent(workspaceId, policy.serverAuthorization);
5932
+ const candidate = recovered.candidate;
5933
+ const pending = candidate.state === 'accepted' || candidate.state === 'processing';
5934
+ await saveWorkspaceRecord({ ...workspace, repositoryPackage: { ...workspace.repositoryPackage,
5935
+ ...candidate, sourceManifestHash: recovered.sourceManifestHash, consolidationMode: 'repository_update',
5936
+ sourcePolicyGenerationId: admissionAuthorization.generationId,
5937
+ localBaselineSnapshotHash: candidate.state === 'blocked' ? recovered.baselineSnapshotHash : recovered.localSnapshotHash,
5938
+ publishedLocalSnapshotHash: candidate.state === 'published' ? recovered.localSnapshotHash : recovered.baselineSnapshotHash,
5939
+ pendingLocalSnapshotHash: pending ? recovered.localSnapshotHash : null,
5940
+ pendingLocalOperationId: pending ? candidate.operationId : null } }, { expected: workspace,
5941
+ beforeSave: async () => {
5942
+ const lockedAuthorization = validateRepositorySourceAuthorization(await fetchRepositorySourceAuthorization(fabric, scope), scope, new Date());
5943
+ if (canonicalize(lockedAuthorization) !== canonicalize(authorization))
5944
+ throw new Error('repository_source_restoration_policy_changed');
5945
+ await assertWorkspaceAuthorizationCurrent(workspaceId, policy.serverAuthorization);
5946
+ if (await relaySupervisorProcessState() !== 'stopped' || await relayProcessState() !== 'stopped') {
5947
+ throw new Error('repository_source_restoration_requires_stopped_relay');
5948
+ }
5949
+ await checkpointRepositoryRestorationCandidate({ scope, recovered,
5950
+ outboxRoot: resolve(dharmaHome(), 'relay', 'repository-candidates') });
5951
+ },
5952
+ afterSave: saved => checkpointRepositoryRestorationRegistry({ scope, repositoryPackage: saved.repositoryPackage,
5953
+ outboxRoot: resolve(dharmaHome(), 'relay', 'repository-candidates') }) });
5954
+ return { ok: candidate.state !== 'blocked', stage: 'repository_restoration_candidate_recovered',
5955
+ planHash: recovered.planHash, candidate, priorReleaseId: recovered.priorReleaseId,
5956
+ localMutation: true, serverSourceMutation: false, activated: false,
5957
+ nextAction: 'Resume the owned relay; recovery only reconciled the existing candidate receipt.' };
5958
+ }
5959
+ }
5960
+ if (workspace.repositoryPackage.pendingLocalOperationId)
5961
+ throw new Error('repository_source_restoration_workspace_not_authorized');
5962
+ if (!['published', 'blocked'].includes(workspace.repositoryPackage.state)) {
5963
+ throw new Error('repository_source_restoration_publication_pending');
5964
+ }
5965
+ const baseline = repositorySourceComparisonBaseline(workspace.repositoryPackage, workspace.repositoryPackage.publishedLocalSnapshotHash ?? null);
5966
+ const restorationAttempt = await readRepositoryRestorationAttempt({ scope,
5967
+ outboxRoot: resolve(dharmaHome(), 'relay', 'repository-candidates') });
5968
+ const collected = await collectRepositorySourceRestoration({ ...scope, workspace: workspace.path, transport: fabric,
5969
+ restorationAttempt,
5970
+ serverPublicKey: createPublicKey({ key: { kty: 'OKP', crv: 'Ed25519', x: enrollment.serverPublicKeyEd25519 }, format: 'jwk' }),
5971
+ loadPublishedLocalBaseline: () => baseline ? readRepositoryPackageSnapshot(workspace.path, baseline) : Promise.resolve(null),
5972
+ loadResolution: () => readActiveRepositorySourceResolution(workspace.path) });
5973
+ const planHash = sha256(canonicalize({ schema: 'dharma.repository-restoration-plan/v1', ...scope,
5974
+ priorReleaseId: collected.priorReleaseId, priorGeneration: collected.priorGeneration,
5975
+ headCandidateId: collected.headCandidateId, headSnapshotHash: collected.headSnapshotHash, operationId: collected.operationId,
5976
+ expectedLatestSourceFingerprint: collected.expectedLatestSourceFingerprint,
5977
+ localSnapshotHash: collected.local.manifest.snapshotHash, snapshotHash: collected.snapshot.manifest.snapshotHash }));
5978
+ if (!apply)
5979
+ return { ok: true, stage: 'repository_restoration_planned', dryRun: true, planHash,
5980
+ priorReleaseId: collected.priorReleaseId, priorGeneration: collected.priorGeneration,
5981
+ headCandidateId: collected.headCandidateId, operationId: collected.operationId,
5982
+ expectedLatestSourceFingerprint: collected.expectedLatestSourceFingerprint,
5983
+ snapshotHash: collected.snapshot.manifest.snapshotHash, localMutation: false, serverSourceMutation: false,
5984
+ protocolSessionCreated: true, activated: false, published: false };
5985
+ if (required(flags, 'plan-hash') !== planHash)
5986
+ throw new Error('repository_source_restoration_plan_changed');
5987
+ let candidate;
5988
+ await saveWorkspaceRecord(workspace, { expected: workspace, preparePackage: async () => {
5989
+ await assertWorkspaceAuthorizationCurrent(workspaceId, policy.serverAuthorization);
5990
+ if (await relaySupervisorProcessState() !== 'stopped' || await relayProcessState() !== 'stopped') {
5991
+ throw new Error('repository_source_restoration_requires_stopped_relay');
5992
+ }
5993
+ await collected.assertCurrent();
5994
+ if (await relaySupervisorProcessState() !== 'stopped' || await relayProcessState() !== 'stopped') {
5995
+ throw new Error('repository_source_restoration_requires_stopped_relay');
5996
+ }
5997
+ const finalAuthorization = validateRepositorySourceAuthorization(await fetchRepositorySourceAuthorization(fabric, scope), scope, new Date());
5998
+ if (canonicalize(finalAuthorization) !== canonicalize(collected.snapshot.manifest.sourceAuthorization)) {
5999
+ throw new Error('repository_source_restoration_policy_changed');
6000
+ }
6001
+ await assertWorkspaceAuthorizationCurrent(workspaceId, policy.serverAuthorization);
6002
+ const sourcePolicyGenerationId = collected.snapshot.manifest.sourceAuthorization?.generationId;
6003
+ if (!sourcePolicyGenerationId)
6004
+ throw new Error('repository_source_restoration_policy_changed');
6005
+ if (await relaySupervisorProcessState() !== 'stopped' || await relayProcessState() !== 'stopped') {
6006
+ throw new Error('repository_source_restoration_requires_stopped_relay');
6007
+ }
6008
+ await collected.assertLocalCurrent();
6009
+ await collected.assertHeadCurrent();
6010
+ const postScanAuthorization = validateRepositorySourceAuthorization(await fetchRepositorySourceAuthorization(fabric, scope), scope, new Date());
6011
+ if (canonicalize(postScanAuthorization) !== canonicalize(collected.snapshot.manifest.sourceAuthorization)) {
6012
+ throw new Error('repository_source_restoration_policy_changed');
6013
+ }
6014
+ await assertWorkspaceAuthorizationCurrent(workspaceId, policy.serverAuthorization);
6015
+ if (await relaySupervisorProcessState() !== 'stopped' || await relayProcessState() !== 'stopped') {
6016
+ throw new Error('repository_source_restoration_requires_stopped_relay');
6017
+ }
6018
+ // Network head/authority waits can outlive the preceding local scan.
6019
+ await collected.assertLocalCurrent();
6020
+ // These are bounded observations, not a filesystem/server transaction.
6021
+ // Later edits require a new plan; never replace the immutable plan bytes.
6022
+ await collected.assertHeadCurrent();
6023
+ const admissionAuthorization = validateRepositorySourceAuthorization(await fetchRepositorySourceAuthorization(fabric, scope), scope, new Date());
6024
+ if (canonicalize(admissionAuthorization) !== canonicalize(collected.snapshot.manifest.sourceAuthorization)) {
6025
+ throw new Error('repository_source_restoration_policy_changed');
6026
+ }
6027
+ await assertWorkspaceAuthorizationCurrent(workspaceId, policy.serverAuthorization);
6028
+ if (await relaySupervisorProcessState() !== 'stopped' || await relayProcessState() !== 'stopped') {
6029
+ throw new Error('repository_source_restoration_requires_stopped_relay');
6030
+ }
6031
+ await writeRepositoryPackageSnapshot({ workspace: workspace.path, snapshot: collected.local, candidateOnly: true });
6032
+ if (collected.snapshot.manifest.snapshotHash !== collected.local.manifest.snapshotHash) {
6033
+ await writeRepositoryPackageSnapshot({ workspace: workspace.path, snapshot: collected.snapshot, candidateOnly: true });
6034
+ }
6035
+ candidate = await synchronizeRepositoryCandidate({ transport: fabric,
6036
+ outboxRoot: resolve(dharmaHome(), 'relay', 'repository-candidates'), scope,
6037
+ snapshot: collected.snapshot, initialRepository: false,
6038
+ expectedLatestSourceFingerprint: collected.expectedLatestSourceFingerprint,
6039
+ restoration: { planHash, localSnapshotHash: collected.local.manifest.snapshotHash,
6040
+ baselineSnapshotHash: baseline, previousOperationId: workspace.repositoryPackage.operationId ?? null,
6041
+ priorReleaseId: collected.priorReleaseId, headCandidateId: collected.headCandidateId,
6042
+ ...(restorationAttempt ? { attemptId: restorationAttempt } : {}) } });
6043
+ if (await relaySupervisorProcessState() !== 'stopped' || await relayProcessState() !== 'stopped') {
6044
+ throw new Error('repository_source_restoration_requires_stopped_relay');
6045
+ }
6046
+ if (candidate.state === 'published' && candidate.releaseId === collected.priorReleaseId) {
6047
+ throw new Error('repository_source_restoration_archived_release_reused');
6048
+ }
6049
+ const pending = candidate.state === 'accepted' || candidate.state === 'processing';
6050
+ return { ...workspace.repositoryPackage,
6051
+ ...candidate, sourceManifestHash: sha256(canonicalize(collected.snapshot.manifest)), consolidationMode: 'repository_update',
6052
+ sourcePolicyGenerationId,
6053
+ localBaselineSnapshotHash: candidate.state === 'blocked' ? baseline : collected.local.manifest.snapshotHash,
6054
+ publishedLocalSnapshotHash: candidate.state === 'published' ? collected.local.manifest.snapshotHash : baseline,
6055
+ pendingLocalSnapshotHash: pending ? collected.local.manifest.snapshotHash : null,
6056
+ pendingLocalOperationId: pending ? candidate.operationId : null };
6057
+ }, afterSave: saved => checkpointRepositoryRestorationRegistry({ scope, repositoryPackage: saved.repositoryPackage,
6058
+ outboxRoot: resolve(dharmaHome(), 'relay', 'repository-candidates') }) });
6059
+ if (!candidate)
6060
+ throw new Error('repository_source_restoration_admission_unavailable');
6061
+ return { ok: candidate.state !== 'blocked', stage: 'repository_restoration_candidate_submitted', planHash, candidate,
6062
+ priorReleaseId: collected.priorReleaseId, localMutation: true, serverSourceMutation: true, activated: false,
6063
+ nextAction: 'Resume the owned relay; evaluation, signing, delivery and activation must pass independently.' };
6064
+ }
5806
6065
  export async function repositorySourceResolutionCommand(flags) {
5807
6066
  flags = new Map(flags);
5808
6067
  const allowed = new Set(['workspace-id', 'dry-run', 'prepare', 'apply', 'plan-hash', 'choose-reviewed-local', 'json']);
@@ -6068,6 +6327,8 @@ async function onboard(flags) {
6068
6327
  snapshotHash: canonicalPackage.snapshotHash, state: canonicalPackage.state,
6069
6328
  releaseId: canonicalPackage.releaseId,
6070
6329
  } }));
6330
+ const beforePackageSave = registered;
6331
+ const restorationRegistryBaseline = candidate.restorationRegistryBaseline;
6071
6332
  registered = { ...registered, repositoryPackage: {
6072
6333
  state: candidate.state, candidateId: candidate.candidateId, operationId: candidate.operationId,
6073
6334
  snapshotHash: candidate.snapshotHash,
@@ -6075,7 +6336,7 @@ async function onboard(flags) {
6075
6336
  ? sha256(canonicalize(initialSnapshot.manifest)) : canonicalPackage.sourceManifestHash,
6076
6337
  releaseId: candidate.releaseId,
6077
6338
  generation: candidate.state === 'published' ? Math.max(1, canonicalPackage.generation) : canonicalPackage.generation,
6078
- consolidationMode: canonicalPackage.generation === 0 ? 'initial_repository'
6339
+ consolidationMode: restorationRegistryBaseline ? 'repository_update' : canonicalPackage.generation === 0 ? 'initial_repository'
6079
6340
  : refreshPolicy ? 'repository_update' : canonicalPackage.consolidationMode,
6080
6341
  sourcePolicyGenerationId: submitPackage ? sourceAuthorization.generationId : canonicalPackage.sourcePolicyGenerationId,
6081
6342
  localBaselineSnapshotHash: initialSnapshot.manifest.snapshotHash,
@@ -6088,8 +6349,13 @@ async function onboard(flags) {
6088
6349
  pendingLocalOperationId: submitPackage
6089
6350
  ? candidate.state === 'accepted' || candidate.state === 'processing'
6090
6351
  ? candidate.operationId : null : null,
6352
+ ...restorationRegistryBaseline,
6091
6353
  } };
6092
- await saveWorkspaceRecord(registered);
6354
+ await saveWorkspaceRecord(registered, restorationRegistryBaseline ? {
6355
+ expected: beforePackageSave,
6356
+ afterSave: saved => checkpointRepositoryRestorationRegistry({ outboxRoot, scope: candidateScope,
6357
+ repositoryPackage: saved.repositoryPackage }),
6358
+ } : undefined);
6093
6359
  const providers = await staged('role_registration', async () => receiptAwareProviderCapabilities(await Promise.all(selectedProviderAdapters(providerIds).map((adapter) => adapter.capability()))));
6094
6360
  const roleRequested = ['role-name', 'question-categories', 'role-description'].some(key => flags.has(key));
6095
6361
  if (roleRequested && !['role-name', 'question-categories', 'role-description'].every(key => flags.has(key))) {
@@ -6153,7 +6419,8 @@ async function onboard(flags) {
6153
6419
  writePaths: generatedPolicy.tasks.writePaths,
6154
6420
  },
6155
6421
  repositorySkill: installed,
6156
- repositoryCandidate: candidate,
6422
+ repositoryCandidate: { candidateId: candidate.candidateId, operationId: candidate.operationId,
6423
+ snapshotHash: candidate.snapshotHash, state: candidate.state, releaseId: candidate.releaseId },
6157
6424
  firstLearningEvidence: {
6158
6425
  discovered: discoveredTrajectories,
6159
6426
  disclosureReady,
@@ -8319,15 +8586,26 @@ async function relayWorkspaceLoop(flags, signal, serialized) {
8319
8586
  }
8320
8587
  const baseline = advanceRepositorySourceBaseline(canonicalWorkspace.repositoryPackage, current);
8321
8588
  const invalidateSourceWatcher = repositorySourcePollInvalidatesWatcher(canonicalWorkspace.repositoryPackage, current);
8322
- canonicalWorkspace = { ...canonicalWorkspace, repositoryPackage: { ...canonicalWorkspace.repositoryPackage,
8589
+ const previousWorkspace = canonicalWorkspace;
8590
+ const updatedWorkspace = { ...canonicalWorkspace, repositoryPackage: { ...canonicalWorkspace.repositoryPackage,
8323
8591
  state: current.state, candidateId: current.candidateId, operationId: current.operationId,
8324
8592
  snapshotHash: current.snapshotHash, releaseId: current.releaseId,
8325
8593
  ...baseline,
8326
8594
  generation: current.state === 'published' ? Math.max(1, canonicalWorkspace.repositoryPackage.generation) : canonicalWorkspace.repositoryPackage.generation } };
8327
- publishedLocalSnapshotHash = baseline.publishedLocalSnapshotHash;
8328
- if (invalidateSourceWatcher)
8329
- repositorySourceWatcher.invalidate();
8330
- await saveWorkspaceRecord(canonicalWorkspace);
8595
+ await saveWorkspaceRecord(updatedWorkspace, { expected: previousWorkspace,
8596
+ afterSave: async (saved) => {
8597
+ // The registry is committed even if the following marker fails.
8598
+ // Keep the next poll's CAS anchored to that saved state.
8599
+ canonicalWorkspace = saved;
8600
+ publishedLocalSnapshotHash = baseline.publishedLocalSnapshotHash;
8601
+ if (invalidateSourceWatcher)
8602
+ repositorySourceWatcher.invalidate();
8603
+ await checkpointRepositoryRestorationRegistry({
8604
+ scope: { organizationId: saved.organizationId, workspaceId: saved.workspaceId,
8605
+ repositoryBindingId: saved.repositoryBindingId, repositoryAgentId: saved.repositoryAgentId },
8606
+ repositoryPackage: saved.repositoryPackage, outboxRoot: resolve(dharmaHome(), 'relay', 'repository-candidates')
8607
+ });
8608
+ } });
8331
8609
  }
8332
8610
  }
8333
8611
  catch {
@@ -8736,6 +9014,12 @@ export async function run(argv) {
8736
9014
  }
8737
9015
  return repositorySourceResolutionCommand(flags);
8738
9016
  }
9017
+ if (command === 'repositories' && subcommand === 'restore') {
9018
+ if (positional.length !== 2 || [...repeated.values()].some(values => values.length !== 1)) {
9019
+ throw new Error('repository_source_restoration_option_invalid');
9020
+ }
9021
+ return repositoryRestoreCommand(flags);
9022
+ }
8739
9023
  if (command === 'repositories' && ['role-register', 'role-discover', 'ask', 'reply'].includes(String(subcommand))) {
8740
9024
  const action = subcommand === 'role-register' ? 'register' : subcommand === 'role-discover' ? 'discover' : subcommand;
8741
9025
  return repositoryRoleCommand(action, flags);