@agenticprimitives/provenance 0.0.0-alpha.1 → 0.0.0-alpha.2

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.
@@ -0,0 +1,124 @@
1
+ import type { AgentClass, ProvenanceRecordV1 } from './types.js';
2
+ /** The IRI the discovery indexer gives a Smart Agent in the public KB (`urn:ap:agent:eip155:<chain>:<sa>`),
3
+ * used here so a private run graph and the public graph name the SAME node — joinable by a reader who holds
4
+ * both, never joined inside an engine (spec 356/357). Without a chain id the agent is named by address alone. */
5
+ export declare function agentIri(address: string, chainId?: number): string;
6
+ /** One step of the view (the shape `orchestration.provenanceOf` produces per step). */
7
+ export interface HarnessStepView {
8
+ stepRef: string;
9
+ toolId: string;
10
+ capability?: {
11
+ id: string;
12
+ action: string;
13
+ };
14
+ risk?: string;
15
+ status: string;
16
+ startedAt?: string;
17
+ endedAt?: string;
18
+ authority?: {
19
+ presentedRef: string | null;
20
+ decision: string;
21
+ afterApproval: boolean;
22
+ chain?: {
23
+ accountabilityRoot: string;
24
+ actingAgent: string;
25
+ depth: number;
26
+ chainDigest: string;
27
+ links: Array<{
28
+ ref: string;
29
+ delegator: string;
30
+ delegate: string;
31
+ parentRef: string | null;
32
+ }>;
33
+ };
34
+ };
35
+ actor?: {
36
+ rootPrincipal?: string;
37
+ originatingAgent?: string;
38
+ actingAgent: string;
39
+ };
40
+ receiptDigest?: string;
41
+ inputDigest?: string;
42
+ outputDigest?: string;
43
+ txHash?: string;
44
+ delegatedTo?: string;
45
+ delegatedToRun?: string;
46
+ effects?: Array<{
47
+ produces: string;
48
+ ok: boolean;
49
+ }>;
50
+ decisions?: Array<{
51
+ point: string;
52
+ ruleId: string;
53
+ }>;
54
+ errorClass?: string;
55
+ /** Spec 390 — the span this step's activity is. */
56
+ spanId?: string;
57
+ /** Spec 391 — the step's raw result was offloaded to the acting agent's vault: where, how big, its digest. */
58
+ artifact?: {
59
+ recordType: string;
60
+ digest: string;
61
+ bytes: number;
62
+ };
63
+ }
64
+ /** The whole view — `RunProvenanceV1` from `@agenticprimitives/orchestration`, restated structurally. */
65
+ export interface HarnessRunProvenanceInput {
66
+ runRef: string;
67
+ /** ISO — when the run ended. */
68
+ endedAt: string;
69
+ /** The agent the run ran at: whose authority was spent, whose vault the record lives in. An address. */
70
+ agent: string;
71
+ agentClass?: AgentClass;
72
+ asker?: string;
73
+ askerClass?: AgentClass;
74
+ intentDigest?: string;
75
+ outcome: string;
76
+ playbook?: {
77
+ skillId: string;
78
+ version: string;
79
+ commitment: string;
80
+ };
81
+ /** Spec 367 §8 — the request this run answered (a routed or handed-off run): the sender's run and step. */
82
+ inResponseTo?: {
83
+ agent: string;
84
+ runRef: string;
85
+ stepRef?: string;
86
+ };
87
+ steps: HarnessStepView[];
88
+ /** The chain the agents live on — names them the way the public KB does. */
89
+ chainId?: number;
90
+ /** Spec 390 — the trace the run's spans belong to, and the run's root span. */
91
+ traceId?: string;
92
+ spanId?: string;
93
+ }
94
+ /** Ids are derived from run and step references, so the same record is the same graph. */
95
+ export declare const harnessIds: {
96
+ run: (runRef: string) => string;
97
+ bundle: (runRef: string) => string;
98
+ step: (runRef: string, stepRef: string) => string;
99
+ plan: (runRef: string) => string;
100
+ planStep: (runRef: string, stepRef: string) => string;
101
+ playbook: (p: {
102
+ skillId: string;
103
+ version: string;
104
+ commitment: string;
105
+ }) => string;
106
+ runtime: (agentIriValue: string) => string;
107
+ mandate: (ref: string) => string;
108
+ receipt: (digest: string) => string;
109
+ tx: (hash: string) => string;
110
+ effect: (runRef: string, stepRef: string, produces: string) => string;
111
+ decision: (runRef: string, stepRef: string, point: string) => string;
112
+ actor: (runRef: string, stepRef: string) => string;
113
+ artifact: (runRef: string, stepRef: string) => string;
114
+ };
115
+ /**
116
+ * Project a harness run into the private A-box: the runtime `actedOnBehalfOf` the agent; the run
117
+ * (`ServiceExecution`) associated with the runtime under its ExecutionPlan and — when a playbook shaped it —
118
+ * with the agent under that playbook; one activity per step that `usedDelegation` its mandate, `used` every
119
+ * chain link by reference, `generated` its receipt, its transaction, its effects and its decisions, and ended
120
+ * in a named completion state; a P-Plan with `isPrecededBy` order; one bundle, `wasInformedBy` the sender's
121
+ * when this run answered another.
122
+ */
123
+ export declare function projectHarnessRunProvenance(input: HarnessRunProvenanceInput): ProvenanceRecordV1;
124
+ //# sourceMappingURL=harness.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"harness.d.ts","sourceRoot":"","sources":["../src/harness.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,UAAU,EAAqD,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAEpH;;kHAEkH;AAClH,wBAAgB,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAGlE;AAED,uFAAuF;AACvF,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE;QACV,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;QAC5B,QAAQ,EAAE,MAAM,CAAC;QACjB,aAAa,EAAE,OAAO,CAAC;QACvB,KAAK,CAAC,EAAE;YAAE,kBAAkB,EAAE,MAAM,CAAC;YAAC,WAAW,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAC;YAAC,WAAW,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,KAAK,CAAC;gBAAE,GAAG,EAAE,MAAM,CAAC;gBAAC,SAAS,EAAE,MAAM,CAAC;gBAAC,QAAQ,EAAE,MAAM,CAAC;gBAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;aAAE,CAAC,CAAA;SAAE,CAAC;KAC/L,CAAC;IACF,KAAK,CAAC,EAAE;QAAE,aAAa,CAAC,EAAE,MAAM,CAAC;QAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAA;KAAE,CAAC;IACnF,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,OAAO,CAAC,EAAE,KAAK,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,EAAE,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;IACnD,SAAS,CAAC,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACrD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,mDAAmD;IACnD,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,8GAA8G;IAC9G,QAAQ,CAAC,EAAE;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;CAClE;AAED,yGAAyG;AACzG,MAAM,WAAW,yBAAyB;IACxC,MAAM,EAAE,MAAM,CAAC;IACf,gCAAgC;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,wGAAwG;IACxG,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC;IACpE,2GAA2G;IAC3G,YAAY,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACnE,KAAK,EAAE,eAAe,EAAE,CAAC;IACzB,4EAA4E;IAC5E,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,+EAA+E;IAC/E,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAQD,0FAA0F;AAC1F,eAAO,MAAM,UAAU;kBACP,MAAM;qBACH,MAAM;mBACR,MAAM,WAAW,MAAM;mBACvB,MAAM;uBACF,MAAM,WAAW,MAAM;kBAC5B;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE;6BAC7C,MAAM;mBAChB,MAAM;sBACH,MAAM;eACb,MAAM;qBACA,MAAM,WAAW,MAAM,YAAY,MAAM;uBACvC,MAAM,WAAW,MAAM,SAAS,MAAM;oBACzC,MAAM,WAAW,MAAM;uBACpB,MAAM,WAAW,MAAM;CAC3C,CAAC;AAEF;;;;;;;GAOG;AACH,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,yBAAyB,GAAG,kBAAkB,CAwHhG"}
@@ -0,0 +1,163 @@
1
+ /** The IRI the discovery indexer gives a Smart Agent in the public KB (`urn:ap:agent:eip155:<chain>:<sa>`),
2
+ * used here so a private run graph and the public graph name the SAME node — joinable by a reader who holds
3
+ * both, never joined inside an engine (spec 356/357). Without a chain id the agent is named by address alone. */
4
+ export function agentIri(address, chainId) {
5
+ const a = address.toLowerCase();
6
+ return chainId ? `urn:ap:agent:eip155:${chainId}:${a}` : `urn:ap:agent:${a}`;
7
+ }
8
+ const COMPLETION = {
9
+ completed: 'Completed', executed: 'Completed', failed: 'Failed', refused: 'Refused', denied: 'Refused',
10
+ skipped: 'Skipped', suspended: 'Suspended',
11
+ };
12
+ const completionOf = (status) => COMPLETION[status] ?? 'Failed';
13
+ /** Ids are derived from run and step references, so the same record is the same graph. */
14
+ export const harnessIds = {
15
+ run: (runRef) => `act:${runRef}`,
16
+ bundle: (runRef) => `bundle:${runRef}`,
17
+ step: (runRef, stepRef) => `act:${runRef}:${stepRef}`,
18
+ plan: (runRef) => `plan:${runRef}`,
19
+ planStep: (runRef, stepRef) => `plan:${runRef}:step:${stepRef}`,
20
+ playbook: (p) => `playbook:${p.skillId}@${p.version}#${p.commitment}`,
21
+ runtime: (agentIriValue) => `runtime:${agentIriValue}`,
22
+ mandate: (ref) => `mandate:${ref}`,
23
+ receipt: (digest) => `receipt:${digest}`,
24
+ tx: (hash) => `tx:${hash}`,
25
+ effect: (runRef, stepRef, produces) => `effect:${runRef}:${stepRef}:${produces}`,
26
+ decision: (runRef, stepRef, point) => `decision:${runRef}:${stepRef}:${point}`,
27
+ actor: (runRef, stepRef) => `actor:${runRef}:${stepRef}`,
28
+ artifact: (runRef, stepRef) => `artifact:${runRef}:${stepRef}`,
29
+ };
30
+ /**
31
+ * Project a harness run into the private A-box: the runtime `actedOnBehalfOf` the agent; the run
32
+ * (`ServiceExecution`) associated with the runtime under its ExecutionPlan and — when a playbook shaped it —
33
+ * with the agent under that playbook; one activity per step that `usedDelegation` its mandate, `used` every
34
+ * chain link by reference, `generated` its receipt, its transaction, its effects and its decisions, and ended
35
+ * in a named completion state; a P-Plan with `isPrecededBy` order; one bundle, `wasInformedBy` the sender's
36
+ * when this run answered another.
37
+ */
38
+ export function projectHarnessRunProvenance(input) {
39
+ const ids = harnessIds;
40
+ const agentId = agentIri(input.agent, input.chainId);
41
+ const runtimeId = ids.runtime(agentId);
42
+ const runId = ids.run(input.runRef);
43
+ const planId = ids.plan(input.runRef);
44
+ const bundleId = ids.bundle(input.runRef);
45
+ const agents = new Map();
46
+ const agent = (id, agentClass) => {
47
+ if (!agents.has(id))
48
+ agents.set(id, { id, ...(agentClass ? { agentClass } : {}) });
49
+ return id;
50
+ };
51
+ agent(agentId, input.agentClass);
52
+ agents.set(runtimeId, { id: runtimeId, kind: 'AgentRuntime', actedOnBehalfOf: agentId });
53
+ const askerId = input.asker ? agent(agentIri(input.asker, input.chainId), input.askerClass) : undefined;
54
+ const entities = [];
55
+ const entity = (e) => { if (!entities.some((x) => x.id === e.id))
56
+ entities.push(e); return e.id; };
57
+ // The plans: the run's own ExecutionPlan (what the planner proposed and the executor received), and the
58
+ // playbook that shaped it (the procedure, pinned by its content commitment).
59
+ const plans = [{
60
+ id: planId, kind: 'ExecutionPlan',
61
+ steps: input.steps.map((s, i) => ({
62
+ id: ids.planStep(input.runRef, s.stepRef), toolId: s.toolId, isStepOfPlan: planId,
63
+ ...(i > 0 ? { isPrecededBy: ids.planStep(input.runRef, input.steps[i - 1].stepRef) } : {}),
64
+ })),
65
+ }];
66
+ const playbookId = input.playbook ? ids.playbook(input.playbook) : undefined;
67
+ if (input.playbook && playbookId)
68
+ plans.push({ id: playbookId, kind: 'Playbook', steps: [], ref: input.playbook.commitment });
69
+ const activities = [];
70
+ const stepIds = [];
71
+ for (const s of input.steps) {
72
+ const stepId = ids.step(input.runRef, s.stepRef);
73
+ stepIds.push(stepId);
74
+ const used = [];
75
+ const generated = [];
76
+ let usedDelegation;
77
+ let accountabilityRoot;
78
+ if (s.authority?.presentedRef) {
79
+ usedDelegation = entity({ id: ids.mandate(s.authority.presentedRef), type: 'Delegation', ref: s.authority.presentedRef });
80
+ }
81
+ for (const link of s.authority?.chain?.links ?? []) {
82
+ const id = entity({ id: ids.mandate(link.ref), type: 'Delegation', ref: link.ref });
83
+ if (id !== usedDelegation)
84
+ used.push(id);
85
+ }
86
+ if (s.authority?.chain?.accountabilityRoot)
87
+ accountabilityRoot = agent(agentIri(s.authority.chain.accountabilityRoot, input.chainId));
88
+ if (s.receiptDigest)
89
+ generated.push(entity({ id: ids.receipt(s.receiptDigest), type: 'StepReceipt', wasGeneratedBy: stepId, ref: s.receiptDigest, wasAttributedTo: agentId }));
90
+ if (s.txHash)
91
+ generated.push(entity({ id: ids.tx(s.txHash), type: 'ChainTransaction', wasGeneratedBy: stepId, ref: s.txHash }));
92
+ for (const e of s.effects ?? [])
93
+ generated.push(entity({ id: ids.effect(input.runRef, s.stepRef, e.produces), type: 'Effect', wasGeneratedBy: stepId, effectProduces: e.produces, effectSucceeded: e.ok }));
94
+ for (const d of s.decisions ?? [])
95
+ generated.push(entity({ id: ids.decision(input.runRef, s.stepRef, d.point), type: 'DecisionRecord', wasGeneratedBy: stepId, decisionPoint: d.point, decisionRule: d.ruleId }));
96
+ if (s.artifact)
97
+ generated.push(entity({ id: ids.artifact(input.runRef, s.stepRef), type: 'RunArtifact', wasGeneratedBy: stepId, ref: s.artifact.recordType, wasAttributedTo: agentId, artifactBytes: s.artifact.bytes, artifactDigest: s.artifact.digest }));
98
+ let actorContext;
99
+ if (s.actor) {
100
+ actorContext = entity({
101
+ id: ids.actor(input.runRef, s.stepRef), type: 'ActorContext',
102
+ actingAgent: agent(agentIri(s.actor.actingAgent, input.chainId)),
103
+ ...(s.actor.originatingAgent ? { originatingAgent: agent(agentIri(s.actor.originatingAgent, input.chainId)) } : {}),
104
+ ...(s.actor.rootPrincipal ? { rootPrincipal: agent(agentIri(s.actor.rootPrincipal, input.chainId)) } : {}),
105
+ });
106
+ }
107
+ const delegatedToAgent = s.delegatedTo ? agent(agentIri(s.delegatedTo, input.chainId)) : undefined;
108
+ const completion = completionOf(s.status);
109
+ activities.push({
110
+ id: stepId, type: 'StepExecution', tier: 'execution-orchestrated',
111
+ startedAt: s.startedAt ?? input.endedAt, ...(s.endedAt ? { endedAt: s.endedAt } : {}),
112
+ wasAssociatedWith: agentId,
113
+ used, ...(usedDelegation ? { usedDelegation } : {}),
114
+ generated,
115
+ correspondsToStep: ids.planStep(input.runRef, s.stepRef),
116
+ ...(playbookId ? { hadPlan: playbookId } : {}),
117
+ ...(completion === 'Failed' || completion === 'Refused' ? { failed: true } : {}),
118
+ completionState: completion,
119
+ ...(s.receiptDigest ? { receiptDigest: s.receiptDigest } : {}),
120
+ ...(s.capability ? { realizesCapability: s.capability.id } : {}),
121
+ ...(s.authority ? { authorityDecision: s.authority.decision, afterApproval: s.authority.afterApproval } : {}),
122
+ ...(s.authority?.chain ? { chainDigest: s.authority.chain.chainDigest } : {}),
123
+ ...(accountabilityRoot ? { accountabilityRoot } : {}),
124
+ ...(actorContext ? { actorContext } : {}),
125
+ ...(delegatedToAgent ? { delegatedToAgent } : {}),
126
+ ...(s.delegatedToRun ? { wasInformedBy: [ids.run(s.delegatedToRun)] } : {}),
127
+ ...(s.errorClass ? { errorClass: s.errorClass } : {}),
128
+ ...(input.traceId ? { traceId: input.traceId } : {}),
129
+ ...(s.spanId ? { spanId: s.spanId } : {}),
130
+ });
131
+ }
132
+ const started = input.steps.map((s) => s.startedAt).filter((x) => !!x).sort()[0] ?? input.endedAt;
133
+ activities.unshift({
134
+ id: runId, type: 'HarnessRun', tier: 'execution-orchestrated',
135
+ startedAt: started, endedAt: input.endedAt,
136
+ wasAssociatedWith: runtimeId,
137
+ used: [], generated: [],
138
+ executionPlan: planId,
139
+ ...(playbookId ? { hadPlan: playbookId, usedPlanContentHash: input.playbook.commitment } : {}),
140
+ hasStep: stepIds,
141
+ runRef: input.runRef,
142
+ ...(input.intentDigest ? { intentDigest: input.intentDigest } : {}),
143
+ completionState: input.outcome === 'completed' ? 'Completed' : input.outcome === 'suspended' ? 'Suspended' : 'Failed',
144
+ ...(input.outcome !== 'completed' && input.outcome !== 'suspended' ? { failed: true } : {}),
145
+ ...(askerId ? { onBehalfOf: askerId } : {}),
146
+ ...(input.inResponseTo ? { wasInformedBy: [ids.run(input.inResponseTo.runRef)] } : {}),
147
+ ...(input.traceId ? { traceId: input.traceId } : {}),
148
+ ...(input.spanId ? { spanId: input.spanId } : {}),
149
+ });
150
+ return {
151
+ version: 'ap.provenance.v1',
152
+ agents: [...agents.values()],
153
+ activities,
154
+ entities,
155
+ plans,
156
+ bundle: {
157
+ id: bundleId,
158
+ wasAttributedTo: agentId,
159
+ ...(input.inResponseTo ? { wasInformedBy: [ids.bundle(input.inResponseTo.runRef)] } : {}),
160
+ },
161
+ };
162
+ }
163
+ //# sourceMappingURL=harness.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"harness.js","sourceRoot":"","sources":["../src/harness.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -4,5 +4,9 @@ export declare const SPEC_REF = "specs/316-agentic-interaction-fabric.md";
4
4
  export type { Tier, AgentClass, ProvAgentRef, ProvActivityType, ProvActivity, ProvEntityType, ProvEntity, PPlanStep, PPlanPlan, ProvenanceRecordV1, } from './types.js';
