@xemahq/contracts 0.52.0 → 0.53.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.
@@ -1,5 +1,5 @@
1
1
  {
2
2
  "algorithm": "sha256/len-framed-v1",
3
- "hash": "b3b314164ba97b5293f05921b0825ae5d7536bfdea11e986f2213a5014f89891",
4
- "fileCount": 584
3
+ "hash": "fee7a6a995fdcc0427cf2023bff91582dc4686df887df61dc267739de8296532",
4
+ "fileCount": 585
5
5
  }
@@ -14,4 +14,5 @@ export * from './lib/first-party-capability-domains';
14
14
  export * from './lib/distribution-ownership';
15
15
  export * from './lib/biome-source';
16
16
  export * from './lib/nexus-binding';
17
+ export * from './lib/resolve-nexus-bindings';
17
18
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/distribution/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,oBAAoB,CAAC;AACnC,cAAc,0BAA0B,CAAC;AACzC,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,kBAAkB,CAAC;AACjC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,iCAAiC,CAAC;AAChD,cAAc,qCAAqC,CAAC;AACpD,cAAc,kCAAkC,CAAC;AACjD,cAAc,sCAAsC,CAAC;AACrD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/distribution/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,6BAA6B,CAAC;AAC5C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,oBAAoB,CAAC;AACnC,cAAc,0BAA0B,CAAC;AACzC,cAAc,qBAAqB,CAAC;AACpC,cAAc,yBAAyB,CAAC;AACxC,cAAc,kBAAkB,CAAC;AACjC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,iCAAiC,CAAC;AAChD,cAAc,qCAAqC,CAAC;AACpD,cAAc,kCAAkC,CAAC;AACjD,cAAc,sCAAsC,CAAC;AACrD,cAAc,8BAA8B,CAAC;AAC7C,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,8BAA8B,CAAC"}
@@ -30,4 +30,5 @@ __exportStar(require("./lib/first-party-capability-domains"), exports);
30
30
  __exportStar(require("./lib/distribution-ownership"), exports);
31
31
  __exportStar(require("./lib/biome-source"), exports);
32
32
  __exportStar(require("./lib/nexus-binding"), exports);
