@dharma-ai-labs/agent-fabric 0.2.209 → 0.2.211

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 (158) hide show
  1. package/dist/bin.js +2 -2
  2. package/dist/bin.js.map +1 -1
  3. package/dist/bootstrapHostScope.test.js +1 -1
  4. package/dist/bootstrapHostScope.test.js.map +1 -1
  5. package/dist/bootstrapProcessCaller.test.js +1 -0
  6. package/dist/bootstrapProcessCaller.test.js.map +1 -1
  7. package/dist/bootstrapVaultScope.test.js +25 -1
  8. package/dist/bootstrapVaultScope.test.js.map +1 -1
  9. package/dist/codexBoundSession.d.ts +59 -0
  10. package/dist/codexBoundSession.d.ts.map +1 -1
  11. package/dist/codexBoundSession.js +140 -1
  12. package/dist/codexBoundSession.js.map +1 -1
  13. package/dist/codexInboxSession.d.ts +1 -1
  14. package/dist/codexInboxSession.d.ts.map +1 -1
  15. package/dist/codexRecoveryController.test.d.ts +2 -0
  16. package/dist/codexRecoveryController.test.d.ts.map +1 -0
  17. package/dist/codexRecoveryController.test.js +295 -0
  18. package/dist/codexRecoveryController.test.js.map +1 -0
  19. package/dist/codexScopedDispatch.test.js +2 -1
  20. package/dist/codexScopedDispatch.test.js.map +1 -1
  21. package/dist/codexSetupChildProvider.test.js +20 -0
  22. package/dist/codexSetupChildProvider.test.js.map +1 -1
  23. package/dist/codexSetupNativeHost.test.js +2 -1
  24. package/dist/codexSetupNativeHost.test.js.map +1 -1
  25. package/dist/codexSetupSessionCaller.test.js +1 -0
  26. package/dist/codexSetupSessionCaller.test.js.map +1 -1
  27. package/dist/codexSigningRecoveryNativeHost.d.ts +50 -0
  28. package/dist/codexSigningRecoveryNativeHost.d.ts.map +1 -0
  29. package/dist/codexSigningRecoveryNativeHost.js +186 -0
  30. package/dist/codexSigningRecoveryNativeHost.js.map +1 -0
  31. package/dist/codexSigningRecoveryNativeHost.test.d.ts +2 -0
  32. package/dist/codexSigningRecoveryNativeHost.test.d.ts.map +1 -0
  33. package/dist/codexSigningRecoveryNativeHost.test.js +475 -0
  34. package/dist/codexSigningRecoveryNativeHost.test.js.map +1 -0
  35. package/dist/codexSigningRecoveryTool.d.ts +25 -0
  36. package/dist/codexSigningRecoveryTool.d.ts.map +1 -0
  37. package/dist/codexSigningRecoveryTool.js +24 -0
  38. package/dist/codexSigningRecoveryTool.js.map +1 -0
  39. package/dist/containerRelayLifecycle.d.ts +2 -1
  40. package/dist/containerRelayLifecycle.d.ts.map +1 -1
  41. package/dist/containerRelayLifecycle.js +12 -0
  42. package/dist/containerRelayLifecycle.js.map +1 -1
  43. package/dist/containerRelayLifecycle.test.js +38 -6
  44. package/dist/containerRelayLifecycle.test.js.map +1 -1
  45. package/dist/containerRelayRuntimeTrust.test.js +10 -0
  46. package/dist/containerRelayRuntimeTrust.test.js.map +1 -1
  47. package/dist/cooperativeInboxSession.d.ts +1 -1
  48. package/dist/demoPackage.d.ts +1 -1
  49. package/dist/demoWatchControl.d.ts +6 -6
  50. package/dist/deviceSigningMaintenanceController.d.ts +35 -0
  51. package/dist/deviceSigningMaintenanceController.d.ts.map +1 -0
  52. package/dist/deviceSigningMaintenanceController.js +197 -0
  53. package/dist/deviceSigningMaintenanceController.js.map +1 -0
  54. package/dist/deviceSigningMaintenanceController.test.d.ts +2 -0
  55. package/dist/deviceSigningMaintenanceController.test.d.ts.map +1 -0
  56. package/dist/deviceSigningMaintenanceController.test.js +67 -0
  57. package/dist/deviceSigningMaintenanceController.test.js.map +1 -0
  58. package/dist/deviceSigningMaintenanceFlow.test.d.ts +2 -0
  59. package/dist/deviceSigningMaintenanceFlow.test.d.ts.map +1 -0
  60. package/dist/deviceSigningMaintenanceFlow.test.js +196 -0
  61. package/dist/deviceSigningMaintenanceFlow.test.js.map +1 -0
  62. package/dist/index.d.ts +9 -0
  63. package/dist/index.d.ts.map +1 -1
  64. package/dist/index.js +723 -470
  65. package/dist/index.js.map +1 -1
  66. package/dist/legacySigningMaintenanceBoundary.d.ts +14 -0
  67. package/dist/legacySigningMaintenanceBoundary.d.ts.map +1 -0
  68. package/dist/legacySigningMaintenanceBoundary.js +128 -0
  69. package/dist/legacySigningMaintenanceBoundary.js.map +1 -0
  70. package/dist/legacySigningMaintenanceBoundary.test.d.ts +2 -0
  71. package/dist/legacySigningMaintenanceBoundary.test.d.ts.map +1 -0
  72. package/dist/legacySigningMaintenanceBoundary.test.js +109 -0
  73. package/dist/legacySigningMaintenanceBoundary.test.js.map +1 -0
  74. package/dist/maintenanceControlCaller.test.d.ts +2 -0
  75. package/dist/maintenanceControlCaller.test.d.ts.map +1 -0
  76. package/dist/maintenanceControlCaller.test.js +119 -0
  77. package/dist/maintenanceControlCaller.test.js.map +1 -0
  78. package/dist/namedCodexThread.d.ts.map +1 -1
  79. package/dist/namedCodexThread.js +3 -1
  80. package/dist/namedCodexThread.js.map +1 -1
  81. package/dist/namedCodexThread.test.js +17 -1
  82. package/dist/namedCodexThread.test.js.map +1 -1
  83. package/dist/namedSessionMaintenance.d.ts +1 -1
  84. package/dist/namedSessionStartupFence.test.d.ts +2 -0
  85. package/dist/namedSessionStartupFence.test.d.ts.map +1 -0
  86. package/dist/namedSessionStartupFence.test.js +81 -0
  87. package/dist/namedSessionStartupFence.test.js.map +1 -0
  88. package/dist/namedSessionStoppedLock.d.ts +34 -0
  89. package/dist/namedSessionStoppedLock.d.ts.map +1 -0
  90. package/dist/namedSessionStoppedLock.js +108 -0
  91. package/dist/namedSessionStoppedLock.js.map +1 -0
  92. package/dist/namedSessionStoppedLock.test.d.ts +2 -0
  93. package/dist/namedSessionStoppedLock.test.d.ts.map +1 -0
  94. package/dist/namedSessionStoppedLock.test.js +104 -0
  95. package/dist/namedSessionStoppedLock.test.js.map +1 -0
  96. package/dist/providerSessionReplyRecovery.d.ts +1 -1
  97. package/dist/relayAutostart.d.ts +3 -0
  98. package/dist/relayAutostart.d.ts.map +1 -1
  99. package/dist/relayAutostart.js +45 -6
  100. package/dist/relayAutostart.js.map +1 -1
  101. package/dist/relayAutostart.test.js +49 -1
  102. package/dist/relayAutostart.test.js.map +1 -1
  103. package/dist/relayRuntimeUpgrade.d.ts +2 -1
  104. package/dist/relayRuntimeUpgrade.d.ts.map +1 -1
  105. package/dist/relayRuntimeUpgrade.js +3 -3
  106. package/dist/relayRuntimeUpgrade.js.map +1 -1
  107. package/dist/relayRuntimeUpgradeCaller.test.js +76 -0
  108. package/dist/relayRuntimeUpgradeCaller.test.js.map +1 -1
  109. package/dist/relaySigningMaintenanceUpgrade.d.ts +44 -0
  110. package/dist/relaySigningMaintenanceUpgrade.d.ts.map +1 -0
  111. package/dist/relaySigningMaintenanceUpgrade.js +249 -0
  112. package/dist/relaySigningMaintenanceUpgrade.js.map +1 -0
  113. package/dist/relaySigningMaintenanceUpgrade.test.d.ts +2 -0
  114. package/dist/relaySigningMaintenanceUpgrade.test.d.ts.map +1 -0
  115. package/dist/relaySigningMaintenanceUpgrade.test.js +230 -0
  116. package/dist/relaySigningMaintenanceUpgrade.test.js.map +1 -0
  117. package/dist/schemas/codex-signing-recovery-native-progress.schema.json +16 -0
  118. package/dist/schemas/device-enrollment-recovery-journal.schema.json +20 -0
  119. package/dist/schemas/device-signing-maintenance-challenge.schema.json +185 -0
  120. package/dist/schemas/device-signing-maintenance-completion.schema.json +98 -0
  121. package/dist/schemas/device-signing-maintenance-context-request.schema.json +68 -0
  122. package/dist/schemas/device-signing-maintenance-context.schema.json +137 -0
  123. package/dist/schemas/device-signing-maintenance-control.schema.json +12 -0
  124. package/dist/schemas/device-signing-maintenance-controller-progress.schema.json +26 -0
  125. package/dist/schemas/device-signing-maintenance-delivery-request.schema.json +45 -0
  126. package/dist/schemas/device-signing-maintenance-host-progress.schema.json +121 -0
  127. package/dist/schemas/device-signing-maintenance-plan.schema.json +136 -0
  128. package/dist/schemas/device-signing-maintenance-preparation.schema.json +56 -0
  129. package/dist/schemas/device-signing-recovery-candidate.schema.json +28 -0
  130. package/dist/schemas/device-signing-recovery-challenge.schema.json +52 -0
  131. package/dist/schemas/device-signing-recovery-completion.schema.json +23 -0
  132. package/dist/schemas/device-signing-recovery-delivery-request.schema.json +16 -0
  133. package/dist/schemas/device-signing-recovery-delivery.schema.json +22 -0
  134. package/dist/schemas/device-signing-recovery-host-progress.schema.json +28 -0
  135. package/dist/schemas/device-signing-recovery-offer-progress.schema.json +32 -0
  136. package/dist/schemas/device-signing-recovery-offer-read-request.schema.json +16 -0
  137. package/dist/schemas/device-signing-recovery-offer-registration-receipt.schema.json +16 -0
  138. package/dist/schemas/device-signing-recovery-offer-registration-request.schema.json +18 -0
  139. package/dist/schemas/device-signing-recovery-offer-response.schema.json +43 -0
  140. package/dist/schemas/device-signing-recovery-plan.schema.json +40 -0
  141. package/dist/schemas/device-signing-recovery-preparation.schema.json +23 -0
  142. package/dist/schemas/local-signing-maintenance-upgrade-journal.schema.json +34 -0
  143. package/dist/schemas/local-signing-maintenance-upgrade.schema.json +33 -0
  144. package/dist/schemas/provider-session-recovery-declaration.schema.json +21 -0
  145. package/dist/signingMaintenanceCohort.test.d.ts +2 -0
  146. package/dist/signingMaintenanceCohort.test.d.ts.map +1 -0
  147. package/dist/signingMaintenanceCohort.test.js +55 -0
  148. package/dist/signingMaintenanceCohort.test.js.map +1 -0
  149. package/dist/usage.d.ts.map +1 -1
  150. package/dist/usage.js +4 -2
  151. package/dist/usage.js.map +1 -1
  152. package/dist/wslRelayHost.d.ts +2 -0
  153. package/dist/wslRelayHost.d.ts.map +1 -1
  154. package/dist/wslRelayHost.js +35 -0
  155. package/dist/wslRelayHost.js.map +1 -1
  156. package/dist/wslRelayHost.test.js +81 -4
  157. package/dist/wslRelayHost.test.js.map +1 -1
  158. package/package.json +4 -4
