@fabricorg/platform 1.5.0 → 1.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 (71) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/README.md +25 -2
  3. package/dist/actions/index.cjs +6 -6
  4. package/dist/actions/index.d.cts +3 -1
  5. package/dist/actions/index.d.ts +3 -1
  6. package/dist/actions/index.js +1 -1
  7. package/dist/certification/index.cjs +8 -7
  8. package/dist/certification/index.d.cts +1 -0
  9. package/dist/certification/index.d.ts +1 -0
  10. package/dist/certification/index.js +5 -4
  11. package/dist/{chunk-ZBXFRJON.cjs → chunk-2URHPZXL.cjs} +20 -7
  12. package/dist/chunk-2URHPZXL.cjs.map +1 -0
  13. package/dist/chunk-D4SWRBUH.cjs +22 -0
  14. package/dist/chunk-D4SWRBUH.cjs.map +1 -0
  15. package/dist/{chunk-MSABJAED.cjs → chunk-DDX5FKOM.cjs} +2 -2
  16. package/dist/chunk-DDX5FKOM.cjs.map +1 -0
  17. package/dist/chunk-LFE74IJX.js +20 -0
  18. package/dist/chunk-LFE74IJX.js.map +1 -0
  19. package/dist/{chunk-JG35DT2G.js → chunk-MLBALEUR.js} +5 -2
  20. package/dist/chunk-MLBALEUR.js.map +1 -0
  21. package/dist/{chunk-2W6FORTE.js → chunk-OZWUNGJE.js} +2 -2
  22. package/dist/chunk-OZWUNGJE.js.map +1 -0
  23. package/dist/{chunk-MC3GSVJ6.js → chunk-QHV6LOS6.js} +17 -4
  24. package/dist/chunk-QHV6LOS6.js.map +1 -0
  25. package/dist/{chunk-CXR6KEKQ.cjs → chunk-SNTV45LH.cjs} +5 -2
  26. package/dist/chunk-SNTV45LH.cjs.map +1 -0
  27. package/dist/{chunk-KIVQBZOA.cjs → chunk-TMMP4U2D.cjs} +7 -4
  28. package/dist/chunk-TMMP4U2D.cjs.map +1 -0
  29. package/dist/{chunk-DDO4EQ2J.js → chunk-UYCQV65U.js} +3 -3
  30. package/dist/{chunk-DDO4EQ2J.js.map → chunk-UYCQV65U.js.map} +1 -1
  31. package/dist/{chunk-PFKTD7V5.cjs → chunk-XS7EUS4T.cjs} +4 -4
  32. package/dist/{chunk-PFKTD7V5.cjs.map → chunk-XS7EUS4T.cjs.map} +1 -1
  33. package/dist/{chunk-GRBZYDEV.js → chunk-ZF5HDNSU.js} +6 -3
  34. package/dist/chunk-ZF5HDNSU.js.map +1 -0
  35. package/dist/discovery/index.cjs +12 -0
  36. package/dist/discovery/index.cjs.map +1 -0
  37. package/dist/discovery/index.d.cts +10 -0
  38. package/dist/discovery/index.d.ts +10 -0
  39. package/dist/discovery/index.js +3 -0
  40. package/dist/discovery/index.js.map +1 -0
  41. package/dist/governance/index.d.cts +1 -0
  42. package/dist/governance/index.d.ts +1 -0
  43. package/dist/index.cjs +62 -57
  44. package/dist/index.d.cts +1 -0
  45. package/dist/index.d.ts +1 -0
  46. package/dist/index.js +8 -7
  47. package/dist/manifest/index.cjs +10 -9
  48. package/dist/manifest/index.d.cts +3 -2
  49. package/dist/manifest/index.d.ts +3 -2
  50. package/dist/manifest/index.js +4 -3
  51. package/dist/modules/index.cjs +11 -10
  52. package/dist/modules/index.d.cts +1 -0
  53. package/dist/modules/index.d.ts +1 -0
  54. package/dist/modules/index.js +3 -2
  55. package/dist/policies/index.d.cts +1 -0
  56. package/dist/policies/index.d.ts +1 -0
  57. package/dist/projections/index.cjs +6 -5
  58. package/dist/projections/index.d.cts +2 -1
  59. package/dist/projections/index.d.ts +2 -1
  60. package/dist/projections/index.js +2 -1
  61. package/dist/testing/index.d.cts +1 -0
  62. package/dist/testing/index.d.ts +1 -0
  63. package/package.json +12 -2
  64. package/dist/chunk-2W6FORTE.js.map +0 -1
  65. package/dist/chunk-CXR6KEKQ.cjs.map +0 -1
  66. package/dist/chunk-GRBZYDEV.js.map +0 -1
  67. package/dist/chunk-JG35DT2G.js.map +0 -1
  68. package/dist/chunk-KIVQBZOA.cjs.map +0 -1
  69. package/dist/chunk-MC3GSVJ6.js.map +0 -1
  70. package/dist/chunk-MSABJAED.cjs.map +0 -1
  71. package/dist/chunk-ZBXFRJON.cjs.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../modules/index.ts"],"names":[],"mappings":"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","file":"chunk-ZF5HDNSU.js","sourcesContent":["import { assertSurfaceDeclaration } from \"../discovery\";\nimport type { ActionDefinition } from \"../actions\";\nimport { createEventContractRegistry } from \"../events\";\nimport {\n\tassertPortableJsonSchema,\n\ttype JsonValue,\n\ttype PortableJsonSchema,\n} from \"../objects\";\nimport type { PolicyEvaluator, PolicyId } from \"../policies\";\nimport type { StateMachineDefinition } from \"../state-machines\";\nimport { viewContractKey, type ViewContract } from \"../projections\";\n\nexport interface ModuleDependency {\n\tnamespace: string;\n\tversion?: string;\n\toptional?: boolean;\n}\n\nexport type ModuleDependencyInput = string | ModuleDependency;\n\nexport interface IdPrefixRegistration {\n\tprefix: string;\n\tname: string;\n\tmodule: string;\n}\n\nexport interface EventTypeRegistration {\n\teventType: string;\n\tschemaVersion: number;\n\tdescription?: string;\n\tschema?: PortableJsonSchema;\n}\n\nexport type EventTypeRegistrationInput = string | EventTypeRegistration;\n\nexport interface ObjectTypeRegistration {\n\ttype: string;\n\tdisplayName?: string;\n\tidPrefix?: string;\n\tisCoreModuleType?: boolean;\n\tschema?: PortableJsonSchema;\n\tsemantics?: Record<string, JsonValue>;\n\trelations?: ObjectRelationDefinition[];\n\tinvariants?: DeclarativeInvariant[];\n}\n\nexport type ObjectRelationCardinality = \"one\" | \"many\";\nexport type ObjectRelationSemantics = \"reference\" | \"owned\";\nexport type ObjectRelationDeleteBehavior = \"restrict\" | \"cascade\" | \"set-null\";\n\nexport interface ObjectRelationDefinition {\n\tname: string;\n\ttarget: `${string}.${string}`;\n\tcardinality: ObjectRelationCardinality;\n\trequired?: boolean;\n\tsemantics: ObjectRelationSemantics;\n\tonTargetDelete: ObjectRelationDeleteBehavior;\n}\n\nexport type InvariantEnforcement =\n\t| \"json-schema\"\n\t| \"state-machine\"\n\t| \"policy\"\n\t| \"host-adapter\"\n\t| \"application\";\n\nexport interface DeclarativeInvariant {\n\tid: string;\n\tdescription: string;\n\trequired?: boolean;\n\tenforcement: InvariantEnforcement;\n\tenforcementRef?: string;\n}\n\nexport type ObjectTypeRegistrationInput = string | ObjectTypeRegistration;\n\nexport interface PolicyRegistration {\n\tid: string;\n\tversion?: string;\n\tdescription?: string;\n}\n\nexport interface StateMachineRegistration {\n\tentityType: string;\n\tstates: string[];\n}\n\nexport interface CapabilityPortRequirement {\n\tname: string;\n\tversion?: string;\n\tstandard?: { name: string; version?: string };\n}\n\nexport interface CapabilityRequirements {\n\tports?: CapabilityPortRequirement[];\n\tpermissions?: string[];\n\tentitlements?: string[];\n\tfeatureFlags?: string[];\n}\n\nexport interface CapabilityWorkflowTimer {\n\t/** Workflow-local identity of the deadline, for example \"right-to-cure\". */\n\tname: string;\n\t/** Configuration key the duration is resolved from when the workflow starts. */\n\tconfigKey: string;\n\tdescription?: string;\n}\n\nexport interface CapabilityWorkflowCompensation {\n\t/** Workflow step whose effect this reverses. */\n\tstep: string;\n\t/** Governed action that performs the reversal. Must belong to the declaring module. */\n\tactionId: `${string}.${string}`;\n}\n\n/**\n * A durable workflow this capability owns. Declaring it makes durability a\n * reviewable fact of the contract rather than a property of worker deployment:\n * the queue it runs on, the deadlines it carries, and what reverses each step\n * are all diffable.\n */\nexport interface CapabilityWorkflowDeclaration {\n\tname: string;\n\t/** Routing identity, conventionally `capability.vertical`. */\n\ttaskQueue: string;\n\t/** Event type whose arrival starts this workflow by choreography. */\n\tstartedBy?: string;\n\ttimers?: CapabilityWorkflowTimer[];\n\tcompensations?: CapabilityWorkflowCompensation[];\n}\n\nexport interface CapabilityMetadata {\n\tdisplayName: string;\n\tdescription: string;\n\tstability: \"experimental\" | \"beta\" | \"stable\" | \"deprecated\";\n\tdeprecated?: { since: string; replacement?: string; message: string };\n\trequirements?: CapabilityRequirements;\n\tcertification?: { profile: string; required: boolean };\n\t/** Durable workflows this capability owns, with their queues, deadlines and reversals. */\n\tworkflows?: CapabilityWorkflowDeclaration[];\n\t/** Namespaced declared data preserved by Platform and interpreted only by its owning package. */\n\textensions?: Record<string, JsonValue>;\n}\n\nexport interface FabricModule<TDb = unknown> {\n\tnamespace: string;\n\tversion?: string;\n\t/** Compiler manifest digest for exact runtime assembly verification. */\n\tmanifestDigest?: string;\n\tdisplayName?: string;\n\tdescription?: string;\n\tcapability?: CapabilityMetadata;\n\tdependencies?: ModuleDependencyInput[];\n\tobjectTypes?: ObjectTypeRegistrationInput[];\n\tsubjectTypes?: string[];\n\tidPrefixes?: IdPrefixRegistration[];\n\teventTypes?: EventTypeRegistrationInput[];\n\tactions?: ActionDefinition<TDb>[];\n\tpolicies?: unknown[];\n\tstateMachines?: unknown[];\n\tadapterDefinitions?: unknown[];\n\tpermissions?: unknown[];\n\troles?: unknown[];\n\tredactionRules?: unknown[];\n\tdataClassifications?: unknown[];\n\tretentionRules?: unknown[];\n\tevidenceRenderers?: unknown[];\n\tviews?: ViewContract[];\n}\n\nexport interface ModuleRegistry<TDb = unknown> {\n\tmodules: ReadonlyMap<string, FabricModule<TDb>>;\n\torderedModules: readonly FabricModule<TDb>[];\n\tresolveAction(actionId: `${string}.${string}`): ActionDefinition<TDb> | undefined;\n\tresolvePolicy(policyId: PolicyId): PolicyEvaluator | undefined;\n\tresolveStateMachine(entityType: string): StateMachineDefinition | undefined;\n\tresolveView(name: string, version: string): ViewContract | undefined;\n}\n\ninterface ModuleValidationContext {\n\tavailableNamespaces?: Set<string>;\n\tplannedEventTypes?: Set<string>;\n\tavailableObjectTypes?: Set<string>;\n}\n\nexport function getModuleDependencyNamespace(dependency: ModuleDependencyInput): string {\n\treturn typeof dependency === \"string\" ? dependency : dependency.namespace;\n}\n\nexport function getObjectTypeName(objectType: ObjectTypeRegistrationInput): string {\n\treturn typeof objectType === \"string\" ? objectType : objectType.type;\n}\n\nexport function getEventTypeName(eventType: EventTypeRegistrationInput): string {\n\treturn typeof eventType === \"string\" ? eventType : eventType.eventType;\n}\n\nexport function validateModuleNamespace(namespace: string): void {\n\tif (!namespace) {\n\t\tthrow new Error(\"Module namespace cannot be empty\");\n\t}\n\tif (!/^[a-z][a-z0-9-]*$/.test(namespace)) {\n\t\tthrow new Error(\n\t\t\t`Invalid module namespace: \"${namespace}\". Must be lowercase letters, numbers, and hyphens only.`,\n\t\t);\n\t}\n}\n\nexport function createModuleRegistry<TDb = unknown>(\n\tmodules: FabricModule<TDb>[] = [],\n): ModuleRegistry<TDb> {\n\tconst orderedModules = validateAndOrderFabricModules(modules);\n\tconst registered = new Map(orderedModules.map((module) => [module.namespace, module]));\n\tconst actions = new Map(orderedModules.flatMap((module) => (module.actions ?? []).map((action) => [action.actionId, action] as const)));\n\tconst policies = new Map(orderedModules.flatMap((module) => (module.policies ?? []).map((policy) => {\n\t\tconst evaluator = policy as PolicyEvaluator;\n\t\treturn [evaluator.policyId, evaluator] as const;\n\t})));\n\tconst machines = new Map(orderedModules.flatMap((module) => (module.stateMachines ?? []).map((machine) => {\n\t\tconst definition = machine as StateMachineDefinition;\n\t\treturn [definition.entityType, definition] as const;\n\t})));\n\tconst views = new Map(orderedModules.flatMap((module) => (module.views ?? []).map((view) => [viewContractKey(view), view] as const)));\n\treturn {\n\t\tmodules: registered,\n\t\torderedModules,\n\t\tresolveAction: (actionId) => actions.get(actionId),\n\t\tresolvePolicy: (policyId) => policies.get(policyId),\n\t\tresolveStateMachine: (entityType) => machines.get(entityType),\n\t\tresolveView: (name, version) => views.get(`${name}@${version}`),\n\t};\n}\n\nfunction validateIdentifierList(\n\tvalues: string[] | undefined,\n\tlabel: string,\n\tnamespace: string,\n): void {\n\tfor (const value of values ?? []) {\n\t\tif (!value) {\n\t\t\tthrow new Error(`Module \"${namespace}\" has an empty ${label} entry.`);\n\t\t}\n\t}\n}\n\nfunction assertJsonValue(value: unknown, path: string): asserts value is JsonValue {\n\tif (value === null || typeof value === \"string\" || typeof value === \"boolean\") return;\n\tif (typeof value === \"number\" && Number.isFinite(value)) return;\n\tif (Array.isArray(value)) {\n\t\tvalue.forEach((item, index) => assertJsonValue(item, `${path}[${index}]`));\n\t\treturn;\n\t}\n\tif (typeof value === \"object\") {\n\t\tfor (const [key, child] of Object.entries(value as Record<string, unknown>)) {\n\t\t\tassertJsonValue(child, `${path}.${key}`);\n\t\t}\n\t\treturn;\n\t}\n\tthrow new Error(`${path} must contain JSON-serializable values.`);\n}\n\nfunction qualifiedObjectType(namespace: string, type: string): string {\n\treturn `${namespace}.${type}`;\n}\n\nfunction validateObjectDefinition(\n\tobjectType: ObjectTypeRegistrationInput,\n\tnamespace: string,\n\tcontext: ModuleValidationContext,\n): void {\n\tif (typeof objectType === \"string\") return;\n\tif (objectType.schema !== undefined) {\n\t\tassertPortableJsonSchema(objectType.schema, `Module \"${namespace}\" object \"${objectType.type}\" schema`);\n\t}\n\tif (objectType.semantics !== undefined) {\n\t\tassertJsonValue(objectType.semantics, `Module \"${namespace}\" object \"${objectType.type}\" semantics`);\n\t}\n\tconst relationNames = new Set<string>();\n\tfor (const relation of objectType.relations ?? []) {\n\t\tif (!/^[a-z][a-zA-Z0-9]*$/.test(relation.name)) {\n\t\t\tthrow new Error(`Module \"${namespace}\" object \"${objectType.type}\" has invalid relation name \"${relation.name}\".`);\n\t\t}\n\t\tif (relationNames.has(relation.name)) {\n\t\t\tthrow new Error(`Module \"${namespace}\" object \"${objectType.type}\" has duplicate relation \"${relation.name}\".`);\n\t\t}\n\t\trelationNames.add(relation.name);\n\t\tif (!/^[a-z][a-z0-9-]*\\.[A-Z][a-zA-Z0-9]*$/.test(relation.target)) {\n\t\t\tthrow new Error(`Relation \"${relation.name}\" target \"${relation.target}\" must be module-qualified.`);\n\t\t}\n\t\tif (context.availableObjectTypes && !context.availableObjectTypes.has(relation.target)) {\n\t\t\tthrow new Error(`Relation \"${relation.name}\" targets missing object type \"${relation.target}\".`);\n\t\t}\n\t\tif (relation.required && relation.onTargetDelete === \"set-null\") {\n\t\t\tthrow new Error(`Required relation \"${relation.name}\" cannot use onTargetDelete \"set-null\".`);\n\t\t}\n\t}\n\tconst invariantIds = new Set<string>();\n\tfor (const invariant of objectType.invariants ?? []) {\n\t\tif (!invariant.id.trim() || !invariant.description.trim()) {\n\t\t\tthrow new Error(`Module \"${namespace}\" object \"${objectType.type}\" has an invariant without an id or description.`);\n\t\t}\n\t\tif (invariantIds.has(invariant.id)) {\n\t\t\tthrow new Error(`Module \"${namespace}\" object \"${objectType.type}\" has duplicate invariant \"${invariant.id}\".`);\n\t\t}\n\t\tinvariantIds.add(invariant.id);\n\t\tif (invariant.required && !invariant.enforcementRef?.trim()) {\n\t\t\tthrow new Error(`Required invariant \"${invariant.id}\" must declare enforcementRef.`);\n\t\t}\n\t}\n}\n\nfunction validateCapabilityWorkflows(module: FabricModule<unknown>, context: ModuleValidationContext): void {\n\tconst workflows = module.capability?.workflows ?? [];\n\tconst actionsById = new Map((module.actions ?? []).map((action) => [action.actionId, action]));\n\tconst names = new Set<string>();\n\tfor (const workflow of workflows) {\n\t\tif (!/^[A-Za-z][A-Za-z0-9_-]*$/.test(workflow.name)) {\n\t\t\tthrow new Error(`Module \"${module.namespace}\" declares invalid workflow name \"${workflow.name}\".`);\n\t\t}\n\t\tif (names.has(workflow.name)) {\n\t\t\tthrow new Error(`Module \"${module.namespace}\" declares duplicate workflow \"${workflow.name}\".`);\n\t\t}\n\t\tnames.add(workflow.name);\n\t\tif (!/^[a-z][a-z0-9-]*(\\.[a-z][a-z0-9-]*)*$/.test(workflow.taskQueue)) {\n\t\t\tthrow new Error(`Module \"${module.namespace}\" workflow \"${workflow.name}\" declares invalid task queue \"${workflow.taskQueue}\".`);\n\t\t}\n\t\tif (workflow.startedBy !== undefined) {\n\t\t\tconst known = context.plannedEventTypes?.has(workflow.startedBy)\n\t\t\t\t?? (module.eventTypes ?? []).some((eventType) => getEventTypeName(eventType) === workflow.startedBy);\n\t\t\tif (!known) {\n\t\t\t\tthrow new Error(`Module \"${module.namespace}\" workflow \"${workflow.name}\" is started by unknown event type \"${workflow.startedBy}\".`);\n\t\t\t}\n\t\t}\n\t\tconst timerNames = new Set<string>();\n\t\tfor (const timer of workflow.timers ?? []) {\n\t\t\tif (!timer.name.trim() || !timer.configKey.trim()) {\n\t\t\t\tthrow new Error(`Module \"${module.namespace}\" workflow \"${workflow.name}\" has a timer without a name or configKey.`);\n\t\t\t}\n\t\t\tif (timerNames.has(timer.name)) {\n\t\t\t\tthrow new Error(`Module \"${module.namespace}\" workflow \"${workflow.name}\" declares duplicate timer \"${timer.name}\".`);\n\t\t\t}\n\t\t\ttimerNames.add(timer.name);\n\t\t}\n\t\tconst steps = new Set<string>();\n\t\tfor (const compensation of workflow.compensations ?? []) {\n\t\t\tif (!compensation.step.trim()) {\n\t\t\t\tthrow new Error(`Module \"${module.namespace}\" workflow \"${workflow.name}\" has a compensation without a step.`);\n\t\t\t}\n\t\t\tif (steps.has(compensation.step)) {\n\t\t\t\tthrow new Error(`Module \"${module.namespace}\" workflow \"${workflow.name}\" declares duplicate compensation for step \"${compensation.step}\".`);\n\t\t\t}\n\t\t\tsteps.add(compensation.step);\n\t\t\tconst compensatingAction = actionsById.get(compensation.actionId);\n\t\t\tif (!compensatingAction) {\n\t\t\t\tthrow new Error(`Module \"${module.namespace}\" workflow \"${workflow.name}\" compensates step \"${compensation.step}\" with unknown action \"${compensation.actionId}\".`);\n\t\t\t}\n\t\t\t// An unwind is retried like any other durable step, so a reversal that cannot be\n\t\t\t// safely repeated would turn one failure into a different kind of corruption.\n\t\t\tif (!compensatingAction.idempotent || compensatingAction.execution?.idempotency === \"prohibited\") {\n\t\t\t\tthrow new Error(`Module \"${module.namespace}\" workflow \"${workflow.name}\" compensates step \"${compensation.step}\" with non-idempotent action \"${compensation.actionId}\"; a reversal must be safely repeatable.`);\n\t\t\t}\n\t\t}\n\t}\n}\n\nfunction validateManifest(module: FabricModule<unknown>, context: ModuleValidationContext = {}): void {\n\tvalidateModuleNamespace(module.namespace);\n\n\tconst dependencies = (module.dependencies ?? []).map(getModuleDependencyNamespace);\n\tconst objectTypes = (module.objectTypes ?? []).map(getObjectTypeName);\n\tconst eventTypes = (module.eventTypes ?? []).map(getEventTypeName);\n\tif (module.capability) {\n\t\tif (!module.capability.displayName.trim() || !module.capability.description.trim()) {\n\t\t\tthrow new Error(`Module \"${module.namespace}\" capability requires displayName and description.`);\n\t\t}\n\t\tfor (const namespace of Object.keys(module.capability.extensions ?? {})) {\n\t\t\tif (!/^[a-z][a-z0-9.-]*\\.[a-z0-9.-]+\\/v[1-9][0-9]*$/.test(namespace)) {\n\t\t\t\tthrow new Error(`Module \"${module.namespace}\" capability has invalid extension namespace \"${namespace}\".`);\n\t\t\t}\n\t\t}\n\t\tfor (const port of module.capability.requirements?.ports ?? []) {\n\t\t\t// Dotted segments are permitted so a capability can require a port\n\t\t\t// defined outside this repository: an enterprise integrates hundreds\n\t\t\t// of external systems, and namespacing is what keeps two of them from\n\t\t\t// colliding on a name. Widening only, so existing names still parse.\n\t\t\tif (!/^[a-z][a-z0-9-]*(?:\\.[a-z0-9-]+)*$/.test(port.name)) throw new Error(`Module \"${module.namespace}\" capability has invalid port requirement \"${port.name}\".`);\n\t\t}\n\t\tvalidateCapabilityWorkflows(module, context);\n\t}\n\tfor (const eventType of module.eventTypes ?? []) if (typeof eventType !== \"string\" && eventType.schema) assertPortableJsonSchema(eventType.schema, `Event \"${eventType.eventType}\" schema`);\n\tfor (const action of module.actions ?? []) {\n\t\tif (action.execution?.idempotency === \"required\" && !action.idempotent) throw new Error(`Action \"${action.actionId}\" requires idempotency but is not declared idempotent.`);\n\t\tif (action.execution?.connectivity === \"offline-capturable\" && action.execution.idempotency === \"prohibited\") throw new Error(`Offline action \"${action.actionId}\" cannot prohibit idempotency.`);\n\t\tif (action.execution?.completionDeadlineMs !== undefined && !(typeof action.execution.completionDeadlineMs === \"number\" && action.execution.completionDeadlineMs > 0)) throw new Error(`Action \"${action.actionId}\" completionDeadlineMs must be a positive number of milliseconds.`);\n\t\tif (action.execution?.completion === \"immediate\" && action.execution.completionDeadlineMs !== undefined) throw new Error(`Immediate action \"${action.actionId}\" cannot declare a completion deadline; nothing external completes it.`);\n\t}\n\tfor (const view of module.views ?? []) if (view.usage?.collection?.filterSchema) assertPortableJsonSchema(view.usage.collection.filterSchema, `View \"${view.name}\" filter schema`);\n\n\tfor (const dependency of dependencies) {\n\t\tvalidateModuleNamespace(dependency);\n\t\tif (dependency === module.namespace) {\n\t\t\tthrow new Error(`Module \"${module.namespace}\" cannot depend on itself.`);\n\t\t}\n\t\tif (context.availableNamespaces && !context.availableNamespaces.has(dependency)) {\n\t\t\tthrow new Error(`Module \"${module.namespace}\" depends on missing module \"${dependency}\".`);\n\t\t}\n\t}\n\n\tvalidateIdentifierList(objectTypes, \"objectTypes\", module.namespace);\n\tvalidateIdentifierList(module.subjectTypes, \"subjectTypes\", module.namespace);\n\tvalidateIdentifierList(eventTypes, \"eventTypes\", module.namespace);\n\n\tfor (const objectType of objectTypes) {\n\t\tif (!/^[A-Z][a-zA-Z0-9]*$/.test(objectType)) {\n\t\t\tthrow new Error(\n\t\t\t\t`Invalid object type: \"${objectType}\". Object types must be PascalCase alphanumeric.`,\n\t\t\t);\n\t\t}\n\t}\n\tfor (const objectType of module.objectTypes ?? []) {\n\t\tif (typeof objectType !== \"string\") {\n\t\t\tfor (const relation of objectType.relations ?? []) {\n\t\t\t\tconst targetNamespace = relation.target.slice(0, relation.target.indexOf(\".\"));\n\t\t\t\tif (targetNamespace !== module.namespace && !dependencies.includes(targetNamespace)) {\n\t\t\t\t\tthrow new Error(`Module \"${module.namespace}\" relation \"${relation.name}\" targets module \"${targetNamespace}\" without declaring it as a dependency.`);\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tvalidateObjectDefinition(objectType, module.namespace, context);\n\t}\n\n\tfor (const action of module.actions ?? []) {\n\t\tassertSurfaceDeclaration(action, `Action \"${action?.actionId ?? \"unknown\"}\"`);\n\t\tlet parameterSchema: unknown;\n\t\ttry { parameterSchema = (action.schema as { toJSONSchema?: () => unknown }).toJSONSchema?.(); } catch { parameterSchema = undefined; }\n\t\tif (parameterSchema !== undefined) assertPortableJsonSchema(parameterSchema, `Action \"${action.actionId}\" parameters`);\n\t\tlet resultSchema: unknown;\n\t\ttry { resultSchema = (action.resultSchema as { toJSONSchema?: () => unknown } | undefined)?.toJSONSchema?.(); } catch { resultSchema = undefined; }\n\t\tif (resultSchema !== undefined) assertPortableJsonSchema(resultSchema, `Action \"${action.actionId}\" result`);\n\t\tif (!/^[a-z][a-z0-9-]*\\.[a-z][a-z0-9_]*$/.test(action.actionId)) {\n\t\t\tthrow new Error(`Invalid action ID: ${action.actionId}`);\n\t\t}\n\n\t\tif (action.namespace !== module.namespace) {\n\t\t\tthrow new Error(\n\t\t\t\t`Action \"${action.actionId}\" declares namespace \"${action.namespace}\" ` +\n\t\t\t\t\t`but is registered by module \"${module.namespace}\".`,\n\t\t\t);\n\t\t}\n\n\t\tif (!action.actionId.startsWith(`${module.namespace}.`)) {\n\t\t\tthrow new Error(\n\t\t\t\t`Action \"${action.actionId}\" must start with module namespace \"${module.namespace}.\"`,\n\t\t\t);\n\t\t}\n\n\t\tif (action.mutatesDomain && action.emitsEvents.length === 0) {\n\t\t\tthrow new Error(\n\t\t\t\t`Action \"${action.actionId}\" mutates domain but emits no events. ` +\n\t\t\t\t\t`Every mutating action must emit at least one AssetEvent.`,\n\t\t\t);\n\t\t}\n\t}\n\n\tconst viewKeys = new Set<string>();\n\tfor (const view of module.views ?? []) {\n\t\tassertSurfaceDeclaration(view, `View \"${view?.name ?? \"unknown\"}\"`);\n\t\tif (!view.name.startsWith(`${module.namespace}/`) || !/^[a-z][a-z0-9-]*\\/[a-z][a-z0-9/_-]*$/.test(view.name)) {\n\t\t\tthrow new Error(`View \"${view.name}\" must start with module namespace \"${module.namespace}/\" and use lowercase path segments.`);\n\t\t}\n\t\tif (!view.version.trim()) throw new Error(`View \"${view.name}\" must declare a version.`);\n\t\tconst key = `${view.name}@${view.version}`;\n\t\tif (viewKeys.has(key)) throw new Error(`Module \"${module.namespace}\" has duplicate view contract \"${key}\".`);\n\t\tviewKeys.add(key);\n\t\tassertPortableJsonSchema(view.shape, `View \"${key}\" shape`);\n\t\tif (view.parameterSchema !== undefined) assertPortableJsonSchema(view.parameterSchema, `View \"${key}\" parameters`);\n\t\tif (!Number.isInteger(view.snapshotVersion) || view.snapshotVersion < 1) {\n\t\t\tthrow new Error(`View \"${key}\" snapshotVersion must be a positive integer.`);\n\t\t}\n\t\tif ((view.compatibleSnapshotVersions?.some((version) => version !== view.snapshotVersion) ?? false) && !view.upgradeSnapshot) {\n\t\t\tthrow new Error(`View \"${key}\" declares older compatible snapshots but no upgradeSnapshot function.`);\n\t\t}\n\t\tfor (const consumption of view.consumes) {\n\t\t\tconst isPlanned = context.plannedEventTypes?.has(consumption.eventType) ?? false;\n\t\t\tconst isModuleEvent = eventTypes.includes(consumption.eventType);\n\t\t\tif (!isPlanned && !isModuleEvent) {\n\t\t\t\tthrow new Error(`View \"${key}\" consumes unknown event type \"${consumption.eventType}\".`);\n\t\t\t}\n\t\t\tif (consumption.schemaVersions.length === 0 || consumption.schemaVersions.some((version) => !Number.isInteger(version) || version < 1)) {\n\t\t\t\tthrow new Error(`View \"${key}\" must declare positive consumed schema versions for \"${consumption.eventType}\".`);\n\t\t\t}\n\t\t}\n\t}\n}\n\nfunction sortModulesByDependency(\n\tmodules: FabricModule<unknown>[],\n\tregisteredNamespaces: ReadonlySet<string> = new Set(),\n): FabricModule<unknown>[] {\n\tconst modulesByNamespace = new Map<string, FabricModule<unknown>>();\n\n\tfor (const module of modules) {\n\t\tvalidateModuleNamespace(module.namespace);\n\t\tif (modulesByNamespace.has(module.namespace)) {\n\t\t\tthrow new Error(`Duplicate FabricModule namespace \"${module.namespace}\".`);\n\t\t}\n\t\tmodulesByNamespace.set(module.namespace, module);\n\t}\n\n\tconst sorted: FabricModule<unknown>[] = [];\n\tconst visiting = new Set<string>();\n\tconst visited = new Set<string>();\n\n\tfunction visit(module: FabricModule<unknown>, path: string[]): void {\n\t\tif (visited.has(module.namespace)) {\n\t\t\treturn;\n\t\t}\n\t\tif (visiting.has(module.namespace)) {\n\t\t\tthrow new Error(\n\t\t\t\t`Cyclic Fabric module dependency detected: ${[...path, module.namespace].join(\" -> \")}`,\n\t\t\t);\n\t\t}\n\n\t\tvisiting.add(module.namespace);\n\t\tfor (const dependency of (module.dependencies ?? []).map(getModuleDependencyNamespace)) {\n\t\t\tconst dependencyModule = modulesByNamespace.get(dependency);\n\t\t\tif (!dependencyModule) {\n\t\t\t\tif (registeredNamespaces.has(dependency)) {\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\t\t\t\tthrow new Error(`Module \"${module.namespace}\" depends on missing module \"${dependency}\".`);\n\t\t\t}\n\t\t\tvisit(dependencyModule, [...path, module.namespace]);\n\t\t}\n\t\tvisiting.delete(module.namespace);\n\t\tvisited.add(module.namespace);\n\t\tsorted.push(module);\n\t}\n\n\tfor (const module of modules) {\n\t\tvisit(module, []);\n\t}\n\n\treturn sorted;\n}\n\nfunction assertAcyclicRelations(modules: FabricModule<unknown>[]): void {\n\tconst relationKinds = [\n\t\t{ label: \"owned containment\", include: (relation: ObjectRelationDefinition) => relation.semantics === \"owned\" },\n\t\t{ label: \"cascade-delete\", include: (relation: ObjectRelationDefinition) => relation.onTargetDelete === \"cascade\" },\n\t\t{ label: \"required-construction\", include: (relation: ObjectRelationDefinition) => relation.required === true },\n\t];\n\tfor (const kind of relationKinds) {\n\t\tconst edges = new Map<string, string[]>();\n\t\tfor (const module of modules) {\n\t\t\tfor (const objectType of module.objectTypes ?? []) {\n\t\t\t\tif (typeof objectType === \"string\") continue;\n\t\t\t\tconst source = qualifiedObjectType(module.namespace, objectType.type);\n\t\t\t\tedges.set(source, (objectType.relations ?? []).filter(kind.include).map((relation) => relation.target));\n\t\t\t}\n\t\t}\n\t\tconst visiting = new Set<string>();\n\t\tconst visited = new Set<string>();\n\t\tconst visit = (node: string, path: string[]): void => {\n\t\t\tif (visiting.has(node)) {\n\t\t\t\tthrow new Error(`${kind.label} relation cycle detected: ${[...path, node].join(\" -> \")}`);\n\t\t\t}\n\t\t\tif (visited.has(node)) return;\n\t\t\tvisiting.add(node);\n\t\t\tfor (const target of edges.get(node) ?? []) visit(target, [...path, node]);\n\t\t\tvisiting.delete(node);\n\t\t\tvisited.add(node);\n\t\t};\n\t\tfor (const node of edges.keys()) visit(node, []);\n\t}\n}\n\nexport function validateAndOrderFabricModules<TDb = unknown>(modules: FabricModule<TDb>[]): FabricModule<TDb>[] {\n\tconst availableNamespaces = new Set(modules.map((module) => module.namespace));\n\tconst plannedEventTypes = new Set(\n\t\tmodules.flatMap((module) => (module.eventTypes ?? []).map(getEventTypeName)),\n\t);\n\tfor (const eventType of createEventContractRegistry().eventTypes()) plannedEventTypes.add(eventType);\n\tconst availableObjectTypes = new Set([\n\t\t...modules.flatMap((module) =>\n\t\t\t(module.objectTypes ?? []).map((objectType) => qualifiedObjectType(module.namespace, getObjectTypeName(objectType))),\n\t\t),\n\t]);\n\n\tfor (const module of modules) {\n\t\tvalidateManifest(module as FabricModule<unknown>, { availableNamespaces, plannedEventTypes, availableObjectTypes });\n\t}\n\tassertAcyclicRelations(modules as FabricModule<unknown>[]);\n\treturn sortModulesByDependency(modules as FabricModule<unknown>[]) as FabricModule<TDb>[];\n}\n\n/** @deprecated Use createModuleRegistry(); registration is now explicit and instance-scoped. */\nexport function registerFabricModules<TDb = unknown>(modules: FabricModule<TDb>[]): FabricModule<TDb>[] {\n\treturn validateAndOrderFabricModules(modules);\n}\n\n/** @deprecated Use createModuleRegistry([module]); registration is now explicit and instance-scoped. */\nexport function registerFabricModule<TDb = unknown>(module: FabricModule<TDb>): void {\n\tvalidateAndOrderFabricModules([module]);\n}\n"]}
