@xemahq/biome-sdk 0.1.1
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/LICENSE +201 -0
- package/README.md +62 -0
- package/dist/adapter/index.d.ts +7 -0
- package/dist/adapter/index.d.ts.map +1 -0
- package/dist/adapter/index.js +23 -0
- package/dist/adapter/index.js.map +1 -0
- package/dist/adapter/lib/action.d.ts +25 -0
- package/dist/adapter/lib/action.d.ts.map +1 -0
- package/dist/adapter/lib/action.js +3 -0
- package/dist/adapter/lib/action.js.map +1 -0
- package/dist/adapter/lib/provider-module.d.ts +41 -0
- package/dist/adapter/lib/provider-module.d.ts.map +1 -0
- package/dist/adapter/lib/provider-module.js +7 -0
- package/dist/adapter/lib/provider-module.js.map +1 -0
- package/dist/adapter/lib/resource.d.ts +25 -0
- package/dist/adapter/lib/resource.d.ts.map +1 -0
- package/dist/adapter/lib/resource.js +3 -0
- package/dist/adapter/lib/resource.js.map +1 -0
- package/dist/adapter/lib/result.d.ts +18 -0
- package/dist/adapter/lib/result.d.ts.map +1 -0
- package/dist/adapter/lib/result.js +12 -0
- package/dist/adapter/lib/result.js.map +1 -0
- package/dist/adapter/lib/sidecar-contract.d.ts +91 -0
- package/dist/adapter/lib/sidecar-contract.d.ts.map +1 -0
- package/dist/adapter/lib/sidecar-contract.js +19 -0
- package/dist/adapter/lib/sidecar-contract.js.map +1 -0
- package/dist/adapter/lib/webhook.d.ts +49 -0
- package/dist/adapter/lib/webhook.d.ts.map +1 -0
- package/dist/adapter/lib/webhook.js +3 -0
- package/dist/adapter/lib/webhook.js.map +1 -0
- package/dist/agent-workspace/index.d.ts +8 -0
- package/dist/agent-workspace/index.d.ts.map +1 -0
- package/dist/agent-workspace/index.js +24 -0
- package/dist/agent-workspace/index.js.map +1 -0
- package/dist/agent-workspace/lib/errors/error-codes.d.ts +16 -0
- package/dist/agent-workspace/lib/errors/error-codes.d.ts.map +1 -0
- package/dist/agent-workspace/lib/errors/error-codes.js +37 -0
- package/dist/agent-workspace/lib/errors/error-codes.js.map +1 -0
- package/dist/agent-workspace/lib/errors/index.d.ts +4 -0
- package/dist/agent-workspace/lib/errors/index.d.ts.map +1 -0
- package/dist/agent-workspace/lib/errors/index.js +20 -0
- package/dist/agent-workspace/lib/errors/index.js.map +1 -0
- package/dist/agent-workspace/lib/errors/mount-plan-error.d.ts +16 -0
- package/dist/agent-workspace/lib/errors/mount-plan-error.d.ts.map +1 -0
- package/dist/agent-workspace/lib/errors/mount-plan-error.js +26 -0
- package/dist/agent-workspace/lib/errors/mount-plan-error.js.map +1 -0
- package/dist/agent-workspace/lib/errors/mount-resolver-error.d.ts +34 -0
- package/dist/agent-workspace/lib/errors/mount-resolver-error.d.ts.map +1 -0
- package/dist/agent-workspace/lib/errors/mount-resolver-error.js +50 -0
- package/dist/agent-workspace/lib/errors/mount-resolver-error.js.map +1 -0
- package/dist/agent-workspace/lib/mount-resolver.d.ts +10 -0
- package/dist/agent-workspace/lib/mount-resolver.d.ts.map +1 -0
- package/dist/agent-workspace/lib/mount-resolver.js +3 -0
- package/dist/agent-workspace/lib/mount-resolver.js.map +1 -0
- package/dist/agent-workspace/lib/mount-source.d.ts +4 -0
- package/dist/agent-workspace/lib/mount-source.d.ts.map +1 -0
- package/dist/agent-workspace/lib/mount-source.js +3 -0
- package/dist/agent-workspace/lib/mount-source.js.map +1 -0
- package/dist/agent-workspace/lib/refid-resolver.d.ts +23 -0
- package/dist/agent-workspace/lib/refid-resolver.d.ts.map +1 -0
- package/dist/agent-workspace/lib/refid-resolver.js +103 -0
- package/dist/agent-workspace/lib/refid-resolver.js.map +1 -0
- package/dist/agent-workspace/lib/registries.d.ts +30 -0
- package/dist/agent-workspace/lib/registries.d.ts.map +1 -0
- package/dist/agent-workspace/lib/registries.js +88 -0
- package/dist/agent-workspace/lib/registries.js.map +1 -0
- package/dist/agent-workspace/lib/resolvers/agent-definition.resolver.d.ts +13 -0
- package/dist/agent-workspace/lib/resolvers/agent-definition.resolver.d.ts.map +1 -0
- package/dist/agent-workspace/lib/resolvers/agent-definition.resolver.js +25 -0
- package/dist/agent-workspace/lib/resolvers/agent-definition.resolver.js.map +1 -0
- package/dist/agent-workspace/lib/resolvers/artifact-store-collection.resolver.d.ts +13 -0
- package/dist/agent-workspace/lib/resolvers/artifact-store-collection.resolver.d.ts.map +1 -0
- package/dist/agent-workspace/lib/resolvers/artifact-store-collection.resolver.js +28 -0
- package/dist/agent-workspace/lib/resolvers/artifact-store-collection.resolver.js.map +1 -0
- package/dist/agent-workspace/lib/resolvers/artifact-version.resolver.d.ts +13 -0
- package/dist/agent-workspace/lib/resolvers/artifact-version.resolver.d.ts.map +1 -0
- package/dist/agent-workspace/lib/resolvers/artifact-version.resolver.js +25 -0
- package/dist/agent-workspace/lib/resolvers/artifact-version.resolver.js.map +1 -0
- package/dist/agent-workspace/lib/resolvers/clients.d.ts +122 -0
- package/dist/agent-workspace/lib/resolvers/clients.d.ts.map +1 -0
- package/dist/agent-workspace/lib/resolvers/clients.js +3 -0
- package/dist/agent-workspace/lib/resolvers/clients.js.map +1 -0
- package/dist/agent-workspace/lib/resolvers/deliverable-specs.resolver.d.ts +13 -0
- package/dist/agent-workspace/lib/resolvers/deliverable-specs.resolver.d.ts.map +1 -0
- package/dist/agent-workspace/lib/resolvers/deliverable-specs.resolver.js +24 -0
- package/dist/agent-workspace/lib/resolvers/deliverable-specs.resolver.js.map +1 -0
- package/dist/agent-workspace/lib/resolvers/deliverables.resolver.d.ts +13 -0
- package/dist/agent-workspace/lib/resolvers/deliverables.resolver.d.ts.map +1 -0
- package/dist/agent-workspace/lib/resolvers/deliverables.resolver.js +28 -0
- package/dist/agent-workspace/lib/resolvers/deliverables.resolver.js.map +1 -0
- package/dist/agent-workspace/lib/resolvers/index.d.ts +20 -0
- package/dist/agent-workspace/lib/resolvers/index.d.ts.map +1 -0
- package/dist/agent-workspace/lib/resolvers/index.js +36 -0
- package/dist/agent-workspace/lib/resolvers/index.js.map +1 -0
- package/dist/agent-workspace/lib/resolvers/instruction-section.resolver.d.ts +13 -0
- package/dist/agent-workspace/lib/resolvers/instruction-section.resolver.d.ts.map +1 -0
- package/dist/agent-workspace/lib/resolvers/instruction-section.resolver.js +22 -0
- package/dist/agent-workspace/lib/resolvers/instruction-section.resolver.js.map +1 -0
- package/dist/agent-workspace/lib/resolvers/kb-pages.resolver.d.ts +13 -0
- package/dist/agent-workspace/lib/resolvers/kb-pages.resolver.d.ts.map +1 -0
- package/dist/agent-workspace/lib/resolvers/kb-pages.resolver.js +36 -0
- package/dist/agent-workspace/lib/resolvers/kb-pages.resolver.js.map +1 -0
- package/dist/agent-workspace/lib/resolvers/kb-space.resolver.d.ts +13 -0
- package/dist/agent-workspace/lib/resolvers/kb-space.resolver.d.ts.map +1 -0
- package/dist/agent-workspace/lib/resolvers/kb-space.resolver.js +26 -0
- package/dist/agent-workspace/lib/resolvers/kb-space.resolver.js.map +1 -0
- package/dist/agent-workspace/lib/resolvers/rendered-agents-md.resolver.d.ts +13 -0
- package/dist/agent-workspace/lib/resolvers/rendered-agents-md.resolver.d.ts.map +1 -0
- package/dist/agent-workspace/lib/resolvers/rendered-agents-md.resolver.js +23 -0
- package/dist/agent-workspace/lib/resolvers/rendered-agents-md.resolver.js.map +1 -0
- package/dist/agent-workspace/lib/resolvers/rendered-context-json.resolver.d.ts +13 -0
- package/dist/agent-workspace/lib/resolvers/rendered-context-json.resolver.d.ts.map +1 -0
- package/dist/agent-workspace/lib/resolvers/rendered-context-json.resolver.js +24 -0
- package/dist/agent-workspace/lib/resolvers/rendered-context-json.resolver.js.map +1 -0
- package/dist/agent-workspace/lib/resolvers/rendered-system-overlay.resolver.d.ts +13 -0
- package/dist/agent-workspace/lib/resolvers/rendered-system-overlay.resolver.d.ts.map +1 -0
- package/dist/agent-workspace/lib/resolvers/rendered-system-overlay.resolver.js +23 -0
- package/dist/agent-workspace/lib/resolvers/rendered-system-overlay.resolver.js.map +1 -0
- package/dist/agent-workspace/lib/resolvers/scm-repo.resolver.d.ts +13 -0
- package/dist/agent-workspace/lib/resolvers/scm-repo.resolver.d.ts.map +1 -0
- package/dist/agent-workspace/lib/resolvers/scm-repo.resolver.js +28 -0
- package/dist/agent-workspace/lib/resolvers/scm-repo.resolver.js.map +1 -0
- package/dist/agent-workspace/lib/resolvers/session-attachment.resolver.d.ts +13 -0
- package/dist/agent-workspace/lib/resolvers/session-attachment.resolver.d.ts.map +1 -0
- package/dist/agent-workspace/lib/resolvers/session-attachment.resolver.js +28 -0
- package/dist/agent-workspace/lib/resolvers/session-attachment.resolver.js.map +1 -0
- package/dist/agent-workspace/lib/resolvers/skill-bundle.resolver.d.ts +13 -0
- package/dist/agent-workspace/lib/resolvers/skill-bundle.resolver.d.ts.map +1 -0
- package/dist/agent-workspace/lib/resolvers/skill-bundle.resolver.js +29 -0
- package/dist/agent-workspace/lib/resolvers/skill-bundle.resolver.js.map +1 -0
- package/dist/agent-workspace/lib/resolvers/static-literal.resolver.d.ts +11 -0
- package/dist/agent-workspace/lib/resolvers/static-literal.resolver.d.ts.map +1 -0
- package/dist/agent-workspace/lib/resolvers/static-literal.resolver.js +33 -0
- package/dist/agent-workspace/lib/resolvers/static-literal.resolver.js.map +1 -0
- package/dist/agent-workspace/lib/resolvers/types.d.ts +35 -0
- package/dist/agent-workspace/lib/resolvers/types.d.ts.map +1 -0
- package/dist/agent-workspace/lib/resolvers/types.js +3 -0
- package/dist/agent-workspace/lib/resolvers/types.js.map +1 -0
- package/dist/agent-workspace/lib/resolvers/utils/agent-run-context-cache.d.ts +70 -0
- package/dist/agent-workspace/lib/resolvers/utils/agent-run-context-cache.d.ts.map +1 -0
- package/dist/agent-workspace/lib/resolvers/utils/agent-run-context-cache.js +90 -0
- package/dist/agent-workspace/lib/resolvers/utils/agent-run-context-cache.js.map +1 -0
- package/dist/agent-workspace/lib/resolvers/utils/auth.d.ts +5 -0
- package/dist/agent-workspace/lib/resolvers/utils/auth.d.ts.map +1 -0
- package/dist/agent-workspace/lib/resolvers/utils/auth.js +19 -0
- package/dist/agent-workspace/lib/resolvers/utils/auth.js.map +1 -0
- package/dist/agent-workspace/lib/resolvers/utils/size-cap.d.ts +3 -0
- package/dist/agent-workspace/lib/resolvers/utils/size-cap.d.ts.map +1 -0
- package/dist/agent-workspace/lib/resolvers/utils/size-cap.js +23 -0
- package/dist/agent-workspace/lib/resolvers/utils/size-cap.js.map +1 -0
- package/dist/agent-workspace/lib/resolvers/utils/streaming.d.ts +3 -0
- package/dist/agent-workspace/lib/resolvers/utils/streaming.d.ts.map +1 -0
- package/dist/agent-workspace/lib/resolvers/utils/streaming.js +11 -0
- package/dist/agent-workspace/lib/resolvers/utils/streaming.js.map +1 -0
- package/dist/agent-workspace/lib/workspace-renderer.d.ts +13 -0
- package/dist/agent-workspace/lib/workspace-renderer.d.ts.map +1 -0
- package/dist/agent-workspace/lib/workspace-renderer.js +3 -0
- package/dist/agent-workspace/lib/workspace-renderer.js.map +1 -0
- package/dist/api/index.d.ts +11 -0
- package/dist/api/index.d.ts.map +1 -0
- package/dist/api/index.js +27 -0
- package/dist/api/index.js.map +1 -0
- package/dist/api/lib/api-manifest.d.ts +29 -0
- package/dist/api/lib/api-manifest.d.ts.map +1 -0
- package/dist/api/lib/api-manifest.js +28 -0
- package/dist/api/lib/api-manifest.js.map +1 -0
- package/dist/api/lib/biome-db.d.ts +2 -0
- package/dist/api/lib/biome-db.d.ts.map +1 -0
- package/dist/api/lib/biome-db.js +13 -0
- package/dist/api/lib/biome-db.js.map +1 -0
- package/dist/api/lib/code-tool-context.d.ts +16 -0
- package/dist/api/lib/code-tool-context.d.ts.map +1 -0
- package/dist/api/lib/code-tool-context.js +12 -0
- package/dist/api/lib/code-tool-context.js.map +1 -0
- package/dist/api/lib/code-tool-descriptor.d.ts +49 -0
- package/dist/api/lib/code-tool-descriptor.d.ts.map +1 -0
- package/dist/api/lib/code-tool-descriptor.js +3 -0
- package/dist/api/lib/code-tool-descriptor.js.map +1 -0
- package/dist/api/lib/code-tool.decorator.d.ts +17 -0
- package/dist/api/lib/code-tool.decorator.d.ts.map +1 -0
- package/dist/api/lib/code-tool.decorator.js +38 -0
- package/dist/api/lib/code-tool.decorator.js.map +1 -0
- package/dist/api/lib/mutation-context.d.ts +16 -0
- package/dist/api/lib/mutation-context.d.ts.map +1 -0
- package/dist/api/lib/mutation-context.js +17 -0
- package/dist/api/lib/mutation-context.js.map +1 -0
- package/dist/api/lib/pagination.d.ts +8 -0
- package/dist/api/lib/pagination.d.ts.map +1 -0
- package/dist/api/lib/pagination.js +7 -0
- package/dist/api/lib/pagination.js.map +1 -0
- package/dist/api/lib/provider-kind-mirror.d.ts +7 -0
- package/dist/api/lib/provider-kind-mirror.d.ts.map +1 -0
- package/dist/api/lib/provider-kind-mirror.js +11 -0
- package/dist/api/lib/provider-kind-mirror.js.map +1 -0
- package/dist/api/lib/request-context.d.ts +21 -0
- package/dist/api/lib/request-context.d.ts.map +1 -0
- package/dist/api/lib/request-context.js +51 -0
- package/dist/api/lib/request-context.js.map +1 -0
- package/dist/api/lib/route-registry-entry.d.ts +11 -0
- package/dist/api/lib/route-registry-entry.d.ts.map +1 -0
- package/dist/api/lib/route-registry-entry.js +3 -0
- package/dist/api/lib/route-registry-entry.js.map +1 -0
- package/dist/api/nest/controller-base.d.ts +6 -0
- package/dist/api/nest/controller-base.d.ts.map +1 -0
- package/dist/api/nest/controller-base.js +28 -0
- package/dist/api/nest/controller-base.js.map +1 -0
- package/dist/api/nest/events/events.controller.d.ts +10 -0
- package/dist/api/nest/events/events.controller.d.ts.map +1 -0
- package/dist/api/nest/events/events.controller.js +56 -0
- package/dist/api/nest/events/events.controller.js.map +1 -0
- package/dist/api/nest/health/health.controller.d.ts +19 -0
- package/dist/api/nest/health/health.controller.d.ts.map +1 -0
- package/dist/api/nest/health/health.controller.js +63 -0
- package/dist/api/nest/health/health.controller.js.map +1 -0
- package/dist/api/nest/health/health.module.d.ts +6 -0
- package/dist/api/nest/health/health.module.d.ts.map +1 -0
- package/dist/api/nest/health/health.module.js +29 -0
- package/dist/api/nest/health/health.module.js.map +1 -0
- package/dist/api/nest/index.d.ts +7 -0
- package/dist/api/nest/index.d.ts.map +1 -0
- package/dist/api/nest/index.js +23 -0
- package/dist/api/nest/index.js.map +1 -0
- package/dist/api/nest/module.d.ts +6 -0
- package/dist/api/nest/module.d.ts.map +1 -0
- package/dist/api/nest/module.js +34 -0
- package/dist/api/nest/module.js.map +1 -0
- package/dist/api/nest/request-context.d.ts +17 -0
- package/dist/api/nest/request-context.d.ts.map +1 -0
- package/dist/api/nest/request-context.js +75 -0
- package/dist/api/nest/request-context.js.map +1 -0
- package/dist/builder/index.d.ts +7 -0
- package/dist/builder/index.d.ts.map +1 -0
- package/dist/builder/index.js +23 -0
- package/dist/builder/index.js.map +1 -0
- package/dist/builder/lib/content-walker.d.ts +27 -0
- package/dist/builder/lib/content-walker.d.ts.map +1 -0
- package/dist/builder/lib/content-walker.js +274 -0
- package/dist/builder/lib/content-walker.js.map +1 -0
- package/dist/builder/lib/contribution-schemas.d.ts +348 -0
- package/dist/builder/lib/contribution-schemas.d.ts.map +1 -0
- package/dist/builder/lib/contribution-schemas.js +301 -0
- package/dist/builder/lib/contribution-schemas.js.map +1 -0
- package/dist/builder/lib/define-biome.d.ts +17 -0
- package/dist/builder/lib/define-biome.d.ts.map +1 -0
- package/dist/builder/lib/define-biome.js +11 -0
- package/dist/builder/lib/define-biome.js.map +1 -0
- package/dist/builder/lib/define-helpers.d.ts +6 -0
- package/dist/builder/lib/define-helpers.d.ts.map +1 -0
- package/dist/builder/lib/define-helpers.js +20 -0
- package/dist/builder/lib/define-helpers.js.map +1 -0
- package/dist/builder/lib/extends-precedence.d.ts +14 -0
- package/dist/builder/lib/extends-precedence.d.ts.map +1 -0
- package/dist/builder/lib/extends-precedence.js +113 -0
- package/dist/builder/lib/extends-precedence.js.map +1 -0
- package/dist/builder/lib/workflow-phase-config-loader.d.ts +18 -0
- package/dist/builder/lib/workflow-phase-config-loader.d.ts.map +1 -0
- package/dist/builder/lib/workflow-phase-config-loader.js +78 -0
- package/dist/builder/lib/workflow-phase-config-loader.js.map +1 -0
- package/dist/host/index.d.ts +11 -0
- package/dist/host/index.d.ts.map +1 -0
- package/dist/host/index.js +38 -0
- package/dist/host/index.js.map +1 -0
- package/dist/host/lib/agents-cross-validate.d.ts +7 -0
- package/dist/host/lib/agents-cross-validate.d.ts.map +1 -0
- package/dist/host/lib/agents-cross-validate.js +157 -0
- package/dist/host/lib/agents-cross-validate.js.map +1 -0
- package/dist/host/lib/biome-manifest.d.ts +808 -0
- package/dist/host/lib/biome-manifest.d.ts.map +1 -0
- package/dist/host/lib/biome-manifest.js +490 -0
- package/dist/host/lib/biome-manifest.js.map +1 -0
- package/dist/host/lib/bootstrap-contributions-service.d.ts +35 -0
- package/dist/host/lib/bootstrap-contributions-service.d.ts.map +1 -0
- package/dist/host/lib/bootstrap-contributions-service.js +79 -0
- package/dist/host/lib/bootstrap-contributions-service.js.map +1 -0
- package/dist/host/lib/default-state.d.ts +3 -0
- package/dist/host/lib/default-state.d.ts.map +1 -0
- package/dist/host/lib/default-state.js +20 -0
- package/dist/host/lib/default-state.js.map +1 -0
- package/dist/host/lib/integration-cross-validate.d.ts +12 -0
- package/dist/host/lib/integration-cross-validate.d.ts.map +1 -0
- package/dist/host/lib/integration-cross-validate.js +66 -0
- package/dist/host/lib/integration-cross-validate.js.map +1 -0
- package/dist/host/lib/system-overlay-contribution.d.ts +14 -0
- package/dist/host/lib/system-overlay-contribution.d.ts.map +1 -0
- package/dist/host/lib/system-overlay-contribution.js +3 -0
- package/dist/host/lib/system-overlay-contribution.js.map +1 -0
- package/dist/host/lib/topology.d.ts +7 -0
- package/dist/host/lib/topology.d.ts.map +1 -0
- package/dist/host/lib/topology.js +105 -0
- package/dist/host/lib/topology.js.map +1 -0
- package/dist/index.d.ts +9 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +37 -0
- package/dist/index.js.map +1 -0
- package/dist/orchestrator-adapter/index.d.ts +3 -0
- package/dist/orchestrator-adapter/index.d.ts.map +1 -0
- package/dist/orchestrator-adapter/index.js +19 -0
- package/dist/orchestrator-adapter/index.js.map +1 -0
- package/dist/orchestrator-adapter/lib/orchestrator-adapter-registry.d.ts +6 -0
- package/dist/orchestrator-adapter/lib/orchestrator-adapter-registry.d.ts.map +1 -0
- package/dist/orchestrator-adapter/lib/orchestrator-adapter-registry.js +11 -0
- package/dist/orchestrator-adapter/lib/orchestrator-adapter-registry.js.map +1 -0
- package/dist/orchestrator-adapter/lib/orchestrator-adapter.d.ts +11 -0
- package/dist/orchestrator-adapter/lib/orchestrator-adapter.d.ts.map +1 -0
- package/dist/orchestrator-adapter/lib/orchestrator-adapter.js +3 -0
- package/dist/orchestrator-adapter/lib/orchestrator-adapter.js.map +1 -0
- package/package.json +110 -0
- package/src/adapter/index.ts +6 -0
- package/src/adapter/lib/action.ts +60 -0
- package/src/adapter/lib/provider-module.ts +140 -0
- package/src/adapter/lib/resource.ts +52 -0
- package/src/adapter/lib/result.ts +53 -0
- package/src/adapter/lib/sidecar-contract.ts +169 -0
- package/src/adapter/lib/webhook.ts +142 -0
- package/src/agent-workspace/index.ts +7 -0
- package/src/agent-workspace/lib/errors/error-codes.ts +44 -0
- package/src/agent-workspace/lib/errors/index.ts +3 -0
- package/src/agent-workspace/lib/errors/mount-plan-error.ts +29 -0
- package/src/agent-workspace/lib/errors/mount-resolver-error.ts +56 -0
- package/src/agent-workspace/lib/mount-resolver.ts +35 -0
- package/src/agent-workspace/lib/mount-source.ts +11 -0
- package/src/agent-workspace/lib/refid-resolver.ts +135 -0
- package/src/agent-workspace/lib/registries.ts +150 -0
- package/src/agent-workspace/lib/resolvers/agent-definition.resolver.ts +45 -0
- package/src/agent-workspace/lib/resolvers/artifact-store-collection.resolver.ts +43 -0
- package/src/agent-workspace/lib/resolvers/artifact-version.resolver.ts +52 -0
- package/src/agent-workspace/lib/resolvers/clients.ts +297 -0
- package/src/agent-workspace/lib/resolvers/deliverable-specs.resolver.ts +33 -0
- package/src/agent-workspace/lib/resolvers/deliverables.resolver.ts +41 -0
- package/src/agent-workspace/lib/resolvers/index.ts +19 -0
- package/src/agent-workspace/lib/resolvers/instruction-section.resolver.ts +36 -0
- package/src/agent-workspace/lib/resolvers/kb-pages.resolver.ts +62 -0
- package/src/agent-workspace/lib/resolvers/kb-space.resolver.ts +34 -0
- package/src/agent-workspace/lib/resolvers/rendered-agents-md.resolver.ts +40 -0
- package/src/agent-workspace/lib/resolvers/rendered-context-json.resolver.ts +41 -0
- package/src/agent-workspace/lib/resolvers/rendered-system-overlay.resolver.ts +39 -0
- package/src/agent-workspace/lib/resolvers/scm-repo.resolver.ts +43 -0
- package/src/agent-workspace/lib/resolvers/session-attachment.resolver.ts +37 -0
- package/src/agent-workspace/lib/resolvers/skill-bundle.resolver.ts +42 -0
- package/src/agent-workspace/lib/resolvers/static-literal.resolver.ts +69 -0
- package/src/agent-workspace/lib/resolvers/types.ts +94 -0
- package/src/agent-workspace/lib/resolvers/utils/agent-run-context-cache.ts +206 -0
- package/src/agent-workspace/lib/resolvers/utils/auth.ts +39 -0
- package/src/agent-workspace/lib/resolvers/utils/size-cap.ts +38 -0
- package/src/agent-workspace/lib/resolvers/utils/streaming.ts +22 -0
- package/src/agent-workspace/lib/workspace-renderer.ts +25 -0
- package/src/api/index.ts +10 -0
- package/src/api/lib/api-manifest.ts +54 -0
- package/src/api/lib/biome-db.ts +28 -0
- package/src/api/lib/code-tool-context.ts +45 -0
- package/src/api/lib/code-tool-descriptor.ts +102 -0
- package/src/api/lib/code-tool.decorator.ts +111 -0
- package/src/api/lib/mutation-context.ts +49 -0
- package/src/api/lib/pagination.ts +17 -0
- package/src/api/lib/provider-kind-mirror.ts +16 -0
- package/src/api/lib/request-context.ts +90 -0
- package/src/api/lib/route-registry-entry.ts +35 -0
- package/src/api/nest/controller-base.ts +59 -0
- package/src/api/nest/events/events.controller.ts +48 -0
- package/src/api/nest/health/health.controller.ts +36 -0
- package/src/api/nest/health/health.module.ts +29 -0
- package/src/api/nest/index.ts +6 -0
- package/src/api/nest/module.ts +51 -0
- package/src/api/nest/request-context.ts +166 -0
- package/src/builder/index.ts +26 -0
- package/src/builder/lib/content-walker.ts +383 -0
- package/src/builder/lib/contribution-schemas.ts +572 -0
- package/src/builder/lib/define-biome.ts +84 -0
- package/src/builder/lib/define-helpers.ts +42 -0
- package/src/builder/lib/extends-precedence.ts +195 -0
- package/src/builder/lib/workflow-phase-config-loader.ts +163 -0
- package/src/host/index.ts +39 -0
- package/src/host/lib/agents-cross-validate.ts +283 -0
- package/src/host/lib/biome-manifest.ts +1060 -0
- package/src/host/lib/bootstrap-contributions-service.ts +233 -0
- package/src/host/lib/default-state.ts +40 -0
- package/src/host/lib/integration-cross-validate.ts +140 -0
- package/src/host/lib/system-overlay-contribution.ts +53 -0
- package/src/host/lib/topology.ts +174 -0
- package/src/index.ts +58 -0
- package/src/orchestrator-adapter/index.ts +2 -0
- package/src/orchestrator-adapter/lib/orchestrator-adapter-registry.ts +8 -0
- package/src/orchestrator-adapter/lib/orchestrator-adapter.ts +20 -0
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { Controller, Get, Inject } from '@nestjs/common';
|
|
2
|
+
import { ApiOperation, ApiTags } from '@nestjs/swagger';
|
|
3
|
+
|
|
4
|
+
/** DI token for the database client injected into `PluginHealthController`. */
|
|
5
|
+
export const PLUGIN_HEALTH_DB = 'PLUGIN_HEALTH_DB' as const;
|
|
6
|
+
|
|
7
|
+
/** Minimal interface required by `PluginHealthController`. */
|
|
8
|
+
export interface PluginHealthDb {
|
|
9
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
10
|
+
$queryRaw: (...args: any[]) => Promise<any>;
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
@ApiTags('Health')
|
|
14
|
+
@Controller('health')
|
|
15
|
+
export class PluginHealthController {
|
|
16
|
+
constructor(@Inject(PLUGIN_HEALTH_DB) private readonly db: PluginHealthDb) {}
|
|
17
|
+
|
|
18
|
+
@Get()
|
|
19
|
+
@ApiOperation({ summary: 'Health check' })
|
|
20
|
+
check() {
|
|
21
|
+
return { status: 'ok' };
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
@Get('live')
|
|
25
|
+
@ApiOperation({ summary: 'Liveness probe' })
|
|
26
|
+
live() {
|
|
27
|
+
return { status: 'ok' };
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
@Get('ready')
|
|
31
|
+
@ApiOperation({ summary: 'Readiness probe — checks database connectivity' })
|
|
32
|
+
async ready() {
|
|
33
|
+
await this.db.$queryRaw`SELECT 1`;
|
|
34
|
+
return { status: 'ok', db: 'connected' };
|
|
35
|
+
}
|
|
36
|
+
}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { Module, type DynamicModule, type Type } from '@nestjs/common';
|
|
2
|
+
|
|
3
|
+
import {
|
|
4
|
+
PLUGIN_HEALTH_DB,
|
|
5
|
+
PluginHealthController,
|
|
6
|
+
type PluginHealthDb,
|
|
7
|
+
} from './health.controller.js';
|
|
8
|
+
|
|
9
|
+
@Module({})
|
|
10
|
+
export class BiomeHealthModule {
|
|
11
|
+
/**
|
|
12
|
+
* Wire the health endpoints for a biome service. Pass the biome's
|
|
13
|
+
* own `PrismaService` class; it must already be registered in the DI
|
|
14
|
+
* container (e.g. via a `@Global()` `PrismaModule`).
|
|
15
|
+
*
|
|
16
|
+
* @example
|
|
17
|
+
* imports: [BiomeHealthModule.forPrisma(PrismaService)]
|
|
18
|
+
*/
|
|
19
|
+
static forPrisma(prismaClass: Type<PluginHealthDb>): DynamicModule {
|
|
20
|
+
return {
|
|
21
|
+
module: BiomeHealthModule,
|
|
22
|
+
providers: [
|
|
23
|
+
{ provide: PLUGIN_HEALTH_DB, useExisting: prismaClass },
|
|
24
|
+
PluginHealthController,
|
|
25
|
+
],
|
|
26
|
+
controllers: [PluginHealthController],
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import {
|
|
2
|
+
Module,
|
|
3
|
+
type DynamicModule,
|
|
4
|
+
type MiddlewareConsumer,
|
|
5
|
+
type NestModule,
|
|
6
|
+
} from '@nestjs/common';
|
|
7
|
+
import { APP_GUARD } from '@nestjs/core';
|
|
8
|
+
|
|
9
|
+
import {
|
|
10
|
+
BiomeApiRequestContextMiddleware,
|
|
11
|
+
BiomeApiScopeGuard,
|
|
12
|
+
} from './request-context.js';
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
* NestJS module preset for biome-shipped APIs. Drop into the biome's
|
|
16
|
+
* `AppModule`:
|
|
17
|
+
*
|
|
18
|
+
* @Module({
|
|
19
|
+
* imports: [BiomeApiModule.register()],
|
|
20
|
+
* controllers: [HelloController],
|
|
21
|
+
* })
|
|
22
|
+
* export class AppModule {}
|
|
23
|
+
*
|
|
24
|
+
* What it wires:
|
|
25
|
+
* - `BiomeApiRequestContextMiddleware` on every route — extracts the
|
|
26
|
+
* gateway-injected headers (`X-Org-Id`, `X-Project-Id`, …) and
|
|
27
|
+
* stamps `req[BIOME_REQUEST_CONTEXT]`.
|
|
28
|
+
* - `BiomeApiScopeGuard` as a global guard — enforces `@RequireScope`
|
|
29
|
+
* decorators. Unmarked routes pass through.
|
|
30
|
+
*
|
|
31
|
+
* Both are opt-in by handler decoration; the cost when unused is one
|
|
32
|
+
* `Reflect.getMetadata` per request.
|
|
33
|
+
*/
|
|
34
|
+
@Module({})
|
|
35
|
+
export class BiomeApiModule implements NestModule {
|
|
36
|
+
static register(): DynamicModule {
|
|
37
|
+
return {
|
|
38
|
+
module: BiomeApiModule,
|
|
39
|
+
providers: [
|
|
40
|
+
BiomeApiRequestContextMiddleware,
|
|
41
|
+
{ provide: APP_GUARD, useClass: BiomeApiScopeGuard },
|
|
42
|
+
],
|
|
43
|
+
exports: [BiomeApiRequestContextMiddleware],
|
|
44
|
+
global: true,
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
configure(consumer: MiddlewareConsumer): void {
|
|
49
|
+
consumer.apply(BiomeApiRequestContextMiddleware).forRoutes('*');
|
|
50
|
+
}
|
|
51
|
+
}
|
|
@@ -0,0 +1,166 @@
|
|
|
1
|
+
import {
|
|
2
|
+
CanActivate,
|
|
3
|
+
createParamDecorator,
|
|
4
|
+
ExecutionContext,
|
|
5
|
+
ForbiddenException,
|
|
6
|
+
Injectable,
|
|
7
|
+
type NestMiddleware,
|
|
8
|
+
type SetMetadata,
|
|
9
|
+
} from '@nestjs/common';
|
|
10
|
+
|
|
11
|
+
import {
|
|
12
|
+
BiomeApiContextError,
|
|
13
|
+
BiomeApiScope,
|
|
14
|
+
requireRequestContext,
|
|
15
|
+
type BiomeApiRequestContext,
|
|
16
|
+
} from '../index.js';
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* NestJS-side glue for biome APIs. Biome authors using NestJS
|
|
20
|
+
* register `BiomeApiRequestContextMiddleware` once, then read the
|
|
21
|
+
* stamped context via `@BiomeRequestContext()` on any handler param.
|
|
22
|
+
*
|
|
23
|
+
* The framework-agnostic extractor (`requireRequestContext`) is the
|
|
24
|
+
* source of truth; this module just wraps it in NestJS shapes. Biomes
|
|
25
|
+
* that don't use NestJS keep using the bare extractor and never pay
|
|
26
|
+
* for this surface.
|
|
27
|
+
*
|
|
28
|
+
* Imported from `@xemahq/biome-api-sdk/nest` so the bare entrypoint
|
|
29
|
+
* stays framework-free.
|
|
30
|
+
*/
|
|
31
|
+
|
|
32
|
+
/**
|
|
33
|
+
* Symbol used as the request-property key for the stamped context.
|
|
34
|
+
* Symbol (vs string) avoids accidental collision with biome-shipped
|
|
35
|
+
* fields and prevents the value from leaking to JSON.stringify output.
|
|
36
|
+
*/
|
|
37
|
+
export const BIOME_REQUEST_CONTEXT = Symbol('biome-api.request-context');
|
|
38
|
+
|
|
39
|
+
interface RequestWithContext {
|
|
40
|
+
headers: Record<string, string | string[] | undefined>;
|
|
41
|
+
[BIOME_REQUEST_CONTEXT]?: BiomeApiRequestContext;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
/**
|
|
45
|
+
* Stamps the validated request context onto every request before
|
|
46
|
+
* handlers run. The middleware throws `BiomeApiContextError` when
|
|
47
|
+
* gateway-injected headers are missing — fail-fast so misconfigured
|
|
48
|
+
* deployments surface at the first request, not at obscure null-deref
|
|
49
|
+
* stack traces deep inside a handler.
|
|
50
|
+
*/
|
|
51
|
+
@Injectable()
|
|
52
|
+
export class BiomeApiRequestContextMiddleware implements NestMiddleware {
|
|
53
|
+
use(req: RequestWithContext, _res: unknown, next: (error?: unknown) => void): void {
|
|
54
|
+
try {
|
|
55
|
+
req[BIOME_REQUEST_CONTEXT] = requireRequestContext(req.headers);
|
|
56
|
+
next();
|
|
57
|
+
} catch (cause) {
|
|
58
|
+
if (cause instanceof BiomeApiContextError) {
|
|
59
|
+
next(cause);
|
|
60
|
+
return;
|
|
61
|
+
}
|
|
62
|
+
next(cause);
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
|
|
67
|
+
/**
|
|
68
|
+
* Param decorator that yields the stamped context. Usage:
|
|
69
|
+
*
|
|
70
|
+
* @Get('/hello')
|
|
71
|
+
* hello(@BiomeRequestContext() ctx: BiomeApiRequestContext) { ... }
|
|
72
|
+
*
|
|
73
|
+
* Throws at call time if the middleware didn't run — a deployment
|
|
74
|
+
* error, not user input, so the runtime error is the right surface.
|
|
75
|
+
*/
|
|
76
|
+
export const BiomeRequestContext = createParamDecorator(
|
|
77
|
+
(_data: unknown, ctx: ExecutionContext): BiomeApiRequestContext => {
|
|
78
|
+
const req = ctx.switchToHttp().getRequest<RequestWithContext>();
|
|
79
|
+
const stamped = req[BIOME_REQUEST_CONTEXT];
|
|
80
|
+
if (!stamped) {
|
|
81
|
+
throw new BiomeApiContextError(
|
|
82
|
+
'BiomeRequestContext was read but the middleware did not stamp one — ensure BiomeApiModule is registered before this controller mounts.',
|
|
83
|
+
);
|
|
84
|
+
}
|
|
85
|
+
return stamped;
|
|
86
|
+
},
|
|
87
|
+
);
|
|
88
|
+
|
|
89
|
+
/**
|
|
90
|
+
* Reflector metadata key for `@RequireScope`. Internal — biome
|
|
91
|
+
* authors use the decorator, the guard reads it.
|
|
92
|
+
*/
|
|
93
|
+
const BIOME_API_SCOPE_KEY = 'biome-api.required-scope';
|
|
94
|
+
|
|
95
|
+
/**
|
|
96
|
+
* Decorator that marks a route as requiring a specific scope tier.
|
|
97
|
+
* Pairs with `BiomeApiScopeGuard`: the guard reads the metadata,
|
|
98
|
+
* asserts the stamped context carries the matching scope fields
|
|
99
|
+
* (`projectId` for `Project`; `installationId` for `Installation`),
|
|
100
|
+
* and 403s otherwise.
|
|
101
|
+
*
|
|
102
|
+
* `BiomeApiScope.Public` is a no-op marker — useful in explicit
|
|
103
|
+
* route-by-route style ("yes, this endpoint is unauthenticated on
|
|
104
|
+
* purpose"). The guard recognises it and returns true.
|
|
105
|
+
*
|
|
106
|
+
* Implementation note: declared as a function returning the result
|
|
107
|
+
* of an inline NestJS `SetMetadata`-style decorator so we don't need
|
|
108
|
+
* to import SetMetadata at module-eval time (some NestJS versions
|
|
109
|
+
* expose it from different paths). Pull it from the @nestjs/common
|
|
110
|
+
* runtime if-and-only-if it exists; otherwise fall back to a manual
|
|
111
|
+
* `Reflect.defineMetadata` call.
|
|
112
|
+
*/
|
|
113
|
+
export function RequireScope(scope: BiomeApiScope): MethodDecorator {
|
|
114
|
+
return (_target: object, _propertyKey: string | symbol, descriptor: PropertyDescriptor) => {
|
|
115
|
+
Reflect.defineMetadata(BIOME_API_SCOPE_KEY, scope, descriptor.value);
|
|
116
|
+
return descriptor;
|
|
117
|
+
};
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
/**
|
|
121
|
+
* Guard that enforces the scope declared by `@RequireScope`. Reads
|
|
122
|
+
* the route's metadata, narrows on the stamped context. Returns
|
|
123
|
+
* `true` for any unmarked route (sane default — opt in to enforcement).
|
|
124
|
+
*
|
|
125
|
+
* Failure modes:
|
|
126
|
+
* - context missing → 403 with a clear message (middleware skipped)
|
|
127
|
+
* - scope is `Org` but ctx.projectId is set: still allowed (Org-scoped
|
|
128
|
+
* endpoints are valid in any project's request context). The narrower
|
|
129
|
+
* scopes are the strict cases.
|
|
130
|
+
* - scope is `Project` but ctx.projectId missing → 403
|
|
131
|
+
* - scope is `Installation` but ctx.installationId missing → 403
|
|
132
|
+
*/
|
|
133
|
+
@Injectable()
|
|
134
|
+
export class BiomeApiScopeGuard implements CanActivate {
|
|
135
|
+
canActivate(ctx: ExecutionContext): boolean {
|
|
136
|
+
const required = Reflect.getMetadata(BIOME_API_SCOPE_KEY, ctx.getHandler()) as
|
|
137
|
+
| BiomeApiScope
|
|
138
|
+
| undefined;
|
|
139
|
+
if (required === undefined || required === BiomeApiScope.Public) {return true;}
|
|
140
|
+
const req = ctx.switchToHttp().getRequest<RequestWithContext>();
|
|
141
|
+
const stamped = req[BIOME_REQUEST_CONTEXT];
|
|
142
|
+
if (!stamped) {
|
|
143
|
+
throw new ForbiddenException(
|
|
144
|
+
'Biome API request is missing request context — gateway did not inject headers',
|
|
145
|
+
);
|
|
146
|
+
}
|
|
147
|
+
if (required === BiomeApiScope.Org) {return true;}
|
|
148
|
+
if (required === BiomeApiScope.Project && !stamped.projectId) {
|
|
149
|
+
throw new ForbiddenException(
|
|
150
|
+
'@RequireScope(Project) handler invoked without an X-Project-Id header',
|
|
151
|
+
);
|
|
152
|
+
}
|
|
153
|
+
if (required === BiomeApiScope.Installation && !stamped.installationId) {
|
|
154
|
+
throw new ForbiddenException(
|
|
155
|
+
'@RequireScope(Installation) handler invoked without an X-Installation-Id header',
|
|
156
|
+
);
|
|
157
|
+
}
|
|
158
|
+
return true;
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
|
|
162
|
+
/**
|
|
163
|
+
* Re-export for biome authors composing `@UseGuards`-style helpers.
|
|
164
|
+
* Avoids forcing them to import from two different paths.
|
|
165
|
+
*/
|
|
166
|
+
export type { SetMetadata };
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
// ═══════════════════════════════════════════════════════════════════════════
|
|
2
|
+
// `@xemahq/biome-builder`
|
|
3
|
+
//
|
|
4
|
+
// Authoring SDK for Xema biomes. Three responsibilities:
|
|
5
|
+
//
|
|
6
|
+
// 1. Zod schemas for each biome-content kind (one schema per YAML file
|
|
7
|
+
// shape). Same schemas are used by:
|
|
8
|
+
// - biome authors (typed builders, IDE hover, build-time validation)
|
|
9
|
+
// - server-side seeders (parse + validate at boot)
|
|
10
|
+
//
|
|
11
|
+
// 2. A filesystem walker that resolves a manifest's content-directory
|
|
12
|
+
// contributions to absolute file paths. Seeders use it to enumerate
|
|
13
|
+
// files; biome install functions use it indirectly via defineBiome.
|
|
14
|
+
//
|
|
15
|
+
// 3. `defineBiome` — the in-biome install entry point. Today it is a
|
|
16
|
+
// thin marker that wraps imperative install logic + provides typed
|
|
17
|
+
// builders. Later (when the kernel registries land), it absorbs the
|
|
18
|
+
// auto-install logic so a content-only biome needs zero TS code.
|
|
19
|
+
// ═══════════════════════════════════════════════════════════════════════════
|
|
20
|
+
|
|
21
|
+
export * from './lib/contribution-schemas';
|
|
22
|
+
export * from './lib/content-walker';
|
|
23
|
+
export * from './lib/extends-precedence';
|
|
24
|
+
export * from './lib/workflow-phase-config-loader';
|
|
25
|
+
export * from './lib/define-biome';
|
|
26
|
+
export * from './lib/define-helpers';
|