@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,68 +0,0 @@
1
- {
2
- "protocolVersion": "2025-03-26",
3
- "topologyId": "event-driven",
4
- "description": "MCP interface for the Event-Driven topology. Provides tools for inspecting and validating event-driven configurations, resources for manifest and ruleset access, and prompts for event-governed implementation guidance.",
5
- "capabilities": {
6
- "tools": {},
7
- "resources": {},
8
- "prompts": {}
9
- },
10
- "tools": [
11
- {
12
- "name": "evolith-topology-inspect",
13
- "description": "Inspect an Event-Driven topology configuration and return its parsed manifest, event channels, and corpus artifact references.",
14
- "inputSchema": {
15
- "type": "object",
16
- "properties": {
17
- "configPath": {
18
- "type": "string",
19
- "description": "Path to the Event-Driven configuration file"
20
- },
21
- "includeChannels": {
22
- "type": "boolean",
23
- "description": "Include event channel and subscription metadata"
24
- }
25
- },
26
- "required": ["configPath"]
27
- }
28
- },
29
- {
30
- "name": "evolith-topology-validate",
31
- "description": "Validate an Event-Driven configuration against the topology ruleset and OPA policies, returning pass/fail per gate.",
32
- "inputSchema": {
33
- "type": "object",
34
- "properties": {
35
- "configPath": {
36
- "type": "string",
37
- "description": "Path to the Event-Driven configuration to validate"
38
- },
39
- "strictMode": {
40
- "type": "boolean",
41
- "description": "Fail on warnings, not just errors"
42
- }
43
- },
44
- "required": ["configPath"]
45
- }
46
- }
47
- ],
48
- "resources": [
49
- {
50
- "uri": "evolith://topologies/event-driven/manifest",
51
- "name": "Event-Driven Topology Manifest",
52
- "description": "Full topology manifest for Event-Driven, including metadata, artifact references, and corpus configuration.",
53
- "mimeType": "application/json"
54
- },
55
- {
56
- "uri": "evolith://topologies/event-driven/rulesets",
57
- "name": "Event-Driven Rulesets",
58
- "description": "All ruleset files for Event-Driven: native rules JSON, OPA Rego policies, and WASM bundle.",
59
- "mimeType": "application/json"
60
- }
61
- ],
62
- "prompts": [
63
- {
64
- "name": "topology-aware-implementation",
65
- "description": "Guides AI-assisted implementation to respect Event-Driven topology constraints, message ordering, idempotency, and eventual consistency."
66
- }
67
- ]
68
- }
@@ -1,186 +0,0 @@
1
- openapi: "3.1.0"
2
- info:
3
- title: "Event-Driven Topology — Core API Surface"
4
- version: "0.1.0"
5
- description: >
6
- REST API surface specific to the Event-Driven topology.
7
- Describes endpoints exposed by the Core API for querying,
8
- inspecting, and validating Event-Driven topology instances.
9
- servers:
10
- - url: "https://api.evolith.dev/v1"
11
- description: "Evolith Core API (production)"
12
- paths:
13
- /topologies/{id}:
14
- get:
15
- tags: [Topologies]
16
- summary: "Retrieve Event-Driven topology information"
17
- description: >
18
- Returns the full topology record for Event-Driven, including
19
- dimension, status, version, governance metadata, and corpus
20
- artifact references (rulesets, OPA policies, ADRs, guidance).
21
- operationId: "getEventDrivenTopology"
22
- parameters:
23
- - name: id
24
- in: path
25
- required: true
26
- schema:
27
- type: string
28
- pattern: "^event-driven$"
29
- example: "event-driven"
30
- responses:
31
- "200":
32
- description: "Successful response with Event-Driven topology data"
33
- content:
34
- application/json:
35
- schema:
36
- $ref: "#/components/schemas/EnvelopeTopology"
37
- "404":
38
- description: "Topology not found"
39
- /topologies/{id}/manifest:
40
- get:
41
- tags: [Topologies]
42
- summary: "Get Event-Driven topology manifest"
43
- description: >
44
- Returns the full topology manifest for Event-Driven, with
45
- artifact references, corpus configuration, and business
46
- boundary declaration.
47
- operationId: "getEventDrivenManifest"
48
- parameters:
49
- - name: id
50
- in: path
51
- required: true
52
- schema:
53
- type: string
54
- pattern: "^event-driven$"
55
- responses:
56
- "200":
57
- description: "Successful response with Event-Driven manifest"
58
- content:
59
- application/json:
60
- schema:
61
- $ref: "#/components/schemas/EnvelopeManifest"
62
- /topologies/{id}/validate:
63
- post:
64
- tags: [Topologies]
65
- summary: "Validate Event-Driven topology rules"
66
- description: >
67
- Executes all applicable rulesets and OPA policies for Event-Driven
68
- against a submitted configuration, returning pass/fail per gate.
69
- operationId: "validateEventDrivenTopology"
70
- parameters:
71
- - name: id
72
- in: path
73
- required: true
74
- schema:
75
- type: string
76
- pattern: "^event-driven$"
77
- requestBody:
78
- required: true
79
- content:
80
- application/json:
81
- schema:
82
- $ref: "#/components/schemas/ValidationRequest"
83
- responses:
84
- "200":
85
- description: "Validation results"
86
- content:
87
- application/json:
88
- schema:
89
- $ref: "#/components/schemas/EnvelopeValidation"
90
- components:
91
- schemas:
92
- Envelope:
93
- type: object
94
- properties:
95
- success:
96
- type: boolean
97
- data: {}
98
- meta:
99
- type: object
100
- properties:
101
- context:
102
- type: string
103
- timing:
104
- type: number
105
- schemaVersion:
106
- type: string
107
- pattern: "^\\d+\\.\\d+\\.\\d+$"
108
- required: [context, timing, schemaVersion]
109
- required: [success, data, meta]
110
- EnvelopeTopology:
111
- allOf:
112
- - $ref: "#/components/schemas/Envelope"
113
- - type: object
114
- properties:
115
- data:
116
- $ref: "#/components/schemas/TopologyRecord"
117
- EnvelopeManifest:
118
- allOf:
119
- - $ref: "#/components/schemas/Envelope"
120
- - type: object
121
- properties:
122
- data:
123
- $ref: "#/components/schemas/TopologyManifest"
124
- EnvelopeValidation:
125
- allOf:
126
- - $ref: "#/components/schemas/Envelope"
127
- - type: object
128
- properties:
129
- data:
130
- $ref: "#/components/schemas/ValidationResult"
131
- TopologyRecord:
132
- type: object
133
- properties:
134
- id:
135
- type: string
136
- example: "event-driven"
137
- name:
138
- type: string
139
- example: "Event-Driven"
140
- dimension:
141
- type: string
142
- example: "integration"
143
- status:
144
- type: string
145
- enum: [accepted, draft, deprecated]
146
- version:
147
- type: string
148
- example: "0.1.0"
149
- TopologyManifest:
150
- type: object
151
- properties:
152
- apiVersion:
153
- type: string
154
- example: "evolith.dev/topology/v1"
155
- kind:
156
- type: string
157
- example: "TopologyManifest"
158
- metadata:
159
- type: object
160
- spec:
161
- type: object
162
- ValidationRequest:
163
- type: object
164
- properties:
165
- config:
166
- type: object
167
- description: "Configuration to validate against topology rules"
168
- required: [config]
169
- ValidationResult:
170
- type: object
171
- properties:
172
- passed:
173
- type: boolean
174
- gates:
175
- type: array
176
- items:
177
- type: object
178
- properties:
179
- gate:
180
- type: string
181
- passed:
182
- type: boolean
183
- evidence:
184
- type: array
185
- items:
186
- type: string
@@ -1,67 +0,0 @@
1
- # Guía de Operaciones Orientada a Eventos
2
-
3
- > **Navegación Bilingüe:** [English](./operations.md) | [Español](./operations.es.md)
4
-
5
- **Propietario:** Junta de Arquitectura
6
- **Topología:** Orientada a Eventos
7
-
8
- ## Propósito
9
-
10
- Definir procedimientos operativos para la gestión de brokers de eventos, el monitoreo de retraso de consumidores, el manejo de colas de letras muertas (DLQ), la observabilidad del flujo de eventos y la gestión de particiones en arquitecturas orientadas a eventos.
11
-
12
- ## Gestión del Broker
13
-
14
- ### Monitoreo de Salud
15
-
16
- - Rastrear tiempo de actividad del broker, conteo de conexiones y throughput por tema.
17
- - Configurar verificaciones de salud en probes de disponibilidad y vitalidad del broker.
18
- - Alertar cuando el uso de memoria del broker exceda el 80% de la capacidad asignada.
19
-
20
- ### Planificación de Capacidad
21
-
22
- - Monitorear el conteo de particiones del tema contra el paralelismo del consumidor.
23
- - Escalar nodos del broker cuando el throughput sostenido exceda el 70% de la capacidad pico.
24
- - Revisar configuraciones de retención trimestralmente para alinear con presupuestos de almacenamiento.
25
-
26
- ## Monitoreo de Retraso de Consumidores
27
-
28
- - Exponer métricas de retraso del consumidor mediante herramientas nativas del broker (por ejemplo, Consumer Groups de Kafka).
29
- - Configurar umbrales de alerta: advertencia a 10,000 mensajes, crítico a 100,000 mensajes de retraso.
30
- - Rastrear tendencias de retraso semanalmente; investigar crecimiento persistente del retraso.
31
-
32
- ## Manejo de Cola de Letras Muertas (DLQ) — ED-R03
33
-
34
- - Enviar mensajes no procesables a DLQ después del agotamiento configurable de reintentos (predeterminado: 3 intentos).
35
- - Monitorear la profundidad de DLQ diariamente; mensajes mayores a 72 horas requieren triaje manual.
36
- - Implementar herramientas de reproducción de DLQ con protecciones de idempotencia antes de reprocesar.
37
-
38
- ## Observabilidad del Flujo de Eventos — ED-R08
39
-
40
- - Instrumentar productores y consumidores con tracing distribuido (OpenTelemetry).
41
- - Capturar metadatos del evento: tema, partición, offset, timestamp, ID del productor.
42
- - Mantener paneles de control del flujo de eventos mostrando tasas de producción/consumo, tasas de error y latencia de extremo a extremo.
43
-
44
- ## Gestión de Particiones — ED-R04
45
-
46
- - Diseñar claves de partición para garantizar ordenamiento donde sea necesario.
47
- - Evitar particiones calientes distribuyendo claves en dominios de alta cardinalidad.
48
- - Monitorear throughput por partición; rebalancear cuando la varianza exceda 3x entre particiones.
49
-
50
- ## Aplicabilidad Componible
51
-
52
- | Componible | Orientación |
53
- |---|---|
54
- | Monolito Modular | Broker embebido; la gestión de particiones es intra-proceso. |
55
- | Módulos Distribuidos | Cluster de broker compartido; se requiere monitoreo de retraso de consumidores entre módulos. |
56
- | Microservicios | Infraestructura completa de broker; aislamiento de grupo de consumidores por servicio. |
57
- | Serverless | Servicios de broker gestionados; el escalado de particiones lo maneja el proveedor. |
58
- | Computación Edge | Instancias de broker locales con sincronización periódica a la nube. |
59
-
60
- ## Referencias ADR
61
-
62
- - **ADR-0015**: Infraestructura de broker de eventos y estrategia de particionamiento.
63
- - **ADR-0079**: Estándares de observabilidad y monitoreo de eventos.
64
-
65
- ---
66
-
67
- [Volver al Perfil Orientado a Eventos](./README.es.md)
@@ -1,67 +0,0 @@
1
- # Event-Driven — Operations Guide
2
-
3
- > **Bilingual Navigation:** [English](./operations.md) | [Español](./operations.es.md)
4
-
5
- **Owner:** Architecture Board
6
- **Topology:** Event-Driven
7
-
8
- ## Purpose
9
-
10
- Define operational procedures for managing event brokers, monitoring consumer lag, handling dead-letter queues (DLQs), ensuring event flow observability, and managing partitions in event-driven architectures.
11
-
12
- ## Broker Management
13
-
14
- ### Health Monitoring
15
-
16
- - Track broker uptime, connection count, and message throughput per topic.
17
- - Configure health checks on broker readiness and liveness probes.
18
- - Alert on broker memory usage exceeding 80% of allocated capacity.
19
-
20
- ### Capacity Planning
21
-
22
- - Monitor topic partition count against consumer parallelism.
23
- - Scale broker nodes when sustained throughput exceeds 70% of peak capacity.
24
- - Review retention settings quarterly to align with storage budgets.
25
-
26
- ## Consumer Lag Monitoring
27
-
28
- - Expose consumer lag metrics via broker-native tooling (e.g., Kafka Consumer Groups).
29
- - Set alert thresholds: warning at 10,000 messages, critical at 100,000 messages lag.
30
- - Track lag trends weekly; investigate persistent lag growth.
31
-
32
- ## Dead-Letter Queue (DLQ) Handling — ED-R03
33
-
34
- - Route unprocessable messages to DLQ after configurable retry exhaustion (default: 3 attempts).
35
- - Monitor DLQ depth daily; messages older than 72 hours require manual triage.
36
- - Implement DLQ replay tooling with idempotency guards before reprocessing.
37
-
38
- ## Event Flow Observability — ED-R08
39
-
40
- - Instrument producers and consumers with distributed tracing (OpenTelemetry).
41
- - Capture event metadata: topic, partition, offset, timestamp, producer ID.
42
- - Maintain event flow dashboards showing produce/consume rates, error rates, and end-to-end latency.
43
-
44
- ## Partition Management — ED-R04
45
-
46
- - Design partition keys to ensure ordering guarantees where required.
47
- - Avoid hot partitions by distributing keys across high-cardinality domains.
48
- - Monitor per-partition throughput; rebalance when variance exceeds 3x across partitions.
49
-
50
- ## Composable Applicability
51
-
52
- | Composable | Guidance |
53
- |---|---|
54
- | Modular Monolith | Embedded broker; partition management is intra-process. |
55
- | Distributed Modules | Shared broker cluster; cross-module consumer lag monitoring required. |
56
- | Microservices | Full broker infrastructure; per-service consumer group isolation. |
57
- | Serverless | Managed broker services; partition scaling handled by provider. |
58
- | Edge Computing | Local broker instances with periodic cloud sync. |
59
-
60
- ## ADR References
61
-
62
- - **ADR-0015**: Event broker infrastructure and partitioning strategy.
63
- - **ADR-0079**: Event observability and monitoring standards.
64
-
65
- ---
66
-
67
- [Back to Event-Driven Profile](./README.md)
@@ -1,18 +0,0 @@
1
- {
2
- "input": {
3
- "satellite": {
4
- "eventDriven": {
5
- "hasStrictAsyncApi": true,
6
- "hasOutbox": true,
7
- "hasDlq": true,
8
- "hasOrderingGuarantee": true,
9
- "hasIdempotencyKey": true,
10
- "hasBackwardCompatibleSchema": true,
11
- "hasRetentionPolicy": true,
12
- "hasEventCorrelation": true,
13
- "hasConsumerGroupRegistry": true
14
- }
15
- }
16
- },
17
- "expectedNative": []
18
- }
@@ -1,21 +0,0 @@
1
- {
2
- "input": {
3
- "satellite": {
4
- "eventDriven": {
5
- "hasStrictAsyncApi": false,
6
- "hasOutbox": true,
7
- "hasDlq": true,
8
- "hasOrderingGuarantee": false,
9
- "hasIdempotencyKey": true,
10
- "hasBackwardCompatibleSchema": true,
11
- "hasRetentionPolicy": true,
12
- "hasEventCorrelation": true,
13
- "hasConsumerGroupRegistry": true
14
- }
15
- }
16
- },
17
- "expectedNative": [
18
- { "ruleId": "ED-R01", "severity": "error", "file": null },
19
- { "ruleId": "ED-R04", "severity": "error", "file": null }
20
- ]
21
- }
@@ -1,68 +0,0 @@
1
- # Guía de Patrones Orientada a Eventos
2
-
3
- > **Navegación Bilingüe:** [English](./patterns.md) | [Español](./patterns.es.md)
4
-
5
- **Propietario:** Junta de Arquitectura
6
- **Topología:** Orientada a Eventos
7
-
8
- ## Propósito
9
-
10
- Documentar patrones fundamentales orientados a eventos: almacenamiento de eventos, CQRS, saga, outbox transaccional, captura de cambios de datos (CDC) y tradeoffs entre coreografía y orquestación.
11
-
12
- ## Almacenamiento de Eventos (Event Sourcing)
13
-
14
- - Persistir estado como una secuencia inmutable de eventos en lugar de instantáneas del estado actual.
15
- - Reconstruir estado reproduciendo eventos desde el inicio del flujo.
16
- - Usar snapshots periódicamente para acotar el tiempo de reproducción (por ejemplo, cada 1,000 eventos).
17
-
18
- ## CQRS (Segregación de Responsabilidades de Comando y Consulta)
19
-
20
- - Separar modelo de escritura (comandos) del modelo de lectura (consultas) para escalado independiente.
21
- - Sincronizar modelo de lectura mediante eventos publicados desde el lado de escritura.
22
- - Aceptar consistencia eventual entre modelos de escritura y lectura; diseñar UIs en consecuencia.
23
-
24
- ## Patrón Saga
25
-
26
- - Coordinar procesos de negocio de múltiples pasos como una secuencia de transacciones locales.
27
- - Implementar transacciones compensatorias para reversión cuando un paso falla.
28
- - Preferir coreografía (orientada a eventos) para sagas simples; usar orquestación (coordinador central) para flujos de trabajo complejos y de larga ejecución.
29
-
30
- ## Outbox Transaccional — ED-R02
31
-
32
- - Asegurar publicación confiable de eventos escribiendo eventos en un outbox dentro de la misma transacción de BD que la escritura de negocio.
33
- - Usar CDC (Debezium) o un editor de sondeo para transmitir eventos del outbox al broker.
34
- - Deduplicar del lado del consumidor; el outbox puede publicar duplicados durante failover.
35
-
36
- ## Captura de Cambios de Datos (CDC)
37
-
38
- - Transmitir cambios de base de datos como eventos sin modificar el código de la aplicación.
39
- - Usar Debezium o conectores equivalentes para PostgreSQL, MySQL o SQL Server.
40
- - Monitorear retraso del conector; alertar cuando el retraso exceda 5 minutos.
41
-
42
- ## Coreografía vs. Orquestación — ED-R04
43
-
44
- | Aspecto | Coreografía | Orquestación |
45
- |---|---|---|
46
- | Acoplamiento | Loose; los servicios reaccionan a eventos | Más fuerte; el coordinador invoca servicios |
47
- | Visibilidad | Distribuida; más difícil de rastrear | Centralizada; más fácil de monitorear |
48
- | Manejo de errores | Eventos compensatorios por servicio | Reintento y compensación centralizados |
49
- | Caso de uso | Flujos simples de pocos pasos | Complejos, multi-servicio, larga ejecución |
50
-
51
- ## Aplicabilidad Componible
52
-
53
- | Componible | Orientación |
54
- |---|---|
55
- | Monolito Modular | Almacenamiento de eventos y CQRS dentro de límites de módulos; outbox es intra-BD. |
56
- | Módulos Distribuidos | Saga entre módulos; coreografía preferida para acoplamiento loose. |
57
- | Microservicios | Saga completo con orquestación o coreografía; CDC para sincronización de datos. |
58
- | Serverless | Almacenamiento de eventos con flujos gestionados; CDC vía conectores gestionados. |
59
- | Computación Edge | Almacenamiento de eventos local con sincronización periódica a la nube. |
60
-
61
- ## Referencias ADR
62
-
63
- - **ADR-0015**: Criterios de adopción de almacenamiento de eventos y CQRS.
64
- - **ADR-0079**: Marco de decisión de orquestación vs. coreografía en saga.
65
-
66
- ---
67
-
68
- [Volver al Perfil Orientado a Eventos](./README.es.md)
@@ -1,68 +0,0 @@
1
- # Event-Driven — Patterns Guide
2
-
3
- > **Bilingual Navigation:** [English](./patterns.md) | [Español](./patterns.es.md)
4
-
5
- **Owner:** Architecture Board
6
- **Topology:** Event-Driven
7
-
8
- ## Purpose
9
-
10
- Document core event-driven patterns: event sourcing, CQRS, saga, transactional outbox, change data capture (CDC), and choreography vs. orchestration tradeoffs.
11
-
12
- ## Event Sourcing
13
-
14
- - Persist state as an immutable sequence of events rather than current-state snapshots.
15
- - Rebuild state by replaying events from the beginning of the stream.
16
- - Use snapshots periodically to bound replay time (e.g., every 1,000 events).
17
-
18
- ## CQRS (Command Query Responsibility Segregation)
19
-
20
- - Separate write model (commands) from read model (queries) for independent scaling.
21
- - Synchronize read model via events published from the write side.
22
- - Accept eventual consistency between write and read models; design UIs accordingly.
23
-
24
- ## Saga Pattern
25
-
26
- - Coordinate multi-step business processes as a sequence of local transactions.
27
- - Implement compensating transactions for rollback when a step fails.
28
- - Prefer choreography (event-driven) for simple sagas; use orchestration (central coordinator) for complex, long-running workflows.
29
-
30
- ## Transactional Outbox — ED-R02
31
-
32
- - Ensure reliable event publication by writing events to an outbox within the same DB transaction as the business write.
33
- - Use CDC (Debezium) or a polling publisher to relay outbox events to the broker.
34
- - Deduplicate at the consumer side; the outbox may publish duplicates during failover.
35
-
36
- ## Change Data Capture (CDC)
37
-
38
- - Stream database changes as events without modifying application code.
39
- - Use Debezium or equivalent connectors for PostgreSQL, MySQL, or SQL Server.
40
- - Monitor connector lag; alert when lag exceeds 5 minutes.
41
-
42
- ## Choreography vs. Orchestration — ED-R04
43
-
44
- | Aspect | Choreography | Orchestration |
45
- |---|---|---|
46
- | Coupling | Loose; services react to events | Tighter; coordinator invokes services |
47
- | Visibility | Distributed; harder to trace | Centralized; easier to monitor |
48
- | Error handling | Compensating events per service | Centralized retry and compensation |
49
- | Use case | Simple, few-step workflows | Complex, multi-service, long-running |
50
-
51
- ## Composable Applicability
52
-
53
- | Composable | Guidance |
54
- |---|---|
55
- | Modular Monolith | Event sourcing and CQRS within module boundaries; outbox is intra-DB. |
56
- | Distributed Modules | Saga across modules; choreography preferred for loose coupling. |
57
- | Microservices | Full saga with orchestration or choreography; CDC for data synchronization. |
58
- | Serverless | Event sourcing with managed streams; CDC via managed connectors. |
59
- | Edge Computing | Local event sourcing with periodic cloud synchronization. |
60
-
61
- ## ADR References
62
-
63
- - **ADR-0015**: Event sourcing and CQRS adoption criteria.
64
- - **ADR-0079**: Saga orchestration vs. choreography decision framework.
65
-
66
- ---
67
-
68
- [Back to Event-Driven Profile](./README.md)
@@ -1,65 +0,0 @@
1
- # Guía de Resiliencia Orientada a Eventos
2
-
3
- > **Navegación Bilingüe:** [English](./resilience.md) | [Español](./resilience.es.md)
4
-
5
- **Propietario:** Junta de Arquitectura
6
- **Topología:** Orientada a Eventos
7
-
8
- ## Propósito
9
-
10
- Definir patrones de resiliencia para arquitecturas orientadas a eventos: consumidores idempotentes, semántica de exactamente una vez, manejo de píldoras venenosas, retroceso de reintentos, rebalanceo de consumidores y outbox transaccional.
11
-
12
- ## Consumidores Idempotentes — ED-R05
13
-
14
- - Cada consumidor DEBE procesar eventos de forma idempotente; se asume entrega duplicada.
15
- - Usar claves de deduplicación compuestas por `(event-id, consumer-group)` almacenadas en una caché duradera.
16
- - Establecer la ventana de deduplicación en al menos 2x el período máximo de retención del broker.
17
-
18
- ## Semántica de Exactamente Una Vez
19
-
20
- - Preferir productores idempotentes con IDs de productor sobre garantías de exactamente una vez a nivel de broker.
21
- - Para flujos de trabajo críticos, usar productores transaccionales que escriban atómicamente en múltiples temas.
22
- - Documentar el nivel de garantía semántica (al menos una vez, efectivamente una vez) por consumidor.
23
-
24
- ## Manejo de Píldoras Venenosas — ED-R03
25
-
26
- - Detectar píldoras venenosas rastreando conteos de reintentos por mensaje en el estado del consumidor.
27
- - Después del agotamiento configurable de reintentos (predeterminado: 3), enrutar el mensaje a DLQ con contexto completo.
28
- - Alertar cuando la tasa de píldoras venenosas exceda el 0.1% del volumen total de mensajes.
29
-
30
- ## Retroceso de Reintentos
31
-
32
- - Implementar retroceso exponencial con jitter: `base * 2^attempto + random(0, base)`.
33
- - Establecer un máximo de retraso de reintento de 5 minutos; escalar a DLQ después de alcanzar el máximo.
34
- - Usar colas de reintento separadas para categorías de falla transitoria vs. permanente.
35
-
36
- ## Rebalanceo de Consumidores
37
-
38
- - Diseñar consumidores para manejar eventos de rebalanceo con gracia; pausar procesamiento durante rebalanceo.
39
- - Usar asignación de partición cooperativa y pegajosa para minimizar movimiento de particiones.
40
- - Monitorear frecuencia de rebalanceo; investigar si los rebalanceos exceden 1 por hora por grupo de consumidores.
41
-
42
- ## Outbox Transaccional — ED-R02
43
-
44
- - Escribir eventos de dominio en una tabla de outbox dentro de la misma transacción que los cambios de estado del negocio.
45
- - Publicar eventos de outbox mediante CDC o editor de sondeo al broker.
46
- - Garantizar que los registros de outbox se publiquen eventualmente; monitorear la profundidad del outbox.
47
-
48
- ## Aplicabilidad Componible
49
-
50
- | Componible | Orientación |
51
- |---|---|
52
- | Monolito Modular | El outbox es intra-base de datos; idempotencia vía caché compartida. |
53
- | Módulos Distribuidos | El outbox entre módulos requiere diseño cuidadoso de límites de transacción. |
54
- | Microservicios | Outbox por servicio; aislamiento de consumidores por límite de servicio. |
55
- | Serverless | Deduplicación gestionada; outbox mediante disparadores de base de datos. |
56
- | Computación Edge | Outbox local con sincronización eventual al broker en la nube. |
57
-
58
- ## Referencias ADR
59
-
60
- - **ADR-0015**: Estándares de resiliencia de consumidores y políticas de reintento.
61
- - **ADR-0079**: Patrón de implementación de outbox transaccional.
62
-
63
- ---
64
-
65
- [Volver al Perfil Orientado a Eventos](./README.es.md)