@@ -0,0 +1,12 @@
1
+ 'use strict';
2
+
3
+ var chunkD4SWRBUH_cjs = require('../chunk-D4SWRBUH.cjs');
4
+
5
+
6
+
7
+ Object.defineProperty(exports, "assertSurfaceDeclaration", {
8
+ enumerable: true,
9
+ get: function () { return chunkD4SWRBUH_cjs.assertSurfaceDeclaration; }
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,10 @@
1
+ /** Portable discovery metadata. It never grants or denies runtime invocation authority. */
2
+ interface SurfaceDeclaration {
3
+ /** Omitted is public discovery; internal contracts are withheld from external catalogs. */
4
+ surface?: "public" | "internal";
5
+ /** Required, non-blank explanation when surface is internal; never include sensitive data. */
6
+ surfaceReason?: string;
7
+ }
8
+ declare function assertSurfaceDeclaration(value: unknown, label?: string): asserts value is SurfaceDeclaration;
9
+
10
+ export { type SurfaceDeclaration, assertSurfaceDeclaration };
@@ -0,0 +1,10 @@
1
+ /** Portable discovery metadata. It never grants or denies runtime invocation authority. */
2
+ interface SurfaceDeclaration {
3
+ /** Omitted is public discovery; internal contracts are withheld from external catalogs. */
4
+ surface?: "public" | "internal";
5
+ /** Required, non-blank explanation when surface is internal; never include sensitive data. */
6
+ surfaceReason?: string;
7
+ }
8
+ declare function assertSurfaceDeclaration(value: unknown, label?: string): asserts value is SurfaceDeclaration;
9
+
10
+ export { type SurfaceDeclaration, assertSurfaceDeclaration };
@@ -0,0 +1,3 @@
1
+ export { assertSurfaceDeclaration } from '../chunk-LFE74IJX.js';
2
+ //# sourceMappingURL=index.js.map
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"index.js"}
@@ -1,5 +1,6 @@
1
1
  import { ActorType } from '../actions/index.cjs';
2
2
  import { EvidencePacketReference } from '../evidence/index.cjs';
3
+ import '../discovery/index.cjs';
3
4
 
4
5
  /** Language-neutral governance contract version shared by TypeScript and .NET. */
5
6
  declare const FABRIC_GOVERNANCE_CONTRACT_VERSION: 1;
@@ -1,5 +1,6 @@
1
1
  import { ActorType } from '../actions/index.js';
2
2
  import { EvidencePacketReference } from '../evidence/index.js';
3
+ import '../discovery/index.js';
3
4
 
4
5
  /** Language-neutral governance contract version shared by TypeScript and .NET. */
5
6
  declare const FABRIC_GOVERNANCE_CONTRACT_VERSION: 1;
package/dist/index.cjs CHANGED
@@ -1,24 +1,37 @@
1
1
  'use strict';
2
2
 
3
+ var chunkWI7CWNYI_cjs = require('./chunk-WI7CWNYI.cjs');
3
4
  var chunkUSDLP4E7_cjs = require('./chunk-USDLP4E7.cjs');
5
+ var chunkTBS2S5AX_cjs = require('./chunk-TBS2S5AX.cjs');
4
6
  var chunkLZSE6QGQ_cjs = require('./chunk-LZSE6QGQ.cjs');
5
7
  var chunkVZ6C4LXC_cjs = require('./chunk-VZ6C4LXC.cjs');
6
8
  var chunkX3GHYMAJ_cjs = require('./chunk-X3GHYMAJ.cjs');
7
- var chunkWI7CWNYI_cjs = require('./chunk-WI7CWNYI.cjs');
8
- var chunkMSABJAED_cjs = require('./chunk-MSABJAED.cjs');
9
+ var chunkDDX5FKOM_cjs = require('./chunk-DDX5FKOM.cjs');
9
10
  var chunkXZQZQ5SW_cjs = require('./chunk-XZQZQ5SW.cjs');
10
11
  var chunkF3E5SXPN_cjs = require('./chunk-F3E5SXPN.cjs');
11
- var chunkPFKTD7V5_cjs = require('./chunk-PFKTD7V5.cjs');
12
- var chunkZBXFRJON_cjs = require('./chunk-ZBXFRJON.cjs');
13
- var chunkKIVQBZOA_cjs = require('./chunk-KIVQBZOA.cjs');
12
+ var chunkXS7EUS4T_cjs = require('./chunk-XS7EUS4T.cjs');
13
+ var chunk2URHPZXL_cjs = require('./chunk-2URHPZXL.cjs');
14
+ var chunkTMMP4U2D_cjs = require('./chunk-TMMP4U2D.cjs');
14
15
  var chunkIFW43ELT_cjs = require('./chunk-IFW43ELT.cjs');
15
- var chunkCXR6KEKQ_cjs = require('./chunk-CXR6KEKQ.cjs');
16
+ var chunkSNTV45LH_cjs = require('./chunk-SNTV45LH.cjs');
17
+ var chunkD4SWRBUH_cjs = require('./chunk-D4SWRBUH.cjs');
16
18
  var chunk2AE6TMAX_cjs = require('./chunk-2AE6TMAX.cjs');
17
19
  require('./chunk-PG5LYTUX.cjs');
18
- var chunkTBS2S5AX_cjs = require('./chunk-TBS2S5AX.cjs');
19
20
 
20
21
 
21
22
 
23
+ Object.defineProperty(exports, "createStateMachineRegistry", {
24
+ enumerable: true,
25
+ get: function () { return chunkWI7CWNYI_cjs.createStateMachineRegistry; }
26
+ });
27
+ Object.defineProperty(exports, "evaluateStateMachineTransition", {
28
+ enumerable: true,
29
+ get: function () { return chunkWI7CWNYI_cjs.evaluateStateMachineTransition; }
30
+ });
31
+ Object.defineProperty(exports, "validateStateMachineTransition", {
32
+ enumerable: true,
33
+ get: function () { return chunkWI7CWNYI_cjs.validateStateMachineTransition; }
34
+ });
22
35
  Object.defineProperty(exports, "createDeterministicIdFactory", {
23
36
  enumerable: true,
24
37
  get: function () { return chunkUSDLP4E7_cjs.createDeterministicIdFactory; }
@@ -31,6 +44,18 @@ Object.defineProperty(exports, "createInMemoryAdapterRegistry", {
31
44
  enumerable: true,
32
45
  get: function () { return chunkUSDLP4E7_cjs.createInMemoryAdapterRegistry; }
33
46
  });
47
+ Object.defineProperty(exports, "FABRIC_GOVERNANCE_CONTRACT_VERSION", {
48
+ enumerable: true,
49
+ get: function () { return chunkTBS2S5AX_cjs.FABRIC_GOVERNANCE_CONTRACT_VERSION; }
50
+ });
51
+ Object.defineProperty(exports, "assertGovernanceRuntimeEvidence", {
52
+ enumerable: true,
53
+ get: function () { return chunkTBS2S5AX_cjs.assertGovernanceRuntimeEvidence; }
54
+ });
55
+ Object.defineProperty(exports, "assertMutationGovernanceContext", {
56
+ enumerable: true,
57
+ get: function () { return chunkTBS2S5AX_cjs.assertMutationGovernanceContext; }
58
+ });
34
59
  Object.defineProperty(exports, "FABRIC_ID_PREFIXES", {
35
60
  enumerable: true,
36
61
  get: function () { return chunkLZSE6QGQ_cjs.FABRIC_ID_PREFIXES; }
@@ -115,37 +140,25 @@ Object.defineProperty(exports, "stableChecksum", {
115
140
  enumerable: true,
116
141
  get: function () { return chunkX3GHYMAJ_cjs.stableChecksum; }
117
142
  });
118
- Object.defineProperty(exports, "createStateMachineRegistry", {
119
- enumerable: true,
120
- get: function () { return chunkWI7CWNYI_cjs.createStateMachineRegistry; }
121
- });
122
- Object.defineProperty(exports, "evaluateStateMachineTransition", {
123
- enumerable: true,
124
- get: function () { return chunkWI7CWNYI_cjs.evaluateStateMachineTransition; }
125
- });
126
- Object.defineProperty(exports, "validateStateMachineTransition", {
127
- enumerable: true,
128
- get: function () { return chunkWI7CWNYI_cjs.validateStateMachineTransition; }
129
- });
130
143
  Object.defineProperty(exports, "ACTOR_TYPES", {
131
144
  enumerable: true,
132
- get: function () { return chunkMSABJAED_cjs.ACTOR_TYPES; }
145
+ get: function () { return chunkDDX5FKOM_cjs.ACTOR_TYPES; }
133
146
  });
134
147
  Object.defineProperty(exports, "assertActionId", {
135
148
  enumerable: true,
136
- get: function () { return chunkMSABJAED_cjs.assertActionId; }
149
+ get: function () { return chunkDDX5FKOM_cjs.assertActionId; }
137
150
  });
138
151
  Object.defineProperty(exports, "assertActorType", {
139
152
  enumerable: true,
140
- get: function () { return chunkMSABJAED_cjs.assertActorType; }
153
+ get: function () { return chunkDDX5FKOM_cjs.assertActorType; }
141
154
  });
142
155
  Object.defineProperty(exports, "createActionRegistry", {
143
156
  enumerable: true,
144
- get: function () { return chunkMSABJAED_cjs.createActionRegistry; }
157
+ get: function () { return chunkDDX5FKOM_cjs.createActionRegistry; }
145
158
  });
146
159
  Object.defineProperty(exports, "isActorType", {
147
160
  enumerable: true,
148
- get: function () { return chunkMSABJAED_cjs.isActorType; }
161
+ get: function () { return chunkDDX5FKOM_cjs.isActorType; }
149
162
  });
150
163
  Object.defineProperty(exports, "AdapterRegistry", {
151
164
  enumerable: true,
@@ -185,71 +198,71 @@ Object.defineProperty(exports, "AgentActionPolicyRegistry", {
185
198
  });
186
199
  Object.defineProperty(exports, "STRICT_EXECUTION_CONTRACT_PROFILE", {
187
200
  enumerable: true,
188
- get: function () { return chunkPFKTD7V5_cjs.STRICT_EXECUTION_CONTRACT_PROFILE; }
201
+ get: function () { return chunkXS7EUS4T_cjs.STRICT_EXECUTION_CONTRACT_PROFILE; }
189
202
  });
190
203
  Object.defineProperty(exports, "STRICT_EXECUTION_CONTRACT_PROFILE_ID", {
191
204
  enumerable: true,
192
- get: function () { return chunkPFKTD7V5_cjs.STRICT_EXECUTION_CONTRACT_PROFILE_ID; }
205
+ get: function () { return chunkXS7EUS4T_cjs.STRICT_EXECUTION_CONTRACT_PROFILE_ID; }
193
206
  });
194
207
  Object.defineProperty(exports, "executionContractProfile", {
195
208
  enumerable: true,
196
- get: function () { return chunkPFKTD7V5_cjs.executionContractProfile; }
209
+ get: function () { return chunkXS7EUS4T_cjs.executionContractProfile; }
197
210
  });
198
211
  Object.defineProperty(exports, "MODULE_MANIFEST_VERSION", {
199
212
  enumerable: true,
200
- get: function () { return chunkZBXFRJON_cjs.MODULE_MANIFEST_VERSION; }
213
+ get: function () { return chunk2URHPZXL_cjs.MODULE_MANIFEST_VERSION; }
201
214
  });
202
215
  Object.defineProperty(exports, "exportModuleManifest", {
203
216
  enumerable: true,
204
- get: function () { return chunkZBXFRJON_cjs.exportModuleManifest; }
217
+ get: function () { return chunk2URHPZXL_cjs.exportModuleManifest; }
205
218
  });
206
219
  Object.defineProperty(exports, "exportModuleManifestBundle", {
207
220
  enumerable: true,
208
- get: function () { return chunkZBXFRJON_cjs.exportModuleManifestBundle; }
221
+ get: function () { return chunk2URHPZXL_cjs.exportModuleManifestBundle; }
209
222
  });
210
223
  Object.defineProperty(exports, "isJsonSchemaExportableValidator", {
211
224
  enumerable: true,
212
- get: function () { return chunkZBXFRJON_cjs.isJsonSchemaExportableValidator; }
225
+ get: function () { return chunk2URHPZXL_cjs.isJsonSchemaExportableValidator; }
213
226
  });
214
227
  Object.defineProperty(exports, "normalizeModuleManifest", {
215
228
  enumerable: true,
216
- get: function () { return chunkZBXFRJON_cjs.normalizeModuleManifest; }
229
+ get: function () { return chunk2URHPZXL_cjs.normalizeModuleManifest; }
217
230
  });
218
231
  Object.defineProperty(exports, "normalizeModuleManifestBundle", {
219
232
  enumerable: true,
220
- get: function () { return chunkZBXFRJON_cjs.normalizeModuleManifestBundle; }
233
+ get: function () { return chunk2URHPZXL_cjs.normalizeModuleManifestBundle; }
221
234
  });
222
235
  Object.defineProperty(exports, "createModuleRegistry", {
223
236
  enumerable: true,
224
- get: function () { return chunkKIVQBZOA_cjs.createModuleRegistry; }
237
+ get: function () { return chunkTMMP4U2D_cjs.createModuleRegistry; }
225
238
  });
226
239
  Object.defineProperty(exports, "getEventTypeName", {
227
240
  enumerable: true,
228
- get: function () { return chunkKIVQBZOA_cjs.getEventTypeName; }
241
+ get: function () { return chunkTMMP4U2D_cjs.getEventTypeName; }
229
242
  });
230
243
  Object.defineProperty(exports, "getModuleDependencyNamespace", {
231
244
  enumerable: true,
232
- get: function () { return chunkKIVQBZOA_cjs.getModuleDependencyNamespace; }
245
+ get: function () { return chunkTMMP4U2D_cjs.getModuleDependencyNamespace; }
233
246
  });
234
247
  Object.defineProperty(exports, "getObjectTypeName", {
235
248
  enumerable: true,
236
- get: function () { return chunkKIVQBZOA_cjs.getObjectTypeName; }
249
+ get: function () { return chunkTMMP4U2D_cjs.getObjectTypeName; }
237
250
  });
238
251
  Object.defineProperty(exports, "registerFabricModule", {
239
252
  enumerable: true,
240
- get: function () { return chunkKIVQBZOA_cjs.registerFabricModule; }
253
+ get: function () { return chunkTMMP4U2D_cjs.registerFabricModule; }
241
254
  });
242
255
  Object.defineProperty(exports, "registerFabricModules", {
243
256
  enumerable: true,
244
- get: function () { return chunkKIVQBZOA_cjs.registerFabricModules; }
257
+ get: function () { return chunkTMMP4U2D_cjs.registerFabricModules; }
245
258
  });
246
259
  Object.defineProperty(exports, "validateAndOrderFabricModules", {
247
260
  enumerable: true,
248
- get: function () { return chunkKIVQBZOA_cjs.validateAndOrderFabricModules; }
261
+ get: function () { return chunkTMMP4U2D_cjs.validateAndOrderFabricModules; }
249
262
  });
250
263
  Object.defineProperty(exports, "validateModuleNamespace", {
251
264
  enumerable: true,
252
- get: function () { return chunkKIVQBZOA_cjs.validateModuleNamespace; }
265
+ get: function () { return chunkTMMP4U2D_cjs.validateModuleNamespace; }
253
266
  });
254
267
  Object.defineProperty(exports, "assertObjectType", {
255
268
  enumerable: true,
@@ -269,35 +282,27 @@ Object.defineProperty(exports, "validatePortableJson", {
269
282
  });
270
283
  Object.defineProperty(exports, "createViewRegistry", {
271
284
  enumerable: true,
272
- get: function () { return chunkCXR6KEKQ_cjs.createViewRegistry; }
285
+ get: function () { return chunkSNTV45LH_cjs.createViewRegistry; }
273
286
  });
274
287
  Object.defineProperty(exports, "replayEvents", {
275
288
  enumerable: true,
276
- get: function () { return chunkCXR6KEKQ_cjs.replayEvents; }
289
+ get: function () { return chunkSNTV45LH_cjs.replayEvents; }
277
290
  });
278
291
  Object.defineProperty(exports, "replayView", {
279
292
  enumerable: true,
280
- get: function () { return chunkCXR6KEKQ_cjs.replayView; }
293
+ get: function () { return chunkSNTV45LH_cjs.replayView; }
281
294
  });
282
295
  Object.defineProperty(exports, "viewContractKey", {
283
296
  enumerable: true,
284
- get: function () { return chunkCXR6KEKQ_cjs.viewContractKey; }
297
+ get: function () { return chunkSNTV45LH_cjs.viewContractKey; }
285
298
  });
286
- Object.defineProperty(exports, "createEventContractRegistry", {
299
+ Object.defineProperty(exports, "assertSurfaceDeclaration", {
287
300
  enumerable: true,
288
- get: function () { return chunk2AE6TMAX_cjs.createEventContractRegistry; }
301
+ get: function () { return chunkD4SWRBUH_cjs.assertSurfaceDeclaration; }
289
302
  });
290
- Object.defineProperty(exports, "FABRIC_GOVERNANCE_CONTRACT_VERSION", {
291
- enumerable: true,
292
- get: function () { return chunkTBS2S5AX_cjs.FABRIC_GOVERNANCE_CONTRACT_VERSION; }
293
- });
294
- Object.defineProperty(exports, "assertGovernanceRuntimeEvidence", {
295
- enumerable: true,
296
- get: function () { return chunkTBS2S5AX_cjs.assertGovernanceRuntimeEvidence; }
297
- });
298
- Object.defineProperty(exports, "assertMutationGovernanceContext", {
303
+ Object.defineProperty(exports, "createEventContractRegistry", {
299
304
  enumerable: true,
300
- get: function () { return chunkTBS2S5AX_cjs.assertMutationGovernanceContext; }
305
+ get: function () { return chunk2AE6TMAX_cjs.createEventContractRegistry; }
301
306
  });
302
307
  //# sourceMappingURL=index.cjs.map
303
308
  //# sourceMappingURL=index.cjs.map
package/dist/index.d.cts CHANGED
@@ -14,3 +14,4 @@ export { ExecutionAttestation, ExecutionPrincipal, ExternalReconciliation, Exter
14
14
  export { AgentActionPolicyContext, AgentActionPolicyDecision, AgentActionPolicyDefinition, AgentActionPolicyEvaluator, AgentActionPolicyRegistry, AgentActionRiskTier, AgentActionRoute } from './agent-hitl/index.cjs';
15
15
  export { FakeActionContextOptions, createDeterministicIdFactory, createFakeActionContext, createInMemoryAdapterRegistry } from './testing/index.cjs';
16
16
  export { ExecutionContractFinding, ExecutionContractFindingCode, ExecutionContractProfile, ExecutionContractProfileOptions, STRICT_EXECUTION_CONTRACT_PROFILE, STRICT_EXECUTION_CONTRACT_PROFILE_ID, executionContractProfile } from './certification/index.cjs';
17
+ export { SurfaceDeclaration, assertSurfaceDeclaration } from './discovery/index.cjs';
package/dist/index.d.ts CHANGED
@@ -14,3 +14,4 @@ export { ExecutionAttestation, ExecutionPrincipal, ExternalReconciliation, Exter
14
14
  export { AgentActionPolicyContext, AgentActionPolicyDecision, AgentActionPolicyDefinition, AgentActionPolicyEvaluator, AgentActionPolicyRegistry, AgentActionRiskTier, AgentActionRoute } from './agent-hitl/index.js';
15
15
  export { FakeActionContextOptions, createDeterministicIdFactory, createFakeActionContext, createInMemoryAdapterRegistry } from './testing/index.js';
16
16
  export { ExecutionContractFinding, ExecutionContractFindingCode, ExecutionContractProfile, ExecutionContractProfileOptions, STRICT_EXECUTION_CONTRACT_PROFILE, STRICT_EXECUTION_CONTRACT_PROFILE_ID, executionContractProfile } from './certification/index.js';
17
+ export { SurfaceDeclaration, assertSurfaceDeclaration } from './discovery/index.js';
package/dist/index.js CHANGED
@@ -1,18 +1,19 @@
1
+ export { createStateMachineRegistry, evaluateStateMachineTransition, validateStateMachineTransition } from './chunk-7GAWSUOG.js';
1
2
  export { createDeterministicIdFactory, createFakeActionContext, createInMemoryAdapterRegistry } from './chunk-DCC3UIUJ.js';
3
+ export { FABRIC_GOVERNANCE_CONTRACT_VERSION, assertGovernanceRuntimeEvidence, assertMutationGovernanceContext } from './chunk-Y2PJLRIY.js';
2
4
  export { FABRIC_ID_PREFIXES, createFabricId, isFabricId, parseFabricId } from './chunk-RALMUSOX.js';
3
5
  export { aggregatePolicyOutcomes, assertPolicyId, createPolicyRegistry, evaluatePolicyDefinition, evaluatePolicyDefinitions, evaluateRegisteredPolicies, validateDataPolicyDefinition, validatePolicyGuidance } from './chunk-JFVEPAED.js';
4
6
  export { ANONYMIZATION_POLICY_VERSION, AnonymizationEngine, FieldRedactor, PLATFORM_PRIVACY_POLICY_VERSION, anonymizeAssetEventPayload, anonymizeEvidencePacket, anonymizeJsonValue, buildAnonymizationLifecycleEvidence, stableChecksum } from './chunk-ATWWZTRC.js';
5
- export { createStateMachineRegistry, evaluateStateMachineTransition, validateStateMachineTransition } from './chunk-7GAWSUOG.js';
6
- export { ACTOR_TYPES, assertActionId, assertActorType, createActionRegistry, isActorType } from './chunk-2W6FORTE.js';
7
+ export { ACTOR_TYPES, assertActionId, assertActorType, createActionRegistry, isActorType } from './chunk-OZWUNGJE.js';
7
8
  export { AdapterRegistry, MissingAdapterRegistrationError, assertAdapterOutcomeConsistency, classifyAdapterOutcome, executeWithAdapterRetry, getRetryDelayMs, resolveAdapterRetryPolicy, shouldRetryAdapterOutcome } from './chunk-FAG2RTPM.js';
8
9
  export { AgentActionPolicyRegistry } from './chunk-OFCCZ27Z.js';
9
- export { STRICT_EXECUTION_CONTRACT_PROFILE, STRICT_EXECUTION_CONTRACT_PROFILE_ID, executionContractProfile } from './chunk-DDO4EQ2J.js';
10
- export { MODULE_MANIFEST_VERSION, exportModuleManifest, exportModuleManifestBundle, isJsonSchemaExportableValidator, normalizeModuleManifest, normalizeModuleManifestBundle } from './chunk-MC3GSVJ6.js';
11
- export { createModuleRegistry, getEventTypeName, getModuleDependencyNamespace, getObjectTypeName, registerFabricModule, registerFabricModules, validateAndOrderFabricModules, validateModuleNamespace } from './chunk-GRBZYDEV.js';
10
+ export { STRICT_EXECUTION_CONTRACT_PROFILE, STRICT_EXECUTION_CONTRACT_PROFILE_ID, executionContractProfile } from './chunk-UYCQV65U.js';
11
+ export { MODULE_MANIFEST_VERSION, exportModuleManifest, exportModuleManifestBundle, isJsonSchemaExportableValidator, normalizeModuleManifest, normalizeModuleManifestBundle } from './chunk-QHV6LOS6.js';
12
+ export { createModuleRegistry, getEventTypeName, getModuleDependencyNamespace, getObjectTypeName, registerFabricModule, registerFabricModules, validateAndOrderFabricModules, validateModuleNamespace } from './chunk-ZF5HDNSU.js';
12
13
  export { assertObjectType, assertPortableJsonSchema, createObjectTypeRegistry, validatePortableJson } from './chunk-ZAEVQSB5.js';
13
- export { createViewRegistry, replayEvents, replayView, viewContractKey } from './chunk-JG35DT2G.js';
14
+ export { createViewRegistry, replayEvents, replayView, viewContractKey } from './chunk-MLBALEUR.js';
15
+ export { assertSurfaceDeclaration } from './chunk-LFE74IJX.js';
14
16
  export { createEventContractRegistry } from './chunk-B5DOGDPG.js';
15
17
  import './chunk-OZLZHISS.js';
16
- export { FABRIC_GOVERNANCE_CONTRACT_VERSION, assertGovernanceRuntimeEvidence, assertMutationGovernanceContext } from './chunk-Y2PJLRIY.js';
17
18
  //# sourceMappingURL=index.js.map
18
19
  //# sourceMappingURL=index.js.map
@@ -1,36 +1,37 @@
1
1
  'use strict';
2
2
 
3
- var chunkZBXFRJON_cjs = require('../chunk-ZBXFRJON.cjs');
4
- require('../chunk-KIVQBZOA.cjs');
3
+ var chunk2URHPZXL_cjs = require('../chunk-2URHPZXL.cjs');
4
+ require('../chunk-TMMP4U2D.cjs');
5
5
  require('../chunk-IFW43ELT.cjs');
6
- require('../chunk-CXR6KEKQ.cjs');
6
+ require('../chunk-SNTV45LH.cjs');
7
+ require('../chunk-D4SWRBUH.cjs');
7
8
  require('../chunk-2AE6TMAX.cjs');
8
9
 
9
10
 
10
11
 
11
12
  Object.defineProperty(exports, "MODULE_MANIFEST_VERSION", {
12
13
  enumerable: true,
13
- get: function () { return chunkZBXFRJON_cjs.MODULE_MANIFEST_VERSION; }
14
+ get: function () { return chunk2URHPZXL_cjs.MODULE_MANIFEST_VERSION; }
14
15
  });
15
16
  Object.defineProperty(exports, "exportModuleManifest", {
16
17
  enumerable: true,
17
- get: function () { return chunkZBXFRJON_cjs.exportModuleManifest; }
18
+ get: function () { return chunk2URHPZXL_cjs.exportModuleManifest; }
18
19
  });
19
20
  Object.defineProperty(exports, "exportModuleManifestBundle", {
20
21
  enumerable: true,
21
- get: function () { return chunkZBXFRJON_cjs.exportModuleManifestBundle; }
22
+ get: function () { return chunk2URHPZXL_cjs.exportModuleManifestBundle; }
22
23
  });
23
24
  Object.defineProperty(exports, "isJsonSchemaExportableValidator", {
24
25
  enumerable: true,
25
- get: function () { return chunkZBXFRJON_cjs.isJsonSchemaExportableValidator; }
26
+ get: function () { return chunk2URHPZXL_cjs.isJsonSchemaExportableValidator; }
26
27
  });
27
28
  Object.defineProperty(exports, "normalizeModuleManifest", {
28
29
  enumerable: true,
29
- get: function () { return chunkZBXFRJON_cjs.normalizeModuleManifest; }
30
+ get: function () { return chunk2URHPZXL_cjs.normalizeModuleManifest; }
30
31
  });
31
32
  Object.defineProperty(exports, "normalizeModuleManifestBundle", {
32
33
  enumerable: true,
33
- get: function () { return chunkZBXFRJON_cjs.normalizeModuleManifestBundle; }
34
+ get: function () { return chunk2URHPZXL_cjs.normalizeModuleManifestBundle; }
34
35
  });
35
36
  //# sourceMappingURL=index.cjs.map
36
37
  //# sourceMappingURL=index.cjs.map
@@ -1,3 +1,4 @@
1
+ import { SurfaceDeclaration } from '../discovery/index.cjs';
1
2
  import { ActionExecutionContract, AdapterStepRetryPolicy, SchemaValidator } from '../actions/index.cjs';
2
3
  import { CapabilityMetadata, ModuleDependency, ObjectRelationDefinition, DeclarativeInvariant, FabricModule } from '../modules/index.cjs';
3
4
  import { PortableJsonSchema, JsonValue } from '../objects/index.cjs';
@@ -39,7 +40,7 @@ interface ModuleManifestAdapterStep {
39
40
  operation: string;
40
41
  retryPolicy?: AdapterStepRetryPolicy;
41
42
  }
42
- interface ModuleManifestAction {
43
+ interface ModuleManifestAction extends SurfaceDeclaration {
43
44
  actionId: string;
44
45
  version: number;
45
46
  kind: "atomic" | "saga";
@@ -91,7 +92,7 @@ interface ModuleManifestStateMachine {
91
92
  states: StateDefinition[];
92
93
  transitions: ModuleManifestStateMachineTransition[];
93
94
  }
94
- interface ModuleManifestView {
95
+ interface ModuleManifestView extends SurfaceDeclaration {
95
96
  name: string;
96
97
  version: string;
97
98
  shape: PortableJsonSchema;
@@ -1,3 +1,4 @@
1
+ import { SurfaceDeclaration } from '../discovery/index.js';
1
2
  import { ActionExecutionContract, AdapterStepRetryPolicy, SchemaValidator } from '../actions/index.js';
2
3
  import { CapabilityMetadata, ModuleDependency, ObjectRelationDefinition, DeclarativeInvariant, FabricModule } from '../modules/index.js';
3
4
  import { PortableJsonSchema, JsonValue } from '../objects/index.js';
@@ -39,7 +40,7 @@ interface ModuleManifestAdapterStep {
39
40
  operation: string;
40
41
  retryPolicy?: AdapterStepRetryPolicy;
41
42
  }
42
- interface ModuleManifestAction {
43
+ interface ModuleManifestAction extends SurfaceDeclaration {
43
44
  actionId: string;
44
45
  version: number;
45
46
  kind: "atomic" | "saga";
@@ -91,7 +92,7 @@ interface ModuleManifestStateMachine {
91
92
  states: StateDefinition[];
92
93
  transitions: ModuleManifestStateMachineTransition[];
93
94
  }
94
- interface ModuleManifestView {
95
+ interface ModuleManifestView extends SurfaceDeclaration {
95
96
  name: string;
96
97
  version: string;
97
98
  shape: PortableJsonSchema;
@@ -1,7 +1,8 @@
1
- export { MODULE_MANIFEST_VERSION, exportModuleManifest, exportModuleManifestBundle, isJsonSchemaExportableValidator, normalizeModuleManifest, normalizeModuleManifestBundle } from '../chunk-MC3GSVJ6.js';
2
- import '../chunk-GRBZYDEV.js';
1
+ export { MODULE_MANIFEST_VERSION, exportModuleManifest, exportModuleManifestBundle, isJsonSchemaExportableValidator, normalizeModuleManifest, normalizeModuleManifestBundle } from '../chunk-QHV6LOS6.js';
2
+ import '../chunk-ZF5HDNSU.js';
3
3
  import '../chunk-ZAEVQSB5.js';
4
- import '../chunk-JG35DT2G.js';
4
+ import '../chunk-MLBALEUR.js';
5
+ import '../chunk-LFE74IJX.js';
5
6
  import '../chunk-B5DOGDPG.js';
6
7
  //# sourceMappingURL=index.js.map
7
8
  //# sourceMappingURL=index.js.map
@@ -1,43 +1,44 @@
1
1
  'use strict';
2
2
 
3
- var chunkKIVQBZOA_cjs = require('../chunk-KIVQBZOA.cjs');
3
+ var chunkTMMP4U2D_cjs = require('../chunk-TMMP4U2D.cjs');
4
4
  require('../chunk-IFW43ELT.cjs');
5
- require('../chunk-CXR6KEKQ.cjs');
5
+ require('../chunk-SNTV45LH.cjs');
6
+ require('../chunk-D4SWRBUH.cjs');
6
7
  require('../chunk-2AE6TMAX.cjs');
7
8
 
8
9
 
9
10
 
10
11
  Object.defineProperty(exports, "createModuleRegistry", {
11
12
  enumerable: true,
12
- get: function () { return chunkKIVQBZOA_cjs.createModuleRegistry; }
13
+ get: function () { return chunkTMMP4U2D_cjs.createModuleRegistry; }
13
14
  });
14
15
  Object.defineProperty(exports, "getEventTypeName", {
15
16
  enumerable: true,
16
- get: function () { return chunkKIVQBZOA_cjs.getEventTypeName; }
17
+ get: function () { return chunkTMMP4U2D_cjs.getEventTypeName; }
17
18
  });
18
19
  Object.defineProperty(exports, "getModuleDependencyNamespace", {
19
20
  enumerable: true,
20
- get: function () { return chunkKIVQBZOA_cjs.getModuleDependencyNamespace; }
21
+ get: function () { return chunkTMMP4U2D_cjs.getModuleDependencyNamespace; }
21
22
  });
22
23
  Object.defineProperty(exports, "getObjectTypeName", {
23
24
  enumerable: true,
24
- get: function () { return chunkKIVQBZOA_cjs.getObjectTypeName; }
25
+ get: function () { return chunkTMMP4U2D_cjs.getObjectTypeName; }
25
26
  });
26
27
  Object.defineProperty(exports, "registerFabricModule", {
27
28
  enumerable: true,
28
- get: function () { return chunkKIVQBZOA_cjs.registerFabricModule; }
29
+ get: function () { return chunkTMMP4U2D_cjs.registerFabricModule; }
29
30
  });
30
31
  Object.defineProperty(exports, "registerFabricModules", {
31
32
  enumerable: true,
32
- get: function () { return chunkKIVQBZOA_cjs.registerFabricModules; }
33
+ get: function () { return chunkTMMP4U2D_cjs.registerFabricModules; }
33
34
  });
34
35
  Object.defineProperty(exports, "validateAndOrderFabricModules", {
35
36
  enumerable: true,
36
- get: function () { return chunkKIVQBZOA_cjs.validateAndOrderFabricModules; }
37
+ get: function () { return chunkTMMP4U2D_cjs.validateAndOrderFabricModules; }
37
38
  });
38
39
  Object.defineProperty(exports, "validateModuleNamespace", {
39
40
  enumerable: true,
40
- get: function () { return chunkKIVQBZOA_cjs.validateModuleNamespace; }
41
+ get: function () { return chunkTMMP4U2D_cjs.validateModuleNamespace; }
41
42
  });
42
43
  //# sourceMappingURL=index.cjs.map
43
44
  //# sourceMappingURL=index.cjs.map