5
5
  export { projectExchangeProvenance, projectRunProvenance, type ProvenanceExchangeInput, type ProvenanceRunInput, } from './project.js';
6
6
  export { projectEndeavorProvenance, type EndeavorProvenanceInput, type EndeavorRequestInput, type EndeavorPlanRevisionInput, type EndeavorStepExecutionInput, type EndeavorAttestationInput, } from './endeavor.js';
7
+ export { projectHarnessRunProvenance, agentIri, harnessIds, type HarnessRunProvenanceInput, type HarnessStepView } from './harness.js';
8
+ export { toJsonLd, toProvN, iriOf, PROV_ID_BASE, type JsonLdOptions } from './serialize.js';
7
9
  export { isPublicProjectionSafe, assertPublicProjectionSafe, type PublicProvenanceRow, type FirewallResult, } from './firewall.js';
10
+ export { projectPublicProvenance } from './public.js';
11
+ export type { PublicProvenanceRowV1, PublicProvenanceProjection } from './public.js';
8
12
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,YAAY,kCAAkC,CAAC;AAC5D,eAAO,MAAM,cAAc,EAAG,cAAuB,CAAC;AACtD,eAAO,MAAM,QAAQ,4CAA4C,CAAC;AAElE,YAAY,EACV,IAAI,EACJ,UAAU,EACV,YAAY,EACZ,gBAAgB,EAChB,YAAY,EACZ,cAAc,EACd,UAAU,EACV,SAAS,EACT,SAAS,EACT,kBAAkB,GACnB,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,yBAAyB,EACzB,oBAAoB,EACpB,KAAK,uBAAuB,EAC5B,KAAK,kBAAkB,GACxB,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,yBAAyB,EACzB,KAAK,uBAAuB,EAC5B,KAAK,oBAAoB,EACzB,KAAK,yBAAyB,EAC9B,KAAK,0BAA0B,EAC/B,KAAK,wBAAwB,GAC9B,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,sBAAsB,EACtB,0BAA0B,EAC1B,KAAK,mBAAmB,EACxB,KAAK,cAAc,GACpB,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,YAAY,kCAAkC,CAAC;AAC5D,eAAO,MAAM,cAAc,EAAG,cAAuB,CAAC;AACtD,eAAO,MAAM,QAAQ,4CAA4C,CAAC;AAElE,YAAY,EACV,IAAI,EACJ,UAAU,EACV,YAAY,EACZ,gBAAgB,EAChB,YAAY,EACZ,cAAc,EACd,UAAU,EACV,SAAS,EACT,SAAS,EACT,kBAAkB,GACnB,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,yBAAyB,EACzB,oBAAoB,EACpB,KAAK,uBAAuB,EAC5B,KAAK,kBAAkB,GACxB,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,yBAAyB,EACzB,KAAK,uBAAuB,EAC5B,KAAK,oBAAoB,EACzB,KAAK,yBAAyB,EAC9B,KAAK,0BAA0B,EAC/B,KAAK,wBAAwB,GAC9B,MAAM,eAAe,CAAC;AAGvB,OAAO,EAAE,2BAA2B,EAAE,QAAQ,EAAE,UAAU,EAAE,KAAK,yBAAyB,EAAE,KAAK,eAAe,EAAE,MAAM,cAAc,CAAC;AACvI,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAE5F,OAAO,EACL,sBAAsB,EACtB,0BAA0B,EAC1B,KAAK,mBAAmB,EACxB,KAAK,cAAc,GACpB,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AACtD,YAAY,EAAE,qBAAqB,EAAE,0BAA0B,EAAE,MAAM,aAAa,CAAC"}
package/dist/index.js CHANGED
@@ -6,5 +6,10 @@ export const PACKAGE_STATUS = 'w5-projector';
6
6
  export const SPEC_REF = 'specs/316-agentic-interaction-fabric.md';
