@fabricorg/platform 0.7.0 → 0.8.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.
- package/CHANGELOG.md +6 -0
- package/README.md +1 -0
- package/dist/chunk-C72F6IRQ.cjs +20 -0
- package/dist/chunk-C72F6IRQ.cjs.map +1 -0
- package/dist/chunk-WGJBT66A.js +18 -0
- package/dist/chunk-WGJBT66A.js.map +1 -0
- package/dist/governance/index.cjs +12 -0
- package/dist/governance/index.cjs.map +1 -0
- package/dist/governance/index.d.cts +79 -0
- package/dist/governance/index.d.ts +79 -0
- package/dist/governance/index.js +3 -0
- package/dist/governance/index.js.map +1 -0
- package/dist/index.cjs +20 -15
- package/dist/index.d.cts +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +2 -1
- package/package.json +11 -1
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
# @fabricorg/platform
|
|
2
2
|
|
|
3
|
+
## 0.8.0 — 2026-07-20
|
|
4
|
+
|
|
5
|
+
- Add provider-neutral external mutation governance contracts for footprints, delegated execution
|
|
6
|
+
principals, policy obligations, execution attestations, and reconciliation observations.
|
|
7
|
+
- Add the `@fabricorg/platform/governance` public subpath.
|
|
8
|
+
|
|
3
9
|
## 0.7.0 — 2026-07-19
|
|
4
10
|
|
|
5
11
|
### Minor
|
package/README.md
CHANGED
|
@@ -53,6 +53,7 @@ That's what this package gives you. Nothing more.
|
|
|
53
53
|
| `@fabricorg/platform/displays` | `DisplayRendererRegistration` |
|
|
54
54
|
| `@fabricorg/platform/privacy` | Redaction + data classification |
|
|
55
55
|
| `@fabricorg/platform/evidence` | Compliance evidence packets |
|
|
56
|
+
| `@fabricorg/platform/governance` | External footprints, delegated principals, obligations, attestations, and reconciliation |
|
|
56
57
|
| `@fabricorg/platform/objects` | Shared object-type contracts |
|
|
57
58
|
| `@fabricorg/platform/testing` | In-memory adapter registry, fake `ActionContext`, deterministic IDs |
|
|
58
59
|
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
// governance/index.ts
|
|
4
|
+
function assertMutationGovernanceContext(value) {
|
|
5
|
+
if (!Number.isInteger(value.footprint.version) || value.footprint.version < 1) {
|
|
6
|
+
throw new Error("Mutation footprint version must be a positive integer");
|
|
7
|
+
}
|
|
8
|
+
for (const entry of value.footprint.resources) {
|
|
9
|
+
if (!entry.resource.provider.trim()) throw new Error("Resource provider is required");
|
|
10
|
+
if (!entry.resource.resourceType.trim()) throw new Error("Resource type is required");
|
|
11
|
+
if (!entry.resource.resourceId.trim()) throw new Error("Resource id is required");
|
|
12
|
+
}
|
|
13
|
+
if (!value.executionPrincipal.principalId.trim()) {
|
|
14
|
+
throw new Error("Execution principal id is required");
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
exports.assertMutationGovernanceContext = assertMutationGovernanceContext;
|
|
19
|
+
//# sourceMappingURL=chunk-C72F6IRQ.cjs.map
|
|
20
|
+
//# sourceMappingURL=chunk-C72F6IRQ.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../governance/index.ts"],"names":[],"mappings":";;;AAiGO,SAAS,gCACf,KAAA,EACO;AACP,EAAA,IAAI,CAAC,MAAA,CAAO,SAAA,CAAU,KAAA,CAAM,SAAA,CAAU,OAAO,CAAA,IAAK,KAAA,CAAM,SAAA,CAAU,OAAA,GAAU,CAAA,EAAG;AAC9E,IAAA,MAAM,IAAI,MAAM,uDAAuD,CAAA;AAAA,EACxE;AACA,EAAA,KAAA,MAAW,KAAA,IAAS,KAAA,CAAM,SAAA,CAAU,SAAA,EAAW;AAC9C,IAAA,IAAI,CAAC,MAAM,QAAA,CAAS,QAAA,CAAS,MAAK,EAAG,MAAM,IAAI,KAAA,CAAM,+BAA+B,CAAA;AACpF,IAAA,IAAI,CAAC,MAAM,QAAA,CAAS,YAAA,CAAa,MAAK,EAAG,MAAM,IAAI,KAAA,CAAM,2BAA2B,CAAA;AACpF,IAAA,IAAI,CAAC,MAAM,QAAA,CAAS,UAAA,CAAW,MAAK,EAAG,MAAM,IAAI,KAAA,CAAM,yBAAyB,CAAA;AAAA,EACjF;AACA,EAAA,IAAI,CAAC,KAAA,CAAM,kBAAA,CAAmB,WAAA,CAAY,MAAK,EAAG;AACjD,IAAA,MAAM,IAAI,MAAM,oCAAoC,CAAA;AAAA,EACrD;AACD","file":"chunk-C72F6IRQ.cjs","sourcesContent":["import type { ActorType } from \"../actions\";\nimport type { EvidencePacketReference } from \"../evidence\";\n\nexport type ExternalResourceOperation =\n\t| \"read\"\n\t| \"create\"\n\t| \"update\"\n\t| \"delete\"\n\t| \"execute\"\n\t| \"publish\";\n\n/** Provider-neutral identity for infrastructure touched by a governed mutation. */\nexport interface ExternalResourceRef {\n\tprovider: string;\n\tresourceType: string;\n\tresourceId: string;\n\tdisplayName?: string;\n\tmetadata?: Record<string, unknown>;\n}\n\nexport interface MutationFootprintEntry {\n\tresource: ExternalResourceRef;\n\toperation: ExternalResourceOperation;\n\tdataClassifications?: string[];\n}\n\n/** Durable declaration of the external effects an invocation is allowed to produce. */\nexport interface MutationFootprint {\n\tversion: number;\n\tresources: MutationFootprintEntry[];\n}\n\n/** Effective execution identity, including the delegation chain that produced it. */\nexport interface ExecutionPrincipal {\n\tprincipalId: string;\n\tprincipalType: ActorType | string;\n\tprovider?: string;\n\tdelegatedBy?: ExecutionPrincipal;\n\tmetadata?: Record<string, unknown>;\n}\n\nexport type PolicyObligationStatus = \"pending\" | \"satisfied\" | \"waived\" | \"failed\";\n\nexport interface PolicyObligation {\n\tid: string;\n\ttype: string;\n\tstatus: PolicyObligationStatus;\n\trequired?: boolean;\n\tdescription?: string;\n\tevidenceReferences?: EvidencePacketReference[];\n\tmetadata?: Record<string, unknown>;\n}\n\n/** Audit-safe proof returned by an external execution provider. */\nexport interface ExecutionAttestation {\n\tprovider: string;\n\toperation: string;\n\texternalOperationId?: string;\n\tresource?: ExternalResourceRef;\n\tevidenceReferences: EvidencePacketReference[];\n\tsatisfiesObligations?: string[];\n\tstartedAt: Date | string;\n\tcompletedAt?: Date | string;\n\tmetadata?: Record<string, unknown>;\n}\n\nexport type ReconciliationStatus = \"not_required\" | \"pending\" | \"reconciled\" | \"failed\";\n\nexport interface ExternalReconciliation {\n\tstatus: ReconciliationStatus;\n\tprovider: string;\n\texternalOperationId?: string;\n\tattempt: number;\n\treason?: string;\n\tevidenceReferences?: EvidencePacketReference[];\n\tobservedAt: Date | string;\n}\n\nexport interface MutationGovernanceContext {\n\tfootprint: MutationFootprint;\n\texecutionPrincipal: ExecutionPrincipal;\n}\n\nexport interface MutationGovernanceResolutionInput {\n\tactionInvocationId: string;\n\tactionId: string;\n\ttenantId: string;\n\tspaceId: string;\n\tactorId: string;\n\tactorType: ActorType;\n\tparameters: unknown;\n}\n\nexport type MutationGovernanceResolver = (\n\tinput: MutationGovernanceResolutionInput,\n) => Promise<MutationGovernanceContext> | MutationGovernanceContext;\n\nexport function assertMutationGovernanceContext(\n\tvalue: MutationGovernanceContext,\n): void {\n\tif (!Number.isInteger(value.footprint.version) || value.footprint.version < 1) {\n\t\tthrow new Error(\"Mutation footprint version must be a positive integer\");\n\t}\n\tfor (const entry of value.footprint.resources) {\n\t\tif (!entry.resource.provider.trim()) throw new Error(\"Resource provider is required\");\n\t\tif (!entry.resource.resourceType.trim()) throw new Error(\"Resource type is required\");\n\t\tif (!entry.resource.resourceId.trim()) throw new Error(\"Resource id is required\");\n\t}\n\tif (!value.executionPrincipal.principalId.trim()) {\n\t\tthrow new Error(\"Execution principal id is required\");\n\t}\n}\n"]}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
// governance/index.ts
|
|
2
|
+
function assertMutationGovernanceContext(value) {
|
|
3
|
+
if (!Number.isInteger(value.footprint.version) || value.footprint.version < 1) {
|
|
4
|
+
throw new Error("Mutation footprint version must be a positive integer");
|
|
5
|
+
}
|
|
6
|
+
for (const entry of value.footprint.resources) {
|
|
7
|
+
if (!entry.resource.provider.trim()) throw new Error("Resource provider is required");
|
|
8
|
+
if (!entry.resource.resourceType.trim()) throw new Error("Resource type is required");
|
|
9
|
+
if (!entry.resource.resourceId.trim()) throw new Error("Resource id is required");
|
|
10
|
+
}
|
|
11
|
+
if (!value.executionPrincipal.principalId.trim()) {
|
|
12
|
+
throw new Error("Execution principal id is required");
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
export { assertMutationGovernanceContext };
|
|
17
|
+
//# sourceMappingURL=chunk-WGJBT66A.js.map
|
|
18
|
+
//# sourceMappingURL=chunk-WGJBT66A.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../governance/index.ts"],"names":[],"mappings":";AAiGO,SAAS,gCACf,KAAA,EACO;AACP,EAAA,IAAI,CAAC,MAAA,CAAO,SAAA,CAAU,KAAA,CAAM,SAAA,CAAU,OAAO,CAAA,IAAK,KAAA,CAAM,SAAA,CAAU,OAAA,GAAU,CAAA,EAAG;AAC9E,IAAA,MAAM,IAAI,MAAM,uDAAuD,CAAA;AAAA,EACxE;AACA,EAAA,KAAA,MAAW,KAAA,IAAS,KAAA,CAAM,SAAA,CAAU,SAAA,EAAW;AAC9C,IAAA,IAAI,CAAC,MAAM,QAAA,CAAS,QAAA,CAAS,MAAK,EAAG,MAAM,IAAI,KAAA,CAAM,+BAA+B,CAAA;AACpF,IAAA,IAAI,CAAC,MAAM,QAAA,CAAS,YAAA,CAAa,MAAK,EAAG,MAAM,IAAI,KAAA,CAAM,2BAA2B,CAAA;AACpF,IAAA,IAAI,CAAC,MAAM,QAAA,CAAS,UAAA,CAAW,MAAK,EAAG,MAAM,IAAI,KAAA,CAAM,yBAAyB,CAAA;AAAA,EACjF;AACA,EAAA,IAAI,CAAC,KAAA,CAAM,kBAAA,CAAmB,WAAA,CAAY,MAAK,EAAG;AACjD,IAAA,MAAM,IAAI,MAAM,oCAAoC,CAAA;AAAA,EACrD;AACD","file":"chunk-WGJBT66A.js","sourcesContent":["import type { ActorType } from \"../actions\";\nimport type { EvidencePacketReference } from \"../evidence\";\n\nexport type ExternalResourceOperation =\n\t| \"read\"\n\t| \"create\"\n\t| \"update\"\n\t| \"delete\"\n\t| \"execute\"\n\t| \"publish\";\n\n/** Provider-neutral identity for infrastructure touched by a governed mutation. */\nexport interface ExternalResourceRef {\n\tprovider: string;\n\tresourceType: string;\n\tresourceId: string;\n\tdisplayName?: string;\n\tmetadata?: Record<string, unknown>;\n}\n\nexport interface MutationFootprintEntry {\n\tresource: ExternalResourceRef;\n\toperation: ExternalResourceOperation;\n\tdataClassifications?: string[];\n}\n\n/** Durable declaration of the external effects an invocation is allowed to produce. */\nexport interface MutationFootprint {\n\tversion: number;\n\tresources: MutationFootprintEntry[];\n}\n\n/** Effective execution identity, including the delegation chain that produced it. */\nexport interface ExecutionPrincipal {\n\tprincipalId: string;\n\tprincipalType: ActorType | string;\n\tprovider?: string;\n\tdelegatedBy?: ExecutionPrincipal;\n\tmetadata?: Record<string, unknown>;\n}\n\nexport type PolicyObligationStatus = \"pending\" | \"satisfied\" | \"waived\" | \"failed\";\n\nexport interface PolicyObligation {\n\tid: string;\n\ttype: string;\n\tstatus: PolicyObligationStatus;\n\trequired?: boolean;\n\tdescription?: string;\n\tevidenceReferences?: EvidencePacketReference[];\n\tmetadata?: Record<string, unknown>;\n}\n\n/** Audit-safe proof returned by an external execution provider. */\nexport interface ExecutionAttestation {\n\tprovider: string;\n\toperation: string;\n\texternalOperationId?: string;\n\tresource?: ExternalResourceRef;\n\tevidenceReferences: EvidencePacketReference[];\n\tsatisfiesObligations?: string[];\n\tstartedAt: Date | string;\n\tcompletedAt?: Date | string;\n\tmetadata?: Record<string, unknown>;\n}\n\nexport type ReconciliationStatus = \"not_required\" | \"pending\" | \"reconciled\" | \"failed\";\n\nexport interface ExternalReconciliation {\n\tstatus: ReconciliationStatus;\n\tprovider: string;\n\texternalOperationId?: string;\n\tattempt: number;\n\treason?: string;\n\tevidenceReferences?: EvidencePacketReference[];\n\tobservedAt: Date | string;\n}\n\nexport interface MutationGovernanceContext {\n\tfootprint: MutationFootprint;\n\texecutionPrincipal: ExecutionPrincipal;\n}\n\nexport interface MutationGovernanceResolutionInput {\n\tactionInvocationId: string;\n\tactionId: string;\n\ttenantId: string;\n\tspaceId: string;\n\tactorId: string;\n\tactorType: ActorType;\n\tparameters: unknown;\n}\n\nexport type MutationGovernanceResolver = (\n\tinput: MutationGovernanceResolutionInput,\n) => Promise<MutationGovernanceContext> | MutationGovernanceContext;\n\nexport function assertMutationGovernanceContext(\n\tvalue: MutationGovernanceContext,\n): void {\n\tif (!Number.isInteger(value.footprint.version) || value.footprint.version < 1) {\n\t\tthrow new Error(\"Mutation footprint version must be a positive integer\");\n\t}\n\tfor (const entry of value.footprint.resources) {\n\t\tif (!entry.resource.provider.trim()) throw new Error(\"Resource provider is required\");\n\t\tif (!entry.resource.resourceType.trim()) throw new Error(\"Resource type is required\");\n\t\tif (!entry.resource.resourceId.trim()) throw new Error(\"Resource id is required\");\n\t}\n\tif (!value.executionPrincipal.principalId.trim()) {\n\t\tthrow new Error(\"Execution principal id is required\");\n\t}\n}\n"]}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var chunkC72F6IRQ_cjs = require('../chunk-C72F6IRQ.cjs');
|
|
4
|
+
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
Object.defineProperty(exports, "assertMutationGovernanceContext", {
|
|
8
|
+
enumerable: true,
|
|
9
|
+
get: function () { return chunkC72F6IRQ_cjs.assertMutationGovernanceContext; }
|
|
10
|
+
});
|
|
11
|
+
//# sourceMappingURL=index.cjs.map
|
|
12
|
+
//# sourceMappingURL=index.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"index.cjs"}
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import { ActorType } from '../actions/index.cjs';
|
|
2
|
+
import { EvidencePacketReference } from '../evidence/index.cjs';
|
|
3
|
+
|
|
4
|
+
type ExternalResourceOperation = "read" | "create" | "update" | "delete" | "execute" | "publish";
|
|
5
|
+
/** Provider-neutral identity for infrastructure touched by a governed mutation. */
|
|
6
|
+
interface ExternalResourceRef {
|
|
7
|
+
provider: string;
|
|
8
|
+
resourceType: string;
|
|
9
|
+
resourceId: string;
|
|
10
|
+
displayName?: string;
|
|
11
|
+
metadata?: Record<string, unknown>;
|
|
12
|
+
}
|
|
13
|
+
interface MutationFootprintEntry {
|
|
14
|
+
resource: ExternalResourceRef;
|
|
15
|
+
operation: ExternalResourceOperation;
|
|
16
|
+
dataClassifications?: string[];
|
|
17
|
+
}
|
|
18
|
+
/** Durable declaration of the external effects an invocation is allowed to produce. */
|
|
19
|
+
interface MutationFootprint {
|
|
20
|
+
version: number;
|
|
21
|
+
resources: MutationFootprintEntry[];
|
|
22
|
+
}
|
|
23
|
+
/** Effective execution identity, including the delegation chain that produced it. */
|
|
24
|
+
interface ExecutionPrincipal {
|
|
25
|
+
principalId: string;
|
|
26
|
+
principalType: ActorType | string;
|
|
27
|
+
provider?: string;
|
|
28
|
+
delegatedBy?: ExecutionPrincipal;
|
|
29
|
+
metadata?: Record<string, unknown>;
|
|
30
|
+
}
|
|
31
|
+
type PolicyObligationStatus = "pending" | "satisfied" | "waived" | "failed";
|
|
32
|
+
interface PolicyObligation {
|
|
33
|
+
id: string;
|
|
34
|
+
type: string;
|
|
35
|
+
status: PolicyObligationStatus;
|
|
36
|
+
required?: boolean;
|
|
37
|
+
description?: string;
|
|
38
|
+
evidenceReferences?: EvidencePacketReference[];
|
|
39
|
+
metadata?: Record<string, unknown>;
|
|
40
|
+
}
|
|
41
|
+
/** Audit-safe proof returned by an external execution provider. */
|
|
42
|
+
interface ExecutionAttestation {
|
|
43
|
+
provider: string;
|
|
44
|
+
operation: string;
|
|
45
|
+
externalOperationId?: string;
|
|
46
|
+
resource?: ExternalResourceRef;
|
|
47
|
+
evidenceReferences: EvidencePacketReference[];
|
|
48
|
+
satisfiesObligations?: string[];
|
|
49
|
+
startedAt: Date | string;
|
|
50
|
+
completedAt?: Date | string;
|
|
51
|
+
metadata?: Record<string, unknown>;
|
|
52
|
+
}
|
|
53
|
+
type ReconciliationStatus = "not_required" | "pending" | "reconciled" | "failed";
|
|
54
|
+
interface ExternalReconciliation {
|
|
55
|
+
status: ReconciliationStatus;
|
|
56
|
+
provider: string;
|
|
57
|
+
externalOperationId?: string;
|
|
58
|
+
attempt: number;
|
|
59
|
+
reason?: string;
|
|
60
|
+
evidenceReferences?: EvidencePacketReference[];
|
|
61
|
+
observedAt: Date | string;
|
|
62
|
+
}
|
|
63
|
+
interface MutationGovernanceContext {
|
|
64
|
+
footprint: MutationFootprint;
|
|
65
|
+
executionPrincipal: ExecutionPrincipal;
|
|
66
|
+
}
|
|
67
|
+
interface MutationGovernanceResolutionInput {
|
|
68
|
+
actionInvocationId: string;
|
|
69
|
+
actionId: string;
|
|
70
|
+
tenantId: string;
|
|
71
|
+
spaceId: string;
|
|
72
|
+
actorId: string;
|
|
73
|
+
actorType: ActorType;
|
|
74
|
+
parameters: unknown;
|
|
75
|
+
}
|
|
76
|
+
type MutationGovernanceResolver = (input: MutationGovernanceResolutionInput) => Promise<MutationGovernanceContext> | MutationGovernanceContext;
|
|
77
|
+
declare function assertMutationGovernanceContext(value: MutationGovernanceContext): void;
|
|
78
|
+
|
|
79
|
+
export { type ExecutionAttestation, type ExecutionPrincipal, type ExternalReconciliation, type ExternalResourceOperation, type ExternalResourceRef, type MutationFootprint, type MutationFootprintEntry, type MutationGovernanceContext, type MutationGovernanceResolutionInput, type MutationGovernanceResolver, type PolicyObligation, type PolicyObligationStatus, type ReconciliationStatus, assertMutationGovernanceContext };
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
import { ActorType } from '../actions/index.js';
|
|
2
|
+
import { EvidencePacketReference } from '../evidence/index.js';
|
|
3
|
+
|
|
4
|
+
type ExternalResourceOperation = "read" | "create" | "update" | "delete" | "execute" | "publish";
|
|
5
|
+
/** Provider-neutral identity for infrastructure touched by a governed mutation. */
|
|
6
|
+
interface ExternalResourceRef {
|
|
7
|
+
provider: string;
|
|
8
|
+
resourceType: string;
|
|
9
|
+
resourceId: string;
|
|
10
|
+
displayName?: string;
|
|
11
|
+
metadata?: Record<string, unknown>;
|
|
12
|
+
}
|
|
13
|
+
interface MutationFootprintEntry {
|
|
14
|
+
resource: ExternalResourceRef;
|
|
15
|
+
operation: ExternalResourceOperation;
|
|
16
|
+
dataClassifications?: string[];
|
|
17
|
+
}
|
|
18
|
+
/** Durable declaration of the external effects an invocation is allowed to produce. */
|
|
19
|
+
interface MutationFootprint {
|
|
20
|
+
version: number;
|
|
21
|
+
resources: MutationFootprintEntry[];
|
|
22
|
+
}
|
|
23
|
+
/** Effective execution identity, including the delegation chain that produced it. */
|
|
24
|
+
interface ExecutionPrincipal {
|
|
25
|
+
principalId: string;
|
|
26
|
+
principalType: ActorType | string;
|
|
27
|
+
provider?: string;
|
|
28
|
+
delegatedBy?: ExecutionPrincipal;
|
|
29
|
+
metadata?: Record<string, unknown>;
|
|
30
|
+
}
|
|
31
|
+
type PolicyObligationStatus = "pending" | "satisfied" | "waived" | "failed";
|
|
32
|
+
interface PolicyObligation {
|
|
33
|
+
id: string;
|
|
34
|
+
type: string;
|
|
35
|
+
status: PolicyObligationStatus;
|
|
36
|
+
required?: boolean;
|
|
37
|
+
description?: string;
|
|
38
|
+
evidenceReferences?: EvidencePacketReference[];
|
|
39
|
+
metadata?: Record<string, unknown>;
|
|
40
|
+
}
|
|
41
|
+
/** Audit-safe proof returned by an external execution provider. */
|
|
42
|
+
interface ExecutionAttestation {
|
|
43
|
+
provider: string;
|
|
44
|
+
operation: string;
|
|
45
|
+
externalOperationId?: string;
|
|
46
|
+
resource?: ExternalResourceRef;
|
|
47
|
+
evidenceReferences: EvidencePacketReference[];
|
|
48
|
+
satisfiesObligations?: string[];
|
|
49
|
+
startedAt: Date | string;
|
|
50
|
+
completedAt?: Date | string;
|
|
51
|
+
metadata?: Record<string, unknown>;
|
|
52
|
+
}
|
|
53
|
+
type ReconciliationStatus = "not_required" | "pending" | "reconciled" | "failed";
|
|
54
|
+
interface ExternalReconciliation {
|
|
55
|
+
status: ReconciliationStatus;
|
|
56
|
+
provider: string;
|
|
57
|
+
externalOperationId?: string;
|
|
58
|
+
attempt: number;
|
|
59
|
+
reason?: string;
|
|
60
|
+
evidenceReferences?: EvidencePacketReference[];
|
|
61
|
+
observedAt: Date | string;
|
|
62
|
+
}
|
|
63
|
+
interface MutationGovernanceContext {
|
|
64
|
+
footprint: MutationFootprint;
|
|
65
|
+
executionPrincipal: ExecutionPrincipal;
|
|
66
|
+
}
|
|
67
|
+
interface MutationGovernanceResolutionInput {
|
|
68
|
+
actionInvocationId: string;
|
|
69
|
+
actionId: string;
|
|
70
|
+
tenantId: string;
|
|
71
|
+
spaceId: string;
|
|
72
|
+
actorId: string;
|
|
73
|
+
actorType: ActorType;
|
|
74
|
+
parameters: unknown;
|
|
75
|
+
}
|
|
76
|
+
type MutationGovernanceResolver = (input: MutationGovernanceResolutionInput) => Promise<MutationGovernanceContext> | MutationGovernanceContext;
|
|
77
|
+
declare function assertMutationGovernanceContext(value: MutationGovernanceContext): void;
|
|
78
|
+
|
|
79
|
+
export { type ExecutionAttestation, type ExecutionPrincipal, type ExternalReconciliation, type ExternalResourceOperation, type ExternalResourceRef, type MutationFootprint, type MutationFootprintEntry, type MutationGovernanceContext, type MutationGovernanceResolutionInput, type MutationGovernanceResolver, type PolicyObligation, type PolicyObligationStatus, type ReconciliationStatus, assertMutationGovernanceContext };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":[],"names":[],"mappings":"","file":"index.js"}
|
package/dist/index.cjs
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
+
var chunkLZSE6QGQ_cjs = require('./chunk-LZSE6QGQ.cjs');
|
|
3
4
|
var chunkSSYKDXR4_cjs = require('./chunk-SSYKDXR4.cjs');
|
|
4
5
|
var chunkQETQGAXJ_cjs = require('./chunk-QETQGAXJ.cjs');
|
|
5
6
|
var chunkNJL3US7H_cjs = require('./chunk-NJL3US7H.cjs');
|
|
@@ -13,10 +14,26 @@ var chunkF3E5SXPN_cjs = require('./chunk-F3E5SXPN.cjs');
|
|
|
13
14
|
var chunkEO4VSB2O_cjs = require('./chunk-EO4VSB2O.cjs');
|
|
14
15
|
var chunkJAXDEK5Z_cjs = require('./chunk-JAXDEK5Z.cjs');
|
|
15
16
|
require('./chunk-PG5LYTUX.cjs');
|
|
16
|
-
var
|
|
17
|
+
var chunkC72F6IRQ_cjs = require('./chunk-C72F6IRQ.cjs');
|
|
17
18
|
|
|
18
19
|
|
|
19
20
|
|
|
21
|
+
Object.defineProperty(exports, "FABRIC_ID_PREFIXES", {
|
|
22
|
+
enumerable: true,
|
|
23
|
+
get: function () { return chunkLZSE6QGQ_cjs.FABRIC_ID_PREFIXES; }
|
|
24
|
+
});
|
|
25
|
+
Object.defineProperty(exports, "createFabricId", {
|
|
26
|
+
enumerable: true,
|
|
27
|
+
get: function () { return chunkLZSE6QGQ_cjs.createFabricId; }
|
|
28
|
+
});
|
|
29
|
+
Object.defineProperty(exports, "isFabricId", {
|
|
30
|
+
enumerable: true,
|
|
31
|
+
get: function () { return chunkLZSE6QGQ_cjs.isFabricId; }
|
|
32
|
+
});
|
|
33
|
+
Object.defineProperty(exports, "parseFabricId", {
|
|
34
|
+
enumerable: true,
|
|
35
|
+
get: function () { return chunkLZSE6QGQ_cjs.parseFabricId; }
|
|
36
|
+
});
|
|
20
37
|
Object.defineProperty(exports, "createModuleRegistry", {
|
|
21
38
|
enumerable: true,
|
|
22
39
|
get: function () { return chunkSSYKDXR4_cjs.createModuleRegistry; }
|
|
@@ -289,21 +306,9 @@ Object.defineProperty(exports, "registerSubjectType", {
|
|
|
289
306
|
enumerable: true,
|
|
290
307
|
get: function () { return chunkJAXDEK5Z_cjs.registerSubjectType; }
|
|
291
308
|
});
|
|
292
|
-
Object.defineProperty(exports, "
|
|
293
|
-
enumerable: true,
|
|
294
|
-
get: function () { return chunkLZSE6QGQ_cjs.FABRIC_ID_PREFIXES; }
|
|
295
|
-
});
|
|
296
|
-
Object.defineProperty(exports, "createFabricId", {
|
|
297
|
-
enumerable: true,
|
|
298
|
-
get: function () { return chunkLZSE6QGQ_cjs.createFabricId; }
|
|
299
|
-
});
|
|
300
|
-
Object.defineProperty(exports, "isFabricId", {
|
|
301
|
-
enumerable: true,
|
|
302
|
-
get: function () { return chunkLZSE6QGQ_cjs.isFabricId; }
|
|
303
|
-
});
|
|
304
|
-
Object.defineProperty(exports, "parseFabricId", {
|
|
309
|
+
Object.defineProperty(exports, "assertMutationGovernanceContext", {
|
|
305
310
|
enumerable: true,
|
|
306
|
-
get: function () { return
|
|
311
|
+
get: function () { return chunkC72F6IRQ_cjs.assertMutationGovernanceContext; }
|
|
307
312
|
});
|
|
308
313
|
//# sourceMappingURL=index.cjs.map
|
|
309
314
|
//# sourceMappingURL=index.cjs.map
|
package/dist/index.d.cts
CHANGED
|
@@ -10,5 +10,6 @@ export { ReplayEventsOptions, ReplayEventsResult, ReplayScope, ReplaySnapshot, R
|
|
|
10
10
|
export { CachedDisplayDescriptor, DisplayContext, DisplayDatabaseClient, DisplayDescriptor, DisplayRenderer, DisplayRendererRegistration, denormalizeDisplaySnapshot, registerDisplayRenderer, renderEventDisplay, resolveDisplayRenderer } from './displays/index.cjs';
|
|
11
11
|
export { ANONYMIZATION_POLICY_VERSION, AnalyticsDataContract, AnalyticsDataContractSource, AnalyticsEligibilityDecision, AnonymizationContext, AnonymizationEngine, AnonymizationFieldMetadata, AnonymizationLifecycleEvidence, AnonymizationMetadata, AnonymizationResult, AssetEventLike, DataClassificationRule, EvidencePacketLike, FieldRedactor, PLATFORM_PRIVACY_POLICY_VERSION, PlatformDataClass, RedactionMethod, RedactionRule, RetentionRule, anonymizeAssetEventPayload, anonymizeEvidencePacket, anonymizeJsonValue, buildAnonymizationLifecycleEvidence, stableChecksum } from './privacy/index.cjs';
|
|
12
12
|
export { EvidenceGenerationContext, EvidencePacketEnvelope, EvidencePacketReference, EvidencePacketStatus, EvidencePacketSubject, EvidenceRenderer } from './evidence/index.cjs';
|
|
13
|
+
export { ExecutionAttestation, ExecutionPrincipal, ExternalReconciliation, ExternalResourceOperation, ExternalResourceRef, MutationFootprint, MutationFootprintEntry, MutationGovernanceContext, MutationGovernanceResolutionInput, MutationGovernanceResolver, PolicyObligation, PolicyObligationStatus, ReconciliationStatus, assertMutationGovernanceContext } from './governance/index.cjs';
|
|
13
14
|
export { AgentActionPolicyContext, AgentActionPolicyDecision, AgentActionPolicyDefinition, AgentActionPolicyEvaluator, AgentActionPolicyRegistry, AgentActionRiskTier, AgentActionRoute } from './agent-hitl/index.cjs';
|
|
14
15
|
export { FakeActionContextOptions, createDeterministicIdFactory, createFakeActionContext, createInMemoryAdapterRegistry } from './testing/index.cjs';
|
package/dist/index.d.ts
CHANGED
|
@@ -10,5 +10,6 @@ export { ReplayEventsOptions, ReplayEventsResult, ReplayScope, ReplaySnapshot, R
|
|
|
10
10
|
export { CachedDisplayDescriptor, DisplayContext, DisplayDatabaseClient, DisplayDescriptor, DisplayRenderer, DisplayRendererRegistration, denormalizeDisplaySnapshot, registerDisplayRenderer, renderEventDisplay, resolveDisplayRenderer } from './displays/index.js';
|
|
11
11
|
export { ANONYMIZATION_POLICY_VERSION, AnalyticsDataContract, AnalyticsDataContractSource, AnalyticsEligibilityDecision, AnonymizationContext, AnonymizationEngine, AnonymizationFieldMetadata, AnonymizationLifecycleEvidence, AnonymizationMetadata, AnonymizationResult, AssetEventLike, DataClassificationRule, EvidencePacketLike, FieldRedactor, PLATFORM_PRIVACY_POLICY_VERSION, PlatformDataClass, RedactionMethod, RedactionRule, RetentionRule, anonymizeAssetEventPayload, anonymizeEvidencePacket, anonymizeJsonValue, buildAnonymizationLifecycleEvidence, stableChecksum } from './privacy/index.js';
|
|
12
12
|
export { EvidenceGenerationContext, EvidencePacketEnvelope, EvidencePacketReference, EvidencePacketStatus, EvidencePacketSubject, EvidenceRenderer } from './evidence/index.js';
|
|
13
|
+
export { ExecutionAttestation, ExecutionPrincipal, ExternalReconciliation, ExternalResourceOperation, ExternalResourceRef, MutationFootprint, MutationFootprintEntry, MutationGovernanceContext, MutationGovernanceResolutionInput, MutationGovernanceResolver, PolicyObligation, PolicyObligationStatus, ReconciliationStatus, assertMutationGovernanceContext } from './governance/index.js';
|
|
13
14
|
export { AgentActionPolicyContext, AgentActionPolicyDecision, AgentActionPolicyDefinition, AgentActionPolicyEvaluator, AgentActionPolicyRegistry, AgentActionRiskTier, AgentActionRoute } from './agent-hitl/index.js';
|
|
14
15
|
export { FakeActionContextOptions, createDeterministicIdFactory, createFakeActionContext, createInMemoryAdapterRegistry } from './testing/index.js';
|
package/dist/index.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
export { FABRIC_ID_PREFIXES, createFabricId, isFabricId, parseFabricId } from './chunk-RALMUSOX.js';
|
|
1
2
|
export { createModuleRegistry, getEventTypeName, getModuleDependencyNamespace, getObjectTypeName, registerFabricModule, registerFabricModules, validateModuleNamespace } from './chunk-35DD3H55.js';
|
|
2
3
|
export { assertObjectType, getRegisteredObjectTypes, isValidObjectType, registerObjectType } from './chunk-I35B576X.js';
|
|
3
4
|
export { aggregatePolicyOutcomes, assertPolicyId, evaluatePolicyDefinition, evaluatePolicyDefinitions, evaluateRegisteredPolicies, getRegisteredPolicyIds, registerPolicy, registerPolicyIfMissing, resolvePolicy, validateDataPolicyDefinition, validatePolicyGuidance } from './chunk-6ER62UUN.js';
|
|
@@ -11,6 +12,6 @@ export { AgentActionPolicyRegistry } from './chunk-OFCCZ27Z.js';
|
|
|
11
12
|
export { denormalizeDisplaySnapshot, registerDisplayRenderer, renderEventDisplay, resolveDisplayRenderer } from './chunk-O5WVBQ7P.js';
|
|
12
13
|
export { createEventTypeRegistry, getRegisteredEventTypes, getRegisteredSubjectTypes, isValidEventType, isValidSubjectType, registerEventType, registerSubjectType } from './chunk-4YQOGV7H.js';
|
|
13
14
|
import './chunk-OZLZHISS.js';
|
|
14
|
-
export {
|
|
15
|
+
export { assertMutationGovernanceContext } from './chunk-WGJBT66A.js';
|
|
15
16
|
//# sourceMappingURL=index.js.map
|
|
16
17
|
//# sourceMappingURL=index.js.map
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fabricorg/platform",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.8.0",
|
|
4
4
|
"description": "Generic, vertical-agnostic runtime for ontology-based business applications. Provides actions, modules, events, policies, state machines, adapters, displays, projections, privacy, and evidence contracts. Zero runtime dependencies; portable across any database client and any vertical (lending, insurance, healthcare, legal, etc.).",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"fabric",
|
|
@@ -98,6 +98,16 @@
|
|
|
98
98
|
"default": "./dist/evidence/index.cjs"
|
|
99
99
|
}
|
|
100
100
|
},
|
|
101
|
+
"./governance": {
|
|
102
|
+
"import": {
|
|
103
|
+
"types": "./dist/governance/index.d.ts",
|
|
104
|
+
"default": "./dist/governance/index.js"
|
|
105
|
+
},
|
|
106
|
+
"require": {
|
|
107
|
+
"types": "./dist/governance/index.d.cts",
|
|
108
|
+
"default": "./dist/governance/index.cjs"
|
|
109
|
+
}
|
|
110
|
+
},
|
|
101
111
|
"./ids": {
|
|
102
112
|
"import": {
|
|
103
113
|
"types": "./dist/ids/index.d.ts",
|