@evolith/core-domain 1.0.1 → 1.0.2

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 (501) hide show
  1. package/dist/domain/services/default-workflow-definition.js +4 -1
  2. package/dist/domain/services/default-workflow-definition.js.map +1 -1
  3. package/dist/gates/decision/gate-decision.js.map +1 -1
  4. package/package.json +1 -2
  5. package/rulesets/README.es.md +0 -170
  6. package/rulesets/README.md +0 -170
  7. package/rulesets/acl/README.es.md +0 -41
  8. package/rulesets/acl/README.md +0 -41
  9. package/rulesets/acl/anti-corruption-layer.rules.es.json +0 -99
  10. package/rulesets/acl/anti-corruption-layer.rules.json +0 -99
  11. package/rulesets/adr/ADR_COVERAGE.es.md +0 -133
  12. package/rulesets/adr/ADR_COVERAGE.md +0 -133
  13. package/rulesets/adr/README.es.md +0 -17
  14. package/rulesets/adr/README.md +0 -17
  15. package/rulesets/adr/adr-0002-hexagonal-architecture.rules.json +0 -103
  16. package/rulesets/adr/adr-0005-cicd-quality-gates.rules.json +0 -102
  17. package/rulesets/adr/adr-0010-multi-tenancy.rules.json +0 -129
  18. package/rulesets/adr/adr-0018-testing-pyramid.rules.json +0 -115
  19. package/rulesets/adr/adr-0032-protocol-selection.rules.json +0 -134
  20. package/rulesets/adr/adr-0040-multi-runtime.rules.json +0 -131
  21. package/rulesets/adr/adr-0050-gitflow-branching.rules.json +0 -176
  22. package/rulesets/adr/generated/adr-0001-monorepo-orchestration-principle.rules.json +0 -29
  23. package/rulesets/adr/generated/adr-0006-microservices-transition-via-sidecar-pattern.rules.json +0 -29
  24. package/rulesets/adr/generated/adr-0009-strict-dependency-pinning-and-automated-vulnerability-manage.rules.json +0 -29
  25. package/rulesets/adr/generated/adr-0011-fault-tolerance-and-resiliency-patterns.rules.json +0 -29
  26. package/rulesets/adr/generated/adr-0013-cloud-infrastructure-topology-and-disaster-recovery-dr.rules.json +0 -28
  27. package/rulesets/adr/generated/adr-0014-multi-layer-distributed-caching-strategy.rules.json +0 -29
  28. package/rulesets/adr/generated/adr-0015-event-driven-architecture-eda-for-intra-domain-communication.rules.json +0 -29
  29. package/rulesets/adr/generated/adr-0016-immutable-business-audit-trail-and-change-tracking.rules.json +0 -29
  30. package/rulesets/adr/generated/adr-0017-feature-flagging-strategy-for-progressive-delivery.rules.json +0 -28
  31. package/rulesets/adr/generated/adr-0019-tactical-design-patterns-for-future-proofing.rules.json +0 -29
  32. package/rulesets/adr/generated/adr-0020-identity-provider-abstraction-strategy.rules.json +0 -28
  33. package/rulesets/adr/generated/adr-0024-centralized-configuration-feature-platform.rules.json +0 -28
  34. package/rulesets/adr/generated/adr-0025-feature-flag-provider-abstraction-strategy.rules.json +0 -29
  35. package/rulesets/adr/generated/adr-0028-self-hosted-open-source-hybrid-infrastructure.rules.json +0 -29
  36. package/rulesets/adr/generated/adr-0030-two-tier-distributed-gateway-model.rules.json +0 -28
  37. package/rulesets/adr/generated/adr-0031-schema-per-bounded-context-and-domain-event-catalog.rules.json +0 -29
  38. package/rulesets/adr/generated/adr-0033-transactional-outbox-pattern-for-async-messaging.rules.json +0 -28
  39. package/rulesets/adr/generated/adr-0034-cqrs-pattern-application-matrix.rules.json +0 -29
  40. package/rulesets/adr/generated/adr-0035-distributed-saga-pattern-implementation-strategy.rules.json +0 -29
  41. package/rulesets/adr/generated/adr-0036-message-bus-delivery-flow-control-strategy.rules.json +0 -29
  42. package/rulesets/adr/generated/adr-0037-enterprise-performance-concurrency-chaos-verification-strate.rules.json +0 -28
  43. package/rulesets/adr/generated/adr-0039-deployment-topology-abstraction-environment-switcher.rules.json +0 -29
  44. package/rulesets/adr/generated/adr-0041-dual-engine-policy-evaluation-native-opa.rules.json +0 -28
  45. package/rulesets/adr/generated/adr-0044-configurable-security-persistence-strategy-agnosticism-vs-na.rules.json +0 -29
  46. package/rulesets/adr/generated/adr-0045-microservice-extraction-readiness-criteria.rules.json +0 -29
  47. package/rulesets/adr/generated/adr-0046-unified-traceability-via-w3c-tracecontext.rules.json +0 -29
  48. package/rulesets/adr/generated/adr-0047-progressive-architecture-evolution-framework-modular-monolit.rules.json +0 -29
  49. package/rulesets/adr/generated/adr-0048-enterprise-taxonomy-standardization-and-reference-layout.rules.json +0 -28
  50. package/rulesets/adr/generated/adr-0049-naming-semantics-clean-code-policy-e2e-and-global.rules.json +0 -29
  51. package/rulesets/adr/generated/adr-0051-enterprise-database-engine-selection-strategy.rules.json +0 -29
  52. package/rulesets/adr/generated/adr-0052-unit-testing-isolation-strategy-mocks-vs-stubs.rules.json +0 -29
  53. package/rulesets/adr/generated/adr-0053-integration-and-e2e-testing-strategy.rules.json +0 -29
  54. package/rulesets/adr/generated/adr-0054-database-design-and-normalization-standards.rules.json +0 -29
  55. package/rulesets/adr/generated/adr-0055-microfrontends-architecture-strategy.rules.json +0 -28
  56. package/rulesets/adr/generated/adr-0056-enterprise-naming-design-conventions-multi-language-multi-pl.rules.json +0 -29
  57. package/rulesets/adr/generated/adr-0057-architecture-intelligence-catalog.rules.json +0 -27
  58. package/rulesets/adr/generated/adr-0058-ai-consumable-architecture-knowledge.rules.json +0 -27
  59. package/rulesets/adr/generated/adr-0067-modular-monolith-persistence-boundaries.rules.json +0 -28
  60. package/rulesets/adr/generated/adr-0068-documentation-release-gitflow.rules.json +0 -29
  61. package/rulesets/adr/generated/adr-0069-ai-agent-context-protocol-integration.rules.json +0 -28
  62. package/rulesets/adr/generated/adr-0070-lean-root-repository-taxonomy.rules.json +0 -29
  63. package/rulesets/adr/generated/adr-0071-domain-layer-base-class-and-inheritance-strategy.rules.json +0 -29
  64. package/rulesets/adr/generated/adr-0072-utc-date-storage-browser-timezone-detection-and-language-res.rules.json +0 -29
  65. package/rulesets/adr/generated/adr-0073-unified-cli-mcp-output-contract-and-gate-evidence-schema.rules.json +0 -29
  66. package/rulesets/adr/generated/adr-0074-evolith-core-api-native-exposure-layer.rules.json +0 -29
  67. package/rulesets/adr/generated/adr-0075-core-api-authentication-strategy.rules.json +0 -28
  68. package/rulesets/adr/generated/adr-0076-domain-oriented-microservice-architecture-doma.rules.json +0 -28
  69. package/rulesets/adr/generated/adr-0077-masstransit-v9-commercial-pivot-stay-on-v8-monitor-opentrans.rules.json +0 -28
  70. package/rulesets/adr/generated/adr-0078-domain-financial-separation-governance.rules.json +0 -29
  71. package/rulesets/adr/generated/adr-0079-multi-topology-reference-corpus-and-topology-manifest-contra.rules.json +0 -29
  72. package/rulesets/adr/generated/adr-0080-remote-repository-reference-contract.rules.json +0 -29
  73. package/rulesets/adr/generated/adr-0081-agentic-ai-sandbox-isolation-boundary.rules.json +0 -29
  74. package/rulesets/adr/generated/adr-0082-agentic-ai-prompt-context-and-tool-trust-boundary.rules.json +0 -28
  75. package/rulesets/adr/generated/adr-0083-agentic-ai-action-authorization-and-audit.rules.json +0 -29
  76. package/rulesets/adr/generated/adr-0084-data-mesh-and-data-as-a-product.rules.json +0 -29
  77. package/rulesets/adr/generated/adr-0085-agnostic-opa-wasm-distribution-architecture.rules.json +0 -28
  78. package/rulesets/adr/generated/adr-0086-agentic-ai-telemetry-cost-control-standard.rules.json +0 -27
  79. package/rulesets/adr/generated/adr-0087-attribute-based-access-control-abac-for-agentic-tool-executi.rules.json +0 -29
  80. package/rulesets/adr/generated/adr-0088-sovereign-identity-for-agentic-ai.rules.json +0 -29
  81. package/rulesets/adr/generated/adr-0089-event-driven-agentic-workflow-pattern.rules.json +0 -28
  82. package/rulesets/adr/generated/adr-0090-rag-knowledge-governance-standard.rules.json +0 -29
  83. package/rulesets/adr/generated/adr-0091-workload-identity-token-rotation-standard.rules.json +0 -29
  84. package/rulesets/adr/generated/adr-0092-agent-infinite-loop-prevention-and-circuit-breaker-rules.rules.json +0 -29
  85. package/rulesets/adr/generated/adr-0093-concurrency-control-and-resource-locking-standard-for-mcp-to.rules.json +0 -29
  86. package/rulesets/adr/generated/adr-0094-multi-agent-handoff-and-task-delegation-standards.rules.json +0 -29
  87. package/rulesets/adr/generated/adr-0095-serverless-architecture-governance.rules.json +0 -29
  88. package/rulesets/adr/generated/adr-0096-edge-computing-architecture-governance.rules.json +0 -29
  89. package/rulesets/adr/generated/adr-0097-knowledge-lifecycle-governance-standard.rules.json +0 -29
  90. package/rulesets/adr/generated/adr-0098-rest-uri-versioning-and-deprecation-policy.rules.json +0 -29
  91. package/rulesets/adr/generated/adr-0099-opa-bundle-distribution-via-s3-minio.rules.json +0 -27
  92. package/rulesets/adr/generated/adr-ai-augmented-0001-harness-engineering-for-ai-augmented-development.rules.json +0 -29
  93. package/rulesets/adr/generated/adr-ai-augmented-0002-mcp-integration-protocol-for-agent-tool-invocation.rules.json +0 -29
  94. package/rulesets/adr/generated/adr-ai-augmented-0003-model-selection-governance-for-ai-augmented-workflows.rules.json +0 -29
  95. package/rulesets/adr/generated/adr-ai-augmented-0004-agents-md-as-mandatory-repository-artifact.rules.json +0 -29
  96. package/rulesets/adr/generated/adr-ai-augmented-0005-human-in-the-loop-policy-for-autonomous-agent-operations.rules.json +0 -29
  97. package/rulesets/adr/generated/adr-android-0042-canonical-android-native-mobile-architecture.rules.json +0 -29
  98. package/rulesets/adr/generated/adr-dotnet-0041-canonical-net-c-backend-architecture.rules.json +0 -29
  99. package/rulesets/adr/generated/adr-dotnet-0060-net-multi-tenancy-dual-layer-strategy-ef-core-sql-server.rules.json +0 -29
  100. package/rulesets/adr/generated/adr-dotnet-0061-transactional-event-lifecycle-in-ef-core.rules.json +0 -28
  101. package/rulesets/adr/generated/adr-dotnet-0062-net-immutable-audit-trail-via-ddl-triggers-delta-capture.rules.json +0 -29
  102. package/rulesets/adr/generated/adr-dotnet-0063-b2b-request-idempotency-middleware-in-asp-net-core.rules.json +0 -28
  103. package/rulesets/adr/generated/adr-dotnet-0064-net-request-scope-observability-context-propagation.rules.json +0 -29
  104. package/rulesets/adr/generated/adr-dotnet-0065-net-pii-safe-structured-logging-pipeline-serilog.rules.json +0 -29
  105. package/rulesets/adr/generated/adr-dotnet-0066-net-lightweight-http-idempotency-via-imemorycache-idistribut.rules.json +0 -28
  106. package/rulesets/adr/generated/adr-dotnet-0069-net-grpc-service-setup-protobuf-contracts.rules.json +0 -29
  107. package/rulesets/adr/generated/adr-dotnet-0070-net-api-endpoint-strategy.rules.json +0 -29
  108. package/rulesets/adr/generated/adr-dotnet-0071-net-data-access-strategy-ef-core-as-default-orm-dapper-for-o.rules.json +0 -27
  109. package/rulesets/adr/generated/adr-dotnet-0072-net-aop-cross-cutting-concern-strategy-dispatchproxy-over-pi.rules.json +0 -29
  110. package/rulesets/adr/generated/adr-nodejs-0003-strict-typescript-standards.rules.json +0 -29
  111. package/rulesets/adr/generated/adr-nodejs-0004-frontend-offline-resilience.rules.json +0 -28
  112. package/rulesets/adr/generated/adr-nodejs-0007-observability-with-opentelemetry-loki-and-jaeger.rules.json +0 -29
  113. package/rulesets/adr/generated/adr-nodejs-0008-progressive-multi-module-evolution-with-api-gateway-and-bff-.rules.json +0 -28
  114. package/rulesets/adr/generated/adr-nodejs-0012-advanced-authorization-rbac-abac-strategy.rules.json +0 -28
  115. package/rulesets/adr/generated/adr-nodejs-0021-high-performance-authentication-graph-compilation.rules.json +0 -28
  116. package/rulesets/adr/generated/adr-nodejs-0022-contextual-authentication-and-pluggable-output-projections.rules.json +0 -28
  117. package/rulesets/adr/generated/adr-nodejs-0023-centralized-authorization-core-strategy.rules.json +0 -28
  118. package/rulesets/adr/generated/adr-nodejs-0026-adaptive-mfa-and-passwordless-platform.rules.json +0 -28
  119. package/rulesets/adr/generated/adr-nodejs-0027-dual-protocol-api-strategy-rest-grpc.rules.json +0 -28
  120. package/rulesets/adr/generated/adr-nodejs-0029-adoption-of-tactical-ddd-primitives-library.rules.json +0 -29
  121. package/rulesets/adr/generated/adr-nodejs-0038-enterprise-error-handling-result-pattern-strategy.rules.json +0 -29
  122. package/rulesets/adr/generated/adr-nodejs-0043-data-access-and-orm-strategy-for-node-js.rules.json +0 -29
  123. package/rulesets/adr/generated/adr-nodejs-0044-frontend-clean-architecture-layer-boundaries-react.rules.json +0 -29
  124. package/rulesets/adr/generated/adr-nodejs-0045-frontend-state-management-zustand-tanstack-query-dual-strate.rules.json +0 -29
  125. package/rulesets/adr/generated/adr-nodejs-0046-prohibition-of-raw-technical-identifiers-in-user-interfaces.rules.json +0 -29
  126. package/rulesets/adr/generated/adr-nodejs-0047-actionable-user-error-contract-and-correlated-diagnostics.rules.json +0 -29
  127. package/rulesets/adr/generated/adr-nodejs-0048-feature-flag-system-scope-and-structured-criteria-model.rules.json +0 -29
  128. package/rulesets/adr/generated/adr-nodejs-0074-monorepo-orchestration-with-nx.rules.json +0 -29
  129. package/rulesets/adr/generated/adr-nodejs-0075-application-gateway-bff-with-nestjs.rules.json +0 -29
  130. package/rulesets/architecture/README.es.md +0 -21
  131. package/rulesets/architecture/README.md +0 -21
  132. package/rulesets/architecture/opa/progressive-axis.rego +0 -50
  133. package/rulesets/cli/README.es.md +0 -17
  134. package/rulesets/cli/README.md +0 -17
  135. package/rulesets/cli/core-parity.rules.json +0 -61
  136. package/rulesets/cli/release-readiness.rules.json +0 -77
  137. package/rulesets/compliance-baseline/README.es.md +0 -26
  138. package/rulesets/compliance-baseline/README.md +0 -26
  139. package/rulesets/compliance-baseline/compliance-baseline.rules.json +0 -81
  140. package/rulesets/contracts/README.es.md +0 -19
  141. package/rulesets/contracts/README.md +0 -19
  142. package/rulesets/contracts/evolith-machine-contracts.json +0 -29
  143. package/rulesets/contracts/fixtures/gate-evidence.success.json +0 -10
  144. package/rulesets/contracts/fixtures/output-envelope.success.json +0 -23
  145. package/rulesets/cross-cutting/README.es.md +0 -14
  146. package/rulesets/cross-cutting/README.md +0 -14
  147. package/rulesets/cross-cutting/compliance-baseline.rules.json +0 -81
  148. package/rulesets/cross-cutting/definition-of-done.rules.json +0 -135
  149. package/rulesets/cross-cutting/engineering-manifesto.rules.json +0 -145
  150. package/rulesets/cross-cutting/repository-taxonomy.rules.json +0 -172
  151. package/rulesets/definition-of-done/README.es.md +0 -26
  152. package/rulesets/definition-of-done/README.md +0 -26
  153. package/rulesets/definition-of-done/definition-of-done.rules.json +0 -135
  154. package/rulesets/engineering-manifesto/README.es.md +0 -26
  155. package/rulesets/engineering-manifesto/README.md +0 -26
  156. package/rulesets/engineering-manifesto/engineering-manifesto.rules.json +0 -145
  157. package/rulesets/evidence/README.es.md +0 -12
  158. package/rulesets/evidence/README.md +0 -12
  159. package/rulesets/evidence/evidence-manifest.rules.json +0 -48
  160. package/rulesets/executive-scorecards/executive-scorecards.rules.es.json +0 -213
  161. package/rulesets/executive-scorecards/executive-scorecards.rules.json +0 -213
  162. package/rulesets/governance/README.es.md +0 -13
  163. package/rulesets/governance/README.md +0 -13
  164. package/rulesets/governance/abac-mcp-access.rules.es.json +0 -41
  165. package/rulesets/governance/abac-mcp-access.rules.json +0 -41
  166. package/rulesets/governance/executive-scorecards.rules.es.json +0 -213
  167. package/rulesets/governance/executive-scorecards.rules.json +0 -213
  168. package/rulesets/governance/inheritance.rules.json +0 -115
  169. package/rulesets/governance/knowledge-intake.rules.json +0 -18
  170. package/rulesets/governance/open-core-boundary.rules.es.json +0 -148
  171. package/rulesets/governance/open-core-boundary.rules.json +0 -148
  172. package/rulesets/governance/satellite-contracts.rules.json +0 -183
  173. package/rulesets/infrastructure/helm-enforcement.rules.json +0 -21
  174. package/rulesets/infrastructure/opa/helm-enforcement.rego +0 -25
  175. package/rulesets/infrastructure/opa/helm-enforcement.test.rego +0 -31
  176. package/rulesets/infrastructure/opa/opa-sidecar-bundle.rego +0 -115
  177. package/rulesets/infrastructure/opa/opa-sidecar-bundle.test.rego +0 -66
  178. package/rulesets/infrastructure/opa-sidecar-bundle.rules.json +0 -18
  179. package/rulesets/mcp/README.es.md +0 -12
  180. package/rulesets/mcp/README.md +0 -12
  181. package/rulesets/mcp/protocol-compliance.rules.json +0 -57
  182. package/rulesets/observability/README.es.md +0 -12
  183. package/rulesets/observability/README.md +0 -12
  184. package/rulesets/observability/telemetry-evidence.rules.json +0 -48
  185. package/rulesets/opa/README.es.md +0 -22
  186. package/rulesets/opa/README.md +0 -22
  187. package/rulesets/opa/abac-mcp-tool-access.rego +0 -122
  188. package/rulesets/opa/abac-mcp-tool-access.test.rego +0 -33
  189. package/rulesets/opa/anti-corruption-layer.rego +0 -39
  190. package/rulesets/opa/anti-corruption-layer.test.rego +0 -118
  191. package/rulesets/opa/ci-cd.rego +0 -41
  192. package/rulesets/opa/ci-cd.test.rego +0 -23
  193. package/rulesets/opa/cicd-quality-gates.rego +0 -29
  194. package/rulesets/opa/cicd-quality-gates.test.rego +0 -54
  195. package/rulesets/opa/cli-core-parity.rego +0 -17
  196. package/rulesets/opa/cli-core-parity.test.rego +0 -39
  197. package/rulesets/opa/cli-readiness.rego +0 -32
  198. package/rulesets/opa/cli-readiness.test.rego +0 -23
  199. package/rulesets/opa/cli-release-readiness.rego +0 -21
  200. package/rulesets/opa/cli-release-readiness.test.rego +0 -46
  201. package/rulesets/opa/compliance-baseline.rego +0 -95
  202. package/rulesets/opa/compliance-baseline.test.rego +0 -89
  203. package/rulesets/opa/dod.rego +0 -42
  204. package/rulesets/opa/dod.test.rego +0 -250
  205. package/rulesets/opa/engineering-manifesto.rego +0 -78
  206. package/rulesets/opa/engineering-manifesto.test.rego +0 -133
  207. package/rulesets/opa/evidence.rego +0 -64
  208. package/rulesets/opa/evidence.test.rego +0 -23
  209. package/rulesets/opa/executive-scorecards.rego +0 -41
  210. package/rulesets/opa/executive-scorecards.test.rego +0 -60
  211. package/rulesets/opa/gitflow-branching.rego +0 -41
  212. package/rulesets/opa/gitflow-branching.test.rego +0 -60
  213. package/rulesets/opa/governance.rego +0 -39
  214. package/rulesets/opa/governance.test.rego +0 -23
  215. package/rulesets/opa/hexagonal-architecture.rego +0 -33
  216. package/rulesets/opa/hexagonal-architecture.test.rego +0 -57
  217. package/rulesets/opa/infrastructure/helm-enforcement.rego +0 -33
  218. package/rulesets/opa/infrastructure/opa-sidecar-bundle.rego +0 -42
  219. package/rulesets/opa/knowledge-intake.rego +0 -98
  220. package/rulesets/opa/knowledge-intake.test.rego +0 -50
  221. package/rulesets/opa/main.rego +0 -147
  222. package/rulesets/opa/main_test.rego +0 -149
  223. package/rulesets/opa/mcp.rego +0 -61
  224. package/rulesets/opa/mcp.test.rego +0 -27
  225. package/rulesets/opa/multi-runtime.rego +0 -33
  226. package/rulesets/opa/multi-runtime.test.rego +0 -53
  227. package/rulesets/opa/multi-tenancy.rego +0 -33
  228. package/rulesets/opa/multi-tenancy.test.rego +0 -53
  229. package/rulesets/opa/open-core-boundary.rego +0 -33
  230. package/rulesets/opa/open-core-boundary.test.rego +0 -60
  231. package/rulesets/opa/protocol-selection.rego +0 -29
  232. package/rulesets/opa/protocol-selection.test.rego +0 -46
  233. package/rulesets/opa/rbac/gate-role-enforcement.rego +0 -112
  234. package/rulesets/opa/repository-taxonomy.rego +0 -98
  235. package/rulesets/opa/repository-taxonomy.test.rego +0 -91
  236. package/rulesets/opa/satellite-contracts.rego +0 -42
  237. package/rulesets/opa/satellite-contracts.test.rego +0 -70
  238. package/rulesets/opa/schemas/abac-mcp-tool-access.input.schema.json +0 -21
  239. package/rulesets/opa/schemas/anti-corruption-layer.input.schema.json +0 -25
  240. package/rulesets/opa/schemas/ci-cd.input.schema.json +0 -27
  241. package/rulesets/opa/schemas/cicd-quality-gates.input.schema.json +0 -33
  242. package/rulesets/opa/schemas/cli-core-parity.input.schema.json +0 -30
  243. package/rulesets/opa/schemas/cli-readiness.input.schema.json +0 -28
  244. package/rulesets/opa/schemas/cli-release-readiness.input.schema.json +0 -26
  245. package/rulesets/opa/schemas/compliance-baseline.input.schema.json +0 -25
  246. package/rulesets/opa/schemas/dod.input.schema.json +0 -38
  247. package/rulesets/opa/schemas/engineering-manifesto.input.schema.json +0 -24
  248. package/rulesets/opa/schemas/evidence.input.schema.json +0 -35
  249. package/rulesets/opa/schemas/executive-scorecards.input.schema.json +0 -36
  250. package/rulesets/opa/schemas/gitflow-branching.input.schema.json +0 -36
  251. package/rulesets/opa/schemas/governance.input.schema.json +0 -19
  252. package/rulesets/opa/schemas/hexagonal-architecture.input.schema.json +0 -46
  253. package/rulesets/opa/schemas/knowledge-intake.input.schema.json +0 -57
  254. package/rulesets/opa/schemas/mcp.input.schema.json +0 -38
  255. package/rulesets/opa/schemas/multi-runtime.input.schema.json +0 -27
  256. package/rulesets/opa/schemas/multi-tenancy.input.schema.json +0 -27
  257. package/rulesets/opa/schemas/open-core-boundary.input.schema.json +0 -36
  258. package/rulesets/opa/schemas/protocol-selection.input.schema.json +0 -26
  259. package/rulesets/opa/schemas/repository-taxonomy.input.schema.json +0 -18
  260. package/rulesets/opa/schemas/satellite-contracts.input.schema.json +0 -38
  261. package/rulesets/opa/schemas/taxonomy.input.schema.json +0 -27
  262. package/rulesets/opa/schemas/testing-pyramid.input.schema.json +0 -42
  263. package/rulesets/opa/schemas/version-pinning.input.schema.json +0 -39
  264. package/rulesets/opa/sdlc/coverage.rego +0 -49
  265. package/rulesets/opa/sdlc/coverage.test.rego +0 -29
  266. package/rulesets/opa/sdlc/pyramid-distribution.rego +0 -31
  267. package/rulesets/opa/sdlc/pyramid-distribution.test.rego +0 -33
  268. package/rulesets/opa/taxonomy.rego +0 -51
  269. package/rulesets/opa/taxonomy.test.rego +0 -28
  270. package/rulesets/opa/telemetry-evidence.rego +0 -102
  271. package/rulesets/opa/testing-pyramid.rego +0 -49
  272. package/rulesets/opa/testing-pyramid.test.rego +0 -81
  273. package/rulesets/opa/version-pinning.rego +0 -99
  274. package/rulesets/opa/version-pinning.test.rego +0 -28
  275. package/rulesets/phase-gates/README.es.md +0 -28
  276. package/rulesets/phase-gates/README.md +0 -28
  277. package/rulesets/phase-gates/phase-gates.rules.json +0 -297
  278. package/rulesets/quality-thresholds/README.es.md +0 -28
  279. package/rulesets/quality-thresholds/README.md +0 -28
  280. package/rulesets/quality-thresholds/quality-thresholds.rules.json +0 -96
  281. package/rulesets/repository-taxonomy/README.es.md +0 -26
  282. package/rulesets/repository-taxonomy/README.md +0 -26
  283. package/rulesets/repository-taxonomy/repository-taxonomy.rules.json +0 -172
  284. package/rulesets/satellite-contracts/README.es.md +0 -27
  285. package/rulesets/satellite-contracts/README.md +0 -27
  286. package/rulesets/satellite-contracts/satellite-contracts.rules.json +0 -183
  287. package/rulesets/schema/README.es.md +0 -39
  288. package/rulesets/schema/README.md +0 -39
  289. package/rulesets/schema/adr.schema.json +0 -138
  290. package/rulesets/schema/agile-backlog.schema.json +0 -91
  291. package/rulesets/schema/ballpark-estimation.schema.json +0 -109
  292. package/rulesets/schema/build-vs-compose.schema.json +0 -98
  293. package/rulesets/schema/cli-impact-analysis.schema.json +0 -114
  294. package/rulesets/schema/discovery-canvas.schema.json +0 -92
  295. package/rulesets/schema/evolith-user-story.schema.json +0 -105
  296. package/rulesets/schema/evolith-yaml.schema.json +0 -191
  297. package/rulesets/schema/functional-story.schema.json +0 -111
  298. package/rulesets/schema/gate-evidence.schema.json +0 -85
  299. package/rulesets/schema/integration-evidence.schema.json +0 -47
  300. package/rulesets/schema/knowledge-intake.schema.json +0 -67
  301. package/rulesets/schema/knowledge-projection.schema.json +0 -24
  302. package/rulesets/schema/maturity-evidence.schema.json +0 -59
  303. package/rulesets/schema/observability-validation.schema.json +0 -85
  304. package/rulesets/schema/on-call-handoff.schema.json +0 -91
  305. package/rulesets/schema/output-envelope.schema.json +0 -102
  306. package/rulesets/schema/prd.schema.json +0 -117
  307. package/rulesets/schema/release-notes.schema.json +0 -138
  308. package/rulesets/schema/rollback-rehearsal.schema.json +0 -73
  309. package/rulesets/schema/ruleset-sdlc.schema.json +0 -59
  310. package/rulesets/schema/ruleset-standard.schema.json +0 -73
  311. package/rulesets/schema/security-scan-report.schema.json +0 -79
  312. package/rulesets/schema/source-registry.schema.json +0 -51
  313. package/rulesets/schema/technical-feasibility.schema.json +0 -66
  314. package/rulesets/schema/technical-story.schema.json +0 -112
  315. package/rulesets/schema/test-summary-report.schema.json +0 -158
  316. package/rulesets/schema/topology-composition.schema.json +0 -43
  317. package/rulesets/schema/topology-manifest.schema.json +0 -421
  318. package/rulesets/sdlc/README.es.md +0 -12
  319. package/rulesets/sdlc/README.md +0 -12
  320. package/rulesets/sdlc/default-workflow.yaml +0 -73
  321. package/rulesets/sdlc/dependency-pinning.rules.json +0 -183
  322. package/rulesets/sdlc/phase-gates.rules.json +0 -297
  323. package/rulesets/sdlc/quality-thresholds.rules.json +0 -96
  324. package/rulesets/topologies/README.es.md +0 -42
  325. package/rulesets/topologies/README.md +0 -42
  326. package/rulesets/topologies/agentic-ai/README.es.md +0 -142
  327. package/rulesets/topologies/agentic-ai/README.md +0 -142
  328. package/rulesets/topologies/agentic-ai/adoption.es.md +0 -37
  329. package/rulesets/topologies/agentic-ai/adoption.md +0 -37
  330. package/rulesets/topologies/agentic-ai/agent.config.schema.json +0 -100
  331. package/rulesets/topologies/agentic-ai/agentic-ai.rego +0 -46
  332. package/rulesets/topologies/agentic-ai/agentic-ai.rules.json +0 -109
  333. package/rulesets/topologies/agentic-ai/agentic-ai.test.rego +0 -68
  334. package/rulesets/topologies/agentic-ai/agentic-ai.wasm +0 -0
  335. package/rulesets/topologies/agentic-ai/cli/cli-flows.es.md +0 -35
  336. package/rulesets/topologies/agentic-ai/cli/cli-flows.md +0 -45
  337. package/rulesets/topologies/agentic-ai/evidence.es.md +0 -25
  338. package/rulesets/topologies/agentic-ai/evidence.md +0 -25
  339. package/rulesets/topologies/agentic-ai/evolution.es.md +0 -26
  340. package/rulesets/topologies/agentic-ai/evolution.md +0 -26
  341. package/rulesets/topologies/agentic-ai/fixtures/invalid-agent.config.json +0 -48
  342. package/rulesets/topologies/agentic-ai/fixtures/valid-agent.config.json +0 -48
  343. package/rulesets/topologies/agentic-ai/maturity.es.md +0 -33
  344. package/rulesets/topologies/agentic-ai/maturity.md +0 -33
  345. package/rulesets/topologies/agentic-ai/mcp/mcp-manifest.json +0 -100
  346. package/rulesets/topologies/agentic-ai/openapi/openapi.yaml +0 -187
  347. package/rulesets/topologies/agentic-ai/operations.es.md +0 -32
  348. package/rulesets/topologies/agentic-ai/operations.md +0 -32
  349. package/rulesets/topologies/agentic-ai/parity-fixtures/compliant.json +0 -18
  350. package/rulesets/topologies/agentic-ai/parity-fixtures/violation.json +0 -22
  351. package/rulesets/topologies/agentic-ai/patterns.es.md +0 -32
  352. package/rulesets/topologies/agentic-ai/patterns.md +0 -32
  353. package/rulesets/topologies/agentic-ai/resilience.es.md +0 -26
  354. package/rulesets/topologies/agentic-ai/resilience.md +0 -26
  355. package/rulesets/topologies/agentic-ai/runbooks.es.md +0 -48
  356. package/rulesets/topologies/agentic-ai/runbooks.md +0 -48
  357. package/rulesets/topologies/agentic-ai/security.es.md +0 -26
  358. package/rulesets/topologies/agentic-ai/security.md +0 -26
  359. package/rulesets/topologies/agentic-ai/topology.manifest.json +0 -127
  360. package/rulesets/topologies/data-mesh/README.es.md +0 -69
  361. package/rulesets/topologies/data-mesh/README.md +0 -69
  362. package/rulesets/topologies/data-mesh/adoption.es.md +0 -95
  363. package/rulesets/topologies/data-mesh/adoption.md +0 -95
  364. package/rulesets/topologies/data-mesh/cli/cli-flows.es.md +0 -41
  365. package/rulesets/topologies/data-mesh/cli/cli-flows.md +0 -53
  366. package/rulesets/topologies/data-mesh/data-mesh.rego +0 -11
  367. package/rulesets/topologies/data-mesh/data-mesh.rules.json +0 -100
  368. package/rulesets/topologies/data-mesh/data-mesh.test.rego +0 -107
  369. package/rulesets/topologies/data-mesh/data-mesh.wasm +0 -0
  370. package/rulesets/topologies/data-mesh/evidence.es.md +0 -111
  371. package/rulesets/topologies/data-mesh/evidence.md +0 -111
  372. package/rulesets/topologies/data-mesh/evolution.es.md +0 -67
  373. package/rulesets/topologies/data-mesh/evolution.md +0 -67
  374. package/rulesets/topologies/data-mesh/fixtures/invalid.topology.config.json +0 -12
  375. package/rulesets/topologies/data-mesh/fixtures/valid.topology.config.json +0 -12
  376. package/rulesets/topologies/data-mesh/maturity.es.md +0 -36
  377. package/rulesets/topologies/data-mesh/maturity.md +0 -36
  378. package/rulesets/topologies/data-mesh/mcp/mcp-manifest.json +0 -68
  379. package/rulesets/topologies/data-mesh/openapi/openapi.yaml +0 -186
  380. package/rulesets/topologies/data-mesh/operations.es.md +0 -63
  381. package/rulesets/topologies/data-mesh/operations.md +0 -63
  382. package/rulesets/topologies/data-mesh/parity-fixtures/compliant.json +0 -18
  383. package/rulesets/topologies/data-mesh/parity-fixtures/violation.json +0 -21
  384. package/rulesets/topologies/data-mesh/patterns.es.md +0 -67
  385. package/rulesets/topologies/data-mesh/patterns.md +0 -67
  386. package/rulesets/topologies/data-mesh/resilience.es.md +0 -64
  387. package/rulesets/topologies/data-mesh/resilience.md +0 -64
  388. package/rulesets/topologies/data-mesh/runbooks.es.md +0 -147
  389. package/rulesets/topologies/data-mesh/runbooks.md +0 -147
  390. package/rulesets/topologies/data-mesh/security.es.md +0 -66
  391. package/rulesets/topologies/data-mesh/security.md +0 -66
  392. package/rulesets/topologies/data-mesh/topology.config.schema.json +0 -30
  393. package/rulesets/topologies/data-mesh/topology.manifest.json +0 -107
  394. package/rulesets/topologies/edge-computing/README.es.md +0 -81
  395. package/rulesets/topologies/edge-computing/README.md +0 -81
  396. package/rulesets/topologies/edge-computing/adoption.es.md +0 -268
  397. package/rulesets/topologies/edge-computing/adoption.md +0 -268
  398. package/rulesets/topologies/edge-computing/cli/cli-flows.es.md +0 -41
  399. package/rulesets/topologies/edge-computing/cli/cli-flows.md +0 -53
  400. package/rulesets/topologies/edge-computing/edge-computing.rego +0 -41
  401. package/rulesets/topologies/edge-computing/edge-computing.rules.json +0 -50
  402. package/rulesets/topologies/edge-computing/edge-computing.test.rego +0 -33
  403. package/rulesets/topologies/edge-computing/edge-computing.wasm +0 -0
  404. package/rulesets/topologies/edge-computing/evidence.es.md +0 -263
  405. package/rulesets/topologies/edge-computing/evidence.md +0 -263
  406. package/rulesets/topologies/edge-computing/evolution.es.md +0 -257
  407. package/rulesets/topologies/edge-computing/evolution.md +0 -257
  408. package/rulesets/topologies/edge-computing/fixtures/invalid.topology.config.json +0 -6
  409. package/rulesets/topologies/edge-computing/fixtures/valid.topology.config.json +0 -6
  410. package/rulesets/topologies/edge-computing/maturity.es.md +0 -36
  411. package/rulesets/topologies/edge-computing/maturity.md +0 -36
  412. package/rulesets/topologies/edge-computing/mcp/mcp-manifest.json +0 -72
  413. package/rulesets/topologies/edge-computing/openapi/openapi.yaml +0 -187
  414. package/rulesets/topologies/edge-computing/operations.es.md +0 -148
  415. package/rulesets/topologies/edge-computing/operations.md +0 -148
  416. package/rulesets/topologies/edge-computing/parity-fixtures/compliant.json +0 -12
  417. package/rulesets/topologies/edge-computing/parity-fixtures/violation.json +0 -13
  418. package/rulesets/topologies/edge-computing/patterns.es.md +0 -291
  419. package/rulesets/topologies/edge-computing/patterns.md +0 -290
  420. package/rulesets/topologies/edge-computing/resilience.es.md +0 -232
  421. package/rulesets/topologies/edge-computing/resilience.md +0 -229
  422. package/rulesets/topologies/edge-computing/runbooks.es.md +0 -405
  423. package/rulesets/topologies/edge-computing/runbooks.md +0 -405
  424. package/rulesets/topologies/edge-computing/security.es.md +0 -218
  425. package/rulesets/topologies/edge-computing/security.md +0 -218
  426. package/rulesets/topologies/edge-computing/topology.config.schema.json +0 -13
  427. package/rulesets/topologies/edge-computing/topology.manifest.json +0 -113
  428. package/rulesets/topologies/event-driven/README.es.md +0 -71
  429. package/rulesets/topologies/event-driven/README.md +0 -71
  430. package/rulesets/topologies/event-driven/adoption.es.md +0 -67
  431. package/rulesets/topologies/event-driven/adoption.md +0 -67
  432. package/rulesets/topologies/event-driven/cli/cli-flows.es.md +0 -41
  433. package/rulesets/topologies/event-driven/cli/cli-flows.md +0 -53
  434. package/rulesets/topologies/event-driven/event-driven.rego +0 -11
  435. package/rulesets/topologies/event-driven/event-driven.rules.json +0 -100
  436. package/rulesets/topologies/event-driven/event-driven.test.rego +0 -107
  437. package/rulesets/topologies/event-driven/event-driven.wasm +0 -0
  438. package/rulesets/topologies/event-driven/evidence.es.md +0 -69
  439. package/rulesets/topologies/event-driven/evidence.md +0 -69
  440. package/rulesets/topologies/event-driven/evolution.es.md +0 -59
  441. package/rulesets/topologies/event-driven/evolution.md +0 -59
  442. package/rulesets/topologies/event-driven/fixtures/invalid.topology.config.json +0 -12
  443. package/rulesets/topologies/event-driven/fixtures/valid.topology.config.json +0 -12
  444. package/rulesets/topologies/event-driven/maturity.es.md +0 -36
  445. package/rulesets/topologies/event-driven/maturity.md +0 -36
  446. package/rulesets/topologies/event-driven/mcp/mcp-manifest.json +0 -68
  447. package/rulesets/topologies/event-driven/openapi/openapi.yaml +0 -186
  448. package/rulesets/topologies/event-driven/operations.es.md +0 -67
  449. package/rulesets/topologies/event-driven/operations.md +0 -67
  450. package/rulesets/topologies/event-driven/parity-fixtures/compliant.json +0 -18
  451. package/rulesets/topologies/event-driven/parity-fixtures/violation.json +0 -21
  452. package/rulesets/topologies/event-driven/patterns.es.md +0 -68
  453. package/rulesets/topologies/event-driven/patterns.md +0 -68
  454. package/rulesets/topologies/event-driven/resilience.es.md +0 -65
  455. package/rulesets/topologies/event-driven/resilience.md +0 -65
  456. package/rulesets/topologies/event-driven/runbooks.es.md +0 -79
  457. package/rulesets/topologies/event-driven/runbooks.md +0 -79
  458. package/rulesets/topologies/event-driven/security.es.md +0 -59
  459. package/rulesets/topologies/event-driven/security.md +0 -59
  460. package/rulesets/topologies/event-driven/topology.config.schema.json +0 -30
  461. package/rulesets/topologies/event-driven/topology.manifest.json +0 -109
  462. package/rulesets/topologies/progressive-axis/distributed-modules/distributed-modules.rules.es.json +0 -111
  463. package/rulesets/topologies/progressive-axis/distributed-modules/distributed-modules.rules.json +0 -111
  464. package/rulesets/topologies/progressive-axis/microservices/microservices.rules.es.json +0 -106
  465. package/rulesets/topologies/progressive-axis/microservices/microservices.rules.json +0 -106
  466. package/rulesets/topologies/progressive-axis/modular-monolith/modular-monolith.rules.es.json +0 -148
  467. package/rulesets/topologies/progressive-axis/modular-monolith/modular-monolith.rules.json +0 -148
  468. package/rulesets/topologies/serverless/README.es.md +0 -74
  469. package/rulesets/topologies/serverless/README.md +0 -74
  470. package/rulesets/topologies/serverless/adoption.es.md +0 -50
  471. package/rulesets/topologies/serverless/adoption.md +0 -50
  472. package/rulesets/topologies/serverless/cli/cli-flows.es.md +0 -41
  473. package/rulesets/topologies/serverless/cli/cli-flows.md +0 -53
  474. package/rulesets/topologies/serverless/evidence.es.md +0 -66
  475. package/rulesets/topologies/serverless/evidence.md +0 -66
  476. package/rulesets/topologies/serverless/evolution.es.md +0 -36
  477. package/rulesets/topologies/serverless/evolution.md +0 -36
  478. package/rulesets/topologies/serverless/fixtures/invalid.topology.config.json +0 -6
  479. package/rulesets/topologies/serverless/fixtures/valid.topology.config.json +0 -6
  480. package/rulesets/topologies/serverless/maturity.es.md +0 -36
  481. package/rulesets/topologies/serverless/maturity.md +0 -36
  482. package/rulesets/topologies/serverless/mcp/mcp-manifest.json +0 -72
  483. package/rulesets/topologies/serverless/openapi/openapi.yaml +0 -186
  484. package/rulesets/topologies/serverless/operations.es.md +0 -36
  485. package/rulesets/topologies/serverless/operations.md +0 -36
  486. package/rulesets/topologies/serverless/parity-fixtures/compliant.json +0 -13
  487. package/rulesets/topologies/serverless/parity-fixtures/violation.json +0 -15
  488. package/rulesets/topologies/serverless/patterns.es.md +0 -36
  489. package/rulesets/topologies/serverless/patterns.md +0 -36
  490. package/rulesets/topologies/serverless/resilience.es.md +0 -36
  491. package/rulesets/topologies/serverless/resilience.md +0 -36
  492. package/rulesets/topologies/serverless/runbooks.es.md +0 -68
  493. package/rulesets/topologies/serverless/runbooks.md +0 -68
  494. package/rulesets/topologies/serverless/security.es.md +0 -36
  495. package/rulesets/topologies/serverless/security.md +0 -36
  496. package/rulesets/topologies/serverless/serverless.rego +0 -32
  497. package/rulesets/topologies/serverless/serverless.rules.json +0 -33
  498. package/rulesets/topologies/serverless/serverless.test.rego +0 -28
  499. package/rulesets/topologies/serverless/serverless.wasm +0 -0
  500. package/rulesets/topologies/serverless/topology.config.schema.json +0 -28
  501. package/rulesets/topologies/serverless/topology.manifest.json +0 -114