7
7
  export { projectExchangeProvenance, projectRunProvenance, } from './project.js';
8
8
  export { projectEndeavorProvenance, } from './endeavor.js';
9
+ // Spec 389 — the harness run as the same graph, and the two serializations every record leaves in.
10
+ export { projectHarnessRunProvenance, agentIri, harnessIds } from './harness.js';
11
+ export { toJsonLd, toProvN, iriOf, PROV_ID_BASE } from './serialize.js';
9
12
  export { isPublicProjectionSafe, assertPublicProjectionSafe, } from './firewall.js';
13
+ // Spec 395 — the public projection: anchored outcomes only, through S1.
14
+ export { projectPublicProvenance } from './public.js';
10
15
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,4GAA4G;AAC5G,8GAA8G;AAC9G,mEAAmE;AACnE,MAAM,CAAC,MAAM,YAAY,GAAG,+BAA+B,CAAC;AAC5D,MAAM,CAAC,MAAM,cAAc,GAAG,cAAuB,CAAC;AACtD,MAAM,CAAC,MAAM,QAAQ,GAAG,yCAAyC,CAAC;AAelE,OAAO,EACL,yBAAyB,EACzB,oBAAoB,GAGrB,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,yBAAyB,GAM1B,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,sBAAsB,EACtB,0BAA0B,GAG3B,MAAM,eAAe,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,4GAA4G;AAC5G,8GAA8G;AAC9G,mEAAmE;AACnE,MAAM,CAAC,MAAM,YAAY,GAAG,+BAA+B,CAAC;AAC5D,MAAM,CAAC,MAAM,cAAc,GAAG,cAAuB,CAAC;AACtD,MAAM,CAAC,MAAM,QAAQ,GAAG,yCAAyC,CAAC;AAelE,OAAO,EACL,yBAAyB,EACzB,oBAAoB,GAGrB,MAAM,cAAc,CAAC;AAEtB,OAAO,EACL,yBAAyB,GAM1B,MAAM,eAAe,CAAC;AAEvB,mGAAmG;AACnG,OAAO,EAAE,2BAA2B,EAAE,QAAQ,EAAE,UAAU,EAAwD,MAAM,cAAc,CAAC;AACvI,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,YAAY,EAAsB,MAAM,gBAAgB,CAAC;AAE5F,OAAO,EACL,sBAAsB,EACtB,0BAA0B,GAG3B,MAAM,eAAe,CAAC;AACvB,wEAAwE;AACxE,OAAO,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC"}
@@ -0,0 +1,34 @@
1
+ import type { ProvenanceRecordV1 } from './types.js';
2
+ /** One anchored outcome of a run, safe for anyone to read. The ids are the private graph's IRIs. */
3
+ export interface PublicProvenanceRowV1 {
4
+ type: 'AnchoredOutcome';
5
+ '@id': string;
6
+ run: string;
7
+ /** The chain transaction the step left — the anchor. */
8
+ anchoredBy: string;
9
+ assurance: 'OnchainConfirmed';
10
+ receiptDigest?: string;
11
+ /** The mandate the step presented, by hash — a counterparty checks its revocation state on the chain. */
12
+ mandate?: string;
13
+ chainDigest?: string;
14
+ intentDigest?: string;
15
+ /** The playbook's content commitment (never its author). */
16
+ playbook?: string;
17
+ capability?: string;
18
+ completionState: string;
19
+ endedAt?: string;
20
+ }
21
+ export interface PublicProvenanceProjection {
22
+ rows: PublicProvenanceRowV1[];
23
+ /** Every step activity that was NOT projected, and the firewall's or the anchor rule's reason. */
24
+ refused: Array<{
25
+ activity: string;
26
+ reason: string;
27
+ }>;
28
+ }
29
+ /**
30
+ * Project the anchored outcomes of a run. Pure. A candidate that the S1 firewall refuses, or whose JSON carries
31
+ * anything that looks like an address, is refused with the reason — never trimmed into shape.
32
+ */
33
+ export declare function projectPublicProvenance(record: ProvenanceRecordV1): PublicProvenanceProjection;
34
+ //# sourceMappingURL=public.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"public.d.ts","sourceRoot":"","sources":["../src/public.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,kBAAkB,EAA4B,MAAM,YAAY,CAAC;AAE/E,oGAAoG;AACpG,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,iBAAiB,CAAC;IACxB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,wDAAwD;IACxD,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,kBAAkB,CAAC;IAC9B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,yGAAyG;IACzG,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,4DAA4D;IAC5D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,EAAE,MAAM,CAAC;IACxB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,0BAA0B;IACzC,IAAI,EAAE,qBAAqB,EAAE,CAAC;IAC9B,kGAAkG;IAClG,OAAO,EAAE,KAAK,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CACtD;AAID;;;GAGG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,kBAAkB,GAAG,0BAA0B,CA0C9F"}
package/dist/public.js ADDED
@@ -0,0 +1,67 @@
1
+ // THE PUBLIC PROJECTION — spec 395. What a run LEFT ON THE CHAIN may be cited in public; what it was ABOUT may
2
+ // not. One row per step that generated a `ChainTransaction`: the transaction is the anchor (`apvr:anchoredBy`,
3
+ // assurance OnchainConfirmed — the harness records a hash only from a mined receipt), and the row carries DIGESTS
4
+ // AND IDS ONLY: the run and step IRIs (derived from the run reference — correlation, never trust), the receipt
5
+ // digest, the chain digest, the intent digest, the playbook commitment, the capability id, the completion state.
6
+ // NO AGENT, NO ATTRIBUTION, NO actedOnBehalfOf, NO ARGUMENT, NO RESULT, NO WORDS, NO ADDRESS. Every row passes the
7
+ // S1 firewall before it leaves; a step without an anchor is refused BY NAME and nothing of it is emitted.
8
+ //
9
+ // Served by the acting agent to anyone; never written into the discovery KB (ADR-0040: the indexer is the only
10
+ // writer). A counterparty verifies by RECOMPUTING — the receipt they hold hashes to the digest the row names, the
11
+ // transaction exists on chain, the run id is the one their receipt's hasProvenance named. No gate reads a row.
12
+ import { isPublicProjectionSafe } from './firewall.js';
13
+ const ADDRESS = /0x[0-9a-f]{40}(?![0-9a-f])/i;
14
+ /**
15
+ * Project the anchored outcomes of a run. Pure. A candidate that the S1 firewall refuses, or whose JSON carries
16
+ * anything that looks like an address, is refused with the reason — never trimmed into shape.
17
+ */
18
+ export function projectPublicProvenance(record) {
19
+ const rows = [];
20
+ const refused = [];
21
+ const run = record.activities.find((a) => a.type === 'HarnessRun');
22
+ const entities = new Map(record.entities.map((e) => [e.id, e]));
23
+ const playbook = run?.usedPlanContentHash;
24
+ for (const step of record.activities.filter((a) => a.type === 'StepExecution')) {
25
+ const tx = step.generated.map((id) => entities.get(id)).find((e) => !!e && e.type === 'ChainTransaction');
26
+ const candidate = {
27
+ type: 'AnchoredOutcome',
28
+ ...(tx?.ref ? { anchoredBy: tx.ref.toLowerCase() } : {}),
29
+ assurance: tx ? 'OnchainConfirmed' : 'Asserted',
30
+ properties: {
31
+ run: run?.id ?? '', step: step.id,
32
+ ...(step.receiptDigest ? { receiptDigest: step.receiptDigest } : {}),
33
+ ...(step.usedDelegation && entities.get(step.usedDelegation)?.ref ? { mandate: entities.get(step.usedDelegation).ref.toLowerCase() } : {}),
34
+ ...(step.chainDigest ? { chainDigest: step.chainDigest } : {}),
35
+ ...(run?.intentDigest ? { intentDigest: run.intentDigest } : {}),
36
+ ...(playbook ? { playbook } : {}),
37
+ ...(step.realizesCapability ? { capability: step.realizesCapability } : {}),
38
+ completionState: step.completionState ?? 'Completed',
39
+ ...(step.endedAt ? { endedAt: step.endedAt } : {}),
40
+ },
41
+ };
42
+ const verdict = isPublicProjectionSafe(candidate);
43
+ if (!verdict.ok) {
44
+ refused.push({ activity: step.id, reason: verdict.reason });
45
+ continue;
46
+ }
47
+ const row = {
48
+ type: 'AnchoredOutcome', '@id': step.id, run: candidate.properties.run, anchoredBy: candidate.anchoredBy, assurance: 'OnchainConfirmed',
49
+ ...(candidate.properties.receiptDigest ? { receiptDigest: candidate.properties.receiptDigest } : {}),
50
+ ...(candidate.properties.mandate ? { mandate: candidate.properties.mandate } : {}),
51
+ ...(candidate.properties.chainDigest ? { chainDigest: candidate.properties.chainDigest } : {}),
52
+ ...(candidate.properties.intentDigest ? { intentDigest: candidate.properties.intentDigest } : {}),
53
+ ...(candidate.properties.playbook ? { playbook: candidate.properties.playbook } : {}),
54
+ ...(candidate.properties.capability ? { capability: candidate.properties.capability } : {}),
55
+ completionState: candidate.properties.completionState,
56
+ ...(candidate.properties.endedAt ? { endedAt: candidate.properties.endedAt } : {}),
57
+ };
58
+ // The last line: nothing that looks like an agent's address leaves, whatever field it hid in.
59
+ if (ADDRESS.test(JSON.stringify(row))) {
60
+ refused.push({ activity: step.id, reason: 'address_literal' });
61
+ continue;
62
+ }
63
+ rows.push(row);
64
+ }
65
+ return { rows, refused };
66
+ }
67
+ //# sourceMappingURL=public.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"public.js","sourceRoot":"","sources":["../src/public.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ import type { ProvenanceRecordV1 } from './types.js';
2
+ export declare const PROV_ID_BASE = "urn:ap:prov:";
3
+ /** A record id as an IRI: an absolute IRI (`urn:`, `https:`, `did:`) stays; an address becomes an agent IRI;
4
+ * anything else resolves under the record base. */
5
+ export declare function iriOf(id: string, chainId?: number): string;
6
+ export interface JsonLdOptions {
7
+ /** The `@context` value: the published context object, or its URL. */
8
+ context: Record<string, unknown> | string;
9
+ /** Names agents the way the public KB does when known. */
10
+ chainId?: number;
11
+ }
12
+ type Node = Record<string, unknown>;
13
+ /** A JSON-LD 1.1 document: the bundle as a named graph whose members are `@graph`. */
14
+ export declare function toJsonLd(record: ProvenanceRecordV1, opts: JsonLdOptions): Node;
15
+ /** PROV-N (W3C Recommendation) — the text notation, one statement per line. Qualified names use the same
16
+ * prefixes the JSON-LD context declares. */
17
+ export declare function toProvN(record: ProvenanceRecordV1, opts?: {
18
+ chainId?: number;
19
+ }): string;
20
+ export {};
21
+ //# sourceMappingURL=serialize.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"serialize.d.ts","sourceRoot":"","sources":["../src/serialize.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAuF,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAE1I,eAAO,MAAM,YAAY,iBAAiB,CAAC;AAE3C;oDACoD;AACpD,wBAAgB,KAAK,CAAC,EAAE,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAI1D;AAwBD,MAAM,WAAW,aAAa;IAC5B,sEAAsE;IACtE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC;IAC1C,0DAA0D;IAC1D,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,KAAK,IAAI,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAEpC,sFAAsF;AACtF,wBAAgB,QAAQ,CAAC,MAAM,EAAE,kBAAkB,EAAE,IAAI,EAAE,aAAa,GAAG,IAAI,CAkF9E;AAED;6CAC6C;AAC7C,wBAAgB,OAAO,CAAC,MAAM,EAAE,kBAAkB,EAAE,IAAI,GAAE;IAAE,OAAO,CAAC,EAAE,MAAM,CAAA;CAAO,GAAG,MAAM,CAqE3F"}
@@ -0,0 +1,211 @@
1
+ export const PROV_ID_BASE = 'urn:ap:prov:';
2
+ /** A record id as an IRI: an absolute IRI (`urn:`, `https:`, `did:`) stays; an address becomes an agent IRI;
3
+ * anything else resolves under the record base. */
4
+ export function iriOf(id, chainId) {
5
+ if (/^(urn|https?|did):/i.test(id))
6
+ return id;
7
+ if (/^0x[0-9a-f]{40}$/i.test(id))
8
+ return chainId ? `urn:ap:agent:eip155:${chainId}:${id.toLowerCase()}` : `urn:ap:agent:${id.toLowerCase()}`;
9
+ return `${PROV_ID_BASE}${id}`;
10
+ }
11
+ /** The class terms (as the context names them) for each activity type. */
12
+ const ACTIVITY_TYPES = {
13
+ CommunicationDelivery: ['Activity', 'CommunicationDelivery'],
14
+ IntentInvocation: ['Activity', 'IntentInvocation'],
15
+ OrchestratedTask: ['Activity', 'OrchestratedTask'],
16
+ EndeavorAdoption: ['Activity'],
17
+ PlanProposal: ['Activity'],
18
+ PlanAdoption: ['Activity'],
19
+ StepExecution: ['Activity'],
20
+ HarnessRun: ['Activity', 'ServiceExecution'],
21
+ };
22
+ const ENTITY_TYPES = {
23
+ Message: ['Entity'], Artifact: ['Entity'], DecisionArtifact: ['Entity'], EndeavorRequest: ['Entity'],
24
+ OutcomeSpecification: ['Entity'], PlanRevision: ['Entity', 'Plan', 'CoordinationPlan'], ExecutionPlan: ['Entity', 'Plan', 'ExecutionPlan'],
25
+ Attestation: ['Entity'], Delegation: ['Entity', 'Delegation'], Playbook: ['Entity', 'Plan', 'AgentSkillPackage'],
26
+ StepReceipt: ['Entity', 'StepReceipt'], ChainTransaction: ['Entity', 'ChainTransaction'], Effect: ['Entity', 'Effect'],
27
+ DecisionRecord: ['Entity', 'DecisionRecord'], ActorContext: ['Entity', 'ActorContext'], RunArtifact: ['Entity', 'RunArtifact'],
28
+ };
29
+ const PLAN_TYPES = {
30
+ Plan: ['Entity', 'Plan'], ExecutionPlan: ['Entity', 'Plan', 'ExecutionPlan'], Playbook: ['Entity', 'Plan', 'AgentSkillPackage'], CoordinationPlan: ['Entity', 'Plan', 'CoordinationPlan'],
31
+ };
32
+ /** A JSON-LD 1.1 document: the bundle as a named graph whose members are `@graph`. */
33
+ export function toJsonLd(record, opts) {
34
+ const iri = (id) => iriOf(id, opts.chainId);
35
+ const iris = (ids) => (ids?.length ? ids.map(iri) : undefined);
36
+ const drop = (o) => Object.fromEntries(Object.entries(o).filter(([, v]) => v !== undefined && !(Array.isArray(v) && v.length === 0)));
37
+ const agentNode = (a) => drop({
38
+ id: iri(a.id),
39
+ type: a.kind === 'AgentRuntime' ? ['SoftwareAgent', 'AgentRuntime'] : ['Agent', ...(a.agentClass === 'person' ? ['Person'] : a.agentClass === 'org' ? ['Organization'] : a.agentClass === 'service' ? ['SoftwareAgent'] : [])],
40
+ actedOnBehalfOf: a.actedOnBehalfOf ? iri(a.actedOnBehalfOf) : undefined,
41
+ });
42
+ const activityNode = (a) => {
43
+ const types = [...ACTIVITY_TYPES[a.type]];
44
+ if (a.type === 'StepExecution' && a.hadPlan)
45
+ types.push('SkillExecution');
46
+ if (a.failed)
47
+ types.push('FailedActivity');
48
+ const associations = [];
49
+ if (a.hadPlan || a.hadRole)
50
+ associations.push(drop({ type: 'Association', agent: iri(a.wasAssociatedWith), hadPlan: a.hadPlan ? iri(a.hadPlan) : undefined, hadRole: a.hadRole ? iri(a.hadRole) : undefined }));
51
+ if (a.executionPlan)
52
+ associations.push({ type: 'Association', agent: iri(a.wasAssociatedWith), hadPlan: iri(a.executionPlan) });
53
+ return drop({
54
+ id: iri(a.id), type: types,
55
+ startedAtTime: a.startedAt, endedAtTime: a.endedAt, endedAt: a.endedAt,
56
+ wasAssociatedWith: iri(a.wasAssociatedWith),
57
+ qualifiedAssociation: associations.length ? associations : undefined,
58
+ actedOnBehalfOf: a.onBehalfOf ? iri(a.onBehalfOf) : undefined,
59
+ used: iris(a.used), usedDelegation: a.usedDelegation ? iri(a.usedDelegation) : undefined,
60
+ generated: iris(a.generated),
61
+ wasInformedBy: iris(a.wasInformedBy),
62
+ correspondsToStep: a.correspondsToStep ? iri(a.correspondsToStep) : undefined,
63
+ hasStep: iris(a.hasStep),
64
+ runRef: a.runRef, intentDigest: a.intentDigest,
65
+ completionState: a.completionState,
66
+ receiptDigest: a.receiptDigest, usedPlanContentHash: a.usedPlanContentHash,
67
+ realizesCapability: a.realizesCapability ? (/^(urn|https?):/.test(a.realizesCapability) ? a.realizesCapability : `urn:ap:capability:${a.realizesCapability}`) : undefined,
68
+ authorityDecision: a.authorityDecision, afterApproval: a.afterApproval, chainDigest: a.chainDigest,
69
+ accountabilityRoot: a.accountabilityRoot ? iri(a.accountabilityRoot) : undefined,
70
+ actorContext: a.actorContext ? iri(a.actorContext) : undefined,
71
+ delegatedToAgent: a.delegatedToAgent ? iri(a.delegatedToAgent) : undefined,
72
+ errorClass: a.errorClass,
73
+ traceId: a.traceId, spanId: a.spanId,
74
+ });
75
+ };
76
+ const entityNode = (e) => drop({
77
+ id: iri(e.id), type: ENTITY_TYPES[e.type],
78
+ wasGeneratedBy: e.wasGeneratedBy ? iri(e.wasGeneratedBy) : undefined,
79
+ wasRevisionOf: e.wasRevisionOf ? iri(e.wasRevisionOf) : undefined,
80
+ wasDerivedFrom: iris(e.wasDerivedFrom),
81
+ wasAttributedTo: e.wasAttributedTo ? iri(e.wasAttributedTo) : undefined,
82
+ effectProduces: e.effectProduces, effectSucceeded: e.effectSucceeded,
83
+ decisionPoint: e.decisionPoint, decisionRule: e.decisionRule,
84
+ actingAgent: e.actingAgent ? iri(e.actingAgent) : undefined,
85
+ originatingAgent: e.originatingAgent ? iri(e.originatingAgent) : undefined,
86
+ rootPrincipal: e.rootPrincipal ? iri(e.rootPrincipal) : undefined,
87
+ artifactBytes: e.artifactBytes, artifactDigest: e.artifactDigest,
88
+ });
89
+ const planNodes = (p) => [
90
+ drop({ id: iri(p.id), type: PLAN_TYPES[p.kind ?? 'Plan'] }),
91
+ ...p.steps.map((s) => drop({
92
+ id: iri(s.id), type: ['Step'], isStepOfPlan: iri(s.isStepOfPlan),
93
+ isPrecededBy: s.isPrecededBy ? iri(s.isPrecededBy) : undefined,
94
+ isDecomposedAsPlan: s.isDecomposedAsPlan ? iri(s.isDecomposedAsPlan) : undefined,
95
+ })),
96
+ ];
97
+ const members = [
98
+ ...record.agents.map(agentNode),
99
+ ...record.activities.map(activityNode),
100
+ ...record.entities.map(entityNode),
101
+ ...record.plans.flatMap(planNodes),
102
+ ];
103
+ if (!record.bundle)
104
+ return { '@context': opts.context, graph: members };
105
+ return drop({
106
+ '@context': opts.context,
107
+ id: iri(record.bundle.id),
108
+ type: ['Entity', 'Bundle', 'ExecutionTraceBundle'],
109
+ wasAttributedTo: record.bundle.wasAttributedTo ? iri(record.bundle.wasAttributedTo) : undefined,
110
+ wasInformedBy: iris(record.bundle.wasInformedBy),
111
+ hasTraceElement: members.map((m) => m['id']),
112
+ graph: members,
113
+ });
114
+ }
115
+ /** PROV-N (W3C Recommendation) — the text notation, one statement per line. Qualified names use the same
116
+ * prefixes the JSON-LD context declares. */
117
+ export function toProvN(record, opts = {}) {
118
+ const iri = (id) => `<${iriOf(id, opts.chainId)}>`;
119
+ const q = (s) => `"${s.replace(/\\/g, '\\\\').replace(/"/g, '\\"')}"`;
120
+ const attrs = (o) => {
121
+ const kv = Object.entries(o).filter(([, v]) => v !== undefined).map(([k, v]) => `${k}=${typeof v === 'boolean' ? `"${v}" %% xsd:boolean` : q(String(v))}`);
122
+ return kv.length ? `, [${kv.join(', ')}]` : '';
123
+ };
124
+ const lines = [
125
+ 'document',
126
+ ' prefix prov <http://www.w3.org/ns/prov#>',
127
+ ' prefix p-plan <http://purl.org/net/p-plan#>',
128
+ ' prefix ep-plan <https://w3id.org/ep-plan#>',
129
+ ' prefix xsd <http://www.w3.org/2001/XMLSchema#>',
130
+ ' prefix ap <https://agenticprimitives.dev/ns/core#>',
131
+ ' prefix apexec <https://agenticprimitives.dev/ns/execution#>',
132
+ ' prefix apactor <https://agenticprimitives.dev/ns/actor#>',
133
+ ' prefix apguide <https://agenticprimitives.dev/ns/guidance#>',
134
+ ' prefix apdel <https://agenticprimitives.dev/ns/delegation#>',
135
+ ' prefix apvr <https://agenticprimitives.dev/ns/verification-receipt#>',
136
+ ];
137
+ const body = [];
138
+ const indent = record.bundle ? ' ' : ' ';
139
+ for (const a of record.agents) {
140
+ body.push(`${indent}agent(${iri(a.id)}${attrs({ 'prov:type': a.kind === 'AgentRuntime' ? 'apexec:AgentRuntime' : a.agentClass === 'person' ? 'prov:Person' : a.agentClass === 'org' ? 'prov:Organization' : a.agentClass === 'service' ? 'prov:SoftwareAgent' : 'ap:Agent' })})`);
141
+ if (a.actedOnBehalfOf)
142
+ body.push(`${indent}actedOnBehalfOf(${iri(a.id)}, ${iri(a.actedOnBehalfOf)}, -)`);
143
+ }
144
+ for (const a of record.activities) {
145
+ const t = a.type === 'HarnessRun' ? 'apexec:ServiceExecution' : a.type === 'StepExecution' && a.hadPlan ? 'apexec:SkillExecution' : `prov:Activity`;
146
+ body.push(`${indent}activity(${iri(a.id)}, ${a.startedAt}, ${a.endedAt ?? '-'}${attrs({ 'prov:type': t, 'apexec:runRef': a.runRef, 'apexec:intentDigest': a.intentDigest, 'apexec:completionState': a.completionState ? `apexec:${a.completionState}` : undefined, 'apexec:receiptDigest': a.receiptDigest, 'apexec:usedPlanContentHash': a.usedPlanContentHash, 'apexec:authorityDecision': a.authorityDecision, 'apexec:afterApproval': a.afterApproval, 'apexec:chainDigest': a.chainDigest, 'apexec:errorClass': a.errorClass, 'apexec:realizesCapability': a.realizesCapability, 'apexec:traceId': a.traceId, 'apexec:spanId': a.spanId })})`);
147
+ if (a.failed)
148
+ body.push(`${indent}activity(${iri(a.id)}, -, -, [prov:type="ep-plan:FailedActivity"])`);
149
+ body.push(`${indent}wasAssociatedWith(${iri(a.id)}, ${iri(a.wasAssociatedWith)}, ${a.hadPlan ? iri(a.hadPlan) : '-'}${a.hadRole ? `, [prov:role=${q(a.hadRole)}]` : ''})`);
150
+ if (a.executionPlan)
151
+ body.push(`${indent}wasAssociatedWith(${iri(a.id)}, ${iri(a.wasAssociatedWith)}, ${iri(a.executionPlan)})`);
152
+ if (a.onBehalfOf)
153
+ body.push(`${indent}actedOnBehalfOf(${iri(a.wasAssociatedWith)}, ${iri(a.onBehalfOf)}, ${iri(a.id)})`);
154
+ if (a.usedDelegation)
155
+ body.push(`${indent}used(${iri(a.id)}, ${iri(a.usedDelegation)}, -, [prov:type="apvr:usedDelegation"])`);
156
+ for (const u of a.used)
157
+ body.push(`${indent}used(${iri(a.id)}, ${iri(u)}, -)`);
158
+ for (const g of a.generated)
159
+ body.push(`${indent}wasGeneratedBy(${iri(g)}, ${iri(a.id)}, ${a.endedAt ?? '-'})`);
160
+ for (const w of a.wasInformedBy ?? [])
161
+ body.push(`${indent}wasInformedBy(${iri(a.id)}, ${iri(w)})`);
162
+ for (const s of a.hasStep ?? [])
163
+ body.push(`${indent}wasInfluencedBy(${iri(s)}, ${iri(a.id)}, [prov:type="apexec:hasStep"])`);
164
+ if (a.correspondsToStep)
165
+ body.push(`${indent}wasInfluencedBy(${iri(a.id)}, ${iri(a.correspondsToStep)}, [prov:type="p-plan:correspondsToStep"])`);
166
+ if (a.accountabilityRoot)
167
+ body.push(`${indent}wasInfluencedBy(${iri(a.id)}, ${iri(a.accountabilityRoot)}, [prov:type="apexec:accountabilityRoot"])`);
168
+ if (a.actorContext)
169
+ body.push(`${indent}used(${iri(a.id)}, ${iri(a.actorContext)}, -, [prov:type="apexec:actorContext"])`);
170
+ if (a.delegatedToAgent)
171
+ body.push(`${indent}wasInfluencedBy(${iri(a.id)}, ${iri(a.delegatedToAgent)}, [prov:type="apexec:delegatedToAgent"])`);
172
+ }
173
+ for (const e of record.entities) {
174
+ body.push(`${indent}entity(${iri(e.id)}${attrs({ 'prov:type': e.type === 'Delegation' ? 'apdel:Delegation' : e.type === 'Playbook' ? 'apguide:AgentSkillPackage' : e.type === 'ExecutionPlan' ? 'apexec:ExecutionPlan' : `apexec:${e.type}`, 'apexec:effectProduces': e.effectProduces, 'apexec:effectSucceeded': e.effectSucceeded, 'apexec:decisionPoint': e.decisionPoint, 'apexec:decisionRule': e.decisionRule, 'apexec:artifactDigest': e.artifactDigest, 'apexec:artifactBytes': e.artifactBytes !== undefined ? String(e.artifactBytes) : undefined })})`);
175
+ if (e.wasAttributedTo)
176
+ body.push(`${indent}wasAttributedTo(${iri(e.id)}, ${iri(e.wasAttributedTo)})`);
177
+ if (e.wasRevisionOf)
178
+ body.push(`${indent}wasRevisionOf(${iri(e.id)}, ${iri(e.wasRevisionOf)})`);
179
+ for (const d of e.wasDerivedFrom ?? [])
180
+ body.push(`${indent}wasDerivedFrom(${iri(e.id)}, ${iri(d)})`);
181
+ if (e.actingAgent)
182
+ body.push(`${indent}wasInfluencedBy(${iri(e.id)}, ${iri(e.actingAgent)}, [prov:type="apactor:actingAgent"])`);
183
+ if (e.originatingAgent)
184
+ body.push(`${indent}wasInfluencedBy(${iri(e.id)}, ${iri(e.originatingAgent)}, [prov:type="apactor:originatingAgent"])`);
185
+ if (e.rootPrincipal)
186
+ body.push(`${indent}wasInfluencedBy(${iri(e.id)}, ${iri(e.rootPrincipal)}, [prov:type="apactor:rootPrincipal"])`);
187
+ }
188
+ for (const p of record.plans) {
189
+ body.push(`${indent}entity(${iri(p.id)}, [prov:type="${p.kind === 'ExecutionPlan' ? 'apexec:ExecutionPlan' : p.kind === 'Playbook' ? 'apguide:AgentSkillPackage' : p.kind === 'CoordinationPlan' ? 'apcoord:CoordinationPlan' : 'p-plan:Plan'}"])`);
190
+ for (const s of p.steps) {
191
+ body.push(`${indent}entity(${iri(s.id)}, [prov:type="p-plan:Step", p-plan:isStepOfPlan=${q(iriOf(s.isStepOfPlan, opts.chainId))}])`);
192
+ if (s.isPrecededBy)
193
+ body.push(`${indent}wasInfluencedBy(${iri(s.id)}, ${iri(s.isPrecededBy)}, [prov:type="p-plan:isPrecededBy"])`);
194
+ }
195
+ }
196
+ if (record.bundle) {
197
+ lines.push(` bundle ${iri(record.bundle.id)}`);
198
+ lines.push(...body);
199
+ lines.push(' endBundle');
200
+ lines.push(` entity(${iri(record.bundle.id)}, [prov:type="ep-plan:ExecutionTraceBundle"])`);
201
+ if (record.bundle.wasAttributedTo)
202
+ lines.push(` wasAttributedTo(${iri(record.bundle.id)}, ${iri(record.bundle.wasAttributedTo)})`);
203
+ for (const w of record.bundle.wasInformedBy ?? [])
204
+ lines.push(` wasDerivedFrom(${iri(record.bundle.id)}, ${iri(w)}, [prov:type="prov:wasInformedBy"])`);
205
+ }
206
+ else
207
+ lines.push(...body);
208
+ lines.push('endDocument');
209
+ return lines.join('\n') + '\n';
210
+ }
211
+ //# sourceMappingURL=serialize.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"serialize.js","sourceRoot":"","sources":["../src/serialize.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -3,13 +3,23 @@ export type AgentClass = 'person' | 'org' | 'service';
3
3
  /** PROV-O agent (`prov:Agent`), classified per ADR-0046. */
