@xemahq/kernel-contracts 0.7.0 → 0.9.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/dist/agent-composition/index.d.ts +3 -3
- package/dist/agent-composition/index.d.ts.map +1 -1
- package/dist/agent-composition/index.js +3 -3
- package/dist/agent-composition/index.js.map +1 -1
- package/dist/agent-composition/lib/agent-limits-schema.d.ts +4 -0
- package/dist/agent-composition/lib/agent-limits-schema.d.ts.map +1 -0
- package/dist/agent-composition/lib/agent-limits-schema.js +13 -0
- package/dist/agent-composition/lib/agent-limits-schema.js.map +1 -0
- package/dist/agent-composition/lib/agent-workspace-config.d.ts +37 -0
- package/dist/agent-composition/lib/agent-workspace-config.d.ts.map +1 -0
- package/dist/agent-composition/lib/agent-workspace-config.js +9 -0
- package/dist/agent-composition/lib/agent-workspace-config.js.map +1 -0
- package/dist/agent-composition/lib/agent.d.ts +65 -0
- package/dist/agent-composition/lib/agent.d.ts.map +1 -0
- package/dist/agent-composition/lib/agent.js +18 -0
- package/dist/agent-composition/lib/agent.js.map +1 -0
- package/dist/agent-workspace/awp-spec.json +1 -1
- package/dist/biome/lib/biome-manifest.d.ts +880 -27
- package/dist/biome/lib/biome-manifest.d.ts.map +1 -1
- package/dist/biome/lib/biome-manifest.js +507 -20
- package/dist/biome/lib/biome-manifest.js.map +1 -1
- package/dist/distribution/lib/distribution-selector.d.ts +2 -0
- package/dist/distribution/lib/distribution-selector.d.ts.map +1 -1
- package/dist/distribution/lib/distribution-selector.js +6 -2
- package/dist/distribution/lib/distribution-selector.js.map +1 -1
- package/dist/resource/index.d.ts +7 -0
- package/dist/resource/index.d.ts.map +1 -0
- package/dist/resource/index.js +23 -0
- package/dist/resource/index.js.map +1 -0
- package/dist/resource/lib/plan.d.ts +31 -0
- package/dist/resource/lib/plan.d.ts.map +1 -0
- package/dist/resource/lib/plan.js +32 -0
- package/dist/resource/lib/plan.js.map +1 -0
- package/dist/resource/lib/resource-declaration.d.ts +15 -0
- package/dist/resource/lib/resource-declaration.d.ts.map +1 -0
- package/dist/resource/lib/resource-declaration.js +32 -0
- package/dist/resource/lib/resource-declaration.js.map +1 -0
- package/dist/resource/lib/resource-kind.d.ts +20 -0
- package/dist/resource/lib/resource-kind.d.ts.map +1 -0
- package/dist/resource/lib/resource-kind.js +24 -0
- package/dist/resource/lib/resource-kind.js.map +1 -0
- package/dist/resource/lib/resource-managed-by.d.ts +9 -0
- package/dist/resource/lib/resource-managed-by.d.ts.map +1 -0
- package/dist/resource/lib/resource-managed-by.js +13 -0
- package/dist/resource/lib/resource-managed-by.js.map +1 -0
- package/dist/resource/lib/stack.d.ts +22 -0
- package/dist/resource/lib/stack.d.ts.map +1 -0
- package/dist/resource/lib/stack.js +23 -0
- package/dist/resource/lib/stack.js.map +1 -0
- package/dist/resource/lib/xema-manifest.d.ts +11 -0
- package/dist/resource/lib/xema-manifest.d.ts.map +1 -0
- package/dist/resource/lib/xema-manifest.js +47 -0
- package/dist/resource/lib/xema-manifest.js.map +1 -0
- package/package.json +1 -1
- package/src/agent-composition/index.ts +3 -3
- package/src/agent-composition/lib/{composition-limits-schema.ts → agent-limits-schema.ts} +1 -1
- package/src/agent-composition/lib/{composition.ts → agent.ts} +1 -1
- package/src/biome/lib/biome-manifest.ts +1140 -66
- package/src/distribution/lib/distribution-selector.ts +16 -4
- package/src/invocation/lib/invoke-request.ts +1 -1
- package/src/invocation/lib/invoke-response.ts +1 -1
- package/src/resource/index.ts +22 -0
- package/src/resource/lib/plan.ts +83 -0
- package/src/resource/lib/resource-declaration.ts +67 -0
- package/src/resource/lib/resource-kind.ts +37 -0
- package/src/resource/lib/resource-managed-by.ts +29 -0
- package/src/resource/lib/stack.ts +61 -0
- package/src/resource/lib/xema-manifest.ts +86 -0
- /package/src/agent-composition/lib/{composition-workspace.ts → agent-workspace-config.ts} +0 -0
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
__exportStar(require("./lib/resource-kind"), exports);
|
|
18
|
+
__exportStar(require("./lib/resource-managed-by"), exports);
|
|
19
|
+
__exportStar(require("./lib/resource-declaration"), exports);
|
|
20
|
+
__exportStar(require("./lib/xema-manifest"), exports);
|
|
21
|
+
__exportStar(require("./lib/stack"), exports);
|
|
22
|
+
__exportStar(require("./lib/plan"), exports);
|
|
23
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/resource/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAgBA,sDAAoC;AACpC,4DAA0C;AAC1C,6DAA2C;AAC3C,sDAAoC;AACpC,8CAA4B;AAC5B,6CAA2B"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { XemaResourceKind } from './resource-kind';
|
|
3
|
+
export declare enum ResourceChangeAction {
|
|
4
|
+
Create = "create",
|
|
5
|
+
Update = "update",
|
|
6
|
+
Replace = "replace",
|
|
7
|
+
Delete = "delete",
|
|
8
|
+
NoOp = "noop"
|
|
9
|
+
}
|
|
10
|
+
export declare const ResourceChangeActionSchema: z.ZodEnum<typeof ResourceChangeAction>;
|
|
11
|
+
export interface ResourceFieldDiff {
|
|
12
|
+
from: unknown;
|
|
13
|
+
to: unknown;
|
|
14
|
+
}
|
|
15
|
+
export declare const ResourceFieldDiffSchema: z.ZodType<ResourceFieldDiff>;
|
|
16
|
+
export interface ResourceChange {
|
|
17
|
+
kind: XemaResourceKind;
|
|
18
|
+
logicalId: string;
|
|
19
|
+
action: ResourceChangeAction;
|
|
20
|
+
physicalId?: string;
|
|
21
|
+
driftFromActual?: boolean;
|
|
22
|
+
diff?: Record<string, ResourceFieldDiff>;
|
|
23
|
+
}
|
|
24
|
+
export declare const ResourceChangeSchema: z.ZodType<ResourceChange>;
|
|
25
|
+
export interface ResourcePlan {
|
|
26
|
+
stackName: string;
|
|
27
|
+
changes: readonly ResourceChange[];
|
|
28
|
+
driftDetected: boolean;
|
|
29
|
+
}
|
|
30
|
+
export declare const ResourcePlanSchema: z.ZodType<ResourcePlan>;
|
|
31
|
+
//# sourceMappingURL=plan.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plan.d.ts","sourceRoot":"","sources":["../../../src/resource/lib/plan.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,gBAAgB,EAA0B,MAAM,iBAAiB,CAAC;AAa3E,oBAAY,oBAAoB;IAC9B,MAAM,WAAW;IACjB,MAAM,WAAW;IACjB,OAAO,YAAY;IACnB,MAAM,WAAW;IACjB,IAAI,SAAS;CACd;AAED,eAAO,MAAM,0BAA0B,wCAAqC,CAAC;AAM7E,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,OAAO,CAAC;IACd,EAAE,EAAE,OAAO,CAAC;CACb;AAED,eAAO,MAAM,uBAAuB,EAG9B,CAAC,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;AAWnC,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,gBAAgB,CAAC;IAEvB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,oBAAoB,CAAC;IAE7B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;CAC1C;AAED,eAAO,MAAM,oBAAoB,EAO3B,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;AAOhC,MAAM,WAAW,YAAY;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,SAAS,cAAc,EAAE,CAAC;IACnC,aAAa,EAAE,OAAO,CAAC;CACxB;AAED,eAAO,MAAM,kBAAkB,EAIzB,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ResourcePlanSchema = exports.ResourceChangeSchema = exports.ResourceFieldDiffSchema = exports.ResourceChangeActionSchema = exports.ResourceChangeAction = void 0;
|
|
4
|
+
const zod_1 = require("zod");
|
|
5
|
+
const resource_kind_1 = require("./resource-kind");
|
|
6
|
+
var ResourceChangeAction;
|
|
7
|
+
(function (ResourceChangeAction) {
|
|
8
|
+
ResourceChangeAction["Create"] = "create";
|
|
9
|
+
ResourceChangeAction["Update"] = "update";
|
|
10
|
+
ResourceChangeAction["Replace"] = "replace";
|
|
11
|
+
ResourceChangeAction["Delete"] = "delete";
|
|
12
|
+
ResourceChangeAction["NoOp"] = "noop";
|
|
13
|
+
})(ResourceChangeAction || (exports.ResourceChangeAction = ResourceChangeAction = {}));
|
|
14
|
+
exports.ResourceChangeActionSchema = zod_1.z.nativeEnum(ResourceChangeAction);
|
|
15
|
+
exports.ResourceFieldDiffSchema = zod_1.z.object({
|
|
16
|
+
from: zod_1.z.unknown(),
|
|
17
|
+
to: zod_1.z.unknown(),
|
|
18
|
+
});
|
|
19
|
+
exports.ResourceChangeSchema = zod_1.z.object({
|
|
20
|
+
kind: resource_kind_1.XemaResourceKindSchema,
|
|
21
|
+
logicalId: zod_1.z.string().min(1),
|
|
22
|
+
action: exports.ResourceChangeActionSchema,
|
|
23
|
+
physicalId: zod_1.z.string().min(1).optional(),
|
|
24
|
+
driftFromActual: zod_1.z.boolean().optional(),
|
|
25
|
+
diff: zod_1.z.record(zod_1.z.string(), exports.ResourceFieldDiffSchema).optional(),
|
|
26
|
+
});
|
|
27
|
+
exports.ResourcePlanSchema = zod_1.z.object({
|
|
28
|
+
stackName: zod_1.z.string().min(1),
|
|
29
|
+
changes: zod_1.z.array(exports.ResourceChangeSchema).readonly(),
|
|
30
|
+
driftDetected: zod_1.z.boolean(),
|
|
31
|
+
});
|
|
32
|
+
//# sourceMappingURL=plan.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"plan.js","sourceRoot":"","sources":["../../../src/resource/lib/plan.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;AACxB,mDAA2E;AAa3E,IAAY,oBAMX;AAND,WAAY,oBAAoB;IAC9B,yCAAiB,CAAA;IACjB,yCAAiB,CAAA;IACjB,2CAAmB,CAAA;IACnB,yCAAiB,CAAA;IACjB,qCAAa,CAAA;AACf,CAAC,EANW,oBAAoB,oCAApB,oBAAoB,QAM/B;AAEY,QAAA,0BAA0B,GAAG,OAAC,CAAC,UAAU,CAAC,oBAAoB,CAAC,CAAC;AAWhE,QAAA,uBAAuB,GAAG,OAAC,CAAC,MAAM,CAAC;IAC9C,IAAI,EAAE,OAAC,CAAC,OAAO,EAAE;IACjB,EAAE,EAAE,OAAC,CAAC,OAAO,EAAE;CAChB,CAAiC,CAAC;AAsBtB,QAAA,oBAAoB,GAAG,OAAC,CAAC,MAAM,CAAC;IAC3C,IAAI,EAAE,sCAAsB;IAC5B,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC5B,MAAM,EAAE,kCAA0B;IAClC,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IACxC,eAAe,EAAE,OAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;IACvC,IAAI,EAAE,OAAC,CAAC,MAAM,CAAC,OAAC,CAAC,MAAM,EAAE,EAAE,+BAAuB,CAAC,CAAC,QAAQ,EAAE;CAC/D,CAA8B,CAAC;AAanB,QAAA,kBAAkB,GAAG,OAAC,CAAC,MAAM,CAAC;IACzC,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC5B,OAAO,EAAE,OAAC,CAAC,KAAK,CAAC,4BAAoB,CAAC,CAAC,QAAQ,EAAE;IACjD,aAAa,EAAE,OAAC,CAAC,OAAO,EAAE;CAC3B,CAA4B,CAAC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { XemaResourceKind } from './resource-kind';
|
|
3
|
+
export type ResourceLogicalRef = string;
|
|
4
|
+
export interface ResourceDeclaration {
|
|
5
|
+
kind: XemaResourceKind;
|
|
6
|
+
id: string;
|
|
7
|
+
managedKey?: string;
|
|
8
|
+
dependsOn?: readonly ResourceLogicalRef[];
|
|
9
|
+
spec: Record<string, unknown>;
|
|
10
|
+
}
|
|
11
|
+
export declare const ResourceLogicalRefSchema: z.ZodString;
|
|
12
|
+
export declare const ResourceDeclarationSchema: z.ZodType<ResourceDeclaration>;
|
|
13
|
+
export declare function logicalRefOf(decl: Pick<ResourceDeclaration, 'kind' | 'id'>): ResourceLogicalRef;
|
|
14
|
+
export declare function managedKeyOf(decl: ResourceDeclaration): string;
|
|
15
|
+
//# sourceMappingURL=resource-declaration.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resource-declaration.d.ts","sourceRoot":"","sources":["../../../src/resource/lib/resource-declaration.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,gBAAgB,EAA0B,MAAM,iBAAiB,CAAC;AAO3E,MAAM,MAAM,kBAAkB,GAAG,MAAM,CAAC;AAiBxC,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,gBAAgB,CAAC;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,SAAS,CAAC,EAAE,SAAS,kBAAkB,EAAE,CAAC;IAC1C,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC/B;AAID,eAAO,MAAM,wBAAwB,aAKjC,CAAC;AAEL,eAAO,MAAM,yBAAyB,EAYhC,CAAC,CAAC,OAAO,CAAC,mBAAmB,CAAC,CAAC;AAGrC,wBAAgB,YAAY,CAC1B,IAAI,EAAE,IAAI,CAAC,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAC,GAC7C,kBAAkB,CAEpB;AAGD,wBAAgB,YAAY,CAAC,IAAI,EAAE,mBAAmB,GAAG,MAAM,CAE9D"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ResourceDeclarationSchema = exports.ResourceLogicalRefSchema = void 0;
|
|
4
|
+
exports.logicalRefOf = logicalRefOf;
|
|
5
|
+
exports.managedKeyOf = managedKeyOf;
|
|
6
|
+
const zod_1 = require("zod");
|
|
7
|
+
const resource_kind_1 = require("./resource-kind");
|
|
8
|
+
const LOGICAL_REF_RE = /^[a-z0-9-]+\.[A-Za-z0-9._-]+$/;
|
|
9
|
+
exports.ResourceLogicalRefSchema = zod_1.z
|
|
10
|
+
.string()
|
|
11
|
+
.regex(LOGICAL_REF_RE, {
|
|
12
|
+
message: 'A resource ref must be "<kind>.<id>" (e.g. "project.web-app").',
|
|
13
|
+
});
|
|
14
|
+
exports.ResourceDeclarationSchema = zod_1.z.object({
|
|
15
|
+
kind: resource_kind_1.XemaResourceKindSchema,
|
|
16
|
+
id: zod_1.z
|
|
17
|
+
.string()
|
|
18
|
+
.min(1)
|
|
19
|
+
.regex(/^[A-Za-z0-9._-]+$/, {
|
|
20
|
+
message: 'ResourceDeclaration.id must be a stable slug ([A-Za-z0-9._-]+).',
|
|
21
|
+
}),
|
|
22
|
+
managedKey: zod_1.z.string().min(1).optional(),
|
|
23
|
+
dependsOn: zod_1.z.array(exports.ResourceLogicalRefSchema).readonly().optional(),
|
|
24
|
+
spec: zod_1.z.record(zod_1.z.string(), zod_1.z.unknown()),
|
|
25
|
+
});
|
|
26
|
+
function logicalRefOf(decl) {
|
|
27
|
+
return `${decl.kind}.${decl.id}`;
|
|
28
|
+
}
|
|
29
|
+
function managedKeyOf(decl) {
|
|
30
|
+
return decl.managedKey ?? decl.id;
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=resource-declaration.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resource-declaration.js","sourceRoot":"","sources":["../../../src/resource/lib/resource-declaration.ts"],"names":[],"mappings":";;;AAyDA,oCAIC;AAGD,oCAEC;AAlED,6BAAwB;AACxB,mDAA2E;AAgC3E,MAAM,cAAc,GAAG,+BAA+B,CAAC;AAE1C,QAAA,wBAAwB,GAAG,OAAC;KACtC,MAAM,EAAE;KACR,KAAK,CAAC,cAAc,EAAE;IACrB,OAAO,EACL,gEAAgE;CACnE,CAAC,CAAC;AAEQ,QAAA,yBAAyB,GAAG,OAAC,CAAC,MAAM,CAAC;IAChD,IAAI,EAAE,sCAAsB;IAC5B,EAAE,EAAE,OAAC;SACF,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,CAAC;SACN,KAAK,CAAC,mBAAmB,EAAE;QAC1B,OAAO,EACL,iEAAiE;KACpE,CAAC;IACJ,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IACxC,SAAS,EAAE,OAAC,CAAC,KAAK,CAAC,gCAAwB,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAClE,IAAI,EAAE,OAAC,CAAC,MAAM,CAAC,OAAC,CAAC,MAAM,EAAE,EAAE,OAAC,CAAC,OAAO,EAAE,CAAC;CACxC,CAAmC,CAAC;AAGrC,SAAgB,YAAY,CAC1B,IAA8C;IAE9C,OAAO,GAAG,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,EAAE,EAAE,CAAC;AACnC,CAAC;AAGD,SAAgB,YAAY,CAAC,IAAyB;IACpD,OAAO,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,EAAE,CAAC;AACpC,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
export declare enum XemaResourceKind {
|
|
3
|
+
Org = "org",
|
|
4
|
+
Project = "project",
|
|
5
|
+
Portal = "portal",
|
|
6
|
+
BiomeInstall = "biome-install",
|
|
7
|
+
Provider = "provider",
|
|
8
|
+
Model = "model",
|
|
9
|
+
ModelResolutionRule = "model-resolution-rule",
|
|
10
|
+
Skill = "skill",
|
|
11
|
+
Agent = "agent",
|
|
12
|
+
Role = "role",
|
|
13
|
+
Grant = "grant",
|
|
14
|
+
Space = "space",
|
|
15
|
+
Environment = "environment",
|
|
16
|
+
Team = "team",
|
|
17
|
+
DeliverableSpec = "deliverable-spec"
|
|
18
|
+
}
|
|
19
|
+
export declare const XemaResourceKindSchema: z.ZodEnum<typeof XemaResourceKind>;
|
|
20
|
+
//# sourceMappingURL=resource-kind.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resource-kind.d.ts","sourceRoot":"","sources":["../../../src/resource/lib/resource-kind.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAkBxB,oBAAY,gBAAgB;IAC1B,GAAG,QAAQ;IACX,OAAO,YAAY;IACnB,MAAM,WAAW;IACjB,YAAY,kBAAkB;IAC9B,QAAQ,aAAa;IACrB,KAAK,UAAU;IACf,mBAAmB,0BAA0B;IAC7C,KAAK,UAAU;IACf,KAAK,UAAU;IACf,IAAI,SAAS;IACb,KAAK,UAAU;IACf,KAAK,UAAU;IACf,WAAW,gBAAgB;IAC3B,IAAI,SAAS;IACb,eAAe,qBAAqB;CACrC;AAED,eAAO,MAAM,sBAAsB,oCAAiC,CAAC"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.XemaResourceKindSchema = exports.XemaResourceKind = void 0;
|
|
4
|
+
const zod_1 = require("zod");
|
|
5
|
+
var XemaResourceKind;
|
|
6
|
+
(function (XemaResourceKind) {
|
|
7
|
+
XemaResourceKind["Org"] = "org";
|
|
8
|
+
XemaResourceKind["Project"] = "project";
|
|
9
|
+
XemaResourceKind["Portal"] = "portal";
|
|
10
|
+
XemaResourceKind["BiomeInstall"] = "biome-install";
|
|
11
|
+
XemaResourceKind["Provider"] = "provider";
|
|
12
|
+
XemaResourceKind["Model"] = "model";
|
|
13
|
+
XemaResourceKind["ModelResolutionRule"] = "model-resolution-rule";
|
|
14
|
+
XemaResourceKind["Skill"] = "skill";
|
|
15
|
+
XemaResourceKind["Agent"] = "agent";
|
|
16
|
+
XemaResourceKind["Role"] = "role";
|
|
17
|
+
XemaResourceKind["Grant"] = "grant";
|
|
18
|
+
XemaResourceKind["Space"] = "space";
|
|
19
|
+
XemaResourceKind["Environment"] = "environment";
|
|
20
|
+
XemaResourceKind["Team"] = "team";
|
|
21
|
+
XemaResourceKind["DeliverableSpec"] = "deliverable-spec";
|
|
22
|
+
})(XemaResourceKind || (exports.XemaResourceKind = XemaResourceKind = {}));
|
|
23
|
+
exports.XemaResourceKindSchema = zod_1.z.nativeEnum(XemaResourceKind);
|
|
24
|
+
//# sourceMappingURL=resource-kind.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resource-kind.js","sourceRoot":"","sources":["../../../src/resource/lib/resource-kind.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;AAkBxB,IAAY,gBAgBX;AAhBD,WAAY,gBAAgB;IAC1B,+BAAW,CAAA;IACX,uCAAmB,CAAA;IACnB,qCAAiB,CAAA;IACjB,kDAA8B,CAAA;IAC9B,yCAAqB,CAAA;IACrB,mCAAe,CAAA;IACf,iEAA6C,CAAA;IAC7C,mCAAe,CAAA;IACf,mCAAe,CAAA;IACf,iCAAa,CAAA;IACb,mCAAe,CAAA;IACf,mCAAe,CAAA;IACf,+CAA2B,CAAA;IAC3B,iCAAa,CAAA;IACb,wDAAoC,CAAA;AACtC,CAAC,EAhBW,gBAAgB,gCAAhB,gBAAgB,QAgB3B;AAEY,QAAA,sBAAsB,GAAG,OAAC,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
export declare enum ResourceManagedBy {
|
|
3
|
+
Ui = "ui",
|
|
4
|
+
Iac = "iac",
|
|
5
|
+
Seeder = "seeder",
|
|
6
|
+
System = "system"
|
|
7
|
+
}
|
|
8
|
+
export declare const ResourceManagedBySchema: z.ZodEnum<typeof ResourceManagedBy>;
|
|
9
|
+
//# sourceMappingURL=resource-managed-by.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resource-managed-by.d.ts","sourceRoot":"","sources":["../../../src/resource/lib/resource-managed-by.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAqBxB,oBAAY,iBAAiB;IAC3B,EAAE,OAAO;IACT,GAAG,QAAQ;IACX,MAAM,WAAW;IACjB,MAAM,WAAW;CAClB;AAED,eAAO,MAAM,uBAAuB,qCAAkC,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.ResourceManagedBySchema = exports.ResourceManagedBy = void 0;
|
|
4
|
+
const zod_1 = require("zod");
|
|
5
|
+
var ResourceManagedBy;
|
|
6
|
+
(function (ResourceManagedBy) {
|
|
7
|
+
ResourceManagedBy["Ui"] = "ui";
|
|
8
|
+
ResourceManagedBy["Iac"] = "iac";
|
|
9
|
+
ResourceManagedBy["Seeder"] = "seeder";
|
|
10
|
+
ResourceManagedBy["System"] = "system";
|
|
11
|
+
})(ResourceManagedBy || (exports.ResourceManagedBy = ResourceManagedBy = {}));
|
|
12
|
+
exports.ResourceManagedBySchema = zod_1.z.nativeEnum(ResourceManagedBy);
|
|
13
|
+
//# sourceMappingURL=resource-managed-by.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resource-managed-by.js","sourceRoot":"","sources":["../../../src/resource/lib/resource-managed-by.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;AAqBxB,IAAY,iBAKX;AALD,WAAY,iBAAiB;IAC3B,8BAAS,CAAA;IACT,gCAAW,CAAA;IACX,sCAAiB,CAAA;IACjB,sCAAiB,CAAA;AACnB,CAAC,EALW,iBAAiB,iCAAjB,iBAAiB,QAK5B;AAEY,QAAA,uBAAuB,GAAG,OAAC,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { XemaResourceKind } from './resource-kind';
|
|
3
|
+
import { XemaManifest } from './xema-manifest';
|
|
4
|
+
export interface ResourceMapping {
|
|
5
|
+
logicalId: string;
|
|
6
|
+
kind: XemaResourceKind;
|
|
7
|
+
physicalId: string;
|
|
8
|
+
managedKey: string;
|
|
9
|
+
lastAppliedHash: string;
|
|
10
|
+
}
|
|
11
|
+
export declare const ResourceMappingSchema: z.ZodType<ResourceMapping>;
|
|
12
|
+
export interface Stack {
|
|
13
|
+
schemaVersion: 1;
|
|
14
|
+
stackId: string;
|
|
15
|
+
orgId: string;
|
|
16
|
+
name: string;
|
|
17
|
+
lastAppliedManifest?: XemaManifest;
|
|
18
|
+
mappings: readonly ResourceMapping[];
|
|
19
|
+
updatedAt?: string;
|
|
20
|
+
}
|
|
21
|
+
export declare const StackSchema: z.ZodType<Stack>;
|
|
22
|
+
//# sourceMappingURL=stack.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stack.d.ts","sourceRoot":"","sources":["../../../src/resource/lib/stack.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,gBAAgB,EAA0B,MAAM,iBAAiB,CAAC;AAC3E,OAAO,EAAE,YAAY,EAAsB,MAAM,iBAAiB,CAAC;AASnE,MAAM,WAAW,eAAe;IAE9B,SAAS,EAAE,MAAM,CAAC;IAClB,IAAI,EAAE,gBAAgB,CAAC;IAEvB,UAAU,EAAE,MAAM,CAAC;IAEnB,UAAU,EAAE,MAAM,CAAC;IAEnB,eAAe,EAAE,MAAM,CAAC;CACzB;AAED,eAAO,MAAM,qBAAqB,EAM5B,CAAC,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;AAWjC,MAAM,WAAW,KAAK;IACpB,aAAa,EAAE,CAAC,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IAEb,mBAAmB,CAAC,EAAE,YAAY,CAAC;IACnC,QAAQ,EAAE,SAAS,eAAe,EAAE,CAAC;IAErC,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,eAAO,MAAM,WAAW,EAQlB,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.StackSchema = exports.ResourceMappingSchema = void 0;
|
|
4
|
+
const zod_1 = require("zod");
|
|
5
|
+
const resource_kind_1 = require("./resource-kind");
|
|
6
|
+
const xema_manifest_1 = require("./xema-manifest");
|
|
7
|
+
exports.ResourceMappingSchema = zod_1.z.object({
|
|
8
|
+
logicalId: zod_1.z.string().min(1),
|
|
9
|
+
kind: resource_kind_1.XemaResourceKindSchema,
|
|
10
|
+
physicalId: zod_1.z.string().min(1),
|
|
11
|
+
managedKey: zod_1.z.string().min(1),
|
|
12
|
+
lastAppliedHash: zod_1.z.string().min(1),
|
|
13
|
+
});
|
|
14
|
+
exports.StackSchema = zod_1.z.object({
|
|
15
|
+
schemaVersion: zod_1.z.literal(1),
|
|
16
|
+
stackId: zod_1.z.string().min(1),
|
|
17
|
+
orgId: zod_1.z.string().min(1),
|
|
18
|
+
name: zod_1.z.string().min(1),
|
|
19
|
+
lastAppliedManifest: xema_manifest_1.XemaManifestSchema.optional(),
|
|
20
|
+
mappings: zod_1.z.array(exports.ResourceMappingSchema).readonly(),
|
|
21
|
+
updatedAt: zod_1.z.string().min(1).optional(),
|
|
22
|
+
});
|
|
23
|
+
//# sourceMappingURL=stack.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stack.js","sourceRoot":"","sources":["../../../src/resource/lib/stack.ts"],"names":[],"mappings":";;;AAAA,6BAAwB;AACxB,mDAA2E;AAC3E,mDAAmE;AAqBtD,QAAA,qBAAqB,GAAG,OAAC,CAAC,MAAM,CAAC;IAC5C,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC5B,IAAI,EAAE,sCAAsB;IAC5B,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC7B,UAAU,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC7B,eAAe,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;CACnC,CAA+B,CAAC;AAuBpB,QAAA,WAAW,GAAG,OAAC,CAAC,MAAM,CAAC;IAClC,aAAa,EAAE,OAAC,CAAC,OAAO,CAAC,CAAC,CAAC;IAC3B,OAAO,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC1B,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACxB,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IACvB,mBAAmB,EAAE,kCAAkB,CAAC,QAAQ,EAAE;IAClD,QAAQ,EAAE,OAAC,CAAC,KAAK,CAAC,6BAAqB,CAAC,CAAC,QAAQ,EAAE;IACnD,SAAS,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;CACxC,CAAqB,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { ResourceDeclaration } from './resource-declaration';
|
|
3
|
+
export type XemaManifestApiVersion = 'xema/v1';
|
|
4
|
+
export interface XemaManifest {
|
|
5
|
+
apiVersion: XemaManifestApiVersion;
|
|
6
|
+
stack?: string;
|
|
7
|
+
resources: readonly ResourceDeclaration[];
|
|
8
|
+
}
|
|
9
|
+
export declare const XemaManifestSchema: z.ZodType<XemaManifest>;
|
|
10
|
+
export declare function parseXemaManifest(raw: unknown): XemaManifest;
|
|
11
|
+
//# sourceMappingURL=xema-manifest.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"xema-manifest.d.ts","sourceRoot":"","sources":["../../../src/resource/lib/xema-manifest.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EACL,mBAAmB,EAGpB,MAAM,wBAAwB,CAAC;AAQhC,MAAM,MAAM,sBAAsB,GAAG,SAAS,CAAC;AAe/C,MAAM,WAAW,YAAY;IAC3B,UAAU,EAAE,sBAAsB,CAAC;IACnC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,SAAS,mBAAmB,EAAE,CAAC;CAC3C;AAED,eAAO,MAAM,kBAAkB,EAkCZ,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;AAO3C,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,OAAO,GAAG,YAAY,CAU5D"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.XemaManifestSchema = void 0;
|
|
4
|
+
exports.parseXemaManifest = parseXemaManifest;
|
|
5
|
+
const zod_1 = require("zod");
|
|
6
|
+
const resource_declaration_1 = require("./resource-declaration");
|
|
7
|
+
exports.XemaManifestSchema = zod_1.z
|
|
8
|
+
.object({
|
|
9
|
+
apiVersion: zod_1.z.literal('xema/v1'),
|
|
10
|
+
stack: zod_1.z.string().min(1).optional(),
|
|
11
|
+
resources: zod_1.z.array(resource_declaration_1.ResourceDeclarationSchema).readonly(),
|
|
12
|
+
})
|
|
13
|
+
.superRefine((manifest, ctx) => {
|
|
14
|
+
const seen = new Set();
|
|
15
|
+
manifest.resources.forEach((decl, index) => {
|
|
16
|
+
const ref = (0, resource_declaration_1.logicalRefOf)(decl);
|
|
17
|
+
if (seen.has(ref)) {
|
|
18
|
+
ctx.addIssue({
|
|
19
|
+
code: zod_1.z.ZodIssueCode.custom,
|
|
20
|
+
path: ['resources', index],
|
|
21
|
+
message: `Duplicate resource ref "${ref}" — every (kind, id) must be unique within a manifest.`,
|
|
22
|
+
});
|
|
23
|
+
}
|
|
24
|
+
seen.add(ref);
|
|
25
|
+
});
|
|
26
|
+
manifest.resources.forEach((decl, index) => {
|
|
27
|
+
for (const dep of decl.dependsOn ?? []) {
|
|
28
|
+
if (!seen.has(dep)) {
|
|
29
|
+
ctx.addIssue({
|
|
30
|
+
code: zod_1.z.ZodIssueCode.custom,
|
|
31
|
+
path: ['resources', index, 'dependsOn'],
|
|
32
|
+
message: `dependsOn "${dep}" does not match any resource declared in this manifest.`,
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
});
|
|
37
|
+
});
|
|
38
|
+
function parseXemaManifest(raw) {
|
|
39
|
+
const result = exports.XemaManifestSchema.safeParse(raw);
|
|
40
|
+
if (!result.success) {
|
|
41
|
+
throw new Error(`Invalid xema.yaml: ${result.error.issues
|
|
42
|
+
.map((i) => `[${i.path.join('.')}] ${i.message}`)
|
|
43
|
+
.join('; ')}`);
|
|
44
|
+
}
|
|
45
|
+
return result.data;
|
|
46
|
+
}
|
|
47
|
+
//# sourceMappingURL=xema-manifest.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"xema-manifest.js","sourceRoot":"","sources":["../../../src/resource/lib/xema-manifest.ts"],"names":[],"mappings":";;;AA2EA,8CAUC;AArFD,6BAAwB;AACxB,iEAIgC;AA6BnB,QAAA,kBAAkB,GAAG,OAAC;KAChC,MAAM,CAAC;IACN,UAAU,EAAE,OAAC,CAAC,OAAO,CAAC,SAAS,CAAC;IAChC,KAAK,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE;IACnC,SAAS,EAAE,OAAC,CAAC,KAAK,CAAC,gDAAyB,CAAC,CAAC,QAAQ,EAAE;CACzD,CAAC;KACD,WAAW,CAAC,CAAC,QAAQ,EAAE,GAAG,EAAE,EAAE;IAG7B,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,QAAQ,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;QACzC,MAAM,GAAG,GAAG,IAAA,mCAAY,EAAC,IAAI,CAAC,CAAC;QAC/B,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YAClB,GAAG,CAAC,QAAQ,CAAC;gBACX,IAAI,EAAE,OAAC,CAAC,YAAY,CAAC,MAAM;gBAC3B,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,CAAC;gBAC1B,OAAO,EAAE,2BAA2B,GAAG,wDAAwD;aAChG,CAAC,CAAC;QACL,CAAC;QACD,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAChB,CAAC,CAAC,CAAC;IAGH,QAAQ,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;QACzC,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,SAAS,IAAI,EAAE,EAAE,CAAC;YACvC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;gBACnB,GAAG,CAAC,QAAQ,CAAC;oBACX,IAAI,EAAE,OAAC,CAAC,YAAY,CAAC,MAAM;oBAC3B,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,EAAE,WAAW,CAAC;oBACvC,OAAO,EAAE,cAAc,GAAG,0DAA0D;iBACrF,CAAC,CAAC;YACL,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAuC,CAAC;AAO3C,SAAgB,iBAAiB,CAAC,GAAY;IAC5C,MAAM,MAAM,GAAG,0BAAkB,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IACjD,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CACb,sBAAsB,MAAM,CAAC,KAAK,CAAC,MAAM;aACtC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,OAAO,EAAE,CAAC;aAChD,IAAI,CAAC,IAAI,CAAC,EAAE,CAChB,CAAC;IACJ,CAAC;IACD,OAAO,MAAM,CAAC,IAAI,CAAC;AACrB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@xemahq/kernel-contracts",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.9.0",
|
|
4
4
|
"description": "Consolidated Xema OS kernel wire contracts — pure types + zod schemas for the 32 kernel protocol surfaces. One package, one npm scope, wildcard per-surface subpath exports. No framework/runtime deps.",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"registry": "https://registry.npmjs.org/",
|
|
@@ -10,9 +10,9 @@
|
|
|
10
10
|
// ═══════════════════════════════════════════════════════════════════════════
|
|
11
11
|
|
|
12
12
|
export * from './lib/capability-layer';
|
|
13
|
-
export * from './lib/
|
|
14
|
-
export * from './lib/
|
|
15
|
-
export * from './lib/
|
|
13
|
+
export * from './lib/agent';
|
|
14
|
+
export * from './lib/agent-limits-schema';
|
|
15
|
+
export * from './lib/agent-workspace-config';
|
|
16
16
|
export * from './lib/intrinsic-floor';
|
|
17
17
|
export * from './lib/invocation-overlay';
|
|
18
18
|
export * from './lib/model-resolution-matrix';
|
|
@@ -18,7 +18,7 @@ import type { NodeOverlayFragment } from '../../workflow';
|
|
|
18
18
|
import type { SkillRef } from '../../skill';
|
|
19
19
|
import type { BiomeAvailabilityScoped } from '../../biome-availability';
|
|
20
20
|
import type { CapabilityLayer } from './capability-layer';
|
|
21
|
-
import type { AgentWorkspaceConfig } from './
|
|
21
|
+
import type { AgentWorkspaceConfig } from './agent-workspace-config';
|
|
22
22
|
|
|
23
23
|
/**
|
|
24
24
|
* A stable reference to an agent definition, optionally version-pinned.
|