@evolith/core-domain 1.0.1 → 1.0.3

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.
Files changed (502) hide show
  1. package/README.md +102 -0
  2. package/dist/domain/services/default-workflow-definition.js +4 -1
  3. package/dist/domain/services/default-workflow-definition.js.map +1 -1
  4. package/dist/gates/decision/gate-decision.js.map +1 -1
  5. package/package.json +1 -2
  6. package/rulesets/README.es.md +0 -170
  7. package/rulesets/README.md +0 -170
  8. package/rulesets/acl/README.es.md +0 -41
  9. package/rulesets/acl/README.md +0 -41
  10. package/rulesets/acl/anti-corruption-layer.rules.es.json +0 -99
  11. package/rulesets/acl/anti-corruption-layer.rules.json +0 -99
  12. package/rulesets/adr/ADR_COVERAGE.es.md +0 -133
  13. package/rulesets/adr/ADR_COVERAGE.md +0 -133
  14. package/rulesets/adr/README.es.md +0 -17
  15. package/rulesets/adr/README.md +0 -17
  16. package/rulesets/adr/adr-0002-hexagonal-architecture.rules.json +0 -103
  17. package/rulesets/adr/adr-0005-cicd-quality-gates.rules.json +0 -102
  18. package/rulesets/adr/adr-0010-multi-tenancy.rules.json +0 -129
  19. package/rulesets/adr/adr-0018-testing-pyramid.rules.json +0 -115
  20. package/rulesets/adr/adr-0032-protocol-selection.rules.json +0 -134
  21. package/rulesets/adr/adr-0040-multi-runtime.rules.json +0 -131
  22. package/rulesets/adr/adr-0050-gitflow-branching.rules.json +0 -176
  23. package/rulesets/adr/generated/adr-0001-monorepo-orchestration-principle.rules.json +0 -29
  24. package/rulesets/adr/generated/adr-0006-microservices-transition-via-sidecar-pattern.rules.json +0 -29
  25. package/rulesets/adr/generated/adr-0009-strict-dependency-pinning-and-automated-vulnerability-manage.rules.json +0 -29
  26. package/rulesets/adr/generated/adr-0011-fault-tolerance-and-resiliency-patterns.rules.json +0 -29
  27. package/rulesets/adr/generated/adr-0013-cloud-infrastructure-topology-and-disaster-recovery-dr.rules.json +0 -28
  28. package/rulesets/adr/generated/adr-0014-multi-layer-distributed-caching-strategy.rules.json +0 -29
  29. package/rulesets/adr/generated/adr-0015-event-driven-architecture-eda-for-intra-domain-communication.rules.json +0 -29
  30. package/rulesets/adr/generated/adr-0016-immutable-business-audit-trail-and-change-tracking.rules.json +0 -29
  31. package/rulesets/adr/generated/adr-0017-feature-flagging-strategy-for-progressive-delivery.rules.json +0 -28
  32. package/rulesets/adr/generated/adr-0019-tactical-design-patterns-for-future-proofing.rules.json +0 -29
  33. package/rulesets/adr/generated/adr-0020-identity-provider-abstraction-strategy.rules.json +0 -28
  34. package/rulesets/adr/generated/adr-0024-centralized-configuration-feature-platform.rules.json +0 -28
  35. package/rulesets/adr/generated/adr-0025-feature-flag-provider-abstraction-strategy.rules.json +0 -29
  36. package/rulesets/adr/generated/adr-0028-self-hosted-open-source-hybrid-infrastructure.rules.json +0 -29
  37. package/rulesets/adr/generated/adr-0030-two-tier-distributed-gateway-model.rules.json +0 -28
  38. package/rulesets/adr/generated/adr-0031-schema-per-bounded-context-and-domain-event-catalog.rules.json +0 -29
  39. package/rulesets/adr/generated/adr-0033-transactional-outbox-pattern-for-async-messaging.rules.json +0 -28
  40. package/rulesets/adr/generated/adr-0034-cqrs-pattern-application-matrix.rules.json +0 -29
  41. package/rulesets/adr/generated/adr-0035-distributed-saga-pattern-implementation-strategy.rules.json +0 -29
  42. package/rulesets/adr/generated/adr-0036-message-bus-delivery-flow-control-strategy.rules.json +0 -29
  43. package/rulesets/adr/generated/adr-0037-enterprise-performance-concurrency-chaos-verification-strate.rules.json +0 -28
  44. package/rulesets/adr/generated/adr-0039-deployment-topology-abstraction-environment-switcher.rules.json +0 -29
  45. package/rulesets/adr/generated/adr-0041-dual-engine-policy-evaluation-native-opa.rules.json +0 -28
  46. package/rulesets/adr/generated/adr-0044-configurable-security-persistence-strategy-agnosticism-vs-na.rules.json +0 -29
  47. package/rulesets/adr/generated/adr-0045-microservice-extraction-readiness-criteria.rules.json +0 -29
  48. package/rulesets/adr/generated/adr-0046-unified-traceability-via-w3c-tracecontext.rules.json +0 -29
  49. package/rulesets/adr/generated/adr-0047-progressive-architecture-evolution-framework-modular-monolit.rules.json +0 -29
  50. package/rulesets/adr/generated/adr-0048-enterprise-taxonomy-standardization-and-reference-layout.rules.json +0 -28
  51. package/rulesets/adr/generated/adr-0049-naming-semantics-clean-code-policy-e2e-and-global.rules.json +0 -29
  52. package/rulesets/adr/generated/adr-0051-enterprise-database-engine-selection-strategy.rules.json +0 -29
  53. package/rulesets/adr/generated/adr-0052-unit-testing-isolation-strategy-mocks-vs-stubs.rules.json +0 -29
  54. package/rulesets/adr/generated/adr-0053-integration-and-e2e-testing-strategy.rules.json +0 -29
  55. package/rulesets/adr/generated/adr-0054-database-design-and-normalization-standards.rules.json +0 -29
  56. package/rulesets/adr/generated/adr-0055-microfrontends-architecture-strategy.rules.json +0 -28
  57. package/rulesets/adr/generated/adr-0056-enterprise-naming-design-conventions-multi-language-multi-pl.rules.json +0 -29
  58. package/rulesets/adr/generated/adr-0057-architecture-intelligence-catalog.rules.json +0 -27
  59. package/rulesets/adr/generated/adr-0058-ai-consumable-architecture-knowledge.rules.json +0 -27
  60. package/rulesets/adr/generated/adr-0067-modular-monolith-persistence-boundaries.rules.json +0 -28
  61. package/rulesets/adr/generated/adr-0068-documentation-release-gitflow.rules.json +0 -29
  62. package/rulesets/adr/generated/adr-0069-ai-agent-context-protocol-integration.rules.json +0 -28
  63. package/rulesets/adr/generated/adr-0070-lean-root-repository-taxonomy.rules.json +0 -29
  64. package/rulesets/adr/generated/adr-0071-domain-layer-base-class-and-inheritance-strategy.rules.json +0 -29
  65. package/rulesets/adr/generated/adr-0072-utc-date-storage-browser-timezone-detection-and-language-res.rules.json +0 -29
  66. package/rulesets/adr/generated/adr-0073-unified-cli-mcp-output-contract-and-gate-evidence-schema.rules.json +0 -29
  67. package/rulesets/adr/generated/adr-0074-evolith-core-api-native-exposure-layer.rules.json +0 -29
  68. package/rulesets/adr/generated/adr-0075-core-api-authentication-strategy.rules.json +0 -28
  69. package/rulesets/adr/generated/adr-0076-domain-oriented-microservice-architecture-doma.rules.json +0 -28
  70. package/rulesets/adr/generated/adr-0077-masstransit-v9-commercial-pivot-stay-on-v8-monitor-opentrans.rules.json +0 -28
  71. package/rulesets/adr/generated/adr-0078-domain-financial-separation-governance.rules.json +0 -29
  72. package/rulesets/adr/generated/adr-0079-multi-topology-reference-corpus-and-topology-manifest-contra.rules.json +0 -29
  73. package/rulesets/adr/generated/adr-0080-remote-repository-reference-contract.rules.json +0 -29
  74. package/rulesets/adr/generated/adr-0081-agentic-ai-sandbox-isolation-boundary.rules.json +0 -29
  75. package/rulesets/adr/generated/adr-0082-agentic-ai-prompt-context-and-tool-trust-boundary.rules.json +0 -28
  76. package/rulesets/adr/generated/adr-0083-agentic-ai-action-authorization-and-audit.rules.json +0 -29
  77. package/rulesets/adr/generated/adr-0084-data-mesh-and-data-as-a-product.rules.json +0 -29
  78. package/rulesets/adr/generated/adr-0085-agnostic-opa-wasm-distribution-architecture.rules.json +0 -28
  79. package/rulesets/adr/generated/adr-0086-agentic-ai-telemetry-cost-control-standard.rules.json +0 -27
  80. package/rulesets/adr/generated/adr-0087-attribute-based-access-control-abac-for-agentic-tool-executi.rules.json +0 -29
  81. package/rulesets/adr/generated/adr-0088-sovereign-identity-for-agentic-ai.rules.json +0 -29
  82. package/rulesets/adr/generated/adr-0089-event-driven-agentic-workflow-pattern.rules.json +0 -28
  83. package/rulesets/adr/generated/adr-0090-rag-knowledge-governance-standard.rules.json +0 -29
  84. package/rulesets/adr/generated/adr-0091-workload-identity-token-rotation-standard.rules.json +0 -29
  85. package/rulesets/adr/generated/adr-0092-agent-infinite-loop-prevention-and-circuit-breaker-rules.rules.json +0 -29
  86. package/rulesets/adr/generated/adr-0093-concurrency-control-and-resource-locking-standard-for-mcp-to.rules.json +0 -29
  87. package/rulesets/adr/generated/adr-0094-multi-agent-handoff-and-task-delegation-standards.rules.json +0 -29
  88. package/rulesets/adr/generated/adr-0095-serverless-architecture-governance.rules.json +0 -29
  89. package/rulesets/adr/generated/adr-0096-edge-computing-architecture-governance.rules.json +0 -29
  90. package/rulesets/adr/generated/adr-0097-knowledge-lifecycle-governance-standard.rules.json +0 -29
  91. package/rulesets/adr/generated/adr-0098-rest-uri-versioning-and-deprecation-policy.rules.json +0 -29
  92. package/rulesets/adr/generated/adr-0099-opa-bundle-distribution-via-s3-minio.rules.json +0 -27
  93. package/rulesets/adr/generated/adr-ai-augmented-0001-harness-engineering-for-ai-augmented-development.rules.json +0 -29
  94. package/rulesets/adr/generated/adr-ai-augmented-0002-mcp-integration-protocol-for-agent-tool-invocation.rules.json +0 -29
  95. package/rulesets/adr/generated/adr-ai-augmented-0003-model-selection-governance-for-ai-augmented-workflows.rules.json +0 -29
  96. package/rulesets/adr/generated/adr-ai-augmented-0004-agents-md-as-mandatory-repository-artifact.rules.json +0 -29
  97. package/rulesets/adr/generated/adr-ai-augmented-0005-human-in-the-loop-policy-for-autonomous-agent-operations.rules.json +0 -29
  98. package/rulesets/adr/generated/adr-android-0042-canonical-android-native-mobile-architecture.rules.json +0 -29
  99. package/rulesets/adr/generated/adr-dotnet-0041-canonical-net-c-backend-architecture.rules.json +0 -29
  100. package/rulesets/adr/generated/adr-dotnet-0060-net-multi-tenancy-dual-layer-strategy-ef-core-sql-server.rules.json +0 -29
  101. package/rulesets/adr/generated/adr-dotnet-0061-transactional-event-lifecycle-in-ef-core.rules.json +0 -28
  102. package/rulesets/adr/generated/adr-dotnet-0062-net-immutable-audit-trail-via-ddl-triggers-delta-capture.rules.json +0 -29
  103. package/rulesets/adr/generated/adr-dotnet-0063-b2b-request-idempotency-middleware-in-asp-net-core.rules.json +0 -28
  104. package/rulesets/adr/generated/adr-dotnet-0064-net-request-scope-observability-context-propagation.rules.json +0 -29
  105. package/rulesets/adr/generated/adr-dotnet-0065-net-pii-safe-structured-logging-pipeline-serilog.rules.json +0 -29
  106. package/rulesets/adr/generated/adr-dotnet-0066-net-lightweight-http-idempotency-via-imemorycache-idistribut.rules.json +0 -28
  107. package/rulesets/adr/generated/adr-dotnet-0069-net-grpc-service-setup-protobuf-contracts.rules.json +0 -29
  108. package/rulesets/adr/generated/adr-dotnet-0070-net-api-endpoint-strategy.rules.json +0 -29
  109. package/rulesets/adr/generated/adr-dotnet-0071-net-data-access-strategy-ef-core-as-default-orm-dapper-for-o.rules.json +0 -27
  110. package/rulesets/adr/generated/adr-dotnet-0072-net-aop-cross-cutting-concern-strategy-dispatchproxy-over-pi.rules.json +0 -29
  111. package/rulesets/adr/generated/adr-nodejs-0003-strict-typescript-standards.rules.json +0 -29
  112. package/rulesets/adr/generated/adr-nodejs-0004-frontend-offline-resilience.rules.json +0 -28
  113. package/rulesets/adr/generated/adr-nodejs-0007-observability-with-opentelemetry-loki-and-jaeger.rules.json +0 -29
  114. package/rulesets/adr/generated/adr-nodejs-0008-progressive-multi-module-evolution-with-api-gateway-and-bff-.rules.json +0 -28
  115. package/rulesets/adr/generated/adr-nodejs-0012-advanced-authorization-rbac-abac-strategy.rules.json +0 -28
  116. package/rulesets/adr/generated/adr-nodejs-0021-high-performance-authentication-graph-compilation.rules.json +0 -28
  117. package/rulesets/adr/generated/adr-nodejs-0022-contextual-authentication-and-pluggable-output-projections.rules.json +0 -28
  118. package/rulesets/adr/generated/adr-nodejs-0023-centralized-authorization-core-strategy.rules.json +0 -28
  119. package/rulesets/adr/generated/adr-nodejs-0026-adaptive-mfa-and-passwordless-platform.rules.json +0 -28
  120. package/rulesets/adr/generated/adr-nodejs-0027-dual-protocol-api-strategy-rest-grpc.rules.json +0 -28
  121. package/rulesets/adr/generated/adr-nodejs-0029-adoption-of-tactical-ddd-primitives-library.rules.json +0 -29
  122. package/rulesets/adr/generated/adr-nodejs-0038-enterprise-error-handling-result-pattern-strategy.rules.json +0 -29
  123. package/rulesets/adr/generated/adr-nodejs-0043-data-access-and-orm-strategy-for-node-js.rules.json +0 -29
  124. package/rulesets/adr/generated/adr-nodejs-0044-frontend-clean-architecture-layer-boundaries-react.rules.json +0 -29
  125. package/rulesets/adr/generated/adr-nodejs-0045-frontend-state-management-zustand-tanstack-query-dual-strate.rules.json +0 -29
  126. package/rulesets/adr/generated/adr-nodejs-0046-prohibition-of-raw-technical-identifiers-in-user-interfaces.rules.json +0 -29
  127. package/rulesets/adr/generated/adr-nodejs-0047-actionable-user-error-contract-and-correlated-diagnostics.rules.json +0 -29
  128. package/rulesets/adr/generated/adr-nodejs-0048-feature-flag-system-scope-and-structured-criteria-model.rules.json +0 -29
  129. package/rulesets/adr/generated/adr-nodejs-0074-monorepo-orchestration-with-nx.rules.json +0 -29
  130. package/rulesets/adr/generated/adr-nodejs-0075-application-gateway-bff-with-nestjs.rules.json +0 -29
  131. package/rulesets/architecture/README.es.md +0 -21
  132. package/rulesets/architecture/README.md +0 -21
  133. package/rulesets/architecture/opa/progressive-axis.rego +0 -50
  134. package/rulesets/cli/README.es.md +0 -17
  135. package/rulesets/cli/README.md +0 -17
  136. package/rulesets/cli/core-parity.rules.json +0 -61
  137. package/rulesets/cli/release-readiness.rules.json +0 -77
  138. package/rulesets/compliance-baseline/README.es.md +0 -26
  139. package/rulesets/compliance-baseline/README.md +0 -26
  140. package/rulesets/compliance-baseline/compliance-baseline.rules.json +0 -81
  141. package/rulesets/contracts/README.es.md +0 -19
  142. package/rulesets/contracts/README.md +0 -19
  143. package/rulesets/contracts/evolith-machine-contracts.json +0 -29
  144. package/rulesets/contracts/fixtures/gate-evidence.success.json +0 -10
  145. package/rulesets/contracts/fixtures/output-envelope.success.json +0 -23
  146. package/rulesets/cross-cutting/README.es.md +0 -14
  147. package/rulesets/cross-cutting/README.md +0 -14
  148. package/rulesets/cross-cutting/compliance-baseline.rules.json +0 -81
  149. package/rulesets/cross-cutting/definition-of-done.rules.json +0 -135
  150. package/rulesets/cross-cutting/engineering-manifesto.rules.json +0 -145
  151. package/rulesets/cross-cutting/repository-taxonomy.rules.json +0 -172
  152. package/rulesets/definition-of-done/README.es.md +0 -26
  153. package/rulesets/definition-of-done/README.md +0 -26
  154. package/rulesets/definition-of-done/definition-of-done.rules.json +0 -135
  155. package/rulesets/engineering-manifesto/README.es.md +0 -26
  156. package/rulesets/engineering-manifesto/README.md +0 -26
  157. package/rulesets/engineering-manifesto/engineering-manifesto.rules.json +0 -145
  158. package/rulesets/evidence/README.es.md +0 -12
  159. package/rulesets/evidence/README.md +0 -12
  160. package/rulesets/evidence/evidence-manifest.rules.json +0 -48
  161. package/rulesets/executive-scorecards/executive-scorecards.rules.es.json +0 -213
  162. package/rulesets/executive-scorecards/executive-scorecards.rules.json +0 -213
  163. package/rulesets/governance/README.es.md +0 -13
  164. package/rulesets/governance/README.md +0 -13
  165. package/rulesets/governance/abac-mcp-access.rules.es.json +0 -41
  166. package/rulesets/governance/abac-mcp-access.rules.json +0 -41
  167. package/rulesets/governance/executive-scorecards.rules.es.json +0 -213
  168. package/rulesets/governance/executive-scorecards.rules.json +0 -213
  169. package/rulesets/governance/inheritance.rules.json +0 -115
  170. package/rulesets/governance/knowledge-intake.rules.json +0 -18
  171. package/rulesets/governance/open-core-boundary.rules.es.json +0 -148
  172. package/rulesets/governance/open-core-boundary.rules.json +0 -148
  173. package/rulesets/governance/satellite-contracts.rules.json +0 -183
  174. package/rulesets/infrastructure/helm-enforcement.rules.json +0 -21
  175. package/rulesets/infrastructure/opa/helm-enforcement.rego +0 -25
  176. package/rulesets/infrastructure/opa/helm-enforcement.test.rego +0 -31
  177. package/rulesets/infrastructure/opa/opa-sidecar-bundle.rego +0 -115
  178. package/rulesets/infrastructure/opa/opa-sidecar-bundle.test.rego +0 -66
  179. package/rulesets/infrastructure/opa-sidecar-bundle.rules.json +0 -18
  180. package/rulesets/mcp/README.es.md +0 -12
  181. package/rulesets/mcp/README.md +0 -12
  182. package/rulesets/mcp/protocol-compliance.rules.json +0 -57
  183. package/rulesets/observability/README.es.md +0 -12
  184. package/rulesets/observability/README.md +0 -12
  185. package/rulesets/observability/telemetry-evidence.rules.json +0 -48
  186. package/rulesets/opa/README.es.md +0 -22
  187. package/rulesets/opa/README.md +0 -22
  188. package/rulesets/opa/abac-mcp-tool-access.rego +0 -122
  189. package/rulesets/opa/abac-mcp-tool-access.test.rego +0 -33
  190. package/rulesets/opa/anti-corruption-layer.rego +0 -39
  191. package/rulesets/opa/anti-corruption-layer.test.rego +0 -118
  192. package/rulesets/opa/ci-cd.rego +0 -41
  193. package/rulesets/opa/ci-cd.test.rego +0 -23
  194. package/rulesets/opa/cicd-quality-gates.rego +0 -29
  195. package/rulesets/opa/cicd-quality-gates.test.rego +0 -54
  196. package/rulesets/opa/cli-core-parity.rego +0 -17
  197. package/rulesets/opa/cli-core-parity.test.rego +0 -39
  198. package/rulesets/opa/cli-readiness.rego +0 -32
  199. package/rulesets/opa/cli-readiness.test.rego +0 -23
  200. package/rulesets/opa/cli-release-readiness.rego +0 -21
  201. package/rulesets/opa/cli-release-readiness.test.rego +0 -46
  202. package/rulesets/opa/compliance-baseline.rego +0 -95
  203. package/rulesets/opa/compliance-baseline.test.rego +0 -89
  204. package/rulesets/opa/dod.rego +0 -42
  205. package/rulesets/opa/dod.test.rego +0 -250
  206. package/rulesets/opa/engineering-manifesto.rego +0 -78
  207. package/rulesets/opa/engineering-manifesto.test.rego +0 -133
  208. package/rulesets/opa/evidence.rego +0 -64
  209. package/rulesets/opa/evidence.test.rego +0 -23
  210. package/rulesets/opa/executive-scorecards.rego +0 -41
  211. package/rulesets/opa/executive-scorecards.test.rego +0 -60
  212. package/rulesets/opa/gitflow-branching.rego +0 -41
  213. package/rulesets/opa/gitflow-branching.test.rego +0 -60
  214. package/rulesets/opa/governance.rego +0 -39
  215. package/rulesets/opa/governance.test.rego +0 -23
  216. package/rulesets/opa/hexagonal-architecture.rego +0 -33
  217. package/rulesets/opa/hexagonal-architecture.test.rego +0 -57
  218. package/rulesets/opa/infrastructure/helm-enforcement.rego +0 -33
  219. package/rulesets/opa/infrastructure/opa-sidecar-bundle.rego +0 -42
  220. package/rulesets/opa/knowledge-intake.rego +0 -98
  221. package/rulesets/opa/knowledge-intake.test.rego +0 -50
  222. package/rulesets/opa/main.rego +0 -147
  223. package/rulesets/opa/main_test.rego +0 -149
  224. package/rulesets/opa/mcp.rego +0 -61
  225. package/rulesets/opa/mcp.test.rego +0 -27
  226. package/rulesets/opa/multi-runtime.rego +0 -33
  227. package/rulesets/opa/multi-runtime.test.rego +0 -53
  228. package/rulesets/opa/multi-tenancy.rego +0 -33
  229. package/rulesets/opa/multi-tenancy.test.rego +0 -53
  230. package/rulesets/opa/open-core-boundary.rego +0 -33
  231. package/rulesets/opa/open-core-boundary.test.rego +0 -60
  232. package/rulesets/opa/protocol-selection.rego +0 -29
  233. package/rulesets/opa/protocol-selection.test.rego +0 -46
  234. package/rulesets/opa/rbac/gate-role-enforcement.rego +0 -112
  235. package/rulesets/opa/repository-taxonomy.rego +0 -98
  236. package/rulesets/opa/repository-taxonomy.test.rego +0 -91
  237. package/rulesets/opa/satellite-contracts.rego +0 -42
  238. package/rulesets/opa/satellite-contracts.test.rego +0 -70
  239. package/rulesets/opa/schemas/abac-mcp-tool-access.input.schema.json +0 -21
  240. package/rulesets/opa/schemas/anti-corruption-layer.input.schema.json +0 -25
  241. package/rulesets/opa/schemas/ci-cd.input.schema.json +0 -27
  242. package/rulesets/opa/schemas/cicd-quality-gates.input.schema.json +0 -33
  243. package/rulesets/opa/schemas/cli-core-parity.input.schema.json +0 -30
  244. package/rulesets/opa/schemas/cli-readiness.input.schema.json +0 -28
  245. package/rulesets/opa/schemas/cli-release-readiness.input.schema.json +0 -26
  246. package/rulesets/opa/schemas/compliance-baseline.input.schema.json +0 -25
  247. package/rulesets/opa/schemas/dod.input.schema.json +0 -38
  248. package/rulesets/opa/schemas/engineering-manifesto.input.schema.json +0 -24
  249. package/rulesets/opa/schemas/evidence.input.schema.json +0 -35
  250. package/rulesets/opa/schemas/executive-scorecards.input.schema.json +0 -36
  251. package/rulesets/opa/schemas/gitflow-branching.input.schema.json +0 -36
  252. package/rulesets/opa/schemas/governance.input.schema.json +0 -19
  253. package/rulesets/opa/schemas/hexagonal-architecture.input.schema.json +0 -46
  254. package/rulesets/opa/schemas/knowledge-intake.input.schema.json +0 -57
  255. package/rulesets/opa/schemas/mcp.input.schema.json +0 -38
  256. package/rulesets/opa/schemas/multi-runtime.input.schema.json +0 -27
  257. package/rulesets/opa/schemas/multi-tenancy.input.schema.json +0 -27
  258. package/rulesets/opa/schemas/open-core-boundary.input.schema.json +0 -36
  259. package/rulesets/opa/schemas/protocol-selection.input.schema.json +0 -26
  260. package/rulesets/opa/schemas/repository-taxonomy.input.schema.json +0 -18
  261. package/rulesets/opa/schemas/satellite-contracts.input.schema.json +0 -38
  262. package/rulesets/opa/schemas/taxonomy.input.schema.json +0 -27
  263. package/rulesets/opa/schemas/testing-pyramid.input.schema.json +0 -42
  264. package/rulesets/opa/schemas/version-pinning.input.schema.json +0 -39
  265. package/rulesets/opa/sdlc/coverage.rego +0 -49
  266. package/rulesets/opa/sdlc/coverage.test.rego +0 -29
  267. package/rulesets/opa/sdlc/pyramid-distribution.rego +0 -31
  268. package/rulesets/opa/sdlc/pyramid-distribution.test.rego +0 -33
  269. package/rulesets/opa/taxonomy.rego +0 -51
  270. package/rulesets/opa/taxonomy.test.rego +0 -28
  271. package/rulesets/opa/telemetry-evidence.rego +0 -102
  272. package/rulesets/opa/testing-pyramid.rego +0 -49
  273. package/rulesets/opa/testing-pyramid.test.rego +0 -81
  274. package/rulesets/opa/version-pinning.rego +0 -99
  275. package/rulesets/opa/version-pinning.test.rego +0 -28
  276. package/rulesets/phase-gates/README.es.md +0 -28
  277. package/rulesets/phase-gates/README.md +0 -28
  278. package/rulesets/phase-gates/phase-gates.rules.json +0 -297
  279. package/rulesets/quality-thresholds/README.es.md +0 -28
  280. package/rulesets/quality-thresholds/README.md +0 -28
  281. package/rulesets/quality-thresholds/quality-thresholds.rules.json +0 -96
  282. package/rulesets/repository-taxonomy/README.es.md +0 -26
  283. package/rulesets/repository-taxonomy/README.md +0 -26
  284. package/rulesets/repository-taxonomy/repository-taxonomy.rules.json +0 -172
  285. package/rulesets/satellite-contracts/README.es.md +0 -27
  286. package/rulesets/satellite-contracts/README.md +0 -27
  287. package/rulesets/satellite-contracts/satellite-contracts.rules.json +0 -183
  288. package/rulesets/schema/README.es.md +0 -39
  289. package/rulesets/schema/README.md +0 -39
  290. package/rulesets/schema/adr.schema.json +0 -138
  291. package/rulesets/schema/agile-backlog.schema.json +0 -91
  292. package/rulesets/schema/ballpark-estimation.schema.json +0 -109
  293. package/rulesets/schema/build-vs-compose.schema.json +0 -98
  294. package/rulesets/schema/cli-impact-analysis.schema.json +0 -114
  295. package/rulesets/schema/discovery-canvas.schema.json +0 -92
  296. package/rulesets/schema/evolith-user-story.schema.json +0 -105
  297. package/rulesets/schema/evolith-yaml.schema.json +0 -191
  298. package/rulesets/schema/functional-story.schema.json +0 -111
  299. package/rulesets/schema/gate-evidence.schema.json +0 -85
  300. package/rulesets/schema/integration-evidence.schema.json +0 -47
  301. package/rulesets/schema/knowledge-intake.schema.json +0 -67
  302. package/rulesets/schema/knowledge-projection.schema.json +0 -24
  303. package/rulesets/schema/maturity-evidence.schema.json +0 -59
  304. package/rulesets/schema/observability-validation.schema.json +0 -85
  305. package/rulesets/schema/on-call-handoff.schema.json +0 -91
  306. package/rulesets/schema/output-envelope.schema.json +0 -102
  307. package/rulesets/schema/prd.schema.json +0 -117
  308. package/rulesets/schema/release-notes.schema.json +0 -138
  309. package/rulesets/schema/rollback-rehearsal.schema.json +0 -73
  310. package/rulesets/schema/ruleset-sdlc.schema.json +0 -59
  311. package/rulesets/schema/ruleset-standard.schema.json +0 -73
  312. package/rulesets/schema/security-scan-report.schema.json +0 -79
  313. package/rulesets/schema/source-registry.schema.json +0 -51
  314. package/rulesets/schema/technical-feasibility.schema.json +0 -66
  315. package/rulesets/schema/technical-story.schema.json +0 -112
  316. package/rulesets/schema/test-summary-report.schema.json +0 -158
  317. package/rulesets/schema/topology-composition.schema.json +0 -43
  318. package/rulesets/schema/topology-manifest.schema.json +0 -421
  319. package/rulesets/sdlc/README.es.md +0 -12
  320. package/rulesets/sdlc/README.md +0 -12
  321. package/rulesets/sdlc/default-workflow.yaml +0 -73
  322. package/rulesets/sdlc/dependency-pinning.rules.json +0 -183
  323. package/rulesets/sdlc/phase-gates.rules.json +0 -297
  324. package/rulesets/sdlc/quality-thresholds.rules.json +0 -96
  325. package/rulesets/topologies/README.es.md +0 -42
  326. package/rulesets/topologies/README.md +0 -42
  327. package/rulesets/topologies/agentic-ai/README.es.md +0 -142
  328. package/rulesets/topologies/agentic-ai/README.md +0 -142
  329. package/rulesets/topologies/agentic-ai/adoption.es.md +0 -37
  330. package/rulesets/topologies/agentic-ai/adoption.md +0 -37
  331. package/rulesets/topologies/agentic-ai/agent.config.schema.json +0 -100
  332. package/rulesets/topologies/agentic-ai/agentic-ai.rego +0 -46
  333. package/rulesets/topologies/agentic-ai/agentic-ai.rules.json +0 -109
  334. package/rulesets/topologies/agentic-ai/agentic-ai.test.rego +0 -68
  335. package/rulesets/topologies/agentic-ai/agentic-ai.wasm +0 -0
  336. package/rulesets/topologies/agentic-ai/cli/cli-flows.es.md +0 -35
  337. package/rulesets/topologies/agentic-ai/cli/cli-flows.md +0 -45
  338. package/rulesets/topologies/agentic-ai/evidence.es.md +0 -25
  339. package/rulesets/topologies/agentic-ai/evidence.md +0 -25
  340. package/rulesets/topologies/agentic-ai/evolution.es.md +0 -26
  341. package/rulesets/topologies/agentic-ai/evolution.md +0 -26
  342. package/rulesets/topologies/agentic-ai/fixtures/invalid-agent.config.json +0 -48
  343. package/rulesets/topologies/agentic-ai/fixtures/valid-agent.config.json +0 -48
  344. package/rulesets/topologies/agentic-ai/maturity.es.md +0 -33
  345. package/rulesets/topologies/agentic-ai/maturity.md +0 -33
  346. package/rulesets/topologies/agentic-ai/mcp/mcp-manifest.json +0 -100
  347. package/rulesets/topologies/agentic-ai/openapi/openapi.yaml +0 -187
  348. package/rulesets/topologies/agentic-ai/operations.es.md +0 -32
  349. package/rulesets/topologies/agentic-ai/operations.md +0 -32
  350. package/rulesets/topologies/agentic-ai/parity-fixtures/compliant.json +0 -18
  351. package/rulesets/topologies/agentic-ai/parity-fixtures/violation.json +0 -22
  352. package/rulesets/topologies/agentic-ai/patterns.es.md +0 -32
  353. package/rulesets/topologies/agentic-ai/patterns.md +0 -32
  354. package/rulesets/topologies/agentic-ai/resilience.es.md +0 -26
  355. package/rulesets/topologies/agentic-ai/resilience.md +0 -26
  356. package/rulesets/topologies/agentic-ai/runbooks.es.md +0 -48
  357. package/rulesets/topologies/agentic-ai/runbooks.md +0 -48
  358. package/rulesets/topologies/agentic-ai/security.es.md +0 -26
  359. package/rulesets/topologies/agentic-ai/security.md +0 -26
  360. package/rulesets/topologies/agentic-ai/topology.manifest.json +0 -127
  361. package/rulesets/topologies/data-mesh/README.es.md +0 -69
  362. package/rulesets/topologies/data-mesh/README.md +0 -69
  363. package/rulesets/topologies/data-mesh/adoption.es.md +0 -95
  364. package/rulesets/topologies/data-mesh/adoption.md +0 -95
  365. package/rulesets/topologies/data-mesh/cli/cli-flows.es.md +0 -41
  366. package/rulesets/topologies/data-mesh/cli/cli-flows.md +0 -53
  367. package/rulesets/topologies/data-mesh/data-mesh.rego +0 -11
  368. package/rulesets/topologies/data-mesh/data-mesh.rules.json +0 -100
  369. package/rulesets/topologies/data-mesh/data-mesh.test.rego +0 -107
  370. package/rulesets/topologies/data-mesh/data-mesh.wasm +0 -0
  371. package/rulesets/topologies/data-mesh/evidence.es.md +0 -111
  372. package/rulesets/topologies/data-mesh/evidence.md +0 -111
  373. package/rulesets/topologies/data-mesh/evolution.es.md +0 -67
  374. package/rulesets/topologies/data-mesh/evolution.md +0 -67
  375. package/rulesets/topologies/data-mesh/fixtures/invalid.topology.config.json +0 -12
  376. package/rulesets/topologies/data-mesh/fixtures/valid.topology.config.json +0 -12
  377. package/rulesets/topologies/data-mesh/maturity.es.md +0 -36
  378. package/rulesets/topologies/data-mesh/maturity.md +0 -36
  379. package/rulesets/topologies/data-mesh/mcp/mcp-manifest.json +0 -68
  380. package/rulesets/topologies/data-mesh/openapi/openapi.yaml +0 -186
  381. package/rulesets/topologies/data-mesh/operations.es.md +0 -63
  382. package/rulesets/topologies/data-mesh/operations.md +0 -63
  383. package/rulesets/topologies/data-mesh/parity-fixtures/compliant.json +0 -18
  384. package/rulesets/topologies/data-mesh/parity-fixtures/violation.json +0 -21
  385. package/rulesets/topologies/data-mesh/patterns.es.md +0 -67
  386. package/rulesets/topologies/data-mesh/patterns.md +0 -67
  387. package/rulesets/topologies/data-mesh/resilience.es.md +0 -64
  388. package/rulesets/topologies/data-mesh/resilience.md +0 -64
  389. package/rulesets/topologies/data-mesh/runbooks.es.md +0 -147
  390. package/rulesets/topologies/data-mesh/runbooks.md +0 -147
  391. package/rulesets/topologies/data-mesh/security.es.md +0 -66
  392. package/rulesets/topologies/data-mesh/security.md +0 -66
  393. package/rulesets/topologies/data-mesh/topology.config.schema.json +0 -30
  394. package/rulesets/topologies/data-mesh/topology.manifest.json +0 -107
  395. package/rulesets/topologies/edge-computing/README.es.md +0 -81
  396. package/rulesets/topologies/edge-computing/README.md +0 -81
  397. package/rulesets/topologies/edge-computing/adoption.es.md +0 -268
  398. package/rulesets/topologies/edge-computing/adoption.md +0 -268
  399. package/rulesets/topologies/edge-computing/cli/cli-flows.es.md +0 -41
  400. package/rulesets/topologies/edge-computing/cli/cli-flows.md +0 -53
  401. package/rulesets/topologies/edge-computing/edge-computing.rego +0 -41
  402. package/rulesets/topologies/edge-computing/edge-computing.rules.json +0 -50
  403. package/rulesets/topologies/edge-computing/edge-computing.test.rego +0 -33
  404. package/rulesets/topologies/edge-computing/edge-computing.wasm +0 -0
  405. package/rulesets/topologies/edge-computing/evidence.es.md +0 -263
  406. package/rulesets/topologies/edge-computing/evidence.md +0 -263
  407. package/rulesets/topologies/edge-computing/evolution.es.md +0 -257
  408. package/rulesets/topologies/edge-computing/evolution.md +0 -257
  409. package/rulesets/topologies/edge-computing/fixtures/invalid.topology.config.json +0 -6
  410. package/rulesets/topologies/edge-computing/fixtures/valid.topology.config.json +0 -6
  411. package/rulesets/topologies/edge-computing/maturity.es.md +0 -36
  412. package/rulesets/topologies/edge-computing/maturity.md +0 -36
  413. package/rulesets/topologies/edge-computing/mcp/mcp-manifest.json +0 -72
  414. package/rulesets/topologies/edge-computing/openapi/openapi.yaml +0 -187
  415. package/rulesets/topologies/edge-computing/operations.es.md +0 -148
  416. package/rulesets/topologies/edge-computing/operations.md +0 -148
  417. package/rulesets/topologies/edge-computing/parity-fixtures/compliant.json +0 -12
  418. package/rulesets/topologies/edge-computing/parity-fixtures/violation.json +0 -13
  419. package/rulesets/topologies/edge-computing/patterns.es.md +0 -291
  420. package/rulesets/topologies/edge-computing/patterns.md +0 -290
  421. package/rulesets/topologies/edge-computing/resilience.es.md +0 -232
  422. package/rulesets/topologies/edge-computing/resilience.md +0 -229
  423. package/rulesets/topologies/edge-computing/runbooks.es.md +0 -405
  424. package/rulesets/topologies/edge-computing/runbooks.md +0 -405
  425. package/rulesets/topologies/edge-computing/security.es.md +0 -218
  426. package/rulesets/topologies/edge-computing/security.md +0 -218
  427. package/rulesets/topologies/edge-computing/topology.config.schema.json +0 -13
  428. package/rulesets/topologies/edge-computing/topology.manifest.json +0 -113
  429. package/rulesets/topologies/event-driven/README.es.md +0 -71
  430. package/rulesets/topologies/event-driven/README.md +0 -71
  431. package/rulesets/topologies/event-driven/adoption.es.md +0 -67
  432. package/rulesets/topologies/event-driven/adoption.md +0 -67
  433. package/rulesets/topologies/event-driven/cli/cli-flows.es.md +0 -41
  434. package/rulesets/topologies/event-driven/cli/cli-flows.md +0 -53
  435. package/rulesets/topologies/event-driven/event-driven.rego +0 -11
  436. package/rulesets/topologies/event-driven/event-driven.rules.json +0 -100
  437. package/rulesets/topologies/event-driven/event-driven.test.rego +0 -107
  438. package/rulesets/topologies/event-driven/event-driven.wasm +0 -0
  439. package/rulesets/topologies/event-driven/evidence.es.md +0 -69
  440. package/rulesets/topologies/event-driven/evidence.md +0 -69
  441. package/rulesets/topologies/event-driven/evolution.es.md +0 -59
  442. package/rulesets/topologies/event-driven/evolution.md +0 -59
  443. package/rulesets/topologies/event-driven/fixtures/invalid.topology.config.json +0 -12
  444. package/rulesets/topologies/event-driven/fixtures/valid.topology.config.json +0 -12
  445. package/rulesets/topologies/event-driven/maturity.es.md +0 -36
  446. package/rulesets/topologies/event-driven/maturity.md +0 -36
  447. package/rulesets/topologies/event-driven/mcp/mcp-manifest.json +0 -68
  448. package/rulesets/topologies/event-driven/openapi/openapi.yaml +0 -186
  449. package/rulesets/topologies/event-driven/operations.es.md +0 -67
  450. package/rulesets/topologies/event-driven/operations.md +0 -67
  451. package/rulesets/topologies/event-driven/parity-fixtures/compliant.json +0 -18
  452. package/rulesets/topologies/event-driven/parity-fixtures/violation.json +0 -21
  453. package/rulesets/topologies/event-driven/patterns.es.md +0 -68
  454. package/rulesets/topologies/event-driven/patterns.md +0 -68
  455. package/rulesets/topologies/event-driven/resilience.es.md +0 -65
  456. package/rulesets/topologies/event-driven/resilience.md +0 -65
  457. package/rulesets/topologies/event-driven/runbooks.es.md +0 -79
  458. package/rulesets/topologies/event-driven/runbooks.md +0 -79
  459. package/rulesets/topologies/event-driven/security.es.md +0 -59
  460. package/rulesets/topologies/event-driven/security.md +0 -59
  461. package/rulesets/topologies/event-driven/topology.config.schema.json +0 -30
  462. package/rulesets/topologies/event-driven/topology.manifest.json +0 -109
  463. package/rulesets/topologies/progressive-axis/distributed-modules/distributed-modules.rules.es.json +0 -111
  464. package/rulesets/topologies/progressive-axis/distributed-modules/distributed-modules.rules.json +0 -111
  465. package/rulesets/topologies/progressive-axis/microservices/microservices.rules.es.json +0 -106
  466. package/rulesets/topologies/progressive-axis/microservices/microservices.rules.json +0 -106
  467. package/rulesets/topologies/progressive-axis/modular-monolith/modular-monolith.rules.es.json +0 -148
  468. package/rulesets/topologies/progressive-axis/modular-monolith/modular-monolith.rules.json +0 -148
  469. package/rulesets/topologies/serverless/README.es.md +0 -74
  470. package/rulesets/topologies/serverless/README.md +0 -74
  471. package/rulesets/topologies/serverless/adoption.es.md +0 -50
  472. package/rulesets/topologies/serverless/adoption.md +0 -50
  473. package/rulesets/topologies/serverless/cli/cli-flows.es.md +0 -41
  474. package/rulesets/topologies/serverless/cli/cli-flows.md +0 -53
  475. package/rulesets/topologies/serverless/evidence.es.md +0 -66
  476. package/rulesets/topologies/serverless/evidence.md +0 -66
  477. package/rulesets/topologies/serverless/evolution.es.md +0 -36
  478. package/rulesets/topologies/serverless/evolution.md +0 -36
  479. package/rulesets/topologies/serverless/fixtures/invalid.topology.config.json +0 -6
  480. package/rulesets/topologies/serverless/fixtures/valid.topology.config.json +0 -6
  481. package/rulesets/topologies/serverless/maturity.es.md +0 -36
  482. package/rulesets/topologies/serverless/maturity.md +0 -36
  483. package/rulesets/topologies/serverless/mcp/mcp-manifest.json +0 -72
  484. package/rulesets/topologies/serverless/openapi/openapi.yaml +0 -186
  485. package/rulesets/topologies/serverless/operations.es.md +0 -36
  486. package/rulesets/topologies/serverless/operations.md +0 -36
  487. package/rulesets/topologies/serverless/parity-fixtures/compliant.json +0 -13
  488. package/rulesets/topologies/serverless/parity-fixtures/violation.json +0 -15
  489. package/rulesets/topologies/serverless/patterns.es.md +0 -36
  490. package/rulesets/topologies/serverless/patterns.md +0 -36
  491. package/rulesets/topologies/serverless/resilience.es.md +0 -36
  492. package/rulesets/topologies/serverless/resilience.md +0 -36
  493. package/rulesets/topologies/serverless/runbooks.es.md +0 -68
  494. package/rulesets/topologies/serverless/runbooks.md +0 -68
  495. package/rulesets/topologies/serverless/security.es.md +0 -36
  496. package/rulesets/topologies/serverless/security.md +0 -36
  497. package/rulesets/topologies/serverless/serverless.rego +0 -32
  498. package/rulesets/topologies/serverless/serverless.rules.json +0 -33
  499. package/rulesets/topologies/serverless/serverless.test.rego +0 -28
  500. package/rulesets/topologies/serverless/serverless.wasm +0 -0
  501. package/rulesets/topologies/serverless/topology.config.schema.json +0 -28
  502. package/rulesets/topologies/serverless/topology.manifest.json +0 -114