4
4
  export interface ProvAgentRef {
5
5
  id: string;
6
- agentClass: AgentClass;
6
+ /** Person / org / service (ADR-0046). Absent when the projector was not told — a graph says `ap:Agent`
7
+ * and nothing more, rather than a class it guessed (the knowledge plane's plausible-falsehood failure). */
8
+ agentClass?: AgentClass;
9
+ /** Spec 389 — `AgentRuntime` for the identified runtime (`apexec:AgentRuntime ⊑ prov:SoftwareAgent`) that
10
+ * bore responsibility for a run; default `Agent`. */
11
+ kind?: 'Agent' | 'AgentRuntime';
12
+ /** `prov:actedOnBehalfOf` — the agent this one acted for (the runtime for its Smart Agent; a delegate
13
+ * for its delegator). Private detail (the S1 firewall rejects it from any public row). */
14
+ actedOnBehalfOf?: string;
7
15
  }
8
16
  /** `apix:CommunicationDelivery` (T0) / `apix:IntentInvocation` (T1) / `apix:OrchestratedTask ≡ apful:Task`
9
17
  * (T2) — all `⊑ prov:Activity` (§6). Spec 332 §7 adds the coordination activities: `EndeavorAdoption`,
10
18
  * `PlanProposal`, `PlanAdoption`, and the per-step `StepExecution` (an `apexec:ServiceExecution` /
11
19
  * `apful:Task` activity carrying `p-plan:correspondsToStep`). */
