@xemahq/kernel-contracts 0.1.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 +7 -0
- package/dist/agent-composition/index.d.ts.map +1 -0
- package/dist/agent-composition/index.js +23 -0
- package/dist/agent-composition/index.js.map +1 -0
- package/dist/agent-composition/lib/capability-layer.d.ts +11 -0
- package/dist/agent-composition/lib/capability-layer.d.ts.map +1 -0
- package/dist/agent-composition/lib/capability-layer.js +10 -0
- package/dist/agent-composition/lib/capability-layer.js.map +1 -0
- package/dist/agent-composition/lib/composition-limits-schema.d.ts +4 -0
- package/dist/agent-composition/lib/composition-limits-schema.d.ts.map +1 -0
- package/dist/agent-composition/lib/composition-limits-schema.js +13 -0
- package/dist/agent-composition/lib/composition-limits-schema.js.map +1 -0
- package/dist/agent-composition/lib/composition-workspace.d.ts +35 -0
- package/dist/agent-composition/lib/composition-workspace.d.ts.map +1 -0
- package/dist/agent-composition/lib/composition-workspace.js +9 -0
- package/dist/agent-composition/lib/composition-workspace.js.map +1 -0
- package/dist/agent-composition/lib/composition.d.ts +66 -0
- package/dist/agent-composition/lib/composition.d.ts.map +1 -0
- package/dist/agent-composition/lib/composition.js +18 -0
- package/dist/agent-composition/lib/composition.js.map +1 -0
- package/dist/agent-composition/lib/intrinsic-floor.d.ts +15 -0
- package/dist/agent-composition/lib/intrinsic-floor.d.ts.map +1 -0
- package/dist/agent-composition/lib/intrinsic-floor.js +22 -0
- package/dist/agent-composition/lib/intrinsic-floor.js.map +1 -0
- package/dist/agent-composition/lib/model-resolution-matrix.d.ts +38 -0
- package/dist/agent-composition/lib/model-resolution-matrix.d.ts.map +1 -0
- package/dist/agent-composition/lib/model-resolution-matrix.js +12 -0
- package/dist/agent-composition/lib/model-resolution-matrix.js.map +1 -0
- package/dist/agent-workspace/awp-spec.json +225 -0
- package/dist/agent-workspace/index.d.ts +12 -0
- package/dist/agent-workspace/index.d.ts.map +1 -0
- package/dist/agent-workspace/index.js +28 -0
- package/dist/agent-workspace/index.js.map +1 -0
- package/dist/agent-workspace/lib/agent-run-context.d.ts +12 -0
- package/dist/agent-workspace/lib/agent-run-context.d.ts.map +1 -0
- package/dist/agent-workspace/lib/agent-run-context.js +3 -0
- package/dist/agent-workspace/lib/agent-run-context.js.map +1 -0
- package/dist/agent-workspace/lib/agent-tool-defaults.d.ts +21 -0
- package/dist/agent-workspace/lib/agent-tool-defaults.d.ts.map +1 -0
- package/dist/agent-workspace/lib/agent-tool-defaults.js +111 -0
- package/dist/agent-workspace/lib/agent-tool-defaults.js.map +1 -0
- package/dist/agent-workspace/lib/awp-v1.d.ts +15 -0
- package/dist/agent-workspace/lib/awp-v1.d.ts.map +1 -0
- package/dist/agent-workspace/lib/awp-v1.js +197 -0
- package/dist/agent-workspace/lib/awp-v1.js.map +1 -0
- package/dist/agent-workspace/lib/context-json.d.ts +35 -0
- package/dist/agent-workspace/lib/context-json.d.ts.map +1 -0
- package/dist/agent-workspace/lib/context-json.js +3 -0
- package/dist/agent-workspace/lib/context-json.js.map +1 -0
- package/dist/agent-workspace/lib/deliverable-spec-ref.d.ts +10 -0
- package/dist/agent-workspace/lib/deliverable-spec-ref.d.ts.map +1 -0
- package/dist/agent-workspace/lib/deliverable-spec-ref.js +33 -0
- package/dist/agent-workspace/lib/deliverable-spec-ref.js.map +1 -0
- package/dist/agent-workspace/lib/endpoint-fetch-spec.d.ts +31 -0
- package/dist/agent-workspace/lib/endpoint-fetch-spec.d.ts.map +1 -0
- package/dist/agent-workspace/lib/endpoint-fetch-spec.js +20 -0
- package/dist/agent-workspace/lib/endpoint-fetch-spec.js.map +1 -0
- package/dist/agent-workspace/lib/manifest.d.ts +28 -0
- package/dist/agent-workspace/lib/manifest.d.ts.map +1 -0
- package/dist/agent-workspace/lib/manifest.js +16 -0
- package/dist/agent-workspace/lib/manifest.js.map +1 -0
- package/dist/agent-workspace/lib/mount-apply.d.ts +42 -0
- package/dist/agent-workspace/lib/mount-apply.d.ts.map +1 -0
- package/dist/agent-workspace/lib/mount-apply.js +15 -0
- package/dist/agent-workspace/lib/mount-apply.js.map +1 -0
- package/dist/agent-workspace/lib/working-file.d.ts +20 -0
- package/dist/agent-workspace/lib/working-file.d.ts.map +1 -0
- package/dist/agent-workspace/lib/working-file.js +42 -0
- package/dist/agent-workspace/lib/working-file.js.map +1 -0
- package/dist/agent-workspace/lib/workspace-layout.d.ts +34 -0
- package/dist/agent-workspace/lib/workspace-layout.d.ts.map +1 -0
- package/dist/agent-workspace/lib/workspace-layout.js +31 -0
- package/dist/agent-workspace/lib/workspace-layout.js.map +1 -0
- package/dist/agent-workspace/lib/workspace-spec.d.ts +61 -0
- package/dist/agent-workspace/lib/workspace-spec.d.ts.map +1 -0
- package/dist/agent-workspace/lib/workspace-spec.js +19 -0
- package/dist/agent-workspace/lib/workspace-spec.js.map +1 -0
- package/dist/biome/index.d.ts +11 -0
- package/dist/biome/index.d.ts.map +1 -0
- package/dist/biome/index.js +27 -0
- package/dist/biome/index.js.map +1 -0
- package/dist/biome/lib/biome-api.d.ts +12 -0
- package/dist/biome/lib/biome-api.d.ts.map +1 -0
- package/dist/biome/lib/biome-api.js +14 -0
- package/dist/biome/lib/biome-api.js.map +1 -0
- package/dist/biome/lib/biome-capability-refs.d.ts +11 -0
- package/dist/biome/lib/biome-capability-refs.d.ts.map +1 -0
- package/dist/biome/lib/biome-capability-refs.js +12 -0
- package/dist/biome/lib/biome-capability-refs.js.map +1 -0
- package/dist/biome/lib/biome-engines.d.ts +6 -0
- package/dist/biome/lib/biome-engines.d.ts.map +1 -0
- package/dist/biome/lib/biome-engines.js +8 -0
- package/dist/biome/lib/biome-engines.js.map +1 -0
- package/dist/biome/lib/biome-lifecycle-hooks.d.ts +10 -0
- package/dist/biome/lib/biome-lifecycle-hooks.d.ts.map +1 -0
- package/dist/biome/lib/biome-lifecycle-hooks.js +12 -0
- package/dist/biome/lib/biome-lifecycle-hooks.js.map +1 -0
- package/dist/biome/lib/biome-lifecycle.d.ts +12 -0
- package/dist/biome/lib/biome-lifecycle.d.ts.map +1 -0
- package/dist/biome/lib/biome-lifecycle.js +16 -0
- package/dist/biome/lib/biome-lifecycle.js.map +1 -0
- package/dist/biome/lib/biome-manifest.d.ts +36 -0
- package/dist/biome/lib/biome-manifest.d.ts.map +1 -0
- package/dist/biome/lib/biome-manifest.js +38 -0
- package/dist/biome/lib/biome-manifest.js.map +1 -0
- package/dist/biome/lib/biome-permissions.d.ts +9 -0
- package/dist/biome/lib/biome-permissions.d.ts.map +1 -0
- package/dist/biome/lib/biome-permissions.js +11 -0
- package/dist/biome/lib/biome-permissions.js.map +1 -0
- package/dist/biome/lib/biome-scope.d.ts +9 -0
- package/dist/biome/lib/biome-scope.d.ts.map +1 -0
- package/dist/biome/lib/biome-scope.js +13 -0
- package/dist/biome/lib/biome-scope.js.map +1 -0
- package/dist/biome/lib/biome-trust-tier.d.ts +11 -0
- package/dist/biome/lib/biome-trust-tier.d.ts.map +1 -0
- package/dist/biome/lib/biome-trust-tier.js +15 -0
- package/dist/biome/lib/biome-trust-tier.js.map +1 -0
- package/dist/biome/lib/trust-tier-policies.d.ts +8 -0
- package/dist/biome/lib/trust-tier-policies.d.ts.map +1 -0
- package/dist/biome/lib/trust-tier-policies.js +66 -0
- package/dist/biome/lib/trust-tier-policies.js.map +1 -0
- package/dist/capability/index.d.ts +9 -0
- package/dist/capability/index.d.ts.map +1 -0
- package/dist/capability/index.js +25 -0
- package/dist/capability/index.js.map +1 -0
- package/dist/capability/lib/capability-contribution.d.ts +18 -0
- package/dist/capability/lib/capability-contribution.d.ts.map +1 -0
- package/dist/capability/lib/capability-contribution.js +23 -0
- package/dist/capability/lib/capability-contribution.js.map +1 -0
- package/dist/capability/lib/capability-grant.d.ts +22 -0
- package/dist/capability/lib/capability-grant.d.ts.map +1 -0
- package/dist/capability/lib/capability-grant.js +27 -0
- package/dist/capability/lib/capability-grant.js.map +1 -0
- package/dist/capability/lib/capability-policy.d.ts +12 -0
- package/dist/capability/lib/capability-policy.d.ts.map +1 -0
- package/dist/capability/lib/capability-policy.js +14 -0
- package/dist/capability/lib/capability-policy.js.map +1 -0
- package/dist/capability/lib/capability-ref.d.ts +19 -0
- package/dist/capability/lib/capability-ref.d.ts.map +1 -0
- package/dist/capability/lib/capability-ref.js +63 -0
- package/dist/capability/lib/capability-ref.js.map +1 -0
- package/dist/capability/lib/errors.d.ts +60 -0
- package/dist/capability/lib/errors.d.ts.map +1 -0
- package/dist/capability/lib/errors.js +73 -0
- package/dist/capability/lib/errors.js.map +1 -0
- package/dist/capability/lib/meta-tool.d.ts +77 -0
- package/dist/capability/lib/meta-tool.d.ts.map +1 -0
- package/dist/capability/lib/meta-tool.js +76 -0
- package/dist/capability/lib/meta-tool.js.map +1 -0
- package/dist/capability/lib/permission-profile.d.ts +35 -0
- package/dist/capability/lib/permission-profile.d.ts.map +1 -0
- package/dist/capability/lib/permission-profile.js +38 -0
- package/dist/capability/lib/permission-profile.js.map +1 -0
- package/dist/capability/lib/shell-command-descriptor.d.ts +19 -0
- package/dist/capability/lib/shell-command-descriptor.d.ts.map +1 -0
- package/dist/capability/lib/shell-command-descriptor.js +20 -0
- package/dist/capability/lib/shell-command-descriptor.js.map +1 -0
- package/dist/contribution/index.d.ts +5 -0
- package/dist/contribution/index.d.ts.map +1 -0
- package/dist/contribution/index.js +21 -0
- package/dist/contribution/index.js.map +1 -0
- package/dist/contribution/lib/contribution-kind.d.ts +44 -0
- package/dist/contribution/lib/contribution-kind.d.ts.map +1 -0
- package/dist/contribution/lib/contribution-kind.js +47 -0
- package/dist/contribution/lib/contribution-kind.js.map +1 -0
- package/dist/contribution/lib/contribution-source.d.ts +11 -0
- package/dist/contribution/lib/contribution-source.d.ts.map +1 -0
- package/dist/contribution/lib/contribution-source.js +14 -0
- package/dist/contribution/lib/contribution-source.js.map +1 -0
- package/dist/contribution/lib/contribution.d.ts +36 -0
- package/dist/contribution/lib/contribution.d.ts.map +1 -0
- package/dist/contribution/lib/contribution.js +56 -0
- package/dist/contribution/lib/contribution.js.map +1 -0
- package/dist/contribution/lib/registry.d.ts +25 -0
- package/dist/contribution/lib/registry.d.ts.map +1 -0
- package/dist/contribution/lib/registry.js +54 -0
- package/dist/contribution/lib/registry.js.map +1 -0
- package/dist/document-templates/index.d.ts +3 -0
- package/dist/document-templates/index.d.ts.map +1 -0
- package/dist/document-templates/index.js +19 -0
- package/dist/document-templates/index.js.map +1 -0
- package/dist/document-templates/lib/document-template.d.ts +24 -0
- package/dist/document-templates/lib/document-template.d.ts.map +1 -0
- package/dist/document-templates/lib/document-template.js +10 -0
- package/dist/document-templates/lib/document-template.js.map +1 -0
- package/dist/document-templates/lib/index.d.ts +3 -0
- package/dist/document-templates/lib/index.d.ts.map +1 -0
- package/dist/document-templates/lib/index.js +19 -0
- package/dist/document-templates/lib/index.js.map +1 -0
- package/dist/document-templates/lib/rendering-shape.d.ts +7 -0
- package/dist/document-templates/lib/rendering-shape.d.ts.map +1 -0
- package/dist/document-templates/lib/rendering-shape.js +20 -0
- package/dist/document-templates/lib/rendering-shape.js.map +1 -0
- package/dist/document-themes/index.d.ts +3 -0
- package/dist/document-themes/index.d.ts.map +1 -0
- package/dist/document-themes/index.js +19 -0
- package/dist/document-themes/index.js.map +1 -0
- package/dist/document-themes/lib/component-vocabulary.d.ts +16 -0
- package/dist/document-themes/lib/component-vocabulary.d.ts.map +1 -0
- package/dist/document-themes/lib/component-vocabulary.js +55 -0
- package/dist/document-themes/lib/component-vocabulary.js.map +1 -0
- package/dist/document-themes/lib/document-theme.d.ts +57 -0
- package/dist/document-themes/lib/document-theme.d.ts.map +1 -0
- package/dist/document-themes/lib/document-theme.js +10 -0
- package/dist/document-themes/lib/document-theme.js.map +1 -0
- package/dist/document-themes/lib/index.d.ts +3 -0
- package/dist/document-themes/lib/index.d.ts.map +1 -0
- package/dist/document-themes/lib/index.js +19 -0
- package/dist/document-themes/lib/index.js.map +1 -0
- package/dist/entitlement/index.d.ts +2 -0
- package/dist/entitlement/index.d.ts.map +1 -0
- package/dist/entitlement/index.js +18 -0
- package/dist/entitlement/index.js.map +1 -0
- package/dist/entitlement/lib/entitlement.d.ts +25 -0
- package/dist/entitlement/lib/entitlement.d.ts.map +1 -0
- package/dist/entitlement/lib/entitlement.js +54 -0
- package/dist/entitlement/lib/entitlement.js.map +1 -0
- package/dist/execution-context/index.d.ts +4 -0
- package/dist/execution-context/index.d.ts.map +1 -0
- package/dist/execution-context/index.js +20 -0
- package/dist/execution-context/index.js.map +1 -0
- package/dist/execution-context/lib/caller.d.ts +19 -0
- package/dist/execution-context/lib/caller.d.ts.map +1 -0
- package/dist/execution-context/lib/caller.js +22 -0
- package/dist/execution-context/lib/caller.js.map +1 -0
- package/dist/execution-context/lib/execution-context.d.ts +60 -0
- package/dist/execution-context/lib/execution-context.d.ts.map +1 -0
- package/dist/execution-context/lib/execution-context.js +58 -0
- package/dist/execution-context/lib/execution-context.js.map +1 -0
- package/dist/execution-context/lib/subject.d.ts +3 -0
- package/dist/execution-context/lib/subject.d.ts.map +1 -0
- package/dist/execution-context/lib/subject.js +11 -0
- package/dist/execution-context/lib/subject.js.map +1 -0
- package/dist/execution-environment/index.d.ts +4 -0
- package/dist/execution-environment/index.d.ts.map +1 -0
- package/dist/execution-environment/index.js +20 -0
- package/dist/execution-environment/index.js.map +1 -0
- package/dist/execution-environment/lib/approval-rule.d.ts +10 -0
- package/dist/execution-environment/lib/approval-rule.d.ts.map +1 -0
- package/dist/execution-environment/lib/approval-rule.js +12 -0
- package/dist/execution-environment/lib/approval-rule.js.map +1 -0
- package/dist/execution-environment/lib/built-in-environments.d.ts +16 -0
- package/dist/execution-environment/lib/built-in-environments.d.ts.map +1 -0
- package/dist/execution-environment/lib/built-in-environments.js +33 -0
- package/dist/execution-environment/lib/built-in-environments.js.map +1 -0
- package/dist/execution-environment/lib/execution-environment.d.ts +58 -0
- package/dist/execution-environment/lib/execution-environment.d.ts.map +1 -0
- package/dist/execution-environment/lib/execution-environment.js +89 -0
- package/dist/execution-environment/lib/execution-environment.js.map +1 -0
- package/dist/kernel-state/index.d.ts +4 -0
- package/dist/kernel-state/index.d.ts.map +1 -0
- package/dist/kernel-state/index.js +20 -0
- package/dist/kernel-state/index.js.map +1 -0
- package/dist/kernel-state/lib/adapter-kind.d.ts +5 -0
- package/dist/kernel-state/lib/adapter-kind.d.ts.map +1 -0
- package/dist/kernel-state/lib/adapter-kind.js +9 -0
- package/dist/kernel-state/lib/adapter-kind.js.map +1 -0
- package/dist/kernel-state/lib/kernel-state.d.ts +37 -0
- package/dist/kernel-state/lib/kernel-state.d.ts.map +1 -0
- package/dist/kernel-state/lib/kernel-state.js +9 -0
- package/dist/kernel-state/lib/kernel-state.js.map +1 -0
- package/dist/kernel-state/lib/key-grammar.d.ts +16 -0
- package/dist/kernel-state/lib/key-grammar.d.ts.map +1 -0
- package/dist/kernel-state/lib/key-grammar.js +56 -0
- package/dist/kernel-state/lib/key-grammar.js.map +1 -0
- package/dist/llm-gateway/index.d.ts +3 -0
- package/dist/llm-gateway/index.d.ts.map +1 -0
- package/dist/llm-gateway/index.js +19 -0
- package/dist/llm-gateway/index.js.map +1 -0
- package/dist/llm-gateway/lib/caller.d.ts +14 -0
- package/dist/llm-gateway/lib/caller.d.ts.map +1 -0
- package/dist/llm-gateway/lib/caller.js +11 -0
- package/dist/llm-gateway/lib/caller.js.map +1 -0
- package/dist/llm-gateway/lib/errors.d.ts +27 -0
- package/dist/llm-gateway/lib/errors.d.ts.map +1 -0
- package/dist/llm-gateway/lib/errors.js +36 -0
- package/dist/llm-gateway/lib/errors.js.map +1 -0
- package/dist/mcp-tool/index.d.ts +7 -0
- package/dist/mcp-tool/index.d.ts.map +1 -0
- package/dist/mcp-tool/index.js +23 -0
- package/dist/mcp-tool/index.js.map +1 -0
- package/dist/mcp-tool/lib/mcp-protocol.d.ts +75 -0
- package/dist/mcp-tool/lib/mcp-protocol.d.ts.map +1 -0
- package/dist/mcp-tool/lib/mcp-protocol.js +19 -0
- package/dist/mcp-tool/lib/mcp-protocol.js.map +1 -0
- package/dist/mcp-tool/lib/mcp-server-config.d.ts +8 -0
- package/dist/mcp-tool/lib/mcp-server-config.d.ts.map +1 -0
- package/dist/mcp-tool/lib/mcp-server-config.js +3 -0
- package/dist/mcp-tool/lib/mcp-server-config.js.map +1 -0
- package/dist/mcp-tool/lib/provider-kind.d.ts +10 -0
- package/dist/mcp-tool/lib/provider-kind.d.ts.map +1 -0
- package/dist/mcp-tool/lib/provider-kind.js +14 -0
- package/dist/mcp-tool/lib/provider-kind.js.map +1 -0
- package/dist/mcp-tool/lib/resolver-scope.d.ts +16 -0
- package/dist/mcp-tool/lib/resolver-scope.d.ts.map +1 -0
- package/dist/mcp-tool/lib/resolver-scope.js +12 -0
- package/dist/mcp-tool/lib/resolver-scope.js.map +1 -0
- package/dist/mcp-tool/lib/tool-provider.d.ts +21 -0
- package/dist/mcp-tool/lib/tool-provider.d.ts.map +1 -0
- package/dist/mcp-tool/lib/tool-provider.js +3 -0
- package/dist/mcp-tool/lib/tool-provider.js.map +1 -0
- package/dist/mcp-tool/lib/tool-selection.d.ts +34 -0
- package/dist/mcp-tool/lib/tool-selection.d.ts.map +1 -0
- package/dist/mcp-tool/lib/tool-selection.js +18 -0
- package/dist/mcp-tool/lib/tool-selection.js.map +1 -0
- package/dist/object/index.d.ts +5 -0
- package/dist/object/index.d.ts.map +1 -0
- package/dist/object/index.js +21 -0
- package/dist/object/index.js.map +1 -0
- package/dist/object/lib/object-lifecycle.d.ts +8 -0
- package/dist/object/lib/object-lifecycle.d.ts.map +1 -0
- package/dist/object/lib/object-lifecycle.js +12 -0
- package/dist/object/lib/object-lifecycle.js.map +1 -0
- package/dist/object/lib/xema-object-kind.d.ts +43 -0
- package/dist/object/lib/xema-object-kind.d.ts.map +1 -0
- package/dist/object/lib/xema-object-kind.js +47 -0
- package/dist/object/lib/xema-object-kind.js.map +1 -0
- package/dist/object/lib/xema-object-ref.d.ts +20 -0
- package/dist/object/lib/xema-object-ref.d.ts.map +1 -0
- package/dist/object/lib/xema-object-ref.js +133 -0
- package/dist/object/lib/xema-object-ref.js.map +1 -0
- package/dist/object/lib/xema-object.d.ts +24 -0
- package/dist/object/lib/xema-object.d.ts.map +1 -0
- package/dist/object/lib/xema-object.js +24 -0
- package/dist/object/lib/xema-object.js.map +1 -0
- package/dist/policy/index.d.ts +4 -0
- package/dist/policy/index.d.ts.map +1 -0
- package/dist/policy/index.js +20 -0
- package/dist/policy/index.js.map +1 -0
- package/dist/policy/lib/obligations.d.ts +91 -0
- package/dist/policy/lib/obligations.d.ts.map +1 -0
- package/dist/policy/lib/obligations.js +76 -0
- package/dist/policy/lib/obligations.js.map +1 -0
- package/dist/policy/lib/policy.d.ts +29 -0
- package/dist/policy/lib/policy.d.ts.map +1 -0
- package/dist/policy/lib/policy.js +32 -0
- package/dist/policy/lib/policy.js.map +1 -0
- package/dist/policy/lib/route-hints.d.ts +11 -0
- package/dist/policy/lib/route-hints.d.ts.map +1 -0
- package/dist/policy/lib/route-hints.js +15 -0
- package/dist/policy/lib/route-hints.js.map +1 -0
- package/dist/runner/index.d.ts +12 -0
- package/dist/runner/index.d.ts.map +1 -0
- package/dist/runner/index.js +28 -0
- package/dist/runner/index.js.map +1 -0
- package/dist/runner/lib/dispatch.d.ts +13 -0
- package/dist/runner/lib/dispatch.d.ts.map +1 -0
- package/dist/runner/lib/dispatch.js +15 -0
- package/dist/runner/lib/dispatch.js.map +1 -0
- package/dist/runner/lib/input-hash.d.ts +2 -0
- package/dist/runner/lib/input-hash.d.ts.map +1 -0
- package/dist/runner/lib/input-hash.js +37 -0
- package/dist/runner/lib/input-hash.js.map +1 -0
- package/dist/runner/lib/job-token.d.ts +22 -0
- package/dist/runner/lib/job-token.d.ts.map +1 -0
- package/dist/runner/lib/job-token.js +3 -0
- package/dist/runner/lib/job-token.js.map +1 -0
- package/dist/runner/lib/runner-attestation.d.ts +10 -0
- package/dist/runner/lib/runner-attestation.d.ts.map +1 -0
- package/dist/runner/lib/runner-attestation.js +5 -0
- package/dist/runner/lib/runner-attestation.js.map +1 -0
- package/dist/runner/lib/runner-job.d.ts +26 -0
- package/dist/runner/lib/runner-job.d.ts.map +1 -0
- package/dist/runner/lib/runner-job.js +36 -0
- package/dist/runner/lib/runner-job.js.map +1 -0
- package/dist/runner/lib/runner-kind.d.ts +2 -0
- package/dist/runner/lib/runner-kind.d.ts.map +1 -0
- package/dist/runner/lib/runner-kind.js +7 -0
- package/dist/runner/lib/runner-kind.js.map +1 -0
- package/dist/runner/lib/runner-mode.d.ts +5 -0
- package/dist/runner/lib/runner-mode.d.ts.map +1 -0
- package/dist/runner/lib/runner-mode.js +9 -0
- package/dist/runner/lib/runner-mode.js.map +1 -0
- package/dist/runner/lib/runner-plane.d.ts +19 -0
- package/dist/runner/lib/runner-plane.d.ts.map +1 -0
- package/dist/runner/lib/runner-plane.js +31 -0
- package/dist/runner/lib/runner-plane.js.map +1 -0
- package/dist/runner/lib/runner-registration.d.ts +60 -0
- package/dist/runner/lib/runner-registration.d.ts.map +1 -0
- package/dist/runner/lib/runner-registration.js +62 -0
- package/dist/runner/lib/runner-registration.js.map +1 -0
- package/dist/runner/lib/runner.d.ts +24 -0
- package/dist/runner/lib/runner.d.ts.map +1 -0
- package/dist/runner/lib/runner.js +26 -0
- package/dist/runner/lib/runner.js.map +1 -0
- package/dist/runner/lib/runtime-isolation.d.ts +10 -0
- package/dist/runner/lib/runtime-isolation.d.ts.map +1 -0
- package/dist/runner/lib/runtime-isolation.js +23 -0
- package/dist/runner/lib/runtime-isolation.js.map +1 -0
- package/dist/search-source/index.d.ts +5 -0
- package/dist/search-source/index.d.ts.map +1 -0
- package/dist/search-source/index.js +21 -0
- package/dist/search-source/index.js.map +1 -0
- package/dist/search-source/lib/indexable-document.d.ts +40 -0
- package/dist/search-source/lib/indexable-document.d.ts.map +1 -0
- package/dist/search-source/lib/indexable-document.js +26 -0
- package/dist/search-source/lib/indexable-document.js.map +1 -0
- package/dist/search-source/lib/search-index-event.d.ts +52 -0
- package/dist/search-source/lib/search-index-event.d.ts.map +1 -0
- package/dist/search-source/lib/search-index-event.js +29 -0
- package/dist/search-source/lib/search-index-event.js.map +1 -0
- package/dist/search-source/lib/search-replay.d.ts +46 -0
- package/dist/search-source/lib/search-replay.d.ts.map +1 -0
- package/dist/search-source/lib/search-replay.js +36 -0
- package/dist/search-source/lib/search-replay.js.map +1 -0
- package/dist/search-source/lib/search-source-descriptor.d.ts +15 -0
- package/dist/search-source/lib/search-source-descriptor.d.ts.map +1 -0
- package/dist/search-source/lib/search-source-descriptor.js +3 -0
- package/dist/search-source/lib/search-source-descriptor.js.map +1 -0
- package/dist/service-registry/index.d.ts +4 -0
- package/dist/service-registry/index.d.ts.map +1 -0
- package/dist/service-registry/index.js +20 -0
- package/dist/service-registry/index.js.map +1 -0
- package/dist/service-registry/lib/inject-service.d.ts +6 -0
- package/dist/service-registry/lib/inject-service.d.ts.map +1 -0
- package/dist/service-registry/lib/inject-service.js +5 -0
- package/dist/service-registry/lib/inject-service.js.map +1 -0
- package/dist/service-registry/lib/service-descriptor.d.ts +28 -0
- package/dist/service-registry/lib/service-descriptor.d.ts.map +1 -0
- package/dist/service-registry/lib/service-descriptor.js +17 -0
- package/dist/service-registry/lib/service-descriptor.js.map +1 -0
- package/dist/service-registry/lib/service-registry-client.d.ts +30 -0
- package/dist/service-registry/lib/service-registry-client.d.ts.map +1 -0
- package/dist/service-registry/lib/service-registry-client.js +3 -0
- package/dist/service-registry/lib/service-registry-client.js.map +1 -0
- package/dist/skill/index.d.ts +5 -0
- package/dist/skill/index.d.ts.map +1 -0
- package/dist/skill/index.js +21 -0
- package/dist/skill/index.js.map +1 -0
- package/dist/skill/lib/skill-enums.d.ts +41 -0
- package/dist/skill/lib/skill-enums.d.ts.map +1 -0
- package/dist/skill/lib/skill-enums.js +54 -0
- package/dist/skill/lib/skill-enums.js.map +1 -0
- package/dist/skill/lib/skill-governance.d.ts +106 -0
- package/dist/skill/lib/skill-governance.d.ts.map +1 -0
- package/dist/skill/lib/skill-governance.js +61 -0
- package/dist/skill/lib/skill-governance.js.map +1 -0
- package/dist/skill/lib/skill-source.d.ts +14 -0
- package/dist/skill/lib/skill-source.d.ts.map +1 -0
- package/dist/skill/lib/skill-source.js +3 -0
- package/dist/skill/lib/skill-source.js.map +1 -0
- package/dist/skill/lib/skill.d.ts +52 -0
- package/dist/skill/lib/skill.d.ts.map +1 -0
- package/dist/skill/lib/skill.js +3 -0
- package/dist/skill/lib/skill.js.map +1 -0
- package/dist/space/index.d.ts +4 -0
- package/dist/space/index.d.ts.map +1 -0
- package/dist/space/index.js +20 -0
- package/dist/space/index.js.map +1 -0
- package/dist/space/lib/space-ref-parser.d.ts +8 -0
- package/dist/space/lib/space-ref-parser.d.ts.map +1 -0
- package/dist/space/lib/space-ref-parser.js +149 -0
- package/dist/space/lib/space-ref-parser.js.map +1 -0
- package/dist/space/lib/space-traversal.d.ts +3 -0
- package/dist/space/lib/space-traversal.d.ts.map +1 -0
- package/dist/space/lib/space-traversal.js +56 -0
- package/dist/space/lib/space-traversal.js.map +1 -0
- package/dist/space/lib/space.d.ts +53 -0
- package/dist/space/lib/space.d.ts.map +1 -0
- package/dist/space/lib/space.js +98 -0
- package/dist/space/lib/space.js.map +1 -0
- package/dist/subject/index.d.ts +3 -0
- package/dist/subject/index.d.ts.map +1 -0
- package/dist/subject/index.js +19 -0
- package/dist/subject/index.js.map +1 -0
- package/dist/subject/lib/subject.d.ts +29 -0
- package/dist/subject/lib/subject.d.ts.map +1 -0
- package/dist/subject/lib/subject.js +47 -0
- package/dist/subject/lib/subject.js.map +1 -0
- package/dist/subject/lib/token-class.d.ts +11 -0
- package/dist/subject/lib/token-class.d.ts.map +1 -0
- package/dist/subject/lib/token-class.js +15 -0
- package/dist/subject/lib/token-class.js.map +1 -0
- package/dist/workflow/index.d.ts +31 -0
- package/dist/workflow/index.d.ts.map +1 -0
- package/dist/workflow/index.js +47 -0
- package/dist/workflow/index.js.map +1 -0
- package/dist/workflow/lib/action-ref.d.ts +12 -0
- package/dist/workflow/lib/action-ref.d.ts.map +1 -0
- package/dist/workflow/lib/action-ref.js +3 -0
- package/dist/workflow/lib/action-ref.js.map +1 -0
- package/dist/workflow/lib/activity-outputs.d.ts +14 -0
- package/dist/workflow/lib/activity-outputs.d.ts.map +1 -0
- package/dist/workflow/lib/activity-outputs.js +3 -0
- package/dist/workflow/lib/activity-outputs.js.map +1 -0
- package/dist/workflow/lib/agent-role.d.ts +6 -0
- package/dist/workflow/lib/agent-role.d.ts.map +1 -0
- package/dist/workflow/lib/agent-role.js +41 -0
- package/dist/workflow/lib/agent-role.js.map +1 -0
- package/dist/workflow/lib/artifact-ref.d.ts +21 -0
- package/dist/workflow/lib/artifact-ref.d.ts.map +1 -0
- package/dist/workflow/lib/artifact-ref.js +38 -0
- package/dist/workflow/lib/artifact-ref.js.map +1 -0
- package/dist/workflow/lib/briefcase.d.ts +107 -0
- package/dist/workflow/lib/briefcase.d.ts.map +1 -0
- package/dist/workflow/lib/briefcase.js +62 -0
- package/dist/workflow/lib/briefcase.js.map +1 -0
- package/dist/workflow/lib/canonical-concepts/canonical-concept-registry.d.ts +18 -0
- package/dist/workflow/lib/canonical-concepts/canonical-concept-registry.d.ts.map +1 -0
- package/dist/workflow/lib/canonical-concepts/canonical-concept-registry.js +45 -0
- package/dist/workflow/lib/canonical-concepts/canonical-concept-registry.js.map +1 -0
- package/dist/workflow/lib/canonical-concepts/concepts/change-intent.concepts.d.ts +3 -0
- package/dist/workflow/lib/canonical-concepts/concepts/change-intent.concepts.d.ts.map +1 -0
- package/dist/workflow/lib/canonical-concepts/concepts/change-intent.concepts.js +79 -0
- package/dist/workflow/lib/canonical-concepts/concepts/change-intent.concepts.js.map +1 -0
- package/dist/workflow/lib/canonical-concepts/concepts/concern.concepts.d.ts +3 -0
- package/dist/workflow/lib/canonical-concepts/concepts/concern.concepts.d.ts.map +1 -0
- package/dist/workflow/lib/canonical-concepts/concepts/concern.concepts.js +133 -0
- package/dist/workflow/lib/canonical-concepts/concepts/concern.concepts.js.map +1 -0
- package/dist/workflow/lib/canonical-concepts/concepts/domain.concepts.d.ts +3 -0
- package/dist/workflow/lib/canonical-concepts/concepts/domain.concepts.d.ts.map +1 -0
- package/dist/workflow/lib/canonical-concepts/concepts/domain.concepts.js +116 -0
- package/dist/workflow/lib/canonical-concepts/concepts/domain.concepts.js.map +1 -0
- package/dist/workflow/lib/canonical-concepts/concepts/index.d.ts +8 -0
- package/dist/workflow/lib/canonical-concepts/concepts/index.d.ts.map +1 -0
- package/dist/workflow/lib/canonical-concepts/concepts/index.js +18 -0
- package/dist/workflow/lib/canonical-concepts/concepts/index.js.map +1 -0
- package/dist/workflow/lib/canonical-concepts/concepts/technology.concepts.d.ts +3 -0
- package/dist/workflow/lib/canonical-concepts/concepts/technology.concepts.d.ts.map +1 -0
- package/dist/workflow/lib/canonical-concepts/concepts/technology.concepts.js +462 -0
- package/dist/workflow/lib/canonical-concepts/concepts/technology.concepts.js.map +1 -0
- package/dist/workflow/lib/canonical-concepts/index.d.ts +3 -0
- package/dist/workflow/lib/canonical-concepts/index.d.ts.map +1 -0
- package/dist/workflow/lib/canonical-concepts/index.js +16 -0
- package/dist/workflow/lib/canonical-concepts/index.js.map +1 -0
- package/dist/workflow/lib/catalog-taxonomies.d.ts +41 -0
- package/dist/workflow/lib/catalog-taxonomies.d.ts.map +1 -0
- package/dist/workflow/lib/catalog-taxonomies.js +3475 -0
- package/dist/workflow/lib/catalog-taxonomies.js.map +1 -0
- package/dist/workflow/lib/compiled-run.d.ts +118 -0
- package/dist/workflow/lib/compiled-run.d.ts.map +1 -0
- package/dist/workflow/lib/compiled-run.js +3 -0
- package/dist/workflow/lib/compiled-run.js.map +1 -0
- package/dist/workflow/lib/compiled-working-file.d.ts +11 -0
- package/dist/workflow/lib/compiled-working-file.d.ts.map +1 -0
- package/dist/workflow/lib/compiled-working-file.js +3 -0
- package/dist/workflow/lib/compiled-working-file.js.map +1 -0
- package/dist/workflow/lib/compiled-workspace-manifest.d.ts +101 -0
- package/dist/workflow/lib/compiled-workspace-manifest.d.ts.map +1 -0
- package/dist/workflow/lib/compiled-workspace-manifest.js +3 -0
- package/dist/workflow/lib/compiled-workspace-manifest.js.map +1 -0
- package/dist/workflow/lib/concurrency-group.d.ts +6 -0
- package/dist/workflow/lib/concurrency-group.d.ts.map +1 -0
- package/dist/workflow/lib/concurrency-group.js +3 -0
- package/dist/workflow/lib/concurrency-group.js.map +1 -0
- package/dist/workflow/lib/deliverable-result.d.ts +124 -0
- package/dist/workflow/lib/deliverable-result.d.ts.map +1 -0
- package/dist/workflow/lib/deliverable-result.js +27 -0
- package/dist/workflow/lib/deliverable-result.js.map +1 -0
- package/dist/workflow/lib/domain-tag.d.ts +2 -0
- package/dist/workflow/lib/domain-tag.d.ts.map +1 -0
- package/dist/workflow/lib/domain-tag.js +3 -0
- package/dist/workflow/lib/domain-tag.js.map +1 -0
- package/dist/workflow/lib/enums.d.ts +138 -0
- package/dist/workflow/lib/enums.d.ts.map +1 -0
- package/dist/workflow/lib/enums.js +166 -0
- package/dist/workflow/lib/enums.js.map +1 -0
- package/dist/workflow/lib/errors.d.ts +35 -0
- package/dist/workflow/lib/errors.d.ts.map +1 -0
- package/dist/workflow/lib/errors.js +62 -0
- package/dist/workflow/lib/errors.js.map +1 -0
- package/dist/workflow/lib/job-run.d.ts +32 -0
- package/dist/workflow/lib/job-run.d.ts.map +1 -0
- package/dist/workflow/lib/job-run.js +3 -0
- package/dist/workflow/lib/job-run.js.map +1 -0
- package/dist/workflow/lib/model-ref.d.ts +40 -0
- package/dist/workflow/lib/model-ref.d.ts.map +1 -0
- package/dist/workflow/lib/model-ref.js +34 -0
- package/dist/workflow/lib/model-ref.js.map +1 -0
- package/dist/workflow/lib/mount-plan.d.ts +105 -0
- package/dist/workflow/lib/mount-plan.d.ts.map +1 -0
- package/dist/workflow/lib/mount-plan.js +3 -0
- package/dist/workflow/lib/mount-plan.js.map +1 -0
- package/dist/workflow/lib/phase-report.d.ts +9 -0
- package/dist/workflow/lib/phase-report.d.ts.map +1 -0
- package/dist/workflow/lib/phase-report.js +30 -0
- package/dist/workflow/lib/phase-report.js.map +1 -0
- package/dist/workflow/lib/platform-task-queue.d.ts +17 -0
- package/dist/workflow/lib/platform-task-queue.d.ts.map +1 -0
- package/dist/workflow/lib/platform-task-queue.js +33 -0
- package/dist/workflow/lib/platform-task-queue.js.map +1 -0
- package/dist/workflow/lib/review-subject/index.d.ts +5 -0
- package/dist/workflow/lib/review-subject/index.d.ts.map +1 -0
- package/dist/workflow/lib/review-subject/index.js +8 -0
- package/dist/workflow/lib/review-subject/index.js.map +1 -0
- package/dist/workflow/lib/review-subject/kinds.d.ts +5 -0
- package/dist/workflow/lib/review-subject/kinds.d.ts.map +1 -0
- package/dist/workflow/lib/review-subject/kinds.js +9 -0
- package/dist/workflow/lib/review-subject/kinds.js.map +1 -0
- package/dist/workflow/lib/review-subject/narrow.d.ts +5 -0
- package/dist/workflow/lib/review-subject/narrow.d.ts.map +1 -0
- package/dist/workflow/lib/review-subject/narrow.js +79 -0
- package/dist/workflow/lib/review-subject/narrow.js.map +1 -0
- package/dist/workflow/lib/review-subject/producers/artifact-ref.d.ts +9 -0
- package/dist/workflow/lib/review-subject/producers/artifact-ref.d.ts.map +1 -0
- package/dist/workflow/lib/review-subject/producers/artifact-ref.js +16 -0
- package/dist/workflow/lib/review-subject/producers/artifact-ref.js.map +1 -0
- package/dist/workflow/lib/review-subject/producers/string.d.ts +7 -0
- package/dist/workflow/lib/review-subject/producers/string.d.ts.map +1 -0
- package/dist/workflow/lib/review-subject/producers/string.js +11 -0
- package/dist/workflow/lib/review-subject/producers/string.js.map +1 -0
- package/dist/workflow/lib/role-capability.d.ts +16 -0
- package/dist/workflow/lib/role-capability.d.ts.map +1 -0
- package/dist/workflow/lib/role-capability.js +19 -0
- package/dist/workflow/lib/role-capability.js.map +1 -0
- package/dist/workflow/lib/run-progress.d.ts +100 -0
- package/dist/workflow/lib/run-progress.d.ts.map +1 -0
- package/dist/workflow/lib/run-progress.js +96 -0
- package/dist/workflow/lib/run-progress.js.map +1 -0
- package/dist/workflow/lib/sampling-profiles.d.ts +18 -0
- package/dist/workflow/lib/sampling-profiles.d.ts.map +1 -0
- package/dist/workflow/lib/sampling-profiles.js +56 -0
- package/dist/workflow/lib/sampling-profiles.js.map +1 -0
- package/dist/workflow/lib/snapshot-ref.d.ts +10 -0
- package/dist/workflow/lib/snapshot-ref.d.ts.map +1 -0
- package/dist/workflow/lib/snapshot-ref.js +3 -0
- package/dist/workflow/lib/snapshot-ref.js.map +1 -0
- package/dist/workflow/lib/temporal-namespace.d.ts +5 -0
- package/dist/workflow/lib/temporal-namespace.d.ts.map +1 -0
- package/dist/workflow/lib/temporal-namespace.js +34 -0
- package/dist/workflow/lib/temporal-namespace.js.map +1 -0
- package/dist/workflow/lib/trigger-payload.d.ts +35 -0
- package/dist/workflow/lib/trigger-payload.d.ts.map +1 -0
- package/dist/workflow/lib/trigger-payload.js +3 -0
- package/dist/workflow/lib/trigger-payload.js.map +1 -0
- package/dist/workflow/lib/variable-requirement.d.ts +18 -0
- package/dist/workflow/lib/variable-requirement.d.ts.map +1 -0
- package/dist/workflow/lib/variable-requirement.js +3 -0
- package/dist/workflow/lib/variable-requirement.js.map +1 -0
- package/dist/workflow/lib/work-item-payloads.d.ts +114 -0
- package/dist/workflow/lib/work-item-payloads.d.ts.map +1 -0
- package/dist/workflow/lib/work-item-payloads.js +60 -0
- package/dist/workflow/lib/work-item-payloads.js.map +1 -0
- package/dist/workflow/lib/workflow-stage.d.ts +11 -0
- package/dist/workflow/lib/workflow-stage.d.ts.map +1 -0
- package/dist/workflow/lib/workflow-stage.js +28 -0
- package/dist/workflow/lib/workflow-stage.js.map +1 -0
- package/dist/workflow/lib/workspace-manifest-enums.d.ts +42 -0
- package/dist/workflow/lib/workspace-manifest-enums.d.ts.map +1 -0
- package/dist/workflow/lib/workspace-manifest-enums.js +80 -0
- package/dist/workflow/lib/workspace-manifest-enums.js.map +1 -0
- package/package.json +173 -0
- package/src/agent-composition/index.ts +17 -0
- package/src/agent-composition/lib/capability-layer.ts +46 -0
- package/src/agent-composition/lib/composition-limits-schema.ts +38 -0
- package/src/agent-composition/lib/composition-workspace.ts +210 -0
- package/src/agent-composition/lib/composition.ts +205 -0
- package/src/agent-composition/lib/intrinsic-floor.ts +50 -0
- package/src/agent-composition/lib/model-resolution-matrix.ts +112 -0
- package/src/agent-workspace/index.ts +27 -0
- package/src/agent-workspace/lib/agent-run-context.ts +44 -0
- package/src/agent-workspace/lib/agent-tool-defaults.ts +252 -0
- package/src/agent-workspace/lib/awp-v1.ts +289 -0
- package/src/agent-workspace/lib/context-json.ts +92 -0
- package/src/agent-workspace/lib/deliverable-spec-ref.ts +60 -0
- package/src/agent-workspace/lib/endpoint-fetch-spec.ts +66 -0
- package/src/agent-workspace/lib/manifest.ts +53 -0
- package/src/agent-workspace/lib/mount-apply.ts +79 -0
- package/src/agent-workspace/lib/working-file.ts +173 -0
- package/src/agent-workspace/lib/workspace-layout.ts +106 -0
- package/src/agent-workspace/lib/workspace-spec.ts +212 -0
- package/src/biome/index.ts +10 -0
- package/src/biome/lib/biome-api.ts +33 -0
- package/src/biome/lib/biome-capability-refs.ts +29 -0
- package/src/biome/lib/biome-engines.ts +18 -0
- package/src/biome/lib/biome-lifecycle-hooks.ts +28 -0
- package/src/biome/lib/biome-lifecycle.ts +29 -0
- package/src/biome/lib/biome-manifest.ts +102 -0
- package/src/biome/lib/biome-permissions.ts +35 -0
- package/src/biome/lib/biome-scope.ts +19 -0
- package/src/biome/lib/biome-trust-tier.ts +21 -0
- package/src/biome/lib/trust-tier-policies.ts +99 -0
- package/src/capability/index.ts +8 -0
- package/src/capability/lib/capability-contribution.ts +99 -0
- package/src/capability/lib/capability-grant.ts +90 -0
- package/src/capability/lib/capability-policy.ts +37 -0
- package/src/capability/lib/capability-ref.ts +138 -0
- package/src/capability/lib/errors.ts +180 -0
- package/src/capability/lib/meta-tool.ts +213 -0
- package/src/capability/lib/permission-profile.ts +91 -0
- package/src/capability/lib/shell-command-descriptor.ts +66 -0
- package/src/contribution/index.ts +4 -0
- package/src/contribution/lib/contribution-kind.ts +132 -0
- package/src/contribution/lib/contribution-source.ts +29 -0
- package/src/contribution/lib/contribution.ts +209 -0
- package/src/contribution/lib/registry.ts +100 -0
- package/src/document-templates/index.ts +24 -0
- package/src/document-templates/lib/document-template.ts +88 -0
- package/src/document-templates/lib/index.ts +2 -0
- package/src/document-templates/lib/rendering-shape.ts +48 -0
- package/src/document-themes/index.ts +21 -0
- package/src/document-themes/lib/component-vocabulary.ts +100 -0
- package/src/document-themes/lib/document-theme.ts +110 -0
- package/src/document-themes/lib/index.ts +2 -0
- package/src/entitlement/index.ts +1 -0
- package/src/entitlement/lib/entitlement.ts +142 -0
- package/src/execution-context/index.ts +3 -0
- package/src/execution-context/lib/caller.ts +46 -0
- package/src/execution-context/lib/execution-context.ts +205 -0
- package/src/execution-context/lib/subject.ts +17 -0
- package/src/execution-environment/index.ts +3 -0
- package/src/execution-environment/lib/approval-rule.ts +32 -0
- package/src/execution-environment/lib/built-in-environments.ts +89 -0
- package/src/execution-environment/lib/execution-environment.ts +266 -0
- package/src/kernel-state/index.ts +3 -0
- package/src/kernel-state/lib/adapter-kind.ts +18 -0
- package/src/kernel-state/lib/kernel-state.ts +139 -0
- package/src/kernel-state/lib/key-grammar.ts +105 -0
- package/src/llm-gateway/index.ts +2 -0
- package/src/llm-gateway/lib/caller.ts +48 -0
- package/src/llm-gateway/lib/errors.ts +111 -0
- package/src/mcp-tool/index.ts +6 -0
- package/src/mcp-tool/lib/mcp-protocol.ts +94 -0
- package/src/mcp-tool/lib/mcp-server-config.ts +17 -0
- package/src/mcp-tool/lib/provider-kind.ts +35 -0
- package/src/mcp-tool/lib/resolver-scope.ts +32 -0
- package/src/mcp-tool/lib/tool-provider.ts +62 -0
- package/src/mcp-tool/lib/tool-selection.ts +48 -0
- package/src/object/index.ts +4 -0
- package/src/object/lib/object-lifecycle.ts +22 -0
- package/src/object/lib/xema-object-kind.ts +73 -0
- package/src/object/lib/xema-object-ref.ts +233 -0
- package/src/object/lib/xema-object.ts +81 -0
- package/src/policy/index.ts +3 -0
- package/src/policy/lib/obligations.ts +155 -0
- package/src/policy/lib/policy.ts +104 -0
- package/src/policy/lib/route-hints.ts +51 -0
- package/src/runner/index.ts +11 -0
- package/src/runner/lib/dispatch.ts +61 -0
- package/src/runner/lib/input-hash.ts +66 -0
- package/src/runner/lib/job-token.ts +80 -0
- package/src/runner/lib/runner-attestation.ts +53 -0
- package/src/runner/lib/runner-job.ts +90 -0
- package/src/runner/lib/runner-kind.ts +10 -0
- package/src/runner/lib/runner-mode.ts +16 -0
- package/src/runner/lib/runner-plane.ts +101 -0
- package/src/runner/lib/runner-registration.ts +204 -0
- package/src/runner/lib/runner.ts +103 -0
- package/src/runner/lib/runtime-isolation.ts +53 -0
- package/src/search-source/index.ts +4 -0
- package/src/search-source/lib/indexable-document.ts +70 -0
- package/src/search-source/lib/search-index-event.ts +56 -0
- package/src/search-source/lib/search-replay.ts +96 -0
- package/src/search-source/lib/search-source-descriptor.ts +50 -0
- package/src/service-registry/index.ts +3 -0
- package/src/service-registry/lib/inject-service.ts +25 -0
- package/src/service-registry/lib/service-descriptor.ts +75 -0
- package/src/service-registry/lib/service-registry-client.ts +107 -0
- package/src/skill/index.ts +15 -0
- package/src/skill/lib/skill-enums.ts +124 -0
- package/src/skill/lib/skill-governance.ts +281 -0
- package/src/skill/lib/skill-source.ts +41 -0
- package/src/skill/lib/skill.ts +150 -0
- package/src/space/index.ts +3 -0
- package/src/space/lib/space-ref-parser.ts +198 -0
- package/src/space/lib/space-traversal.ts +55 -0
- package/src/space/lib/space.ts +173 -0
- package/src/subject/index.ts +2 -0
- package/src/subject/lib/subject.ts +111 -0
- package/src/subject/lib/token-class.ts +27 -0
- package/src/workflow/index.ts +45 -0
- package/src/workflow/lib/action-ref.ts +48 -0
- package/src/workflow/lib/activity-outputs.ts +105 -0
- package/src/workflow/lib/agent-role.ts +136 -0
- package/src/workflow/lib/artifact-ref.ts +93 -0
- package/src/workflow/lib/briefcase.ts +194 -0
- package/src/workflow/lib/canonical-concepts/canonical-concept-registry.ts +99 -0
- package/src/workflow/lib/canonical-concepts/concepts/change-intent.concepts.ts +124 -0
- package/src/workflow/lib/canonical-concepts/concepts/concern.concepts.ts +194 -0
- package/src/workflow/lib/canonical-concepts/concepts/domain.concepts.ts +205 -0
- package/src/workflow/lib/canonical-concepts/concepts/index.ts +15 -0
- package/src/workflow/lib/canonical-concepts/concepts/technology.concepts.ts +667 -0
- package/src/workflow/lib/canonical-concepts/index.ts +2 -0
- package/src/workflow/lib/catalog-taxonomies.ts +3695 -0
- package/src/workflow/lib/compiled-run.ts +376 -0
- package/src/workflow/lib/compiled-working-file.ts +35 -0
- package/src/workflow/lib/compiled-workspace-manifest.ts +185 -0
- package/src/workflow/lib/concurrency-group.ts +17 -0
- package/src/workflow/lib/deliverable-result.ts +238 -0
- package/src/workflow/lib/domain-tag.ts +48 -0
- package/src/workflow/lib/enums.ts +288 -0
- package/src/workflow/lib/errors.ts +171 -0
- package/src/workflow/lib/job-run.ts +65 -0
- package/src/workflow/lib/model-ref.ts +118 -0
- package/src/workflow/lib/mount-plan.ts +230 -0
- package/src/workflow/lib/phase-report.ts +67 -0
- package/src/workflow/lib/platform-task-queue.ts +83 -0
- package/src/workflow/lib/review-subject/index.ts +15 -0
- package/src/workflow/lib/review-subject/kinds.ts +31 -0
- package/src/workflow/lib/review-subject/narrow.ts +123 -0
- package/src/workflow/lib/review-subject/producers/artifact-ref.ts +33 -0
- package/src/workflow/lib/review-subject/producers/string.ts +24 -0
- package/src/workflow/lib/role-capability.ts +80 -0
- package/src/workflow/lib/run-progress.ts +254 -0
- package/src/workflow/lib/sampling-profiles.ts +153 -0
- package/src/workflow/lib/snapshot-ref.ts +27 -0
- package/src/workflow/lib/temporal-namespace.ts +78 -0
- package/src/workflow/lib/trigger-payload.ts +69 -0
- package/src/workflow/lib/variable-requirement.ts +66 -0
- package/src/workflow/lib/work-item-payloads.ts +139 -0
- package/src/workflow/lib/workflow-stage.ts +89 -0
- package/src/workflow/lib/workspace-manifest-enums.ts +143 -0
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
// ═══════════════════════════════════════════════════════════════════════════
|
|
2
|
+
// ── DocumentTheme manifest + tokens ──
|
|
3
|
+
//
|
|
4
|
+
// The shape every theme — built-in, biome-shipped, org-authored —
|
|
5
|
+
// conforms to. The registry persists `manifest`, `tokens`, and `css`
|
|
6
|
+
// separately so the FE can fetch only what it needs (manifest for the
|
|
7
|
+
// gallery; manifest+tokens+css when activating a theme on a document).
|
|
8
|
+
// ═══════════════════════════════════════════════════════════════════════════
|
|
9
|
+
|
|
10
|
+
import type { RenderingShape } from '../../document-templates';
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* Same 3-tier scope as templates. Resolution precedence:
|
|
14
|
+
* ORG > BIOME > SYSTEM (most specific wins). Themes are scoped at the
|
|
15
|
+
* registry level; per-page selection is via `Page.themeRef` (a ref into
|
|
16
|
+
* this registry).
|
|
17
|
+
*/
|
|
18
|
+
export enum DocumentThemeScope {
|
|
19
|
+
SYSTEM = 'SYSTEM',
|
|
20
|
+
BIOME = 'BIOME',
|
|
21
|
+
ORG = 'ORG',
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* Manifest entry — the metadata fetched for the theme gallery and the
|
|
26
|
+
* theme dropdown in the document topbar.
|
|
27
|
+
*
|
|
28
|
+
* `supportedShapes` lets a theme opt out of rendering shapes that don't
|
|
29
|
+
* fit it visually (e.g. a heavily-decorated letter theme might exclude
|
|
30
|
+
* `ANIMATED_SLIDES`). Empty / unset = supports all shapes.
|
|
31
|
+
*
|
|
32
|
+
* `supportedFormats` lets a theme constrain itself to a subset of paper
|
|
33
|
+
* formats (e.g. a poster theme might only support TABLOID). Empty /
|
|
34
|
+
* unset = supports all formats.
|
|
35
|
+
*/
|
|
36
|
+
export interface DocumentThemeManifest {
|
|
37
|
+
readonly slug: string;
|
|
38
|
+
readonly name: string;
|
|
39
|
+
readonly description: string;
|
|
40
|
+
readonly supportedShapes?: readonly RenderingShape[];
|
|
41
|
+
readonly supportedFormats?: readonly string[];
|
|
42
|
+
readonly previewThumbnailUrl?: string;
|
|
43
|
+
readonly version: string;
|
|
44
|
+
readonly scope: DocumentThemeScope;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
/**
|
|
48
|
+
* The token pack — `theme.json`. Closed VOCABULARY (the keys defined
|
|
49
|
+
* here), open VALUES (the strings each implementation picks).
|
|
50
|
+
*
|
|
51
|
+
* Themes are expected to populate the full token surface; missing keys
|
|
52
|
+
* fall back to the system default theme's tokens at resolution time
|
|
53
|
+
* (registry-side defaulting, not silent — logged + emitted as a
|
|
54
|
+
* warning so theme authors notice).
|
|
55
|
+
*/
|
|
56
|
+
export interface DocumentThemeTokens {
|
|
57
|
+
readonly color: {
|
|
58
|
+
readonly ink: string;
|
|
59
|
+
readonly paper: string;
|
|
60
|
+
readonly accent: string;
|
|
61
|
+
readonly accentInk: string;
|
|
62
|
+
readonly muted: string;
|
|
63
|
+
readonly mutedInk: string;
|
|
64
|
+
readonly rule: string;
|
|
65
|
+
readonly success: string;
|
|
66
|
+
readonly warn: string;
|
|
67
|
+
readonly danger: string;
|
|
68
|
+
};
|
|
69
|
+
readonly type: {
|
|
70
|
+
readonly familySans: string;
|
|
71
|
+
readonly familySerif: string;
|
|
72
|
+
readonly familyMono: string;
|
|
73
|
+
/** [display, title, h2, h3, body, caption, overline] — pt values. */
|
|
74
|
+
readonly scalePt: readonly [number, number, number, number, number, number, number];
|
|
75
|
+
/** Matching line-heights for the scale. */
|
|
76
|
+
readonly lineHeight: readonly [number, number, number, number, number, number, number];
|
|
77
|
+
/** Matching weights for the scale. */
|
|
78
|
+
readonly weight: readonly [number, number, number, number, number, number, number];
|
|
79
|
+
};
|
|
80
|
+
readonly space: {
|
|
81
|
+
/** mm values used by `@page` margins and macro layout. */
|
|
82
|
+
readonly pageMargin: { top: number; right: number; bottom: number; left: number };
|
|
83
|
+
/** Generic spacing scale (0/4/8/12/16/24/32/48 — px). */
|
|
84
|
+
readonly scalePx: readonly [number, number, number, number, number, number, number, number];
|
|
85
|
+
};
|
|
86
|
+
readonly radius: {
|
|
87
|
+
/** Corner radii — px. */
|
|
88
|
+
readonly scalePx: readonly [number, number, number, number];
|
|
89
|
+
};
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
/**
|
|
93
|
+
* Full theme bundle the kb-api theme endpoint returns on activation.
|
|
94
|
+
* `css` is the serialized theme stylesheet (already token-substituted
|
|
95
|
+
* OR using CSS custom properties that reference the same tokens — the
|
|
96
|
+
* runtime treats it as an opaque string).
|
|
97
|
+
*/
|
|
98
|
+
export interface DocumentTheme {
|
|
99
|
+
readonly manifest: DocumentThemeManifest;
|
|
100
|
+
readonly tokens: DocumentThemeTokens;
|
|
101
|
+
readonly css: string;
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
/**
|
|
105
|
+
* Wire-shape reference to a theme — `<scope>:<slug>` (system or
|
|
106
|
+
* biome) or `<scope>:<orgId>:<slug>` (org). Matches
|
|
107
|
+
* DocumentTemplateRef's encoding so consumers parse both with one
|
|
108
|
+
* helper.
|
|
109
|
+
*/
|
|
110
|
+
export type DocumentThemeRef = string;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './lib/entitlement';
|
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* The Xema deployment/org edition. Closed set — the build is compiled for
|
|
5
|
+
* exactly one ceiling edition, and an org is provisioned at exactly one
|
|
6
|
+
* edition (never above the build ceiling).
|
|
7
|
+
*
|
|
8
|
+
* `Community` is the FAIL-CLOSED default: any ambiguity in resolution
|
|
9
|
+
* (missing config, missing org row, malformed upstream payload) collapses to
|
|
10
|
+
* `Community`. Enterprise capability is granted only on an explicit, valid
|
|
11
|
+
* `Enterprise` signal at BOTH the deployment ceiling AND the org row.
|
|
12
|
+
*/
|
|
13
|
+
export enum Edition {
|
|
14
|
+
Community = 'community',
|
|
15
|
+
Enterprise = 'enterprise',
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
export const EditionSchema = z.nativeEnum(Edition);
|
|
19
|
+
|
|
20
|
+
/**
|
|
21
|
+
* The closed set of feature keys other Xema features gate on. Each key names a
|
|
22
|
+
* single Enterprise-gated capability; a key being absent from an
|
|
23
|
+
* `EntitlementSet.features` map (or set to `false`) means NOT entitled.
|
|
24
|
+
*
|
|
25
|
+
* Closed set — adding a gated feature is a kernel change. Never gate on a
|
|
26
|
+
* free-form string; always reference a member of this enum so the boundary
|
|
27
|
+
* between "known gated feature" and "typo / unknown feature" stays explicit
|
|
28
|
+
* (an unknown key can never be entitled).
|
|
29
|
+
*/
|
|
30
|
+
export enum EntitlementKey {
|
|
31
|
+
/** Nested / hierarchical teams (sub-teams within teams). */
|
|
32
|
+
TeamsNested = 'teams.nested',
|
|
33
|
+
/** Delegated team administration (team-scoped admins below the org admin). */
|
|
34
|
+
TeamsDelegatedAdmin = 'teams.delegatedAdmin',
|
|
35
|
+
/** SCIM provisioning for teams/membership. */
|
|
36
|
+
TeamsScim = 'teams.scim',
|
|
37
|
+
/** Custom (org-authored) roles beyond the built-in role set. */
|
|
38
|
+
RolesCustom = 'roles.custom',
|
|
39
|
+
/** Access-request approval workflow. */
|
|
40
|
+
AccessRequestWorkflow = 'access.requestWorkflow',
|
|
41
|
+
/** External OIDC identity-provider federation (SSO). */
|
|
42
|
+
SsoOidcFederation = 'sso.oidc-federation',
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
export const EntitlementKeySchema = z.nativeEnum(EntitlementKey);
|
|
46
|
+
|
|
47
|
+
/**
|
|
48
|
+
* An entitlement decision for a single org: the resolved `edition` plus a
|
|
49
|
+
* per-feature map. A feature is entitled only when its key maps to `true`;
|
|
50
|
+
* absent or `false` ⇒ not entitled (fail-closed).
|
|
51
|
+
*/
|
|
52
|
+
export interface EntitlementSet {
|
|
53
|
+
edition: Edition;
|
|
54
|
+
features: Partial<Record<EntitlementKey, boolean>>;
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
export const EntitlementSetSchema = z.object({
|
|
58
|
+
edition: EditionSchema,
|
|
59
|
+
features: z.record(EntitlementKeySchema, z.boolean()),
|
|
60
|
+
}) as z.ZodType<EntitlementSet>;
|
|
61
|
+
|
|
62
|
+
/**
|
|
63
|
+
* The fully-locked-down Community entitlement: Community edition with every
|
|
64
|
+
* gated feature off. Returned by every fail-closed path.
|
|
65
|
+
*/
|
|
66
|
+
const COMMUNITY_ENTITLEMENT: EntitlementSet = {
|
|
67
|
+
edition: Edition.Community,
|
|
68
|
+
features: {},
|
|
69
|
+
};
|
|
70
|
+
|
|
71
|
+
/**
|
|
72
|
+
* Resolve the EFFECTIVE entitlement for an org as
|
|
73
|
+
* **`effective = min(deploymentCeiling, orgEntitlement)`**.
|
|
74
|
+
*
|
|
75
|
+
* FAIL-CLOSED rules (a compromised or stale org row can never exceed the build
|
|
76
|
+
* edition, and any ambiguity collapses to Community):
|
|
77
|
+
*
|
|
78
|
+
* 1. If `deploymentCeiling` is `Community`, the result is ALWAYS Community with
|
|
79
|
+
* every gated feature `false`, regardless of what the org row claims. The
|
|
80
|
+
* build simply does not contain Enterprise capability to grant.
|
|
81
|
+
* 2. If the org entitlement is `undefined` (unknown / absent / not yet
|
|
82
|
+
* provisioned), the result is the Community default.
|
|
83
|
+
* 3. If `deploymentCeiling` is `Enterprise` but the org row's edition is
|
|
84
|
+
* `Community`, the org is Community and every feature is `false`.
|
|
85
|
+
* 4. Only when BOTH the ceiling and the org row are `Enterprise` are the org's
|
|
86
|
+
* `true` feature flags honored; any non-`true` (absent / `false`) feature
|
|
87
|
+
* stays off.
|
|
88
|
+
*
|
|
89
|
+
* Never grants MORE than the org explicitly enabled, and never more than the
|
|
90
|
+
* build ceiling allows. There is no path that returns Enterprise without an
|
|
91
|
+
* explicit Enterprise signal on both sides.
|
|
92
|
+
*/
|
|
93
|
+
export function resolveEffectiveEntitlement(
|
|
94
|
+
deploymentCeiling: Edition,
|
|
95
|
+
orgEntitlement: EntitlementSet | undefined,
|
|
96
|
+
): EntitlementSet {
|
|
97
|
+
// Rule 1: a Community build can never grant Enterprise.
|
|
98
|
+
if (deploymentCeiling !== Edition.Enterprise) {
|
|
99
|
+
return { edition: Edition.Community, features: {} };
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
// Rule 2: unknown / absent org ⇒ Community default.
|
|
103
|
+
if (!orgEntitlement) {
|
|
104
|
+
return { edition: Edition.Community, features: {} };
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
// Rule 3: org row not Enterprise ⇒ Community, all features off.
|
|
108
|
+
if (orgEntitlement.edition !== Edition.Enterprise) {
|
|
109
|
+
return { edition: Edition.Community, features: {} };
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
// Rule 4: ceiling AND org are Enterprise — honor only explicit `true` flags.
|
|
113
|
+
const features: Partial<Record<EntitlementKey, boolean>> = {};
|
|
114
|
+
for (const key of Object.values(EntitlementKey)) {
|
|
115
|
+
if (orgEntitlement.features[key] === true) {
|
|
116
|
+
features[key] = true;
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
return { edition: Edition.Enterprise, features };
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
/** Re-exported for callers that want the canonical fail-closed default. */
|
|
123
|
+
export { COMMUNITY_ENTITLEMENT };
|
|
124
|
+
|
|
125
|
+
/**
|
|
126
|
+
* Whether a single feature is entitled under an already-resolved EFFECTIVE
|
|
127
|
+
* entitlement. Fail-closed: returns `true` ONLY when the effective edition is
|
|
128
|
+
* `Enterprise` AND the feature flag is explicitly `true`. Any absent / `false`
|
|
129
|
+
* / unknown state ⇒ `false`.
|
|
130
|
+
*
|
|
131
|
+
* Always call this against the output of `resolveEffectiveEntitlement` — never
|
|
132
|
+
* against a raw org row, so the deployment ceiling has already been applied.
|
|
133
|
+
*/
|
|
134
|
+
export function isFeatureEntitled(
|
|
135
|
+
effective: EntitlementSet,
|
|
136
|
+
key: EntitlementKey,
|
|
137
|
+
): boolean {
|
|
138
|
+
return (
|
|
139
|
+
effective.edition === Edition.Enterprise &&
|
|
140
|
+
effective.features[key] === true
|
|
141
|
+
);
|
|
142
|
+
}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Closed caller-kind set (plan v4.3 §A.3).
|
|
5
|
+
*
|
|
6
|
+
* Distinguishes how the invocation entered the system — drives audit
|
|
7
|
+
* shape, default obligations (e.g. `Web` callers default to `audit` +
|
|
8
|
+
* `redact-secrets`), and route-hint fallbacks. Closed set.
|
|
9
|
+
*/
|
|
10
|
+
export enum CallerKind {
|
|
11
|
+
Web = 'web',
|
|
12
|
+
Api = 'api',
|
|
13
|
+
Agent = 'agent',
|
|
14
|
+
Workflow = 'workflow',
|
|
15
|
+
Shell = 'shell',
|
|
16
|
+
Scheduler = 'scheduler',
|
|
17
|
+
}
|
|
18
|
+
|
|
19
|
+
export const CallerKindSchema = z.nativeEnum(CallerKind);
|
|
20
|
+
|
|
21
|
+
/**
|
|
22
|
+
* `Caller` — entry-point envelope captured on every invocation.
|
|
23
|
+
*
|
|
24
|
+
* v4.3 contract shape per plan §A.3:
|
|
25
|
+
* { kind: CallerKind; appId?; sessionId?; ip?; userAgent? }
|
|
26
|
+
*
|
|
27
|
+
* `appId` and `sessionId` are populated when the caller is an embedded
|
|
28
|
+
* app or interactive session; `ip` + `userAgent` come from the HTTP edge
|
|
29
|
+
* (public-gateway-api) and are dropped at internal hops to avoid silent
|
|
30
|
+
* PII propagation past the audit boundary.
|
|
31
|
+
*/
|
|
32
|
+
export interface Caller {
|
|
33
|
+
kind: CallerKind;
|
|
34
|
+
appId?: string;
|
|
35
|
+
sessionId?: string;
|
|
36
|
+
ip?: string;
|
|
37
|
+
userAgent?: string;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
export const CallerSchema = z.object({
|
|
41
|
+
kind: CallerKindSchema,
|
|
42
|
+
appId: z.string().min(1).optional(),
|
|
43
|
+
sessionId: z.string().min(1).optional(),
|
|
44
|
+
ip: z.string().min(1).optional(),
|
|
45
|
+
userAgent: z.string().min(1).optional(),
|
|
46
|
+
}) as z.ZodType<Caller>;
|
|
@@ -0,0 +1,205 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import {
|
|
3
|
+
CapabilityRefSchema,
|
|
4
|
+
type CapabilityRef,
|
|
5
|
+
} from '../../capability';
|
|
6
|
+
import {
|
|
7
|
+
ExecutionEnvironmentKind,
|
|
8
|
+
ExecutionEnvironmentKindSchema,
|
|
9
|
+
} from '../../execution-environment';
|
|
10
|
+
import {
|
|
11
|
+
DataClassification,
|
|
12
|
+
DataClassificationSchema,
|
|
13
|
+
SpaceRefSchema,
|
|
14
|
+
type SpaceRef,
|
|
15
|
+
} from '../../space';
|
|
16
|
+
import { CallerSchema, type Caller } from './caller';
|
|
17
|
+
import {
|
|
18
|
+
ActingForRefSchema,
|
|
19
|
+
SubjectRefSchema,
|
|
20
|
+
type ActingForRef,
|
|
21
|
+
type SubjectRef,
|
|
22
|
+
} from './subject';
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* Closed biome trust-tier set referenced by `ExecutionContext.biome`
|
|
26
|
+
* (plan v4.3 §A.3).
|
|
27
|
+
*
|
|
28
|
+
* Tier ordering goes Untrusted → Community → Verified → Official; OPA
|
|
29
|
+
* policy bundles MAY gate a capability to a minimum tier, but the kernel
|
|
30
|
+
* never assumes a fallback default — `signatureVerified=false` on a non-
|
|
31
|
+
* `Untrusted` tier MUST fail-fast at the gateway.
|
|
32
|
+
*/
|
|
33
|
+
export enum BiomeTrustTier {
|
|
34
|
+
Official = 'official',
|
|
35
|
+
Verified = 'verified',
|
|
36
|
+
Community = 'community',
|
|
37
|
+
Untrusted = 'untrusted',
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
export const BiomeTrustTierSchema = z.nativeEnum(BiomeTrustTier);
|
|
41
|
+
|
|
42
|
+
/**
|
|
43
|
+
* Biome attestation block carried on `ExecutionContext.biome` (plan
|
|
44
|
+
* v4.3 §A.3). Set when the capability is provided by a biome (vs. an
|
|
45
|
+
* embedded built-in). `signatureVerified` is the Cosign verdict from the
|
|
46
|
+
* biome-fetcher-api at install time.
|
|
47
|
+
*/
|
|
48
|
+
export interface ExecutionContextBiome {
|
|
49
|
+
id: string;
|
|
50
|
+
version: string;
|
|
51
|
+
trustTier: BiomeTrustTier;
|
|
52
|
+
signatureVerified: boolean;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
export const ExecutionContextBiomeSchema = z.object({
|
|
56
|
+
id: z.string().min(1),
|
|
57
|
+
version: z.string().min(1),
|
|
58
|
+
trustTier: BiomeTrustTierSchema,
|
|
59
|
+
signatureVerified: z.boolean(),
|
|
60
|
+
}) as z.ZodType<ExecutionContextBiome>;
|
|
61
|
+
|
|
62
|
+
/**
|
|
63
|
+
* Environment block carried on `ExecutionContext.environment` (plan
|
|
64
|
+
* v4.3 §A.3).
|
|
65
|
+
*
|
|
66
|
+
* `id` is the canonical `environment:<slug>` ref (string-typed here to
|
|
67
|
+
* keep the envelope JSON-clean — the kernel-side reference type lives in
|
|
68
|
+
* `@xemahq/execution-environment-contracts`).
|
|
69
|
+
*
|
|
70
|
+
* `kind` is the {@link ExecutionEnvironmentKind} value matched against the eight
|
|
71
|
+
* built-in environments + the `trusted-dev` escape hatch. The internal
|
|
72
|
+
* identifier `ExecutionEnvironmentKind` is still named "Zone" — the rename to
|
|
73
|
+
* `ExecutionEnvironmentKind` is scheduled for Phase A.5 (plan §A.1
|
|
74
|
+
* follow-up sweep), not Phase A.3.
|
|
75
|
+
*/
|
|
76
|
+
export interface ExecutionContextEnvironment {
|
|
77
|
+
id: string;
|
|
78
|
+
kind: ExecutionEnvironmentKind;
|
|
79
|
+
}
|
|
80
|
+
|
|
81
|
+
export const ExecutionContextEnvironmentSchema = z.object({
|
|
82
|
+
id: z.string().min(1),
|
|
83
|
+
kind: ExecutionEnvironmentKindSchema,
|
|
84
|
+
}) as z.ZodType<ExecutionContextEnvironment>;
|
|
85
|
+
|
|
86
|
+
/**
|
|
87
|
+
* Capability block carried on `ExecutionContext.capability` (plan
|
|
88
|
+
* v4.3 §A.3).
|
|
89
|
+
*
|
|
90
|
+
* `ref` is the canonical capability reference (`<biome>:<verb>@<major>`).
|
|
91
|
+
* `inputHash` is an optional SHA-256 fingerprint of the JSON-serialised
|
|
92
|
+
* input — used for cache-key composition and audit replay. Omitted on
|
|
93
|
+
* invocations whose input is non-deterministic (e.g. streaming uploads).
|
|
94
|
+
*/
|
|
95
|
+
export interface ExecutionContextCapability {
|
|
96
|
+
ref: CapabilityRef;
|
|
97
|
+
inputHash?: string;
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
export const ExecutionContextCapabilitySchema = z.object({
|
|
101
|
+
ref: CapabilityRefSchema,
|
|
102
|
+
inputHash: z.string().min(1).optional(),
|
|
103
|
+
}) as z.ZodType<ExecutionContextCapability>;
|
|
104
|
+
|
|
105
|
+
/**
|
|
106
|
+
* Resource block carried on `ExecutionContext.resource` (plan v4.3 §A.3).
|
|
107
|
+
*
|
|
108
|
+
* Set when the invocation targets a specific persistent object (a
|
|
109
|
+
* XemaObject, a document, an SCM file). `ref` is the resource reference
|
|
110
|
+
* (XVFS path or domain ref); `classification` MUST be carried alongside
|
|
111
|
+
* because policy obligations like `redact-secrets` and
|
|
112
|
+
* `restrict-output-classification` key on it.
|
|
113
|
+
*/
|
|
114
|
+
export interface ExecutionContextResource {
|
|
115
|
+
ref: string;
|
|
116
|
+
classification: DataClassification;
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
export const ExecutionContextResourceSchema = z.object({
|
|
120
|
+
ref: z.string().min(1),
|
|
121
|
+
classification: DataClassificationSchema,
|
|
122
|
+
}) as z.ZodType<ExecutionContextResource>;
|
|
123
|
+
|
|
124
|
+
/**
|
|
125
|
+
* Constraints block carried on `ExecutionContext.constraints` (plan
|
|
126
|
+
* v4.3 §A.3).
|
|
127
|
+
*
|
|
128
|
+
* Per-invocation caps + flags the gateway derives from the caller's
|
|
129
|
+
* grant, the org's environment policy, and the capability's defaults.
|
|
130
|
+
* `requireCustomerEdge` is a hard runner-selection constraint (see
|
|
131
|
+
* `RouteHint.requireCustomerEdge` in `@xemahq/policy-contracts`).
|
|
132
|
+
*
|
|
133
|
+
* Omitted fields mean "no constraint at this layer"; the runner MUST
|
|
134
|
+
* still respect downstream layers (e.g. org-level cost budgets).
|
|
135
|
+
*/
|
|
136
|
+
export interface ExecutionContextConstraints {
|
|
137
|
+
maxCostUsd?: number;
|
|
138
|
+
maxDurationSeconds?: number;
|
|
139
|
+
requireApproval?: boolean;
|
|
140
|
+
requireAudit?: boolean;
|
|
141
|
+
requireCustomerEdge?: boolean;
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
export const ExecutionContextConstraintsSchema = z.object({
|
|
145
|
+
maxCostUsd: z.number().nonnegative().optional(),
|
|
146
|
+
maxDurationSeconds: z.number().int().nonnegative().optional(),
|
|
147
|
+
requireApproval: z.boolean().optional(),
|
|
148
|
+
requireAudit: z.boolean().optional(),
|
|
149
|
+
requireCustomerEdge: z.boolean().optional(),
|
|
150
|
+
}) as z.ZodType<ExecutionContextConstraints>;
|
|
151
|
+
|
|
152
|
+
/**
|
|
153
|
+
* `ExecutionContext` — the per-invocation envelope (plan v4.3 §A.3).
|
|
154
|
+
*
|
|
155
|
+
* Constructed by `biomes/xema-capability-router/api/xema-capability-router` at the gateway boundary,
|
|
156
|
+
* passed verbatim to `authorization-api` for the policy check, and
|
|
157
|
+
* forwarded to the dispatched runner. Audit, policy, and runner all
|
|
158
|
+
* read the SAME shape — no parallel envelopes.
|
|
159
|
+
*
|
|
160
|
+
* Wave 4 (Phase A.5) wires this through `dispatch.service.ts`. This
|
|
161
|
+
* package is contract-only — no consumer rewiring lives here.
|
|
162
|
+
*/
|
|
163
|
+
export interface ExecutionContext {
|
|
164
|
+
id: string;
|
|
165
|
+
requestId: string;
|
|
166
|
+
traceId: string;
|
|
167
|
+
subject: SubjectRef;
|
|
168
|
+
caller: Caller;
|
|
169
|
+
space: SpaceRef;
|
|
170
|
+
environment: ExecutionContextEnvironment;
|
|
171
|
+
biome?: ExecutionContextBiome;
|
|
172
|
+
capability: ExecutionContextCapability;
|
|
173
|
+
resource?: ExecutionContextResource;
|
|
174
|
+
constraints?: ExecutionContextConstraints;
|
|
175
|
+
/**
|
|
176
|
+
* RFC 8693 delegation chain (`act`), outermost-acting-first. Built at the
|
|
177
|
+
* gateway from `RequestContext.actorChain` and carried through policy → audit
|
|
178
|
+
* → credential-broker. Empty/omitted for a non-delegated invocation
|
|
179
|
+
* (plan §W4 / Pillar 3.2).
|
|
180
|
+
*/
|
|
181
|
+
actorChain?: ActingForRef[];
|
|
182
|
+
/**
|
|
183
|
+
* Opaque credential-binding id the PDP selected for this invocation
|
|
184
|
+
* (`PolicyDecision.credentialBindingId`). When present, the executing
|
|
185
|
+
* gateway/runner resolves it via the credential-broker. NEVER a secret
|
|
186
|
+
* (plan §W4 / Pillar 3.2).
|
|
187
|
+
*/
|
|
188
|
+
credentialBindingId?: string;
|
|
189
|
+
}
|
|
190
|
+
|
|
191
|
+
export const ExecutionContextSchema = z.object({
|
|
192
|
+
id: z.string().min(1),
|
|
193
|
+
requestId: z.string().min(1),
|
|
194
|
+
traceId: z.string().min(1),
|
|
195
|
+
subject: SubjectRefSchema,
|
|
196
|
+
caller: CallerSchema,
|
|
197
|
+
space: SpaceRefSchema,
|
|
198
|
+
environment: ExecutionContextEnvironmentSchema,
|
|
199
|
+
biome: ExecutionContextBiomeSchema.optional(),
|
|
200
|
+
capability: ExecutionContextCapabilitySchema,
|
|
201
|
+
resource: ExecutionContextResourceSchema.optional(),
|
|
202
|
+
constraints: ExecutionContextConstraintsSchema.optional(),
|
|
203
|
+
actorChain: z.array(ActingForRefSchema).optional(),
|
|
204
|
+
credentialBindingId: z.string().min(1).optional(),
|
|
205
|
+
}) as z.ZodType<ExecutionContext>;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The canonical subject taxonomy now lives in `@xemahq/subject-contracts`
|
|
3
|
+
* (the single closed `SubjectKind`, the `{ kind, id, roles?, actingFor? }`
|
|
4
|
+
* `SubjectRef`, the `ActingForRef` delegation pointer, and the
|
|
5
|
+
* `subjectRefToString`/`parseSubjectRef` composite bridges). This module
|
|
6
|
+
* re-exports that surface so existing `@xemahq/execution-context-contracts`
|
|
7
|
+
* importers are unaffected. Do NOT redeclare a `SubjectKind`/`SubjectRef` here.
|
|
8
|
+
*/
|
|
9
|
+
export {
|
|
10
|
+
SubjectKind,
|
|
11
|
+
SubjectKindSchema,
|
|
12
|
+
SubjectRefSchema,
|
|
13
|
+
ActingForRefSchema,
|
|
14
|
+
subjectRefToString,
|
|
15
|
+
parseSubjectRef,
|
|
16
|
+
} from '../../subject';
|
|
17
|
+
export type { SubjectRef, ActingForRef } from '../../subject';
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import {
|
|
3
|
+
CapabilityRefSchema,
|
|
4
|
+
type CapabilityRef,
|
|
5
|
+
} from '../../capability';
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* Per-environment approval rule (plan §3.4 `ExecutionEnvironment.approvalRules[]`,
|
|
9
|
+
* §30.7 Human-in-the-loop approval at runtime).
|
|
10
|
+
*
|
|
11
|
+
* When a runtime invocation matches a rule whose `capability` ref covers the
|
|
12
|
+
* call, the gateway suspends the invocation, emits an `ApprovalRequested`
|
|
13
|
+
* CloudEvent, and renders a typed approval dialog. The rule may further
|
|
14
|
+
* require a specific approver role and/or a minimum approver count.
|
|
15
|
+
*
|
|
16
|
+
* `requireApproverCount` defaults are NOT encoded here — the gateway
|
|
17
|
+
* fail-fasts on a missing/invalid count rather than substituting a silent
|
|
18
|
+
* default (engineering constitution: no silent fallbacks).
|
|
19
|
+
*/
|
|
20
|
+
export interface ApprovalRule {
|
|
21
|
+
capability: CapabilityRef;
|
|
22
|
+
requireRole?: string;
|
|
23
|
+
requireApproverCount?: number;
|
|
24
|
+
reason?: string;
|
|
25
|
+
}
|
|
26
|
+
|
|
27
|
+
export const ApprovalRuleSchema = z.object({
|
|
28
|
+
capability: CapabilityRefSchema,
|
|
29
|
+
requireRole: z.string().min(1).optional(),
|
|
30
|
+
requireApproverCount: z.number().int().positive().optional(),
|
|
31
|
+
reason: z.string().min(1).optional(),
|
|
32
|
+
}) as z.ZodType<ApprovalRule>;
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Closed set of built-in Execution Environment kinds.
|
|
5
|
+
*
|
|
6
|
+
* Plan-of-record: v4.3 §2 vocabulary table (`Zone → Environment` row),
|
|
7
|
+
* §3.4 (the eight built-in environments that cover every story we have
|
|
8
|
+
* today), and §30.6 (`trusted-dev` environment — the developer escape
|
|
9
|
+
* hatch).
|
|
10
|
+
*
|
|
11
|
+
* v1 ships ONLY these built-ins; custom environments are an explicit v2
|
|
12
|
+
* extension (plan §16). The downstream `ExecutionEnvironment.scope` type
|
|
13
|
+
* intentionally widens to `ExecutionEnvironmentKind | string` for future-
|
|
14
|
+
* proofing, but at v1 the only legal scope values are members of this
|
|
15
|
+
* enum — see `isExecutionEnvironmentKind`.
|
|
16
|
+
*
|
|
17
|
+
* Slugs are stable wire identifiers and MUST NOT change once shipped;
|
|
18
|
+
* they appear in `ExecutionEnvironmentRef` (`environment:<slug>`), in
|
|
19
|
+
* capability grants, and in audit logs.
|
|
20
|
+
*/
|
|
21
|
+
export enum ExecutionEnvironmentKind {
|
|
22
|
+
/** Platform operators / migrations. */
|
|
23
|
+
System = 'system',
|
|
24
|
+
/** Org admins; biome install/uninstall. */
|
|
25
|
+
Org = 'org',
|
|
26
|
+
/** Project members; default agent/workflow runtime. */
|
|
27
|
+
Project = 'project',
|
|
28
|
+
/** Apps configured for an audience. */
|
|
29
|
+
App = 'app',
|
|
30
|
+
/** Interactive session bounded by user permissions. */
|
|
31
|
+
Session = 'session',
|
|
32
|
+
/**
|
|
33
|
+
* Biome build/test (Linux container OK here) + agent-generated biome
|
|
34
|
+
* staging. NOT the same as `TrustedDev` — `Sandbox` is for untrusted
|
|
35
|
+
* biomes the org is evaluating.
|
|
36
|
+
*/
|
|
37
|
+
Sandbox = 'sandbox',
|
|
38
|
+
/** External delegated sessions (chat widgets, customer portals). */
|
|
39
|
+
Public = 'public',
|
|
40
|
+
/** Biome inspected for publication; no real org data access. */
|
|
41
|
+
StoreReview = 'store-review',
|
|
42
|
+
/**
|
|
43
|
+
* Local-dev / personal-sandbox environment (plan §30.6). Inside it the
|
|
44
|
+
* Capability Gateway grants every capability the biome *declared* in
|
|
45
|
+
* its manifest, no resource glob, no rate limit, no human approval.
|
|
46
|
+
* Audit-log still records every call so devs can inspect what their
|
|
47
|
+
* biome *would* do in production. Only `power-user-developer` profile
|
|
48
|
+
* can be installed here, and the environment is never reachable from
|
|
49
|
+
* production data.
|
|
50
|
+
*/
|
|
51
|
+
TrustedDev = 'trusted-dev',
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
export const ExecutionEnvironmentKindSchema = z.nativeEnum(ExecutionEnvironmentKind);
|
|
55
|
+
|
|
56
|
+
/**
|
|
57
|
+
* Stable, ordered list of every built-in environment slug. Seeded at
|
|
58
|
+
* boot by `authorization-api` / `object-registry-api` per plan §17.5
|
|
59
|
+
* step 1.
|
|
60
|
+
*
|
|
61
|
+
* Ordering is intentional (system → org → project → app → session →
|
|
62
|
+
* sandbox → public → store-review → trusted-dev) and matches the table
|
|
63
|
+
* in §3.4 followed by the dev escape hatch from §30.6. Do not reorder
|
|
64
|
+
* without a coordinated migration of any consumer that relies on
|
|
65
|
+
* positional iteration.
|
|
66
|
+
*/
|
|
67
|
+
export const BUILT_IN_ENVIRONMENT_SLUGS: readonly ExecutionEnvironmentKind[] = [
|
|
68
|
+
ExecutionEnvironmentKind.System,
|
|
69
|
+
ExecutionEnvironmentKind.Org,
|
|
70
|
+
ExecutionEnvironmentKind.Project,
|
|
71
|
+
ExecutionEnvironmentKind.App,
|
|
72
|
+
ExecutionEnvironmentKind.Session,
|
|
73
|
+
ExecutionEnvironmentKind.Sandbox,
|
|
74
|
+
ExecutionEnvironmentKind.Public,
|
|
75
|
+
ExecutionEnvironmentKind.StoreReview,
|
|
76
|
+
ExecutionEnvironmentKind.TrustedDev,
|
|
77
|
+
] as const;
|
|
78
|
+
|
|
79
|
+
/**
|
|
80
|
+
* Narrowing guard: returns `true` iff `slug` is one of the built-in
|
|
81
|
+
* environment slugs. Used by `ExecutionEnvironmentSchema` and the
|
|
82
|
+
* authorization-api to refuse custom-scoped environments at v1 (plan §16
|
|
83
|
+
* non-goal).
|
|
84
|
+
*/
|
|
85
|
+
export function isExecutionEnvironmentKind(
|
|
86
|
+
slug: string,
|
|
87
|
+
): slug is ExecutionEnvironmentKind {
|
|
88
|
+
return (BUILT_IN_ENVIRONMENT_SLUGS as readonly string[]).includes(slug);
|
|
89
|
+
}
|