package/README.md ADDED
@@ -0,0 +1,102 @@
1
+ # @evolith/core-domain
2
+
3
+ > Domain and application logic for the Evolith governance framework.
4
+
5
+ [![npm version](https://img.shields.io/npm/v/@evolith/core-domain)](https://www.npmjs.com/package/@evolith/core-domain)
6
+ [![license](https://img.shields.io/npm/l/@evolith/core-domain)](./LICENSE)
7
+
8
+ ## Overview
9
+
10
+ `@evolith/core-domain` is the heart of the Evolith architecture governance framework. It provides the **domain model, application use-cases, and rule evaluation engine** used by all Evolith surfaces (Core API, MCP Server, CLI).
11
+
12
+ Built on **Domain-Driven Design** principles with hexagonal architecture — all dependencies point inward; infrastructure is injected via ports.
13
+
14
+ ## Installation
15
+
16
+ ```bash
17
+ npm install @evolith/core-domain
18
+ ```
19
+
20
+ ## What's inside
21
+
22
+ | Layer | What it provides |
23
+ |-------|-----------------|
24
+ | **Domain** | Phase, Gate, Verdict, Satellite Manifest, Workflow Definition, RBAC, Audit entities |
25
+ | **Application** | `EvaluateGateUseCase`, `ValidateBlueprintUseCase`, `ValidateWorkflowUseCase`, Architecture Drift detection, Satellite evaluation pipeline |
26
+ | **Ports** | `IFileSystem`, `ILogger`, `IConfigParser`, `IRulesetRepository`, `IEventBus` — inject your own adapters |
27
+ | **Gates** | Phase-gate validator, composable validation engine, OPA/Native dual-engine parity |
28
+
29
+ ## Usage
30
+
31
+ ```ts
32
+ import { EvaluateGateUseCase } from '@evolith/core-domain/application/use-cases';
33
+ import { loadDefaultWorkflow } from '@evolith/core-domain/domain/services';
34
+
35
+ // Load the default SDLC workflow
36
+ const workflow = loadDefaultWorkflow();
37
+
38
+ // Evaluate a phase gate
39
+ const useCase = new EvaluateGateUseCase(rulesetRepo, fileSystem, logger);
40
+ const result = await useCase.execute({ projectId, phase, artifacts });
41
+ ```
42
+
43
+ > **Runtime requirement:** set `WORKSPACE_ROOT` to the directory containing the `rulesets/` folder.
44
+ > In Docker: `ENV WORKSPACE_ROOT=/app/corpus`. Locally: the monorepo root is used automatically.
45
+
46
+ ## Key exports
47
+
48
+ ```ts
49
+ // Domain entities
50
+ import { Phase, Verdict, GateDecision } from '@evolith/core-domain';
51
+
52
+ // Use cases
53
+ import { EvaluateGateUseCase } from '@evolith/core-domain/application/use-cases';
54
+ import { ValidateBlueprintUseCase } from '@evolith/core-domain/application/use-cases';
55
+ import { ValidateWorkflowUseCase } from '@evolith/core-domain/application/use-cases';
56
+
57
+ // Validators
58
+ import { PhaseGateValidatorService } from '@evolith/core-domain/application/validators';
59
+ import { ComposableValidationEngine } from '@evolith/core-domain/application/validators/modes';
60
+
61
+ // Services
62
+ import { loadDefaultWorkflow } from '@evolith/core-domain/domain/services';
63
+ import { SatelliteEvaluationPipeline } from '@evolith/core-domain/application/services';
64
+
65
+ // Ports (interfaces for your adapters)
66
+ import type { IFileSystem, ILogger } from '@evolith/core-domain/domain/interfaces';
67
+ import type { IRulesetRepository } from '@evolith/core-domain';
68
+ ```
69
+
70
+ ## Environment variables
71
+
72
+ | Variable | Default | Description |
73
+ |----------|---------|-------------|
74
+ | `WORKSPACE_ROOT` | *(monorepo root)* | Base directory containing `rulesets/` |
75
+
76
+ ## Architecture
77
+
78
+ ```
79
+ @evolith/core-domain
80
+ ├── domain/ # Entities, value objects, ports (no external deps)
81
+ │ ├── entities/ # Phase, Gate, Verdict, Satellite...
82
+ │ ├── ports/ # IFileSystem, ILogger, IRulesetRepository...
83
+ │ └── services/ # Workflow loading, domain services
84
+ ├── application/ # Use cases, validators, pipelines
85
+ │ ├── use-cases/ # EvaluateGate, ValidateBlueprint, ValidateWorkflow
86
+ │ ├── validators/ # PhaseGateValidator, ComposableValidationEngine
87
+ │ └── services/ # SatelliteEvaluationPipeline, AuditService
88
+ └── infrastructure/ # In-memory adapters (for testing)
89
+ ├── events/ # InMemoryEventBus
90
+ └── audit/ # InMemoryAuditRepository
91
+ ```
92
+
93
+ ## Part of the Evolith suite
94
+
95
+ | Package | Role |
96
+ |---------|------|
97
+ | **`@evolith/core-domain`** | Domain logic and rule engine ← you are here |
98
+ | [`@evolith/infra-providers`](https://www.npmjs.com/package/@evolith/infra-providers) | Infrastructure adapters (filesystem, logger, config) |
99
+
100
+ ## License
101
+
102
+ UNLICENSED — proprietary. Copyright © Beyondnet.
@@ -88,7 +88,10 @@ class DefaultWorkflowDefinition {
88
88
  }
89
89
  exports.DefaultWorkflowDefinition = DefaultWorkflowDefinition;
90
90
  function loadDefaultWorkflow() {
91
- const content = fs.readFileSync(path.join(__dirname, '../../../rulesets/sdlc/default-workflow.yaml'), 'utf-8');
91
+ const rulesetBase = process.env.WORKSPACE_ROOT
92
+ ? path.join(process.env.WORKSPACE_ROOT, 'rulesets')
93
+ : path.join(__dirname, '../../../rulesets');
94
+ const content = fs.readFileSync(path.join(rulesetBase, 'sdlc/default-workflow.yaml'), 'utf-8');
92
95
  return new DefaultWorkflowDefinition(yaml_1.default.parse(content));
93
96
  }
94
97
  //# sourceMappingURL=default-workflow-definition.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"default-workflow-definition.js","sourceRoot":"","sources":["../../../src/domain/services/default-workflow-definition.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"default-workflow-definition.js","sourceRoot":"","sources":["../../../src/domain/services/default-workflow-definition.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"gate-decision.js","sourceRoot":"","sources":["../../../src/gates/decision/gate-decision.ts"],"names":[],"mappings":";;;AA6BA,4CAiBC;AAMD,8DAIC;AAhDD,0DAAkG;AAEzF,uGAFS,gCAAsB,OAET;AAmB/B,SAAgB,gBAAgB,CAC9B,MAAc,EACd,KAAa,EACb,KAAa,EACb,UAAoB,EACpB,SAAS,GAAG,QAAQ;IAEpB,MAAM,OAAO,GAAY,UAAU,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC,iBAAO,CAAC,IAAI,CAAC,CAAC,CAAC,iBAAO,CAAC,IAAI,CAAC;IAC9F,OAAO;QACL,MAAM;QACN,KAAK;QACL,OAAO;QACP,KAAK;QACL,UAAU;QACV,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACnC,SAAS;KACV,CAAC;AACJ,CAAC;AAMD,SAAgB,yBAAyB,CACvC,MAAsE;IAEtE,OAAO,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE,IAAA,gCAAsB,EAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;AACxE,CAAC"}
1
+ {"version":3,"file":"gate-decision.js","sourceRoot":"","sources":["../../../src/gates/decision/gate-decision.ts"],"names":[],"mappings":";;;AA6BA,4CAiBC;AAMD,8DAIC;AAhDD,0DAA+E;AAEtE,uGAFS,gCAAsB,OAET;AAmB/B,SAAgB,gBAAgB,CAC9B,MAAc,EACd,KAAa,EACb,KAAa,EACb,UAAoB,EACpB,SAAS,GAAG,QAAQ;IAEpB,MAAM,OAAO,GAAY,UAAU,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC,CAAC,CAAC,iBAAO,CAAC,IAAI,CAAC,CAAC,CAAC,iBAAO,CAAC,IAAI,CAAC;IAC9F,OAAO;QACL,MAAM;QACN,KAAK;QACL,OAAO;QACP,KAAK;QACL,UAAU;QACV,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;QACnC,SAAS;KACV,CAAC;AACJ,CAAC;AAMD,SAAgB,yBAAyB,CACvC,MAAsE;IAEtE,OAAO,EAAE,GAAG,MAAM,EAAE,OAAO,EAAE,IAAA,gCAAsB,EAAC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC;AACxE,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@evolith/core-domain",
3
- "version": "1.0.1",
3
+ "version": "1.0.3",
4
4
  "description": "Shared Domain and Application logic for Evolith Core",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -48,7 +48,6 @@
48
48
  },
49
49
  "files": [
50
50
  "dist",
51
- "rulesets",
52
51
  "README.md"
53
52
  ],
54
53
  "publishConfig": {
@@ -1,170 +0,0 @@
1
- # Hub de Reglas de Evolith
2
-
3
- > **Bilingual navigation:** [English version](./README.md)
4
-
5
- Reglas de gobernanza machine-readable que los repositorios satélite heredan y contra las cuales validan.
6
-
7
- ---
8
-
9
- ## Propósito
10
-
11
- > **Meta:** convertir la constitución escrita por humanos en reglas automatizadas exigibles en CI que los satélites no puedan eludir en silencio.
12
- >
13
- > **Objetivos:** versionar cada regla, validar cada artefacto contra un schema y custodiar automáticamente cada transición de fase.
14
-
15
- Los Rulesets de Evolith son la **capa de ejecución machine-readable** del framework de gobernanza Evolith. Mientras `reference/` contiene estándares escritos por humanos, ADRs y documentación, `rulesets/` contiene las reglas concretas, esquemas y contratos que las herramientas (CLI, pipelines CI, linters) consumen para **validar** el cumplimiento de satélites.
16
-
17
- ---
18
-
19
- ## Categorías de Reglas
20
-
21
- Si estás integrando un nuevo repositorio satélite, lee las categorías en este orden — del contrato de herencia a la validación de artefactos:
22
-
23
- | Documento | Descripción | Objetivo / Meta | Tipo | Obligatorio |
24
- |---|---|---|---|---|
25
- | [Reglas de Gobernanza](./governance/README.es.md) | Contrato `evolith.yaml` y reglas de herencia | Gobernar la herencia de satélites | Categoría de reglas | Sí |
26
- | [Reglas de Arquitectura](./architecture/README.es.md) | Reglas de progresión de fase F1/F2/F3 | Custodiar las fases de arquitectura | Categoría de reglas | Sí |
27
- | [Reglas Codificadas desde ADRs](./adr/README.es.md) | Reglas derivadas de ADRs aceptados | Hacer cumplir las decisiones automáticamente | Categoría de reglas | Sí |
28
- | [Reglas Transversales](./cross-cutting/README.es.md) | Baseline de cumplimiento, Definition of Done, manifiesto y taxonomía | Hacer cumplir las reglas transversales | Categoría de reglas | Sí |
29
- | [Reglas SDLC](./sdlc/README.es.md) | Definiciones de quality gates y thresholds | Hacer cumplir la calidad del ciclo de vida | Categoría de reglas | Sí |
30
- | [Reglas Anti-Corrupción](./acl/README.es.md) | Gobernanza de integración con sistemas externos | Proteger los límites del dominio | Categoría de reglas | Sí |
31
- | [Reglas del CLI](./cli/README.es.md) | Preparación de release del Smart CLI y paridad con Core | Custodiar los releases del CLI | Categoría de reglas | Sí |
32
- | [Reglas de Evidencia](./evidence/README.es.md) | Manifests de evidencia auditable | Estandarizar la evidencia | Categoría de reglas | Sí |
33
- | [Reglas MCP](./mcp/README.es.md) | Cumplimiento del protocolo MCP | Validar la exposición MCP | Categoría de reglas | Sí |
34
- | [Reglas de Observabilidad](./observability/README.es.md) | Evidencia de telemetría para operación | Verificar la evidencia de telemetría | Categoría de reglas | Sí |
35
- | [Rulesets Topologicos](./topologies/README.es.md) | Reglas ejecutables Native y OPA especificas por topologia | Gobernar la validacion topologica | Categoria de reglas | Si |
36
- | [Schemas](./schema/README.es.md) | JSON Schema para validación de artefactos Evolith | Validar la estructura de artefactos | Colección de schemas | Sí |
37
- | [Políticas OPA](./opa/README.es.md) | Políticas OPA y sus schemas de entrada | Validar gobernanza y reglas de arquitectura | Colección de políticas | Sí |
38
-
39
- ---
40
-
41
- ## Estructura de Directorios
42
-
43
- ```
44
- rulesets/
45
- ├── compliance-baseline/ # Punto de entrada WS1 del baseline de cumplimiento
46
- │ └── compliance-baseline.rules.json
47
- ├── definition-of-done/ # Punto de entrada WS1 de Definition of Done
48
- │ └── definition-of-done.rules.json
49
- ├── engineering-manifesto/ # Punto de entrada WS1 del Manifiesto de Ingeniería
50
- │ └── engineering-manifesto.rules.json
51
- ├── repository-taxonomy/ # Punto de entrada WS1 de Taxonomía del Repositorio
52
- │ └── repository-taxonomy.rules.json
53
- ├── phase-gates/ # Punto de entrada WS1 de gates de fase SDLC
54
- │ └── phase-gates.rules.json
55
- ├── quality-thresholds/ # Punto de entrada WS1 de umbrales de calidad
56
- │ └── quality-thresholds.rules.json
57
- ├── satellite-contracts/ # Punto de entrada WS1 de Satellite Contracts
58
- │ └── satellite-contracts.rules.json
59
- ├── opa/ # Políticas OPA y schemas de entrada
60
- │ ├── schemas/ # Schemas de entrada de políticas OPA (9 schemas)
61
- │ ├── *.rego # Archivos de políticas Rego
62
- │ └── README.es.md # Índice OPA
63
- ├── schema/ # Definiciones de JSON Schema (19 schemas)
64
- │ ├── adr.schema.json # Validación de artefacto ADR
65
- │ ├── prd.schema.json # Validación de artefacto PRD
66
- │ ├── discovery-canvas.schema.json # Fase 1
67
- │ ├── technical-feasibility.schema.json # Fase 1
68
- │ ├── ballpark-estimation.schema.json # Fase 1
69
- │ ├── evolith-user-story.schema.json # Fase 1
70
- │ ├── agile-backlog.schema.json # Fase 1
71
- │ ├── cli-impact-analysis.schema.json # Fase 1-2
72
- │ ├── functional-story.schema.json # Fase 2
73
- │ ├── technical-story.schema.json # Fase 3
74
- │ ├── test-summary-report.schema.json # Fase 4
75
- │ ├── release-notes.schema.json # Fase 5
76
- │ ├── evolith-yaml.schema.json # Gobernanza satelite
77
- │ └── topology-manifest.schema.json # Contrato de manifiesto topologico
78
- ├── architecture/ # Alias de compatibilidad F1/F2/F3 y guía de migración
79
- │ └── README.md # Resuelve alias mediante manifiestos topológicos
80
- ├── topologies/ # Reglas ejecutables especificas por topologia
81
- │ └── README.es.md
82
- ├── adr/ # Reglas encoding ADR
83
- │ ├── adr-0002-hexagonal-architecture.rules.json
84
- │ ├── adr-0005-cicd-quality-gates.rules.json
85
- │ ├── adr-0018-testing-pyramid.rules.json
86
- │ ├── adr-0032-protocol-selection.rules.json
87
- │ ├── adr-0040-multi-runtime.rules.json
88
- │ ├── adr-0050-gitflow-branching.rules.json
89
- │ └── adr-0010-multi-tenancy.rules.json
90
- ├── cross-cutting/ # Solo aliases — los archivos canónicos están en sus carpetas de dominio arriba
91
- │ ├── compliance-baseline.rules.json # alias → compliance-baseline/compliance-baseline.rules.json
92
- │ ├── definition-of-done.rules.json # alias → definition-of-done/definition-of-done.rules.json
93
- │ ├── engineering-manifesto.rules.json # alias → engineering-manifesto/engineering-manifesto.rules.json
94
- │ └── repository-taxonomy.rules.json # alias → repository-taxonomy/repository-taxonomy.rules.json
95
- ├── acl/ # Reglas Anti-Corruption Layer
96
- │ ├── anti-corruption-layer.rules.json # Aplicación ACL
97
- │ └── anti-corruption-layer.rules.es.json
98
- ├── sdlc/ # Reglas de gates SDLC
99
- │ ├── phase-gates.rules.json
100
- │ └── quality-thresholds.rules.json
101
- ├── cli/ # Reglas de release y paridad del Smart CLI
102
- │ ├── release-readiness.rules.json
103
- │ └── core-parity.rules.json
104
- ├── evidence/ # Contrato de evidencia auditable
105
- │ └── evidence-manifest.rules.json
106
- ├── mcp/ # Reglas de exposición del protocolo MCP
107
- │ └── protocol-compliance.rules.json
108
- ├── observability/ # Reglas de evidencia de telemetría
109
- │ └── telemetry-evidence.rules.json
110
- └── governance/ # Reglas de gobernanza federada
111
- ├── inheritance.rules.json
112
- ├── satellite-contracts.rules.json
113
- ├── open-core-boundary.rules.json # Frontera Core vs Enterprise
114
- └── executive-scorecards.rules.json # Métricas DORA + SPACE
115
- ```
116
-
117
- ---
118
-
119
- El artefacto canónico de reglas topológicas es el archivo declarado por cada `topology.manifest.json`; los artefactos actuales del eje progresivo viven bajo `reference/architecture/topologies/progressive-axis/`. Los consumidores deben resolver el manifiesto en lugar de construir rutas legacy `rulesets/architecture/f*.rules.json`.
120
-
121
- ## Cómo Funcionan los Rulesets
122
-
123
- ```mermaid
124
- flowchart LR
125
- classDef core fill:#14532d,stroke:#22c55e,color:#fff
126
- classDef sat fill:#1e3a5f,stroke:#3b82f6,color:#fff
127
- classDef tool fill:#4a3800,stroke:#f59e0b,color:#fff
128
-
129
- R["rulesets/\n(Evolith Core)"]:::core
130
- S["evolith.yaml\n(Satellite)"]:::sat
131
- T["CLI / CI\nValidation"]:::tool
132
-
133
- R -->|"inheritance"| S
134
- S -->|"validate"| T
135
- T -->|"block / pass"| S
136
- ```
137
-
138
- 1. **Evolith Core** publica rulesets
139
- 2. **Satélites** declaran `evolith.yaml` heredando versiones específicas de reglas
140
- 3. **CLI / CI** valida satélite contra reglas heredadas
141
- 4. **Failures** bloquean phase gates o merge
142
-
143
- ---
144
-
145
- ## Principios Clave
146
-
147
- | Principio | Descripción |
148
- |---|---|
149
- | **Reglas versionadas** | Cada regla tiene versión; satélites hacen pin a versión específica |
150
- | **Fail-fast validation** | CI debe fallar en violaciones de reglas; sin bypass sin waiver explícito |
151
- | **Topology-aware** | F1/F2/F3 permanecen como aliases de compatibilidad progressive-axis mientras los manifiestos topologicos gobiernan validacion especifica mas amplia |
152
- | **Herencia federada** | Satélites heredan de Core; no modifican reglas del Core |
153
- | **Schema-first** | Todos los artefactos tienen JSON Schema para validación machine |
154
-
155
- ---
156
-
157
- ## Documentos Relacionados
158
-
159
- | Documento | Descripción | Objetivo / Meta | Tipo | Obligatorio |
160
- |---|---|---|---|---|
161
- | [AGENTS.md](../AGENTS.es.md) | Reglas y convenciones de agentes | Gobernar las contribuciones de agentes | Estándar | Sí |
162
- | [Taxonomía del Repositorio](../reference/governance/standards/repository-taxonomy.es.md) | Qué va dónde en Evolith | Mantener el repositorio organizado | Estándar de gobernanza | Sí |
163
- | [Guía de Herencia de Repositorios Hijos](../reference/governance/standards/onboarding/child-repository-inheritance-guide.es.md) | Cómo los productos heredan de Evolith | Estandarizar la herencia | Guía | Sí |
164
- | [Hub de Navegación](../reference/navigation/README.es.md) | Navegación completa del repositorio | Centralizar la navegación | Hub de navegación | No |
165
-
166
- ---
167
-
168
- <div align="center">
169
- <sub>Evolith — Enterprise Architecture Platform | Rulesets Hub</sub>
170
- </div>
@@ -1,170 +0,0 @@
1
- # Evolith Rulesets Hub
2
-
3
- > **Navegación bilingüe:** [Versión en Español](./README.es.md)
4
-
5
- Machine-readable governance rules that satellite repositories inherit and validate against.
6
-
7
- ---
8
-
9
- ## Purpose
10
-
11
- > **Goal:** turn the human-authored constitution into automated, CI-enforceable rules that satellites cannot silently bypass.
12
- >
13
- > **Objectives:** version every rule, validate every artifact against a schema, and gate every phase transition automatically.
14
-
15
- Evolith Rulesets are the **machine-readable enforcement layer** of the Evolith governance framework. While `reference/` contains human-authored standards, ADRs, and documentation, `rulesets/` contains the concrete rules, schemas, and contracts that tools (CLI, CI pipelines, linters) consume to **validate** satellite compliance.
16
-
17
- ---
18
-
19
- ## Rule Categories
20
-
21
- If you are onboarding a new satellite repository, read the categories in this order — from inheritance contract to artifact validation:
22
-
23
- | Document | Description | Goal / Objective | Type | Mandatory |
24
- |---|---|---|---|---|
25
- | [Governance Rules](./governance/README.md) | `evolith.yaml` contract and inheritance rules | Govern satellite inheritance | Ruleset category | Yes |
26
- | [Architecture Rules](./architecture/README.md) | F1/F2/F3 phase progression rules | Gate architecture phases | Ruleset category | Yes |
27
- | [ADR-Encoded Rules](./adr/README.md) | Rules derived from accepted ADRs | Enforce ADR decisions automatically | Ruleset category | Yes |
28
- | [Cross-Cutting Rules](./cross-cutting/README.md) | Compliance baseline, Definition of Done, manifesto, and taxonomy rules | Enforce cross-cutting compliance | Ruleset category | Yes |
29
- | [SDLC Rules](./sdlc/README.md) | Quality gates and threshold definitions | Enforce lifecycle quality | Ruleset category | Yes |
30
- | [Anti-Corruption Layer Rules](./acl/README.md) | External system integration governance | Protect domain boundaries | Ruleset category | Yes |
31
- | [CLI Rules](./cli/README.md) | Smart CLI release readiness and Core parity | Gate CLI releases | Ruleset category | Yes |
32
- | [Evidence Rules](./evidence/README.md) | Auditable evidence manifests | Standardize evidence | Ruleset category | Yes |
33
- | [MCP Rules](./mcp/README.md) | MCP protocol compliance | Validate MCP exposure | Ruleset category | Yes |
34
- | [Observability Rules](./observability/README.md) | Telemetry evidence for operations | Verify telemetry evidence | Ruleset category | Yes |
35
- | [Topology Rulesets](./topologies/README.md) | Executable topology-specific Native and OPA rules | Govern topology validation | Ruleset category | Yes |
36
- | [Schemas](./schema/README.md) | JSON Schema for validating Evolith artifacts | Validate artifact structure | Schema collection | Yes |
37
- | [OPA Policies](./opa/README.md) | OPA policies and their input schemas | Validate governance and architectural rules | Policy collection | Yes |
38
-
39
- ---
40
-
41
- ## Directory Structure
42
-
43
- ```
44
- rulesets/
45
- ├── compliance-baseline/ # WS1 executable compliance baseline entrypoint
46
- │ └── compliance-baseline.rules.json
47
- ├── definition-of-done/ # WS1 executable Definition of Done entrypoint
48
- │ └── definition-of-done.rules.json
49
- ├── engineering-manifesto/ # WS1 executable Engineering Manifesto entrypoint
50
- │ └── engineering-manifesto.rules.json
51
- ├── repository-taxonomy/ # WS1 executable Repository Taxonomy entrypoint
52
- │ └── repository-taxonomy.rules.json
53
- ├── phase-gates/ # WS1 executable SDLC phase-gates entrypoint
54
- │ └── phase-gates.rules.json
55
- ├── quality-thresholds/ # WS1 executable quality-thresholds entrypoint
56
- │ └── quality-thresholds.rules.json
57
- ├── satellite-contracts/ # WS1 executable Satellite Contracts entrypoint
58
- │ └── satellite-contracts.rules.json
59
- ├── opa/ # OPA policies and inputs schemas
60
- │ ├── schemas/ # OPA policy input schemas (9 schemas)
61
- │ ├── *.rego # Rego policy files
62
- │ └── README.md # OPA index
63
- ├── schema/ # JSON Schema definitions (19 schemas)
64
- │ ├── adr.schema.json # ADR artifact validation
65
- │ ├── prd.schema.json # PRD artifact validation
66
- │ ├── discovery-canvas.schema.json # Phase 1
67
- │ ├── technical-feasibility.schema.json # Phase 1
68
- │ ├── ballpark-estimation.schema.json # Phase 1
69
- │ ├── evolith-user-story.schema.json # Phase 1
70
- │ ├── agile-backlog.schema.json # Phase 1
71
- │ ├── cli-impact-analysis.schema.json # Phase 1-2
72
- │ ├── functional-story.schema.json # Phase 2
73
- │ ├── technical-story.schema.json # Phase 3
74
- │ ├── test-summary-report.schema.json # Phase 4
75
- │ ├── release-notes.schema.json # Phase 5
76
- │ ├── evolith-yaml.schema.json # Satellite governance
77
- │ └── topology-manifest.schema.json # Topology manifest contract
78
- ├── architecture/ # F1/F2/F3 compatibility aliases and migration guidance
79
- │ └── README.md # Resolves aliases through topology manifests
80
- ├── topologies/ # Topology-specific executable rules
81
- │ └── README.md
82
- ├── adr/ # ADR-encoded rules (7 ADRs)
83
- │ ├── adr-0002-hexagonal-architecture.rules.json
84
- │ ├── adr-0005-cicd-quality-gates.rules.json
85
- │ ├── adr-0018-testing-pyramid.rules.json
86
- │ ├── adr-0032-protocol-selection.rules.json
87
- │ ├── adr-0040-multi-runtime.rules.json
88
- │ ├── adr-0050-gitflow-branching.rules.json
89
- │ └── adr-0010-multi-tenancy.rules.json
90
- ├── cross-cutting/ # Aliases only — canonical files are in domain-specific dirs above
91
- │ ├── compliance-baseline.rules.json # alias → compliance-baseline/compliance-baseline.rules.json
92
- │ ├── definition-of-done.rules.json # alias → definition-of-done/definition-of-done.rules.json
93
- │ ├── engineering-manifesto.rules.json # alias → engineering-manifesto/engineering-manifesto.rules.json
94
- │ └── repository-taxonomy.rules.json # alias → repository-taxonomy/repository-taxonomy.rules.json
95
- ├── acl/ # Anti-Corruption Layer rules (NEW)
96
- │ ├── anti-corruption-layer.rules.json # ACL enforcement
97
- │ └── anti-corruption-layer.rules.es.json
98
- ├── sdlc/ # SDLC gate rules
99
- │ ├── phase-gates.rules.json
100
- │ └── quality-thresholds.rules.json
101
- ├── cli/ # Smart CLI release and parity rules
102
- │ ├── release-readiness.rules.json
103
- │ └── core-parity.rules.json
104
- ├── evidence/ # Auditable evidence contract
105
- │ └── evidence-manifest.rules.json
106
- ├── mcp/ # MCP protocol exposure rules
107
- │ └── protocol-compliance.rules.json
108
- ├── observability/ # Telemetry evidence rules
109
- │ └── telemetry-evidence.rules.json
110
- └── governance/ # Federated governance rules
111
- ├── inheritance.rules.json
112
- ├── satellite-contracts.rules.json
113
- ├── open-core-boundary.rules.json # Core vs Enterprise separation
114
- └── executive-scorecards.rules.json # DORA + SPACE metrics
115
- ```
116
-
117
- ---
118
-
119
- The canonical topology rule artifact is the file declared by each `topology.manifest.json`; the current progressive-axis artifacts live under `reference/architecture/topologies/progressive-axis/`. Consumers must resolve the manifest rather than construct legacy `rulesets/architecture/f*.rules.json` paths.
120
-
121
- ## How Rulesets Work
122
-
123
- ```mermaid
124
- flowchart LR
125
- classDef core fill:#14532d,stroke:#22c55e,color:#fff
126
- classDef sat fill:#1e3a5f,stroke:#3b82f6,color:#fff
127
- classDef tool fill:#4a3800,stroke:#f59e0b,color:#fff
128
-
129
- R["rulesets/\n(Evolith Core)"]:::core
130
- S["evolith.yaml\n(Satellite)"]:::sat
131
- T["CLI / CI\nValidation"]:::tool
132
-
133
- R -->|"inheritance"| S
134
- S -->|"validate"| T
135
- T -->|"block / pass"| S
136
- ```
137
-
138
- 1. **Evolith Core** publishes rulesets
139
- 2. **Satellites** declare `evolith.yaml` inheriting specific rule versions
140
- 3. **CLI / CI** validates satellite against inherited rules
141
- 4. **Failures** block phase gates or merge
142
-
143
- ---
144
-
145
- ## Key Principles
146
-
147
- | Principle | Description |
148
- |---|---|
149
- | **Versioned rules** | Every rule has a version; satellites pin to a specific version |
150
- | **Fail-fast validation** | CI must fail on rule violations; no bypass without explicit waiver |
151
- | **Topology-aware** | F1/F2/F3 remain progressive-axis compatibility aliases while topology manifests drive broader topology-specific validation |
152
- | **Federated inheritance** | Satellites inherit from Core; they do not modify Core rules |
153
- | **Schema-first** | All artifacts have JSON Schema for machine validation |
154
-
155
- ---
156
-
157
- ## Related Documents
158
-
159
- | Document | Description | Goal / Objective | Type | Mandatory |
160
- |---|---|---|---|---|
161
- | [AGENTS.md](../AGENTS.md) | Agent rules and conventions | Govern agent contributions | Standard | Yes |
162
- | [Repository Taxonomy](../reference/governance/standards/repository-taxonomy.md) | What goes where in Evolith | Keep the repository organized | Governance standard | Yes |
163
- | [Child Repository Inheritance](../reference/governance/standards/onboarding/child-repository-inheritance-guide.md) | How products inherit from Evolith | Standardize inheritance | Guide | Yes |
164
- | [Navigation Hub](../reference/navigation/README.md) | Full repository navigation | Centralize navigation | Navigation hub | No |
165
-
166
- ---
167
-
168
- <div align="center">
169
- <sub>Evolith — Enterprise Architecture Platform | Rulesets Hub</sub>
170
- </div>
@@ -1,41 +0,0 @@
1
- # Anti-Corruption Layer (ACL) Rules — Index
2
-
3
- > **Navegación Bilingüe:** [English Version](./README.md)
4
-
5
- ## Overview
6
-
7
- The Anti-Corruption Layer ruleset governs all integrations with external systems (Jira, Trello, Linear, GitHub, Confluence, etc.). ACLs normalize and validate external data against Evolith Core artifacts, preventing external chaos from contaminating governance.
8
-
9
- ## Files
10
-
11
- | File | Description |
12
- |------|-------------|
13
- | `anti-corruption-layer.rules.json` | Machine-readable ACL rules (EN) |
14
- | `anti-corruption-layer.rules.es.json` | Machine-readable ACL rules (ES) |
15
-
16
- ## Principles
17
-
18
- | ID | Principle | Severity | Blocking |
19
- |----|-----------|----------|----------|
20
- | **ACL-01** | Schema Validation Before Ingestion | MUST | Yes |
21
- | **ACL-02** | Transformation Traceability | MUST | Yes |
22
- | **ACL-03** | Reject Non-Compliant Data | MUST | Yes |
23
- | **ACL-04** | ACL Version Synchronization with Core | MUST | Yes |
24
- | **ACL-05** | Explicit Contract Required | SHOULD | No |
25
- | **ACL-06** | Isolate External Dependencies | MUST | Yes |
26
-
27
- ## Key Definitions
28
-
29
- **Anti-Corruption Layer (ACL):** Integration layer that normalizes and validates external data against Core schemas. Acts as a protective barrier between external system chaos and Evolith governance.
30
-
31
- **External System:** Any tool outside Evolith Core that provides data to satellite products (Jira, Trello, Linear, GitHub, Confluence, spreadsheets, etc.)
32
-
33
- **Transformation Traceability:** Audit trail from external entity to Core entity showing what transformation was applied and why.
34
-
35
- ## Reference
36
-
37
- - [Evolith Product Vision Master — Section 3.2 ACLs](../../reference/product-suite/vision/evolith-product-vision-master.es.md)
38
- - [Evolith Core Inheritance Rules](../governance/inheritance.rules.json)
39
-
40
- ---
41
- [Back to Rulesets Hub](../README.es.md)
@@ -1,41 +0,0 @@
1
- # Anti-Corruption Layer (ACL) Rules — Index
2
-
3
- > **Bilingual Navigation:** [Spanish Version](./README.es.md)
4
-
5
- ## Overview
6
-
7
- The Anti-Corruption Layer ruleset governs all integrations with external systems (Jira, Trello, Linear, GitHub, Confluence, etc.). ACLs normalize and validate external data against Evolith Core artifacts, preventing external chaos from contaminating governance.
8
-
9
- ## Files
10
-
11
- | File | Description |
12
- |------|-------------|
13
- | `anti-corruption-layer.rules.json` | Machine-readable ACL rules (EN) |
14
- | `anti-corruption-layer.rules.es.json` | Machine-readable ACL rules (ES) |
15
-
16
- ## Principles
17
-
18
- | ID | Principle | Severity | Blocking |
19
- |----|-----------|----------|----------|
20
- | **ACL-01** | Schema Validation Before Ingestion | MUST | Yes |
21
- | **ACL-02** | Transformation Traceability | MUST | Yes |
22
- | **ACL-03** | Reject Non-Compliant Data | MUST | Yes |
23
- | **ACL-04** | ACL Version Synchronization with Core | MUST | Yes |
24
- | **ACL-05** | Explicit Contract Required | SHOULD | No |
25
- | **ACL-06** | Isolate External Dependencies | MUST | Yes |
26
-
27
- ## Key Definitions
28
-
29
- **Anti-Corruption Layer (ACL):** Integration layer that normalizes and validates external data against Core schemas. Acts as a protective barrier between external system chaos and Evolith governance.
30
-
31
- **External System:** Any tool outside Evolith Core that provides data to satellite products (Jira, Trello, Linear, GitHub, Confluence, spreadsheets, etc.)
32
-
33
- **Transformation Traceability:** Audit trail from external entity to Core entity showing what transformation was applied and why.
34
-
35
- ## Reference
36
-
37
- - [Evolith Product Vision Master — Section 3.2 ACLs](../../reference/product-suite/vision/evolith-product-vision-master.md)
38
- - [Evolith Core Inheritance Rules](../governance/inheritance.rules.json)
39
-
40
- ---
41
- [Back to Rulesets Hub](../README.md)