sealbridge 0.4.2 → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (140) hide show
  1. package/README.ja.md +6 -4
  2. package/README.md +9 -4
  3. package/dist/cli/dist/accept.d.ts +2 -1
  4. package/dist/cli/dist/accept.js +18 -7
  5. package/dist/cli/dist/accept.js.map +1 -1
  6. package/dist/cli/dist/index.js +46 -13
  7. package/dist/cli/dist/index.js.map +1 -1
  8. package/dist/cli/dist/invite-links.d.ts +14 -0
  9. package/dist/cli/dist/invite-links.js +263 -0
  10. package/dist/cli/dist/invite-links.js.map +1 -0
  11. package/dist/cli/dist/invite-output.d.ts +1 -1
  12. package/dist/cli/dist/invite-output.js +3 -2
  13. package/dist/cli/dist/invite-output.js.map +1 -1
  14. package/dist/cli/dist/network.js +16 -23
  15. package/dist/cli/dist/network.js.map +1 -1
  16. package/dist/cli/dist/receipt.d.ts +12 -2
  17. package/dist/cli/dist/receipt.js +6 -5
  18. package/dist/cli/dist/receipt.js.map +1 -1
  19. package/dist/cli/dist/sdk.d.ts +6 -4
  20. package/dist/cli/dist/sdk.js +3 -2
  21. package/dist/cli/dist/sdk.js.map +1 -1
  22. package/dist/cli/dist/task-review.d.ts +1 -8
  23. package/dist/cli/dist/task-review.js +4 -17
  24. package/dist/cli/dist/task-review.js.map +1 -1
  25. package/dist/cli/dist/tasks.js +1 -1
  26. package/dist/cli/dist/tasks.js.map +1 -1
  27. package/dist/examples/two-owner-demo/dist/run-demo.js +3 -1
  28. package/dist/examples/two-owner-demo/dist/run-demo.js.map +1 -1
  29. package/dist/package.json +1 -1
  30. package/dist/packages/core/dist/content-inspection-rules.d.ts +22 -0
  31. package/dist/packages/core/dist/content-inspection-rules.js +34 -0
  32. package/dist/packages/core/dist/content-inspection-rules.js.map +1 -0
  33. package/dist/packages/core/dist/content-inspection.d.ts +43 -0
  34. package/dist/packages/core/dist/content-inspection.js +192 -0
  35. package/dist/packages/core/dist/content-inspection.js.map +1 -0
  36. package/dist/packages/core/dist/context-grant.d.ts +13 -0
  37. package/dist/packages/core/dist/context-grant.js +65 -0
  38. package/dist/packages/core/dist/context-grant.js.map +1 -0
  39. package/dist/packages/core/dist/delegation.d.ts +17 -0
  40. package/dist/packages/core/dist/delegation.js +126 -0
  41. package/dist/packages/core/dist/delegation.js.map +1 -0
  42. package/dist/packages/core/dist/edge.d.ts +2 -0
  43. package/dist/packages/core/dist/edge.js +2 -0
  44. package/dist/packages/core/dist/edge.js.map +1 -1
  45. package/dist/packages/core/dist/index.d.ts +6 -0
  46. package/dist/packages/core/dist/index.js +6 -0
  47. package/dist/packages/core/dist/index.js.map +1 -1
  48. package/dist/packages/core/dist/invite-link.d.ts +72 -0
  49. package/dist/packages/core/dist/invite-link.js +225 -0
  50. package/dist/packages/core/dist/invite-link.js.map +1 -0
  51. package/dist/packages/core/dist/invite-sas.d.ts +7 -0
  52. package/dist/packages/core/dist/invite-sas.js +15 -0
  53. package/dist/packages/core/dist/invite-sas.js.map +1 -0
  54. package/dist/packages/core/dist/relay-auth.d.ts +1 -1
  55. package/dist/packages/core/dist/relay-auth.js +1 -1
  56. package/dist/packages/core/dist/relay-auth.js.map +1 -1
  57. package/dist/packages/core/dist/schema.d.ts +1 -1
  58. package/dist/packages/core/dist/schema.js +4 -0
  59. package/dist/packages/core/dist/schema.js.map +1 -1
  60. package/dist/packages/core/dist/types.d.ts +52 -0
  61. package/dist/packages/ledger/dist/index.d.ts +70 -2
  62. package/dist/packages/ledger/dist/index.js +404 -26
  63. package/dist/packages/ledger/dist/index.js.map +1 -1
  64. package/dist/packages/relay/dist/fetch.js +4 -0
  65. package/dist/packages/relay/dist/fetch.js.map +1 -1
  66. package/dist/packages/relay/dist/invites.d.ts +42 -0
  67. package/dist/packages/relay/dist/invites.js +347 -0
  68. package/dist/packages/relay/dist/invites.js.map +1 -0
  69. package/dist/packages/relay/dist/worker.d.ts +3 -0
  70. package/dist/packages/relay/dist/worker.js +21 -0
  71. package/dist/packages/relay/dist/worker.js.map +1 -1
  72. package/dist/packages/runtime/dist/a2a.js +1 -1
  73. package/dist/packages/runtime/dist/adapter.d.ts +1 -0
  74. package/dist/packages/runtime/dist/application-config.js +69 -6
  75. package/dist/packages/runtime/dist/application-config.js.map +1 -1
  76. package/dist/packages/runtime/dist/approval-providers.d.ts +4 -0
  77. package/dist/packages/runtime/dist/approval-providers.js +3 -0
  78. package/dist/packages/runtime/dist/approval-providers.js.map +1 -1
  79. package/dist/packages/runtime/dist/connection-persistence.d.ts +1 -1
  80. package/dist/packages/runtime/dist/context-grant-audit.d.ts +8 -0
  81. package/dist/packages/runtime/dist/context-grant-audit.js +41 -0
  82. package/dist/packages/runtime/dist/context-grant-audit.js.map +1 -0
  83. package/dist/packages/runtime/dist/delegation.d.ts +37 -0
  84. package/dist/packages/runtime/dist/delegation.js +125 -0
  85. package/dist/packages/runtime/dist/delegation.js.map +1 -0
  86. package/dist/packages/runtime/dist/gateway.d.ts +1 -0
  87. package/dist/packages/runtime/dist/gateway.js.map +1 -1
  88. package/dist/packages/runtime/dist/held-request-store.d.ts +2 -0
  89. package/dist/packages/runtime/dist/held-request-store.js +3 -2
  90. package/dist/packages/runtime/dist/held-request-store.js.map +1 -1
  91. package/dist/packages/runtime/dist/held-task-content.d.ts +14 -0
  92. package/dist/packages/runtime/dist/held-task-content.js +33 -0
  93. package/dist/packages/runtime/dist/held-task-content.js.map +1 -0
  94. package/dist/packages/runtime/dist/index.d.ts +4 -0
  95. package/dist/packages/runtime/dist/index.js +4 -0
  96. package/dist/packages/runtime/dist/index.js.map +1 -1
  97. package/dist/packages/runtime/dist/mcp-server.js +22 -8
  98. package/dist/packages/runtime/dist/mcp-server.js.map +1 -1
  99. package/dist/packages/runtime/dist/mcp-tool-catalog.js +44 -5
  100. package/dist/packages/runtime/dist/mcp-tool-catalog.js.map +1 -1
  101. package/dist/packages/runtime/dist/rule-content-review-child.d.ts +1 -0
  102. package/dist/packages/runtime/dist/rule-content-review-child.js +25 -0
  103. package/dist/packages/runtime/dist/rule-content-review-child.js.map +1 -0
  104. package/dist/packages/runtime/dist/rule-content-review.d.ts +9 -0
  105. package/dist/packages/runtime/dist/rule-content-review.js +217 -0
  106. package/dist/packages/runtime/dist/rule-content-review.js.map +1 -0
  107. package/dist/packages/runtime/dist/session-audit.d.ts +6 -1
  108. package/dist/packages/runtime/dist/session-audit.js +35 -4
  109. package/dist/packages/runtime/dist/session-audit.js.map +1 -1
  110. package/dist/packages/runtime/dist/session.d.ts +21 -1
  111. package/dist/packages/runtime/dist/session.js +429 -63
  112. package/dist/packages/runtime/dist/session.js.map +1 -1
  113. package/dist/packages/runtime/dist/task-journal.d.ts +10 -1
  114. package/dist/packages/runtime/dist/task-journal.js +26 -1
  115. package/dist/packages/runtime/dist/task-journal.js.map +1 -1
  116. package/dist/packages/runtime/dist/verifier.d.ts +5 -2
  117. package/dist/packages/runtime/dist/verifier.js +14 -4
  118. package/dist/packages/runtime/dist/verifier.js.map +1 -1
  119. package/dist/spec/audit-entry.schema.json +25 -1
  120. package/dist/spec/audit-evidence.schema.json +179 -0
  121. package/dist/spec/audit-file-record.schema.json +177 -0
  122. package/dist/spec/audit-interruption.schema.json +110 -0
  123. package/dist/spec/context-grant-audit-payload.schema.json +24 -0
  124. package/dist/spec/context-grant.schema.json +146 -0
  125. package/dist/spec/delegation-attachment.schema.json +167 -0
  126. package/dist/spec/delegation-link.schema.json +141 -0
  127. package/dist/spec/examples/context-pooling/approval_redelegation/sample-delegation-attachment.json +413 -0
  128. package/dist/spec/examples/context-pooling/hand_over/sample-context-grant.json +18 -0
  129. package/dist/spec/examples/context-pooling/hand_over/sample-task-manifest.0.2.0.json +94 -0
  130. package/dist/spec/examples/context-pooling/sample-context-grant-audit-payload.json +4 -0
  131. package/dist/spec/examples/context-pooling/view_only/sample-context-grant.json +18 -0
  132. package/dist/spec/examples/context-pooling/view_only/sample-task-manifest.0.2.0.json +94 -0
  133. package/dist/spec/examples/sample-audit-evidence.json +138 -0
  134. package/dist/spec/examples/sample-audit-file-record.json +31 -0
  135. package/dist/spec/examples/sample-audit-interruption.json +29 -0
  136. package/dist/spec/task-manifest.0.2.0.schema.json +87 -1
  137. package/docs/context-grants.md +221 -0
  138. package/docs/sdk.ja.md +108 -2
  139. package/docs/sdk.md +120 -2
  140. package/package.json +3 -2
