@evolith/core-domain 1.0.1 → 1.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (502) hide show
  1. package/README.md +102 -0
  2. package/dist/domain/services/default-workflow-definition.js +4 -1
  3. package/dist/domain/services/default-workflow-definition.js.map +1 -1
  4. package/dist/gates/decision/gate-decision.js.map +1 -1
  5. package/package.json +1 -2
  6. package/rulesets/README.es.md +0 -170
  7. package/rulesets/README.md +0 -170
  8. package/rulesets/acl/README.es.md +0 -41
  9. package/rulesets/acl/README.md +0 -41
  10. package/rulesets/acl/anti-corruption-layer.rules.es.json +0 -99
  11. package/rulesets/acl/anti-corruption-layer.rules.json +0 -99
  12. package/rulesets/adr/ADR_COVERAGE.es.md +0 -133
  13. package/rulesets/adr/ADR_COVERAGE.md +0 -133
  14. package/rulesets/adr/README.es.md +0 -17
  15. package/rulesets/adr/README.md +0 -17
  16. package/rulesets/adr/adr-0002-hexagonal-architecture.rules.json +0 -103
  17. package/rulesets/adr/adr-0005-cicd-quality-gates.rules.json +0 -102
  18. package/rulesets/adr/adr-0010-multi-tenancy.rules.json +0 -129
  19. package/rulesets/adr/adr-0018-testing-pyramid.rules.json +0 -115
  20. package/rulesets/adr/adr-0032-protocol-selection.rules.json +0 -134
  21. package/rulesets/adr/adr-0040-multi-runtime.rules.json +0 -131
  22. package/rulesets/adr/adr-0050-gitflow-branching.rules.json +0 -176
  23. package/rulesets/adr/generated/adr-0001-monorepo-orchestration-principle.rules.json +0 -29
  24. package/rulesets/adr/generated/adr-0006-microservices-transition-via-sidecar-pattern.rules.json +0 -29
  25. package/rulesets/adr/generated/adr-0009-strict-dependency-pinning-and-automated-vulnerability-manage.rules.json +0 -29
  26. package/rulesets/adr/generated/adr-0011-fault-tolerance-and-resiliency-patterns.rules.json +0 -29
  27. package/rulesets/adr/generated/adr-0013-cloud-infrastructure-topology-and-disaster-recovery-dr.rules.json +0 -28
  28. package/rulesets/adr/generated/adr-0014-multi-layer-distributed-caching-strategy.rules.json +0 -29
  29. package/rulesets/adr/generated/adr-0015-event-driven-architecture-eda-for-intra-domain-communication.rules.json +0 -29
  30. package/rulesets/adr/generated/adr-0016-immutable-business-audit-trail-and-change-tracking.rules.json +0 -29
  31. package/rulesets/adr/generated/adr-0017-feature-flagging-strategy-for-progressive-delivery.rules.json +0 -28
  32. package/rulesets/adr/generated/adr-0019-tactical-design-patterns-for-future-proofing.rules.json +0 -29
  33. package/rulesets/adr/generated/adr-0020-identity-provider-abstraction-strategy.rules.json +0 -28
  34. package/rulesets/adr/generated/adr-0024-centralized-configuration-feature-platform.rules.json +0 -28
  35. package/rulesets/adr/generated/adr-0025-feature-flag-provider-abstraction-strategy.rules.json +0 -29
  36. package/rulesets/adr/generated/adr-0028-self-hosted-open-source-hybrid-infrastructure.rules.json +0 -29
  37. package/rulesets/adr/generated/adr-0030-two-tier-distributed-gateway-model.rules.json +0 -28
  38. package/rulesets/adr/generated/adr-0031-schema-per-bounded-context-and-domain-event-catalog.rules.json +0 -29
  39. package/rulesets/adr/generated/adr-0033-transactional-outbox-pattern-for-async-messaging.rules.json +0 -28
  40. package/rulesets/adr/generated/adr-0034-cqrs-pattern-application-matrix.rules.json +0 -29
  41. package/rulesets/adr/generated/adr-0035-distributed-saga-pattern-implementation-strategy.rules.json +0 -29
  42. package/rulesets/adr/generated/adr-0036-message-bus-delivery-flow-control-strategy.rules.json +0 -29
  43. package/rulesets/adr/generated/adr-0037-enterprise-performance-concurrency-chaos-verification-strate.rules.json +0 -28
  44. package/rulesets/adr/generated/adr-0039-deployment-topology-abstraction-environment-switcher.rules.json +0 -29
  45. package/rulesets/adr/generated/adr-0041-dual-engine-policy-evaluation-native-opa.rules.json +0 -28
  46. package/rulesets/adr/generated/adr-0044-configurable-security-persistence-strategy-agnosticism-vs-na.rules.json +0 -29
  47. package/rulesets/adr/generated/adr-0045-microservice-extraction-readiness-criteria.rules.json +0 -29
  48. package/rulesets/adr/generated/adr-0046-unified-traceability-via-w3c-tracecontext.rules.json +0 -29
  49. package/rulesets/adr/generated/adr-0047-progressive-architecture-evolution-framework-modular-monolit.rules.json +0 -29
  50. package/rulesets/adr/generated/adr-0048-enterprise-taxonomy-standardization-and-reference-layout.rules.json +0 -28
  51. package/rulesets/adr/generated/adr-0049-naming-semantics-clean-code-policy-e2e-and-global.rules.json +0 -29
  52. package/rulesets/adr/generated/adr-0051-enterprise-database-engine-selection-strategy.rules.json +0 -29
  53. package/rulesets/adr/generated/adr-0052-unit-testing-isolation-strategy-mocks-vs-stubs.rules.json +0 -29
  54. package/rulesets/adr/generated/adr-0053-integration-and-e2e-testing-strategy.rules.json +0 -29
  55. package/rulesets/adr/generated/adr-0054-database-design-and-normalization-standards.rules.json +0 -29
  56. package/rulesets/adr/generated/adr-0055-microfrontends-architecture-strategy.rules.json +0 -28
  57. package/rulesets/adr/generated/adr-0056-enterprise-naming-design-conventions-multi-language-multi-pl.rules.json +0 -29
  58. package/rulesets/adr/generated/adr-0057-architecture-intelligence-catalog.rules.json +0 -27
  59. package/rulesets/adr/generated/adr-0058-ai-consumable-architecture-knowledge.rules.json +0 -27
  60. package/rulesets/adr/generated/adr-0067-modular-monolith-persistence-boundaries.rules.json +0 -28
  61. package/rulesets/adr/generated/adr-0068-documentation-release-gitflow.rules.json +0 -29
  62. package/rulesets/adr/generated/adr-0069-ai-agent-context-protocol-integration.rules.json +0 -28
  63. package/rulesets/adr/generated/adr-0070-lean-root-repository-taxonomy.rules.json +0 -29
  64. package/rulesets/adr/generated/adr-0071-domain-layer-base-class-and-inheritance-strategy.rules.json +0 -29
  65. package/rulesets/adr/generated/adr-0072-utc-date-storage-browser-timezone-detection-and-language-res.rules.json +0 -29
  66. package/rulesets/adr/generated/adr-0073-unified-cli-mcp-output-contract-and-gate-evidence-schema.rules.json +0 -29
  67. package/rulesets/adr/generated/adr-0074-evolith-core-api-native-exposure-layer.rules.json +0 -29
  68. package/rulesets/adr/generated/adr-0075-core-api-authentication-strategy.rules.json +0 -28
  69. package/rulesets/adr/generated/adr-0076-domain-oriented-microservice-architecture-doma.rules.json +0 -28
  70. package/rulesets/adr/generated/adr-0077-masstransit-v9-commercial-pivot-stay-on-v8-monitor-opentrans.rules.json +0 -28
  71. package/rulesets/adr/generated/adr-0078-domain-financial-separation-governance.rules.json +0 -29
  72. package/rulesets/adr/generated/adr-0079-multi-topology-reference-corpus-and-topology-manifest-contra.rules.json +0 -29
  73. package/rulesets/adr/generated/adr-0080-remote-repository-reference-contract.rules.json +0 -29
  74. package/rulesets/adr/generated/adr-0081-agentic-ai-sandbox-isolation-boundary.rules.json +0 -29
  75. package/rulesets/adr/generated/adr-0082-agentic-ai-prompt-context-and-tool-trust-boundary.rules.json +0 -28
  76. package/rulesets/adr/generated/adr-0083-agentic-ai-action-authorization-and-audit.rules.json +0 -29
  77. package/rulesets/adr/generated/adr-0084-data-mesh-and-data-as-a-product.rules.json +0 -29
  78. package/rulesets/adr/generated/adr-0085-agnostic-opa-wasm-distribution-architecture.rules.json +0 -28
  79. package/rulesets/adr/generated/adr-0086-agentic-ai-telemetry-cost-control-standard.rules.json +0 -27
  80. package/rulesets/adr/generated/adr-0087-attribute-based-access-control-abac-for-agentic-tool-executi.rules.json +0 -29
  81. package/rulesets/adr/generated/adr-0088-sovereign-identity-for-agentic-ai.rules.json +0 -29
  82. package/rulesets/adr/generated/adr-0089-event-driven-agentic-workflow-pattern.rules.json +0 -28
  83. package/rulesets/adr/generated/adr-0090-rag-knowledge-governance-standard.rules.json +0 -29
  84. package/rulesets/adr/generated/adr-0091-workload-identity-token-rotation-standard.rules.json +0 -29
  85. package/rulesets/adr/generated/adr-0092-agent-infinite-loop-prevention-and-circuit-breaker-rules.rules.json +0 -29
  86. package/rulesets/adr/generated/adr-0093-concurrency-control-and-resource-locking-standard-for-mcp-to.rules.json +0 -29
  87. package/rulesets/adr/generated/adr-0094-multi-agent-handoff-and-task-delegation-standards.rules.json +0 -29
  88. package/rulesets/adr/generated/adr-0095-serverless-architecture-governance.rules.json +0 -29
  89. package/rulesets/adr/generated/adr-0096-edge-computing-architecture-governance.rules.json +0 -29
  90. package/rulesets/adr/generated/adr-0097-knowledge-lifecycle-governance-standard.rules.json +0 -29
  91. package/rulesets/adr/generated/adr-0098-rest-uri-versioning-and-deprecation-policy.rules.json +0 -29
  92. package/rulesets/adr/generated/adr-0099-opa-bundle-distribution-via-s3-minio.rules.json +0 -27
  93. package/rulesets/adr/generated/adr-ai-augmented-0001-harness-engineering-for-ai-augmented-development.rules.json +0 -29
  94. package/rulesets/adr/generated/adr-ai-augmented-0002-mcp-integration-protocol-for-agent-tool-invocation.rules.json +0 -29
  95. package/rulesets/adr/generated/adr-ai-augmented-0003-model-selection-governance-for-ai-augmented-workflows.rules.json +0 -29
  96. package/rulesets/adr/generated/adr-ai-augmented-0004-agents-md-as-mandatory-repository-artifact.rules.json +0 -29
  97. package/rulesets/adr/generated/adr-ai-augmented-0005-human-in-the-loop-policy-for-autonomous-agent-operations.rules.json +0 -29
  98. package/rulesets/adr/generated/adr-android-0042-canonical-android-native-mobile-architecture.rules.json +0 -29
  99. package/rulesets/adr/generated/adr-dotnet-0041-canonical-net-c-backend-architecture.rules.json +0 -29
  100. package/rulesets/adr/generated/adr-dotnet-0060-net-multi-tenancy-dual-layer-strategy-ef-core-sql-server.rules.json +0 -29
  101. package/rulesets/adr/generated/adr-dotnet-0061-transactional-event-lifecycle-in-ef-core.rules.json +0 -28
  102. package/rulesets/adr/generated/adr-dotnet-0062-net-immutable-audit-trail-via-ddl-triggers-delta-capture.rules.json +0 -29
  103. package/rulesets/adr/generated/adr-dotnet-0063-b2b-request-idempotency-middleware-in-asp-net-core.rules.json +0 -28
  104. package/rulesets/adr/generated/adr-dotnet-0064-net-request-scope-observability-context-propagation.rules.json +0 -29
  105. package/rulesets/adr/generated/adr-dotnet-0065-net-pii-safe-structured-logging-pipeline-serilog.rules.json +0 -29
  106. package/rulesets/adr/generated/adr-dotnet-0066-net-lightweight-http-idempotency-via-imemorycache-idistribut.rules.json +0 -28
  107. package/rulesets/adr/generated/adr-dotnet-0069-net-grpc-service-setup-protobuf-contracts.rules.json +0 -29
  108. package/rulesets/adr/generated/adr-dotnet-0070-net-api-endpoint-strategy.rules.json +0 -29
  109. package/rulesets/adr/generated/adr-dotnet-0071-net-data-access-strategy-ef-core-as-default-orm-dapper-for-o.rules.json +0 -27
  110. package/rulesets/adr/generated/adr-dotnet-0072-net-aop-cross-cutting-concern-strategy-dispatchproxy-over-pi.rules.json +0 -29
  111. package/rulesets/adr/generated/adr-nodejs-0003-strict-typescript-standards.rules.json +0 -29
  112. package/rulesets/adr/generated/adr-nodejs-0004-frontend-offline-resilience.rules.json +0 -28
  113. package/rulesets/adr/generated/adr-nodejs-0007-observability-with-opentelemetry-loki-and-jaeger.rules.json +0 -29
  114. package/rulesets/adr/generated/adr-nodejs-0008-progressive-multi-module-evolution-with-api-gateway-and-bff-.rules.json +0 -28
  115. package/rulesets/adr/generated/adr-nodejs-0012-advanced-authorization-rbac-abac-strategy.rules.json +0 -28
  116. package/rulesets/adr/generated/adr-nodejs-0021-high-performance-authentication-graph-compilation.rules.json +0 -28
  117. package/rulesets/adr/generated/adr-nodejs-0022-contextual-authentication-and-pluggable-output-projections.rules.json +0 -28
  118. package/rulesets/adr/generated/adr-nodejs-0023-centralized-authorization-core-strategy.rules.json +0 -28
  119. package/rulesets/adr/generated/adr-nodejs-0026-adaptive-mfa-and-passwordless-platform.rules.json +0 -28
  120. package/rulesets/adr/generated/adr-nodejs-0027-dual-protocol-api-strategy-rest-grpc.rules.json +0 -28
  121. package/rulesets/adr/generated/adr-nodejs-0029-adoption-of-tactical-ddd-primitives-library.rules.json +0 -29
  122. package/rulesets/adr/generated/adr-nodejs-0038-enterprise-error-handling-result-pattern-strategy.rules.json +0 -29
  123. package/rulesets/adr/generated/adr-nodejs-0043-data-access-and-orm-strategy-for-node-js.rules.json +0 -29
  124. package/rulesets/adr/generated/adr-nodejs-0044-frontend-clean-architecture-layer-boundaries-react.rules.json +0 -29
  125. package/rulesets/adr/generated/adr-nodejs-0045-frontend-state-management-zustand-tanstack-query-dual-strate.rules.json +0 -29
  126. package/rulesets/adr/generated/adr-nodejs-0046-prohibition-of-raw-technical-identifiers-in-user-interfaces.rules.json +0 -29
  127. package/rulesets/adr/generated/adr-nodejs-0047-actionable-user-error-contract-and-correlated-diagnostics.rules.json +0 -29
  128. package/rulesets/adr/generated/adr-nodejs-0048-feature-flag-system-scope-and-structured-criteria-model.rules.json +0 -29
  129. package/rulesets/adr/generated/adr-nodejs-0074-monorepo-orchestration-with-nx.rules.json +0 -29
  130. package/rulesets/adr/generated/adr-nodejs-0075-application-gateway-bff-with-nestjs.rules.json +0 -29
  131. package/rulesets/architecture/README.es.md +0 -21
  132. package/rulesets/architecture/README.md +0 -21
  133. package/rulesets/architecture/opa/progressive-axis.rego +0 -50
  134. package/rulesets/cli/README.es.md +0 -17
  135. package/rulesets/cli/README.md +0 -17
  136. package/rulesets/cli/core-parity.rules.json +0 -61
  137. package/rulesets/cli/release-readiness.rules.json +0 -77
  138. package/rulesets/compliance-baseline/README.es.md +0 -26
  139. package/rulesets/compliance-baseline/README.md +0 -26
  140. package/rulesets/compliance-baseline/compliance-baseline.rules.json +0 -81
  141. package/rulesets/contracts/README.es.md +0 -19
  142. package/rulesets/contracts/README.md +0 -19
  143. package/rulesets/contracts/evolith-machine-contracts.json +0 -29
  144. package/rulesets/contracts/fixtures/gate-evidence.success.json +0 -10
  145. package/rulesets/contracts/fixtures/output-envelope.success.json +0 -23
  146. package/rulesets/cross-cutting/README.es.md +0 -14
  147. package/rulesets/cross-cutting/README.md +0 -14
  148. package/rulesets/cross-cutting/compliance-baseline.rules.json +0 -81
  149. package/rulesets/cross-cutting/definition-of-done.rules.json +0 -135
  150. package/rulesets/cross-cutting/engineering-manifesto.rules.json +0 -145
  151. package/rulesets/cross-cutting/repository-taxonomy.rules.json +0 -172
  152. package/rulesets/definition-of-done/README.es.md +0 -26
  153. package/rulesets/definition-of-done/README.md +0 -26
  154. package/rulesets/definition-of-done/definition-of-done.rules.json +0 -135
  155. package/rulesets/engineering-manifesto/README.es.md +0 -26
  156. package/rulesets/engineering-manifesto/README.md +0 -26
  157. package/rulesets/engineering-manifesto/engineering-manifesto.rules.json +0 -145
  158. package/rulesets/evidence/README.es.md +0 -12
  159. package/rulesets/evidence/README.md +0 -12
  160. package/rulesets/evidence/evidence-manifest.rules.json +0 -48
  161. package/rulesets/executive-scorecards/executive-scorecards.rules.es.json +0 -213
  162. package/rulesets/executive-scorecards/executive-scorecards.rules.json +0 -213
  163. package/rulesets/governance/README.es.md +0 -13
  164. package/rulesets/governance/README.md +0 -13
  165. package/rulesets/governance/abac-mcp-access.rules.es.json +0 -41
  166. package/rulesets/governance/abac-mcp-access.rules.json +0 -41
  167. package/rulesets/governance/executive-scorecards.rules.es.json +0 -213
  168. package/rulesets/governance/executive-scorecards.rules.json +0 -213
  169. package/rulesets/governance/inheritance.rules.json +0 -115
  170. package/rulesets/governance/knowledge-intake.rules.json +0 -18
  171. package/rulesets/governance/open-core-boundary.rules.es.json +0 -148
  172. package/rulesets/governance/open-core-boundary.rules.json +0 -148
  173. package/rulesets/governance/satellite-contracts.rules.json +0 -183
  174. package/rulesets/infrastructure/helm-enforcement.rules.json +0 -21
  175. package/rulesets/infrastructure/opa/helm-enforcement.rego +0 -25
  176. package/rulesets/infrastructure/opa/helm-enforcement.test.rego +0 -31
  177. package/rulesets/infrastructure/opa/opa-sidecar-bundle.rego +0 -115
  178. package/rulesets/infrastructure/opa/opa-sidecar-bundle.test.rego +0 -66
  179. package/rulesets/infrastructure/opa-sidecar-bundle.rules.json +0 -18
  180. package/rulesets/mcp/README.es.md +0 -12
  181. package/rulesets/mcp/README.md +0 -12
  182. package/rulesets/mcp/protocol-compliance.rules.json +0 -57
  183. package/rulesets/observability/README.es.md +0 -12
  184. package/rulesets/observability/README.md +0 -12
  185. package/rulesets/observability/telemetry-evidence.rules.json +0 -48
  186. package/rulesets/opa/README.es.md +0 -22
  187. package/rulesets/opa/README.md +0 -22
  188. package/rulesets/opa/abac-mcp-tool-access.rego +0 -122
  189. package/rulesets/opa/abac-mcp-tool-access.test.rego +0 -33
  190. package/rulesets/opa/anti-corruption-layer.rego +0 -39
  191. package/rulesets/opa/anti-corruption-layer.test.rego +0 -118
  192. package/rulesets/opa/ci-cd.rego +0 -41
  193. package/rulesets/opa/ci-cd.test.rego +0 -23
  194. package/rulesets/opa/cicd-quality-gates.rego +0 -29
  195. package/rulesets/opa/cicd-quality-gates.test.rego +0 -54
  196. package/rulesets/opa/cli-core-parity.rego +0 -17
  197. package/rulesets/opa/cli-core-parity.test.rego +0 -39
  198. package/rulesets/opa/cli-readiness.rego +0 -32
  199. package/rulesets/opa/cli-readiness.test.rego +0 -23
  200. package/rulesets/opa/cli-release-readiness.rego +0 -21
  201. package/rulesets/opa/cli-release-readiness.test.rego +0 -46
  202. package/rulesets/opa/compliance-baseline.rego +0 -95
  203. package/rulesets/opa/compliance-baseline.test.rego +0 -89
  204. package/rulesets/opa/dod.rego +0 -42
  205. package/rulesets/opa/dod.test.rego +0 -250
  206. package/rulesets/opa/engineering-manifesto.rego +0 -78
  207. package/rulesets/opa/engineering-manifesto.test.rego +0 -133
  208. package/rulesets/opa/evidence.rego +0 -64
  209. package/rulesets/opa/evidence.test.rego +0 -23
  210. package/rulesets/opa/executive-scorecards.rego +0 -41
  211. package/rulesets/opa/executive-scorecards.test.rego +0 -60
  212. package/rulesets/opa/gitflow-branching.rego +0 -41
  213. package/rulesets/opa/gitflow-branching.test.rego +0 -60
  214. package/rulesets/opa/governance.rego +0 -39
  215. package/rulesets/opa/governance.test.rego +0 -23
  216. package/rulesets/opa/hexagonal-architecture.rego +0 -33
  217. package/rulesets/opa/hexagonal-architecture.test.rego +0 -57
  218. package/rulesets/opa/infrastructure/helm-enforcement.rego +0 -33
  219. package/rulesets/opa/infrastructure/opa-sidecar-bundle.rego +0 -42
  220. package/rulesets/opa/knowledge-intake.rego +0 -98
  221. package/rulesets/opa/knowledge-intake.test.rego +0 -50
  222. package/rulesets/opa/main.rego +0 -147
  223. package/rulesets/opa/main_test.rego +0 -149
  224. package/rulesets/opa/mcp.rego +0 -61
  225. package/rulesets/opa/mcp.test.rego +0 -27
  226. package/rulesets/opa/multi-runtime.rego +0 -33
  227. package/rulesets/opa/multi-runtime.test.rego +0 -53
  228. package/rulesets/opa/multi-tenancy.rego +0 -33
  229. package/rulesets/opa/multi-tenancy.test.rego +0 -53
  230. package/rulesets/opa/open-core-boundary.rego +0 -33
  231. package/rulesets/opa/open-core-boundary.test.rego +0 -60
  232. package/rulesets/opa/protocol-selection.rego +0 -29
  233. package/rulesets/opa/protocol-selection.test.rego +0 -46
  234. package/rulesets/opa/rbac/gate-role-enforcement.rego +0 -112
  235. package/rulesets/opa/repository-taxonomy.rego +0 -98
  236. package/rulesets/opa/repository-taxonomy.test.rego +0 -91
  237. package/rulesets/opa/satellite-contracts.rego +0 -42
  238. package/rulesets/opa/satellite-contracts.test.rego +0 -70
  239. package/rulesets/opa/schemas/abac-mcp-tool-access.input.schema.json +0 -21
  240. package/rulesets/opa/schemas/anti-corruption-layer.input.schema.json +0 -25
  241. package/rulesets/opa/schemas/ci-cd.input.schema.json +0 -27
  242. package/rulesets/opa/schemas/cicd-quality-gates.input.schema.json +0 -33
  243. package/rulesets/opa/schemas/cli-core-parity.input.schema.json +0 -30
  244. package/rulesets/opa/schemas/cli-readiness.input.schema.json +0 -28
  245. package/rulesets/opa/schemas/cli-release-readiness.input.schema.json +0 -26
  246. package/rulesets/opa/schemas/compliance-baseline.input.schema.json +0 -25
  247. package/rulesets/opa/schemas/dod.input.schema.json +0 -38
  248. package/rulesets/opa/schemas/engineering-manifesto.input.schema.json +0 -24
  249. package/rulesets/opa/schemas/evidence.input.schema.json +0 -35
  250. package/rulesets/opa/schemas/executive-scorecards.input.schema.json +0 -36
  251. package/rulesets/opa/schemas/gitflow-branching.input.schema.json +0 -36
  252. package/rulesets/opa/schemas/governance.input.schema.json +0 -19
  253. package/rulesets/opa/schemas/hexagonal-architecture.input.schema.json +0 -46
  254. package/rulesets/opa/schemas/knowledge-intake.input.schema.json +0 -57
  255. package/rulesets/opa/schemas/mcp.input.schema.json +0 -38
  256. package/rulesets/opa/schemas/multi-runtime.input.schema.json +0 -27
  257. package/rulesets/opa/schemas/multi-tenancy.input.schema.json +0 -27
  258. package/rulesets/opa/schemas/open-core-boundary.input.schema.json +0 -36
  259. package/rulesets/opa/schemas/protocol-selection.input.schema.json +0 -26
  260. package/rulesets/opa/schemas/repository-taxonomy.input.schema.json +0 -18
  261. package/rulesets/opa/schemas/satellite-contracts.input.schema.json +0 -38
  262. package/rulesets/opa/schemas/taxonomy.input.schema.json +0 -27
  263. package/rulesets/opa/schemas/testing-pyramid.input.schema.json +0 -42
  264. package/rulesets/opa/schemas/version-pinning.input.schema.json +0 -39
  265. package/rulesets/opa/sdlc/coverage.rego +0 -49
  266. package/rulesets/opa/sdlc/coverage.test.rego +0 -29
  267. package/rulesets/opa/sdlc/pyramid-distribution.rego +0 -31
  268. package/rulesets/opa/sdlc/pyramid-distribution.test.rego +0 -33
  269. package/rulesets/opa/taxonomy.rego +0 -51
  270. package/rulesets/opa/taxonomy.test.rego +0 -28
  271. package/rulesets/opa/telemetry-evidence.rego +0 -102
  272. package/rulesets/opa/testing-pyramid.rego +0 -49
  273. package/rulesets/opa/testing-pyramid.test.rego +0 -81
  274. package/rulesets/opa/version-pinning.rego +0 -99
  275. package/rulesets/opa/version-pinning.test.rego +0 -28
  276. package/rulesets/phase-gates/README.es.md +0 -28
  277. package/rulesets/phase-gates/README.md +0 -28
  278. package/rulesets/phase-gates/phase-gates.rules.json +0 -297
  279. package/rulesets/quality-thresholds/README.es.md +0 -28
  280. package/rulesets/quality-thresholds/README.md +0 -28
  281. package/rulesets/quality-thresholds/quality-thresholds.rules.json +0 -96
  282. package/rulesets/repository-taxonomy/README.es.md +0 -26
  283. package/rulesets/repository-taxonomy/README.md +0 -26
  284. package/rulesets/repository-taxonomy/repository-taxonomy.rules.json +0 -172
  285. package/rulesets/satellite-contracts/README.es.md +0 -27
  286. package/rulesets/satellite-contracts/README.md +0 -27
  287. package/rulesets/satellite-contracts/satellite-contracts.rules.json +0 -183
  288. package/rulesets/schema/README.es.md +0 -39
  289. package/rulesets/schema/README.md +0 -39
  290. package/rulesets/schema/adr.schema.json +0 -138
  291. package/rulesets/schema/agile-backlog.schema.json +0 -91
  292. package/rulesets/schema/ballpark-estimation.schema.json +0 -109
  293. package/rulesets/schema/build-vs-compose.schema.json +0 -98
  294. package/rulesets/schema/cli-impact-analysis.schema.json +0 -114
  295. package/rulesets/schema/discovery-canvas.schema.json +0 -92
  296. package/rulesets/schema/evolith-user-story.schema.json +0 -105
  297. package/rulesets/schema/evolith-yaml.schema.json +0 -191
  298. package/rulesets/schema/functional-story.schema.json +0 -111
  299. package/rulesets/schema/gate-evidence.schema.json +0 -85
  300. package/rulesets/schema/integration-evidence.schema.json +0 -47
  301. package/rulesets/schema/knowledge-intake.schema.json +0 -67
  302. package/rulesets/schema/knowledge-projection.schema.json +0 -24
  303. package/rulesets/schema/maturity-evidence.schema.json +0 -59
  304. package/rulesets/schema/observability-validation.schema.json +0 -85
  305. package/rulesets/schema/on-call-handoff.schema.json +0 -91
  306. package/rulesets/schema/output-envelope.schema.json +0 -102
  307. package/rulesets/schema/prd.schema.json +0 -117
  308. package/rulesets/schema/release-notes.schema.json +0 -138
  309. package/rulesets/schema/rollback-rehearsal.schema.json +0 -73
  310. package/rulesets/schema/ruleset-sdlc.schema.json +0 -59
  311. package/rulesets/schema/ruleset-standard.schema.json +0 -73
  312. package/rulesets/schema/security-scan-report.schema.json +0 -79
  313. package/rulesets/schema/source-registry.schema.json +0 -51
  314. package/rulesets/schema/technical-feasibility.schema.json +0 -66
  315. package/rulesets/schema/technical-story.schema.json +0 -112
  316. package/rulesets/schema/test-summary-report.schema.json +0 -158
  317. package/rulesets/schema/topology-composition.schema.json +0 -43
  318. package/rulesets/schema/topology-manifest.schema.json +0 -421
  319. package/rulesets/sdlc/README.es.md +0 -12
  320. package/rulesets/sdlc/README.md +0 -12
  321. package/rulesets/sdlc/default-workflow.yaml +0 -73
  322. package/rulesets/sdlc/dependency-pinning.rules.json +0 -183
  323. package/rulesets/sdlc/phase-gates.rules.json +0 -297
  324. package/rulesets/sdlc/quality-thresholds.rules.json +0 -96
  325. package/rulesets/topologies/README.es.md +0 -42
  326. package/rulesets/topologies/README.md +0 -42
  327. package/rulesets/topologies/agentic-ai/README.es.md +0 -142
  328. package/rulesets/topologies/agentic-ai/README.md +0 -142
  329. package/rulesets/topologies/agentic-ai/adoption.es.md +0 -37
  330. package/rulesets/topologies/agentic-ai/adoption.md +0 -37
  331. package/rulesets/topologies/agentic-ai/agent.config.schema.json +0 -100
  332. package/rulesets/topologies/agentic-ai/agentic-ai.rego +0 -46
  333. package/rulesets/topologies/agentic-ai/agentic-ai.rules.json +0 -109
  334. package/rulesets/topologies/agentic-ai/agentic-ai.test.rego +0 -68
  335. package/rulesets/topologies/agentic-ai/agentic-ai.wasm +0 -0
  336. package/rulesets/topologies/agentic-ai/cli/cli-flows.es.md +0 -35
  337. package/rulesets/topologies/agentic-ai/cli/cli-flows.md +0 -45
  338. package/rulesets/topologies/agentic-ai/evidence.es.md +0 -25
  339. package/rulesets/topologies/agentic-ai/evidence.md +0 -25
  340. package/rulesets/topologies/agentic-ai/evolution.es.md +0 -26
  341. package/rulesets/topologies/agentic-ai/evolution.md +0 -26
  342. package/rulesets/topologies/agentic-ai/fixtures/invalid-agent.config.json +0 -48
  343. package/rulesets/topologies/agentic-ai/fixtures/valid-agent.config.json +0 -48
  344. package/rulesets/topologies/agentic-ai/maturity.es.md +0 -33
  345. package/rulesets/topologies/agentic-ai/maturity.md +0 -33
  346. package/rulesets/topologies/agentic-ai/mcp/mcp-manifest.json +0 -100
  347. package/rulesets/topologies/agentic-ai/openapi/openapi.yaml +0 -187
  348. package/rulesets/topologies/agentic-ai/operations.es.md +0 -32
  349. package/rulesets/topologies/agentic-ai/operations.md +0 -32
  350. package/rulesets/topologies/agentic-ai/parity-fixtures/compliant.json +0 -18
  351. package/rulesets/topologies/agentic-ai/parity-fixtures/violation.json +0 -22
  352. package/rulesets/topologies/agentic-ai/patterns.es.md +0 -32
  353. package/rulesets/topologies/agentic-ai/patterns.md +0 -32
  354. package/rulesets/topologies/agentic-ai/resilience.es.md +0 -26
  355. package/rulesets/topologies/agentic-ai/resilience.md +0 -26
  356. package/rulesets/topologies/agentic-ai/runbooks.es.md +0 -48
  357. package/rulesets/topologies/agentic-ai/runbooks.md +0 -48
  358. package/rulesets/topologies/agentic-ai/security.es.md +0 -26
  359. package/rulesets/topologies/agentic-ai/security.md +0 -26
  360. package/rulesets/topologies/agentic-ai/topology.manifest.json +0 -127
  361. package/rulesets/topologies/data-mesh/README.es.md +0 -69
  362. package/rulesets/topologies/data-mesh/README.md +0 -69
  363. package/rulesets/topologies/data-mesh/adoption.es.md +0 -95
  364. package/rulesets/topologies/data-mesh/adoption.md +0 -95
  365. package/rulesets/topologies/data-mesh/cli/cli-flows.es.md +0 -41
  366. package/rulesets/topologies/data-mesh/cli/cli-flows.md +0 -53
  367. package/rulesets/topologies/data-mesh/data-mesh.rego +0 -11
  368. package/rulesets/topologies/data-mesh/data-mesh.rules.json +0 -100
  369. package/rulesets/topologies/data-mesh/data-mesh.test.rego +0 -107
  370. package/rulesets/topologies/data-mesh/data-mesh.wasm +0 -0
  371. package/rulesets/topologies/data-mesh/evidence.es.md +0 -111
  372. package/rulesets/topologies/data-mesh/evidence.md +0 -111
  373. package/rulesets/topologies/data-mesh/evolution.es.md +0 -67
  374. package/rulesets/topologies/data-mesh/evolution.md +0 -67
  375. package/rulesets/topologies/data-mesh/fixtures/invalid.topology.config.json +0 -12
  376. package/rulesets/topologies/data-mesh/fixtures/valid.topology.config.json +0 -12
  377. package/rulesets/topologies/data-mesh/maturity.es.md +0 -36
  378. package/rulesets/topologies/data-mesh/maturity.md +0 -36
  379. package/rulesets/topologies/data-mesh/mcp/mcp-manifest.json +0 -68
  380. package/rulesets/topologies/data-mesh/openapi/openapi.yaml +0 -186
  381. package/rulesets/topologies/data-mesh/operations.es.md +0 -63
  382. package/rulesets/topologies/data-mesh/operations.md +0 -63
  383. package/rulesets/topologies/data-mesh/parity-fixtures/compliant.json +0 -18
  384. package/rulesets/topologies/data-mesh/parity-fixtures/violation.json +0 -21
  385. package/rulesets/topologies/data-mesh/patterns.es.md +0 -67
  386. package/rulesets/topologies/data-mesh/patterns.md +0 -67
  387. package/rulesets/topologies/data-mesh/resilience.es.md +0 -64
  388. package/rulesets/topologies/data-mesh/resilience.md +0 -64
  389. package/rulesets/topologies/data-mesh/runbooks.es.md +0 -147
  390. package/rulesets/topologies/data-mesh/runbooks.md +0 -147
  391. package/rulesets/topologies/data-mesh/security.es.md +0 -66
  392. package/rulesets/topologies/data-mesh/security.md +0 -66
  393. package/rulesets/topologies/data-mesh/topology.config.schema.json +0 -30
  394. package/rulesets/topologies/data-mesh/topology.manifest.json +0 -107
  395. package/rulesets/topologies/edge-computing/README.es.md +0 -81
  396. package/rulesets/topologies/edge-computing/README.md +0 -81
  397. package/rulesets/topologies/edge-computing/adoption.es.md +0 -268
  398. package/rulesets/topologies/edge-computing/adoption.md +0 -268
  399. package/rulesets/topologies/edge-computing/cli/cli-flows.es.md +0 -41
  400. package/rulesets/topologies/edge-computing/cli/cli-flows.md +0 -53
  401. package/rulesets/topologies/edge-computing/edge-computing.rego +0 -41
  402. package/rulesets/topologies/edge-computing/edge-computing.rules.json +0 -50
  403. package/rulesets/topologies/edge-computing/edge-computing.test.rego +0 -33
  404. package/rulesets/topologies/edge-computing/edge-computing.wasm +0 -0
  405. package/rulesets/topologies/edge-computing/evidence.es.md +0 -263
  406. package/rulesets/topologies/edge-computing/evidence.md +0 -263
  407. package/rulesets/topologies/edge-computing/evolution.es.md +0 -257
  408. package/rulesets/topologies/edge-computing/evolution.md +0 -257
  409. package/rulesets/topologies/edge-computing/fixtures/invalid.topology.config.json +0 -6
  410. package/rulesets/topologies/edge-computing/fixtures/valid.topology.config.json +0 -6
  411. package/rulesets/topologies/edge-computing/maturity.es.md +0 -36
  412. package/rulesets/topologies/edge-computing/maturity.md +0 -36
  413. package/rulesets/topologies/edge-computing/mcp/mcp-manifest.json +0 -72
  414. package/rulesets/topologies/edge-computing/openapi/openapi.yaml +0 -187
  415. package/rulesets/topologies/edge-computing/operations.es.md +0 -148
  416. package/rulesets/topologies/edge-computing/operations.md +0 -148
  417. package/rulesets/topologies/edge-computing/parity-fixtures/compliant.json +0 -12
  418. package/rulesets/topologies/edge-computing/parity-fixtures/violation.json +0 -13
  419. package/rulesets/topologies/edge-computing/patterns.es.md +0 -291
  420. package/rulesets/topologies/edge-computing/patterns.md +0 -290
  421. package/rulesets/topologies/edge-computing/resilience.es.md +0 -232
  422. package/rulesets/topologies/edge-computing/resilience.md +0 -229
  423. package/rulesets/topologies/edge-computing/runbooks.es.md +0 -405
  424. package/rulesets/topologies/edge-computing/runbooks.md +0 -405
  425. package/rulesets/topologies/edge-computing/security.es.md +0 -218
  426. package/rulesets/topologies/edge-computing/security.md +0 -218
  427. package/rulesets/topologies/edge-computing/topology.config.schema.json +0 -13
  428. package/rulesets/topologies/edge-computing/topology.manifest.json +0 -113
  429. package/rulesets/topologies/event-driven/README.es.md +0 -71
  430. package/rulesets/topologies/event-driven/README.md +0 -71
  431. package/rulesets/topologies/event-driven/adoption.es.md +0 -67
  432. package/rulesets/topologies/event-driven/adoption.md +0 -67
  433. package/rulesets/topologies/event-driven/cli/cli-flows.es.md +0 -41
  434. package/rulesets/topologies/event-driven/cli/cli-flows.md +0 -53
  435. package/rulesets/topologies/event-driven/event-driven.rego +0 -11
  436. package/rulesets/topologies/event-driven/event-driven.rules.json +0 -100
  437. package/rulesets/topologies/event-driven/event-driven.test.rego +0 -107
  438. package/rulesets/topologies/event-driven/event-driven.wasm +0 -0
  439. package/rulesets/topologies/event-driven/evidence.es.md +0 -69
  440. package/rulesets/topologies/event-driven/evidence.md +0 -69
  441. package/rulesets/topologies/event-driven/evolution.es.md +0 -59
  442. package/rulesets/topologies/event-driven/evolution.md +0 -59
  443. package/rulesets/topologies/event-driven/fixtures/invalid.topology.config.json +0 -12
  444. package/rulesets/topologies/event-driven/fixtures/valid.topology.config.json +0 -12
  445. package/rulesets/topologies/event-driven/maturity.es.md +0 -36
  446. package/rulesets/topologies/event-driven/maturity.md +0 -36
  447. package/rulesets/topologies/event-driven/mcp/mcp-manifest.json +0 -68
  448. package/rulesets/topologies/event-driven/openapi/openapi.yaml +0 -186
  449. package/rulesets/topologies/event-driven/operations.es.md +0 -67
  450. package/rulesets/topologies/event-driven/operations.md +0 -67
  451. package/rulesets/topologies/event-driven/parity-fixtures/compliant.json +0 -18
  452. package/rulesets/topologies/event-driven/parity-fixtures/violation.json +0 -21
  453. package/rulesets/topologies/event-driven/patterns.es.md +0 -68
  454. package/rulesets/topologies/event-driven/patterns.md +0 -68
  455. package/rulesets/topologies/event-driven/resilience.es.md +0 -65
  456. package/rulesets/topologies/event-driven/resilience.md +0 -65
  457. package/rulesets/topologies/event-driven/runbooks.es.md +0 -79
  458. package/rulesets/topologies/event-driven/runbooks.md +0 -79
  459. package/rulesets/topologies/event-driven/security.es.md +0 -59
  460. package/rulesets/topologies/event-driven/security.md +0 -59
  461. package/rulesets/topologies/event-driven/topology.config.schema.json +0 -30
  462. package/rulesets/topologies/event-driven/topology.manifest.json +0 -109
  463. package/rulesets/topologies/progressive-axis/distributed-modules/distributed-modules.rules.es.json +0 -111
  464. package/rulesets/topologies/progressive-axis/distributed-modules/distributed-modules.rules.json +0 -111
  465. package/rulesets/topologies/progressive-axis/microservices/microservices.rules.es.json +0 -106
  466. package/rulesets/topologies/progressive-axis/microservices/microservices.rules.json +0 -106
  467. package/rulesets/topologies/progressive-axis/modular-monolith/modular-monolith.rules.es.json +0 -148
  468. package/rulesets/topologies/progressive-axis/modular-monolith/modular-monolith.rules.json +0 -148
  469. package/rulesets/topologies/serverless/README.es.md +0 -74
  470. package/rulesets/topologies/serverless/README.md +0 -74
  471. package/rulesets/topologies/serverless/adoption.es.md +0 -50
  472. package/rulesets/topologies/serverless/adoption.md +0 -50
  473. package/rulesets/topologies/serverless/cli/cli-flows.es.md +0 -41
  474. package/rulesets/topologies/serverless/cli/cli-flows.md +0 -53
  475. package/rulesets/topologies/serverless/evidence.es.md +0 -66
  476. package/rulesets/topologies/serverless/evidence.md +0 -66
  477. package/rulesets/topologies/serverless/evolution.es.md +0 -36
  478. package/rulesets/topologies/serverless/evolution.md +0 -36
  479. package/rulesets/topologies/serverless/fixtures/invalid.topology.config.json +0 -6
  480. package/rulesets/topologies/serverless/fixtures/valid.topology.config.json +0 -6
  481. package/rulesets/topologies/serverless/maturity.es.md +0 -36
  482. package/rulesets/topologies/serverless/maturity.md +0 -36
  483. package/rulesets/topologies/serverless/mcp/mcp-manifest.json +0 -72
  484. package/rulesets/topologies/serverless/openapi/openapi.yaml +0 -186
  485. package/rulesets/topologies/serverless/operations.es.md +0 -36
  486. package/rulesets/topologies/serverless/operations.md +0 -36
  487. package/rulesets/topologies/serverless/parity-fixtures/compliant.json +0 -13
  488. package/rulesets/topologies/serverless/parity-fixtures/violation.json +0 -15
  489. package/rulesets/topologies/serverless/patterns.es.md +0 -36
  490. package/rulesets/topologies/serverless/patterns.md +0 -36
  491. package/rulesets/topologies/serverless/resilience.es.md +0 -36
  492. package/rulesets/topologies/serverless/resilience.md +0 -36
  493. package/rulesets/topologies/serverless/runbooks.es.md +0 -68
  494. package/rulesets/topologies/serverless/runbooks.md +0 -68
  495. package/rulesets/topologies/serverless/security.es.md +0 -36
  496. package/rulesets/topologies/serverless/security.md +0 -36
  497. package/rulesets/topologies/serverless/serverless.rego +0 -32
  498. package/rulesets/topologies/serverless/serverless.rules.json +0 -33
  499. package/rulesets/topologies/serverless/serverless.test.rego +0 -28
  500. package/rulesets/topologies/serverless/serverless.wasm +0 -0
  501. package/rulesets/topologies/serverless/topology.config.schema.json +0 -28
  502. package/rulesets/topologies/serverless/topology.manifest.json +0 -114