12
- export type ProvActivityType = 'CommunicationDelivery' | 'IntentInvocation' | 'OrchestratedTask' | 'EndeavorAdoption' | 'PlanProposal' | 'PlanAdoption' | 'StepExecution';
20
+ export type ProvActivityType = 'CommunicationDelivery' | 'IntentInvocation' | 'OrchestratedTask' | 'EndeavorAdoption' | 'PlanProposal' | 'PlanAdoption' | 'StepExecution'
21
+ /** Spec 389 — a harness run (`apexec:ServiceExecution`); its steps are `StepExecution`s it `hasStep`. */
22
+ | 'HarnessRun';
13
23
  export interface ProvActivity {
14
24
  id: string;
15
25
  type: ProvActivityType;
@@ -34,10 +44,40 @@ export interface ProvActivity {
34
44
  /** `ep-plan:FailedActivity` — the execution was interrupted / not completed. A first-class trace
35
45
  * fact (tbox/plan.ttl), never silently dropped. */
36
46
  failed?: boolean;
47
+ /** `apexec:hasStep` — the step activities this run contains (a run only). */
48
+ hasStep?: string[];
49
+ /** `apvr:usedDelegation ⊑ prov:used` — the mandate the step presented, by reference. */
50
+ usedDelegation?: string;
51
+ /** `prov:wasInformedBy` — activities this one was informed by (a hand-off step ← the child run). */
52
+ wasInformedBy?: string[];
53
+ /** A second `prov:qualifiedAssociation` (agent = the runtime, `hadPlan` = the run's own ExecutionPlan). */
54
+ executionPlan?: string;
55
+ runRef?: string;
56
+ intentDigest?: string;
57
+ /** `apexec:completionState` — one of the closed list (`Completed` … `Suspended`). */
58
+ completionState?: string;
59
+ receiptDigest?: string;
60
+ usedPlanContentHash?: string;
61
+ /** `apexec:realizesCapability` — the capability id the step realized (a `aps:Capability` IRI or id). */
62
+ realizesCapability?: string;
63
+ authorityDecision?: string;
64
+ afterApproval?: boolean;
65
+ chainDigest?: string;
66
+ accountabilityRoot?: string;
67
+ /** `apexec:actorContext` — the ActorContext entity id. */
68
+ actorContext?: string;
69
+ /** `apexec:delegatedToAgent` — the agent a step was handed to. */
70
+ delegatedToAgent?: string;
71
+ errorClass?: string;
72
+ /** Spec 390 — the OpenTelemetry span this activity IS (W3C-sized hex ids). Correlation, never trust. */
73
+ traceId?: string;
74
+ spanId?: string;
37
75
  }
38
76
  export type ProvEntityType = 'Message' | 'Artifact' | 'DecisionArtifact' | 'EndeavorRequest' | 'OutcomeSpecification' | 'PlanRevision'
39
77
  /** The RUN-SPECIFIC `apexec:ExecutionPlan` a PlanStep compiled into (ADR-0054 §3 trichotomy). */
40
- | 'ExecutionPlan' | 'Attestation';
78
+ | 'ExecutionPlan' | 'Attestation' | 'Delegation' | 'Playbook' | 'StepReceipt' | 'ChainTransaction' | 'Effect' | 'DecisionRecord' | 'ActorContext'
79
+ /** Spec 391 — a step's raw result, offloaded to the acting agent's vault. */
80
+ | 'RunArtifact';
41
81
  export interface ProvEntity {
42
82
  id: string;
43
83
  type: ProvEntityType;
@@ -49,6 +89,19 @@ export interface ProvEntity {
49
89
  wasRevisionOf?: string;
50
90
  /** `prov:wasDerivedFrom` — contributing entity ids (outcome attestations derive from artifacts). */
51
91
  wasDerivedFrom?: string[];
92
+ /** `prov:wasAttributedTo` — the agent an entity is attributed to (a playbook to its author's agent is NOT
93
+ * recorded — only the commitment is; a receipt to the acting agent). */
94
+ wasAttributedTo?: string;
95
+ effectProduces?: string;
96
+ effectSucceeded?: boolean;
97
+ decisionPoint?: string;
98
+ decisionRule?: string;
99
+ actingAgent?: string;
100
+ originatingAgent?: string;
101
+ rootPrincipal?: string;
102
+ /** Spec 391 — an offloaded artifact's size and digest. */
103
+ artifactBytes?: number;
104
+ artifactDigest?: string;
52
105
  }
53
106
  /** P-Plan (`tbox/plan.ttl`) — grounds an orchestration `Plan` (and a service-agent `PrimitivePlan`) as
54
107
  * `p-plan:Plan`; steps are `p-plan:Step` via `isStepOfPlan` (§6). */
@@ -60,10 +113,19 @@ export interface PPlanStep {
60
113
  * into (the CoordinationPlan→ExecutionPlan bridge, named; emitted alongside the run plan's
61
114
  * `prov:wasDerivedFrom` back to the adopted revision). */
62
115
  isDecomposedAsPlan?: string;
116
+ /** `p-plan:isPrecededBy` — the step before this one in the plan's order. */
117
+ isPrecededBy?: string;
63
118
  }
64
119
  export interface PPlanPlan {
65
120
  id: string;
66
121
  steps: PPlanStep[];
122
+ /** Spec 389 — which plan variant (ADR-0054 §3 trichotomy): the run's own `apexec:ExecutionPlan`, a
123
+ * playbook (`apguide:AgentSkillPackage`, prescriptive procedure), a durable `apcoord:CoordinationPlan`.
124
+ * Absent ⇒ `p-plan:Plan` only. */
125
+ kind?: 'ExecutionPlan' | 'Playbook' | 'CoordinationPlan';
126
+ /** For a playbook: `apexec:usedPlanContentHash` is carried on the run; the plan entity itself is named
127
+ * by skill id, version and commitment. Vault ref / hash of the plan content when one exists. */
128
+ ref?: string;
67
129
  }
68
130
  /** The PRIVATE vault A-box the projector writes — the ONLY surface this package emits. It NEVER writes the
69
131
  * public discovery KB (that has exactly one writer, the indexer, projecting on-chain facts; §6 / B1). */
@@ -78,6 +140,11 @@ export interface ProvenanceRecordV1 {
78
140
  * projections (one Endeavor = one bundle); absent on partial/merged records. */
79
141
  bundle?: {
80
142
  id: string;
143
+ /** Spec 389 — the sender's bundle for a routed / handed-off run (`prov:wasInformedBy`), so a run across
144
+ * two Homes reads as one graph from either side, each holding only its own bundle. */
145
+ wasInformedBy?: string[];
146
+ /** `prov:wasAttributedTo` — whose bundle this is (the acting agent — the vault it lives in). */
147
+ wasAttributedTo?: string;
81
148
  };
82
149
  }
83
150
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,IAAI,GAAG,eAAe,GAAG,gBAAgB,GAAG,wBAAwB,CAAC;AACjF,MAAM,MAAM,UAAU,GAAG,QAAQ,GAAG,KAAK,GAAG,SAAS,CAAC;AAEtD,4DAA4D;AAC5D,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,UAAU,CAAC;CACxB;AAED;;;kEAGkE;AAClE,MAAM,MAAM,gBAAgB,GACxB,uBAAuB,GACvB,kBAAkB,GAClB,kBAAkB,GAClB,kBAAkB,GAClB,cAAc,GACd,cAAc,GACd,eAAe,CAAC;AAEpB,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,gBAAgB,CAAC;IACvB,IAAI,EAAE,IAAI,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,sDAAsD;IACtD,iBAAiB,EAAE,MAAM,CAAC;IAC1B,qGAAqG;IACrG,IAAI,EAAE,MAAM,EAAE,CAAC;IACf;uBACmB;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,4DAA4D;IAC5D,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,wGAAwG;IACxG,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,2GAA2G;IAC3G,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,4GAA4G;IAC5G,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;wDACoD;IACpD,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,MAAM,cAAc,GACtB,SAAS,GACT,UAAU,GACV,kBAAkB,GAClB,iBAAiB,GACjB,sBAAsB,GACtB,cAAc;AAChB,iGAAiG;GAC/F,eAAe,GACf,aAAa,CAAC;AAElB,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,cAAc,CAAC;IACrB,+CAA+C;IAC/C,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,qEAAqE;IACrE,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,+FAA+F;IAC/F,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,oGAAoG;IACpG,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;CAC3B;AAED;sEACsE;AACtE,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;IACrB;;+DAE2D;IAC3D,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AACD,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,SAAS,EAAE,CAAC;CACpB;AAED;0GAC0G;AAC1G,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,kBAAkB,CAAC;IAC5B,MAAM,EAAE,YAAY,EAAE,CAAC;IACvB,UAAU,EAAE,YAAY,EAAE,CAAC;IAC3B,QAAQ,EAAE,UAAU,EAAE,CAAC;IACvB,KAAK,EAAE,SAAS,EAAE,CAAC;IACnB;;qFAEiF;IACjF,MAAM,CAAC,EAAE;QAAE,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC;CACzB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@agenticprimitives/provenance",
3
- "version": "0.0.0-alpha.1",
3
+ "version": "0.0.0-alpha.2",
4
4
  "description": "The Ring-0 provenance projector (spec 316 §6): maps fabric exchanges + orchestration runs to a PRIVATE PROV-O / P-Plan A-box, and enforces the ADR-0040 public-projection firewall (S1). Sole writer of the private vault A-box; NEVER writes the public KB.",
5
5
  "license": "MIT",
6
6
  "repository": {