33
+ __exportStar(require("./lib/resolve-nexus-bindings"), exports);
33
34
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/distribution/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,uDAAqC;AACrC,8DAA4C;AAC5C,+DAA6C;AAC7C,qDAAmC;AACnC,2DAAyC;AACzC,sDAAoC;AACpC,0DAAwC;AACxC,mDAAiC;AACjC,gEAA8C;AAC9C,kEAAgD;AAChD,sEAAoD;AACpD,mEAAiD;AACjD,uEAAqD;AACrD,+DAA6C;AAC7C,qDAAmC;AACnC,sDAAoC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/distribution/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,uDAAqC;AACrC,8DAA4C;AAC5C,+DAA6C;AAC7C,qDAAmC;AACnC,2DAAyC;AACzC,sDAAoC;AACpC,0DAAwC;AACxC,mDAAiC;AACjC,gEAA8C;AAC9C,kEAAgD;AAChD,sEAAoD;AACpD,mEAAiD;AACjD,uEAAqD;AACrD,+DAA6C;AAC7C,qDAAmC;AACnC,sDAAoC;AACpC,+DAA6C"}
@@ -0,0 +1,72 @@
1
+ import { type LockedNexusBinding } from './nexus-binding';
2
+ export interface NexusServiceProvision {
3
+ readonly component: string;
4
+ readonly service: string;
5
+ readonly version: string;
6
+ readonly taskQueue: string;
7
+ readonly operations: readonly string[];
8
+ }
9
+ export interface NexusServiceRequirement {
10
+ readonly component: string;
11
+ readonly service: string;
12
+ readonly version: string;
13
+ readonly operations: readonly string[];
14
+ readonly optional?: true;
15
+ }
16
+ export interface NexusBindingBiomeFacts {
17
+ readonly biomeId: string;
18
+ readonly provides?: readonly NexusServiceProvision[];
19
+ readonly requires?: readonly NexusServiceRequirement[];
20
+ }
21
+ export declare enum NexusBindingRefusalCode {
22
+ ProviderAbsent = "NEXUS_PROVIDER_ABSENT",
23
+ ProviderAmbiguous = "NEXUS_PROVIDER_AMBIGUOUS",
24
+ OperationsMissing = "NEXUS_OPERATIONS_MISSING",
25
+ ProvisionInvalid = "NEXUS_PROVISION_INVALID"
26
+ }
27
+ export interface NexusBindingParty {
28
+ readonly biomeId: string;
29
+ readonly component: string;
30
+ }
31
+ export type NexusBindingRefusal = {
32
+ readonly code: NexusBindingRefusalCode.ProviderAbsent;
33
+ readonly service: string;
34
+ readonly version: string;
35
+ readonly consumers: readonly (NexusBindingParty & {
36
+ readonly optional: boolean;
37
+ })[];
38
+ readonly otherVersions: readonly (NexusBindingParty & {
39
+ readonly version: string;
40
+ })[];
41
+ } | {
42
+ readonly code: NexusBindingRefusalCode.ProviderAmbiguous;
43
+ readonly service: string;
44
+ readonly version: string;
45
+ readonly consumers: readonly (NexusBindingParty & {
46
+ readonly optional: boolean;
47
+ })[];
48
+ readonly providers: readonly NexusBindingParty[];
49
+ } | {
50
+ readonly code: NexusBindingRefusalCode.OperationsMissing;
51
+ readonly service: string;
52
+ readonly version: string;
53
+ readonly consumer: NexusBindingParty;
54
+ readonly provider: NexusBindingParty;
55
+ readonly missingOperations: readonly string[];
56
+ } | {
57
+ readonly code: NexusBindingRefusalCode.ProvisionInvalid;
58
+ readonly service: string;
59
+ readonly version: string;
60
+ readonly provider: NexusBindingParty;
61
+ readonly taskQueue: string;
62
+ };
63
+ export type NexusBindingResolution = {
64
+ readonly ok: true;
65
+ readonly bindings: readonly LockedNexusBinding[];
66
+ } | {
67
+ readonly ok: false;
68
+ readonly refusals: readonly NexusBindingRefusal[];
69
+ };
70
+ export declare function resolveNexusBindings(biomes: readonly NexusBindingBiomeFacts[]): NexusBindingResolution;
71
+ export declare function describeNexusBindingRefusal(refusal: NexusBindingRefusal): string;
72
+ //# sourceMappingURL=resolve-nexus-bindings.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolve-nexus-bindings.d.ts","sourceRoot":"","sources":["../../../src/distribution/lib/resolve-nexus-bindings.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,180 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.NexusBindingRefusalCode = void 0;
4
+ exports.resolveNexusBindings = resolveNexusBindings;
5
+ exports.describeNexusBindingRefusal = describeNexusBindingRefusal;
6
+ const workflow_1 = require("../../workflow");
7
+ const nexus_binding_1 = require("./nexus-binding");
8
+ var NexusBindingRefusalCode;
9
+ (function (NexusBindingRefusalCode) {
10
+ NexusBindingRefusalCode["ProviderAbsent"] = "NEXUS_PROVIDER_ABSENT";
11
+ NexusBindingRefusalCode["ProviderAmbiguous"] = "NEXUS_PROVIDER_AMBIGUOUS";
12
+ NexusBindingRefusalCode["OperationsMissing"] = "NEXUS_OPERATIONS_MISSING";
13
+ NexusBindingRefusalCode["ProvisionInvalid"] = "NEXUS_PROVISION_INVALID";
14
+ })(NexusBindingRefusalCode || (exports.NexusBindingRefusalCode = NexusBindingRefusalCode = {}));
15
+ const BIOME_ID_PATTERN = /^[a-z][a-z0-9-]*$/;
16
+ function compareCodeUnits(a, b) {
17
+ return a < b ? -1 : a > b ? 1 : 0;
18
+ }
19
+ function compareParties(a, b) {
20
+ return (compareCodeUnits(a.biomeId, b.biomeId) ||
21
+ compareCodeUnits(a.component, b.component));
22
+ }
23
+ function resolveNexusBindings(biomes) {
24
+ const providersByKey = new Map();
25
+ const groups = new Map();
26
+ for (const biome of biomes) {
27
+ for (const provision of biome.provides ?? []) {
28
+ const key = (0, nexus_binding_1.nexusBindingKey)(provision);
29
+ const providers = providersByKey.get(key) ?? [];
30
+ providers.push({ ...provision, biomeId: biome.biomeId });
31
+ providersByKey.set(key, providers);
32
+ }
33
+ for (const requirement of biome.requires ?? []) {
34
+ const key = (0, nexus_binding_1.nexusBindingKey)(requirement);
35
+ const group = groups.get(key) ?? {
36
+ service: requirement.service,
37
+ version: requirement.version,
38
+ consumers: [],
39
+ };
40
+ group.consumers.push({
41
+ biomeId: biome.biomeId,
42
+ component: requirement.component,
43
+ operations: requirement.operations,
44
+ optional: requirement.optional === true,
45
+ });
46
+ groups.set(key, group);
47
+ }
48
+ }
49
+ const bindings = [];
50
+ const refusals = [];
51
+ const ordered = [...groups.values()].sort(nexus_binding_1.compareNexusBindings);
52
+ for (const group of ordered) {
53
+ const key = (0, nexus_binding_1.nexusBindingKey)(group);
54
+ const consumers = [...group.consumers].sort(compareParties);
55
+ const consumerParties = consumers.map((c) => ({
56
+ biomeId: c.biomeId,
57
+ component: c.component,
58
+ optional: c.optional,
59
+ }));
60
+ const providers = [...(providersByKey.get(key) ?? [])].sort(compareParties);
61
+ if (providers.length > 1) {
62
+ refusals.push({
63
+ code: NexusBindingRefusalCode.ProviderAmbiguous,
64
+ service: group.service,
65
+ version: group.version,
66
+ consumers: consumerParties,
67
+ providers: providers.map((p) => ({
68
+ biomeId: p.biomeId,
69
+ component: p.component,
70
+ })),
71
+ });
72
+ continue;
73
+ }
74
+ const [provider] = providers;
75
+ if (provider === undefined) {
76
+ if (consumers.every((c) => c.optional))
77
+ continue;
78
+ const otherVersions = [...providersByKey.values()]
79
+ .flat()
80
+ .filter((p) => p.service === group.service)
81
+ .map((p) => ({
82
+ biomeId: p.biomeId,
83
+ component: p.component,
84
+ version: p.version,
85
+ }))
86
+ .sort((a, b) => compareParties(a, b) || compareCodeUnits(a.version, b.version));
87
+ refusals.push({
88
+ code: NexusBindingRefusalCode.ProviderAbsent,
89
+ service: group.service,
90
+ version: group.version,
91
+ consumers: consumerParties,
92
+ otherVersions,
93
+ });
94
+ continue;
95
+ }
96
+ const providerParty = {
97
+ biomeId: provider.biomeId,
98
+ component: provider.component,
99
+ };
100
+ const offered = new Set(provider.operations);
101
+ let complete = true;
102
+ for (const consumer of consumers) {
103
+ const missingOperations = [
104
+ ...new Set(consumer.operations.filter((op) => !offered.has(op))),
105
+ ].sort(compareCodeUnits);
106
+ if (missingOperations.length > 0) {
107
+ complete = false;
108
+ refusals.push({
109
+ code: NexusBindingRefusalCode.OperationsMissing,
110
+ service: group.service,
111
+ version: group.version,
112
+ consumer: { biomeId: consumer.biomeId, component: consumer.component },
113
+ provider: providerParty,
114
+ missingOperations,
115
+ });
116
+ }
117
+ }
118
+ if (!BIOME_ID_PATTERN.test(provider.biomeId) ||
119
+ !workflow_1.BIOME_TASK_QUEUE_NAME_PATTERN.test(provider.taskQueue)) {
120
+ refusals.push({
121
+ code: NexusBindingRefusalCode.ProvisionInvalid,
122
+ service: group.service,
123
+ version: group.version,
124
+ provider: providerParty,
125
+ taskQueue: provider.taskQueue,
126
+ });
127
+ continue;
128
+ }
129
+ if (!complete)
130
+ continue;
131
+ bindings.push({
132
+ service: group.service,
133
+ version: group.version,
134
+ providerBiome: provider.biomeId,
135
+ providerComponent: provider.component,
136
+ taskQueue: (0, workflow_1.biomeTaskQueue)(provider.biomeId, provider.taskQueue),
137
+ callers: [...new Set(consumers.map((c) => c.biomeId))].sort(compareCodeUnits),
138
+ });
139
+ }
140
+ return refusals.length > 0
141
+ ? { ok: false, refusals }
142
+ : { ok: true, bindings: bindings.sort(nexus_binding_1.compareNexusBindings) };
143
+ }
144
+ function describeParty(party) {
145
+ return `biome "${party.biomeId}" component "${party.component}"`;
146
+ }
147
+ function describeNexusBindingRefusal(refusal) {
148
+ const key = (0, nexus_binding_1.nexusBindingKey)(refusal);
149
+ switch (refusal.code) {
150
+ case NexusBindingRefusalCode.ProviderAbsent: {
151
+ const consumers = refusal.consumers
152
+ .map((c) => describeParty(c) + (c.optional ? ' (optional)' : ''))
153
+ .join(', ');
154
+ const others = refusal.otherVersions.length > 0
155
+ ? ` (${refusal.otherVersions
156
+ .map((p) => `${p.biomeId}/${p.component} provides ${refusal.service}@${p.version}`)
157
+ .join('; ')} — a different major version does not satisfy)`
158
+ : '';
159
+ return (`${refusal.code}: ${consumers} require nexus service ${key}, and no shipped ` +
160
+ `component provides it${others}. Ship the biome that provides ${key}, or ` +
161
+ `exclude the consumer; a provider is never included on a requirement's behalf.`);
162
+ }
163
+ case NexusBindingRefusalCode.ProviderAmbiguous:
164
+ return (`${refusal.code}: ${refusal.consumers.map(describeParty).join(', ')} require ` +
165
+ `nexus service ${key}, and ${refusal.providers.length} shipped components ` +
166
+ `provide it: ${refusal.providers
167
+ .map((p) => `${p.biomeId}/${p.component}`)
168
+ .join(', ')}. No provider-selection policy exists; ship exactly one.`);
169
+ case NexusBindingRefusalCode.OperationsMissing:
170
+ return (`${refusal.code}: ${describeParty(refusal.consumer)} requires operation(s) ` +
171
+ `${refusal.missingOperations.join(', ')} of nexus service ${key}, which its ` +
172
+ `provider ${describeParty(refusal.provider)} does not declare.`);
173
+ case NexusBindingRefusalCode.ProvisionInvalid:
174
+ return (`${refusal.code}: ${describeParty(refusal.provider)} provides nexus service ` +
175
+ `${key} on task queue "${refusal.taskQueue}", which is not a valid biome ` +
176
+ `task queue (biome id ${BIOME_ID_PATTERN.source}, queue ` +
177
+ `${workflow_1.BIOME_TASK_QUEUE_NAME_PATTERN.source}).`);
178
+ }
179
+ }
180
+ //# sourceMappingURL=resolve-nexus-bindings.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"resolve-nexus-bindings.js","sourceRoot":"","sources":["../../../src/distribution/lib/resolve-nexus-bindings.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@xemahq/contracts",
3
- "version": "0.52.0",
3
+ "version": "0.53.0",
4
4
  "description": "Consolidated Xema OS kernel wire contracts — pure types + zod schemas for the kernel protocol surfaces. One package, one npm scope, wildcard per-surface subpath exports. No framework deps; the one runtime dependency beside zod is the OpenFGA syntax transformer the authorization-module composer runs.",
5
5
  "license": "Apache-2.0",
6
6
  "author": "Neuralchowder Inc. <developer@xema.dev> (https://xema.dev)",