@@ -1,99 +0,0 @@
1
- package evolith.version_pinning
2
-
3
- # Define a set of violations.
4
- # A violation is an object with a rule `id` and a `message`.
5
- violations[{"id": "DEP-01", "message": msg}] {
6
- # Check satellite package.json
7
- deps := input.satellite.packageJson.dependencies
8
- some pkg
9
- version := deps[pkg]
10
- startswith(version, "^")
11
- msg := sprintf("package.json#dependencies.%v=%v (Caret pinning not allowed)", [pkg, version])
12
- }
13
-
14
- violations[{"id": "DEP-02", "message": msg}] {
15
- deps := input.satellite.packageJson.dependencies
16
- some pkg
17
- version := deps[pkg]
18
- startswith(version, "~")
19
- msg := sprintf("package.json#dependencies.%v=%v (Tilde pinning not allowed)", [pkg, version])
20
- }
21
-
22
- violations[{"id": "DEP-03", "message": msg}] {
23
- deps := input.satellite.packageJson.dependencies
24
- some pkg
25
- version := deps[pkg]
26
- disallowed := {"*", "latest", "x", "X", ""}
27
- disallowed[version]
28
- msg := sprintf("package.json#dependencies.%v=%v (Wildcard/Latest pinning not allowed)", [pkg, version])
29
- }
30
-
31
- # Also check devDependencies
32
- violations[{"id": "DEP-01", "message": msg}] {
33
- deps := input.satellite.packageJson.devDependencies
34
- some pkg
35
- version := deps[pkg]
36
- startswith(version, "^")
37
- msg := sprintf("package.json#devDependencies.%v=%v (Caret pinning not allowed)", [pkg, version])
38
- }
39
-
40
- violations[{"id": "DEP-02", "message": msg}] {
41
- deps := input.satellite.packageJson.devDependencies
42
- some pkg
43
- version := deps[pkg]
44
- startswith(version, "~")
45
- msg := sprintf("package.json#devDependencies.%v=%v (Tilde pinning not allowed)", [pkg, version])
46
- }
47
-
48
- violations[{"id": "DEP-03", "message": msg}] {
49
- deps := input.satellite.packageJson.devDependencies
50
- some pkg
51
- version := deps[pkg]
52
- disallowed := {"*", "latest", "x", "X", ""}
53
- disallowed[version]
54
- msg := sprintf("package.json#devDependencies.%v=%v (Wildcard/Latest pinning not allowed)", [pkg, version])
55
- }
56
-
57
- # DEP-10 applies to all packages in the workspace
58
- violations[{"id": "DEP-10", "message": msg}] {
59
- ws := input.satellite.workspacePackageJsons[_]
60
- deps := ws.content.dependencies
61
- some pkg
62
- version := deps[pkg]
63
- startswith(version, "^")
64
- msg := sprintf("%v#dependencies.%v=%v", [ws.path, pkg, version])
65
- }
66
-
67
- violations[{"id": "DEP-10", "message": msg}] {
68
- ws := input.satellite.workspacePackageJsons[_]
69
- deps := ws.content.devDependencies
70
- some pkg
71
- version := deps[pkg]
72
- startswith(version, "^")
73
- msg := sprintf("%v#devDependencies.%v=%v", [ws.path, pkg, version])
74
- }
75
-
76
- violations[{"id": "DEP-10", "message": msg}] {
77
- ws := input.satellite.workspacePackageJsons[_]
78
- deps := ws.content.dependencies
79
- some pkg
80
- version := deps[pkg]
81
- startswith(version, "~")
82
- msg := sprintf("%v#dependencies.%v=%v", [ws.path, pkg, version])
83
- }
84
-
85
- violations[{"id": "DEP-10", "message": msg}] {
86
- ws := input.satellite.workspacePackageJsons[_]
87
- deps := ws.content.devDependencies
88
- some pkg
89
- version := deps[pkg]
90
- startswith(version, "~")
91
- msg := sprintf("%v#devDependencies.%v=%v", [ws.path, pkg, version])
92
- }
93
-
94
- violations[{"id": "DEP-08", "message": msg}] {
95
- overrides := input.satellite.packageJson.overrides
96
- count(overrides) > 0
97
- not input.satellite.overridesRationaleDocumented
98
- msg := sprintf("package.json 'overrides' section has %d entries without a companion overrides-rationale.json — each override must document the CVE or compatibility reason", [count(overrides)])
99
- }
@@ -1,28 +0,0 @@
1
- package evolith.version_pinning_test
2
-
3
- import data.evolith.version_pinning
4
-
5
- test_no_pinning_violations_for_exact_versions {
6
- violations := version_pinning.violations with input as {"satellite": {"packageJson": {"dependencies": {"express": "4.18.2"}, "devDependencies": {}}, "workspacePackageJsons": []}}
7
- count(violations) == 0
8
- }
9
-
10
- test_caret_pinning_in_dependencies_is_rejected {
11
- violations := version_pinning.violations with input as {"satellite": {"packageJson": {"dependencies": {"express": "^4.18.2"}, "devDependencies": {}}, "workspacePackageJsons": []}}
12
- violations[_].id == "DEP-01"
13
- }
14
-
15
- test_tilde_pinning_in_dev_dependencies_is_rejected {
16
- violations := version_pinning.violations with input as {"satellite": {"packageJson": {"dependencies": {}, "devDependencies": {"mocha": "~10.0.0"}}, "workspacePackageJsons": []}}
17
- violations[_].id == "DEP-02"
18
- }
19
-
20
- test_wildcard_pinning_is_rejected {
21
- violations := version_pinning.violations with input as {"satellite": {"packageJson": {"dependencies": {"lodash": "*"}, "devDependencies": {}}, "workspacePackageJsons": []}}
22
- violations[_].id == "DEP-03"
23
- }
24
-
25
- test_workspace_caret_pinning_is_rejected {
26
- violations := version_pinning.violations with input as {"satellite": {"packageJson": {"dependencies": {}, "devDependencies": {}}, "workspacePackageJsons": [{"path": "packages/foo", "content": {"dependencies": {"react": "^18.0.0"}, "devDependencies": {}}}]}}
27
- violations[_].id == "DEP-10"
28
- }
@@ -1,28 +0,0 @@
1
- # Ruleset de Gates de Fase
2
-
3
- > **Bilingual navigation:** [English version](./README.md)
4
-
5
- Punto de entrada WS1 canonico para el contrato de phase gates del SDLC Evolith.
6
-
7
- ## Proposito
8
-
9
- El ruleset de gates de fase define la evidencia obligatoria, criterios bloqueantes, roles responsables, autoridades de waiver y campos de waiver requeridos para salir de cada fase SDLC de Evolith. Este punto de entrada mantiene estable la ruta de auditoria WS1 mientras conserva el indice de la categoria SDLC.
10
-
11
- ## Artefactos
12
-
13
- | Artefacto | Ruta | Proposito |
14
- |---|---|---|
15
- | Ruleset nativo | [phase-gates.rules.json](./phase-gates.rules.json) | Contrato machine-readable de gates de fase SDLC |
16
- | Fuente de categoria SDLC | [../sdlc/phase-gates.rules.json](../sdlc/phase-gates.rules.json) | Contrato existente de la categoria SDLC conservado por compatibilidad |
17
- | Politica OPA | [../opa/cicd-quality-gates.rego](../opa/cicd-quality-gates.rego) | Enforcement Rego para controles de quality gates CI/CD |
18
- | Pruebas OPA | [../opa/cicd-quality-gates.test.rego](../opa/cicd-quality-gates.test.rego) | Pruebas reproducibles de politica para controles de quality gates |
19
-
20
- ## Validacion
21
-
22
- Ejecuta los checks focalizados Native y OPA:
23
-
24
- ```bash
25
- node --test .harness/scripts/run-evolith-intelligent-data-audit.test.mjs
26
- npx jest --config packages/core-domain/jest.config.js --rootDir packages/core-domain --testPathPatterns='ruleset-validation.mode' --no-coverage
27
- .harness/bin/opa test rulesets/opa/cicd-quality-gates.rego rulesets/opa/cicd-quality-gates.test.rego -v
28
- ```
@@ -1,28 +0,0 @@
1
- # Phase Gates Ruleset
2
-
3
- > **Navegación bilingüe:** [Versión en Español](./README.es.md)
4
-
5
- Canonical WS1 entrypoint for the Evolith SDLC phase-gate contract.
6
-
7
- ## Purpose
8
-
9
- The phase-gates ruleset defines the mandatory evidence, blocking criteria, accountable roles, waiver authorities, and waiver fields required to exit each Evolith SDLC phase. This entrypoint keeps the WS1 audit path stable while preserving the SDLC category index.
10
-
11
- ## Artifacts
12
-
13
- | Artifact | Path | Purpose |
14
- |---|---|---|
15
- | Native ruleset | [phase-gates.rules.json](./phase-gates.rules.json) | Machine-readable SDLC phase-gate contract |
16
- | SDLC category source | [../sdlc/phase-gates.rules.json](../sdlc/phase-gates.rules.json) | Existing SDLC category contract retained for backward compatibility |
17
- | OPA policy | [../opa/cicd-quality-gates.rego](../opa/cicd-quality-gates.rego) | Rego enforcement for CI/CD quality-gate controls |
18
- | OPA tests | [../opa/cicd-quality-gates.test.rego](../opa/cicd-quality-gates.test.rego) | Reproducible policy tests for quality-gate controls |
19
-
20
- ## Validation
21
-
22
- Run the focused Native and OPA checks:
23
-
24
- ```bash
25
- node --test .harness/scripts/run-evolith-intelligent-data-audit.test.mjs
26
- npx jest --config packages/core-domain/jest.config.js --rootDir packages/core-domain --testPathPatterns='ruleset-validation.mode' --no-coverage
27
- .harness/bin/opa test rulesets/opa/cicd-quality-gates.rego rulesets/opa/cicd-quality-gates.test.rego -v
28
- ```
@@ -1,297 +0,0 @@
1
- {
2
- "$schema": "../schema/ruleset-sdlc.schema.json",
3
- "$id": "https://evolith.dev/rulesets/phase-gates/phase-gates.rules.json",
4
- "title": "SDLC Phase Gate Rules",
5
- "description": "Canonical phase exit gate criteria for the Evolith 5-phase SDLC. Each gate requires objective evidence; manual confidence cannot override a failed gate.",
6
- "version": "1.0.0",
7
- "effectiveDate": "2026-01-01",
8
- "gates": [
9
- {
10
- "phase": 1,
11
- "name": "Business Sign-Off",
12
- "description": "Scope frozen; funding authorized; architectural constraints aligned.",
13
- "playbookRef": "../../reference/governance/sdlc/01-playbooks/phase-1-business-signoff.md",
14
- "mandatoryEvidence": [
15
- {
16
- "artifact": "PRD",
17
- "schemaRef": "../schema/prd.schema.json",
18
- "status": "Approved",
19
- "validation": "PRD status = Approved AND approvalEvidence present AND date filled"
20
- },
21
- {
22
- "artifact": "Discovery Canvas",
23
- "validation": "Initiative registered with customer pain points and expected value"
24
- },
25
- {
26
- "artifact": "Technical Feasibility Canvas",
27
- "schemaRef": "../schema/technical-feasibility.schema.json",
28
- "validation": "Technical feasibility and quality attributes documented with NFRs"
29
- },
30
- {
31
- "artifact": "Ballpark Estimation",
32
- "validation": "T-Shirt sizing completed with team composition"
33
- },
34
- {
35
- "artifact": "MoSCoW Prioritization Matrix",
36
- "validation": "MoSCoW analysis completed for Phase 0 with at least one MUST item and valid priority distribution"
37
- },
38
- {
39
- "artifact": "Build-versus-Compose Analysis",
40
- "schemaRef": "../schema/build-vs-compose.schema.json",
41
- "validation": "Discovery evaluated open-source/free-tier/commercial alternatives with a governed Adopt/Embed/Integrate/Extend/Build/Reject disposition, three-year cost, licensing, tenant isolation, provider replaceability, and PoC requirements; native development requires explicit justification (Product Vision §5.3)"
42
- }
43
- ],
44
- "blockingCriteria": [
45
- {
46
- "criterion": "Scope is ambiguous",
47
- "action": "BLOCK — return to Phase 1"
48
- },
49
- {
50
- "criterion": "Technical constraints or cloud quotas are unaligned",
51
- "action": "BLOCK — return to Phase 1"
52
- },
53
- {
54
- "criterion": "Architecture constraints are ignored",
55
- "action": "BLOCK — return to Phase 1"
56
- }
57
- ],
58
- "accountableRole": "Product Owner",
59
- "waiverAuthority": "Executive Sponsor",
60
- "waiverRequiredFields": [
61
- "criterion",
62
- "justification",
63
- "risk",
64
- "owner",
65
- "expirationDate",
66
- "mitigationPlan"
67
- ]
68
- },
69
- {
70
- "phase": 2,
71
- "name": "Design Baseline Approved",
72
- "description": "Architecture decisions are documented; bounded contexts defined; functional stories written.",
73
- "playbookRef": "../../reference/governance/sdlc/01-playbooks/phase-2-design-baseline.md",
74
- "mandatoryEvidence": [
75
- {
76
- "artifact": "ADR Registry",
77
- "validation": "All architecture decisions have corresponding ADR. No undocumented decisions."
78
- },
79
- {
80
- "artifact": "Functional Stories",
81
- "schemaRef": "../schema/functional-story.schema.json",
82
- "validation": "All Functional Stories in Ready state with BDD acceptance criteria"
83
- },
84
- {
85
- "artifact": "Reference Blueprint Alignment",
86
- "validation": "Product architecture diagrams traceable to Evolith Reference Blueprint"
87
- },
88
- {
89
- "artifact": "Simplicity Checklist Phase 1",
90
- "validation": "Passed — no over-engineering detected"
91
- },
92
- {
93
- "artifact": "Bounded Context Map",
94
- "validation": "All contexts identified with ownership and persistence strategy"
95
- }
96
- ],
97
- "blockingCriteria": [
98
- {
99
- "criterion": "Significant architecture decisions are undocumented",
100
- "action": "BLOCK — require ADR before design baseline"
101
- },
102
- {
103
- "criterion": "Bounded context boundaries are contradictory",
104
- "action": "BLOCK — require context map resolution"
105
- },
106
- {
107
- "criterion": "Functional stories lack acceptance criteria",
108
- "action": "BLOCK — return to story writing"
109
- }
110
- ],
111
- "accountableRole": "Software Architect",
112
- "waiverAuthority": "Architecture Board",
113
- "waiverRequiredFields": [
114
- "criterion",
115
- "justification",
116
- "risk",
117
- "owner",
118
- "expirationDate",
119
- "mitigationPlan"
120
- ]
121
- },
122
- {
123
- "phase": 3,
124
- "name": "Successful Build",
125
- "description": "All code merged to main; CI passes; quality gates green; definition of done satisfied.",
126
- "mandatoryEvidence": [
127
- {
128
- "artifact": "Technical Stories",
129
- "schemaRef": "../schema/technical-story.schema.json",
130
- "validation": "All technical stories Done; traceable to Functional Stories"
131
- },
132
- {
133
- "artifact": "CI Pipeline",
134
- "validation": "CI run green on main branch. No failing tests, no lint errors, no security scan failures"
135
- },
136
- {
137
- "artifact": "Definition of Done Checklist",
138
- "validation": "All DoD items checked per Technical Story"
139
- },
140
- {
141
- "artifact": "Documentation Delta",
142
- "validation": "Updated ADRs, inline documentation, README changes included in merge"
143
- },
144
- {
145
- "artifact": "Coverage Report",
146
- "validation": "Business logic coverage >= 80% per Quality Thresholds rules"
147
- }
148
- ],
149
- "blockingCriteria": [
150
- {
151
- "criterion": "CI fails on main branch",
152
- "action": "BLOCK merge — fix CI before merge"
153
- },
154
- {
155
- "criterion": "Coverage below threshold (< 80%)",
156
- "action": "BLOCK merge — add tests or request waiver"
157
- },
158
- {
159
- "criterion": "High or Critical CVEs detected",
160
- "action": "BLOCK merge — remediate CVEs or request security waiver"
161
- },
162
- {
163
- "criterion": "Missing code review approval",
164
- "action": "BLOCK merge — require review"
165
- }
166
- ],
167
- "accountableRole": "Tech Lead",
168
- "waiverAuthority": "Architecture Board (with exception for CVEs requires Executive Risk Acceptance)",
169
- "waiverRequiredFields": [
170
- "criterion",
171
- "justification",
172
- "risk",
173
- "owner",
174
- "expirationDate",
175
- "mitigationPlan",
176
- "approvalAuthority"
177
- ]
178
- },
179
- {
180
- "phase": 4,
181
- "name": "RC Stamped",
182
- "description": "All quality thresholds verified; security scans clean; UAT passed; release candidate formally approved.",
183
- "playbookRef": "../../reference/governance/sdlc/01-playbooks/phase-4-rc-stamp.md",
184
- "mandatoryEvidence": [
185
- {
186
- "artifact": "Test Summary Report",
187
- "schemaRef": "../schema/test-summary-report.schema.json",
188
- "templateRef": "../../reference/governance/sdlc/04-artifact-templates/test-summary-report-template.md",
189
- "validation": "All quality gates green or explicitly waived. RC stamped by QA Lead and Tech Lead."
190
- },
191
- {
192
- "artifact": "Acceptance Validation",
193
- "validation": "Product Owner signs off on acceptance criteria verification"
194
- },
195
- {
196
- "artifact": "Security Scan Report",
197
- "schemaRef": "../schema/security-scan-report.schema.json",
198
- "templateRef": "../../reference/governance/sdlc/04-artifact-templates/security-scan-report-template.md",
199
- "validation": "Zero High/Critical CVEs in production-bound artifacts; structure conforms to security-scan-report.schema.json"
200
- },
201
- {
202
- "artifact": "Integration Evidence",
203
- "schemaRef": "../schema/integration-evidence.schema.json",
204
- "templateRef": "../../reference/governance/sdlc/04-artifact-templates/integration-evidence-template.md",
205
- "validation": "Every declared inter-component contract exercised; no FAIL entries without waiver; structure conforms to integration-evidence.schema.json"
206
- },
207
- {
208
- "artifact": "Pyramid Distribution",
209
- "validation": "70% unit / 20% integration / 10% E2E target met or deviation explained"
210
- }
211
- ],
212
- "blockingCriteria": [
213
- {
214
- "criterion": "Any mandatory quality metric fails",
215
- "action": "BLOCK RC stamp — remediate or waiver"
216
- },
217
- {
218
- "criterion": "Acceptance criteria remain unverified",
219
- "action": "BLOCK RC stamp — return to validation"
220
- },
221
- {
222
- "criterion": "Technical debt ratio exceeds 5%",
223
- "action": "BLOCK RC stamp — remediation plan required"
224
- }
225
- ],
226
- "accountableRole": "QA Lead",
227
- "waiverAuthority": "Architecture Board",
228
- "waiverRequiredFields": [
229
- "criterion",
230
- "justification",
231
- "risk",
232
- "owner",
233
- "expirationDate",
234
- "mitigationPlan"
235
- ]
236
- },
237
- {
238
- "phase": 5,
239
- "name": "Production Live",
240
- "description": "Deployment executed; observability verified nominal; monitoring active; rollback procedure confirmed.",
241
- "playbookRef": "../../reference/governance/sdlc/01-playbooks/zero-downtime-release.md",
242
- "mandatoryEvidence": [
243
- {
244
- "artifact": "Release Notes",
245
- "schemaRef": "../schema/release-notes.schema.json",
246
- "validation": "Release scope, deployment steps, rollback procedure, observability checklist all present and complete"
247
- },
248
- {
249
- "artifact": "Observability Validation",
250
- "schemaRef": "../schema/observability-validation.schema.json",
251
- "templateRef": "../../reference/governance/sdlc/04-artifact-templates/observability-validation-template.md",
252
- "validation": "Metrics nominal, logs flowing, traces complete for all production paths; structure conforms to observability-validation.schema.json"
253
- },
254
- {
255
- "artifact": "Rollback Procedure",
256
- "schemaRef": "../schema/rollback-rehearsal.schema.json",
257
- "templateRef": "../../reference/governance/sdlc/04-artifact-templates/rollback-rehearsal-template.md",
258
- "validation": "Rollback steps documented and tested. Last good version identified. Rehearsal evidence confirms rollback within budget."
259
- },
260
- {
261
- "artifact": "On-Call Handoff",
262
- "schemaRef": "../schema/on-call-handoff.schema.json",
263
- "templateRef": "../../reference/governance/sdlc/04-artifact-templates/on-call-handoff-template.md",
264
- "validation": "On-call team briefed with runbook references, escalation paths, alert ownership, and SLA acknowledgement confirmed."
265
- },
266
- {
267
- "artifact": "Deployment Evidence",
268
- "validation": "Deployment artifacts (images, configs) traceable to RC"
269
- }
270
- ],
271
- "blockingCriteria": [
272
- {
273
- "criterion": "Monitoring is not nominal",
274
- "action": "BLOCK Production Live — investigate before deploy"
275
- },
276
- {
277
- "criterion": "Rollback procedure is undefined",
278
- "action": "BLOCK Production Live — document rollback first"
279
- },
280
- {
281
- "criterion": "Release is not traceable to RC",
282
- "action": "BLOCK Production Live — ensure RC → Release chain"
283
- }
284
- ],
285
- "accountableRole": "DevOps Lead",
286
- "waiverAuthority": "Technology Director",
287
- "waiverRequiredFields": [
288
- "criterion",
289
- "justification",
290
- "risk",
291
- "owner",
292
- "expirationDate",
293
- "mitigationPlan"
294
- ]
295
- }
296
- ]
297
- }
@@ -1,28 +0,0 @@
1
- # Ruleset de Umbrales de Calidad
2
-
3
- > **Bilingual navigation:** [English version](./README.md)
4
-
5
- Punto de entrada WS1 canonico para los umbrales de calidad bloqueantes de release de Evolith.
6
-
7
- ## Proposito
8
-
9
- El ruleset de umbrales de calidad define los minimos de testing, calidad de codigo, seguridad, documentacion, operaciones y contratos que pueden bloquear merge, RC stamp o Production Live. Este punto de entrada mantiene estable la ruta de auditoria WS1 mientras conserva el indice de la categoria SDLC.
10
-
11
- ## Artefactos
12
-
13
- | Artefacto | Ruta | Proposito |
14
- |---|---|---|
15
- | Ruleset nativo | [quality-thresholds.rules.json](./quality-thresholds.rules.json) | Contrato machine-readable de umbrales bloqueantes de release |
16
- | Fuente de categoria SDLC | [../sdlc/quality-thresholds.rules.json](../sdlc/quality-thresholds.rules.json) | Contrato existente de la categoria SDLC conservado por compatibilidad |
17
- | Politica OPA | [../opa/testing-pyramid.rego](../opa/testing-pyramid.rego) | Enforcement Rego para umbrales de cobertura y testing pyramid |
18
- | Pruebas OPA | [../opa/testing-pyramid.test.rego](../opa/testing-pyramid.test.rego) | Pruebas reproducibles de politica para controles de testing y cobertura |
19
-
20
- ## Validacion
21
-
22
- Ejecuta los checks focalizados Native y OPA:
23
-
24
- ```bash
25
- node --test .harness/scripts/run-evolith-intelligent-data-audit.test.mjs
26
- npx jest --config packages/core-domain/jest.config.js --rootDir packages/core-domain --testPathPatterns='ruleset-validation.mode' --no-coverage
27
- .harness/bin/opa test rulesets/opa/testing-pyramid.rego rulesets/opa/testing-pyramid.test.rego -v
28
- ```
@@ -1,28 +0,0 @@
1
- # Quality Thresholds Ruleset
2
-
3
- > **Navegación bilingüe:** [Versión en Español](./README.es.md)
4
-
5
- Canonical WS1 entrypoint for the Evolith release-blocking quality thresholds.
6
-
7
- ## Purpose
8
-
9
- The quality-thresholds ruleset defines the minimum testing, code-quality, security, documentation, operations, and contract thresholds that can block merge, RC stamp, or Production Live gates. This entrypoint keeps the WS1 audit path stable while preserving the SDLC category index.
10
-
11
- ## Artifacts
12
-
13
- | Artifact | Path | Purpose |
14
- |---|---|---|
15
- | Native ruleset | [quality-thresholds.rules.json](./quality-thresholds.rules.json) | Machine-readable release-blocking threshold contract |
16
- | SDLC category source | [../sdlc/quality-thresholds.rules.json](../sdlc/quality-thresholds.rules.json) | Existing SDLC category contract retained for backward compatibility |
17
- | OPA policy | [../opa/testing-pyramid.rego](../opa/testing-pyramid.rego) | Rego enforcement for coverage and testing-pyramid thresholds |
18
- | OPA tests | [../opa/testing-pyramid.test.rego](../opa/testing-pyramid.test.rego) | Reproducible policy tests for testing and coverage controls |
19
-
20
- ## Validation
21
-
22
- Run the focused Native and OPA checks:
23
-
24
- ```bash
25
- node --test .harness/scripts/run-evolith-intelligent-data-audit.test.mjs
26
- npx jest --config packages/core-domain/jest.config.js --rootDir packages/core-domain --testPathPatterns='ruleset-validation.mode' --no-coverage
27
- .harness/bin/opa test rulesets/opa/testing-pyramid.rego rulesets/opa/testing-pyramid.test.rego -v
28
- ```
@@ -1,96 +0,0 @@
1
- {
2
- "$schema": "../schema/ruleset-standard.schema.json",
3
- "$id": "https://evolith.dev/rulesets/quality-thresholds/quality-thresholds.rules.json",
4
- "title": "SDLC Quality Threshold Rules",
5
- "description": "Canonical release-blocking quality thresholds for Evolith satellites. These thresholds apply to all SDLC phases where construction or validation occurs.",
6
- "version": "1.0.0",
7
- "effectiveDate": "2026-01-01",
8
- "waiverPolicy": {
9
- "description": "A waiver may be used only when the organization deliberately accepts a temporary deviation.",
10
- "requiredFields": [
11
- "criterion",
12
- "justification",
13
- "risk",
14
- "owner",
15
- "expirationDate",
16
- "mitigationPlan",
17
- "approvalAuthority"
18
- ],
19
- "exceptions": {
20
- "cves": "High/Critical security vulnerabilities cannot be waived in production releases without explicit Executive Risk Acceptance",
21
- "coverage": "Business logic coverage below 80% cannot be waived without Architecture Board approval and remediation plan"
22
- }
23
- },
24
- "rules": [
25
- {
26
- "id": "QT-01",
27
- "severity": "MUST",
28
- "category": "testing",
29
- "title": "Code Coverage",
30
- "description": "Coverage below 80% on business logic BLOCKS merge (Phase 3) and RC stamp (Phase 4).",
31
- "blocking": true
32
- },
33
- {
34
- "id": "QT-02",
35
- "severity": "MUST",
36
- "category": "code-quality",
37
- "title": "Cyclomatic Complexity",
38
- "description": "Methods or functions exceeding cyclomatic complexity of 15 BLOCK merge or RC stamp without refactoring plan or explicit waiver.",
39
- "blocking": true
40
- },
41
- {
42
- "id": "QT-03",
43
- "severity": "MUST",
44
- "category": "security",
45
- "title": "Security Vulnerabilities",
46
- "description": "Any High or Critical CVE BLOCKS merge, RC stamp, and production release. Medium CVEs require justification.",
47
- "blocking": true
48
- },
49
- {
50
- "id": "QT-04",
51
- "severity": "MUST",
52
- "category": "code-quality",
53
- "title": "Technical Debt Ratio",
54
- "description": "Technical debt ratio > 5% BLOCKS RC stamp unless a remediation plan with explicit timeline and owner is approved.",
55
- "blocking": true
56
- },
57
- {
58
- "id": "QT-05",
59
- "severity": "MUST",
60
- "category": "testing",
61
- "title": "Testing Pyramid Distribution",
62
- "description": "Release with materially skewed distribution (e.g., 40% unit / 50% integration) requires written explanation. Not a hard block but must be reviewed.",
63
- "blocking": true
64
- },
65
- {
66
- "id": "QT-06",
67
- "severity": "MUST",
68
- "category": "documentation",
69
- "title": "Documentation Delta",
70
- "description": "Code changes that alter behavior, introduce new API endpoints, change architecture, or modify operations without corresponding documentation BLOCK merge and Production Live.",
71
- "blocking": true
72
- },
73
- {
74
- "id": "QT-07",
75
- "severity": "MUST",
76
- "category": "operations",
77
- "title": "Observability Evidence",
78
- "description": "Any production API path without traces, structured logs, or metrics BLOCKS Production Live declaration.",
79
- "blocking": true
80
- },
81
- {
82
- "id": "QT-08",
83
- "severity": "MUST",
84
- "category": "contract",
85
- "title": "API Contract Compatibility",
86
- "description": "Breaking changes to inter-module (gRPC/REST) contracts BLOCK merge. Consumer-driven contract tests must pass.",
87
- "blocking": true
88
- }
89
- ],
90
- "references": [
91
- "../sdlc/phase-gates.rules.json",
92
- "adr/0018-testing-pyramid-quality-gates.md",
93
- "adr/0049-naming-semantics-clean-code-policy.md",
94
- "adr/0005-ci-cd-quality-codeql.md"
95
- ]
96
- }
@@ -1,26 +0,0 @@
1
- # Ruleset de Taxonomía del Repositorio
2
-
3
- > **Navegación Bilingüe:** [English Version](./README.md)
4
-
5
- Punto de entrada ejecutable WS1 para el ruleset de Taxonomía del Repositorio de Evolith.
6
-
7
- ## Propósito
8
-
9
- Este directorio expone `rulesets/repository-taxonomy` como la ruta ejecutable canónica que verifica la auditoría de fortaleza como data inteligente. El ruleset codifica restricciones de nomenclatura, estructura de directorios, nombres ADR, pares bilingües y clasificación de artefactos consumidas por el validador nativo de rulesets y los flujos de evidencia CI.
10
-
11
- ## Artefactos
12
-
13
- | Artefacto | Propósito |
14
- |---|---|
15
- | [repository-taxonomy.rules.json](./repository-taxonomy.rules.json) | Ruleset nativo machine-readable para validación de Taxonomía del Repositorio |
16
- | [../opa/repository-taxonomy.rego](../opa/repository-taxonomy.rego) | Artefacto de paridad OPA para validación de Taxonomía del Repositorio |
17
- | [../opa/repository-taxonomy.test.rego](../opa/repository-taxonomy.test.rego) | Cobertura de pruebas OPA para la política de Taxonomía del Repositorio |
18
-
19
- ## Validación
20
-
21
- Ejecuta estos checks después de cambiar el ruleset:
22
-
23
- ```bash
24
- npx jest --config packages/core-domain/jest.config.js --rootDir packages/core-domain --testPathPatterns='ruleset-validation.mode' --no-coverage
25
- .harness/bin/opa test rulesets/opa/repository-taxonomy.rego rulesets/opa/repository-taxonomy.test.rego -v
26
- ```