@@ -1,10 +1,13 @@
1
- import type { KeyPair } from '../../core/dist/index.js';
1
+ import type { KeyPair, Signed } from '../../core/dist/index.js';
2
+ import type { AuditInterruption } from '../../ledger/dist/index.js';
3
+ import type { TaskDelegationState } from './delegation.js';
2
4
  import type { SessionResult } from './session.js';
3
5
  export interface TaskOutcome {
4
6
  code: string;
5
7
  result?: SessionResult;
6
8
  }
7
9
  export interface TaskCheckpoint {
10
+ delegation?: TaskDelegationState;
8
11
  version: 1;
9
12
  taskId: string;
10
13
  requesterDid: string;
@@ -12,6 +15,12 @@ export interface TaskCheckpoint {
12
15
  proposalDigest: string;
13
16
  phase: 'received' | 'accepted' | 'running' | 'delivered' | 'terminal';
14
17
  auditPath?: string;
18
+ /** Present only for new-format attempts; never inferred for legacy journal records. */
19
+ auditStage?: AuditInterruption['phase'] | 'OUT_OF_SCOPE';
20
+ auditClosure?: {
21
+ state: 'pending' | 'written';
22
+ interruption: Signed<AuditInterruption>;
23
+ };
15
24
  workspace?: string;
16
25
  invocations: Array<{
17
26
  id: string;
@@ -4,7 +4,8 @@ import { dirname } from 'node:path';
4
4
  import * as fs from 'node:fs';
5
5
  import { randomUUID } from 'node:crypto';
6
6
  import { checkPath, checkStat, readPrivateFile, writePrivateFile } from './local-identity.js';
7
- import { signPayload, verifySigned } from '../../core/dist/index.js';
7
+ import { signPayload, verifySigned, validateSchema } from '../../core/dist/index.js';
8
+ import { validateTaskDelegation } from './delegation.js';
8
9
  /** Private signed checkpoints. Shared callers hold the signer lock for load/reload/save/compact.
9
10
  * A torn final append retains the preceding checkpoint, but is never a reusable cache. */
10
11
  export class TaskJournal {
@@ -242,6 +243,28 @@ export class TaskJournal {
242
243
  !['received', 'accepted', 'running', 'delivered', 'terminal'].includes(record.phase) ||
243
244
  !Array.isArray(record.invocations) || (record.phase === 'terminal' && !record.outcome))
244
245
  throw new Error('INVALID_TASK_JOURNAL');
246
+ if (record.auditStage !== undefined && !['OWNER_APPROVAL', 'ACCEPT_ACK_WAIT', 'OUT_OF_SCOPE'].includes(record.auditStage))
247
+ throw new Error('INVALID_TASK_JOURNAL');
248
+ if (record.auditClosure !== undefined) {
249
+ const closure = record.auditClosure;
250
+ try {
251
+ if (!closure || !['pending', 'written'].includes(closure.state) || Object.keys(closure).length !== 2 || !record.auditPath ||
252
+ record.auditStage === undefined || record.auditStage === 'OUT_OF_SCOPE')
253
+ throw new Error();
254
+ validateSchema('audit-interruption', closure.interruption);
255
+ const p = closure.interruption.payload;
256
+ if (!verifySigned(closure.interruption, this.owner.did) || p.taskId !== record.taskId ||
257
+ p.actors[0] !== record.requesterDid || p.actors[1] !== this.owner.did || p.phase !== record.auditStage ||
258
+ p.seq !== 1 || p.acknowledgedPrefix.count !== 1 || p.acknowledgedPrefix.lastSeq !== 0 ||
259
+ p.prevEntryHash !== p.acknowledgedPrefix.head || p.observedAt !== closure.interruption.signature.signedAt)
260
+ throw new Error();
261
+ }
262
+ catch {
263
+ throw new Error('INVALID_TASK_JOURNAL');
264
+ }
265
+ }
266
+ if (record.delegation !== undefined)
267
+ validateTaskDelegation(record.delegation, record.taskId, record.requesterDid, this.owner.did);
245
268
  return record;
246
269
  }
247
270
  open(flags) {
@@ -298,6 +321,8 @@ export class TaskJournal {
298
321
  save(record) {
299
322
  this.load();
300
323
  const snapshot = JSON.parse(JSON.stringify(record));
324
+ if (snapshot.delegation !== undefined)
325
+ validateTaskDelegation(snapshot.delegation, snapshot.taskId, snapshot.requesterDid, this.owner.did);
301
326
  const line = Buffer.from(JSON.stringify(signPayload(snapshot, this.owner)) + '\n');
302
327
  if (line.length > this.maxRecordBytes)
303
328
  throw new Error('OUTBOX_FULL');
@@ -1 +1 @@
1
- {"version":3,"file":"task-journal.js","sourceRoot":"","sources":["../src/task-journal.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"task-journal.js","sourceRoot":"","sources":["../src/task-journal.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { Json, KeyPair, Signed, SignedEnvelope, TaskContract, ApprovalReceipt, UsageReceipt } from '../../core/dist/index.js';
1
+ import type { DelegationAttachment, Json, KeyPair, Signed, SignedEnvelope, TaskContract, ApprovalReceipt, UsageReceipt } from '../../core/dist/index.js';
2
2
  import type { SandboxBoundaryMetadata } from '../../sandbox/dist/index.js';
3
3
  import { ApprovalGate } from './policy.js';
4
4
  export interface ContentArtifact {
@@ -25,6 +25,7 @@ export interface Attestation {
25
25
  sandboxBoundary?: SandboxBoundaryMetadata;
26
26
  }
27
27
  export interface Delivery {
28
+ delegation?: DelegationAttachment;
28
29
  artifact: Signed<ContentArtifact>;
29
30
  usage: UsageReceipt;
30
31
  attestation: Signed<Attestation>;
@@ -32,7 +33,7 @@ export interface Delivery {
32
33
  export declare function createDelivery(taskId: string, contractDigest: string, data: Json, usage: UsageReceipt, worker: KeyPair, execution?: {
33
34
  effectiveIsolationLevel: string;
34
35
  sandboxBoundary?: SandboxBoundaryMetadata;
35
- }): Delivery;
36
+ }, delegation?: DelegationAttachment): Delivery;
36
37
  export interface VerificationResult {
37
38
  accepted: boolean;
38
39
  event: 'VERIFY_ACCEPT' | 'VERIFY_REJECT';
@@ -51,6 +52,7 @@ export interface VerifyDeliverableInput {
51
52
  approval?: ApprovalReceipt | (() => Promise<ApprovalReceipt>);
52
53
  recipient?: KeyPair;
53
54
  allowUnencryptedEnvelopes?: boolean;
55
+ ownerDecision?: true;
54
56
  }
55
57
  export declare class VerificationEngine {
56
58
  private readonly options;
@@ -61,5 +63,6 @@ export declare class VerificationEngine {
61
63
  verify(contract: TaskContract, envelope: SignedEnvelope, gate: ApprovalGate, approval?: ApprovalReceipt | (() => Promise<ApprovalReceipt>), recipient?: KeyPair, verifyOptions?: {
62
64
  allowUnencryptedEnvelopes?: boolean;
63
65
  onVerifiedDelivery?: () => void;
66
+ ownerDecision?: true;
64
67
  }): Promise<VerificationResult>;
65
68
  }
@@ -2,10 +2,12 @@
2
2
  // Adapted from newtro/delegateos src/core/verification.ts (MIT), Scott Smith.
3
3
  import { digest, isEncryptedEnvelopePayload, openEnvelope, signPayload, verifySigned, verifyEnvelope, validateOutput, verifyContract, } from '../../core/dist/index.js';
4
4
  import { runSandbox } from '../../sandbox/dist/index.js';
5
+ import { verifyDelegationAttachment } from './delegation.js';
5
6
  import { verifyUsage } from './quota.js';
6
- export function createDelivery(taskId, contractDigest, data, usage, worker, execution) {
7
+ export function createDelivery(taskId, contractDigest, data, usage, worker, execution, delegation) {
7
8
  const artifact = signPayload({ type: 'Artifact', taskId, name: 'report.json', digest: digest(data), data }, worker);
8
9
  return {
10
+ ...(delegation !== undefined ? { delegation: structuredClone(delegation) } : {}),
9
11
  artifact,
10
12
  usage,
11
13
  attestation: signPayload({
@@ -30,9 +32,9 @@ export class VerificationEngine {
30
32
  this.checks.set(target, code);
31
33
  }
32
34
  verifyDeliverable(input) {
33
- return this.verify(input.contract, input.envelope, input.gate, input.approval, input.recipient, input.allowUnencryptedEnvelopes === undefined
34
- ? undefined
35
- : { allowUnencryptedEnvelopes: input.allowUnencryptedEnvelopes });
35
+ return this.verify(input.contract, input.envelope, input.gate, input.approval, input.recipient, input.ownerDecision === undefined
36
+ ? input.allowUnencryptedEnvelopes === undefined ? undefined : { allowUnencryptedEnvelopes: input.allowUnencryptedEnvelopes }
37
+ : { allowUnencryptedEnvelopes: input.allowUnencryptedEnvelopes, ownerDecision: input.ownerDecision });
36
38
  }
37
39
  async verify(contract, envelope, gate, approval, recipient, verifyOptions) {
38
40
  const stages = [];
@@ -65,6 +67,14 @@ export class VerificationEngine {
65
67
  d.attestation.payload.artifactDigest !== d.artifact.payload.digest ||
66
68
  !verifyUsage(d.usage, worker, m.taskId, m.budget))
67
69
  throw new Error('CRYPTO_ARTIFACT_OR_BUDGET');
70
+ if (m.contextGrant) {
71
+ verifyDelegationAttachment(d.delegation, contract);
72
+ if (m.permissions.maxDelegationDepth === 1) {
73
+ stages.push('delegation_chain');
74
+ if (verifyOptions?.ownerDecision !== true)
75
+ throw new Error('DELEGATION_APPROVAL_REQUIRED');
76
+ }
77
+ }
68
78
  // `subprocess_restricted` is not accepted for an `oci_container` contract.
69
79
  // Node's permission model does not provide that kernel boundary, and a
70
80
  // `sandboxBoundary` object cannot upgrade `effectiveIsolationLevel`.
@@ -1 +1 @@
1
- {"version":3,"file":"verifier.js","sourceRoot":"","sources":["../src/verifier.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"verifier.js","sourceRoot":"","sources":["../src/verifier.ts"],"names":[],"mappings":"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"}
@@ -56,7 +56,31 @@
56
56
  "minLength": 1
57
57
  },
58
58
  "payload": {}
59
- }
59
+ },
60
+ "allOf": [
61
+ {
62
+ "if": {
63
+ "properties": {
64
+ "eventType": {
65
+ "enum": [
66
+ "CONTEXT_GRANT",
67
+ "CONTEXT_OPENED",
68
+ "CONTEXT_DISCARDED",
69
+ "CONTEXT_DELETION_ATTEMPTED",
70
+ "CONTEXT_MODE"
71
+ ]
72
+ }
73
+ }
74
+ },
75
+ "then": {
76
+ "properties": {
77
+ "payload": {
78
+ "$ref": "https://acp-spec.local/schemas/v0.2/context-grant-audit-payload.schema.json"
79
+ }
80
+ }
81
+ }
82
+ }
83
+ ]
60
84
  },
61
85
  "entryHash": {
62
86
  "type": "string",
@@ -0,0 +1,179 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://acp-spec.local/schemas/v0.1/audit-evidence.schema.json",
4
+ "title": "audit-evidence",
5
+ "oneOf": [
6
+ {
7
+ "type": "object",
8
+ "additionalProperties": false,
9
+ "required": [
10
+ "entries",
11
+ "checkpoint"
12
+ ],
13
+ "properties": {
14
+ "entries": {
15
+ "type": "array",
16
+ "items": {
17
+ "$ref": "https://acp-spec.local/schemas/v0.1/audit-entry.schema.json"
18
+ }
19
+ },
20
+ "checkpoint": {
21
+ "type": "object",
22
+ "additionalProperties": false,
23
+ "required": [
24
+ "actor",
25
+ "receiver"
26
+ ],
27
+ "properties": {
28
+ "actor": {
29
+ "type": "object",
30
+ "additionalProperties": false,
31
+ "required": [
32
+ "payload",
33
+ "signature"
34
+ ],
35
+ "properties": {
36
+ "payload": {
37
+ "type": "object",
38
+ "additionalProperties": false,
39
+ "required": [
40
+ "type",
41
+ "taskId",
42
+ "count",
43
+ "head",
44
+ "actors"
45
+ ],
46
+ "properties": {
47
+ "type": {
48
+ "const": "AuditCheckpoint"
49
+ },
50
+ "taskId": {
51
+ "type": "string",
52
+ "minLength": 1
53
+ },
54
+ "count": {
55
+ "type": "integer",
56
+ "minimum": 0
57
+ },
58
+ "head": {
59
+ "anyOf": [
60
+ {
61
+ "type": "string",
62
+ "pattern": "^sha256:[a-f0-9]{64}$"
63
+ },
64
+ {
65
+ "type": "null"
66
+ }
67
+ ]
68
+ },
69
+ "actors": {
70
+ "type": "array",
71
+ "minItems": 2,
72
+ "maxItems": 2,
73
+ "items": {
74
+ "type": "string",
75
+ "pattern": "^did:key:z[1-9A-HJ-NP-Za-km-z]{32,128}$"
76
+ }
77
+ }
78
+ }
79
+ },
80
+ "signature": {
81
+ "$ref": "https://acp-spec.local/schemas/v0.1/audit-entry.schema.json#/properties/actorSignature"
82
+ }
83
+ }
84
+ },
85
+ "receiver": {
86
+ "type": "object",
87
+ "additionalProperties": false,
88
+ "required": [
89
+ "payload",
90
+ "signature"
91
+ ],
92
+ "properties": {
93
+ "payload": {
94
+ "type": "object",
95
+ "additionalProperties": false,
96
+ "required": [
97
+ "payload",
98
+ "signature"
99
+ ],
100
+ "properties": {
101
+ "payload": {
102
+ "type": "object",
103
+ "additionalProperties": false,
104
+ "required": [
105
+ "type",
106
+ "taskId",
107
+ "count",
108
+ "head",
109
+ "actors"
110
+ ],
111
+ "properties": {
112
+ "type": {
113
+ "const": "AuditCheckpoint"
114
+ },
115
+ "taskId": {
116
+ "type": "string",
117
+ "minLength": 1
118
+ },
119
+ "count": {
120
+ "type": "integer",
121
+ "minimum": 0
122
+ },
123
+ "head": {
124
+ "anyOf": [
125
+ {
126
+ "type": "string",
127
+ "pattern": "^sha256:[a-f0-9]{64}$"
128
+ },
129
+ {
130
+ "type": "null"
131
+ }
132
+ ]
133
+ },
134
+ "actors": {
135
+ "type": "array",
136
+ "minItems": 2,
137
+ "maxItems": 2,
138
+ "items": {
139
+ "type": "string",
140
+ "pattern": "^did:key:z[1-9A-HJ-NP-Za-km-z]{32,128}$"
141
+ }
142
+ }
143
+ }
144
+ },
145
+ "signature": {
146
+ "$ref": "https://acp-spec.local/schemas/v0.1/audit-entry.schema.json#/properties/actorSignature"
147
+ }
148
+ }
149
+ },
150
+ "signature": {
151
+ "$ref": "https://acp-spec.local/schemas/v0.1/audit-entry.schema.json#/properties/actorSignature"
152
+ }
153
+ }
154
+ }
155
+ }
156
+ }
157
+ }
158
+ },
159
+ {
160
+ "type": "object",
161
+ "additionalProperties": false,
162
+ "required": [
163
+ "entries",
164
+ "interruption"
165
+ ],
166
+ "properties": {
167
+ "entries": {
168
+ "type": "array",
169
+ "items": {
170
+ "$ref": "https://acp-spec.local/schemas/v0.1/audit-entry.schema.json"
171
+ }
172
+ },
173
+ "interruption": {
174
+ "$ref": "https://acp-spec.local/schemas/v0.1/audit-interruption.schema.json"
175
+ }
176
+ }
177
+ }
178
+ ]
179
+ }
@@ -0,0 +1,177 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://acp-spec.local/schemas/v0.1/audit-file-record.schema.json",
4
+ "title": "audit-file-record",
5
+ "oneOf": [
6
+ {
7
+ "type": "object",
8
+ "additionalProperties": false,
9
+ "required": [
10
+ "entry"
11
+ ],
12
+ "properties": {
13
+ "entry": {
14
+ "$ref": "https://acp-spec.local/schemas/v0.1/audit-entry.schema.json"
15
+ }
16
+ }
17
+ },
18
+ {
19
+ "type": "object",
20
+ "additionalProperties": false,
21
+ "required": [
22
+ "checkpoint"
23
+ ],
24
+ "properties": {
25
+ "checkpoint": {
26
+ "type": "object",
27
+ "additionalProperties": false,
28
+ "required": [
29
+ "actor",
30
+ "receiver"
31
+ ],
32
+ "properties": {
33
+ "actor": {
34
+ "type": "object",
35
+ "additionalProperties": false,
36
+ "required": [
37
+ "payload",
38
+ "signature"
39
+ ],
40
+ "properties": {
41
+ "payload": {
42
+ "type": "object",
43
+ "additionalProperties": false,
44
+ "required": [
45
+ "type",
46
+ "taskId",
47
+ "count",
48
+ "head",
49
+ "actors"
50
+ ],
51
+ "properties": {
52
+ "type": {
53
+ "const": "AuditCheckpoint"
54
+ },
55
+ "taskId": {
56
+ "type": "string",
57
+ "minLength": 1
58
+ },
59
+ "count": {
60
+ "type": "integer",
61
+ "minimum": 0
62
+ },
63
+ "head": {
64
+ "anyOf": [
65
+ {
66
+ "type": "string",
67
+ "pattern": "^sha256:[a-f0-9]{64}$"
68
+ },
69
+ {
70
+ "type": "null"
71
+ }
72
+ ]
73
+ },
74
+ "actors": {
75
+ "type": "array",
76
+ "minItems": 2,
77
+ "maxItems": 2,
78
+ "items": {
79
+ "type": "string",
80
+ "pattern": "^did:key:z[1-9A-HJ-NP-Za-km-z]{32,128}$"
81
+ }
82
+ }
83
+ }
84
+ },
85
+ "signature": {
86
+ "$ref": "https://acp-spec.local/schemas/v0.1/audit-entry.schema.json#/properties/actorSignature"
87
+ }
88
+ }
89
+ },
90
+ "receiver": {
91
+ "type": "object",
92
+ "additionalProperties": false,
93
+ "required": [
94
+ "payload",
95
+ "signature"
96
+ ],
97
+ "properties": {
98
+ "payload": {
99
+ "type": "object",
100
+ "additionalProperties": false,
101
+ "required": [
102
+ "payload",
103
+ "signature"
104
+ ],
105
+ "properties": {
106
+ "payload": {
107
+ "type": "object",
108
+ "additionalProperties": false,
109
+ "required": [
110
+ "type",
111
+ "taskId",
112
+ "count",
113
+ "head",
114
+ "actors"
115
+ ],
116
+ "properties": {
117
+ "type": {
118
+ "const": "AuditCheckpoint"
119
+ },
120
+ "taskId": {
121
+ "type": "string",
122
+ "minLength": 1
123
+ },
124
+ "count": {
125
+ "type": "integer",
126
+ "minimum": 0
127
+ },
128
+ "head": {
129
+ "anyOf": [
130
+ {
131
+ "type": "string",
132
+ "pattern": "^sha256:[a-f0-9]{64}$"
133
+ },
134
+ {
135
+ "type": "null"
136
+ }
137
+ ]
138
+ },
139
+ "actors": {
140
+ "type": "array",
141
+ "minItems": 2,
142
+ "maxItems": 2,
143
+ "items": {
144
+ "type": "string",
145
+ "pattern": "^did:key:z[1-9A-HJ-NP-Za-km-z]{32,128}$"
146
+ }
147
+ }
148
+ }
149
+ },
150
+ "signature": {
151
+ "$ref": "https://acp-spec.local/schemas/v0.1/audit-entry.schema.json#/properties/actorSignature"
152
+ }
153
+ }
154
+ },
155
+ "signature": {
156
+ "$ref": "https://acp-spec.local/schemas/v0.1/audit-entry.schema.json#/properties/actorSignature"
157
+ }
158
+ }
159
+ }
160
+ }
161
+ }
162
+ }
163
+ },
164
+ {
165
+ "type": "object",
166
+ "additionalProperties": false,
167
+ "required": [
168
+ "interruption"
169
+ ],
170
+ "properties": {
171
+ "interruption": {
172
+ "$ref": "https://acp-spec.local/schemas/v0.1/audit-interruption.schema.json"
173
+ }
174
+ }
175
+ }
176
+ ]
177
+ }