@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,176 +0,0 @@
1
- {
2
- "$schema": "../schema/ruleset-standard.schema.json",
3
- "$id": "https://evolith.dev/rulesets/adr/adr-0050-gitflow-branching.rules.json",
4
- "title": "ADR-0050 — GitFlow Branching Strategy Rules",
5
- "description": "Machine-readable rules encoding ADR-0050 GitFlow Branching Strategy. Contractual branch naming, promotion policies, merge policies, and release tagging.",
6
- "version": "1.1.0",
7
- "adrId": "ADR-0050",
8
- "adrTitle": "GitFlow Branching Strategy",
9
- "status": "Approved",
10
- "effectiveDate": "2026-05-08",
11
- "rules": [
12
- {
13
- "id": "GIT-01",
14
- "severity": "MUST",
15
- "category": "branch-naming",
16
- "title": "Branch names follow pattern: type/ticket-id-description",
17
- "description": "All branches MUST follow naming pattern: {type}/{ticket-id}-{short-description}. Types: feature/, bugfix/, hotfix/, release/, chore/.",
18
- "rationale": "ADR-0050 §Decision: Consistent naming enables automation and team coordination.",
19
- "validationQuery": "Branch names match pattern ^[a-z]+/[A-Z]+-[0-9]+-[a-z-]+$",
20
- "blocking": true,
21
- "examples": [
22
- "feature/UMS-123-user-onboarding",
23
- "bugfix/ADR-456-fix-grpc-timeout",
24
- "hotfix/PROD-789-security-patch"
25
- ]
26
- },
27
- {
28
- "id": "GIT-02",
29
- "severity": "MUST",
30
- "category": "branch-naming",
31
- "title": "Protected branches enforce direct push prohibition",
32
- "description": "Direct push to protected branches (main, develop, qa, uat, release/*) is prohibited. All changes MUST come through pull requests with code review.",
33
- "rationale": "ADR-0050 §Decision: Protected branches require PR workflow for audit trail and review.",
34
- "validationQuery": "GitHub/GitLab branch protection rules block direct push to main, develop, qa, uat, release/*.",
35
- "blocking": true,
36
- "protectedBranches": [
37
- "main",
38
- "develop",
39
- "qa",
40
- "uat",
41
- "release/*"
42
- ]
43
- },
44
- {
45
- "id": "GIT-03",
46
- "severity": "MUST",
47
- "category": "code-review",
48
- "title": "PR requires minimum 1 approved review",
49
- "description": "Every pull request MUST have at least one approved code review before merge. Reviews must verify code quality, test coverage, and compliance with architectural standards.",
50
- "rationale": "ADR-0050 §Decision: Code review is mandatory for architectural compliance and knowledge sharing.",
51
- "validationQuery": "PR merge blocked without minimum 1 approval. Reviewer cannot be the PR author.",
52
- "blocking": true
53
- },
54
- {
55
- "id": "GIT-04",
56
- "severity": "MUST",
57
- "category": "release-tagging",
58
- "title": "Release tags follow semver format",
59
- "description": "Release tags MUST follow semantic versioning format: v{major}.{minor}.{patch} (e.g., v1.0.0, v2.3.1). Tags are created at release point from main branch.",
60
- "rationale": "ADR-0050 §Decision: Semver tags provide clear, auditable release history.",
61
- "validationQuery": "Release tags match pattern ^v[0-9]+\\.[0-9]+\\.[0-9]+$",
62
- "blocking": true
63
- },
64
- {
65
- "id": "GIT-05",
66
- "severity": "MUST",
67
- "category": "merge-policy",
68
- "title": "Feature branches merge via squash or rebase",
69
- "description": "Feature branches merge into develop using squash or rebase strategy to maintain clean history. Fast-forward merge when possible.",
70
- "rationale": "ADR-0050 §Decision: Squash/rebase keeps feature history clean while preserving commit granularity in PR.",
71
- "validationQuery": "Feature → develop merges use squash or rebase. No merge commits on feature branches.",
72
- "blocking": false
73
- },
74
- {
75
- "id": "GIT-06",
76
- "severity": "MUST",
77
- "category": "hotfix-flow",
78
- "title": "Hotfixes follow expedited merge path",
79
- "description": "Hotfixes branch from main (tagged release), apply fix, merge back to main AND develop simultaneously. Hotfixes skip code freeze restrictions but still require review.",
80
- "rationale": "ADR-0050 §Decision: Hotfixes need expedited path but cannot bypass review entirely.",
81
- "validationQuery": "Hotfix branch merges to both main and develop. Both merges include same fix commit.",
82
- "blocking": true
83
- },
84
- {
85
- "id": "GIT-07",
86
- "severity": "MUST NOT",
87
- "category": "branch-lifetime",
88
- "title": "Stale branches must be deleted after merge",
89
- "description": "Branches MUST be deleted after successful merge. Feature/bugfix branches older than 30 days without activity are flagged as stale and subject to archive or removal.",
90
- "rationale": "ADR-0050 §Decision: Branch proliferation creates confusion about current state of development.",
91
- "validationQuery": "Merged branches auto-deleted. Stale branch detection runs weekly.",
92
- "blocking": false
93
- },
94
- {
95
- "id": "GIT-08",
96
- "severity": "MUST",
97
- "category": "commit-messages",
98
- "title": "Commit messages follow Conventional Commits",
99
- "description": "Commit messages MUST follow Conventional Commits format: type(scope): description. Types: feat, fix, docs, style, refactor, test, chore.",
100
- "rationale": "ADR-0050 §Decision: Conventional Commits enables automated changelog generation and semantic release.",
101
- "validationQuery": "Commit messages validated via commitlint or equivalent. Non-conforming commits blocked in CI.",
102
- "blocking": true,
103
- "pattern": "^(feat|fix|docs|style|refactor|test|chore)(\\([a-z-]+\\))?: .+"
104
- },
105
- {
106
- "id": "GIT-09",
107
- "severity": "MUST",
108
- "category": "promotion-policy",
109
- "title": "Environment promotion follows develop to qa to uat to main",
110
- "description": "Promotions MUST follow the sequence develop -> qa -> uat -> main, with release/* inserted between uat and main when release hardening needs isolation.",
111
- "rationale": "ADR-0050 §Promotion Criteria: Environment branches represent deployable states and require evidence-based promotion.",
112
- "validationQuery": "Promotion PR source and target follow develop->qa, qa->uat, uat->release/* or uat->main, release/*->main.",
113
- "blocking": true
114
- },
115
- {
116
- "id": "GIT-10",
117
- "severity": "MUST",
118
- "category": "code-review",
119
- "title": "Higher environments require stronger approval",
120
- "description": "Pull requests into qa, uat, main, release/*, and hotfix/* MUST require at least two approvals unless an explicit incident exception applies.",
121
- "rationale": "ADR-0050 §Pull Requests, Reviews, and Merge: Promotion branches need stronger review because they represent deployable environment states.",
122
- "validationQuery": "Branch protection or repository rules require minimum two approvals for qa, uat, main, release/*, and hotfix/*.",
123
- "blocking": true
124
- }
125
- ],
126
- "branchTypes": [
127
- {
128
- "type": "feature/",
129
- "lifetime": "until merged",
130
- "target": "develop"
131
- },
132
- {
133
- "type": "bugfix/",
134
- "lifetime": "until merged",
135
- "target": "develop"
136
- },
137
- {
138
- "type": "hotfix/",
139
- "lifetime": "hours to days",
140
- "target": "main + develop"
141
- },
142
- {
143
- "type": "release/",
144
- "lifetime": "1-4 weeks",
145
- "target": "main"
146
- },
147
- {
148
- "type": "chore/",
149
- "lifetime": "until merged",
150
- "target": "develop"
151
- },
152
- {
153
- "type": "qa",
154
- "lifetime": "permanent",
155
- "target": "uat"
156
- },
157
- {
158
- "type": "uat",
159
- "lifetime": "permanent",
160
- "target": "main or release/*"
161
- }
162
- ],
163
- "references": [
164
- "reference/architecture/adrs/core/0050-gitflow-branching-strategy.md"
165
- ],
166
- "exitCriteria": {
167
- "description": "Branch naming validated in CI. Protected branches enforce PR workflow and promotion sequence. Release tags follow semver.",
168
- "validationTools": [
169
- "commitlint",
170
- "branch protection rules",
171
- "GitHub Actions",
172
- "CODEOWNERS",
173
- "CodeQL"
174
- ]
175
- }
176
- }
@@ -1,29 +0,0 @@
1
- {
2
- "$schema": "../../schema/ruleset-standard.schema.json",
3
- "$id": "https://evolith.dev/rulesets/adr/generated/adr-0001-monorepo-orchestration-principle.rules.json",
4
- "title": "ADR-0001 — Monorepo Orchestration Principle Rules (generated)",
5
- "description": "Auto-generated ruleset encoding ADR-0001 (core track). Classification: executable. Generated by .harness/scripts/generate-adr-rulesets.mjs — do not edit by hand.",
6
- "version": "1.0.0",
7
- "adrId": "ADR-0001",
8
- "adrTitle": "Monorepo Orchestration Principle",
9
- "status": "Approved",
10
- "date": "2026-05-08",
11
- "rules": [
12
- {
13
- "id": "CORE-0001-01",
14
- "severity": "MUST",
15
- "category": "adr-conformance",
16
- "title": "Conform to ADR-0001: Monorepo Orchestration Principle",
17
- "description": "Implementations MUST conform to the decision recorded in ADR-0001 (core track). ADR decision: Adopt a Monorepo Orchestration Principle . All applications and shared libraries within a tightly coupled bounded context or product suite must reside in a single repository. The repository must be managed by an intelligent build orchestration tool capable of performing: Dependency graph analysis. This ADR contains enforceable language (must, dependency); conformance is expected to be verifiable via static analysis, linting, CI gates, or structural checks.",
18
- "statement": "ADR decision: Adopt a Monorepo Orchestration Principle . All applications and shared libraries within a tightly coupled bounded context or product suite must reside in a single repository. The repository must be managed by an intelligent build orchestration tool capable of performing: Dependency graph analysis.",
19
- "rationale": "Derived from ADR-0001 \"Decision\" section. Enforcement signals detected: must, dependency.",
20
- "validationQuery": "Verify codebase/CI compliance with ADR-0001 via static analysis, lint rules, or pipeline gates covering: must, dependency. Concrete checks to be wired into the harness.",
21
- "blocking": true,
22
- "enforcement": "executable"
23
- }
24
- ],
25
- "references": [
26
- "reference/architecture/adrs/core/0001-monorepo-orchestration-principle.md"
27
- ],
28
- "effectiveDate": "2026-05-08"
29
- }
@@ -1,29 +0,0 @@
1
- {
2
- "$schema": "../../schema/ruleset-standard.schema.json",
3
- "$id": "https://evolith.dev/rulesets/adr/generated/adr-0006-microservices-transition-via-sidecar-pattern.rules.json",
4
- "title": "ADR-0006 — Microservices Transition via Sidecar Pattern Rules (generated)",
5
- "description": "Auto-generated ruleset encoding ADR-0006 (core track). Classification: executable. Generated by .harness/scripts/generate-adr-rulesets.mjs — do not edit by hand.",
6
- "version": "1.0.0",
7
- "adrId": "ADR-0006",
8
- "adrTitle": "Microservices Transition via Sidecar Pattern",
9
- "status": "Approved - Backlog (Phase 3 Milestone)",
10
- "date": "2026-05-08",
11
- "rules": [
12
- {
13
- "id": "CORE-0006-01",
14
- "severity": "MUST",
15
- "category": "adr-conformance",
16
- "title": "Conform to ADR-0006: Microservices Transition via Sidecar Pattern",
17
- "description": "Implementations MUST conform to the decision recorded in ADR-0006 (core track). ADR decision: Adopt the Sidecar Pattern as the standard distributed application runtime when splitting the monolith into independent services. Migration milestones: To prevent premature over engineering, Sidecars are NOT active by default in Milestone 2. This ADR contains enforceable language (must, layer, structure); conformance is expected to be verifiable via static analysis, linting, CI gates, or structural checks.",
18
- "statement": "ADR decision: Adopt the Sidecar Pattern as the standard distributed application runtime when splitting the monolith into independent services. Migration milestones: To prevent premature over engineering, Sidecars are NOT active by default in Milestone 2.",
19
- "rationale": "Derived from ADR-0006 \"Decision\" section. Enforcement signals detected: must, layer, structure.",
20
- "validationQuery": "Verify codebase/CI compliance with ADR-0006 via static analysis, lint rules, or pipeline gates covering: must, layer, structure. Concrete checks to be wired into the harness.",
21
- "blocking": true,
22
- "enforcement": "executable"
23
- }
24
- ],
25
- "references": [
26
- "reference/architecture/adrs/core/0006-microservices-transition-sidecar-pattern.md"
27
- ],
28
- "effectiveDate": "2026-05-08"
29
- }
@@ -1,29 +0,0 @@
1
- {
2
- "$schema": "../../schema/ruleset-standard.schema.json",
3
- "$id": "https://evolith.dev/rulesets/adr/generated/adr-0009-strict-dependency-pinning-and-automated-vulnerability-manage.rules.json",
4
- "title": "ADR-0009 — Strict Dependency Pinning and Automated Vulnerability Management Rules (generated)",
5
- "description": "Auto-generated ruleset encoding ADR-0009 (core track). Classification: executable. Generated by .harness/scripts/generate-adr-rulesets.mjs — do not edit by hand.",
6
- "version": "1.0.0",
7
- "adrId": "ADR-0009",
8
- "adrTitle": "Strict Dependency Pinning and Automated Vulnerability Management",
9
- "status": "Approved",
10
- "date": "2026-05-08",
11
- "rules": [
12
- {
13
- "id": "CORE-0009-01",
14
- "severity": "MUST",
15
- "category": "adr-conformance",
16
- "title": "Conform to ADR-0009: Strict Dependency Pinning and Automated Vulnerability Management",
17
- "description": "Implementations MUST conform to the decision recorded in ADR-0009 (core track). ADR decision: Adopt a Zero Tolerance, Automated Dependency Governance Strategy : 1. Exact Version Pinning : Enforce static versioning across all package.json files by removing all ^ and ~ prefixes. This ADR contains enforceable language (must, dependency, pinning, enforce); conformance is expected to be verifiable via static analysis, linting, CI gates, or structural checks.",
18
- "statement": "ADR decision: Adopt a Zero Tolerance, Automated Dependency Governance Strategy : 1. Exact Version Pinning : Enforce static versioning across all package.json files by removing all ^ and ~ prefixes.",
19
- "rationale": "Derived from ADR-0009 \"Decision\" section. Enforcement signals detected: must, dependency, pinning, enforce.",
20
- "validationQuery": "Verify codebase/CI compliance with ADR-0009 via static analysis, lint rules, or pipeline gates covering: must, dependency, pinning, enforce. Concrete checks to be wired into the harness.",
21
- "blocking": true,
22
- "enforcement": "executable"
23
- }
24
- ],
25
- "references": [
26
- "reference/architecture/adrs/core/0009-strict-dependency-pinning-vulnerability-management.md"
27
- ],
28
- "effectiveDate": "2026-05-08"
29
- }
@@ -1,29 +0,0 @@
1
- {
2
- "$schema": "../../schema/ruleset-standard.schema.json",
3
- "$id": "https://evolith.dev/rulesets/adr/generated/adr-0011-fault-tolerance-and-resiliency-patterns.rules.json",
4
- "title": "ADR-0011 — Fault Tolerance and Resiliency Patterns Rules (generated)",
5
- "description": "Auto-generated ruleset encoding ADR-0011 (core track). Classification: executable. Generated by .harness/scripts/generate-adr-rulesets.mjs — do not edit by hand.",
6
- "version": "1.0.0",
7
- "adrId": "ADR-0011",
8
- "adrTitle": "Fault Tolerance and Resiliency Patterns",
9
- "status": "Approved",
10
- "date": "2026-05-08",
11
- "rules": [
12
- {
13
- "id": "CORE-0011-01",
14
- "severity": "MUST",
15
- "category": "adr-conformance",
16
- "title": "Conform to ADR-0011: Fault Tolerance and Resiliency Patterns",
17
- "description": "Implementations MUST conform to the decision recorded in ADR-0011 (core track). ADR decision: Implement explicit Resilience Patterns protecting all outbound system exits: 1. Distributed Circuit Breaker (Opossum + Redis) : Wrap outbound network calls in high level infrastructure adapters. This ADR contains enforceable language (must, structure); conformance is expected to be verifiable via static analysis, linting, CI gates, or structural checks.",
18
- "statement": "ADR decision: Implement explicit Resilience Patterns protecting all outbound system exits: 1. Distributed Circuit Breaker (Opossum + Redis) : Wrap outbound network calls in high level infrastructure adapters.",
19
- "rationale": "Derived from ADR-0011 \"Decision\" section. Enforcement signals detected: must, structure.",
20
- "validationQuery": "Verify codebase/CI compliance with ADR-0011 via static analysis, lint rules, or pipeline gates covering: must, structure. Concrete checks to be wired into the harness.",
21
- "blocking": true,
22
- "enforcement": "executable"
23
- }
24
- ],
25
- "references": [
26
- "reference/architecture/adrs/core/0011-fault-tolerance-resiliency-patterns.md"
27
- ],
28
- "effectiveDate": "2026-05-08"
29
- }
@@ -1,28 +0,0 @@
1
- {
2
- "$schema": "../../schema/ruleset-standard.schema.json",
3
- "$id": "https://evolith.dev/rulesets/adr/generated/adr-0013-cloud-infrastructure-topology-and-disaster-recovery-dr.rules.json",
4
- "title": "ADR-0013 — Cloud Infrastructure Topology and Disaster Recovery (DR) Rules (generated)",
5
- "description": "Auto-generated ruleset encoding ADR-0013 (core track). Classification: advisory. Generated by .harness/scripts/generate-adr-rulesets.mjs — do not edit by hand.",
6
- "version": "1.0.0",
7
- "adrId": "ADR-0013",
8
- "adrTitle": "Cloud Infrastructure Topology and Disaster Recovery (DR)",
9
- "status": "Approved",
10
- "date": "2026-05-08",
11
- "rules": [
12
- {
13
- "id": "CORE-0013-01",
14
- "severity": "SHOULD",
15
- "category": "adr-conformance",
16
- "title": "Honor design decision in ADR-0013: Cloud Infrastructure Topology and Disaster Recovery (DR)",
17
- "description": "Design and implementation SHOULD honor the decision recorded in ADR-0013 (core track). ADR decision: Design infrastructure topology targeting Cloud Native patterns enforcing high resilience and instant failover potential: 1. Automated Orchestration : Deployment evolves by architectural phase. Manual attestation required — not machine-verifiable.",
18
- "statement": "ADR decision: Design infrastructure topology targeting Cloud Native patterns enforcing high resilience and instant failover potential: 1. Automated Orchestration : Deployment evolves by architectural phase.",
19
- "rationale": "Derived from ADR-0013 \"Decision\" section. No machine-verifiable signals detected; treated as an advisory design decision.",
20
- "blocking": false,
21
- "enforcement": "advisory"
22
- }
23
- ],
24
- "references": [
25
- "reference/architecture/adrs/core/0013-cloud-infrastructure-topology-dr.md"
26
- ],
27
- "effectiveDate": "2026-05-08"
28
- }
@@ -1,29 +0,0 @@
1
- {
2
- "$schema": "../../schema/ruleset-standard.schema.json",
3
- "$id": "https://evolith.dev/rulesets/adr/generated/adr-0014-multi-layer-distributed-caching-strategy.rules.json",
4
- "title": "ADR-0014 — Multi-Layer Distributed Caching Strategy Rules (generated)",
5
- "description": "Auto-generated ruleset encoding ADR-0014 (core track). Classification: executable. Generated by .harness/scripts/generate-adr-rulesets.mjs — do not edit by hand.",
6
- "version": "1.0.0",
7
- "adrId": "ADR-0014",
8
- "adrTitle": "Multi-Layer Distributed Caching Strategy",
9
- "status": "Approved",
10
- "date": "2026-05-08",
11
- "rules": [
12
- {
13
- "id": "CORE-0014-01",
14
- "severity": "MUST",
15
- "category": "adr-conformance",
16
- "title": "Conform to ADR-0014: Multi-Layer Distributed Caching Strategy",
17
- "description": "Implementations MUST conform to the decision recorded in ADR-0014 (core track). ADR decision: Evolve to a comprehensive Multi Layer Tiered Caching Strategy utilizing CDN edge caching and distributed cache nodes to intercept and resolve read requests as close to the user as possible: The system supports the integration of a Content Delivery Network (CDN) deployed in front of the Edge Gateway. This ADR contains enforceable language (layer, structure); conformance is expected to be verifiable via static analysis, linting, CI gates, or structural checks.",
18
- "statement": "ADR decision: Evolve to a comprehensive Multi Layer Tiered Caching Strategy utilizing CDN edge caching and distributed cache nodes to intercept and resolve read requests as close to the user as possible: The system supports the integration of a Content Delivery Network (CDN) deployed in front of the Edge Gateway.",
19
- "rationale": "Derived from ADR-0014 \"Decision\" section. Enforcement signals detected: layer, structure.",
20
- "validationQuery": "Verify codebase/CI compliance with ADR-0014 via static analysis, lint rules, or pipeline gates covering: layer, structure. Concrete checks to be wired into the harness.",
21
- "blocking": true,
22
- "enforcement": "executable"
23
- }
24
- ],
25
- "references": [
26
- "reference/architecture/adrs/core/0014-multi-layer-distributed-caching-strategy.md"
27
- ],
28
- "effectiveDate": "2026-05-08"
29
- }
@@ -1,29 +0,0 @@
1
- {
2
- "$schema": "../../schema/ruleset-standard.schema.json",
3
- "$id": "https://evolith.dev/rulesets/adr/generated/adr-0015-event-driven-architecture-eda-for-intra-domain-communication.rules.json",
4
- "title": "ADR-0015 — Event-Driven Architecture (EDA) for Intra-Domain Communication Rules (generated)",
5
- "description": "Auto-generated ruleset encoding ADR-0015 (core track). Classification: executable. Generated by .harness/scripts/generate-adr-rulesets.mjs — do not edit by hand.",
6
- "version": "1.0.0",
7
- "adrId": "ADR-0015",
8
- "adrTitle": "Event-Driven Architecture (EDA) for Intra-Domain Communication",
9
- "status": "Approved",
10
- "date": "2026-05-08",
11
- "rules": [
12
- {
13
- "id": "CORE-0015-01",
14
- "severity": "MUST",
15
- "category": "adr-conformance",
16
- "title": "Conform to ADR-0015: Event-Driven Architecture (EDA) for Intra-Domain Communication",
17
- "description": "Implementations MUST conform to the decision recorded in ADR-0015 (core track). ADR decision: We will adopt an asynchronous Event Driven Architecture (EDA) for all cross bounded context communication: The domain will never import a concrete message broker. This ADR contains enforceable language (must, required, layer, boundaries, import); conformance is expected to be verifiable via static analysis, linting, CI gates, or structural checks.",
18
- "statement": "ADR decision: We will adopt an asynchronous Event Driven Architecture (EDA) for all cross bounded context communication: The domain will never import a concrete message broker.",
19
- "rationale": "Derived from ADR-0015 \"Decision\" section. Enforcement signals detected: must, required, layer, boundaries, import.",
20
- "validationQuery": "Verify codebase/CI compliance with ADR-0015 via static analysis, lint rules, or pipeline gates covering: must, required, layer, boundaries, import. Concrete checks to be wired into the harness.",
21
- "blocking": true,
22
- "enforcement": "executable"
23
- }
24
- ],
25
- "references": [
26
- "reference/architecture/adrs/core/0015-event-driven-architecture-intra-domain.md"
27
- ],
28
- "effectiveDate": "2026-05-08"
29
- }
@@ -1,29 +0,0 @@
1
- {
2
- "$schema": "../../schema/ruleset-standard.schema.json",
3
- "$id": "https://evolith.dev/rulesets/adr/generated/adr-0016-immutable-business-audit-trail-and-change-tracking.rules.json",
4
- "title": "ADR-0016 — Immutable Business Audit Trail and Change Tracking Rules (generated)",
5
- "description": "Auto-generated ruleset encoding ADR-0016 (core track). Classification: executable. Generated by .harness/scripts/generate-adr-rulesets.mjs — do not edit by hand.",
6
- "version": "1.0.0",
7
- "adrId": "ADR-0016",
8
- "adrTitle": "Immutable Business Audit Trail and Change Tracking",
9
- "status": "Approved",
10
- "date": "2026-05-09",
11
- "rules": [
12
- {
13
- "id": "CORE-0016-01",
14
- "severity": "MUST",
15
- "category": "adr-conformance",
16
- "title": "Conform to ADR-0016: Immutable Business Audit Trail and Change Tracking",
17
- "description": "Implementations MUST conform to the decision recorded in ADR-0016 (core track). ADR decision: Deploy a Hybrid Audit Strategy balancing performant direct reading with deep historical archiving: 1. Metadata Layer (Row Level) : Physical entities inherit standard persistent audit columns: created at , created by , updated at , updated by , and a concurrency tracking version integer. This ADR contains enforceable language (layer, structure); conformance is expected to be verifiable via static analysis, linting, CI gates, or structural checks.",
18
- "statement": "ADR decision: Deploy a Hybrid Audit Strategy balancing performant direct reading with deep historical archiving: 1. Metadata Layer (Row Level) : Physical entities inherit standard persistent audit columns: created at , created by , updated at , updated by , and a concurrency tracking version integer.",
19
- "rationale": "Derived from ADR-0016 \"Decision\" section. Enforcement signals detected: layer, structure.",
20
- "validationQuery": "Verify codebase/CI compliance with ADR-0016 via static analysis, lint rules, or pipeline gates covering: layer, structure. Concrete checks to be wired into the harness.",
21
- "blocking": true,
22
- "enforcement": "executable"
23
- }
24
- ],
25
- "references": [
26
- "reference/architecture/adrs/core/0016-immutable-business-audit-trail.md"
27
- ],
28
- "effectiveDate": "2026-05-09"
29
- }
@@ -1,28 +0,0 @@
1
- {
2
- "$schema": "../../schema/ruleset-standard.schema.json",
3
- "$id": "https://evolith.dev/rulesets/adr/generated/adr-0017-feature-flagging-strategy-for-progressive-delivery.rules.json",
4
- "title": "ADR-0017 — Feature Flagging Strategy for Progressive Delivery Rules (generated)",
5
- "description": "Auto-generated ruleset encoding ADR-0017 (core track). Classification: advisory. Generated by .harness/scripts/generate-adr-rulesets.mjs — do not edit by hand.",
6
- "version": "1.0.0",
7
- "adrId": "ADR-0017",
8
- "adrTitle": "Feature Flagging Strategy for Progressive Delivery",
9
- "status": "Approved",
10
- "date": "2026-05-09",
11
- "rules": [
12
- {
13
- "id": "CORE-0017-01",
14
- "severity": "SHOULD",
15
- "category": "adr-conformance",
16
- "title": "Honor design decision in ADR-0017: Feature Flagging Strategy for Progressive Delivery",
17
- "description": "Design and implementation SHOULD honor the decision recorded in ADR-0017 (core track). ADR decision: Treat dynamic feature routing as standard Infrastructure injection , completely disjoint from persistence architectures: 1. Service Decoupling : Avoid physical db toggles table creation. Manual attestation required — not machine-verifiable.",
18
- "statement": "ADR decision: Treat dynamic feature routing as standard Infrastructure injection , completely disjoint from persistence architectures: 1. Service Decoupling : Avoid physical db toggles table creation.",
19
- "rationale": "Derived from ADR-0017 \"Decision\" section. No machine-verifiable signals detected; treated as an advisory design decision.",
20
- "blocking": false,
21
- "enforcement": "advisory"
22
- }
23
- ],
24
- "references": [
25
- "reference/architecture/adrs/core/0017-feature-flagging-strategy.md"
26
- ],
27
- "effectiveDate": "2026-05-09"
28
- }
@@ -1,29 +0,0 @@
1
- {
2
- "$schema": "../../schema/ruleset-standard.schema.json",
3
- "$id": "https://evolith.dev/rulesets/adr/generated/adr-0019-tactical-design-patterns-for-future-proofing.rules.json",
4
- "title": "ADR-0019 — Tactical Design Patterns for Future-Proofing Rules (generated)",
5
- "description": "Auto-generated ruleset encoding ADR-0019 (core track). Classification: executable. Generated by .harness/scripts/generate-adr-rulesets.mjs — do not edit by hand.",
6
- "version": "1.0.0",
7
- "adrId": "ADR-0019",
8
- "adrTitle": "Tactical Design Patterns for Future-Proofing",
9
- "status": "Approved",
10
- "date": "2026-05-08",
11
- "rules": [
12
- {
13
- "id": "CORE-0019-01",
14
- "severity": "MUST",
15
- "category": "adr-conformance",
16
- "title": "Conform to ADR-0019: Tactical Design Patterns for Future-Proofing",
17
- "description": "Implementations MUST conform to the decision recorded in ADR-0019 (core track). ADR decision: Mandate specific Functional and Structure patterns protecting core purity: 1. The Result Pattern : Eliminate raw error throwing from inside application use cases. Methods strictly return a typed functional Result<V, E wrapper. This ADR contains enforceable language (must, structure); conformance is expected to be verifiable via static analysis, linting, CI gates, or structural checks.",
18
- "statement": "ADR decision: Mandate specific Functional and Structure patterns protecting core purity: 1. The Result Pattern : Eliminate raw error throwing from inside application use cases. Methods strictly return a typed functional Result<V, E wrapper.",
19
- "rationale": "Derived from ADR-0019 \"Decision\" section. Enforcement signals detected: must, structure.",
20
- "validationQuery": "Verify codebase/CI compliance with ADR-0019 via static analysis, lint rules, or pipeline gates covering: must, structure. Concrete checks to be wired into the harness.",
21
- "blocking": true,
22
- "enforcement": "executable"
23
- }
24
- ],
25
- "references": [
26
- "reference/architecture/adrs/core/0019-tactical-design-patterns-future-proofing.md"
27
- ],
28
- "effectiveDate": "2026-05-08"
29
- }
@@ -1,28 +0,0 @@
1
- {
2
- "$schema": "../../schema/ruleset-standard.schema.json",
3
- "$id": "https://evolith.dev/rulesets/adr/generated/adr-0020-identity-provider-abstraction-strategy.rules.json",
4
- "title": "ADR-0020 — Identity Provider Abstraction Strategy Rules (generated)",
5
- "description": "Auto-generated ruleset encoding ADR-0020 (core track). Classification: advisory. Generated by .harness/scripts/generate-adr-rulesets.mjs — do not edit by hand.",
6
- "version": "1.0.0",
7
- "adrId": "ADR-0020",
8
- "adrTitle": "Identity Provider Abstraction Strategy",
9
- "status": "Approved",
10
- "date": "2026-05-09",
11
- "rules": [
12
- {
13
- "id": "CORE-0020-01",
14
- "severity": "SHOULD",
15
- "category": "adr-conformance",
16
- "title": "Honor design decision in ADR-0020: Identity Provider Abstraction Strategy",
17
- "description": "Design and implementation SHOULD honor the decision recorded in ADR-0020 (core track). ADR decision: Separate credential verification from the business layer via polymorphic Strategy injection secured by a local Hexagonal interface ( IAuthenticationPort ): 1. Zero Lock in : The core core trusts a single validation Port logic. Manual attestation required — not machine-verifiable.",
18
- "statement": "ADR decision: Separate credential verification from the business layer via polymorphic Strategy injection secured by a local Hexagonal interface ( IAuthenticationPort ): 1. Zero Lock in : The core core trusts a single validation Port logic.",
19
- "rationale": "Derived from ADR-0020 \"Decision\" section. No machine-verifiable signals detected; treated as an advisory design decision.",
20
- "blocking": false,
21
- "enforcement": "advisory"
22
- }
23
- ],
24
- "references": [
25
- "reference/architecture/adrs/core/0020-identity-provider-abstraction-strategy.md"
26
- ],
27
- "effectiveDate": "2026-05-09"
28
- }
@@ -1,28 +0,0 @@
1
- {
2
- "$schema": "../../schema/ruleset-standard.schema.json",
3
- "$id": "https://evolith.dev/rulesets/adr/generated/adr-0024-centralized-configuration-feature-platform.rules.json",
4
- "title": "ADR-0024 — Centralized Configuration & Feature Platform Rules (generated)",
5
- "description": "Auto-generated ruleset encoding ADR-0024 (core track). Classification: advisory. Generated by .harness/scripts/generate-adr-rulesets.mjs — do not edit by hand.",
6
- "version": "1.0.0",
7
- "adrId": "ADR-0024",
8
- "adrTitle": "Centralized Configuration & Feature Platform",
9
- "status": "Approved",
10
- "date": "2026-05-09",
11
- "rules": [
12
- {
13
- "id": "CORE-0024-01",
14
- "severity": "SHOULD",
15
- "category": "adr-conformance",
16
- "title": "Honor design decision in ADR-0024: Centralized Configuration & Feature Platform",
17
- "description": "Design and implementation SHOULD honor the decision recorded in ADR-0024 (core track). ADR decision: Introduce an authoritative Configuration & Feature Management Bounded Context consolidating system behaviors: 1. Dynamic IdP Store : Shift identity configurations out of environment files into multi tenant database pools, encrypted with AES 256 referencing external secret vaults. Manual attestation required — not machine-verifiable.",
18
- "statement": "ADR decision: Introduce an authoritative Configuration & Feature Management Bounded Context consolidating system behaviors: 1. Dynamic IdP Store : Shift identity configurations out of environment files into multi tenant database pools, encrypted with AES 256 referencing external secret vaults.",
19
- "rationale": "Derived from ADR-0024 \"Decision\" section. No machine-verifiable signals detected; treated as an advisory design decision.",
20
- "blocking": false,
21
- "enforcement": "advisory"
22
- }
23
- ],
24
- "references": [
25
- "reference/architecture/adrs/core/0024-configuration-feature-management-platform.md"
26
- ],
27
- "effectiveDate": "2026-05-09"
28
- }
@@ -1,29 +0,0 @@
1
- {
2
- "$schema": "../../schema/ruleset-standard.schema.json",
3
- "$id": "https://evolith.dev/rulesets/adr/generated/adr-0025-feature-flag-provider-abstraction-strategy.rules.json",
4
- "title": "ADR-0025 — Feature Flag Provider Abstraction Strategy Rules (generated)",
5
- "description": "Auto-generated ruleset encoding ADR-0025 (core track). Classification: executable. Generated by .harness/scripts/generate-adr-rulesets.mjs — do not edit by hand.",
6
- "version": "1.0.0",
7
- "adrId": "ADR-0025",
8
- "adrTitle": "Feature Flag Provider Abstraction Strategy",
9
- "status": "Approved",
10
- "date": "2026-05-09",
11
- "rules": [
12
- {
13
- "id": "CORE-0025-01",
14
- "severity": "MUST",
15
- "category": "adr-conformance",
16
- "title": "Conform to ADR-0025: Feature Flag Provider Abstraction Strategy",
17
- "description": "Implementations MUST conform to the decision recorded in ADR-0025 (core track). ADR decision: Subsume feature toggle invocation under classic Hexagonal Port principles: 1. Canonical Port : The core repository defines IFeatureFlagPort , detailing universal execution contracts ( evaluate() , isHealthy() ) entirely isolated from commercial library syntax. This ADR contains enforceable language (dependency, layer, structure); conformance is expected to be verifiable via static analysis, linting, CI gates, or structural checks.",
18
- "statement": "ADR decision: Subsume feature toggle invocation under classic Hexagonal Port principles: 1. Canonical Port : The core repository defines IFeatureFlagPort , detailing universal execution contracts ( evaluate() , isHealthy() ) entirely isolated from commercial library syntax.",
19
- "rationale": "Derived from ADR-0025 \"Decision\" section. Enforcement signals detected: dependency, layer, structure.",
20
- "validationQuery": "Verify codebase/CI compliance with ADR-0025 via static analysis, lint rules, or pipeline gates covering: dependency, layer, structure. Concrete checks to be wired into the harness.",
21
- "blocking": true,
22
- "enforcement": "executable"
23
- }
24
- ],
25
- "references": [
26
- "reference/architecture/adrs/core/0025-feature-flag-provider-abstraction.md"
27
- ],
28
- "effectiveDate": "2026-05-09"
29
- }
@@ -1,29 +0,0 @@
1
- {
2
- "$schema": "../../schema/ruleset-standard.schema.json",
3
- "$id": "https://evolith.dev/rulesets/adr/generated/adr-0028-self-hosted-open-source-hybrid-infrastructure.rules.json",
4
- "title": "ADR-0028 — Self-Hosted, Open-Source Hybrid Infrastructure Rules (generated)",
5
- "description": "Auto-generated ruleset encoding ADR-0028 (core track). Classification: executable. Generated by .harness/scripts/generate-adr-rulesets.mjs — do not edit by hand.",
6
- "version": "1.0.0",
7
- "adrId": "ADR-0028",
8
- "adrTitle": "Self-Hosted, Open-Source Hybrid Infrastructure",
9
- "status": "Approved",
10
- "date": "2026-05-09",
11
- "rules": [
12
- {
13
- "id": "CORE-0028-01",
14
- "severity": "MUST",
15
- "category": "adr-conformance",
16
- "title": "Conform to ADR-0028: Self-Hosted, Open-Source Hybrid Infrastructure",
17
- "description": "Implementations MUST conform to the decision recorded in ADR-0028 (core track). ADR decision: Strictly govern internal tooling selection based on the 100% Open Source, Self Hostable, and Plug and Play Extensibility Principle : 1. Infrastructure as a Port : NO concrete infrastructure SDK/Library from the products listed below may ever cross into Domain/Application layers. This ADR contains enforceable language (must, layer, structure); conformance is expected to be verifiable via static analysis, linting, CI gates, or structural checks.",
18
- "statement": "ADR decision: Strictly govern internal tooling selection based on the 100% Open Source, Self Hostable, and Plug and Play Extensibility Principle : 1. Infrastructure as a Port : NO concrete infrastructure SDK/Library from the products listed below may ever cross into Domain/Application layers.",
19
- "rationale": "Derived from ADR-0028 \"Decision\" section. Enforcement signals detected: must, layer, structure.",
20
- "validationQuery": "Verify codebase/CI compliance with ADR-0028 via static analysis, lint rules, or pipeline gates covering: must, layer, structure. Concrete checks to be wired into the harness.",
21
- "blocking": true,
22
- "enforcement": "executable"
23
- }
24
- ],
25
- "references": [
26
- "reference/architecture/adrs/core/0028-self-hosted-hybrid-infrastructure-on-premise.md"
27
- ],
28
- "effectiveDate": "2026-05-09"
29
- }