@@ -1,29 +0,0 @@
1
- {
2
- "$schema": "../../schema/ruleset-standard.schema.json",
3
- "$id": "https://evolith.dev/rulesets/adr/generated/adr-0098-rest-uri-versioning-and-deprecation-policy.rules.json",
4
- "title": "ADR-0098 — REST URI Versioning and Deprecation Policy Rules (generated)",
5
- "description": "Auto-generated ruleset encoding ADR-0098 (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-0098",
8
- "adrTitle": "REST URI Versioning and Deprecation Policy",
9
- "status": "Accepted",
10
- "date": "2026-06-21",
11
- "rules": [
12
- {
13
- "id": "CORE-0098-01",
14
- "severity": "MUST",
15
- "category": "adr-conformance",
16
- "title": "Conform to ADR-0098: REST URI Versioning and Deprecation Policy",
17
- "description": "Implementations MUST conform to the decision recorded in ADR-0098 (core track). ADR decision: Adopt URI versioning as the canonical REST versioning strategy and publish a deprecation policy enforced by CI and visible to callers in response headers. Every REST route is served under /api/v<MAJOR /... This ADR contains enforceable language (required, lint, enforce, enforced); conformance is expected to be verifiable via static analysis, linting, CI gates, or structural checks.",
18
- "statement": "ADR decision: Adopt URI versioning as the canonical REST versioning strategy and publish a deprecation policy enforced by CI and visible to callers in response headers. Every REST route is served under /api/v<MAJOR /...",
19
- "rationale": "Derived from ADR-0098 \"Decision\" section. Enforcement signals detected: required, lint, enforce, enforced.",
20
- "validationQuery": "Verify codebase/CI compliance with ADR-0098 via static analysis, lint rules, or pipeline gates covering: required, lint, enforce, enforced. Concrete checks to be wired into the harness.",
21
- "blocking": true,
22
- "enforcement": "executable"
23
- }
24
- ],
25
- "references": [
26
- "reference/architecture/adrs/core/0098-rest-uri-versioning-deprecation-policy.md"
27
- ],
28
- "effectiveDate": "2026-06-21"
29
- }
@@ -1,27 +0,0 @@
1
- {
2
- "$schema": "../../schema/ruleset-standard.schema.json",
3
- "$id": "https://evolith.dev/rulesets/adr/generated/adr-0099-opa-bundle-distribution-via-s3-minio.rules.json",
4
- "title": "ADR-0099 — OPA Bundle Distribution via S3 (MinIO) Rules (generated)",
5
- "description": "Auto-generated ruleset encoding ADR-0099 (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-0099",
8
- "adrTitle": "OPA Bundle Distribution via S3 (MinIO)",
9
- "status": "Superseded by [ADR 0085](./0085-agnostic-opa-wasm-distribution.md)",
10
- "date": "",
11
- "rules": [
12
- {
13
- "id": "CORE-0099-01",
14
- "severity": "SHOULD",
15
- "category": "adr-conformance",
16
- "title": "Honor design decision in ADR-0099: OPA Bundle Distribution via S3 (MinIO)",
17
- "description": "Design and implementation SHOULD honor the decision recorded in ADR-0099 (core track). ADR decision: We will adopt the OPA Bundle API pattern using an S3 compatible object store (MinIO). 1. Immutable Bundles (CI/CD) : The CI/CD pipeline (GitHub Actions) will compile the .rego policies and .json data into a compressed bundle.tar.gz artifact only after all validation tests pass. Manual attestation required — not machine-verifiable.",
18
- "statement": "ADR decision: We will adopt the OPA Bundle API pattern using an S3 compatible object store (MinIO). 1. Immutable Bundles (CI/CD) : The CI/CD pipeline (GitHub Actions) will compile the .rego policies and .json data into a compressed bundle.tar.gz artifact only after all validation tests pass.",
19
- "rationale": "Derived from ADR-0099 \"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/0099-opa-bundle-s3-distribution.md"
26
- ]
27
- }
@@ -1,29 +0,0 @@
1
- {
2
- "$schema": "../../schema/ruleset-standard.schema.json",
3
- "$id": "https://evolith.dev/rulesets/adr/generated/adr-ai-augmented-0001-harness-engineering-for-ai-augmented-development.rules.json",
4
- "title": "ADR-0001 — Harness Engineering for AI-Augmented Development Rules (generated)",
5
- "description": "Auto-generated ruleset encoding ADR-0001 (ai-augmented 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": "Harness Engineering for AI-Augmented Development",
9
- "status": "Accepted",
10
- "date": "2026-06-23",
11
- "rules": [
12
- {
13
- "id": "AI-0001-01",
14
- "severity": "MUST",
15
- "category": "adr-conformance",
16
- "title": "Conform to ADR-0001: Harness Engineering for AI-Augmented Development",
17
- "description": "Implementations MUST conform to the decision recorded in ADR-0001 (ai-augmented track). ADR decision: We establish Harness Engineering as a distinct engineering discipline within Evolith with four pillars: Every script that sends data to an external LLM or embedding provider MUST route through review input.mjs or rag sync.mjs , which enforce: Secret redaction via regex patterns (API keys, tokens, connection strings) B… This ADR contains enforceable language (must, prohibited, dependencies, structure, enforce, boundaries); conformance is expected to be verifiable via static analysis, linting, CI gates, or structural checks.",
18
- "statement": "ADR decision: We establish Harness Engineering as a distinct engineering discipline within Evolith with four pillars: Every script that sends data to an external LLM or embedding provider MUST route through review input.mjs or rag sync.mjs , which enforce: Secret redaction via regex patterns (API keys, tokens, connection strings) B…",
19
- "rationale": "Derived from ADR-0001 \"Decision\" section. Enforcement signals detected: must, prohibited, dependencies, structure, enforce, boundaries.",
20
- "validationQuery": "Verify codebase/CI compliance with ADR-0001 via static analysis, lint rules, or pipeline gates covering: must, prohibited, dependencies, structure, enforce, boundaries. Concrete checks to be wired into the harness.",
21
- "blocking": true,
22
- "enforcement": "executable"
23
- }
24
- ],
25
- "references": [
26
- "reference/architecture/adrs/ai-augmented/0001-harness-engineering.md"
27
- ],
28
- "effectiveDate": "2026-06-23"
29
- }
@@ -1,29 +0,0 @@
1
- {
2
- "$schema": "../../schema/ruleset-standard.schema.json",
3
- "$id": "https://evolith.dev/rulesets/adr/generated/adr-ai-augmented-0002-mcp-integration-protocol-for-agent-tool-invocation.rules.json",
4
- "title": "ADR-0002 — MCP Integration Protocol for Agent Tool Invocation Rules (generated)",
5
- "description": "Auto-generated ruleset encoding ADR-0002 (ai-augmented track). Classification: executable. Generated by .harness/scripts/generate-adr-rulesets.mjs — do not edit by hand.",
6
- "version": "1.0.0",
7
- "adrId": "ADR-0002",
8
- "adrTitle": "MCP Integration Protocol for Agent Tool Invocation",
9
- "status": "Accepted",
10
- "date": "2026-06-23",
11
- "rules": [
12
- {
13
- "id": "AI-0002-01",
14
- "severity": "MUST",
15
- "category": "adr-conformance",
16
- "title": "Conform to ADR-0002: MCP Integration Protocol for Agent Tool Invocation",
17
- "description": "Implementations MUST conform to the decision recorded in ADR-0002 (ai-augmented track). ADR decision: We define the MCP Integration Protocol with five mandatory rules for all tool producers and consumers within Evolith. This ADR contains enforceable language (must not, must, enforce, schema validation); conformance is expected to be verifiable via static analysis, linting, CI gates, or structural checks.",
18
- "statement": "ADR decision: We define the MCP Integration Protocol with five mandatory rules for all tool producers and consumers within Evolith.",
19
- "rationale": "Derived from ADR-0002 \"Decision\" section. Enforcement signals detected: must not, must, enforce, schema validation.",
20
- "validationQuery": "Verify codebase/CI compliance with ADR-0002 via static analysis, lint rules, or pipeline gates covering: must not, must, enforce, schema validation. Concrete checks to be wired into the harness.",
21
- "blocking": true,
22
- "enforcement": "executable"
23
- }
24
- ],
25
- "references": [
26
- "reference/architecture/adrs/ai-augmented/0002-mcp-integration-protocol.md"
27
- ],
28
- "effectiveDate": "2026-06-23"
29
- }
@@ -1,29 +0,0 @@
1
- {
2
- "$schema": "../../schema/ruleset-standard.schema.json",
3
- "$id": "https://evolith.dev/rulesets/adr/generated/adr-ai-augmented-0003-model-selection-governance-for-ai-augmented-workflows.rules.json",
4
- "title": "ADR-0003 — Model Selection Governance for AI-Augmented Workflows Rules (generated)",
5
- "description": "Auto-generated ruleset encoding ADR-0003 (ai-augmented track). Classification: executable. Generated by .harness/scripts/generate-adr-rulesets.mjs — do not edit by hand.",
6
- "version": "1.0.0",
7
- "adrId": "ADR-0003",
8
- "adrTitle": "Model Selection Governance for AI-Augmented Workflows",
9
- "status": "Accepted",
10
- "date": "2026-06-23",
11
- "rules": [
12
- {
13
- "id": "AI-0003-01",
14
- "severity": "MUST",
15
- "category": "adr-conformance",
16
- "title": "Conform to ADR-0003: Model Selection Governance for AI-Augmented Workflows",
17
- "description": "Implementations MUST conform to the decision recorded in ADR-0003 (ai-augmented track). ADR decision: We establish Model Selection Governance with three binding rules: All AI models used in Evolith workflows MUST be registered in a model registry.json artifact with: Model identifier and provider (e.g., gemini 2.0 flash , text embedding 3 small ) Capability classification ( code review , embedding , classification , ge… This ADR contains enforceable language (must, required, structure); conformance is expected to be verifiable via static analysis, linting, CI gates, or structural checks.",
18
- "statement": "ADR decision: We establish Model Selection Governance with three binding rules: All AI models used in Evolith workflows MUST be registered in a model registry.json artifact with: Model identifier and provider (e.g., gemini 2.0 flash , text embedding 3 small ) Capability classification ( code review , embedding , classification , ge…",
19
- "rationale": "Derived from ADR-0003 \"Decision\" section. Enforcement signals detected: must, required, structure.",
20
- "validationQuery": "Verify codebase/CI compliance with ADR-0003 via static analysis, lint rules, or pipeline gates covering: must, required, structure. Concrete checks to be wired into the harness.",
21
- "blocking": true,
22
- "enforcement": "executable"
23
- }
24
- ],
25
- "references": [
26
- "reference/architecture/adrs/ai-augmented/0003-model-selection-governance.md"
27
- ],
28
- "effectiveDate": "2026-06-23"
29
- }
@@ -1,29 +0,0 @@
1
- {
2
- "$schema": "../../schema/ruleset-standard.schema.json",
3
- "$id": "https://evolith.dev/rulesets/adr/generated/adr-ai-augmented-0004-agents-md-as-mandatory-repository-artifact.rules.json",
4
- "title": "ADR-0004 — AGENTS.md as Mandatory Repository Artifact Rules (generated)",
5
- "description": "Auto-generated ruleset encoding ADR-0004 (ai-augmented track). Classification: executable. Generated by .harness/scripts/generate-adr-rulesets.mjs — do not edit by hand.",
6
- "version": "1.0.0",
7
- "adrId": "ADR-0004",
8
- "adrTitle": "AGENTS.md as Mandatory Repository Artifact",
9
- "status": "Accepted",
10
- "date": "2026-06-23",
11
- "rules": [
12
- {
13
- "id": "AI-0004-01",
14
- "severity": "MUST",
15
- "category": "adr-conformance",
16
- "title": "Conform to ADR-0004: AGENTS.md as Mandatory Repository Artifact",
17
- "description": "Implementations MUST conform to the decision recorded in ADR-0004 (ai-augmented track). ADR decision: We mandate AGENTS.md as a required artifact for every repository in the Evolith ecosystem with the following rules: Every repository that contains source code or documentation MUST have a root level AGENTS.md . This ADR contains enforceable language (must not, must, required, layer, naming, boundaries); conformance is expected to be verifiable via static analysis, linting, CI gates, or structural checks.",
18
- "statement": "ADR decision: We mandate AGENTS.md as a required artifact for every repository in the Evolith ecosystem with the following rules: Every repository that contains source code or documentation MUST have a root level AGENTS.md .",
19
- "rationale": "Derived from ADR-0004 \"Decision\" section. Enforcement signals detected: must not, must, required, layer, naming, boundaries.",
20
- "validationQuery": "Verify codebase/CI compliance with ADR-0004 via static analysis, lint rules, or pipeline gates covering: must not, must, required, layer, naming, boundaries. Concrete checks to be wired into the harness.",
21
- "blocking": true,
22
- "enforcement": "executable"
23
- }
24
- ],
25
- "references": [
26
- "reference/architecture/adrs/ai-augmented/0004-agents-md-mandatory-artifact.md"
27
- ],
28
- "effectiveDate": "2026-06-23"
29
- }
@@ -1,29 +0,0 @@
1
- {
2
- "$schema": "../../schema/ruleset-standard.schema.json",
3
- "$id": "https://evolith.dev/rulesets/adr/generated/adr-ai-augmented-0005-human-in-the-loop-policy-for-autonomous-agent-operations.rules.json",
4
- "title": "ADR-0005 — Human-in-the-Loop Policy for Autonomous Agent Operations Rules (generated)",
5
- "description": "Auto-generated ruleset encoding ADR-0005 (ai-augmented track). Classification: executable. Generated by .harness/scripts/generate-adr-rulesets.mjs — do not edit by hand.",
6
- "version": "1.0.0",
7
- "adrId": "ADR-0005",
8
- "adrTitle": "Human-in-the-Loop Policy for Autonomous Agent Operations",
9
- "status": "Accepted",
10
- "date": "2026-06-23",
11
- "rules": [
12
- {
13
- "id": "AI-0005-01",
14
- "severity": "MUST",
15
- "category": "adr-conformance",
16
- "title": "Conform to ADR-0005: Human-in-the-Loop Policy for Autonomous Agent Operations",
17
- "description": "Implementations MUST conform to the decision recorded in ADR-0005 (ai-augmented track). ADR decision: We establish a Human in the Loop Policy with three tiers of human oversight: Agents MAY operate autonomously for these actions: Running validation scripts and reporting results Generating documentation drafts (not committing) Classifying changes into impact categories Emitting cost telemetry and budget alerts The agen… This ADR contains enforceable language (must not, must, structure); conformance is expected to be verifiable via static analysis, linting, CI gates, or structural checks.",
18
- "statement": "ADR decision: We establish a Human in the Loop Policy with three tiers of human oversight: Agents MAY operate autonomously for these actions: Running validation scripts and reporting results Generating documentation drafts (not committing) Classifying changes into impact categories Emitting cost telemetry and budget alerts The agen…",
19
- "rationale": "Derived from ADR-0005 \"Decision\" section. Enforcement signals detected: must not, must, structure.",
20
- "validationQuery": "Verify codebase/CI compliance with ADR-0005 via static analysis, lint rules, or pipeline gates covering: must not, must, structure. Concrete checks to be wired into the harness.",
21
- "blocking": true,
22
- "enforcement": "executable"
23
- }
24
- ],
25
- "references": [
26
- "reference/architecture/adrs/ai-augmented/0005-human-in-the-loop-policy.md"
27
- ],
28
- "effectiveDate": "2026-06-23"
29
- }
@@ -1,29 +0,0 @@
1
- {
2
- "$schema": "../../schema/ruleset-standard.schema.json",
3
- "$id": "https://evolith.dev/rulesets/adr/generated/adr-android-0042-canonical-android-native-mobile-architecture.rules.json",
4
- "title": "ADR-0042 — Canonical Android Native Mobile Architecture Rules (generated)",
5
- "description": "Auto-generated ruleset encoding ADR-0042 (android track). Classification: executable. Generated by .harness/scripts/generate-adr-rulesets.mjs — do not edit by hand.",
6
- "version": "1.0.0",
7
- "adrId": "ADR-0042",
8
- "adrTitle": "Canonical Android Native Mobile Architecture",
9
- "status": "Approved",
10
- "date": "2026-05-11",
11
- "rules": [
12
- {
13
- "id": "AND-0042-01",
14
- "severity": "MUST",
15
- "category": "adr-conformance",
16
- "title": "Conform to ADR-0042: Canonical Android Native Mobile Architecture",
17
- "description": "Implementations MUST conform to the decision recorded in ADR-0042 (android track). ADR decision: The canonical Android stack consists of: Language : 100% Kotlin (Modern coroutines for async execution). UI Engine : Jetpack Compose (Declarative, reactive UI mapping state directly). This ADR contains enforceable language (must, dependency, dependencies); conformance is expected to be verifiable via static analysis, linting, CI gates, or structural checks.",
18
- "statement": "ADR decision: The canonical Android stack consists of: Language : 100% Kotlin (Modern coroutines for async execution). UI Engine : Jetpack Compose (Declarative, reactive UI mapping state directly).",
19
- "rationale": "Derived from ADR-0042 \"Decision\" section. Enforcement signals detected: must, dependency, dependencies.",
20
- "validationQuery": "Verify codebase/CI compliance with ADR-0042 via static analysis, lint rules, or pipeline gates covering: must, dependency, dependencies. Concrete checks to be wired into the harness.",
21
- "blocking": true,
22
- "enforcement": "executable"
23
- }
24
- ],
25
- "references": [
26
- "reference/architecture/adrs/android/0042-canonical-android-mobile-architecture.md"
27
- ],
28
- "effectiveDate": "2026-05-11"
29
- }
@@ -1,29 +0,0 @@
1
- {
2
- "$schema": "../../schema/ruleset-standard.schema.json",
3
- "$id": "https://evolith.dev/rulesets/adr/generated/adr-dotnet-0041-canonical-net-c-backend-architecture.rules.json",
4
- "title": "ADR-0041 — Canonical .NET (C#) Backend Architecture Rules (generated)",
5
- "description": "Auto-generated ruleset encoding ADR-0041 (dotnet track). Classification: executable. Generated by .harness/scripts/generate-adr-rulesets.mjs — do not edit by hand.",
6
- "version": "1.0.0",
7
- "adrId": "ADR-0041",
8
- "adrTitle": "Canonical .NET (C#) Backend Architecture",
9
- "status": "Approved",
10
- "date": "2026-05-11",
11
- "rules": [
12
- {
13
- "id": "DOT-0041-01",
14
- "severity": "MUST",
15
- "category": "adr-conformance",
16
- "title": "Conform to ADR-0041: Canonical .NET (C#) Backend Architecture",
17
- "description": "Implementations MUST conform to the decision recorded in ADR-0041 (dotnet track). ADR decision: The canonical .NET framework consists of: Runtime : .NET 8+ (Long Term Support). Framework : ASP.NET Core (Minimal APIs optimized for lightweight containerization). Style : Clean Architecture. This ADR contains enforceable language (dependency, dependencies); conformance is expected to be verifiable via static analysis, linting, CI gates, or structural checks.",
18
- "statement": "ADR decision: The canonical .NET framework consists of: Runtime : .NET 8+ (Long Term Support). Framework : ASP.NET Core (Minimal APIs optimized for lightweight containerization). Style : Clean Architecture.",
19
- "rationale": "Derived from ADR-0041 \"Decision\" section. Enforcement signals detected: dependency, dependencies.",
20
- "validationQuery": "Verify codebase/CI compliance with ADR-0041 via static analysis, lint rules, or pipeline gates covering: dependency, dependencies. Concrete checks to be wired into the harness.",
21
- "blocking": true,
22
- "enforcement": "executable"
23
- }
24
- ],
25
- "references": [
26
- "reference/architecture/adrs/dotnet/0041-canonical-dotnet-backend-architecture.md"
27
- ],
28
- "effectiveDate": "2026-05-11"
29
- }
@@ -1,29 +0,0 @@
1
- {
2
- "$schema": "../../schema/ruleset-standard.schema.json",
3
- "$id": "https://evolith.dev/rulesets/adr/generated/adr-dotnet-0060-net-multi-tenancy-dual-layer-strategy-ef-core-sql-server.rules.json",
4
- "title": "ADR-0060 — .NET Multi-Tenancy Dual-Layer Strategy (EF Core & SQL Server) Rules (generated)",
5
- "description": "Auto-generated ruleset encoding ADR-0060 (dotnet track). Classification: executable. Generated by .harness/scripts/generate-adr-rulesets.mjs — do not edit by hand.",
6
- "version": "1.0.0",
7
- "adrId": "ADR-0060",
8
- "adrTitle": ".NET Multi-Tenancy Dual-Layer Strategy (EF Core & SQL Server)",
9
- "status": "Proposed",
10
- "date": "2026-05-23",
11
- "rules": [
12
- {
13
- "id": "DOT-0060-01",
14
- "severity": "MUST",
15
- "category": "adr-conformance",
16
- "title": "Conform to ADR-0060: .NET Multi-Tenancy Dual-Layer Strategy (EF Core & SQL Server)",
17
- "description": "Implementations MUST conform to the decision recorded in ADR-0060 (dotnet track). ADR decision: We adopt a Dual Layer Tenant Isolation (Defense in Depth) strategy for .NET APIs using EF Core and SQL Server: All tenant scoped entity configurations in the DbContext must apply a query filter that limits rows based on the current request's tenant context: csharp modelBuilder.Entity<TenantScopedEntity () .HasQueryFil… This ADR contains enforceable language (must, layer, enforce); conformance is expected to be verifiable via static analysis, linting, CI gates, or structural checks.",
18
- "statement": "ADR decision: We adopt a Dual Layer Tenant Isolation (Defense in Depth) strategy for .NET APIs using EF Core and SQL Server: All tenant scoped entity configurations in the DbContext must apply a query filter that limits rows based on the current request's tenant context: csharp modelBuilder.Entity<TenantScopedEntity () .HasQueryFil…",
19
- "rationale": "Derived from ADR-0060 \"Decision\" section. Enforcement signals detected: must, layer, enforce.",
20
- "validationQuery": "Verify codebase/CI compliance with ADR-0060 via static analysis, lint rules, or pipeline gates covering: must, layer, enforce. Concrete checks to be wired into the harness.",
21
- "blocking": true,
22
- "enforcement": "executable"
23
- }
24
- ],
25
- "references": [
26
- "reference/architecture/adrs/dotnet/0060-dotnet-multi-tenancy-dual-layer-strategy.md"
27
- ],
28
- "effectiveDate": "2026-05-23"
29
- }
@@ -1,28 +0,0 @@
1
- {
2
- "$schema": "../../schema/ruleset-standard.schema.json",
3
- "$id": "https://evolith.dev/rulesets/adr/generated/adr-dotnet-0061-transactional-event-lifecycle-in-ef-core.rules.json",
4
- "title": "ADR-0061 — Transactional Event Lifecycle in EF Core Rules (generated)",
5
- "description": "Auto-generated ruleset encoding ADR-0061 (dotnet track). Classification: advisory. Generated by .harness/scripts/generate-adr-rulesets.mjs — do not edit by hand.",
6
- "version": "1.0.0",
7
- "adrId": "ADR-0061",
8
- "adrTitle": "Transactional Event Lifecycle in EF Core",
9
- "status": "Proposed",
10
- "date": "2026-05-23",
11
- "rules": [
12
- {
13
- "id": "DOT-0061-01",
14
- "severity": "SHOULD",
15
- "category": "adr-conformance",
16
- "title": "Honor design decision in ADR-0061: Transactional Event Lifecycle in EF Core",
17
- "description": "Design and implementation SHOULD honor the decision recorded in ADR-0061 (dotnet track). ADR decision: We standardize a strict Post Commit Event Clearing sequence for all SQL repositories using EF Core: 1. Map and Track : The repository maps aggregate domain events to OutboxMessages and registers them with the EF DbContext change tracker. Manual attestation required — not machine-verifiable.",
18
- "statement": "ADR decision: We standardize a strict Post Commit Event Clearing sequence for all SQL repositories using EF Core: 1. Map and Track : The repository maps aggregate domain events to OutboxMessages and registers them with the EF DbContext change tracker.",
19
- "rationale": "Derived from ADR-0061 \"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/dotnet/0061-transactional-event-lifecycle-ef-core.md"
26
- ],
27
- "effectiveDate": "2026-05-23"
28
- }
@@ -1,29 +0,0 @@
1
- {
2
- "$schema": "../../schema/ruleset-standard.schema.json",
3
- "$id": "https://evolith.dev/rulesets/adr/generated/adr-dotnet-0062-net-immutable-audit-trail-via-ddl-triggers-delta-capture.rules.json",
4
- "title": "ADR-0062 — .NET Immutable Audit Trail via DDL Triggers & Delta Capture Rules (generated)",
5
- "description": "Auto-generated ruleset encoding ADR-0062 (dotnet track). Classification: executable. Generated by .harness/scripts/generate-adr-rulesets.mjs — do not edit by hand.",
6
- "version": "1.0.0",
7
- "adrId": "ADR-0062",
8
- "adrTitle": ".NET Immutable Audit Trail via DDL Triggers & Delta Capture",
9
- "status": "Proposed",
10
- "date": "2026-05-23",
11
- "rules": [
12
- {
13
- "id": "DOT-0062-01",
14
- "severity": "MUST",
15
- "category": "adr-conformance",
16
- "title": "Conform to ADR-0062: .NET Immutable Audit Trail via DDL Triggers & Delta Capture",
17
- "description": "Implementations MUST conform to the decision recorded in ADR-0062 (dotnet track). ADR decision: We adopt a DDL Trigger and Delta Serialization strategy to enforce audit trail immutability: All audit tables in SQL Server are bound to DDL triggers that immediately reject any UPDATE or DELETE statements: sql CREATE OR ALTER TRIGGER trg security events immutable ON ums audit.security events AFTER UPDATE, DELETE AS B… This ADR contains enforceable language (prohibited, layer, structure, enforce); conformance is expected to be verifiable via static analysis, linting, CI gates, or structural checks.",
18
- "statement": "ADR decision: We adopt a DDL Trigger and Delta Serialization strategy to enforce audit trail immutability: All audit tables in SQL Server are bound to DDL triggers that immediately reject any UPDATE or DELETE statements: sql CREATE OR ALTER TRIGGER trg security events immutable ON ums audit.security events AFTER UPDATE, DELETE AS B…",
19
- "rationale": "Derived from ADR-0062 \"Decision\" section. Enforcement signals detected: prohibited, layer, structure, enforce.",
20
- "validationQuery": "Verify codebase/CI compliance with ADR-0062 via static analysis, lint rules, or pipeline gates covering: prohibited, layer, structure, enforce. Concrete checks to be wired into the harness.",
21
- "blocking": true,
22
- "enforcement": "executable"
23
- }
24
- ],
25
- "references": [
26
- "reference/architecture/adrs/dotnet/0062-dotnet-immutable-audit-trail.md"
27
- ],
28
- "effectiveDate": "2026-05-23"
29
- }
@@ -1,28 +0,0 @@
1
- {
2
- "$schema": "../../schema/ruleset-standard.schema.json",
3
- "$id": "https://evolith.dev/rulesets/adr/generated/adr-dotnet-0063-b2b-request-idempotency-middleware-in-asp-net-core.rules.json",
4
- "title": "ADR-0063 — B2B Request Idempotency Middleware in ASP.NET Core Rules (generated)",
5
- "description": "Auto-generated ruleset encoding ADR-0063 (dotnet track). Classification: advisory. Generated by .harness/scripts/generate-adr-rulesets.mjs — do not edit by hand.",
6
- "version": "1.0.0",
7
- "adrId": "ADR-0063",
8
- "adrTitle": "B2B Request Idempotency Middleware in ASP.NET Core",
9
- "status": "Proposed",
10
- "date": "2026-05-23",
11
- "rules": [
12
- {
13
- "id": "DOT-0063-01",
14
- "severity": "SHOULD",
15
- "category": "adr-conformance",
16
- "title": "Honor design decision in ADR-0063: B2B Request Idempotency Middleware in ASP.NET Core",
17
- "description": "Design and implementation SHOULD honor the decision recorded in ADR-0063 (dotnet track). ADR decision: We implement a unified Idempotency Interceptor Middleware in the ASP.NET Core pipeline: 1. Header Identification : Intercept endpoints decorated with idempotency metadata using the Idempotency Key HTTP header. Manual attestation required — not machine-verifiable.",
18
- "statement": "ADR decision: We implement a unified Idempotency Interceptor Middleware in the ASP.NET Core pipeline: 1. Header Identification : Intercept endpoints decorated with idempotency metadata using the Idempotency Key HTTP header.",
19
- "rationale": "Derived from ADR-0063 \"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/dotnet/0063-dotnet-b2b-idempotency-middleware.md"
26
- ],
27
- "effectiveDate": "2026-05-23"
28
- }
@@ -1,29 +0,0 @@
1
- {
2
- "$schema": "../../schema/ruleset-standard.schema.json",
3
- "$id": "https://evolith.dev/rulesets/adr/generated/adr-dotnet-0064-net-request-scope-observability-context-propagation.rules.json",
4
- "title": "ADR-0064 — .NET Request-Scope Observability Context Propagation Rules (generated)",
5
- "description": "Auto-generated ruleset encoding ADR-0064 (dotnet track). Classification: executable. Generated by .harness/scripts/generate-adr-rulesets.mjs — do not edit by hand.",
6
- "version": "1.0.0",
7
- "adrId": "ADR-0064",
8
- "adrTitle": ".NET Request-Scope Observability Context Propagation",
9
- "status": "Accepted",
10
- "date": "2026-05-24",
11
- "rules": [
12
- {
13
- "id": "DOT-0064-01",
14
- "severity": "MUST",
15
- "category": "adr-conformance",
16
- "title": "Conform to ADR-0064: .NET Request-Scope Observability Context Propagation",
17
- "description": "Implementations MUST conform to the decision recorded in ADR-0064 (dotnet track). ADR decision: Introduce a scoped RequestContextAccessor that is written exactly once by the SessionTrackingMiddleware and consumed by any component in the same DI scope through two segregated interfaces. This ADR contains enforceable language (required, dependencies, layer, structure); conformance is expected to be verifiable via static analysis, linting, CI gates, or structural checks.",
18
- "statement": "ADR decision: Introduce a scoped RequestContextAccessor that is written exactly once by the SessionTrackingMiddleware and consumed by any component in the same DI scope through two segregated interfaces.",
19
- "rationale": "Derived from ADR-0064 \"Decision\" section. Enforcement signals detected: required, dependencies, layer, structure.",
20
- "validationQuery": "Verify codebase/CI compliance with ADR-0064 via static analysis, lint rules, or pipeline gates covering: required, dependencies, layer, structure. Concrete checks to be wired into the harness.",
21
- "blocking": true,
22
- "enforcement": "executable"
23
- }
24
- ],
25
- "references": [
26
- "reference/architecture/adrs/dotnet/0064-dotnet-request-scope-observability-context.md"
27
- ],
28
- "effectiveDate": "2026-05-24"
29
- }
@@ -1,29 +0,0 @@
1
- {
2
- "$schema": "../../schema/ruleset-standard.schema.json",
3
- "$id": "https://evolith.dev/rulesets/adr/generated/adr-dotnet-0065-net-pii-safe-structured-logging-pipeline-serilog.rules.json",
4
- "title": "ADR-0065 — .NET PII-Safe Structured Logging Pipeline (Serilog) Rules (generated)",
5
- "description": "Auto-generated ruleset encoding ADR-0065 (dotnet track). Classification: executable. Generated by .harness/scripts/generate-adr-rulesets.mjs — do not edit by hand.",
6
- "version": "1.0.0",
7
- "adrId": "ADR-0065",
8
- "adrTitle": ".NET PII-Safe Structured Logging Pipeline (Serilog)",
9
- "status": "Accepted",
10
- "date": "2026-05-24",
11
- "rules": [
12
- {
13
- "id": "DOT-0065-01",
14
- "severity": "MUST",
15
- "category": "adr-conformance",
16
- "title": "Conform to ADR-0065: .NET PII-Safe Structured Logging Pipeline (Serilog)",
17
- "description": "Implementations MUST conform to the decision recorded in ADR-0065 (dotnet track). ADR decision: Apply PII masking at the Serilog pipeline level through two complementary components that intercept log events before any sink receives them. No Domain or Application layer changes are required. This ADR contains enforceable language (forbidden, required, layer, structure); conformance is expected to be verifiable via static analysis, linting, CI gates, or structural checks.",
18
- "statement": "ADR decision: Apply PII masking at the Serilog pipeline level through two complementary components that intercept log events before any sink receives them. No Domain or Application layer changes are required.",
19
- "rationale": "Derived from ADR-0065 \"Decision\" section. Enforcement signals detected: forbidden, required, layer, structure.",
20
- "validationQuery": "Verify codebase/CI compliance with ADR-0065 via static analysis, lint rules, or pipeline gates covering: forbidden, required, layer, structure. Concrete checks to be wired into the harness.",
21
- "blocking": true,
22
- "enforcement": "executable"
23
- }
24
- ],
25
- "references": [
26
- "reference/architecture/adrs/dotnet/0065-dotnet-pii-safe-serilog-pipeline.md"
27
- ],
28
- "effectiveDate": "2026-05-24"
29
- }
@@ -1,28 +0,0 @@
1
- {
2
- "$schema": "../../schema/ruleset-standard.schema.json",
3
- "$id": "https://evolith.dev/rulesets/adr/generated/adr-dotnet-0066-net-lightweight-http-idempotency-via-imemorycache-idistribut.rules.json",
4
- "title": "ADR-0066 — .NET Lightweight HTTP Idempotency via IMemoryCache / IDistributedCache Rules (generated)",
5
- "description": "Auto-generated ruleset encoding ADR-0066 (dotnet track). Classification: advisory. Generated by .harness/scripts/generate-adr-rulesets.mjs — do not edit by hand.",
6
- "version": "1.0.0",
7
- "adrId": "ADR-0066",
8
- "adrTitle": ".NET Lightweight HTTP Idempotency via IMemoryCache / IDistributedCache",
9
- "status": "Accepted",
10
- "date": "2026-05-24",
11
- "rules": [
12
- {
13
- "id": "DOT-0066-01",
14
- "severity": "SHOULD",
15
- "category": "adr-conformance",
16
- "title": "Honor design decision in ADR-0066: .NET Lightweight HTTP Idempotency via IMemoryCache / IDistributedCache",
17
- "description": "Design and implementation SHOULD honor the decision recorded in ADR-0066 (dotnet track). ADR decision: Implement request deduplication as an ASP.NET Core middleware reading the Idempotency Key header, caching the first response in IMemoryCache (or IDistributedCache ), and replaying it verbatim for duplicate requests. Manual attestation required — not machine-verifiable.",
18
- "statement": "ADR decision: Implement request deduplication as an ASP.NET Core middleware reading the Idempotency Key header, caching the first response in IMemoryCache (or IDistributedCache ), and replaying it verbatim for duplicate requests.",
19
- "rationale": "Derived from ADR-0066 \"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/dotnet/0066-dotnet-lightweight-http-idempotency.md"
26
- ],
27
- "effectiveDate": "2026-05-24"
28
- }
@@ -1,29 +0,0 @@
1
- {
2
- "$schema": "../../schema/ruleset-standard.schema.json",
3
- "$id": "https://evolith.dev/rulesets/adr/generated/adr-dotnet-0069-net-grpc-service-setup-protobuf-contracts.rules.json",
4
- "title": "ADR-0069 — .NET gRPC Service Setup & Protobuf Contracts Rules (generated)",
5
- "description": "Auto-generated ruleset encoding ADR-0069 (dotnet track). Classification: executable. Generated by .harness/scripts/generate-adr-rulesets.mjs — do not edit by hand.",
6
- "version": "1.0.0",
7
- "adrId": "ADR-0069",
8
- "adrTitle": ".NET gRPC Service Setup & Protobuf Contracts",
9
- "status": "Proposed",
10
- "date": "2026-06-06",
11
- "rules": [
12
- {
13
- "id": "DOT-0069-01",
14
- "severity": "MUST",
15
- "category": "adr-conformance",
16
- "title": "Conform to ADR-0069: .NET gRPC Service Setup & Protobuf Contracts",
17
- "description": "Implementations MUST conform to the decision recorded in ADR-0069 (dotnet track). ADR decision: We adopt Option C as the canonical .NET gRPC setup. This ADR contains enforceable language (must, layer, structure, enforce); conformance is expected to be verifiable via static analysis, linting, CI gates, or structural checks.",
18
- "statement": "ADR decision: We adopt Option C as the canonical .NET gRPC setup.",
19
- "rationale": "Derived from ADR-0069 \"Decision\" section. Enforcement signals detected: must, layer, structure, enforce.",
20
- "validationQuery": "Verify codebase/CI compliance with ADR-0069 via static analysis, lint rules, or pipeline gates covering: must, layer, structure, enforce. Concrete checks to be wired into the harness.",
21
- "blocking": true,
22
- "enforcement": "executable"
23
- }
24
- ],
25
- "references": [
26
- "reference/architecture/adrs/dotnet/0069-dotnet-grpc-service-setup-protobuf-contracts.md"
27
- ],
28
- "effectiveDate": "2026-06-06"
29
- }
@@ -1,29 +0,0 @@
1
- {
2
- "$schema": "../../schema/ruleset-standard.schema.json",
3
- "$id": "https://evolith.dev/rulesets/adr/generated/adr-dotnet-0070-net-api-endpoint-strategy.rules.json",
4
- "title": "ADR-0070 — .NET API Endpoint Strategy Rules (generated)",
5
- "description": "Auto-generated ruleset encoding ADR-0070 (dotnet track). Classification: executable. Generated by .harness/scripts/generate-adr-rulesets.mjs — do not edit by hand.",
6
- "version": "1.0.0",
7
- "adrId": "ADR-0070",
8
- "adrTitle": ".NET API Endpoint Strategy",
9
- "status": "Proposed",
10
- "date": "2026-05-13",
11
- "rules": [
12
- {
13
- "id": "DOT-0070-01",
14
- "severity": "MUST",
15
- "category": "adr-conformance",
16
- "title": "Conform to ADR-0070: .NET API Endpoint Strategy",
17
- "description": "Implementations MUST conform to the decision recorded in ADR-0070 (dotnet track). ADR decision: We adopt a hybrid strategy with the following specific selection criteria: Minimal APIs : New high performance microservices. Serverless and event driven services. Backend for Frontend (BFFs). This ADR contains enforceable language (must, prohibited, structure, enforce, enforced); conformance is expected to be verifiable via static analysis, linting, CI gates, or structural checks.",
18
- "statement": "ADR decision: We adopt a hybrid strategy with the following specific selection criteria: Minimal APIs : New high performance microservices. Serverless and event driven services. Backend for Frontend (BFFs).",
19
- "rationale": "Derived from ADR-0070 \"Decision\" section. Enforcement signals detected: must, prohibited, structure, enforce, enforced.",
20
- "validationQuery": "Verify codebase/CI compliance with ADR-0070 via static analysis, lint rules, or pipeline gates covering: must, prohibited, structure, enforce, enforced. Concrete checks to be wired into the harness.",
21
- "blocking": true,
22
- "enforcement": "executable"
23
- }
24
- ],
25
- "references": [
26
- "reference/architecture/adrs/dotnet/0070-enterprise-minimal-apis-adoption.md"
27
- ],
28
- "effectiveDate": "2026-05-13"
29
- }
@@ -1,27 +0,0 @@
1
- {
2
- "$schema": "../../schema/ruleset-standard.schema.json",
3
- "$id": "https://evolith.dev/rulesets/adr/generated/adr-dotnet-0071-net-data-access-strategy-ef-core-as-default-orm-dapper-for-o.rules.json",
4
- "title": "ADR-0071 — .NET Data Access Strategy — EF Core as Default ORM, Dapper for Optimized Reads Rules (generated)",
5
- "description": "Auto-generated ruleset encoding ADR-0071 (dotnet track). Classification: advisory. Generated by .harness/scripts/generate-adr-rulesets.mjs — do not edit by hand.",
6
- "version": "1.0.0",
7
- "adrId": "ADR-0071",
8
- "adrTitle": ".NET Data Access Strategy — EF Core as Default ORM, Dapper for Optimized Reads",
9
- "status": "| Field | Value |",
10
- "date": "| 2026-05-15 |",
11
- "rules": [
12
- {
13
- "id": "DOT-0071-01",
14
- "severity": "SHOULD",
15
- "category": "adr-conformance",
16
- "title": "Honor design decision in ADR-0071: .NET Data Access Strategy — EF Core as Default ORM, Dapper for Optimized Reads",
17
- "description": "Design and implementation SHOULD honor the decision recorded in ADR-0071 (dotnet track). ADR decision: Entity Framework Core 8+ is the default and mandatory ORM for all .NET data access in this platform. Dapper is a conditionally authorized secondary tool, permitted only for read side (query) operations that meet explicit justification criteria defined in section 7. Manual attestation required — not machine-verifiable.",
18
- "statement": "ADR decision: Entity Framework Core 8+ is the default and mandatory ORM for all .NET data access in this platform. Dapper is a conditionally authorized secondary tool, permitted only for read side (query) operations that meet explicit justification criteria defined in section 7.",
19
- "rationale": "Derived from ADR-0071 \"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/dotnet/0071-dotnet-data-access-orm-strategy.md"
26
- ]
27
- }