@@ -0,0 +1,68 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://schemas.dharma-ai.io/device-signing-maintenance-context-request/v1",
4
+ "title": "Current device/source context; not consent or native authority",
5
+ "type": "object",
6
+ "additionalProperties": false,
7
+ "required": [
8
+ "schema",
9
+ "organizationId",
10
+ "deviceId",
11
+ "installationId",
12
+ "workspaceId",
13
+ "setupReference",
14
+ "operationId",
15
+ "repositoryFingerprint",
16
+ "nonce",
17
+ "expiresAt",
18
+ "issuedAt"
19
+ ],
20
+ "properties": {
21
+ "schema": {
22
+ "const": "dharma.device-signing-maintenance-context-request/v1"
23
+ },
24
+ "organizationId": {
25
+ "type": "string",
26
+ "maxLength": 256,
27
+ "pattern": "^org_[A-Za-z0-9]+$(?![\\s\\S])"
28
+ },
29
+ "deviceId": {
30
+ "type": "string",
31
+ "pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$(?![\\s\\S])"
32
+ },
33
+ "installationId": {
34
+ "type": "string",
35
+ "pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$(?![\\s\\S])"
36
+ },
37
+ "workspaceId": {
38
+ "type": "string",
39
+ "pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$(?![\\s\\S])"
40
+ },
41
+ "setupReference": {
42
+ "type": "string",
43
+ "pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$(?![\\s\\S])"
44
+ },
45
+ "operationId": {
46
+ "type": "string",
47
+ "pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$(?![\\s\\S])"
48
+ },
49
+ "nonce": {
50
+ "type": "string",
51
+ "pattern": "^[A-Za-z0-9_-]{42}[AEIMQUYcgkosw048]$(?![\\s\\S])"
52
+ },
53
+ "repositoryFingerprint": {
54
+ "type": "string",
55
+ "pattern": "^sha256:[a-f0-9]{64}$(?![\\s\\S])"
56
+ },
57
+ "expiresAt": {
58
+ "type": "string",
59
+ "maxLength": 40,
60
+ "format": "date-time"
61
+ },
62
+ "issuedAt": {
63
+ "type": "string",
64
+ "maxLength": 40,
65
+ "format": "date-time"
66
+ }
67
+ }
68
+ }
@@ -0,0 +1,137 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://schemas.dharma-ai.io/device-signing-maintenance-context/v1",
4
+ "title": "Current device/source context; not consent or native authority",
5
+ "type": "object",
6
+ "additionalProperties": false,
7
+ "required": [
8
+ "schema",
9
+ "organizationId",
10
+ "deviceId",
11
+ "installationId",
12
+ "workspaceId",
13
+ "setupReference",
14
+ "operationId",
15
+ "nonce",
16
+ "expiresAt",
17
+ "recipientMembershipId",
18
+ "authority",
19
+ "source"
20
+ ],
21
+ "properties": {
22
+ "schema": {
23
+ "const": "dharma.device-signing-maintenance-context/v1"
24
+ },
25
+ "organizationId": {
26
+ "type": "string",
27
+ "maxLength": 256,
28
+ "pattern": "^org_[A-Za-z0-9]+$(?![\\s\\S])"
29
+ },
30
+ "deviceId": {
31
+ "type": "string",
32
+ "pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$(?![\\s\\S])"
33
+ },
34
+ "installationId": {
35
+ "type": "string",
36
+ "pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$(?![\\s\\S])"
37
+ },
38
+ "workspaceId": {
39
+ "type": "string",
40
+ "pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$(?![\\s\\S])"
41
+ },
42
+ "setupReference": {
43
+ "type": "string",
44
+ "pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$(?![\\s\\S])"
45
+ },
46
+ "operationId": {
47
+ "type": "string",
48
+ "pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$(?![\\s\\S])"
49
+ },
50
+ "nonce": {
51
+ "type": "string",
52
+ "pattern": "^[A-Za-z0-9_-]{42}[AEIMQUYcgkosw048]$(?![\\s\\S])"
53
+ },
54
+ "expiresAt": {
55
+ "type": "string",
56
+ "maxLength": 40,
57
+ "format": "date-time"
58
+ },
59
+ "recipientMembershipId": {
60
+ "type": "string",
61
+ "pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$(?![\\s\\S])"
62
+ },
63
+ "authority": {
64
+ "const": "current_source_context_only_not_consent"
65
+ },
66
+ "source": {
67
+ "type": "object",
68
+ "additionalProperties": false,
69
+ "required": [
70
+ "organizationId",
71
+ "workspaceId",
72
+ "repositoryBindingId",
73
+ "repositoryFingerprint",
74
+ "policyRevision",
75
+ "scopeDigest",
76
+ "contractDigest",
77
+ "sourceGenerationId",
78
+ "sourceReceiptId",
79
+ "sourceRevision",
80
+ "sourcePolicyRevision",
81
+ "sourcePolicyHash"
82
+ ],
83
+ "properties": {
84
+ "organizationId": {
85
+ "type": "string",
86
+ "maxLength": 256,
87
+ "pattern": "^org_[A-Za-z0-9]+$(?![\\s\\S])"
88
+ },
89
+ "workspaceId": {
90
+ "type": "string",
91
+ "pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$(?![\\s\\S])"
92
+ },
93
+ "repositoryBindingId": {
94
+ "type": "string",
95
+ "pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$(?![\\s\\S])"
96
+ },
97
+ "repositoryFingerprint": {
98
+ "type": "string",
99
+ "pattern": "^sha256:[a-f0-9]{64}$(?![\\s\\S])"
100
+ },
101
+ "policyRevision": {
102
+ "type": "string",
103
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,127}$(?![\\s\\S])"
104
+ },
105
+ "scopeDigest": {
106
+ "type": "string",
107
+ "pattern": "^sha256:[a-f0-9]{64}$(?![\\s\\S])"
108
+ },
109
+ "contractDigest": {
110
+ "type": "string",
111
+ "pattern": "^sha256:[a-f0-9]{64}$(?![\\s\\S])"
112
+ },
113
+ "sourceGenerationId": {
114
+ "type": "string",
115
+ "pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$(?![\\s\\S])"
116
+ },
117
+ "sourceReceiptId": {
118
+ "type": "string",
119
+ "pattern": "^repo_consent_[0-9a-f-]{36}$(?![\\s\\S])"
120
+ },
121
+ "sourceRevision": {
122
+ "type": "integer",
123
+ "minimum": 1,
124
+ "maximum": 2147483646
125
+ },
126
+ "sourcePolicyRevision": {
127
+ "type": "string",
128
+ "pattern": "^repository-source-[0-9a-f-]{36}$(?![\\s\\S])"
129
+ },
130
+ "sourcePolicyHash": {
131
+ "type": "string",
132
+ "pattern": "^sha256:[a-f0-9]{64}$(?![\\s\\S])"
133
+ }
134
+ }
135
+ }
136
+ }
137
+ }
@@ -0,0 +1,12 @@
1
+ {
2
+ "$schema":"https://json-schema.org/draft/2020-12/schema",
3
+ "$id":"https://schemas.dharma-ai.io/device-signing-maintenance-control/v1",
4
+ "title":"Fixed control frame for one owning device-trust maintenance process",
5
+ "type":"object","additionalProperties":false,
6
+ "required":["schema","operationId","action"],
7
+ "properties":{
8
+ "schema":{"const":"dharma.device-signing-maintenance-control/v1"},
9
+ "operationId":{"type":"string","format":"uuid"},
10
+ "action":{"enum":["progress","complete","status","cancel"]}
11
+ }
12
+ }
@@ -0,0 +1,26 @@
1
+ {
2
+ "$schema":"https://json-schema.org/draft/2020-12/schema",
3
+ "$id":"https://schemas.dharma-ai.io/device-signing-maintenance-controller-progress/v1",
4
+ "title":"Owning controller progress; never native or onboarding readiness",
5
+ "type":"object","additionalProperties":false,
6
+ "required":["schema","operationId","organizationId","deviceId","workspaceId","bindingId","authorityKind","nativeContinuationAuthorized","ready","ok"],
7
+ "properties":{
8
+ "schema":{"const":"dharma.device-signing-maintenance-controller-progress/v1"},
9
+ "operationId":{"type":"string","format":"uuid"},"organizationId":{"type":"string","pattern":"^org_[A-Za-z0-9]+$"},
10
+ "deviceId":{"type":"string","format":"uuid"},"workspaceId":{"type":"string","format":"uuid"},"bindingId":{"type":"string","format":"uuid"},
11
+ "authorityKind":{"const":"device_trust_maintenance"},"nativeContinuationAuthorized":{"const":false},"ready":{"const":false},
12
+ "ok":{"type":"boolean"},"planned":{"const":true},"protectedStoreQualified":{"const":false},"currentSourceVerified":{"const":false},
13
+ "registrationDisabled":{"type":"boolean"},"processState":{"enum":["running","stopped","unknown"]},
14
+ "trustState":{"enum":["unavailable","expired","current"]},"clientTrustInstalled":{"const":false},
15
+ "progress":{"oneOf":[{"$ref":"https://schemas.dharma-ai.io/device-signing-maintenance-host-progress/v1"},{"type":"null"}]},
16
+ "recipientUrl":{"type":"string","maxLength":1024,"format":"uri","pattern":"^https://"},
17
+ "ownerUrl":{"type":"string","maxLength":1024,"format":"uri","pattern":"^https://"},
18
+ "state":{"enum":["unconfirmed","cancelled","closed_before_completion"]},"reconcileBeforeRetry":{"const":true},
19
+ "phase":{"type":"string","maxLength":64,"pattern":"^[a-z_]+$"},"httpStatus":{"type":["integer","null"],"minimum":100,"maximum":599}
20
+ },
21
+ "allOf":[
22
+ {"if":{"required":["planned"]},"then":{"required":["protectedStoreQualified","currentSourceVerified","registrationDisabled","processState","trustState","clientTrustInstalled"],"properties":{"ok":{"const":true}},"not":{"required":["progress"]}}},
23
+ {"if":{"properties":{"ok":{"const":false}}},"then":{"required":["state"]}},
24
+ {"if":{"properties":{"ok":{"const":true}},"not":{"required":["planned"]}},"then":{"required":["progress"],"properties":{"progress":{"$ref":"https://schemas.dharma-ai.io/device-signing-maintenance-host-progress/v1"}}}}
25
+ ]
26
+ }
@@ -0,0 +1,45 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://schemas.dharma-ai.io/device-signing-maintenance-delivery-request/v1",
4
+ "title": "Device trust maintenance delivery-request; not native continuation",
5
+ "type": "object",
6
+ "additionalProperties": false,
7
+ "required": [
8
+ "schema",
9
+ "action",
10
+ "organizationId",
11
+ "recoveryId",
12
+ "approvalId",
13
+ "signature"
14
+ ],
15
+ "properties": {
16
+ "schema": {
17
+ "const": "dharma.device-signing-maintenance-delivery-request/v1"
18
+ },
19
+ "action": {
20
+ "const": "delivery"
21
+ },
22
+ "organizationId": {
23
+ "type": "string",
24
+ "pattern": "^org_[A-Za-z0-9]+$(?![\\s\\S])",
25
+ "maxLength": 200
26
+ },
27
+ "recoveryId": {
28
+ "$ref": "#/$defs/uuid"
29
+ },
30
+ "approvalId": {
31
+ "$ref": "#/$defs/uuid"
32
+ },
33
+ "signature": {
34
+ "type": "string",
35
+ "pattern": "^[A-Za-z0-9_-]{86}$(?![\\s\\S])"
36
+ }
37
+ },
38
+ "$defs": {
39
+ "uuid": {
40
+ "type": "string",
41
+ "format": "uuid",
42
+ "pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$(?![\\s\\S])"
43
+ }
44
+ }
45
+ }
@@ -0,0 +1,121 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://schemas.dharma-ai.io/device-signing-maintenance-host-progress/v1",
4
+ "title": "Device trust maintenance host-progress; not native continuation",
5
+ "type": "object",
6
+ "additionalProperties": false,
7
+ "required": [
8
+ "schema",
9
+ "organizationId",
10
+ "deviceId",
11
+ "preparationId",
12
+ "state",
13
+ "expiresAt",
14
+ "clientTrustInstalled",
15
+ "ready",
16
+ "disposition",
17
+ "authorityKind",
18
+ "nativeContinuationAuthorized"
19
+ ],
20
+ "properties": {
21
+ "schema": {
22
+ "const": "dharma.device-signing-maintenance-host-progress/v1"
23
+ },
24
+ "organizationId": {
25
+ "type": "string",
26
+ "maxLength": 128,
27
+ "pattern": "^org_[A-Za-z0-9]+$"
28
+ },
29
+ "deviceId": {
30
+ "type": "string",
31
+ "format": "uuid"
32
+ },
33
+ "preparationId": {
34
+ "type": "string",
35
+ "format": "uuid"
36
+ },
37
+ "recoveryId": {
38
+ "type": "string",
39
+ "format": "uuid"
40
+ },
41
+ "approvalId": {
42
+ "type": "string",
43
+ "format": "uuid"
44
+ },
45
+ "state": {
46
+ "enum": [
47
+ "prepared",
48
+ "awaiting_browser_offer",
49
+ "pending_approval",
50
+ "submission_unconfirmed",
51
+ "offer_unconfirmed",
52
+ "delivery_unconfirmed",
53
+ "failed",
54
+ "trust_installed"
55
+ ]
56
+ },
57
+ "expiresAt": {
58
+ "type": "string",
59
+ "format": "date-time"
60
+ },
61
+ "clientTrustInstalled": {
62
+ "type": "boolean"
63
+ },
64
+ "ready": {
65
+ "const": false
66
+ },
67
+ "disposition": {
68
+ "const": "owned_host_progress_not_onboarding_ready"
69
+ },
70
+ "authorityKind": {
71
+ "const": "device_trust_maintenance"
72
+ },
73
+ "nativeContinuationAuthorized": {
74
+ "const": false
75
+ }
76
+ },
77
+ "allOf": [
78
+ {
79
+ "if": {
80
+ "properties": {
81
+ "state": {
82
+ "enum": [
83
+ "pending_approval",
84
+ "delivery_unconfirmed",
85
+ "trust_installed"
86
+ ]
87
+ }
88
+ }
89
+ },
90
+ "then": {
91
+ "required": [
92
+ "recoveryId",
93
+ "approvalId"
94
+ ]
95
+ }
96
+ },
97
+ {
98
+ "if": {
99
+ "properties": {
100
+ "state": {
101
+ "const": "trust_installed"
102
+ }
103
+ }
104
+ },
105
+ "then": {
106
+ "properties": {
107
+ "clientTrustInstalled": {
108
+ "const": true
109
+ }
110
+ }
111
+ },
112
+ "else": {
113
+ "properties": {
114
+ "clientTrustInstalled": {
115
+ "const": false
116
+ }
117
+ }
118
+ }
119
+ }
120
+ ]
121
+ }
@@ -0,0 +1,136 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://schemas.dharma-ai.io/device-signing-maintenance-plan/v1",
4
+ "title": "Existing-device signing maintenance plan; no native continuation authority",
5
+ "$comment": "Distinct device-maintenance origin. Device possession, both fresh browser consents, current member/device/source, independent configured-key provenance, publication CAS and protected installation remain separate and mandatory. Native session liveness or execution is not asserted.",
6
+ "type": "object",
7
+ "additionalProperties": false,
8
+ "required": [
9
+ "schema",
10
+ "planId",
11
+ "authority",
12
+ "preparedAt",
13
+ "expiresAt",
14
+ "origin",
15
+ "issuer",
16
+ "audience",
17
+ "organizationId",
18
+ "recipientMembershipId",
19
+ "deviceId",
20
+ "installationId",
21
+ "workspaceId",
22
+ "publicKeyEd25519",
23
+ "repositoryFingerprint",
24
+ "policyRevision",
25
+ "scopeDigest",
26
+ "contractDigest",
27
+ "sourceSelectionDigest",
28
+ "controllerBindingDigest",
29
+ "previousAnchorHash",
30
+ "protectedConfigDigest",
31
+ "previousGeneration",
32
+ "previousKeysetHash",
33
+ "previousRootFingerprint"
34
+ ],
35
+ "properties": {
36
+ "schema": {
37
+ "const": "dharma.device-signing-maintenance-plan/v1"
38
+ },
39
+ "planId": {
40
+ "$ref": "#/$defs/uuid"
41
+ },
42
+ "authority": {
43
+ "const": "local_context_only_not_recovery_authorization"
44
+ },
45
+ "preparedAt": {
46
+ "type": "string",
47
+ "format": "date-time"
48
+ },
49
+ "expiresAt": {
50
+ "type": "string",
51
+ "format": "date-time"
52
+ },
53
+ "origin": {
54
+ "type": "string",
55
+ "maxLength": 256,
56
+ "format": "uri",
57
+ "pattern": "^https://[^/@?#\\s]+$(?![\\s\\S])"
58
+ },
59
+ "issuer": {
60
+ "type": "string",
61
+ "maxLength": 256,
62
+ "format": "uri",
63
+ "pattern": "^https://[^/@?#\\s]+$(?![\\s\\S])"
64
+ },
65
+ "audience": {
66
+ "const": "dharma.agent-fabric.signing-maintenance/v1"
67
+ },
68
+ "organizationId": {
69
+ "type": "string",
70
+ "maxLength": 256,
71
+ "pattern": "^org_[A-Za-z0-9]+$(?![\\s\\S])"
72
+ },
73
+ "recipientMembershipId": {
74
+ "$ref": "#/$defs/uuid"
75
+ },
76
+ "deviceId": {
77
+ "$ref": "#/$defs/uuid"
78
+ },
79
+ "installationId": {
80
+ "$ref": "#/$defs/uuid"
81
+ },
82
+ "workspaceId": {
83
+ "$ref": "#/$defs/uuid"
84
+ },
85
+ "publicKeyEd25519": {
86
+ "type": "string",
87
+ "pattern": "^[A-Za-z0-9_-]{42}[AEIMQUYcgkosw048]$(?![\\s\\S])"
88
+ },
89
+ "repositoryFingerprint": {
90
+ "$ref": "#/$defs/digest"
91
+ },
92
+ "policyRevision": {
93
+ "type": "string",
94
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9._:-]{0,127}$(?![\\s\\S])"
95
+ },
96
+ "scopeDigest": {
97
+ "$ref": "#/$defs/digest"
98
+ },
99
+ "contractDigest": {
100
+ "$ref": "#/$defs/digest"
101
+ },
102
+ "sourceSelectionDigest": {
103
+ "$ref": "#/$defs/digest"
104
+ },
105
+ "controllerBindingDigest": {
106
+ "$ref": "#/$defs/digest"
107
+ },
108
+ "previousAnchorHash": {
109
+ "$ref": "#/$defs/digest"
110
+ },
111
+ "protectedConfigDigest": {
112
+ "$ref": "#/$defs/digest"
113
+ },
114
+ "previousGeneration": {
115
+ "type": "integer",
116
+ "minimum": 1,
117
+ "maximum": 9007199254740991
118
+ },
119
+ "previousKeysetHash": {
120
+ "$ref": "#/$defs/digest"
121
+ },
122
+ "previousRootFingerprint": {
123
+ "$ref": "#/$defs/digest"
124
+ }
125
+ },
126
+ "$defs": {
127
+ "uuid": {
128
+ "type": "string",
129
+ "pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$(?![\\s\\S])"
130
+ },
131
+ "digest": {
132
+ "type": "string",
133
+ "pattern": "^sha256:[a-f0-9]{64}$(?![\\s\\S])"
134
+ }
135
+ }
136
+ }
@@ -0,0 +1,56 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://schemas.dharma-ai.io/device-signing-maintenance-preparation/v1",
4
+ "title": "Existing-device signing maintenance preparation; no native continuation authority",
5
+ "$comment": "Distinct device-maintenance origin. Device possession, both fresh browser consents, current member/device/source, independent configured-key provenance, publication CAS and protected installation remain separate and mandatory. Native session liveness or execution is not asserted.",
6
+ "type": "object",
7
+ "additionalProperties": false,
8
+ "required": [
9
+ "schema",
10
+ "purpose",
11
+ "method",
12
+ "path",
13
+ "plan",
14
+ "historicalKeysetCanonical",
15
+ "historicalRootPublicKey",
16
+ "credentialEncryptionPublicKey",
17
+ "nonce"
18
+ ],
19
+ "properties": {
20
+ "schema": {
21
+ "const": "dharma.device-signing-maintenance-preparation/v1"
22
+ },
23
+ "purpose": {
24
+ "const": "prepare_expired_signing_trust_recovery"
25
+ },
26
+ "method": {
27
+ "const": "POST"
28
+ },
29
+ "path": {
30
+ "const": "/api/v1/agent-fabric/signing-recovery/preparations"
31
+ },
32
+ "plan": {
33
+ "$ref": "https://schemas.dharma-ai.io/device-signing-maintenance-plan/v1"
34
+ },
35
+ "historicalKeysetCanonical": {
36
+ "type": "string",
37
+ "minLength": 2,
38
+ "maxLength": 16384
39
+ },
40
+ "historicalRootPublicKey": {
41
+ "$ref": "#/$defs/bytes32"
42
+ },
43
+ "credentialEncryptionPublicKey": {
44
+ "$ref": "#/$defs/bytes32"
45
+ },
46
+ "nonce": {
47
+ "$ref": "#/$defs/bytes32"
48
+ }
49
+ },
50
+ "$defs": {
51
+ "bytes32": {
52
+ "type": "string",
53
+ "pattern": "^[A-Za-z0-9_-]{42}[AEIMQUYcgkosw048]$(?![\\s\\S])"
54
+ }
55
+ }
56
+ }
@@ -0,0 +1,28 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://schemas.dharma-ai.io/device-signing-recovery-candidate/v1",
4
+ "title": "Public candidate and publication evidence, not installation authority",
5
+ "type": "object",
6
+ "additionalProperties": false,
7
+ "required": ["schema", "organizationId", "recoveryId", "approvalId", "keysetCanonical", "rootPublicKey", "publication"],
8
+ "properties": {
9
+ "schema": {"const": "dharma.device-signing-recovery-candidate/v1"},
10
+ "organizationId": {"type": "string", "pattern": "^org_[A-Za-z0-9]+$(?![\\s\\S])", "maxLength": 200},
11
+ "recoveryId": {"type": "string", "format": "uuid", "pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$(?![\\s\\S])"},
12
+ "approvalId": {"type": "string", "format": "uuid", "pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$(?![\\s\\S])"},
13
+ "keysetCanonical": {"type": "string", "minLength": 1, "maxLength": 16384},
14
+ "rootPublicKey": {"type": "string", "pattern": "^[A-Za-z0-9_-]{43}$(?![\\s\\S])"},
15
+ "publication": {
16
+ "type": "object", "additionalProperties": false,
17
+ "required": ["schema", "organizationId", "recoveryId", "generation", "artifactHash", "publishedAt"],
18
+ "properties": {
19
+ "schema": {"const": "dharma.signing-recovery-publication/v1"},
20
+ "organizationId": {"type": "string", "pattern": "^org_[A-Za-z0-9]+$(?![\\s\\S])", "maxLength": 200},
21
+ "recoveryId": {"type": "string", "format": "uuid", "pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$(?![\\s\\S])"},
22
+ "generation": {"type": "integer", "minimum": 1, "maximum": 9007199254740991},
23
+ "artifactHash": {"type": "string", "pattern": "^sha256:[a-f0-9]{64}$(?![\\s\\S])"},
24
+ "publishedAt": {"type": "string", "format": "date-time"}
25
+ }
26
+ }
27
+ }
28
+ }