@evolith/core-domain 1.0.0 → 1.0.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/dist/domain/services/default-workflow-definition.js +1 -1
- package/dist/domain/services/default-workflow-definition.js.map +1 -1
- package/package.json +2 -1
- package/rulesets/README.es.md +170 -0
- package/rulesets/README.md +170 -0
- package/rulesets/acl/README.es.md +41 -0
- package/rulesets/acl/README.md +41 -0
- package/rulesets/acl/anti-corruption-layer.rules.es.json +99 -0
- package/rulesets/acl/anti-corruption-layer.rules.json +99 -0
- package/rulesets/adr/ADR_COVERAGE.es.md +133 -0
- package/rulesets/adr/ADR_COVERAGE.md +133 -0
- package/rulesets/adr/README.es.md +17 -0
- package/rulesets/adr/README.md +17 -0
- package/rulesets/adr/adr-0002-hexagonal-architecture.rules.json +103 -0
- package/rulesets/adr/adr-0005-cicd-quality-gates.rules.json +102 -0
- package/rulesets/adr/adr-0010-multi-tenancy.rules.json +129 -0
- package/rulesets/adr/adr-0018-testing-pyramid.rules.json +115 -0
- package/rulesets/adr/adr-0032-protocol-selection.rules.json +134 -0
- package/rulesets/adr/adr-0040-multi-runtime.rules.json +131 -0
- package/rulesets/adr/adr-0050-gitflow-branching.rules.json +176 -0
- package/rulesets/adr/generated/adr-0001-monorepo-orchestration-principle.rules.json +29 -0
- package/rulesets/adr/generated/adr-0006-microservices-transition-via-sidecar-pattern.rules.json +29 -0
- package/rulesets/adr/generated/adr-0009-strict-dependency-pinning-and-automated-vulnerability-manage.rules.json +29 -0
- package/rulesets/adr/generated/adr-0011-fault-tolerance-and-resiliency-patterns.rules.json +29 -0
- package/rulesets/adr/generated/adr-0013-cloud-infrastructure-topology-and-disaster-recovery-dr.rules.json +28 -0
- package/rulesets/adr/generated/adr-0014-multi-layer-distributed-caching-strategy.rules.json +29 -0
- package/rulesets/adr/generated/adr-0015-event-driven-architecture-eda-for-intra-domain-communication.rules.json +29 -0
- package/rulesets/adr/generated/adr-0016-immutable-business-audit-trail-and-change-tracking.rules.json +29 -0
- package/rulesets/adr/generated/adr-0017-feature-flagging-strategy-for-progressive-delivery.rules.json +28 -0
- package/rulesets/adr/generated/adr-0019-tactical-design-patterns-for-future-proofing.rules.json +29 -0
- package/rulesets/adr/generated/adr-0020-identity-provider-abstraction-strategy.rules.json +28 -0
- package/rulesets/adr/generated/adr-0024-centralized-configuration-feature-platform.rules.json +28 -0
- package/rulesets/adr/generated/adr-0025-feature-flag-provider-abstraction-strategy.rules.json +29 -0
- package/rulesets/adr/generated/adr-0028-self-hosted-open-source-hybrid-infrastructure.rules.json +29 -0
- package/rulesets/adr/generated/adr-0030-two-tier-distributed-gateway-model.rules.json +28 -0
- package/rulesets/adr/generated/adr-0031-schema-per-bounded-context-and-domain-event-catalog.rules.json +29 -0
- package/rulesets/adr/generated/adr-0033-transactional-outbox-pattern-for-async-messaging.rules.json +28 -0
- package/rulesets/adr/generated/adr-0034-cqrs-pattern-application-matrix.rules.json +29 -0
- package/rulesets/adr/generated/adr-0035-distributed-saga-pattern-implementation-strategy.rules.json +29 -0
- package/rulesets/adr/generated/adr-0036-message-bus-delivery-flow-control-strategy.rules.json +29 -0
- package/rulesets/adr/generated/adr-0037-enterprise-performance-concurrency-chaos-verification-strate.rules.json +28 -0
- package/rulesets/adr/generated/adr-0039-deployment-topology-abstraction-environment-switcher.rules.json +29 -0
- package/rulesets/adr/generated/adr-0041-dual-engine-policy-evaluation-native-opa.rules.json +28 -0
- package/rulesets/adr/generated/adr-0044-configurable-security-persistence-strategy-agnosticism-vs-na.rules.json +29 -0
- package/rulesets/adr/generated/adr-0045-microservice-extraction-readiness-criteria.rules.json +29 -0
- package/rulesets/adr/generated/adr-0046-unified-traceability-via-w3c-tracecontext.rules.json +29 -0
- package/rulesets/adr/generated/adr-0047-progressive-architecture-evolution-framework-modular-monolit.rules.json +29 -0
- package/rulesets/adr/generated/adr-0048-enterprise-taxonomy-standardization-and-reference-layout.rules.json +28 -0
- package/rulesets/adr/generated/adr-0049-naming-semantics-clean-code-policy-e2e-and-global.rules.json +29 -0
- package/rulesets/adr/generated/adr-0051-enterprise-database-engine-selection-strategy.rules.json +29 -0
- package/rulesets/adr/generated/adr-0052-unit-testing-isolation-strategy-mocks-vs-stubs.rules.json +29 -0
- package/rulesets/adr/generated/adr-0053-integration-and-e2e-testing-strategy.rules.json +29 -0
- package/rulesets/adr/generated/adr-0054-database-design-and-normalization-standards.rules.json +29 -0
- package/rulesets/adr/generated/adr-0055-microfrontends-architecture-strategy.rules.json +28 -0
- package/rulesets/adr/generated/adr-0056-enterprise-naming-design-conventions-multi-language-multi-pl.rules.json +29 -0
- package/rulesets/adr/generated/adr-0057-architecture-intelligence-catalog.rules.json +27 -0
- package/rulesets/adr/generated/adr-0058-ai-consumable-architecture-knowledge.rules.json +27 -0
- package/rulesets/adr/generated/adr-0067-modular-monolith-persistence-boundaries.rules.json +28 -0
- package/rulesets/adr/generated/adr-0068-documentation-release-gitflow.rules.json +29 -0
- package/rulesets/adr/generated/adr-0069-ai-agent-context-protocol-integration.rules.json +28 -0
- package/rulesets/adr/generated/adr-0070-lean-root-repository-taxonomy.rules.json +29 -0
- package/rulesets/adr/generated/adr-0071-domain-layer-base-class-and-inheritance-strategy.rules.json +29 -0
- package/rulesets/adr/generated/adr-0072-utc-date-storage-browser-timezone-detection-and-language-res.rules.json +29 -0
- package/rulesets/adr/generated/adr-0073-unified-cli-mcp-output-contract-and-gate-evidence-schema.rules.json +29 -0
- package/rulesets/adr/generated/adr-0074-evolith-core-api-native-exposure-layer.rules.json +29 -0
- package/rulesets/adr/generated/adr-0075-core-api-authentication-strategy.rules.json +28 -0
- package/rulesets/adr/generated/adr-0076-domain-oriented-microservice-architecture-doma.rules.json +28 -0
- package/rulesets/adr/generated/adr-0077-masstransit-v9-commercial-pivot-stay-on-v8-monitor-opentrans.rules.json +28 -0
- package/rulesets/adr/generated/adr-0078-domain-financial-separation-governance.rules.json +29 -0
- package/rulesets/adr/generated/adr-0079-multi-topology-reference-corpus-and-topology-manifest-contra.rules.json +29 -0
- package/rulesets/adr/generated/adr-0080-remote-repository-reference-contract.rules.json +29 -0
- package/rulesets/adr/generated/adr-0081-agentic-ai-sandbox-isolation-boundary.rules.json +29 -0
- package/rulesets/adr/generated/adr-0082-agentic-ai-prompt-context-and-tool-trust-boundary.rules.json +28 -0
- package/rulesets/adr/generated/adr-0083-agentic-ai-action-authorization-and-audit.rules.json +29 -0
- package/rulesets/adr/generated/adr-0084-data-mesh-and-data-as-a-product.rules.json +29 -0
- package/rulesets/adr/generated/adr-0085-agnostic-opa-wasm-distribution-architecture.rules.json +28 -0
- package/rulesets/adr/generated/adr-0086-agentic-ai-telemetry-cost-control-standard.rules.json +27 -0
- package/rulesets/adr/generated/adr-0087-attribute-based-access-control-abac-for-agentic-tool-executi.rules.json +29 -0
- package/rulesets/adr/generated/adr-0088-sovereign-identity-for-agentic-ai.rules.json +29 -0
- package/rulesets/adr/generated/adr-0089-event-driven-agentic-workflow-pattern.rules.json +28 -0
- package/rulesets/adr/generated/adr-0090-rag-knowledge-governance-standard.rules.json +29 -0
- package/rulesets/adr/generated/adr-0091-workload-identity-token-rotation-standard.rules.json +29 -0
- package/rulesets/adr/generated/adr-0092-agent-infinite-loop-prevention-and-circuit-breaker-rules.rules.json +29 -0
- package/rulesets/adr/generated/adr-0093-concurrency-control-and-resource-locking-standard-for-mcp-to.rules.json +29 -0
- package/rulesets/adr/generated/adr-0094-multi-agent-handoff-and-task-delegation-standards.rules.json +29 -0
- package/rulesets/adr/generated/adr-0095-serverless-architecture-governance.rules.json +29 -0
- package/rulesets/adr/generated/adr-0096-edge-computing-architecture-governance.rules.json +29 -0
- package/rulesets/adr/generated/adr-0097-knowledge-lifecycle-governance-standard.rules.json +29 -0
- package/rulesets/adr/generated/adr-0098-rest-uri-versioning-and-deprecation-policy.rules.json +29 -0
- package/rulesets/adr/generated/adr-0099-opa-bundle-distribution-via-s3-minio.rules.json +27 -0
- package/rulesets/adr/generated/adr-ai-augmented-0001-harness-engineering-for-ai-augmented-development.rules.json +29 -0
- package/rulesets/adr/generated/adr-ai-augmented-0002-mcp-integration-protocol-for-agent-tool-invocation.rules.json +29 -0
- package/rulesets/adr/generated/adr-ai-augmented-0003-model-selection-governance-for-ai-augmented-workflows.rules.json +29 -0
- package/rulesets/adr/generated/adr-ai-augmented-0004-agents-md-as-mandatory-repository-artifact.rules.json +29 -0
- package/rulesets/adr/generated/adr-ai-augmented-0005-human-in-the-loop-policy-for-autonomous-agent-operations.rules.json +29 -0
- package/rulesets/adr/generated/adr-android-0042-canonical-android-native-mobile-architecture.rules.json +29 -0
- package/rulesets/adr/generated/adr-dotnet-0041-canonical-net-c-backend-architecture.rules.json +29 -0
- package/rulesets/adr/generated/adr-dotnet-0060-net-multi-tenancy-dual-layer-strategy-ef-core-sql-server.rules.json +29 -0
- package/rulesets/adr/generated/adr-dotnet-0061-transactional-event-lifecycle-in-ef-core.rules.json +28 -0
- package/rulesets/adr/generated/adr-dotnet-0062-net-immutable-audit-trail-via-ddl-triggers-delta-capture.rules.json +29 -0
- package/rulesets/adr/generated/adr-dotnet-0063-b2b-request-idempotency-middleware-in-asp-net-core.rules.json +28 -0
- package/rulesets/adr/generated/adr-dotnet-0064-net-request-scope-observability-context-propagation.rules.json +29 -0
- package/rulesets/adr/generated/adr-dotnet-0065-net-pii-safe-structured-logging-pipeline-serilog.rules.json +29 -0
- package/rulesets/adr/generated/adr-dotnet-0066-net-lightweight-http-idempotency-via-imemorycache-idistribut.rules.json +28 -0
- package/rulesets/adr/generated/adr-dotnet-0069-net-grpc-service-setup-protobuf-contracts.rules.json +29 -0
- package/rulesets/adr/generated/adr-dotnet-0070-net-api-endpoint-strategy.rules.json +29 -0
- package/rulesets/adr/generated/adr-dotnet-0071-net-data-access-strategy-ef-core-as-default-orm-dapper-for-o.rules.json +27 -0
- package/rulesets/adr/generated/adr-dotnet-0072-net-aop-cross-cutting-concern-strategy-dispatchproxy-over-pi.rules.json +29 -0
- package/rulesets/adr/generated/adr-nodejs-0003-strict-typescript-standards.rules.json +29 -0
- package/rulesets/adr/generated/adr-nodejs-0004-frontend-offline-resilience.rules.json +28 -0
- package/rulesets/adr/generated/adr-nodejs-0007-observability-with-opentelemetry-loki-and-jaeger.rules.json +29 -0
- package/rulesets/adr/generated/adr-nodejs-0008-progressive-multi-module-evolution-with-api-gateway-and-bff-.rules.json +28 -0
- package/rulesets/adr/generated/adr-nodejs-0012-advanced-authorization-rbac-abac-strategy.rules.json +28 -0
- package/rulesets/adr/generated/adr-nodejs-0021-high-performance-authentication-graph-compilation.rules.json +28 -0
- package/rulesets/adr/generated/adr-nodejs-0022-contextual-authentication-and-pluggable-output-projections.rules.json +28 -0
- package/rulesets/adr/generated/adr-nodejs-0023-centralized-authorization-core-strategy.rules.json +28 -0
- package/rulesets/adr/generated/adr-nodejs-0026-adaptive-mfa-and-passwordless-platform.rules.json +28 -0
- package/rulesets/adr/generated/adr-nodejs-0027-dual-protocol-api-strategy-rest-grpc.rules.json +28 -0
- package/rulesets/adr/generated/adr-nodejs-0029-adoption-of-tactical-ddd-primitives-library.rules.json +29 -0
- package/rulesets/adr/generated/adr-nodejs-0038-enterprise-error-handling-result-pattern-strategy.rules.json +29 -0
- package/rulesets/adr/generated/adr-nodejs-0043-data-access-and-orm-strategy-for-node-js.rules.json +29 -0
- package/rulesets/adr/generated/adr-nodejs-0044-frontend-clean-architecture-layer-boundaries-react.rules.json +29 -0
- package/rulesets/adr/generated/adr-nodejs-0045-frontend-state-management-zustand-tanstack-query-dual-strate.rules.json +29 -0
- package/rulesets/adr/generated/adr-nodejs-0046-prohibition-of-raw-technical-identifiers-in-user-interfaces.rules.json +29 -0
- package/rulesets/adr/generated/adr-nodejs-0047-actionable-user-error-contract-and-correlated-diagnostics.rules.json +29 -0
- package/rulesets/adr/generated/adr-nodejs-0048-feature-flag-system-scope-and-structured-criteria-model.rules.json +29 -0
- package/rulesets/adr/generated/adr-nodejs-0074-monorepo-orchestration-with-nx.rules.json +29 -0
- package/rulesets/adr/generated/adr-nodejs-0075-application-gateway-bff-with-nestjs.rules.json +29 -0
- package/rulesets/architecture/README.es.md +21 -0
- package/rulesets/architecture/README.md +21 -0
- package/rulesets/architecture/opa/progressive-axis.rego +50 -0
- package/rulesets/cli/README.es.md +17 -0
- package/rulesets/cli/README.md +17 -0
- package/rulesets/cli/core-parity.rules.json +61 -0
- package/rulesets/cli/release-readiness.rules.json +77 -0
- package/rulesets/compliance-baseline/README.es.md +26 -0
- package/rulesets/compliance-baseline/README.md +26 -0
- package/rulesets/compliance-baseline/compliance-baseline.rules.json +81 -0
- package/rulesets/contracts/README.es.md +19 -0
- package/rulesets/contracts/README.md +19 -0
- package/rulesets/contracts/evolith-machine-contracts.json +29 -0
- package/rulesets/contracts/fixtures/gate-evidence.success.json +10 -0
- package/rulesets/contracts/fixtures/output-envelope.success.json +23 -0
- package/rulesets/cross-cutting/README.es.md +14 -0
- package/rulesets/cross-cutting/README.md +14 -0
- package/rulesets/cross-cutting/compliance-baseline.rules.json +81 -0
- package/rulesets/cross-cutting/definition-of-done.rules.json +135 -0
- package/rulesets/cross-cutting/engineering-manifesto.rules.json +145 -0
- package/rulesets/cross-cutting/repository-taxonomy.rules.json +172 -0
- package/rulesets/definition-of-done/README.es.md +26 -0
- package/rulesets/definition-of-done/README.md +26 -0
- package/rulesets/definition-of-done/definition-of-done.rules.json +135 -0
- package/rulesets/engineering-manifesto/README.es.md +26 -0
- package/rulesets/engineering-manifesto/README.md +26 -0
- package/rulesets/engineering-manifesto/engineering-manifesto.rules.json +145 -0
- package/rulesets/evidence/README.es.md +12 -0
- package/rulesets/evidence/README.md +12 -0
- package/rulesets/evidence/evidence-manifest.rules.json +48 -0
- package/rulesets/executive-scorecards/executive-scorecards.rules.es.json +213 -0
- package/rulesets/executive-scorecards/executive-scorecards.rules.json +213 -0
- package/rulesets/governance/README.es.md +13 -0
- package/rulesets/governance/README.md +13 -0
- package/rulesets/governance/abac-mcp-access.rules.es.json +41 -0
- package/rulesets/governance/abac-mcp-access.rules.json +41 -0
- package/rulesets/governance/executive-scorecards.rules.es.json +213 -0
- package/rulesets/governance/executive-scorecards.rules.json +213 -0
- package/rulesets/governance/inheritance.rules.json +115 -0
- package/rulesets/governance/knowledge-intake.rules.json +18 -0
- package/rulesets/governance/open-core-boundary.rules.es.json +148 -0
- package/rulesets/governance/open-core-boundary.rules.json +148 -0
- package/rulesets/governance/satellite-contracts.rules.json +183 -0
- package/rulesets/infrastructure/helm-enforcement.rules.json +21 -0
- package/rulesets/infrastructure/opa/helm-enforcement.rego +25 -0
- package/rulesets/infrastructure/opa/helm-enforcement.test.rego +31 -0
- package/rulesets/infrastructure/opa/opa-sidecar-bundle.rego +115 -0
- package/rulesets/infrastructure/opa/opa-sidecar-bundle.test.rego +66 -0
- package/rulesets/infrastructure/opa-sidecar-bundle.rules.json +18 -0
- package/rulesets/mcp/README.es.md +12 -0
- package/rulesets/mcp/README.md +12 -0
- package/rulesets/mcp/protocol-compliance.rules.json +57 -0
- package/rulesets/observability/README.es.md +12 -0
- package/rulesets/observability/README.md +12 -0
- package/rulesets/observability/telemetry-evidence.rules.json +48 -0
- package/rulesets/opa/README.es.md +22 -0
- package/rulesets/opa/README.md +22 -0
- package/rulesets/opa/abac-mcp-tool-access.rego +122 -0
- package/rulesets/opa/abac-mcp-tool-access.test.rego +33 -0
- package/rulesets/opa/anti-corruption-layer.rego +39 -0
- package/rulesets/opa/anti-corruption-layer.test.rego +118 -0
- package/rulesets/opa/ci-cd.rego +41 -0
- package/rulesets/opa/ci-cd.test.rego +23 -0
- package/rulesets/opa/cicd-quality-gates.rego +29 -0
- package/rulesets/opa/cicd-quality-gates.test.rego +54 -0
- package/rulesets/opa/cli-core-parity.rego +17 -0
- package/rulesets/opa/cli-core-parity.test.rego +39 -0
- package/rulesets/opa/cli-readiness.rego +32 -0
- package/rulesets/opa/cli-readiness.test.rego +23 -0
- package/rulesets/opa/cli-release-readiness.rego +21 -0
- package/rulesets/opa/cli-release-readiness.test.rego +46 -0
- package/rulesets/opa/compliance-baseline.rego +95 -0
- package/rulesets/opa/compliance-baseline.test.rego +89 -0
- package/rulesets/opa/dod.rego +42 -0
- package/rulesets/opa/dod.test.rego +250 -0
- package/rulesets/opa/engineering-manifesto.rego +78 -0
- package/rulesets/opa/engineering-manifesto.test.rego +133 -0
- package/rulesets/opa/evidence.rego +64 -0
- package/rulesets/opa/evidence.test.rego +23 -0
- package/rulesets/opa/executive-scorecards.rego +41 -0
- package/rulesets/opa/executive-scorecards.test.rego +60 -0
- package/rulesets/opa/gitflow-branching.rego +41 -0
- package/rulesets/opa/gitflow-branching.test.rego +60 -0
- package/rulesets/opa/governance.rego +39 -0
- package/rulesets/opa/governance.test.rego +23 -0
- package/rulesets/opa/hexagonal-architecture.rego +33 -0
- package/rulesets/opa/hexagonal-architecture.test.rego +57 -0
- package/rulesets/opa/infrastructure/helm-enforcement.rego +33 -0
- package/rulesets/opa/infrastructure/opa-sidecar-bundle.rego +42 -0
- package/rulesets/opa/knowledge-intake.rego +98 -0
- package/rulesets/opa/knowledge-intake.test.rego +50 -0
- package/rulesets/opa/main.rego +147 -0
- package/rulesets/opa/main_test.rego +149 -0
- package/rulesets/opa/mcp.rego +61 -0
- package/rulesets/opa/mcp.test.rego +27 -0
- package/rulesets/opa/multi-runtime.rego +33 -0
- package/rulesets/opa/multi-runtime.test.rego +53 -0
- package/rulesets/opa/multi-tenancy.rego +33 -0
- package/rulesets/opa/multi-tenancy.test.rego +53 -0
- package/rulesets/opa/open-core-boundary.rego +33 -0
- package/rulesets/opa/open-core-boundary.test.rego +60 -0
- package/rulesets/opa/protocol-selection.rego +29 -0
- package/rulesets/opa/protocol-selection.test.rego +46 -0
- package/rulesets/opa/rbac/gate-role-enforcement.rego +112 -0
- package/rulesets/opa/repository-taxonomy.rego +98 -0
- package/rulesets/opa/repository-taxonomy.test.rego +91 -0
- package/rulesets/opa/satellite-contracts.rego +42 -0
- package/rulesets/opa/satellite-contracts.test.rego +70 -0
- package/rulesets/opa/schemas/abac-mcp-tool-access.input.schema.json +21 -0
- package/rulesets/opa/schemas/anti-corruption-layer.input.schema.json +25 -0
- package/rulesets/opa/schemas/ci-cd.input.schema.json +27 -0
- package/rulesets/opa/schemas/cicd-quality-gates.input.schema.json +33 -0
- package/rulesets/opa/schemas/cli-core-parity.input.schema.json +30 -0
- package/rulesets/opa/schemas/cli-readiness.input.schema.json +28 -0
- package/rulesets/opa/schemas/cli-release-readiness.input.schema.json +26 -0
- package/rulesets/opa/schemas/compliance-baseline.input.schema.json +25 -0
- package/rulesets/opa/schemas/dod.input.schema.json +38 -0
- package/rulesets/opa/schemas/engineering-manifesto.input.schema.json +24 -0
- package/rulesets/opa/schemas/evidence.input.schema.json +35 -0
- package/rulesets/opa/schemas/executive-scorecards.input.schema.json +36 -0
- package/rulesets/opa/schemas/gitflow-branching.input.schema.json +36 -0
- package/rulesets/opa/schemas/governance.input.schema.json +19 -0
- package/rulesets/opa/schemas/hexagonal-architecture.input.schema.json +46 -0
- package/rulesets/opa/schemas/knowledge-intake.input.schema.json +57 -0
- package/rulesets/opa/schemas/mcp.input.schema.json +38 -0
- package/rulesets/opa/schemas/multi-runtime.input.schema.json +27 -0
- package/rulesets/opa/schemas/multi-tenancy.input.schema.json +27 -0
- package/rulesets/opa/schemas/open-core-boundary.input.schema.json +36 -0
- package/rulesets/opa/schemas/protocol-selection.input.schema.json +26 -0
- package/rulesets/opa/schemas/repository-taxonomy.input.schema.json +18 -0
- package/rulesets/opa/schemas/satellite-contracts.input.schema.json +38 -0
- package/rulesets/opa/schemas/taxonomy.input.schema.json +27 -0
- package/rulesets/opa/schemas/testing-pyramid.input.schema.json +42 -0
- package/rulesets/opa/schemas/version-pinning.input.schema.json +39 -0
- package/rulesets/opa/sdlc/coverage.rego +49 -0
- package/rulesets/opa/sdlc/coverage.test.rego +29 -0
- package/rulesets/opa/sdlc/pyramid-distribution.rego +31 -0
- package/rulesets/opa/sdlc/pyramid-distribution.test.rego +33 -0
- package/rulesets/opa/taxonomy.rego +51 -0
- package/rulesets/opa/taxonomy.test.rego +28 -0
- package/rulesets/opa/telemetry-evidence.rego +102 -0
- package/rulesets/opa/testing-pyramid.rego +49 -0
- package/rulesets/opa/testing-pyramid.test.rego +81 -0
- package/rulesets/opa/version-pinning.rego +99 -0
- package/rulesets/opa/version-pinning.test.rego +28 -0
- package/rulesets/phase-gates/README.es.md +28 -0
- package/rulesets/phase-gates/README.md +28 -0
- package/rulesets/phase-gates/phase-gates.rules.json +297 -0
- package/rulesets/quality-thresholds/README.es.md +28 -0
- package/rulesets/quality-thresholds/README.md +28 -0
- package/rulesets/quality-thresholds/quality-thresholds.rules.json +96 -0
- package/rulesets/repository-taxonomy/README.es.md +26 -0
- package/rulesets/repository-taxonomy/README.md +26 -0
- package/rulesets/repository-taxonomy/repository-taxonomy.rules.json +172 -0
- package/rulesets/satellite-contracts/README.es.md +27 -0
- package/rulesets/satellite-contracts/README.md +27 -0
- package/rulesets/satellite-contracts/satellite-contracts.rules.json +183 -0
- package/rulesets/schema/README.es.md +39 -0
- package/rulesets/schema/README.md +39 -0
- package/rulesets/schema/adr.schema.json +138 -0
- package/rulesets/schema/agile-backlog.schema.json +91 -0
- package/rulesets/schema/ballpark-estimation.schema.json +109 -0
- package/rulesets/schema/build-vs-compose.schema.json +98 -0
- package/rulesets/schema/cli-impact-analysis.schema.json +114 -0
- package/rulesets/schema/discovery-canvas.schema.json +92 -0
- package/rulesets/schema/evolith-user-story.schema.json +105 -0
- package/rulesets/schema/evolith-yaml.schema.json +191 -0
- package/rulesets/schema/functional-story.schema.json +111 -0
- package/rulesets/schema/gate-evidence.schema.json +85 -0
- package/rulesets/schema/integration-evidence.schema.json +47 -0
- package/rulesets/schema/knowledge-intake.schema.json +67 -0
- package/rulesets/schema/knowledge-projection.schema.json +24 -0
- package/rulesets/schema/maturity-evidence.schema.json +59 -0
- package/rulesets/schema/observability-validation.schema.json +85 -0
- package/rulesets/schema/on-call-handoff.schema.json +91 -0
- package/rulesets/schema/output-envelope.schema.json +102 -0
- package/rulesets/schema/prd.schema.json +117 -0
- package/rulesets/schema/release-notes.schema.json +138 -0
- package/rulesets/schema/rollback-rehearsal.schema.json +73 -0
- package/rulesets/schema/ruleset-sdlc.schema.json +59 -0
- package/rulesets/schema/ruleset-standard.schema.json +73 -0
- package/rulesets/schema/security-scan-report.schema.json +79 -0
- package/rulesets/schema/source-registry.schema.json +51 -0
- package/rulesets/schema/technical-feasibility.schema.json +66 -0
- package/rulesets/schema/technical-story.schema.json +112 -0
- package/rulesets/schema/test-summary-report.schema.json +158 -0
- package/rulesets/schema/topology-composition.schema.json +43 -0
- package/rulesets/schema/topology-manifest.schema.json +421 -0
- package/rulesets/sdlc/README.es.md +12 -0
- package/rulesets/sdlc/README.md +12 -0
- package/rulesets/sdlc/default-workflow.yaml +73 -0
- package/rulesets/sdlc/dependency-pinning.rules.json +183 -0
- package/rulesets/sdlc/phase-gates.rules.json +297 -0
- package/rulesets/sdlc/quality-thresholds.rules.json +96 -0
- package/rulesets/topologies/README.es.md +42 -0
- package/rulesets/topologies/README.md +42 -0
- package/rulesets/topologies/agentic-ai/README.es.md +142 -0
- package/rulesets/topologies/agentic-ai/README.md +142 -0
- package/rulesets/topologies/agentic-ai/adoption.es.md +37 -0
- package/rulesets/topologies/agentic-ai/adoption.md +37 -0
- package/rulesets/topologies/agentic-ai/agent.config.schema.json +100 -0
- package/rulesets/topologies/agentic-ai/agentic-ai.rego +46 -0
- package/rulesets/topologies/agentic-ai/agentic-ai.rules.json +109 -0
- package/rulesets/topologies/agentic-ai/agentic-ai.test.rego +68 -0
- package/rulesets/topologies/agentic-ai/agentic-ai.wasm +0 -0
- package/rulesets/topologies/agentic-ai/cli/cli-flows.es.md +35 -0
- package/rulesets/topologies/agentic-ai/cli/cli-flows.md +45 -0
- package/rulesets/topologies/agentic-ai/evidence.es.md +25 -0
- package/rulesets/topologies/agentic-ai/evidence.md +25 -0
- package/rulesets/topologies/agentic-ai/evolution.es.md +26 -0
- package/rulesets/topologies/agentic-ai/evolution.md +26 -0
- package/rulesets/topologies/agentic-ai/fixtures/invalid-agent.config.json +48 -0
- package/rulesets/topologies/agentic-ai/fixtures/valid-agent.config.json +48 -0
- package/rulesets/topologies/agentic-ai/maturity.es.md +33 -0
- package/rulesets/topologies/agentic-ai/maturity.md +33 -0
- package/rulesets/topologies/agentic-ai/mcp/mcp-manifest.json +100 -0
- package/rulesets/topologies/agentic-ai/openapi/openapi.yaml +187 -0
- package/rulesets/topologies/agentic-ai/operations.es.md +32 -0
- package/rulesets/topologies/agentic-ai/operations.md +32 -0
- package/rulesets/topologies/agentic-ai/parity-fixtures/compliant.json +18 -0
- package/rulesets/topologies/agentic-ai/parity-fixtures/violation.json +22 -0
- package/rulesets/topologies/agentic-ai/patterns.es.md +32 -0
- package/rulesets/topologies/agentic-ai/patterns.md +32 -0
- package/rulesets/topologies/agentic-ai/resilience.es.md +26 -0
- package/rulesets/topologies/agentic-ai/resilience.md +26 -0
- package/rulesets/topologies/agentic-ai/runbooks.es.md +48 -0
- package/rulesets/topologies/agentic-ai/runbooks.md +48 -0
- package/rulesets/topologies/agentic-ai/security.es.md +26 -0
- package/rulesets/topologies/agentic-ai/security.md +26 -0
- package/rulesets/topologies/agentic-ai/topology.manifest.json +127 -0
- package/rulesets/topologies/data-mesh/README.es.md +69 -0
- package/rulesets/topologies/data-mesh/README.md +69 -0
- package/rulesets/topologies/data-mesh/adoption.es.md +95 -0
- package/rulesets/topologies/data-mesh/adoption.md +95 -0
- package/rulesets/topologies/data-mesh/cli/cli-flows.es.md +41 -0
- package/rulesets/topologies/data-mesh/cli/cli-flows.md +53 -0
- package/rulesets/topologies/data-mesh/data-mesh.rego +11 -0
- package/rulesets/topologies/data-mesh/data-mesh.rules.json +100 -0
- package/rulesets/topologies/data-mesh/data-mesh.test.rego +107 -0
- package/rulesets/topologies/data-mesh/data-mesh.wasm +0 -0
- package/rulesets/topologies/data-mesh/evidence.es.md +111 -0
- package/rulesets/topologies/data-mesh/evidence.md +111 -0
- package/rulesets/topologies/data-mesh/evolution.es.md +67 -0
- package/rulesets/topologies/data-mesh/evolution.md +67 -0
- package/rulesets/topologies/data-mesh/fixtures/invalid.topology.config.json +12 -0
- package/rulesets/topologies/data-mesh/fixtures/valid.topology.config.json +12 -0
- package/rulesets/topologies/data-mesh/maturity.es.md +36 -0
- package/rulesets/topologies/data-mesh/maturity.md +36 -0
- package/rulesets/topologies/data-mesh/mcp/mcp-manifest.json +68 -0
- package/rulesets/topologies/data-mesh/openapi/openapi.yaml +186 -0
- package/rulesets/topologies/data-mesh/operations.es.md +63 -0
- package/rulesets/topologies/data-mesh/operations.md +63 -0
- package/rulesets/topologies/data-mesh/parity-fixtures/compliant.json +18 -0
- package/rulesets/topologies/data-mesh/parity-fixtures/violation.json +21 -0
- package/rulesets/topologies/data-mesh/patterns.es.md +67 -0
- package/rulesets/topologies/data-mesh/patterns.md +67 -0
- package/rulesets/topologies/data-mesh/resilience.es.md +64 -0
- package/rulesets/topologies/data-mesh/resilience.md +64 -0
- package/rulesets/topologies/data-mesh/runbooks.es.md +147 -0
- package/rulesets/topologies/data-mesh/runbooks.md +147 -0
- package/rulesets/topologies/data-mesh/security.es.md +66 -0
- package/rulesets/topologies/data-mesh/security.md +66 -0
- package/rulesets/topologies/data-mesh/topology.config.schema.json +30 -0
- package/rulesets/topologies/data-mesh/topology.manifest.json +107 -0
- package/rulesets/topologies/edge-computing/README.es.md +81 -0
- package/rulesets/topologies/edge-computing/README.md +81 -0
- package/rulesets/topologies/edge-computing/adoption.es.md +268 -0
- package/rulesets/topologies/edge-computing/adoption.md +268 -0
- package/rulesets/topologies/edge-computing/cli/cli-flows.es.md +41 -0
- package/rulesets/topologies/edge-computing/cli/cli-flows.md +53 -0
- package/rulesets/topologies/edge-computing/edge-computing.rego +41 -0
- package/rulesets/topologies/edge-computing/edge-computing.rules.json +50 -0
- package/rulesets/topologies/edge-computing/edge-computing.test.rego +33 -0
- package/rulesets/topologies/edge-computing/edge-computing.wasm +0 -0
- package/rulesets/topologies/edge-computing/evidence.es.md +263 -0
- package/rulesets/topologies/edge-computing/evidence.md +263 -0
- package/rulesets/topologies/edge-computing/evolution.es.md +257 -0
- package/rulesets/topologies/edge-computing/evolution.md +257 -0
- package/rulesets/topologies/edge-computing/fixtures/invalid.topology.config.json +6 -0
- package/rulesets/topologies/edge-computing/fixtures/valid.topology.config.json +6 -0
- package/rulesets/topologies/edge-computing/maturity.es.md +36 -0
- package/rulesets/topologies/edge-computing/maturity.md +36 -0
- package/rulesets/topologies/edge-computing/mcp/mcp-manifest.json +72 -0
- package/rulesets/topologies/edge-computing/openapi/openapi.yaml +187 -0
- package/rulesets/topologies/edge-computing/operations.es.md +148 -0
- package/rulesets/topologies/edge-computing/operations.md +148 -0
- package/rulesets/topologies/edge-computing/parity-fixtures/compliant.json +12 -0
- package/rulesets/topologies/edge-computing/parity-fixtures/violation.json +13 -0
- package/rulesets/topologies/edge-computing/patterns.es.md +291 -0
- package/rulesets/topologies/edge-computing/patterns.md +290 -0
- package/rulesets/topologies/edge-computing/resilience.es.md +232 -0
- package/rulesets/topologies/edge-computing/resilience.md +229 -0
- package/rulesets/topologies/edge-computing/runbooks.es.md +405 -0
- package/rulesets/topologies/edge-computing/runbooks.md +405 -0
- package/rulesets/topologies/edge-computing/security.es.md +218 -0
- package/rulesets/topologies/edge-computing/security.md +218 -0
- package/rulesets/topologies/edge-computing/topology.config.schema.json +13 -0
- package/rulesets/topologies/edge-computing/topology.manifest.json +113 -0
- package/rulesets/topologies/event-driven/README.es.md +71 -0
- package/rulesets/topologies/event-driven/README.md +71 -0
- package/rulesets/topologies/event-driven/adoption.es.md +67 -0
- package/rulesets/topologies/event-driven/adoption.md +67 -0
- package/rulesets/topologies/event-driven/cli/cli-flows.es.md +41 -0
- package/rulesets/topologies/event-driven/cli/cli-flows.md +53 -0
- package/rulesets/topologies/event-driven/event-driven.rego +11 -0
- package/rulesets/topologies/event-driven/event-driven.rules.json +100 -0
- package/rulesets/topologies/event-driven/event-driven.test.rego +107 -0
- package/rulesets/topologies/event-driven/event-driven.wasm +0 -0
- package/rulesets/topologies/event-driven/evidence.es.md +69 -0
- package/rulesets/topologies/event-driven/evidence.md +69 -0
- package/rulesets/topologies/event-driven/evolution.es.md +59 -0
- package/rulesets/topologies/event-driven/evolution.md +59 -0
- package/rulesets/topologies/event-driven/fixtures/invalid.topology.config.json +12 -0
- package/rulesets/topologies/event-driven/fixtures/valid.topology.config.json +12 -0
- package/rulesets/topologies/event-driven/maturity.es.md +36 -0
- package/rulesets/topologies/event-driven/maturity.md +36 -0
- package/rulesets/topologies/event-driven/mcp/mcp-manifest.json +68 -0
- package/rulesets/topologies/event-driven/openapi/openapi.yaml +186 -0
- package/rulesets/topologies/event-driven/operations.es.md +67 -0
- package/rulesets/topologies/event-driven/operations.md +67 -0
- package/rulesets/topologies/event-driven/parity-fixtures/compliant.json +18 -0
- package/rulesets/topologies/event-driven/parity-fixtures/violation.json +21 -0
- package/rulesets/topologies/event-driven/patterns.es.md +68 -0
- package/rulesets/topologies/event-driven/patterns.md +68 -0
- package/rulesets/topologies/event-driven/resilience.es.md +65 -0
- package/rulesets/topologies/event-driven/resilience.md +65 -0
- package/rulesets/topologies/event-driven/runbooks.es.md +79 -0
- package/rulesets/topologies/event-driven/runbooks.md +79 -0
- package/rulesets/topologies/event-driven/security.es.md +59 -0
- package/rulesets/topologies/event-driven/security.md +59 -0
- package/rulesets/topologies/event-driven/topology.config.schema.json +30 -0
- package/rulesets/topologies/event-driven/topology.manifest.json +109 -0
- package/rulesets/topologies/progressive-axis/distributed-modules/distributed-modules.rules.es.json +111 -0
- package/rulesets/topologies/progressive-axis/distributed-modules/distributed-modules.rules.json +111 -0
- package/rulesets/topologies/progressive-axis/microservices/microservices.rules.es.json +106 -0
- package/rulesets/topologies/progressive-axis/microservices/microservices.rules.json +106 -0
- package/rulesets/topologies/progressive-axis/modular-monolith/modular-monolith.rules.es.json +148 -0
- package/rulesets/topologies/progressive-axis/modular-monolith/modular-monolith.rules.json +148 -0
- package/rulesets/topologies/serverless/README.es.md +74 -0
- package/rulesets/topologies/serverless/README.md +74 -0
- package/rulesets/topologies/serverless/adoption.es.md +50 -0
- package/rulesets/topologies/serverless/adoption.md +50 -0
- package/rulesets/topologies/serverless/cli/cli-flows.es.md +41 -0
- package/rulesets/topologies/serverless/cli/cli-flows.md +53 -0
- package/rulesets/topologies/serverless/evidence.es.md +66 -0
- package/rulesets/topologies/serverless/evidence.md +66 -0
- package/rulesets/topologies/serverless/evolution.es.md +36 -0
- package/rulesets/topologies/serverless/evolution.md +36 -0
- package/rulesets/topologies/serverless/fixtures/invalid.topology.config.json +6 -0
- package/rulesets/topologies/serverless/fixtures/valid.topology.config.json +6 -0
- package/rulesets/topologies/serverless/maturity.es.md +36 -0
- package/rulesets/topologies/serverless/maturity.md +36 -0
- package/rulesets/topologies/serverless/mcp/mcp-manifest.json +72 -0
- package/rulesets/topologies/serverless/openapi/openapi.yaml +186 -0
- package/rulesets/topologies/serverless/operations.es.md +36 -0
- package/rulesets/topologies/serverless/operations.md +36 -0
- package/rulesets/topologies/serverless/parity-fixtures/compliant.json +13 -0
- package/rulesets/topologies/serverless/parity-fixtures/violation.json +15 -0
- package/rulesets/topologies/serverless/patterns.es.md +36 -0
- package/rulesets/topologies/serverless/patterns.md +36 -0
- package/rulesets/topologies/serverless/resilience.es.md +36 -0
- package/rulesets/topologies/serverless/resilience.md +36 -0
- package/rulesets/topologies/serverless/runbooks.es.md +68 -0
- package/rulesets/topologies/serverless/runbooks.md +68 -0
- package/rulesets/topologies/serverless/security.es.md +36 -0
- package/rulesets/topologies/serverless/security.md +36 -0
- package/rulesets/topologies/serverless/serverless.rego +32 -0
- package/rulesets/topologies/serverless/serverless.rules.json +33 -0
- package/rulesets/topologies/serverless/serverless.test.rego +28 -0
- package/rulesets/topologies/serverless/serverless.wasm +0 -0
- package/rulesets/topologies/serverless/topology.config.schema.json +28 -0
- package/rulesets/topologies/serverless/topology.manifest.json +114 -0
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
package evolith.topologies.agentic_ai_test
|
|
2
|
+
|
|
3
|
+
import data.evolith.topologies.agentic_ai
|
|
4
|
+
|
|
5
|
+
compliant_input := {"satellite": {"agenticAi": {
|
|
6
|
+
"hasIdentity": true,
|
|
7
|
+
"hasIsolatedSandbox": true,
|
|
8
|
+
"hasSeparatedPromptAndImplementation": true,
|
|
9
|
+
"requiresApprovalForMutativeTools": true,
|
|
10
|
+
"hasEphemeralSandboxLimits": true,
|
|
11
|
+
"hasTrustedContextPolicy": true,
|
|
12
|
+
"hasAccountableActions": true,
|
|
13
|
+
"hasOperationalBudgets": true,
|
|
14
|
+
"hasCredentialLifecycle": true,
|
|
15
|
+
}}}
|
|
16
|
+
|
|
17
|
+
test_compliant_agent_has_no_violations {
|
|
18
|
+
violations := agentic_ai.violations with input as compliant_input
|
|
19
|
+
count(violations) == 0
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
test_missing_identity_is_rejected {
|
|
23
|
+
i := json.patch(compliant_input, [{"op": "replace", "path": "/satellite/agenticAi/hasIdentity", "value": false}])
|
|
24
|
+
violations := agentic_ai.violations with input as i
|
|
25
|
+
violations[_].id == "AAI-R01"
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
test_missing_operational_budgets_is_rejected {
|
|
29
|
+
i := json.patch(compliant_input, [{"op": "replace", "path": "/satellite/agenticAi/hasOperationalBudgets", "value": false}])
|
|
30
|
+
violations := agentic_ai.violations with input as i
|
|
31
|
+
violations[_].id == "AAI-R08"
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
test_missing_credential_lifecycle_is_rejected {
|
|
35
|
+
i := json.patch(compliant_input, [{"op": "replace", "path": "/satellite/agenticAi/hasCredentialLifecycle", "value": false}])
|
|
36
|
+
violations := agentic_ai.violations with input as i
|
|
37
|
+
violations[_].id == "AAI-R09"
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
test_missing_isolated_sandbox_is_rejected {
|
|
41
|
+
i := json.patch(compliant_input, [{"op": "replace", "path": "/satellite/agenticAi/hasIsolatedSandbox", "value": false}])
|
|
42
|
+
violations := agentic_ai.violations with input as i
|
|
43
|
+
violations[_].id == "AAI-R02"
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
test_missing_prompt_separation_is_rejected {
|
|
47
|
+
i := json.patch(compliant_input, [{"op": "replace", "path": "/satellite/agenticAi/hasSeparatedPromptAndImplementation", "value": false}])
|
|
48
|
+
violations := agentic_ai.violations with input as i
|
|
49
|
+
violations[_].id == "AAI-R03"
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
test_missing_mutative_approval_is_rejected {
|
|
53
|
+
i := json.patch(compliant_input, [{"op": "replace", "path": "/satellite/agenticAi/requiresApprovalForMutativeTools", "value": false}])
|
|
54
|
+
violations := agentic_ai.violations with input as i
|
|
55
|
+
violations[_].id == "AAI-R04"
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
test_missing_ephemeral_limits_is_rejected {
|
|
59
|
+
i := json.patch(compliant_input, [{"op": "replace", "path": "/satellite/agenticAi/hasEphemeralSandboxLimits", "value": false}])
|
|
60
|
+
violations := agentic_ai.violations with input as i
|
|
61
|
+
violations[_].id == "AAI-R05"
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
test_missing_trusted_context_policy_is_rejected {
|
|
65
|
+
i := json.patch(compliant_input, [{"op": "replace", "path": "/satellite/agenticAi/hasTrustedContextPolicy", "value": false}])
|
|
66
|
+
violations := agentic_ai.violations with input as i
|
|
67
|
+
violations[_].id == "AAI-R06"
|
|
68
|
+
}
|
|
Binary file
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
# Agentic AI — Flujos CLI
|
|
2
|
+
|
|
3
|
+
> **Navegación Bilingüe:** [English Version](./cli-flows.md)
|
|
4
|
+
|
|
5
|
+
**Validadores declarados:** `validate-topology`
|
|
6
|
+
|
|
7
|
+
## Validate
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
evolith validate --topology agentic-ai
|
|
11
|
+
evolith validate --topology agentic-ai --strict
|
|
12
|
+
evolith validate --topology agentic-ai --format json
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## Inspect
|
|
16
|
+
|
|
17
|
+
```bash
|
|
18
|
+
evolith topology inspect agentic-ai
|
|
19
|
+
evolith topology inspect agentic-ai --include-budgets
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
## Drift
|
|
23
|
+
|
|
24
|
+
```bash
|
|
25
|
+
evolith drift detect --topology agentic-ai
|
|
26
|
+
evolith drift detect --topology agentic-ai --format json
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
## Scaffold
|
|
30
|
+
|
|
31
|
+
```bash
|
|
32
|
+
evolith architecture scaffold --topology agentic-ai
|
|
33
|
+
evolith architecture scaffold --topology agentic-ai --dry-run
|
|
34
|
+
evolith architecture scaffold --topology agentic-ai --format json
|
|
35
|
+
```
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
# Agentic AI — CLI Flows
|
|
2
|
+
|
|
3
|
+
> **Bilingual Navigation:** [Versión en Español](./cli-flows.es.md)
|
|
4
|
+
|
|
5
|
+
**Validators declarados:** `validate-topology`
|
|
6
|
+
|
|
7
|
+
The following CLI commands are available for the Agentic AI topology.
|
|
8
|
+
|
|
9
|
+
## Validate
|
|
10
|
+
|
|
11
|
+
```bash
|
|
12
|
+
evolith validate --topology agentic-ai
|
|
13
|
+
evolith validate --topology agentic-ai --strict
|
|
14
|
+
evolith validate --topology agentic-ai --format json
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
Validates an Agentic AI configuration against the topology's native rules (`agentic-ai.rules.json`) and OPA Rego policies (`agentic-ai.rego`), checking agent isolation, trust boundaries, and action authorization.
|
|
18
|
+
|
|
19
|
+
## Inspect
|
|
20
|
+
|
|
21
|
+
```bash
|
|
22
|
+
evolith topology inspect agentic-ai
|
|
23
|
+
evolith topology inspect agentic-ai --include-budgets
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
Returns the parsed Agentic AI topology manifest, operational budgets (token, credential rotation, sandbox timeout), and corpus artifact references.
|
|
27
|
+
|
|
28
|
+
## Drift
|
|
29
|
+
|
|
30
|
+
```bash
|
|
31
|
+
evolith drift detect --topology agentic-ai
|
|
32
|
+
evolith drift detect --topology agentic-ai --format json
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
Detects configuration drift between the Agentic AI topology's declared ruleset and the current workspace state.
|
|
36
|
+
|
|
37
|
+
## Scaffold
|
|
38
|
+
|
|
39
|
+
```bash
|
|
40
|
+
evolith architecture scaffold --topology agentic-ai
|
|
41
|
+
evolith architecture scaffold --topology agentic-ai --dry-run
|
|
42
|
+
evolith architecture scaffold --topology agentic-ai --format json
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
Scaffolds an Agentic AI topology workspace with the canonical corpus structure, manifest, config schema, and OPA policies.
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# Evidencia de Validacion de IA Agentica
|
|
2
|
+
|
|
3
|
+
> **Navegacion bilingue:** [Version en ingles](./evidence.md)
|
|
4
|
+
|
|
5
|
+
## Comandos Reproducibles
|
|
6
|
+
|
|
7
|
+
Ejecuta estos comandos desde la raiz del repositorio:
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
node .harness/scripts/validate-topology-manifests.mjs
|
|
11
|
+
node .harness/scripts/ci/04-check-bilingual-parity.mjs
|
|
12
|
+
node .harness/scripts/ci/01-validate-docs.mjs
|
|
13
|
+
npm test -- --runInBand architecture-rule.handler.spec.ts
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
## Evidencia Esperada
|
|
17
|
+
|
|
18
|
+
El fixture valido satisface el contrato y AAI-R01 a AAI-R07. El fixture invalido es rechazado intencionalmente por el schema de configuracion y representa fallos bloqueantes de sandbox, confianza, autorizacion, auditoria y limites de recursos. Las pruebas del evaluador Native incluyen casos que pasan y bloqueantes; la politica Rego correspondiente debe producir la misma disposicion para la misma entrada normalizada.
|
|
19
|
+
|
|
20
|
+
## Limite de Evidencia
|
|
21
|
+
|
|
22
|
+
Este archivo documenta validacion reproducible de topologia. No es un registro de cierre GT ni reemplaza la evidencia canonica de gobernanza requerida antes de marcar un gap como terminado.
|
|
23
|
+
|
|
24
|
+
---
|
|
25
|
+
[Volver al Perfil de IA Agentica](./README.es.md)
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# Agentic AI Validation Evidence
|
|
2
|
+
|
|
3
|
+
> **Bilingual Navigation:** [Version en Espanol](./evidence.es.md)
|
|
4
|
+
|
|
5
|
+
## Reproducible Commands
|
|
6
|
+
|
|
7
|
+
Run these commands from the repository root:
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
node .harness/scripts/validate-topology-manifests.mjs
|
|
11
|
+
node .harness/scripts/ci/04-check-bilingual-parity.mjs
|
|
12
|
+
node .harness/scripts/ci/01-validate-docs.mjs
|
|
13
|
+
npm test -- --runInBand architecture-rule.handler.spec.ts
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
## Expected Evidence
|
|
17
|
+
|
|
18
|
+
The valid fixture satisfies the contract and AAI-R01 through AAI-R07. The invalid fixture is intentionally rejected by the configuration schema and represents blocking sandbox, trust, authorization, audit, and resource-limit failures. The Native evaluator tests include passing and blocking cases; the corresponding Rego policy must produce the same disposition for the same normalized input.
|
|
19
|
+
|
|
20
|
+
## Evidence Boundary
|
|
21
|
+
|
|
22
|
+
This file documents reproducible topology validation. It is not a GT closure record and does not replace the canonical governance evidence required before a gap is marked done.
|
|
23
|
+
|
|
24
|
+
---
|
|
25
|
+
[Back to Agentic AI Profile](./README.md)
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
# Guia de Evolucion de IA Agentica
|
|
2
|
+
|
|
3
|
+
> **Navegacion bilingue:** [Version en ingles](./evolution.md)
|
|
4
|
+
|
|
5
|
+
## Principio de Evolucion
|
|
6
|
+
|
|
7
|
+
La IA agentica es transversal y no debe disolver la propiedad de bounded contexts. Mantén orquestacion, ensamblaje de prompts, aplicacion de politicas y enrutamiento de herramientas en shells transversales. Mantén comandos de negocio, invariantes y decisiones de persistencia dentro de sus bounded contexts propietarios mediante contratos de aplicacion existentes.
|
|
8
|
+
|
|
9
|
+
## Evolucion de Capacidades
|
|
10
|
+
|
|
11
|
+
Amplia una capacidad a la vez. Agregar una capacidad requiere contrato de herramienta declarado, fuentes de contexto clasificadas, revision de sandbox, diseno de autorizacion y aprobacion, validacion Native y OPA, pruebas positivas y negativas y evidencia operativa. Una capacidad mutativa nueva requiere ademas revision contra ADR-0083.
|
|
12
|
+
|
|
13
|
+
## Preparacion para Extraccion
|
|
14
|
+
|
|
15
|
+
No extraigas un servicio orientado a agentes solo porque exista un agente. Sigue los criterios de extraccion del eje progresivo: propiedad distinta, necesidad de despliegue independiente, contrato estable, observabilidad, contencion de fallos y costo operativo justificado. El servicio externo conserva el mismo gateway de herramientas, evidencia y limites de dominio.
|
|
16
|
+
|
|
17
|
+
## Retiro
|
|
18
|
+
|
|
19
|
+
Retira una capacidad revocando su delegacion, eliminando su ruta de herramienta, reteniendo su evidencia requerida segun la politica gobernante y actualizando contrato, pruebas, reglas y runbook operativo juntos. No dejes herramientas inactivas alcanzables mediante una identidad general de agente.
|
|
20
|
+
|
|
21
|
+
## Disparadores de Reevaluacion
|
|
22
|
+
|
|
23
|
+
Reevalua esta topologia cuando cambie un modelo, herramienta, fuente de contexto, limite de despliegue, clasificacion de datos o metodo de aprobacion; cuando aumente la tendencia de denegaciones o fallos de politica; o cuando un patron satelite pueda ameritar promocion a un estandar reutilizable de Evolith.
|
|
24
|
+
|
|
25
|
+
---
|
|
26
|
+
[Volver al Perfil de IA Agentica](./README.es.md)
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
# Agentic AI Evolution Guide
|
|
2
|
+
|
|
3
|
+
> **Bilingual Navigation:** [Version en Espanol](./evolution.es.md)
|
|
4
|
+
|
|
5
|
+
## Evolution Principle
|
|
6
|
+
|
|
7
|
+
Agentic AI is cross-cutting and must not dissolve bounded-context ownership. Keep orchestration, prompt assembly, policy enforcement, and tool routing in cross-cutting shells. Keep business commands, invariants, and persistence decisions within their owning bounded contexts using existing application contracts.
|
|
8
|
+
|
|
9
|
+
## Capability Evolution
|
|
10
|
+
|
|
11
|
+
Expand one capability at a time. A capability addition requires a declared tool contract, classified context sources, sandbox review, authorization and approval design, Native and OPA validation, positive and negative tests, and operational evidence. A new mutative capability additionally requires review against ADR-0083.
|
|
12
|
+
|
|
13
|
+
## Extraction Readiness
|
|
14
|
+
|
|
15
|
+
Do not extract an agent-facing service merely because an agent exists. Follow the progressive-axis extraction criteria: distinct ownership, independent deployment need, stable contract, observability, failure containment, and justified operational cost. The external service retains the same tool gateway, evidence, and domain boundaries.
|
|
16
|
+
|
|
17
|
+
## Deprecation
|
|
18
|
+
|
|
19
|
+
Deprecate a capability by revoking its delegation, removing its tool route, retaining its required evidence according to the governing policy, and updating the contract, tests, rules, and operational runbook together. Do not leave dormant tools reachable through a general agent identity.
|
|
20
|
+
|
|
21
|
+
## Reassessment Triggers
|
|
22
|
+
|
|
23
|
+
Reassess this topology when a model, tool, context source, deployment boundary, data classification, or approval method changes; when denials or policy failures trend upward; or when a satellite pattern may merit promotion into a reusable Evolith standard.
|
|
24
|
+
|
|
25
|
+
---
|
|
26
|
+
[Back to Agentic AI Profile](./README.md)
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
{
|
|
2
|
+
"agent": {
|
|
3
|
+
"id": "unsafe-reviewer",
|
|
4
|
+
"capabilities": ["write-production"]
|
|
5
|
+
},
|
|
6
|
+
"sandbox": {
|
|
7
|
+
"mode": "shared",
|
|
8
|
+
"network": "allowlist",
|
|
9
|
+
"process": "allowlist",
|
|
10
|
+
"ephemeral": false,
|
|
11
|
+
"maxDurationSeconds": 0,
|
|
12
|
+
"maxMemoryMb": 0,
|
|
13
|
+
"maxCpuCores": 0
|
|
14
|
+
},
|
|
15
|
+
"promptSources": ["src"],
|
|
16
|
+
"implementationRoots": ["src/agents"],
|
|
17
|
+
"contextPolicy": {
|
|
18
|
+
"untrustedContent": "authority",
|
|
19
|
+
"provenanceRequired": false,
|
|
20
|
+
"toolOutputSchemaValidation": false
|
|
21
|
+
},
|
|
22
|
+
"toolPolicy": {
|
|
23
|
+
"mutative": "auto-approve",
|
|
24
|
+
"capabilityDelegation": "unbounded"
|
|
25
|
+
},
|
|
26
|
+
"audit": {
|
|
27
|
+
"appendOnly": false,
|
|
28
|
+
"correlationId": "optional"
|
|
29
|
+
},
|
|
30
|
+
"operationalBudgets": {
|
|
31
|
+
"maxPromptTokens": 0,
|
|
32
|
+
"maxCompletionTokens": 0,
|
|
33
|
+
"maxContextWindowTokens": 0,
|
|
34
|
+
"mcpToolConcurrency": {
|
|
35
|
+
"maxInFlight": 0,
|
|
36
|
+
"perToolMaxInFlight": 0
|
|
37
|
+
},
|
|
38
|
+
"runbooksPath": ""
|
|
39
|
+
},
|
|
40
|
+
"credentialLifecycle": {
|
|
41
|
+
"delegationMaxTtlSeconds": 0,
|
|
42
|
+
"rotationCadenceDays": 0,
|
|
43
|
+
"revocation": {
|
|
44
|
+
"onIncident": "never",
|
|
45
|
+
"maxPropagationSeconds": 0
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
{
|
|
2
|
+
"agent": {
|
|
3
|
+
"id": "architecture-reviewer",
|
|
4
|
+
"capabilities": ["read-architecture", "review-changes"]
|
|
5
|
+
},
|
|
6
|
+
"sandbox": {
|
|
7
|
+
"mode": "isolated",
|
|
8
|
+
"network": "allowlist",
|
|
9
|
+
"process": "deny",
|
|
10
|
+
"ephemeral": true,
|
|
11
|
+
"maxDurationSeconds": 30,
|
|
12
|
+
"maxMemoryMb": 512,
|
|
13
|
+
"maxCpuCores": 1
|
|
14
|
+
},
|
|
15
|
+
"promptSources": ["prompts"],
|
|
16
|
+
"implementationRoots": ["src/agents"],
|
|
17
|
+
"contextPolicy": {
|
|
18
|
+
"untrustedContent": "data-only",
|
|
19
|
+
"provenanceRequired": true,
|
|
20
|
+
"toolOutputSchemaValidation": true
|
|
21
|
+
},
|
|
22
|
+
"toolPolicy": {
|
|
23
|
+
"mutative": "approval-required",
|
|
24
|
+
"capabilityDelegation": "scoped-and-expiring"
|
|
25
|
+
},
|
|
26
|
+
"audit": {
|
|
27
|
+
"appendOnly": true,
|
|
28
|
+
"correlationId": "required"
|
|
29
|
+
},
|
|
30
|
+
"operationalBudgets": {
|
|
31
|
+
"maxPromptTokens": 16000,
|
|
32
|
+
"maxCompletionTokens": 4000,
|
|
33
|
+
"maxContextWindowTokens": 128000,
|
|
34
|
+
"mcpToolConcurrency": {
|
|
35
|
+
"maxInFlight": 4,
|
|
36
|
+
"perToolMaxInFlight": 2
|
|
37
|
+
},
|
|
38
|
+
"runbooksPath": "rulesets/topologies/agentic-ai/runbooks.md"
|
|
39
|
+
},
|
|
40
|
+
"credentialLifecycle": {
|
|
41
|
+
"delegationMaxTtlSeconds": 900,
|
|
42
|
+
"rotationCadenceDays": 30,
|
|
43
|
+
"revocation": {
|
|
44
|
+
"onIncident": "immediate",
|
|
45
|
+
"maxPropagationSeconds": 60
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
# Guia de Adopcion, Operacion y Evolucion de IA Agentica
|
|
2
|
+
|
|
3
|
+
> **Navegacion bilingue:** [Version en ingles](./maturity.md)
|
|
4
|
+
|
|
5
|
+
## Adopcion
|
|
6
|
+
|
|
7
|
+
Adopta solo cuando un agente necesite contexto gobernado y uso acotado de herramientas. Declara `agent.config.json`, valida con `evolith validate --topology agentic-ai` y comienza con capacidades de solo lectura.
|
|
8
|
+
|
|
9
|
+
## Patrones y Anti-Patrones
|
|
10
|
+
|
|
11
|
+
Usa ensamblaje explicito de contexto, herramientas acotadas por capacidad, ejecucion aislada y aprobacion para mutaciones. No incluyas credenciales en prompts, no trates texto recuperado como autoridad ni permitas que un agente llame directamente a un repositorio o base de datos.
|
|
12
|
+
|
|
13
|
+
## Seguridad y Auditoria
|
|
14
|
+
|
|
15
|
+
Aplica aislamiento de sandbox ADR-0081, limites de confianza ADR-0082 y autorizacion acotada por capacidad con evidencia correlacionada append-only ADR-0083. El contexto es dato hasta que procedencia y validacion de schema establezcan lo contrario.
|
|
16
|
+
|
|
17
|
+
## Operacion y Resiliencia
|
|
18
|
+
|
|
19
|
+
Configura recursos acotados, cancelacion y timeout, traza cada llamada de herramienta y conserva evidencia suficiente para reconstruir una decision de politica. El fallo de una herramienta, politica o ruta de aprobacion falla cerrado; nunca otorga una capacidad mas amplia.
|
|
20
|
+
|
|
21
|
+
## Evolucion
|
|
22
|
+
|
|
23
|
+
Mantén la orquestacion de agentes en shells transversales, preserva ownership de bounded contexts y extrae un servicio orientado a agentes solo cuando se cumplan los criterios normales de extraccion progresiva. Reevalua la topologia cuando las herramientas adquieran una capacidad mutativa nueva o un nuevo limite de confianza.
|
|
24
|
+
|
|
25
|
+
## Lista de Validacion
|
|
26
|
+
|
|
27
|
+
- `agent.config.json` satisface AAI-R01 a AAI-R07 en Native y OPA.
|
|
28
|
+
- El perfil tiene ADRs aceptados, README bilingue y esta guia de madurez.
|
|
29
|
+
- CLI, MCP y Core API exponen el manifiesto mediante el plano de control compartido de topologias.
|
|
30
|
+
- Las pruebas incluyen un contrato valido y cada condicion negativa bloqueante.
|
|
31
|
+
|
|
32
|
+
---
|
|
33
|
+
[Volver al Perfil de IA Agentica](./README.es.md)
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
# Agentic AI Adoption, Operations, and Evolution Guide
|
|
2
|
+
|
|
3
|
+
> **Bilingual Navigation:** [Version en Espanol](./maturity.es.md)
|
|
4
|
+
|
|
5
|
+
## Adoption
|
|
6
|
+
|
|
7
|
+
Adopt only when an agent needs governed context and bounded tool use. Declare `agent.config.json`, validate with `evolith validate --topology agentic-ai`, and begin with read-only capabilities.
|
|
8
|
+
|
|
9
|
+
## Patterns and Anti-Patterns
|
|
10
|
+
|
|
11
|
+
Use explicit context assembly, capability-scoped tools, isolated execution, and approval for mutations. Do not embed credentials in prompts, treat retrieved text as authority, or let an agent call a repository or database directly.
|
|
12
|
+
|
|
13
|
+
## Security and Audit
|
|
14
|
+
|
|
15
|
+
Apply ADR-0081 sandbox isolation, ADR-0082 trust boundaries, and ADR-0083 capability-scoped authorization with append-only correlated evidence. Context is data until provenance and schema validation establish otherwise.
|
|
16
|
+
|
|
17
|
+
## Operations and Resilience
|
|
18
|
+
|
|
19
|
+
Set bounded execution resources, cancellation and timeout behavior, trace every tool call, and retain evidence sufficient to reconstruct a policy decision. Failure of a tool, policy, or approval path fails closed; it never grants a broader capability.
|
|
20
|
+
|
|
21
|
+
## Evolution
|
|
22
|
+
|
|
23
|
+
Keep agent orchestration in cross-cutting shells, preserve bounded-context ownership, and extract an agent-facing service only when the normal progressive extraction criteria are met. Reassess the topology whenever tools acquire a new mutative capability or a new trust boundary.
|
|
24
|
+
|
|
25
|
+
## Validation Checklist
|
|
26
|
+
|
|
27
|
+
- `agent.config.json` satisfies AAI-R01 through AAI-R07 in Native and OPA.
|
|
28
|
+
- The profile has accepted ADRs, bilingual README and this maturity guide.
|
|
29
|
+
- CLI, MCP, and Core API expose the manifest through the shared topology control plane.
|
|
30
|
+
- Tests include a valid contract and each blocking negative condition.
|
|
31
|
+
|
|
32
|
+
---
|
|
33
|
+
[Back to Agentic AI Profile](./README.md)
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
{
|
|
2
|
+
"protocolVersion": "2025-03-26",
|
|
3
|
+
"topologyId": "agentic-ai",
|
|
4
|
+
"description": "MCP interface for the Agentic AI topology. Provides tools for inspecting and validating agentic configuration, resources for manifest and ruleset access, and prompts for AI-governed implementation guidance.",
|
|
5
|
+
"capabilities": {
|
|
6
|
+
"tools": {},
|
|
7
|
+
"resources": {},
|
|
8
|
+
"prompts": {}
|
|
9
|
+
},
|
|
10
|
+
"tools": [
|
|
11
|
+
{
|
|
12
|
+
"name": "evolith-topology-inspect",
|
|
13
|
+
"description": "Inspect an Agentic AI topology configuration and return its parsed manifest, operational budgets, and corpus artifact references.",
|
|
14
|
+
"inputSchema": {
|
|
15
|
+
"type": "object",
|
|
16
|
+
"properties": {
|
|
17
|
+
"configPath": {
|
|
18
|
+
"type": "string",
|
|
19
|
+
"description": "Path to the agentic AI configuration file (agent.config.json)"
|
|
20
|
+
},
|
|
21
|
+
"includeBudgets": {
|
|
22
|
+
"type": "boolean",
|
|
23
|
+
"description": "Include operational budget details (token, credential rotation, sandbox timeout)"
|
|
24
|
+
}
|
|
25
|
+
},
|
|
26
|
+
"required": ["configPath"]
|
|
27
|
+
}
|
|
28
|
+
},
|
|
29
|
+
{
|
|
30
|
+
"name": "evolith-topology-validate",
|
|
31
|
+
"description": "Validate an Agentic AI configuration against the topology ruleset and OPA policies, returning pass/fail per gate.",
|
|
32
|
+
"inputSchema": {
|
|
33
|
+
"type": "object",
|
|
34
|
+
"properties": {
|
|
35
|
+
"configPath": {
|
|
36
|
+
"type": "string",
|
|
37
|
+
"description": "Path to the agentic AI configuration to validate"
|
|
38
|
+
},
|
|
39
|
+
"strictMode": {
|
|
40
|
+
"type": "boolean",
|
|
41
|
+
"description": "Fail on warnings, not just errors"
|
|
42
|
+
}
|
|
43
|
+
},
|
|
44
|
+
"required": ["configPath"]
|
|
45
|
+
}
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
"name": "evolith-ruleset-explain",
|
|
49
|
+
"description": "Explain why a specific Agentic AI ruleset rule applies to a given configuration, including the rule logic and evidence.",
|
|
50
|
+
"inputSchema": {
|
|
51
|
+
"type": "object",
|
|
52
|
+
"properties": {
|
|
53
|
+
"ruleId": {
|
|
54
|
+
"type": "string",
|
|
55
|
+
"description": "The rule ID to explain (e.g., AGT-001, AGT-002)"
|
|
56
|
+
},
|
|
57
|
+
"configPath": {
|
|
58
|
+
"type": "string",
|
|
59
|
+
"description": "Path to the configuration being evaluated"
|
|
60
|
+
}
|
|
61
|
+
},
|
|
62
|
+
"required": ["ruleId", "configPath"]
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
],
|
|
66
|
+
"resources": [
|
|
67
|
+
{
|
|
68
|
+
"uri": "evolith://topologies/agentic-ai/manifest",
|
|
69
|
+
"name": "Agentic AI Topology Manifest",
|
|
70
|
+
"description": "Full topology manifest for Agentic AI, including metadata, artifact references, and corpus configuration.",
|
|
71
|
+
"mimeType": "application/json"
|
|
72
|
+
},
|
|
73
|
+
{
|
|
74
|
+
"uri": "evolith://topologies/agentic-ai/rulesets",
|
|
75
|
+
"name": "Agentic AI Rulesets",
|
|
76
|
+
"description": "All ruleset files for Agentic AI: native rules JSON, OPA Rego policies, and WASM bundle.",
|
|
77
|
+
"mimeType": "application/json"
|
|
78
|
+
},
|
|
79
|
+
{
|
|
80
|
+
"uri": "evolith://topologies/agentic-ai/mcp",
|
|
81
|
+
"name": "Agentic AI MCP Interface",
|
|
82
|
+
"description": "This MCP manifest file describing tools, resources, and prompts available for Agentic AI.",
|
|
83
|
+
"mimeType": "application/json"
|
|
84
|
+
}
|
|
85
|
+
],
|
|
86
|
+
"prompts": [
|
|
87
|
+
{
|
|
88
|
+
"name": "topology-aware-implementation",
|
|
89
|
+
"description": "Guides AI-assisted implementation to respect Agentic AI topology constraints, agent isolation, and trust boundaries."
|
|
90
|
+
},
|
|
91
|
+
{
|
|
92
|
+
"name": "agentic-ai-governance-review",
|
|
93
|
+
"description": "Performs a governance review of an Agentic AI topology configuration against ADR-0081 (sandbox isolation), ADR-0082 (trust boundary), and ADR-0083 (action authorization)."
|
|
94
|
+
},
|
|
95
|
+
{
|
|
96
|
+
"name": "adr-impact-analysis",
|
|
97
|
+
"description": "Analyzes the impact of ADR changes on the Agentic AI topology, identifying affected rulesets, contracts, and operational budgets."
|
|
98
|
+
}
|
|
99
|
+
]
|
|
100
|
+
}
|