slipwai 1.2.1.dev5__tar.gz → 1.2.1.dev8__tar.gz

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 (1322) hide show
  1. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/PKG-INFO +5 -1
  2. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/README.md +4 -0
  3. slipwai-1.2.1.dev8/VERSION +1 -0
  4. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/scripts/agents/cruise.py +118 -1
  5. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/scripts/agents/registry.json +1 -1
  6. slipwai-1.2.1.dev8/assets/toolkit/scripts/check-ux-gates.py +245 -0
  7. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/scripts/extensions/ux-gates/init.py +9 -6
  8. slipwai-1.2.1.dev8/changelog.d/gates-are-not-the-runs-to-change.md +30 -0
  9. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/agent_settings.py +5 -0
  10. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/cruise_agents.py +12 -4
  11. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/cruise_unblock.py +13 -0
  12. slipwai-1.2.1.dev5/VERSION +0 -1
  13. slipwai-1.2.1.dev5/assets/toolkit/scripts/check-ux-gates.py +0 -168
  14. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/.gitignore +0 -0
  15. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/CHANGELOG.md +0 -0
  16. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/LICENSE +0 -0
  17. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/NOTICE +0 -0
  18. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/README.md +0 -0
  19. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/adoption/docs/change-strategy.md +0 -0
  20. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/adoption/scripts/check-convergence.py +0 -0
  21. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/adoption/scripts/ratchet.py +0 -0
  22. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/adoption/support.json +0 -0
  23. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/adoption/wrappers/gradle/gradle-wrapper.jar.base64 +0 -0
  24. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/adoption/wrappers/gradle/gradle-wrapper.properties +0 -0
  25. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/adoption/wrappers/gradle/gradlew +0 -0
  26. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/adoption/wrappers/gradle/gradlew.bat +0 -0
  27. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/adoption/wrappers/gradle/source-notes.md +0 -0
  28. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/docker-compose.yml +0 -0
  29. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/env.example +0 -0
  30. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/go/checkpoint_store_contract.go +0 -0
  31. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/go/checkpoint_store_memory.go +0 -0
  32. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/go/checkpoint_store_memory_test.go +0 -0
  33. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/go/checkpoint_store_postgres.go +0 -0
  34. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/go/checkpoint_store_postgres_integration_test.go +0 -0
  35. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/go/checkpoint_store_sqlite.go +0 -0
  36. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/go/checkpoint_store_sqlite_test.go +0 -0
  37. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/go/config.go +0 -0
  38. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/go/config_test.go +0 -0
  39. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/go/event_store_contract.go +0 -0
  40. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/go/event_store_memory.go +0 -0
  41. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/go/event_store_memory_test.go +0 -0
  42. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/go/event_store_postgres.go +0 -0
  43. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/go/event_store_postgres_integration_test.go +0 -0
  44. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/go/event_store_sqlite.go +0 -0
  45. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/go/event_store_sqlite_test.go +0 -0
  46. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/go/events.go +0 -0
  47. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/go/http_app.go +0 -0
  48. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/go/http_app_test.go +0 -0
  49. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/go/http_openapi_test.go +0 -0
  50. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/go/http_security.go +0 -0
  51. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/go/http_security_test.go +0 -0
  52. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/go/migrate_main.go +0 -0
  53. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/go/migrate_main_test.go +0 -0
  54. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/go/migrations_embed.go +0 -0
  55. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/go/migrations_keep +0 -0
  56. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/go/oidc_keycloak.go +0 -0
  57. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/go/oidc_keycloak_test.go +0 -0
  58. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/go/openapi.yaml +0 -0
  59. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/go/projections.go +0 -0
  60. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/go/projections_test.go +0 -0
  61. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/go/projections_ticker.go +0 -0
  62. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/go/projections_ticker_test.go +0 -0
  63. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/go/read_models.go +0 -0
  64. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/go/serve_main.go +0 -0
  65. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/go/tracing.go +0 -0
  66. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/go/tracing_test.go +0 -0
  67. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/go/users_oidc_keycloak.go +0 -0
  68. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/go/users_oidc_keycloak_test.go +0 -0
  69. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/java/actor.java +0 -0
  70. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/java/append_result.java +0 -0
  71. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/java/causation_id.java +0 -0
  72. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/java/checkpoint_store_memory.java +0 -0
  73. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/java/checkpoint_store_postgres.java +0 -0
  74. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/java/checkpoint_store_sqlite.java +0 -0
  75. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/java/committed_event.java +0 -0
  76. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/java/condition.java +0 -0
  77. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/java/conditional_append_result.java +0 -0
  78. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/java/correlation_id.java +0 -0
  79. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/java/database_url.java +0 -0
  80. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/java/domain_event.java +0 -0
  81. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/java/event_store.java +0 -0
  82. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/java/event_store_exception.java +0 -0
  83. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/java/event_store_memory.java +0 -0
  84. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/java/event_store_memory_database.java +0 -0
  85. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/java/event_store_postgres.java +0 -0
  86. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/java/event_store_sqlite.java +0 -0
  87. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/java/event_visitor.java +0 -0
  88. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/java/http_schema_failure.java +0 -0
  89. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/java/migrate_main.java +0 -0
  90. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/java/oidc_keycloak.java +0 -0
  91. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/java/projection.java +0 -0
  92. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/java/projections.java +0 -0
  93. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/java/read_models.java +0 -0
  94. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/java/tag_query.java +0 -0
  95. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/java/tagged_read.java +0 -0
  96. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/java/tags_of.java +0 -0
  97. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/java/tests/checkpoint_store_contract.java +0 -0
  98. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/java/tests/checkpoint_store_memory_test.java +0 -0
  99. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/java/tests/checkpoint_store_sqlite_test.java +0 -0
  100. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/java/tests/database_url_test.java +0 -0
  101. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/java/tests/event_store_contract.java +0 -0
  102. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/java/tests/event_store_memory_test.java +0 -0
  103. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/java/tests/event_store_sqlite_test.java +0 -0
  104. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/java/tests/oidc_keycloak_test.java +0 -0
  105. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/java/tests/projections_test.java +0 -0
  106. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/java/tests/users_oidc_keycloak_test.java +0 -0
  107. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/java/transactions.java +0 -0
  108. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/java/users_oidc_keycloak.java +0 -0
  109. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/java-quarkus/config_source_registration +0 -0
  110. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/java-quarkus/database_url_config_source.java +0 -0
  111. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/java-quarkus/http_flags_resource.java +0 -0
  112. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/java-quarkus/http_health_check.java +0 -0
  113. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/java-quarkus/http_not_found_mapper.java +0 -0
  114. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/java-quarkus/jta_transactions.java +0 -0
  115. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/java-quarkus/oidc_keycloak_augmentor.java +0 -0
  116. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/java-quarkus/scheduled_projections.java +0 -0
  117. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/java-quarkus/tests/checkpoint_store_postgres_it.java +0 -0
  118. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/java-quarkus/tests/event_store_postgres_it.java +0 -0
  119. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/java-quarkus/tests/http_app_test.java +0 -0
  120. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/java-quarkus/users_current_customer.java +0 -0
  121. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/java-spring/database_url_environment_post_processor.java +0 -0
  122. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/java-spring/environment_post_processor_registration +0 -0
  123. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/java-spring/http_flags_controller.java +0 -0
  124. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/java-spring/http_health_indicator.java +0 -0
  125. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/java-spring/http_not_found_advice.java +0 -0
  126. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/java-spring/oidc_keycloak_security.java +0 -0
  127. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/java-spring/scheduled_projections.java +0 -0
  128. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/java-spring/spring_transactions.java +0 -0
  129. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/java-spring/tests/checkpoint_store_postgres_it.java +0 -0
  130. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/java-spring/tests/event_store_postgres_it.java +0 -0
  131. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/java-spring/tests/http_app_test.java +0 -0
  132. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/java-spring/users_security.java +0 -0
  133. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/keycloak/README.md +0 -0
  134. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/keycloak/realms/app.json +0 -0
  135. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/keycloak/realms/customers.json +0 -0
  136. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/prune.py +0 -0
  137. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/python/checkpoint_store_memory.py +0 -0
  138. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/python/checkpoint_store_postgres.py +0 -0
  139. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/python/checkpoint_store_sqlite.py +0 -0
  140. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/python/event_store_memory.py +0 -0
  141. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/python/event_store_postgres.py +0 -0
  142. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/python/event_store_sqlite.py +0 -0
  143. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/python/events.py +0 -0
  144. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/python/http_app.py +0 -0
  145. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/python/logging_setup.py +0 -0
  146. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/python/main.py +0 -0
  147. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/python/migrations_apply.py +0 -0
  148. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/python/oidc_keycloak.py +0 -0
  149. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/python/openapi-flags.json +0 -0
  150. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/python/openapi.json +0 -0
  151. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/python/openapi_export.py +0 -0
  152. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/python/projections.py +0 -0
  153. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/python/projections_lifespan.py +0 -0
  154. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/python/read_models.py +0 -0
  155. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/python/settings.py +0 -0
  156. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/python/tests/checkpoint_store_contract.py +0 -0
  157. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/python/tests/conftest.py +0 -0
  158. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/python/tests/event_store_contract.py +0 -0
  159. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/python/tests/test_checkpoint_store_memory.py +0 -0
  160. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/python/tests/test_checkpoint_store_postgres.py +0 -0
  161. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/python/tests/test_checkpoint_store_sqlite.py +0 -0
  162. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/python/tests/test_event_store_memory.py +0 -0
  163. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/python/tests/test_event_store_postgres.py +0 -0
  164. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/python/tests/test_event_store_sqlite.py +0 -0
  165. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/python/tests/test_http_app.py +0 -0
  166. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/python/tests/test_logging_setup.py +0 -0
  167. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/python/tests/test_oidc_keycloak.py +0 -0
  168. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/python/tests/test_projections.py +0 -0
  169. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/python/tests/test_projections_lifespan.py +0 -0
  170. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/python/tests/test_settings.py +0 -0
  171. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/python/tests/test_tracing.py +0 -0
  172. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/python/tests/test_users_oidc_keycloak.py +0 -0
  173. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/python/tracing.py +0 -0
  174. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/python/users_oidc_keycloak.py +0 -0
  175. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/sql/001_events.sql +0 -0
  176. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/sql/002_events_append_only.sql +0 -0
  177. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/sql/003_projection_checkpoints.sql +0 -0
  178. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/sql/004_event_tags.sql +0 -0
  179. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/typescript/checkpoint-store-memory.ts +0 -0
  180. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/typescript/checkpoint-store-postgres.ts +0 -0
  181. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/typescript/checkpoint-store-sqlite.ts +0 -0
  182. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/typescript/config.ts +0 -0
  183. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/typescript/event-store-memory.ts +0 -0
  184. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/typescript/event-store-postgres.ts +0 -0
  185. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/typescript/event-store-sqlite.ts +0 -0
  186. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/typescript/events.ts +0 -0
  187. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/typescript/http-app.ts +0 -0
  188. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/typescript/main.ts +0 -0
  189. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/typescript/migrations/001_events.js +0 -0
  190. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/typescript/migrations/002_events_append_only.js +0 -0
  191. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/typescript/migrations/003_projection_checkpoints.js +0 -0
  192. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/typescript/migrations/004_event_tags.js +0 -0
  193. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/typescript/oidc-keycloak.ts +0 -0
  194. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/typescript/openapi-export.ts +0 -0
  195. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/typescript/openapi-flags.json +0 -0
  196. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/typescript/openapi.json +0 -0
  197. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/typescript/projections-plugin.ts +0 -0
  198. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/typescript/projections.ts +0 -0
  199. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/typescript/read-models.ts +0 -0
  200. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/typescript/tests/checkpoint-store-contract.ts +0 -0
  201. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/typescript/tests/checkpoint-store-memory.test.ts +0 -0
  202. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/typescript/tests/checkpoint-store-postgres.test.ts +0 -0
  203. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/typescript/tests/checkpoint-store-sqlite.test.ts +0 -0
  204. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/typescript/tests/event-store-contract.ts +0 -0
  205. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/typescript/tests/event-store-memory.test.ts +0 -0
  206. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/typescript/tests/event-store-postgres.test.ts +0 -0
  207. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/typescript/tests/event-store-sqlite.test.ts +0 -0
  208. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/typescript/tests/http-app.test.ts +0 -0
  209. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/typescript/tests/oidc-keycloak.test.ts +0 -0
  210. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/typescript/tests/projections-plugin.test.ts +0 -0
  211. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/typescript/tests/projections.test.ts +0 -0
  212. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/typescript/tests/tracing.test.ts +0 -0
  213. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/typescript/tests/users-oidc-keycloak.test.ts +0 -0
  214. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/typescript/tracing.ts +0 -0
  215. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/typescript/users-oidc-keycloak.ts +0 -0
  216. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/backing-services/typescript/vitest.integration.config.ts +0 -0
  217. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/frontends/react-vite/api-client/package.json +0 -0
  218. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/frontends/react-vite/api-client/src/index.ts +0 -0
  219. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/frontends/react-vite/app/index.html +0 -0
  220. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/frontends/react-vite/app/package.json +0 -0
  221. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/frontends/react-vite/app/src/App.tsx +0 -0
  222. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/frontends/react-vite/app/src/main.tsx +0 -0
  223. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/frontends/react-vite/app/src/styles/base.css +0 -0
  224. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/frontends/react-vite/app/src/styles/tokens.css +0 -0
  225. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/frontends/react-vite/app/tests/App.test.tsx +0 -0
  226. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/frontends/react-vite/app/tests/setup.ts +0 -0
  227. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/frontends/react-vite/app/tsconfig.json +0 -0
  228. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/frontends/react-vite/app/vite.config.ts +0 -0
  229. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/frontends/react-vite/app-flags-local/flags.test.ts +0 -0
  230. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/frontends/react-vite/app-flags-local/flags.ts +0 -0
  231. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/frontends/react-vite/app-flags-target/flags.test.ts +0 -0
  232. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/frontends/react-vite/app-flags-target/flags.ts +0 -0
  233. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/frontends/react-vite/app-route-client/Home.test.tsx +0 -0
  234. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/frontends/react-vite/app-route-client/Home.tsx +0 -0
  235. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/frontends/react-vite/app-route-plain/Home.test.tsx +0 -0
  236. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/frontends/react-vite/app-route-plain/Home.tsx +0 -0
  237. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/frontends/react-vite/features/users-keycloak/src/auth/Account.tsx +0 -0
  238. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/frontends/react-vite/features/users-keycloak/src/auth/users.tsx +0 -0
  239. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/frontends/react-vite/features/users-keycloak/tests/auth/Account.test.tsx +0 -0
  240. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/frontends/react-vite/features/users-keycloak/tests/auth/users.test.ts +0 -0
  241. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/frontends/react-vite/locks/frontend-only-users-keycloak.json +0 -0
  242. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/frontends/react-vite/locks/frontend-only.json +0 -0
  243. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/frontends/react-vite/locks/typescript-backend-fastify-postgres-users-keycloak.json +0 -0
  244. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/frontends/react-vite/locks/typescript-backend-fastify-postgres.json +0 -0
  245. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/frontends/react-vite/locks/typescript-backend-fastify-users-keycloak.json +0 -0
  246. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/frontends/react-vite/locks/typescript-backend-fastify.json +0 -0
  247. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/frontends/react-vite/locks/typescript-backend-postgres-users-keycloak.json +0 -0
  248. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/frontends/react-vite/locks/typescript-backend-postgres.json +0 -0
  249. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/frontends/react-vite/locks/typescript-backend-users-keycloak.json +0 -0
  250. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/frontends/react-vite/locks/typescript-backend.json +0 -0
  251. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/app/.gremlins.yaml +0 -0
  252. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/app/application/README.md +0 -0
  253. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/app/domain/README.md +0 -0
  254. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/app/health/health.go +0 -0
  255. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/app/health/health_test.go +0 -0
  256. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/event-port/application/ports/events/events.go +0 -0
  257. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/event-port/application/ports/events/events_test.go +0 -0
  258. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/domain-driven-design/accept-child-id-remove-exercise.md +0 -0
  259. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/domain-driven-design/acl-stripe-payment-translation.md +0 -0
  260. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/domain-driven-design/aggregate-sizing-occasion.md +0 -0
  261. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/domain-driven-design/aggregate-vs-read-model.md +0 -0
  262. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/domain-driven-design/always-valid-occasion-invariants.md +0 -0
  263. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/domain-driven-design/branded-id-types.md +0 -0
  264. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/domain-driven-design/create-child-through-root.md +0 -0
  265. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/domain-driven-design/decider-pattern-order.md +0 -0
  266. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/domain-driven-design/describe-order-exhaustive-switch.md +0 -0
  267. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/domain-driven-design/discriminated-union-pledge-result.md +0 -0
  268. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/domain-driven-design/domain-behavioral-tests.md +0 -0
  269. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/domain-driven-design/domain-service-pledge-contribution.md +0 -0
  270. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/domain-driven-design/domain-service-test-pledge-contribution.md +0 -0
  271. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/domain-driven-design/domain-service-vs-use-case.md +0 -0
  272. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/domain-driven-design/entity-rename-occasion.md +0 -0
  273. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/domain-driven-design/error-propagation-through-layers.md +0 -0
  274. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/domain-driven-design/exception-vs-result-type.md +0 -0
  275. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/domain-driven-design/explicit-return-pledge-no-events.md +0 -0
  276. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/domain-driven-design/fake-vs-mock-repository.md +0 -0
  277. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/domain-driven-design/in-process-event-dispatch.md +0 -0
  278. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/domain-driven-design/integration-test-order-repository.md +0 -0
  279. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/domain-driven-design/invariant-driven-vending-machine.md +0 -0
  280. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/domain-driven-design/money-value-object-factory.md +0 -0
  281. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/domain-driven-design/multiple-error-reasons-union.md +0 -0
  282. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/domain-driven-design/naming-signature-domain-vs-use-case.md +0 -0
  283. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/domain-driven-design/occasion-repository-interface.md +0 -0
  284. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/domain-driven-design/one-aggregate-per-transaction.md +0 -0
  285. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/domain-driven-design/optimistic-locking-repository-save.md +0 -0
  286. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/domain-driven-design/optimistic-locking-version-field.md +0 -0
  287. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/domain-driven-design/order-lifecycle-union.md +0 -0
  288. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/domain-driven-design/outbox-pattern-dispatch.md +0 -0
  289. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/domain-driven-design/pledge-result-types.md +0 -0
  290. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/domain-driven-design/process-manager-gift-purchase.md +0 -0
  291. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/domain-driven-design/property-based-test-pledge-budget.md +0 -0
  292. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/domain-driven-design/purity-test-domain-vs-presentation.md +0 -0
  293. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/domain-driven-design/readonly-array-child-collection.md +0 -0
  294. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/domain-driven-design/shared-kernel-package-layout.md +0 -0
  295. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/domain-driven-design/specification-can-pledge.md +0 -0
  296. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/domain-driven-design/test-decide-order-events.md +0 -0
  297. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/domain-driven-design/test-error-funding-closed.md +0 -0
  298. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/domain-driven-design/test-factory-get-occasion.md +0 -0
  299. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/domain-driven-design/ubiquitous-language-glossary-types.md +0 -0
  300. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/domain-driven-design/use-case-test-pledge-contribution.md +0 -0
  301. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/domain-driven-design/wrong-catch-rethrow-context.md +0 -0
  302. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/domain-driven-design/wrong-exception-for-business-rule.md +0 -0
  303. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/domain-driven-design/wrong-generic-error-type.md +0 -0
  304. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/domain-driven-design/zod-branded-type-bridging.md +0 -0
  305. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/event-sourcing/account-decider-and-evolve.md +0 -0
  306. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/event-sourcing/balance-view-apply-fold.md +0 -0
  307. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/event-sourcing/balance-view-projection.md +0 -0
  308. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/event-sourcing/catch-up-checkpoint-transaction.md +0 -0
  309. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/event-sourcing/command-handler-loop.md +0 -0
  310. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/event-sourcing/command-handler-retry-loop.md +0 -0
  311. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/event-sourcing/decide-withdraw-example.md +0 -0
  312. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/event-sourcing/decider-behaviour-tests.md +0 -0
  313. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/event-sourcing/decider-insufficient-funds-test.md +0 -0
  314. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/event-sourcing/decider-type.md +0 -0
  315. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/event-sourcing/decision-result-type.md +0 -0
  316. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/event-sourcing/deposit-money-command-with-timestamp.md +0 -0
  317. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/event-sourcing/event-envelope-type.md +0 -0
  318. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/event-sourcing/event-store-port-interface.md +0 -0
  319. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/event-sourcing/event-store-port.md +0 -0
  320. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/event-sourcing/evolve-behaviour-via-withdraw-limit.md +0 -0
  321. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/event-sourcing/generic-rehydrate-fold.md +0 -0
  322. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/event-sourcing/idempotent-projection-dedupe.md +0 -0
  323. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/event-sourcing/in-memory-event-store-fake.md +0 -0
  324. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/event-sourcing/inline-view-in-append-transaction.md +0 -0
  325. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/event-sourcing/live-view-bounded-fold.md +0 -0
  326. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/event-sourcing/order-placed-upcaster.md +0 -0
  327. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/event-sourcing/projection-behaviour-tests.md +0 -0
  328. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/event-sourcing/rehydrate-left-fold.md +0 -0
  329. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/event-sourcing/tags-of-from-identifying-attributes.md +0 -0
  330. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/event-sourcing/todo-list-claiming.md +0 -0
  331. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/event-sourcing/tolerant-reader-read-path.md +0 -0
  332. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/event-sourcing/upcaster-behaviour-test.md +0 -0
  333. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/hexagonal-architecture/adapter-error-translation.md +0 -0
  334. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/hexagonal-architecture/antipattern-business-logic-in-adapter.md +0 -0
  335. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/hexagonal-architecture/antipattern-bypass-adapter.md +0 -0
  336. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/hexagonal-architecture/antipattern-domain-depends-on-infrastructure.md +0 -0
  337. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/hexagonal-architecture/antipattern-pattern-shaped-names.md +0 -0
  338. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/hexagonal-architecture/antipattern-technology-shaped-port.md +0 -0
  339. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/hexagonal-architecture/composition-root-http-entrypoint.md +0 -0
  340. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/hexagonal-architecture/composition-root-queue-entrypoint.md +0 -0
  341. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/hexagonal-architecture/cqrs-lite-dashboard-query-function.md +0 -0
  342. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/hexagonal-architecture/cqrs-lite-domain-transform-read-data.md +0 -0
  343. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/hexagonal-architecture/cross-cutting-auth-driving-adapter.md +0 -0
  344. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/hexagonal-architecture/cross-cutting-domain-authorization.md +0 -0
  345. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/hexagonal-architecture/cross-cutting-domain-probe-port.md +0 -0
  346. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/hexagonal-architecture/cross-cutting-error-formatting-http.md +0 -0
  347. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/hexagonal-architecture/cross-cutting-technical-telemetry-adapters.md +0 -0
  348. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/hexagonal-architecture/cross-cutting-transactional-persistence-port.md +0 -0
  349. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/hexagonal-architecture/cross-cutting-use-case-identity.md +0 -0
  350. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/hexagonal-architecture/dependency-injection-order-placement.md +0 -0
  351. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/hexagonal-architecture/driven-adapter-and-fake-implementation.md +0 -0
  352. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/hexagonal-architecture/greenfield-driven-port-fake.md +0 -0
  353. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/hexagonal-architecture/greenfield-driving-port-constant.md +0 -0
  354. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/hexagonal-architecture/incremental-after-thin-entrypoint.md +0 -0
  355. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/hexagonal-architecture/incremental-before-tangled-handler.md +0 -0
  356. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/hexagonal-architecture/incremental-create-adapter.md +0 -0
  357. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/hexagonal-architecture/incremental-create-use-case.md +0 -0
  358. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/hexagonal-architecture/incremental-extract-domain-function.md +0 -0
  359. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/hexagonal-architecture/incremental-extract-port-interface.md +0 -0
  360. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/hexagonal-architecture/port-interface-definitions.md +0 -0
  361. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/hexagonal-architecture/reads-vs-writes-query-function-example.md +0 -0
  362. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/hexagonal-architecture/testing-create-test-db-helper.md +0 -0
  363. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/hexagonal-architecture/testing-domain-unit-test-example.md +0 -0
  364. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/hexagonal-architecture/testing-fake-order-repo.md +0 -0
  365. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/hexagonal-architecture/testing-narrow-integration-tests.md +0 -0
  366. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/hexagonal-architecture/testing-recording-fake-instrumentation.md +0 -0
  367. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/hexagonal-architecture/testing-use-case-primary-boundary.md +0 -0
  368. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/hexagonal-architecture/worked-example-domain-function-record-pledge.md +0 -0
  369. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/hexagonal-architecture/worked-example-domain-types.md +0 -0
  370. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/hexagonal-architecture/worked-example-domain-unit-test.md +0 -0
  371. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/hexagonal-architecture/worked-example-driven-adapters.md +0 -0
  372. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/hexagonal-architecture/worked-example-driving-adapter-entrypoint.md +0 -0
  373. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/hexagonal-architecture/worked-example-fakes-for-testing.md +0 -0
  374. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/hexagonal-architecture/worked-example-port-interfaces.md +0 -0
  375. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/hexagonal-architecture/worked-example-use-case-orchestration.md +0 -0
  376. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/hexagonal-architecture/worked-example-use-case-test.md +0 -0
  377. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/testing/correct-complete-factory-object.md +0 -0
  378. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/testing/correct-fresh-state-per-test.md +0 -0
  379. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/testing/correct-import-real-schema.md +0 -0
  380. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/testing/correct-inline-tested-through-behavior.md +0 -0
  381. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/testing/correct-testing-behavior-public-api.md +0 -0
  382. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/testing/coverage-theater-assert-called-only-correct.md +0 -0
  383. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/testing/coverage-theater-assert-called-only-wrong.md +0 -0
  384. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/testing/coverage-theater-branch-coverage-correct.md +0 -0
  385. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/testing/coverage-theater-happy-path-only-wrong.md +0 -0
  386. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/testing/coverage-theater-mock-function-under-test-correct.md +0 -0
  387. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/testing/coverage-theater-mock-function-under-test-wrong.md +0 -0
  388. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/testing/coverage-theater-trivial-getter-setter-correct.md +0 -0
  389. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/testing/coverage-theater-trivial-getter-setter-wrong.md +0 -0
  390. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/testing/factory-basic-pattern.md +0 -0
  391. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/testing/factory-complete-example.md +0 -0
  392. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/testing/factory-composition.md +0 -0
  393. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/testing/reach-validation-through-behavior.md +0 -0
  394. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/testing/wrong-extracted-helper-with-own-test.md +0 -0
  395. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/testing/wrong-incomplete-factory-object.md +0 -0
  396. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/testing/wrong-redefine-schema-in-test.md +0 -0
  397. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/testing/wrong-shared-mutable-fixture.md +0 -0
  398. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/examples/testing/wrong-testing-implementation-detail.md +0 -0
  399. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/flags/flags/flags.go +0 -0
  400. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/flags/flags/flags_test.go +0 -0
  401. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/modules/base/go.mod +0 -0
  402. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/modules/base/go.sum +0 -0
  403. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/modules/postgres/go.mod +0 -0
  404. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/modules/postgres/go.sum +0 -0
  405. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/modules/sqlite/go.mod +0 -0
  406. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/modules/sqlite/go.sum +0 -0
  407. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/scripts/go-coverage.py +0 -0
  408. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/go/scripts/go-mutation.py +0 -0
  409. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/build/.gitattributes +0 -0
  410. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/build/.mvn/wrapper/maven-wrapper.properties +0 -0
  411. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/build/config/checkstyle.xml +0 -0
  412. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/build/config/pmd-ruleset.xml +0 -0
  413. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/build/config/spotbugs-exclude.xml +0 -0
  414. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/build/mvnw +0 -0
  415. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/build/mvnw.cmd +0 -0
  416. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/domain-driven-design/accept-child-id-remove-exercise.md +0 -0
  417. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/domain-driven-design/acl-stripe-payment-translation.md +0 -0
  418. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/domain-driven-design/aggregate-sizing-occasion.md +0 -0
  419. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/domain-driven-design/aggregate-vs-read-model.md +0 -0
  420. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/domain-driven-design/always-valid-occasion-invariants.md +0 -0
  421. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/domain-driven-design/branded-id-types.md +0 -0
  422. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/domain-driven-design/create-child-through-root.md +0 -0
  423. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/domain-driven-design/decider-pattern-order.md +0 -0
  424. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/domain-driven-design/describe-order-exhaustive-switch.md +0 -0
  425. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/domain-driven-design/discriminated-union-pledge-result.md +0 -0
  426. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/domain-driven-design/domain-behavioral-tests.md +0 -0
  427. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/domain-driven-design/domain-service-pledge-contribution.md +0 -0
  428. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/domain-driven-design/domain-service-test-pledge-contribution.md +0 -0
  429. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/domain-driven-design/domain-service-vs-use-case.md +0 -0
  430. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/domain-driven-design/entity-rename-occasion.md +0 -0
  431. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/domain-driven-design/error-propagation-through-layers.md +0 -0
  432. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/domain-driven-design/exception-vs-result-type.md +0 -0
  433. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/domain-driven-design/explicit-return-pledge-no-events.md +0 -0
  434. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/domain-driven-design/fake-vs-mock-repository.md +0 -0
  435. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/domain-driven-design/in-process-event-dispatch.md +0 -0
  436. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/domain-driven-design/integration-test-order-repository.md +0 -0
  437. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/domain-driven-design/invariant-driven-vending-machine.md +0 -0
  438. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/domain-driven-design/money-value-object-factory.md +0 -0
  439. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/domain-driven-design/multiple-error-reasons-union.md +0 -0
  440. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/domain-driven-design/naming-signature-domain-vs-use-case.md +0 -0
  441. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/domain-driven-design/occasion-repository-interface.md +0 -0
  442. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/domain-driven-design/one-aggregate-per-transaction.md +0 -0
  443. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/domain-driven-design/optimistic-locking-repository-save.md +0 -0
  444. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/domain-driven-design/optimistic-locking-version-field.md +0 -0
  445. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/domain-driven-design/order-lifecycle-union.md +0 -0
  446. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/domain-driven-design/outbox-pattern-dispatch.md +0 -0
  447. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/domain-driven-design/pledge-result-types.md +0 -0
  448. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/domain-driven-design/process-manager-gift-purchase.md +0 -0
  449. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/domain-driven-design/property-based-test-pledge-budget.md +0 -0
  450. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/domain-driven-design/purity-test-domain-vs-presentation.md +0 -0
  451. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/domain-driven-design/readonly-array-child-collection.md +0 -0
  452. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/domain-driven-design/shared-kernel-package-layout.md +0 -0
  453. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/domain-driven-design/specification-can-pledge.md +0 -0
  454. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/domain-driven-design/test-decide-order-events.md +0 -0
  455. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/domain-driven-design/test-error-funding-closed.md +0 -0
  456. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/domain-driven-design/test-factory-get-occasion.md +0 -0
  457. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/domain-driven-design/ubiquitous-language-glossary-types.md +0 -0
  458. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/domain-driven-design/use-case-test-pledge-contribution.md +0 -0
  459. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/domain-driven-design/wrong-catch-rethrow-context.md +0 -0
  460. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/domain-driven-design/wrong-exception-for-business-rule.md +0 -0
  461. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/domain-driven-design/wrong-generic-error-type.md +0 -0
  462. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/domain-driven-design/zod-branded-type-bridging.md +0 -0
  463. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/event-sourcing/account-decider-and-evolve.md +0 -0
  464. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/event-sourcing/balance-view-apply-fold.md +0 -0
  465. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/event-sourcing/balance-view-projection.md +0 -0
  466. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/event-sourcing/catch-up-checkpoint-transaction.md +0 -0
  467. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/event-sourcing/command-handler-loop.md +0 -0
  468. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/event-sourcing/command-handler-retry-loop.md +0 -0
  469. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/event-sourcing/decide-withdraw-example.md +0 -0
  470. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/event-sourcing/decider-behaviour-tests.md +0 -0
  471. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/event-sourcing/decider-insufficient-funds-test.md +0 -0
  472. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/event-sourcing/decider-type.md +0 -0
  473. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/event-sourcing/decision-result-type.md +0 -0
  474. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/event-sourcing/deposit-money-command-with-timestamp.md +0 -0
  475. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/event-sourcing/event-envelope-type.md +0 -0
  476. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/event-sourcing/event-store-port-interface.md +0 -0
  477. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/event-sourcing/event-store-port.md +0 -0
  478. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/event-sourcing/evolve-behaviour-via-withdraw-limit.md +0 -0
  479. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/event-sourcing/generic-rehydrate-fold.md +0 -0
  480. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/event-sourcing/idempotent-projection-dedupe.md +0 -0
  481. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/event-sourcing/in-memory-event-store-fake.md +0 -0
  482. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/event-sourcing/inline-view-in-append-transaction.md +0 -0
  483. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/event-sourcing/live-view-bounded-fold.md +0 -0
  484. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/event-sourcing/order-placed-upcaster.md +0 -0
  485. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/event-sourcing/projection-behaviour-tests.md +0 -0
  486. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/event-sourcing/rehydrate-left-fold.md +0 -0
  487. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/event-sourcing/tags-of-from-identifying-attributes.md +0 -0
  488. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/event-sourcing/todo-list-claiming.md +0 -0
  489. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/event-sourcing/tolerant-reader-read-path.md +0 -0
  490. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/event-sourcing/upcaster-behaviour-test.md +0 -0
  491. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/hexagonal-architecture/adapter-error-translation.md +0 -0
  492. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/hexagonal-architecture/antipattern-business-logic-in-adapter.md +0 -0
  493. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/hexagonal-architecture/antipattern-bypass-adapter.md +0 -0
  494. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/hexagonal-architecture/antipattern-domain-depends-on-infrastructure.md +0 -0
  495. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/hexagonal-architecture/antipattern-pattern-shaped-names.md +0 -0
  496. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/hexagonal-architecture/antipattern-technology-shaped-port.md +0 -0
  497. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/hexagonal-architecture/composition-root-http-entrypoint.md +0 -0
  498. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/hexagonal-architecture/composition-root-queue-entrypoint.md +0 -0
  499. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/hexagonal-architecture/cqrs-lite-dashboard-query-function.md +0 -0
  500. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/hexagonal-architecture/cqrs-lite-domain-transform-read-data.md +0 -0
  501. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/hexagonal-architecture/cross-cutting-auth-driving-adapter.md +0 -0
  502. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/hexagonal-architecture/cross-cutting-domain-authorization.md +0 -0
  503. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/hexagonal-architecture/cross-cutting-domain-probe-port.md +0 -0
  504. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/hexagonal-architecture/cross-cutting-error-formatting-http.md +0 -0
  505. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/hexagonal-architecture/cross-cutting-technical-telemetry-adapters.md +0 -0
  506. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/hexagonal-architecture/cross-cutting-transactional-persistence-port.md +0 -0
  507. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/hexagonal-architecture/cross-cutting-use-case-identity.md +0 -0
  508. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/hexagonal-architecture/dependency-injection-order-placement.md +0 -0
  509. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/hexagonal-architecture/driven-adapter-and-fake-implementation.md +0 -0
  510. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/hexagonal-architecture/greenfield-driven-port-fake.md +0 -0
  511. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/hexagonal-architecture/greenfield-driving-port-constant.md +0 -0
  512. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/hexagonal-architecture/incremental-after-thin-entrypoint.md +0 -0
  513. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/hexagonal-architecture/incremental-before-tangled-handler.md +0 -0
  514. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/hexagonal-architecture/incremental-create-adapter.md +0 -0
  515. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/hexagonal-architecture/incremental-create-use-case.md +0 -0
  516. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/hexagonal-architecture/incremental-extract-domain-function.md +0 -0
  517. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/hexagonal-architecture/incremental-extract-port-interface.md +0 -0
  518. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/hexagonal-architecture/port-interface-definitions.md +0 -0
  519. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/hexagonal-architecture/reads-vs-writes-query-function-example.md +0 -0
  520. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/hexagonal-architecture/testing-create-test-db-helper.md +0 -0
  521. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/hexagonal-architecture/testing-domain-unit-test-example.md +0 -0
  522. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/hexagonal-architecture/testing-fake-order-repo.md +0 -0
  523. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/hexagonal-architecture/testing-narrow-integration-tests.md +0 -0
  524. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/hexagonal-architecture/testing-recording-fake-instrumentation.md +0 -0
  525. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/hexagonal-architecture/testing-use-case-primary-boundary.md +0 -0
  526. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/hexagonal-architecture/worked-example-domain-function-record-pledge.md +0 -0
  527. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/hexagonal-architecture/worked-example-domain-types.md +0 -0
  528. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/hexagonal-architecture/worked-example-domain-unit-test.md +0 -0
  529. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/hexagonal-architecture/worked-example-driven-adapters.md +0 -0
  530. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/hexagonal-architecture/worked-example-driving-adapter-entrypoint.md +0 -0
  531. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/hexagonal-architecture/worked-example-fakes-for-testing.md +0 -0
  532. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/hexagonal-architecture/worked-example-port-interfaces.md +0 -0
  533. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/hexagonal-architecture/worked-example-use-case-orchestration.md +0 -0
  534. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/hexagonal-architecture/worked-example-use-case-test.md +0 -0
  535. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/testing/correct-complete-factory-object.md +0 -0
  536. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/testing/correct-fresh-state-per-test.md +0 -0
  537. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/testing/correct-import-real-schema.md +0 -0
  538. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/testing/correct-inline-tested-through-behavior.md +0 -0
  539. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/testing/correct-testing-behavior-public-api.md +0 -0
  540. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/testing/coverage-theater-assert-called-only-correct.md +0 -0
  541. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/testing/coverage-theater-assert-called-only-wrong.md +0 -0
  542. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/testing/coverage-theater-branch-coverage-correct.md +0 -0
  543. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/testing/coverage-theater-happy-path-only-wrong.md +0 -0
  544. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/testing/coverage-theater-mock-function-under-test-correct.md +0 -0
  545. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/testing/coverage-theater-mock-function-under-test-wrong.md +0 -0
  546. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/testing/coverage-theater-trivial-getter-setter-correct.md +0 -0
  547. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/testing/coverage-theater-trivial-getter-setter-wrong.md +0 -0
  548. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/testing/factory-basic-pattern.md +0 -0
  549. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/testing/factory-complete-example.md +0 -0
  550. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/testing/factory-composition.md +0 -0
  551. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/testing/reach-validation-through-behavior.md +0 -0
  552. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/testing/wrong-extracted-helper-with-own-test.md +0 -0
  553. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/testing/wrong-incomplete-factory-object.md +0 -0
  554. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/testing/wrong-redefine-schema-in-test.md +0 -0
  555. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/testing/wrong-shared-mutable-fixture.md +0 -0
  556. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/examples/testing/wrong-testing-implementation-detail.md +0 -0
  557. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/flags/src/main/java/com/example/deliverystarter/flags/Flags.java +0 -0
  558. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java/flags/src/test/java/com/example/deliverystarter/flags/FlagsTest.java +0 -0
  559. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java-quarkus/app/pom.xml +0 -0
  560. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java-quarkus/app/src/main/java/com/example/deliverystarter/application/README.md +0 -0
  561. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java-quarkus/app/src/main/java/com/example/deliverystarter/domain/README.md +0 -0
  562. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java-quarkus/app/src/main/java/com/example/deliverystarter/health/HealthStatus.java +0 -0
  563. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java-quarkus/app/src/main/resources/application.properties +0 -0
  564. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java-quarkus/app/src/test/java/com/example/deliverystarter/health/HealthStatusTest.java +0 -0
  565. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java-spring/app/pom.xml +0 -0
  566. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java-spring/app/src/main/java/com/example/deliverystarter/ServiceApplication.java +0 -0
  567. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java-spring/app/src/main/java/com/example/deliverystarter/application/README.md +0 -0
  568. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java-spring/app/src/main/java/com/example/deliverystarter/domain/README.md +0 -0
  569. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java-spring/app/src/main/java/com/example/deliverystarter/health/HealthStatus.java +0 -0
  570. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java-spring/app/src/main/resources/application.properties +0 -0
  571. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/java-spring/app/src/test/java/com/example/deliverystarter/health/HealthStatusTest.java +0 -0
  572. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/app/pyproject.toml +0 -0
  573. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/app/src/delivery_starter/__init__.py +0 -0
  574. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/app/src/delivery_starter/application/README.md +0 -0
  575. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/app/src/delivery_starter/domain/README.md +0 -0
  576. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/app/tests/test_health.py +0 -0
  577. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/event-port/src/delivery_starter/application/ports/events.py +0 -0
  578. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/event-port/tests/test_events.py +0 -0
  579. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/domain-driven-design/accept-child-id-remove-exercise.md +0 -0
  580. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/domain-driven-design/acl-stripe-payment-translation.md +0 -0
  581. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/domain-driven-design/aggregate-sizing-occasion.md +0 -0
  582. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/domain-driven-design/aggregate-vs-read-model.md +0 -0
  583. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/domain-driven-design/always-valid-occasion-invariants.md +0 -0
  584. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/domain-driven-design/branded-id-types.md +0 -0
  585. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/domain-driven-design/create-child-through-root.md +0 -0
  586. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/domain-driven-design/decider-pattern-order.md +0 -0
  587. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/domain-driven-design/describe-order-exhaustive-switch.md +0 -0
  588. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/domain-driven-design/discriminated-union-pledge-result.md +0 -0
  589. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/domain-driven-design/domain-behavioral-tests.md +0 -0
  590. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/domain-driven-design/domain-service-pledge-contribution.md +0 -0
  591. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/domain-driven-design/domain-service-test-pledge-contribution.md +0 -0
  592. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/domain-driven-design/domain-service-vs-use-case.md +0 -0
  593. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/domain-driven-design/entity-rename-occasion.md +0 -0
  594. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/domain-driven-design/error-propagation-through-layers.md +0 -0
  595. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/domain-driven-design/exception-vs-result-type.md +0 -0
  596. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/domain-driven-design/explicit-return-pledge-no-events.md +0 -0
  597. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/domain-driven-design/fake-vs-mock-repository.md +0 -0
  598. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/domain-driven-design/in-process-event-dispatch.md +0 -0
  599. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/domain-driven-design/integration-test-order-repository.md +0 -0
  600. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/domain-driven-design/invariant-driven-vending-machine.md +0 -0
  601. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/domain-driven-design/money-value-object-factory.md +0 -0
  602. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/domain-driven-design/multiple-error-reasons-union.md +0 -0
  603. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/domain-driven-design/naming-signature-domain-vs-use-case.md +0 -0
  604. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/domain-driven-design/occasion-repository-interface.md +0 -0
  605. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/domain-driven-design/one-aggregate-per-transaction.md +0 -0
  606. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/domain-driven-design/optimistic-locking-repository-save.md +0 -0
  607. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/domain-driven-design/optimistic-locking-version-field.md +0 -0
  608. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/domain-driven-design/order-lifecycle-union.md +0 -0
  609. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/domain-driven-design/outbox-pattern-dispatch.md +0 -0
  610. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/domain-driven-design/pledge-result-types.md +0 -0
  611. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/domain-driven-design/process-manager-gift-purchase.md +0 -0
  612. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/domain-driven-design/property-based-test-pledge-budget.md +0 -0
  613. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/domain-driven-design/purity-test-domain-vs-presentation.md +0 -0
  614. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/domain-driven-design/readonly-array-child-collection.md +0 -0
  615. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/domain-driven-design/shared-kernel-package-layout.md +0 -0
  616. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/domain-driven-design/specification-can-pledge.md +0 -0
  617. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/domain-driven-design/test-decide-order-events.md +0 -0
  618. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/domain-driven-design/test-error-funding-closed.md +0 -0
  619. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/domain-driven-design/test-factory-get-occasion.md +0 -0
  620. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/domain-driven-design/ubiquitous-language-glossary-types.md +0 -0
  621. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/domain-driven-design/use-case-test-pledge-contribution.md +0 -0
  622. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/domain-driven-design/wrong-catch-rethrow-context.md +0 -0
  623. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/domain-driven-design/wrong-exception-for-business-rule.md +0 -0
  624. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/domain-driven-design/wrong-generic-error-type.md +0 -0
  625. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/domain-driven-design/zod-branded-type-bridging.md +0 -0
  626. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/event-sourcing/account-decider-and-evolve.md +0 -0
  627. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/event-sourcing/balance-view-apply-fold.md +0 -0
  628. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/event-sourcing/balance-view-projection.md +0 -0
  629. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/event-sourcing/catch-up-checkpoint-transaction.md +0 -0
  630. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/event-sourcing/command-handler-loop.md +0 -0
  631. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/event-sourcing/command-handler-retry-loop.md +0 -0
  632. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/event-sourcing/decide-withdraw-example.md +0 -0
  633. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/event-sourcing/decider-behaviour-tests.md +0 -0
  634. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/event-sourcing/decider-insufficient-funds-test.md +0 -0
  635. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/event-sourcing/decider-type.md +0 -0
  636. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/event-sourcing/decision-result-type.md +0 -0
  637. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/event-sourcing/deposit-money-command-with-timestamp.md +0 -0
  638. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/event-sourcing/event-envelope-type.md +0 -0
  639. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/event-sourcing/event-store-port-interface.md +0 -0
  640. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/event-sourcing/event-store-port.md +0 -0
  641. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/event-sourcing/evolve-behaviour-via-withdraw-limit.md +0 -0
  642. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/event-sourcing/generic-rehydrate-fold.md +0 -0
  643. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/event-sourcing/idempotent-projection-dedupe.md +0 -0
  644. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/event-sourcing/in-memory-event-store-fake.md +0 -0
  645. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/event-sourcing/inline-view-in-append-transaction.md +0 -0
  646. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/event-sourcing/live-view-bounded-fold.md +0 -0
  647. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/event-sourcing/order-placed-upcaster.md +0 -0
  648. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/event-sourcing/projection-behaviour-tests.md +0 -0
  649. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/event-sourcing/rehydrate-left-fold.md +0 -0
  650. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/event-sourcing/tags-of-from-identifying-attributes.md +0 -0
  651. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/event-sourcing/todo-list-claiming.md +0 -0
  652. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/event-sourcing/tolerant-reader-read-path.md +0 -0
  653. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/event-sourcing/upcaster-behaviour-test.md +0 -0
  654. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/hexagonal-architecture/adapter-error-translation.md +0 -0
  655. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/hexagonal-architecture/antipattern-business-logic-in-adapter.md +0 -0
  656. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/hexagonal-architecture/antipattern-bypass-adapter.md +0 -0
  657. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/hexagonal-architecture/antipattern-domain-depends-on-infrastructure.md +0 -0
  658. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/hexagonal-architecture/antipattern-pattern-shaped-names.md +0 -0
  659. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/hexagonal-architecture/antipattern-technology-shaped-port.md +0 -0
  660. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/hexagonal-architecture/composition-root-http-entrypoint.md +0 -0
  661. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/hexagonal-architecture/composition-root-queue-entrypoint.md +0 -0
  662. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/hexagonal-architecture/cqrs-lite-dashboard-query-function.md +0 -0
  663. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/hexagonal-architecture/cqrs-lite-domain-transform-read-data.md +0 -0
  664. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/hexagonal-architecture/cross-cutting-auth-driving-adapter.md +0 -0
  665. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/hexagonal-architecture/cross-cutting-domain-authorization.md +0 -0
  666. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/hexagonal-architecture/cross-cutting-domain-probe-port.md +0 -0
  667. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/hexagonal-architecture/cross-cutting-error-formatting-http.md +0 -0
  668. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/hexagonal-architecture/cross-cutting-technical-telemetry-adapters.md +0 -0
  669. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/hexagonal-architecture/cross-cutting-transactional-persistence-port.md +0 -0
  670. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/hexagonal-architecture/cross-cutting-use-case-identity.md +0 -0
  671. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/hexagonal-architecture/dependency-injection-order-placement.md +0 -0
  672. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/hexagonal-architecture/driven-adapter-and-fake-implementation.md +0 -0
  673. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/hexagonal-architecture/greenfield-driven-port-fake.md +0 -0
  674. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/hexagonal-architecture/greenfield-driving-port-constant.md +0 -0
  675. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/hexagonal-architecture/incremental-after-thin-entrypoint.md +0 -0
  676. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/hexagonal-architecture/incremental-before-tangled-handler.md +0 -0
  677. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/hexagonal-architecture/incremental-create-adapter.md +0 -0
  678. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/hexagonal-architecture/incremental-create-use-case.md +0 -0
  679. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/hexagonal-architecture/incremental-extract-domain-function.md +0 -0
  680. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/hexagonal-architecture/incremental-extract-port-interface.md +0 -0
  681. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/hexagonal-architecture/port-interface-definitions.md +0 -0
  682. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/hexagonal-architecture/reads-vs-writes-query-function-example.md +0 -0
  683. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/hexagonal-architecture/testing-create-test-db-helper.md +0 -0
  684. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/hexagonal-architecture/testing-domain-unit-test-example.md +0 -0
  685. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/hexagonal-architecture/testing-fake-order-repo.md +0 -0
  686. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/hexagonal-architecture/testing-narrow-integration-tests.md +0 -0
  687. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/hexagonal-architecture/testing-recording-fake-instrumentation.md +0 -0
  688. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/hexagonal-architecture/testing-use-case-primary-boundary.md +0 -0
  689. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/hexagonal-architecture/worked-example-domain-function-record-pledge.md +0 -0
  690. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/hexagonal-architecture/worked-example-domain-types.md +0 -0
  691. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/hexagonal-architecture/worked-example-domain-unit-test.md +0 -0
  692. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/hexagonal-architecture/worked-example-driven-adapters.md +0 -0
  693. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/hexagonal-architecture/worked-example-driving-adapter-entrypoint.md +0 -0
  694. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/hexagonal-architecture/worked-example-fakes-for-testing.md +0 -0
  695. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/hexagonal-architecture/worked-example-port-interfaces.md +0 -0
  696. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/hexagonal-architecture/worked-example-use-case-orchestration.md +0 -0
  697. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/hexagonal-architecture/worked-example-use-case-test.md +0 -0
  698. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/testing/correct-complete-factory-object.md +0 -0
  699. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/testing/correct-fresh-state-per-test.md +0 -0
  700. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/testing/correct-import-real-schema.md +0 -0
  701. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/testing/correct-inline-tested-through-behavior.md +0 -0
  702. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/testing/correct-testing-behavior-public-api.md +0 -0
  703. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/testing/coverage-theater-assert-called-only-correct.md +0 -0
  704. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/testing/coverage-theater-assert-called-only-wrong.md +0 -0
  705. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/testing/coverage-theater-branch-coverage-correct.md +0 -0
  706. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/testing/coverage-theater-happy-path-only-wrong.md +0 -0
  707. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/testing/coverage-theater-mock-function-under-test-correct.md +0 -0
  708. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/testing/coverage-theater-mock-function-under-test-wrong.md +0 -0
  709. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/testing/coverage-theater-trivial-getter-setter-correct.md +0 -0
  710. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/testing/coverage-theater-trivial-getter-setter-wrong.md +0 -0
  711. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/testing/factory-basic-pattern.md +0 -0
  712. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/testing/factory-complete-example.md +0 -0
  713. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/testing/factory-composition.md +0 -0
  714. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/testing/reach-validation-through-behavior.md +0 -0
  715. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/testing/wrong-extracted-helper-with-own-test.md +0 -0
  716. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/testing/wrong-incomplete-factory-object.md +0 -0
  717. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/testing/wrong-redefine-schema-in-test.md +0 -0
  718. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/testing/wrong-shared-mutable-fixture.md +0 -0
  719. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/examples/testing/wrong-testing-implementation-detail.md +0 -0
  720. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/flags/src/delivery_starter/flags.py +0 -0
  721. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/flags/tests/test_flags.py +0 -0
  722. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/locks/uv-fastapi-postgres.lock +0 -0
  723. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/locks/uv-fastapi.lock +0 -0
  724. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/locks/uv-postgres.lock +0 -0
  725. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/python/locks/uv.lock +0 -0
  726. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/app/package.json +0 -0
  727. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/app/src/application/README.md +0 -0
  728. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/app/src/domain/README.md +0 -0
  729. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/app/src/health.ts +0 -0
  730. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/app/tests/health.test.ts +0 -0
  731. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/biome/biome.jsonc +0 -0
  732. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/biome/domain-purity.grit +0 -0
  733. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/domain-driven-design/accept-child-id-remove-exercise.md +0 -0
  734. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/domain-driven-design/acl-stripe-payment-translation.md +0 -0
  735. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/domain-driven-design/aggregate-sizing-occasion.md +0 -0
  736. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/domain-driven-design/aggregate-vs-read-model.md +0 -0
  737. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/domain-driven-design/always-valid-occasion-invariants.md +0 -0
  738. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/domain-driven-design/branded-id-types.md +0 -0
  739. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/domain-driven-design/create-child-through-root.md +0 -0
  740. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/domain-driven-design/decider-pattern-order.md +0 -0
  741. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/domain-driven-design/describe-order-exhaustive-switch.md +0 -0
  742. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/domain-driven-design/discriminated-union-pledge-result.md +0 -0
  743. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/domain-driven-design/domain-behavioral-tests.md +0 -0
  744. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/domain-driven-design/domain-service-pledge-contribution.md +0 -0
  745. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/domain-driven-design/domain-service-test-pledge-contribution.md +0 -0
  746. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/domain-driven-design/domain-service-vs-use-case.md +0 -0
  747. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/domain-driven-design/entity-rename-occasion.md +0 -0
  748. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/domain-driven-design/error-propagation-through-layers.md +0 -0
  749. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/domain-driven-design/exception-vs-result-type.md +0 -0
  750. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/domain-driven-design/explicit-return-pledge-no-events.md +0 -0
  751. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/domain-driven-design/fake-vs-mock-repository.md +0 -0
  752. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/domain-driven-design/in-process-event-dispatch.md +0 -0
  753. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/domain-driven-design/integration-test-order-repository.md +0 -0
  754. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/domain-driven-design/invariant-driven-vending-machine.md +0 -0
  755. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/domain-driven-design/money-value-object-factory.md +0 -0
  756. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/domain-driven-design/multiple-error-reasons-union.md +0 -0
  757. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/domain-driven-design/naming-signature-domain-vs-use-case.md +0 -0
  758. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/domain-driven-design/occasion-repository-interface.md +0 -0
  759. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/domain-driven-design/one-aggregate-per-transaction.md +0 -0
  760. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/domain-driven-design/optimistic-locking-repository-save.md +0 -0
  761. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/domain-driven-design/optimistic-locking-version-field.md +0 -0
  762. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/domain-driven-design/order-lifecycle-union.md +0 -0
  763. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/domain-driven-design/outbox-pattern-dispatch.md +0 -0
  764. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/domain-driven-design/pledge-result-types.md +0 -0
  765. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/domain-driven-design/process-manager-gift-purchase.md +0 -0
  766. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/domain-driven-design/property-based-test-pledge-budget.md +0 -0
  767. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/domain-driven-design/purity-test-domain-vs-presentation.md +0 -0
  768. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/domain-driven-design/readonly-array-child-collection.md +0 -0
  769. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/domain-driven-design/shared-kernel-package-layout.md +0 -0
  770. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/domain-driven-design/specification-can-pledge.md +0 -0
  771. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/domain-driven-design/test-decide-order-events.md +0 -0
  772. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/domain-driven-design/test-error-funding-closed.md +0 -0
  773. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/domain-driven-design/test-factory-get-occasion.md +0 -0
  774. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/domain-driven-design/ubiquitous-language-glossary-types.md +0 -0
  775. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/domain-driven-design/use-case-test-pledge-contribution.md +0 -0
  776. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/domain-driven-design/wrong-catch-rethrow-context.md +0 -0
  777. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/domain-driven-design/wrong-exception-for-business-rule.md +0 -0
  778. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/domain-driven-design/wrong-generic-error-type.md +0 -0
  779. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/domain-driven-design/zod-branded-type-bridging.md +0 -0
  780. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/event-sourcing/account-decider-and-evolve.md +0 -0
  781. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/event-sourcing/balance-view-apply-fold.md +0 -0
  782. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/event-sourcing/balance-view-projection.md +0 -0
  783. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/event-sourcing/catch-up-checkpoint-transaction.md +0 -0
  784. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/event-sourcing/command-handler-loop.md +0 -0
  785. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/event-sourcing/command-handler-retry-loop.md +0 -0
  786. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/event-sourcing/decide-withdraw-example.md +0 -0
  787. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/event-sourcing/decider-behaviour-tests.md +0 -0
  788. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/event-sourcing/decider-insufficient-funds-test.md +0 -0
  789. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/event-sourcing/decider-type.md +0 -0
  790. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/event-sourcing/decision-result-type.md +0 -0
  791. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/event-sourcing/deposit-money-command-with-timestamp.md +0 -0
  792. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/event-sourcing/event-envelope-type.md +0 -0
  793. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/event-sourcing/event-store-port-interface.md +0 -0
  794. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/event-sourcing/event-store-port.md +0 -0
  795. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/event-sourcing/evolve-behaviour-via-withdraw-limit.md +0 -0
  796. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/event-sourcing/generic-rehydrate-fold.md +0 -0
  797. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/event-sourcing/idempotent-projection-dedupe.md +0 -0
  798. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/event-sourcing/in-memory-event-store-fake.md +0 -0
  799. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/event-sourcing/inline-view-in-append-transaction.md +0 -0
  800. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/event-sourcing/live-view-bounded-fold.md +0 -0
  801. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/event-sourcing/order-placed-upcaster.md +0 -0
  802. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/event-sourcing/projection-behaviour-tests.md +0 -0
  803. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/event-sourcing/rehydrate-left-fold.md +0 -0
  804. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/event-sourcing/tags-of-from-identifying-attributes.md +0 -0
  805. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/event-sourcing/todo-list-claiming.md +0 -0
  806. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/event-sourcing/tolerant-reader-read-path.md +0 -0
  807. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/event-sourcing/upcaster-behaviour-test.md +0 -0
  808. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/hexagonal-architecture/adapter-error-translation.md +0 -0
  809. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/hexagonal-architecture/antipattern-business-logic-in-adapter.md +0 -0
  810. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/hexagonal-architecture/antipattern-bypass-adapter.md +0 -0
  811. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/hexagonal-architecture/antipattern-domain-depends-on-infrastructure.md +0 -0
  812. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/hexagonal-architecture/antipattern-pattern-shaped-names.md +0 -0
  813. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/hexagonal-architecture/antipattern-technology-shaped-port.md +0 -0
  814. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/hexagonal-architecture/composition-root-http-entrypoint.md +0 -0
  815. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/hexagonal-architecture/composition-root-queue-entrypoint.md +0 -0
  816. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/hexagonal-architecture/cqrs-lite-dashboard-query-function.md +0 -0
  817. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/hexagonal-architecture/cqrs-lite-domain-transform-read-data.md +0 -0
  818. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/hexagonal-architecture/cross-cutting-auth-driving-adapter.md +0 -0
  819. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/hexagonal-architecture/cross-cutting-domain-authorization.md +0 -0
  820. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/hexagonal-architecture/cross-cutting-domain-probe-port.md +0 -0
  821. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/hexagonal-architecture/cross-cutting-error-formatting-http.md +0 -0
  822. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/hexagonal-architecture/cross-cutting-technical-telemetry-adapters.md +0 -0
  823. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/hexagonal-architecture/cross-cutting-transactional-persistence-port.md +0 -0
  824. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/hexagonal-architecture/cross-cutting-use-case-identity.md +0 -0
  825. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/hexagonal-architecture/dependency-injection-order-placement.md +0 -0
  826. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/hexagonal-architecture/driven-adapter-and-fake-implementation.md +0 -0
  827. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/hexagonal-architecture/greenfield-driven-port-fake.md +0 -0
  828. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/hexagonal-architecture/greenfield-driving-port-constant.md +0 -0
  829. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/hexagonal-architecture/incremental-after-thin-entrypoint.md +0 -0
  830. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/hexagonal-architecture/incremental-before-tangled-handler.md +0 -0
  831. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/hexagonal-architecture/incremental-create-adapter.md +0 -0
  832. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/hexagonal-architecture/incremental-create-use-case.md +0 -0
  833. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/hexagonal-architecture/incremental-extract-domain-function.md +0 -0
  834. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/hexagonal-architecture/incremental-extract-port-interface.md +0 -0
  835. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/hexagonal-architecture/port-interface-definitions.md +0 -0
  836. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/hexagonal-architecture/reads-vs-writes-query-function-example.md +0 -0
  837. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/hexagonal-architecture/testing-create-test-db-helper.md +0 -0
  838. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/hexagonal-architecture/testing-domain-unit-test-example.md +0 -0
  839. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/hexagonal-architecture/testing-fake-order-repo.md +0 -0
  840. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/hexagonal-architecture/testing-narrow-integration-tests.md +0 -0
  841. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/hexagonal-architecture/testing-recording-fake-instrumentation.md +0 -0
  842. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/hexagonal-architecture/testing-use-case-primary-boundary.md +0 -0
  843. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/hexagonal-architecture/worked-example-domain-function-record-pledge.md +0 -0
  844. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/hexagonal-architecture/worked-example-domain-types.md +0 -0
  845. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/hexagonal-architecture/worked-example-domain-unit-test.md +0 -0
  846. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/hexagonal-architecture/worked-example-driven-adapters.md +0 -0
  847. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/hexagonal-architecture/worked-example-driving-adapter-entrypoint.md +0 -0
  848. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/hexagonal-architecture/worked-example-fakes-for-testing.md +0 -0
  849. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/hexagonal-architecture/worked-example-port-interfaces.md +0 -0
  850. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/hexagonal-architecture/worked-example-use-case-orchestration.md +0 -0
  851. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/hexagonal-architecture/worked-example-use-case-test.md +0 -0
  852. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/testing/correct-complete-factory-object.md +0 -0
  853. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/testing/correct-fresh-state-per-test.md +0 -0
  854. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/testing/correct-import-real-schema.md +0 -0
  855. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/testing/correct-inline-tested-through-behavior.md +0 -0
  856. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/testing/correct-testing-behavior-public-api.md +0 -0
  857. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/testing/coverage-theater-assert-called-only-correct.md +0 -0
  858. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/testing/coverage-theater-assert-called-only-wrong.md +0 -0
  859. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/testing/coverage-theater-branch-coverage-correct.md +0 -0
  860. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/testing/coverage-theater-happy-path-only-wrong.md +0 -0
  861. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/testing/coverage-theater-mock-function-under-test-correct.md +0 -0
  862. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/testing/coverage-theater-mock-function-under-test-wrong.md +0 -0
  863. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/testing/coverage-theater-trivial-getter-setter-correct.md +0 -0
  864. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/testing/coverage-theater-trivial-getter-setter-wrong.md +0 -0
  865. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/testing/factory-basic-pattern.md +0 -0
  866. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/testing/factory-complete-example.md +0 -0
  867. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/testing/factory-composition.md +0 -0
  868. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/testing/reach-validation-through-behavior.md +0 -0
  869. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/testing/wrong-extracted-helper-with-own-test.md +0 -0
  870. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/testing/wrong-incomplete-factory-object.md +0 -0
  871. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/testing/wrong-redefine-schema-in-test.md +0 -0
  872. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/testing/wrong-shared-mutable-fixture.md +0 -0
  873. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/examples/testing/wrong-testing-implementation-detail.md +0 -0
  874. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/flags/src/flags.ts +0 -0
  875. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/flags/tests/flags.test.ts +0 -0
  876. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/locks/package-lock-fastify-postgres.json +0 -0
  877. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/locks/package-lock-fastify.json +0 -0
  878. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/locks/package-lock-postgres.json +0 -0
  879. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/languages/typescript/locks/package-lock.json +0 -0
  880. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/profiles/event-modelling/.specify/presets/.registry +0 -0
  881. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/profiles/event-modelling/.specify/presets/event-modelling/preset.yml +0 -0
  882. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/profiles/event-modelling/.specify/presets/event-modelling/templates/constitution-template.md +0 -0
  883. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/profiles/event-modelling/.specify/presets/event-modelling/templates/plan-template.md +0 -0
  884. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/profiles/event-modelling/.specify/presets/event-modelling/templates/tasks-template.md +0 -0
  885. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/profiles/event-modelling/commands/example-map.md +0 -0
  886. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/profiles/event-modelling/commands/validate-code-against-model.md +0 -0
  887. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/profiles/event-modelling/docs/speckit-preset.md +0 -0
  888. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/profiles/standard/.specify/presets/.registry +0 -0
  889. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/profiles/standard/.specify/presets/standard/preset.yml +0 -0
  890. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/profiles/standard/.specify/presets/standard/templates/constitution-template.md +0 -0
  891. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/profiles/standard/docs/adr/0001-record-architecture-decisions.md +0 -0
  892. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/profiles/standard/docs/speckit-preset.md +0 -0
  893. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/profiles/standard/skills/adversarial-testing/SKILL.md +0 -0
  894. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/profiles/standard/skills/adversarial-testing/resources/attack-catalogue.md +0 -0
  895. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/profiles/standard/skills/architecture-decisions/SKILL.md +0 -0
  896. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/targets/aws/README.md +0 -0
  897. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/targets/aws/bootstrap/main.tf +0 -0
  898. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/targets/aws/bootstrap/outputs.tf +0 -0
  899. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/targets/aws/bootstrap/variables.tf +0 -0
  900. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/targets/aws/scripts/bootstrap.py +0 -0
  901. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/targets/aws/scripts/check-flags.py +0 -0
  902. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/targets/aws/scripts/deploy.py +0 -0
  903. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/targets/aws/service/auth0.tf +0 -0
  904. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/targets/aws/service/cognito_customers.tf +0 -0
  905. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/targets/aws/service/cognito_staff.tf +0 -0
  906. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/targets/aws/service/flags.auto.tfvars +0 -0
  907. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/targets/aws/service/flags.tf +0 -0
  908. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/targets/aws/service/frontend.tf +0 -0
  909. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/targets/aws/service/ingress.tf +0 -0
  910. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/targets/aws/service/main.tf +0 -0
  911. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/targets/aws/service/network.tf +0 -0
  912. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/targets/aws/service/no-auth0.tf +0 -0
  913. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/targets/aws/service/no-frontend.tf +0 -0
  914. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/targets/aws/service/outputs.tf +0 -0
  915. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/targets/aws/service/production.tfvars +0 -0
  916. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/targets/aws/service/rds.tf +0 -0
  917. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/targets/aws/service/staging.tfvars +0 -0
  918. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/targets/aws/service/variables.tf +0 -0
  919. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/targets/aws/service/versions.tf +0 -0
  920. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/targets/azure/README.md +0 -0
  921. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/targets/azure/bootstrap/main.tf +0 -0
  922. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/targets/azure/bootstrap/outputs.tf +0 -0
  923. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/targets/azure/bootstrap/variables.tf +0 -0
  924. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/targets/azure/scripts/bootstrap.py +0 -0
  925. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/targets/azure/scripts/check-flags.py +0 -0
  926. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/targets/azure/scripts/deploy.py +0 -0
  927. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/targets/azure/service/auth0.tf +0 -0
  928. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/targets/azure/service/entra_staff.tf +0 -0
  929. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/targets/azure/service/flags.auto.tfvars +0 -0
  930. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/targets/azure/service/flags.tf +0 -0
  931. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/targets/azure/service/frontend.tf +0 -0
  932. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/targets/azure/service/ingress.tf +0 -0
  933. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/targets/azure/service/main.tf +0 -0
  934. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/targets/azure/service/no-auth0.tf +0 -0
  935. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/targets/azure/service/no-frontend.tf +0 -0
  936. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/targets/azure/service/outputs.tf +0 -0
  937. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/targets/azure/service/postgres.tf +0 -0
  938. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/targets/azure/service/production.tfvars +0 -0
  939. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/targets/azure/service/staging.tfvars +0 -0
  940. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/targets/azure/service/variables.tf +0 -0
  941. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/targets/azure/service/versions.tf +0 -0
  942. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/.specify/extensions.yml +0 -0
  943. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/docs/adr/0001-record-architecture-decisions.md +0 -0
  944. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/docs/agent-harnesses.md +0 -0
  945. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/docs/delegated-agent-safety.md +0 -0
  946. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/docs/event-model/README.md +0 -0
  947. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/docs/event-model/model.yaml +0 -0
  948. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/docs/event-modeling-to-code.md +0 -0
  949. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/docs/first-slice.md +0 -0
  950. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/scripts/agents/benchmark.py +0 -0
  951. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/scripts/agents/drive.py +0 -0
  952. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/scripts/agents/models.py +0 -0
  953. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/scripts/agents/project.py +0 -0
  954. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/scripts/check-codegraph.py +0 -0
  955. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/scripts/check-constitution.py +0 -0
  956. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/scripts/check-decisions.py +0 -0
  957. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/scripts/check-imports.py +0 -0
  958. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/scripts/check-migrations.py +0 -0
  959. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/scripts/check-slice-scope.py +0 -0
  960. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/scripts/check-speckit.py +0 -0
  961. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/scripts/check-styles.py +0 -0
  962. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/scripts/event-model/board-plan.test.ts +0 -0
  963. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/scripts/event-model/board-plan.ts +0 -0
  964. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/scripts/event-model/check.py +0 -0
  965. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/scripts/event-model/check.ts +0 -0
  966. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/scripts/event-model/drawio.test.ts +0 -0
  967. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/scripts/event-model/drawio.ts +0 -0
  968. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/scripts/event-model/example-model.ts +0 -0
  969. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/scripts/event-model/mermaid.ts +0 -0
  970. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/scripts/event-model/model.ts +0 -0
  971. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/scripts/event-model/package.json +0 -0
  972. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/scripts/event-model/page.ts +0 -0
  973. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/scripts/event-model/palette.ts +0 -0
  974. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/scripts/event-model/patch-mermaid-swimlanes.ts +0 -0
  975. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/scripts/event-model/readme.ts +0 -0
  976. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/scripts/event-model/render-drawio.ts +0 -0
  977. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/scripts/event-model/render.ts +0 -0
  978. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/scripts/event-model/requirements.txt +0 -0
  979. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/scripts/event-model/validate.ts +0 -0
  980. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/scripts/event-model/workspace.ts +0 -0
  981. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/scripts/extensions/codegraph/init.py +0 -0
  982. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/scripts/extensions/guidance.py +0 -0
  983. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/scripts/extensions/menu.py +0 -0
  984. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/scripts/extensions/project.py +0 -0
  985. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/scripts/extensions/uipro/init.py +0 -0
  986. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/scripts/test_benchmark.py +0 -0
  987. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/LICENSE +0 -0
  988. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/REFERENCES.md +0 -0
  989. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/acceptance-review/LICENSE +0 -0
  990. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/acceptance-review/SKILL.md +0 -0
  991. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/acceptance-review/agents/openai.yaml +0 -0
  992. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/acceptance-review/references/source-notes.md +0 -0
  993. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/adversarial-testing/SKILL.md +0 -0
  994. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/adversarial-testing/resources/attack-catalogue.md +0 -0
  995. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/api-design/LICENSE +0 -0
  996. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/api-design/SKILL.md +0 -0
  997. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/api-design/resources/api-evolution.md +0 -0
  998. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/api-design/resources/api-security.md +0 -0
  999. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/api-design/resources/auth-security.md +0 -0
  1000. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/api-design/resources/http-fundamentals.md +0 -0
  1001. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/api-design/resources/problem-details.md +0 -0
  1002. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/api-design/resources/source-notes.md +0 -0
  1003. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/architecture-decisions/SKILL.md +0 -0
  1004. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/bff-design/SKILL.md +0 -0
  1005. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/bff-design/agents/openai.yaml +0 -0
  1006. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/bff-design/references/adoption-and-granularity.md +0 -0
  1007. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/bff-design/references/aggregation-and-resilience.md +0 -0
  1008. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/bff-design/references/alternatives.md +0 -0
  1009. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/bff-design/references/upstream-identity.md +0 -0
  1010. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/bff-entry-points/SKILL.md +0 -0
  1011. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/bff-entry-points/agents/openai.yaml +0 -0
  1012. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/bff-entry-points/references/browser-session-coordination.md +0 -0
  1013. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/bff-entry-points/references/endpoint-protection.md +0 -0
  1014. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/bff-entry-points/references/enforcement-and-testing.md +0 -0
  1015. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/bff-entry-points/references/hexagonal-auth-boundaries.md +0 -0
  1016. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/bff-entry-points/references/hono-example.md +0 -0
  1017. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/bff-entry-points/references/realtime-entry-points.md +0 -0
  1018. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/characterisation-tests/SKILL.md +0 -0
  1019. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/characterisation-tests/resources/modern-tooling.md +0 -0
  1020. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/characterisation-tests/resources/writing-process.md +0 -0
  1021. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/ci-debugging/SKILL.md +0 -0
  1022. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/cli-design/LICENSE +0 -0
  1023. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/cli-design/SKILL.md +0 -0
  1024. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/cli-design/resources/composability.md +0 -0
  1025. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/cli-design/resources/output-architecture.md +0 -0
  1026. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/cli-design/resources/source-notes.md +0 -0
  1027. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/cli-design/resources/stream-contracts.md +0 -0
  1028. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/cli-design/resources/testing-cli.md +0 -0
  1029. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/codebase-design/LICENSE +0 -0
  1030. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/codebase-design/SKILL.md +0 -0
  1031. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/codebase-design/agents/openai.yaml +0 -0
  1032. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/codebase-design/references/deepening.md +0 -0
  1033. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/codebase-design/references/design-it-twice.md +0 -0
  1034. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/codebase-design/references/source-notes.md +0 -0
  1035. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/debugging/SKILL.md +0 -0
  1036. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/debugging/agents/openai.yaml +0 -0
  1037. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/debugging/references/source-notes.md +0 -0
  1038. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/diagrams/NOTICE +0 -0
  1039. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/diagrams/SKILL.md +0 -0
  1040. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/diagrams/references/source-notes.md +0 -0
  1041. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/domain-driven-design/SKILL.md +0 -0
  1042. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/domain-driven-design/resources/aggregate-design.md +0 -0
  1043. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/domain-driven-design/resources/bounded-contexts.md +0 -0
  1044. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/domain-driven-design/resources/domain-events.md +0 -0
  1045. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/domain-driven-design/resources/domain-services.md +0 -0
  1046. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/domain-driven-design/resources/error-modeling.md +0 -0
  1047. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/domain-driven-design/resources/modelling-process.md +0 -0
  1048. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/domain-driven-design/resources/references.md +0 -0
  1049. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/domain-driven-design/resources/testing-by-layer.md +0 -0
  1050. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/double-check/SKILL.md +0 -0
  1051. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/double-check/resources/brief-template.md +0 -0
  1052. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/double-check/resources/providers.md +0 -0
  1053. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/evaluate-existing-solutions/SKILL.md +0 -0
  1054. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/evaluate-existing-solutions/agents/openai.yaml +0 -0
  1055. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/evaluate-existing-solutions/assets/solution-decision-template.md +0 -0
  1056. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/evaluate-existing-solutions/references/evaluation-dimensions.md +0 -0
  1057. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/evaluate-existing-solutions/references/evidence-and-currentness.md +0 -0
  1058. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/event-modeling/NOTICE +0 -0
  1059. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/event-modeling/SKILL.md +0 -0
  1060. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/event-modeling/references/gwt-template.md +0 -0
  1061. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/event-modeling/references/nine-steps.md +0 -0
  1062. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/event-sourcing/SKILL.md +0 -0
  1063. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/event-sourcing/resources/decider-and-rehydration.md +0 -0
  1064. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/event-sourcing/resources/event-store.md +0 -0
  1065. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/event-sourcing/resources/event-versioning.md +0 -0
  1066. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/event-sourcing/resources/modelling-events.md +0 -0
  1067. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/event-sourcing/resources/production-concerns.md +0 -0
  1068. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/event-sourcing/resources/projections-and-read-models.md +0 -0
  1069. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/event-sourcing/resources/references.md +0 -0
  1070. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/event-sourcing/resources/testing-event-sourced-systems.md +0 -0
  1071. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/event-sourcing/resources/when-to-use-event-sourcing.md +0 -0
  1072. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/expectations/SKILL.md +0 -0
  1073. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/find-gaps/SKILL.md +0 -0
  1074. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/find-skills/LICENSE +0 -0
  1075. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/find-skills/SKILL.md +0 -0
  1076. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/find-skills/references/source-notes.md +0 -0
  1077. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/finding-seams/SKILL.md +0 -0
  1078. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/finding-seams/resources/creating-seams.md +0 -0
  1079. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/finding-seams/resources/oop-patterns.md +0 -0
  1080. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/finding-seams/resources/seam-types.md +0 -0
  1081. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/folder-structure/SKILL.md +0 -0
  1082. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/folder-structure/agents/openai.yaml +0 -0
  1083. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/front-end-testing/SKILL.md +0 -0
  1084. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/front-end-testing/resources/async-patterns.md +0 -0
  1085. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/front-end-testing/resources/dom-testing-library-legacy.md +0 -0
  1086. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/front-end-testing/resources/msw.md +0 -0
  1087. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/front-end-testing/resources/playwright-e2e.md +0 -0
  1088. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/frontend-design/LICENSE +0 -0
  1089. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/frontend-design/SKILL.md +0 -0
  1090. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/frontend-design/references/source-notes.md +0 -0
  1091. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/functional/SKILL.md +0 -0
  1092. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/functional/resources/composition-patterns.md +0 -0
  1093. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/functional/resources/immutability-catalog.md +0 -0
  1094. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/global-event-model/SKILL.md +0 -0
  1095. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/hexagonal-architecture/SKILL.md +0 -0
  1096. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/hexagonal-architecture/resources/cqrs-lite.md +0 -0
  1097. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/hexagonal-architecture/resources/cross-cutting-concerns.md +0 -0
  1098. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/hexagonal-architecture/resources/greenfield-sequence.md +0 -0
  1099. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/hexagonal-architecture/resources/incremental-adoption.md +0 -0
  1100. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/hexagonal-architecture/resources/references.md +0 -0
  1101. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/hexagonal-architecture/resources/testing-hex-arch.md +0 -0
  1102. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/hexagonal-architecture/resources/worked-example.md +0 -0
  1103. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/improve-codebase-architecture/LICENSE +0 -0
  1104. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/improve-codebase-architecture/SKILL.md +0 -0
  1105. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/improve-codebase-architecture/agents/openai.yaml +0 -0
  1106. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/improve-codebase-architecture/references/html-report.md +0 -0
  1107. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/improve-codebase-architecture/references/source-notes.md +0 -0
  1108. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/mutation-testing/SKILL.md +0 -0
  1109. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/mutation-testing/resources/mutator-rules.md +0 -0
  1110. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/observability/SKILL.md +0 -0
  1111. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/observability/resources/node-patterns.md +0 -0
  1112. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/observability/resources/references.md +0 -0
  1113. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/observability/resources/slo-alerting.md +0 -0
  1114. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/observability/resources/testing-telemetry.md +0 -0
  1115. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/planning/SKILL.md +0 -0
  1116. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/production-parity-skill-builder/SKILL.md +0 -0
  1117. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/production-parity-skill-builder/resources/generated-skill-template.md +0 -0
  1118. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/production-parity-skill-builder/resources/parity-surface-catalog.md +0 -0
  1119. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/production-parity-skill-builder/resources/question-patterns.md +0 -0
  1120. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/react-testing/SKILL.md +0 -0
  1121. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/react-testing/resources/testing-library-react-legacy.md +0 -0
  1122. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/reduce-system-complexity/LICENSE +0 -0
  1123. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/reduce-system-complexity/SKILL.md +0 -0
  1124. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/reduce-system-complexity/agents/openai.yaml +0 -0
  1125. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/reduce-system-complexity/references/ledger-template.md +0 -0
  1126. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/reduce-system-complexity/references/source-notes.md +0 -0
  1127. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/refactoring/SKILL.md +0 -0
  1128. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/secure-oauth-oidc/SKILL.md +0 -0
  1129. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/secure-oauth-oidc/agents/openai.yaml +0 -0
  1130. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/secure-oauth-oidc/references/attack-and-test-catalog.md +0 -0
  1131. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/secure-oauth-oidc/references/oidc-validation.md +0 -0
  1132. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/secure-oauth-oidc/references/review-and-delivery.md +0 -0
  1133. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/secure-oauth-oidc/references/rfc9700-control-catalog.md +0 -0
  1134. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/secure-oauth-oidc/references/standards-map.md +0 -0
  1135. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/specification/SKILL.md +0 -0
  1136. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/specification/resources/references.md +0 -0
  1137. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/specification/resources/spec-review-template.html +0 -0
  1138. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/stack-pull-requests/SKILL.md +0 -0
  1139. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/stack-pull-requests/agents/openai.yaml +0 -0
  1140. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/stack-pull-requests/references/source-notes.md +0 -0
  1141. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/story-splitting/SKILL.md +0 -0
  1142. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/story-splitting/resources/pattern-catalog.md +0 -0
  1143. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/story-splitting/resources/source-notes.md +0 -0
  1144. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/storyboard/SKILL.md +0 -0
  1145. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/structure-codebase/SKILL.md +0 -0
  1146. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/structure-codebase/agents/openai.yaml +0 -0
  1147. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/structure-codebase/references/backend-patterns.md +0 -0
  1148. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/structure-codebase/references/enforcement-and-migration.md +0 -0
  1149. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/structure-codebase/references/frontend-patterns.md +0 -0
  1150. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/structure-codebase/references/research-notes.md +0 -0
  1151. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/structure-codebase/references/visible-hexagon.md +0 -0
  1152. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/tdd/SKILL.md +0 -0
  1153. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/tdd/resources/vitest-watch-feedback.md +0 -0
  1154. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/teach-me/SKILL.md +0 -0
  1155. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/teach-me/resources/assessment-patterns.md +0 -0
  1156. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/teach-me/resources/course-generation.md +0 -0
  1157. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/teach-me/resources/html-lessons.md +0 -0
  1158. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/teach-me/resources/learning-science.md +0 -0
  1159. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/teach-me/resources/session-management.md +0 -0
  1160. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/technical-writing/LICENSE +0 -0
  1161. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/technical-writing/SKILL.md +0 -0
  1162. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/technical-writing/resources/agent-docs.md +0 -0
  1163. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/technical-writing/resources/doc-types.md +0 -0
  1164. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/technical-writing/resources/docs-quality.md +0 -0
  1165. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/technical-writing/resources/formatting.md +0 -0
  1166. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/technical-writing/resources/readme.md +0 -0
  1167. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/technical-writing/resources/references.md +0 -0
  1168. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/technical-writing/resources/source-notes.md +0 -0
  1169. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/test-design-reviewer/SKILL.md +0 -0
  1170. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/test-design-reviewer/references/source-notes.md +0 -0
  1171. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/testing/SKILL.md +0 -0
  1172. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/twelve-factor/SKILL.md +0 -0
  1173. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/twelve-factor/resources/node-patterns.md +0 -0
  1174. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/typescript-strict/SKILL.md +0 -0
  1175. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/ubiquitous-language/SKILL.md +0 -0
  1176. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/ubiquitous-language/resources/glossary-format.md +0 -0
  1177. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/ubiquitous-language/resources/language-protocol.md +0 -0
  1178. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/web-interface-guidelines/LICENSE +0 -0
  1179. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/web-interface-guidelines/SKILL.md +0 -0
  1180. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/web-interface-guidelines/references/guidelines.md +0 -0
  1181. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/web-interface-guidelines/references/source-notes.md +0 -0
  1182. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/wtf/LICENSE +0 -0
  1183. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/wtf/SKILL.md +0 -0
  1184. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/wtf/agents/openai.yaml +0 -0
  1185. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/assets/toolkit/skills/wtf/references/source-notes.md +0 -0
  1186. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/catalog.json +0 -0
  1187. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/changelog.d/README.md +0 -0
  1188. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/changelog.d/slice-scope-record-and-canvas.md +0 -0
  1189. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/pyproject.toml +0 -0
  1190. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/__init__.py +0 -0
  1191. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/__main__.py +0 -0
  1192. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/add_service.py +0 -0
  1193. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/adopt.py +0 -0
  1194. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/adopt_report.py +0 -0
  1195. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/assets.py +0 -0
  1196. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/axes.py +0 -0
  1197. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/backends.py +0 -0
  1198. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/capabilities.py +0 -0
  1199. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/catalog.py +0 -0
  1200. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/catch_up.py +0 -0
  1201. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/changelog.py +0 -0
  1202. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/cli.py +0 -0
  1203. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/cli_add.py +0 -0
  1204. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/cli_adopt.py +0 -0
  1205. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/cli_prompts.py +0 -0
  1206. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/converge.py +0 -0
  1207. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/convergence.py +0 -0
  1208. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/delivery_facts.py +0 -0
  1209. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/ecosystems.py +0 -0
  1210. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/errors.py +0 -0
  1211. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/examples.py +0 -0
  1212. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/extensions.py +0 -0
  1213. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/features.py +0 -0
  1214. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/images.py +0 -0
  1215. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/layout.py +0 -0
  1216. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/manifest.py +0 -0
  1217. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/migrate.py +0 -0
  1218. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/naming.py +0 -0
  1219. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/origin.py +0 -0
  1220. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/platform.py +0 -0
  1221. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/preflight.py +0 -0
  1222. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/probes.py +0 -0
  1223. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/programme.py +0 -0
  1224. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/__init__.py +0 -0
  1225. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/add_commands.py +0 -0
  1226. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/adopted.py +0 -0
  1227. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/adopted_ci.py +0 -0
  1228. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/adopted_targets.py +0 -0
  1229. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/adversary.py +0 -0
  1230. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/agent_targets.py +0 -0
  1231. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/agents.py +0 -0
  1232. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/aws_docs.py +0 -0
  1233. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/azure_docs.py +0 -0
  1234. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/backing_service_prose.py +0 -0
  1235. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/backing_services.py +0 -0
  1236. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/benchmark.py +0 -0
  1237. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/biome.py +0 -0
  1238. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/ci_services.py +0 -0
  1239. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/ci_workflows.py +0 -0
  1240. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/commands.py +0 -0
  1241. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/compose.py +0 -0
  1242. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/composition.py +0 -0
  1243. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/constitution_journey.py +0 -0
  1244. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/converge_stage.py +0 -0
  1245. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/convergence_page.py +0 -0
  1246. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/cruise.py +0 -0
  1247. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/cruise_hand.py +0 -0
  1248. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/cruise_record.py +0 -0
  1249. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/cruise_seat.py +0 -0
  1250. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/cruise_stops.py +0 -0
  1251. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/cruise_told.py +0 -0
  1252. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/decisions.py +0 -0
  1253. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/demo_stop.py +0 -0
  1254. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/deploy_workflow.py +0 -0
  1255. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/design_page.py +0 -0
  1256. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/docs.py +0 -0
  1257. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/docs_index.py +0 -0
  1258. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/drive_adoption.py +0 -0
  1259. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/drive_settings.py +0 -0
  1260. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/entry_stores.py +0 -0
  1261. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/event_model.py +0 -0
  1262. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/evolving.py +0 -0
  1263. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/existing.py +0 -0
  1264. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/flag_route.py +0 -0
  1265. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/flags.py +0 -0
  1266. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/frontend.py +0 -0
  1267. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/gitignore.py +0 -0
  1268. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/ground_command.py +0 -0
  1269. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/guidance.py +0 -0
  1270. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/infra.py +0 -0
  1271. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/init_production.py +0 -0
  1272. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/init_script.py +0 -0
  1273. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/integration.py +0 -0
  1274. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/languages/__init__.py +0 -0
  1275. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/languages/go.py +0 -0
  1276. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/languages/java.py +0 -0
  1277. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/languages/java_quarkus.py +0 -0
  1278. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/languages/java_spring.py +0 -0
  1279. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/languages/python.py +0 -0
  1280. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/languages/typescript.py +0 -0
  1281. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/makefile.py +0 -0
  1282. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/metadata.py +0 -0
  1283. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/model_targets.py +0 -0
  1284. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/model_to_code.py +0 -0
  1285. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/mutation.py +0 -0
  1286. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/native_commands.py +0 -0
  1287. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/openapi.py +0 -0
  1288. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/parallel_slices.py +0 -0
  1289. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/pin_commands.py +0 -0
  1290. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/pins.py +0 -0
  1291. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/production.py +0 -0
  1292. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/provisioning.py +0 -0
  1293. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/read_side_layouts.py +0 -0
  1294. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/readme.py +0 -0
  1295. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/renovate.py +0 -0
  1296. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/repository.py +0 -0
  1297. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/rules.py +0 -0
  1298. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/run_skill.py +0 -0
  1299. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/service_layouts.py +0 -0
  1300. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/shared_packages.py +0 -0
  1301. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/skills_page.py +0 -0
  1302. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/stage_models.py +0 -0
  1303. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/strangle_command.py +0 -0
  1304. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/structure_page.py +0 -0
  1305. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/target_docs.py +0 -0
  1306. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/whats_next.py +0 -0
  1307. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/project/where_are_we.py +0 -0
  1308. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/quick_wins.py +0 -0
  1309. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/replay.py +0 -0
  1310. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/resurvey.py +0 -0
  1311. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/scaffold.py +0 -0
  1312. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/selection.py +0 -0
  1313. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/services.py +0 -0
  1314. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/strategy.py +0 -0
  1315. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/structure.py +0 -0
  1316. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/survey.py +0 -0
  1317. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/targets.py +0 -0
  1318. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/tooling.py +0 -0
  1319. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/toolkit.py +0 -0
  1320. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/upgrade.py +0 -0
  1321. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/versions.py +0 -0
  1322. {slipwai-1.2.1.dev5 → slipwai-1.2.1.dev8}/src/slipwai/wrappers.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.5
2
2
  Name: slipwai
3
- Version: 1.2.1.dev5
3
+ Version: 1.2.1.dev8
4
4
  Summary: One-shot scaffolder for product monorepos: a walking skeleton, a verify gate, a path to production, and a repository set up for coding agents.
5
5
  Project-URL: Homepage, https://github.com/ROBCOATVG/slipwai
6
6
  Project-URL: Repository, https://git.treyco.dev/ROBCOATVG/slipwai
@@ -244,6 +244,10 @@ changes. What changes is who answers.
244
244
  - **It never invents a fact.** A credential, an external system, a person's approval: the slice is marked
245
245
  blocked, the run takes the next ready slice, and a strong delegate works around the block — a fake behind
246
246
  the port, recorded as a fake, or the narrower reading that keeps every rule — and writes down what it did.
247
+ - **It never makes a gate pass by changing the gate.** `scripts/`, the `Makefile`, `tools/`, CI and the hook
248
+ settings are not an iteration's to edit: Claude Code refuses the edit before it lands, and the runner parks
249
+ the run on any change to them, on every harness. A gate the tree cannot satisfy parks the run with the
250
+ gate's own words as the reason.
247
251
  - **Every merge is dark.** Under the default release setting each slice ships behind a flag seeded off.
248
252
  Nothing the run merged reaches a real actor until you turn a key on.
249
253
  - **Done means the specification is satisfied.** When the split runs out, an audit reads the specification
@@ -215,6 +215,10 @@ changes. What changes is who answers.
215
215
  - **It never invents a fact.** A credential, an external system, a person's approval: the slice is marked
216
216
  blocked, the run takes the next ready slice, and a strong delegate works around the block — a fake behind
217
217
  the port, recorded as a fake, or the narrower reading that keeps every rule — and writes down what it did.
218
+ - **It never makes a gate pass by changing the gate.** `scripts/`, the `Makefile`, `tools/`, CI and the hook
219
+ settings are not an iteration's to edit: Claude Code refuses the edit before it lands, and the runner parks
220
+ the run on any change to them, on every harness. A gate the tree cannot satisfy parks the run with the
221
+ gate's own words as the reason.
218
222
  - **Every merge is dark.** Under the default release setting each slice ships behind a flag seeded off.
219
223
  Nothing the run merged reaches a real actor until you turn a key on.
220
224
  - **Done means the specification is satisfied.** When the split runs out, an audit reads the specification
@@ -0,0 +1 @@
1
+ 1.2.1.dev8
@@ -129,8 +129,26 @@ WATCH_QUIET_SECONDS = 20.0
129
129
  # checkpoint at every stage boundary, so a checkpoint held this often without a rewrite is a session that is
130
130
  # not moving, and a hook that never let go would spend tokens forever on it.
131
131
  HOLD_LIMIT = 3
132
+ # How long `stop --now` waits for the runner it signalled to be gone before it returns: the runner ends the
133
+ # iteration's session first, and a harness session shutting down takes a moment.
134
+ STOP_WAIT_SECONDS = 30.0
132
135
  REGISTRY = SCRIPT.with_name("registry.json")
133
136
  INTEGRATION = ROOT / ".specify/integration.json"
137
+ # What a run may never change to get moving — the gates that judge it and the controls that hold it: `make
138
+ # verify`'s scripts and everything beside them, the Makefile that runs them, the tools they run (`tools/`, ignored by
139
+ # Git and installed by an extension), CI, and the hook files the harnesses read this script from. A gate is
140
+ # satisfied in the tree it measures; an iteration that changed one of these instead has the run parked with the
141
+ # change as the reason (`controls_changed` on its log entry), and Claude Code's `PreToolUse` hook (`guard`) refuses
142
+ # the edit before it lands. Under `tools/` a file added is an install, which `./init --extension` does; a file
143
+ # changed or removed is an edit.
144
+ CONTROL_PATHS = (DELIVERY / "Makefile", DELIVERY / "scripts", ROOT / "Makefile", ROOT / "tools",
145
+ ROOT / ".github/workflows", ROOT / ".gitea/workflows", ROOT / ".claude/settings.json")
146
+ INSTALLED = ROOT / "tools"
147
+ SKIPPED_DIRECTORIES = {".git", "__pycache__", "node_modules"}
148
+ GUARD_REASON = ("cruise: `{path}` is a gate or a control of this run, and an iteration never edits one — a gate is "
149
+ "satisfied in the tree it measures, or the run parks with the gate's own output as the reason "
150
+ "(`cruise: parked: <gate>: <what it said>`). The bosun's brief and commands/cruise.md, *Blocked: the "
151
+ "bosun protocol*, say so; the runner parks the run at the end of an iteration that changed one anyway.")
134
152
  # Every setting: the values it takes — a tuple of words, or a kind — its default, and what it controls. The
135
153
  # factory writes the same list into `.specify/cruise.json` and `commands/cruise-settings.md`.
136
154
  CHOICES: dict[str, tuple[str, ...]] = {
@@ -488,6 +506,82 @@ def child_environment(harness: dict[str, Any] | None) -> dict[str, str]:
488
506
  return environment
489
507
 
490
508
 
509
+ def control_paths() -> list[Path]:
510
+ """Every gate and control the run is held by, present or not: the fixed ones, and the hook file of every harness
511
+ whose registry row projects one."""
512
+ paths = list(CONTROL_PATHS)
513
+ for row in registry().values():
514
+ projection = (row.get("hooks") or {}).get("projection") if isinstance(row.get("hooks"), dict) else None
515
+ if isinstance(projection, dict) and projection.get("where"):
516
+ paths.append(ROOT / str(projection["where"]))
517
+ return list(dict.fromkeys(paths))
518
+
519
+
520
+ def controls_signature() -> dict[str, str]:
521
+ """Every file under the controls by its content, taken before an iteration and compared after it."""
522
+ signature: dict[str, str] = {}
523
+ for control in control_paths():
524
+ if control.is_file():
525
+ files = [control]
526
+ elif control.is_dir():
527
+ files = []
528
+ for directory, names, filenames in os.walk(control):
529
+ names[:] = sorted(name for name in names if name not in SKIPPED_DIRECTORIES)
530
+ files += [Path(directory) / name for name in sorted(filenames)]
531
+ else:
532
+ continue
533
+ for path in files:
534
+ try:
535
+ if path.is_file():
536
+ signature[path.relative_to(ROOT).as_posix()] = hashlib.sha256(path.read_bytes()).hexdigest()
537
+ except OSError:
538
+ continue
539
+ return signature
540
+
541
+
542
+ def controls_changed(before: dict[str, str], after: dict[str, str]) -> list[str]:
543
+ """What an iteration did to the controls, each with its kind — except a file installed under `tools/`."""
544
+ installed = INSTALLED.relative_to(ROOT).as_posix() + "/"
545
+ changes = []
546
+ for path in sorted(set(before) | set(after)):
547
+ if path in before and path in after:
548
+ if before[path] != after[path]:
549
+ changes.append(f"{path} (modified)")
550
+ elif path in before:
551
+ changes.append(f"{path} (deleted)")
552
+ elif not path.startswith(installed):
553
+ changes.append(f"{path} (added)")
554
+ return changes
555
+
556
+
557
+ def guard() -> None:
558
+ """Claude Code's `PreToolUse` hook on the editing tools — Edit, Write, MultiEdit, NotebookEdit: in a session the
559
+ runner started, refuse an edit to a gate or a control before it lands, with the reason on stderr and exit 2,
560
+ which is how that harness reads a refusal (a 2.1.281 print session, probed 2026-09-24: the tool result carries
561
+ the reason, the model reads it, the file is not written). Outside a runner's iteration the hook does nothing, so
562
+ a person's `/drive` session edits what it likes. The shell is not covered here — a command can write anything —
563
+ which is why the runner compares the controls after every iteration too."""
564
+ if not os.environ.get(RUNNER_VARIABLE):
565
+ return
566
+ event = read_event()
567
+ given = event.get("tool_input") if isinstance(event.get("tool_input"), dict) else {}
568
+ target = given.get("file_path") or given.get("notebook_path")
569
+ if not target:
570
+ return
571
+ path = Path(str(target))
572
+ if not path.is_absolute():
573
+ path = Path(str(event.get("cwd") or ROOT)) / path
574
+ path = path.resolve()
575
+ for control in control_paths():
576
+ if path == control or control in path.parents:
577
+ try:
578
+ shown = path.relative_to(ROOT).as_posix()
579
+ except ValueError:
580
+ shown = str(path)
581
+ print(GUARD_REASON.format(path=shown), file=sys.stderr)
582
+ raise SystemExit(2)
583
+
584
+
491
585
  def stream_of(harness: dict[str, Any] | None) -> str | None:
492
586
  """Which event stream the harness's headless command emits, for the feed: `CRUISE_HARNESS_STREAM` where set
493
587
  (a rehearsal against a fake harness), else the headless row's `stream`, else none — plain text, echoed."""
@@ -1135,6 +1229,7 @@ def drive(table: dict[str, Any], harness: dict[str, Any] | None, template: str,
1135
1229
  INTERRUPTED = False
1136
1230
  print(f"cruise: iteration {iteration} started {started}, running `{ask}`", flush=True)
1137
1231
  began = time.monotonic()
1232
+ controls_before = controls_signature()
1138
1233
  # The model flag is read with the settings, so `/cruise-settings model=…` holds from the next iteration.
1139
1234
  last = iterate(template + model_flags(harness, table["model"]), ask, environment, iteration, stream)
1140
1235
  if INTERRUPTED:
@@ -1151,6 +1246,9 @@ def drive(table: dict[str, Any], harness: dict[str, Any] | None, template: str,
1151
1246
  "last_line": last or "no last line", "fingerprint": seen}
1152
1247
  if attempt is not None:
1153
1248
  entry["attempt"] = attempt
1249
+ changed = controls_changed(controls_before, controls_signature())
1250
+ if changed:
1251
+ entry["controls_changed"] = changed
1154
1252
  given = delivered()
1155
1253
  if given:
1156
1254
  entry["told"] = [str(each["text"]) for each in given]
@@ -1164,6 +1262,13 @@ def drive(table: dict[str, Any], harness: dict[str, Any] | None, template: str,
1164
1262
  # The boundary `watch` returns on: the iteration, what it ended on, and how long it took.
1165
1263
  print(f"cruise: iteration {iteration} ended — {last or 'no last line'} ({duration(time.monotonic() - began)})",
1166
1264
  flush=True)
1265
+ if changed:
1266
+ # A gate made to pass is no pass, whatever the last line says: the run parks on the change itself, and a
1267
+ # person reverts it, or keeps it on purpose and resumes with a message.
1268
+ park(f"iteration {iteration} changed a gate or a control of the run — {', '.join(changed)} — and a gate "
1269
+ "is satisfied in the tree it measures, never edited; revert the change, or keep it on purpose and "
1270
+ "resume with a message", no_park, poll, seen)
1271
+ continue
1167
1272
  if INTERRUPTED:
1168
1273
  # Ended for a message, not by its own last line: the next iteration is where the message goes, and it
1169
1274
  # starts now — there is nothing to park on and nothing to count.
@@ -1376,6 +1481,18 @@ def stop(arguments: list[str]) -> None:
1376
1481
  return
1377
1482
  if "--now" in arguments:
1378
1483
  os.kill(running[0], signal.SIGTERM)
1484
+ # Said once it has ended, not once it was told to. The runner ends the iteration's session before it goes,
1485
+ # and a `start` typed the moment this returned found the old runner still alive and declined to start one
1486
+ # — after which nobody was running, and the watch seat found nobody to watch.
1487
+ for _ in range(int(STOP_WAIT_SECONDS / 0.05)):
1488
+ if running_pid() is None:
1489
+ break
1490
+ time.sleep(0.05)
1491
+ else:
1492
+ print(f"cruise: {relative(STOP)} written and the runner (pid {running[0]}) told to end; it is still ending "
1493
+ f"the iteration in flight after {STOP_WAIT_SECONDS:g}s — `python3 scripts/agents/cruise.py status` "
1494
+ "says when it has gone")
1495
+ return
1379
1496
  print(f"cruise: {relative(STOP)} written and the runner (pid {running[0]}) terminated with the iteration "
1380
1497
  "in flight; its increment commits are on the slice branch, and the next run re-derives from disk")
1381
1498
  return
@@ -1533,7 +1650,7 @@ def main() -> None:
1533
1650
  "watch": lambda: watch(arguments[1:]), "stop": lambda: stop(arguments[1:]), "status": status,
1534
1651
  "tell": lambda: tell(arguments[1:]), "told": told,
1535
1652
  "denials": denials, "resume": resume, "compacting": compacting, "loop": loop, "stopping": stopping,
1536
- "responded": responded}
1653
+ "responded": responded, "guard": guard}
1537
1654
  if arguments and arguments[0] in verbs:
1538
1655
  verbs[arguments[0]]()
1539
1656
  return
@@ -216,7 +216,7 @@
216
216
  },
217
217
  "hooks": {
218
218
  "holds": true,
219
- "how": "`Stop` runs when the model tries to end its turn; a hook printing {\"decision\": \"block\", \"reason\": \"...\"} refuses the end and the reason is read next; the event carries `last_assistant_message` and `transcript_path`. Hooks run in `-p` sessions. Source: the installed Claude Code 2.1.278's hook events and the Stop hook decision it acted on during /cruise runs, read 2026-09-22.",
219
+ "how": "`Stop` runs when the model tries to end its turn; a hook printing {\"decision\": \"block\", \"reason\": \"...\"} refuses the end and the reason is read next; the event carries `last_assistant_message` and `transcript_path`. Hooks run in `-p` sessions. Source: the installed Claude Code 2.1.278's hook events and the Stop hook decision it acted on during /cruise runs, read 2026-09-22. `PreToolUse` runs before a tool call, with `tool_name` and `tool_input` (`file_path` for Edit, Write and MultiEdit, `notebook_path` for NotebookEdit) in the event; a hook command that exits 2 refuses the call, its stderr is the tool's result the model reads, and the refusal is listed under `permission_denials` in the final `result` event — from a 2.1.281 print session under `acceptEdits --allowedTools Bash` in an untrusted workspace, where the project's `.claude/settings.json` hook still ran with the runner's environment variables inherited, probed 2026-09-24; `scripts/agents/cruise.py guard` runs there.",
220
220
  "projection": null,
221
221
  "why": "the factory writes `.claude/settings.json` itself, hooks included (Stop, PreCompact, SessionStart); Grok Build reads that file too"
222
222
  },
@@ -0,0 +1,245 @@
1
+ #!/usr/bin/env python3
2
+ """Run the adopted UX gates over every browser app, and fail when one of them does.
3
+
4
+ The gates are plugin87's ux-ui-agent-skills kit, installed under `tools/ux-gates/` by `./init --extension
5
+ ux-gates`. Two kinds run here. The file gate always: `lint_hardcodes.py` over each browser app's `src/`,
6
+ which fails on a literal colour, pixel size or duration that is not a token — the rule `docs/design.md`
7
+ states, measured. The render gates when they can: over every `*.html` under each browser app's `screens/`,
8
+ in a real headless browser, contrast in light and dark across default, hover and focus, visible focus,
9
+ target size, overflow at phone widths, and axe. Which browser is asked once, before any of them runs: the
10
+ kit launches Chrome (`channel: 'chrome'`), and in 2.8.0 two of its scripts — `verify_responsive.mjs` and
11
+ `verify_target_size.mjs` — crash where Chrome is not installed instead of falling back to Playwright's own
12
+ Chromium the way the other three do. So where Chrome is absent and that Chromium opens, every render gate
13
+ runs with a Node preload that retries a launch without the channel; where no browser opens, or Playwright
14
+ is not resolvable, the render gates are reported as skipped, never as passed, and a gate that still could
15
+ not open a browser is reported the same way rather than as a failure.
16
+
17
+ Three states are not failures, and each is said out loud. Not adopted: the extension is optional, and a
18
+ project that never asked for it has nothing to run. Adopted but not installed here: `tools/ux-gates/` is
19
+ ignored by Git, so a fresh clone or a CI runner has the election and not the kit — reported as skipped,
20
+ or as a failure when `UX_GATES_REQUIRE=1`, which is what to set wherever the kit is expected. No browser
21
+ app: nothing to measure.
22
+
23
+ Standard library only, like every gate script here; the kit's scripts are run as subprocesses.
24
+ """
25
+ from __future__ import annotations
26
+
27
+ import json
28
+ import os
29
+ import shutil
30
+ import subprocess
31
+ import sys
32
+ import tempfile
33
+ from pathlib import Path
34
+
35
+ KEY = "ux-gates"
36
+ KIT = "tools/ux-gates"
37
+ # Directory-wide render gates, then per-file ones; each with the flags that make light and dark both count.
38
+ DIRECTORY_GATES = (
39
+ ("verify_responsive.mjs", ()),
40
+ ("verify_target_size.mjs", ()),
41
+ ("measure_render.mjs", ()),
42
+ ("measure_render.mjs", ("--dark",)),
43
+ )
44
+ FILE_GATES = (
45
+ ("axe_audit.mjs", ()),
46
+ ("axe_audit.mjs", ("--dark",)),
47
+ ("verify_states.mjs", ()),
48
+ ("verify_states.mjs", ("--dark",)),
49
+ )
50
+ # Which browser the kit's scripts can open, Playwright resolved from the kit's directory the way its scripts resolve
51
+ # it from `scripts/` beneath — the same `node_modules` chain — and answered in one word: `chrome` (the channel the kit asks for), `bundled` (Playwright's own Chromium, which
52
+ # `npx playwright install chromium` puts in place), `none`, or `no-playwright`.
53
+ PROBE = """
54
+ let chromium;
55
+ try { ({ chromium } = await import("playwright")); }
56
+ catch { console.log("no-playwright"); process.exit(0); }
57
+ if (!chromium) { console.log("no-playwright"); process.exit(0); }
58
+ for (const [word, options] of [["chrome", { channel: "chrome" }], ["bundled", {}]]) {
59
+ try { const browser = await chromium.launch(options); await browser.close(); console.log(word); process.exit(0); }
60
+ catch {}
61
+ }
62
+ console.log("none");
63
+ """
64
+ # What every render gate is started with where only the bundled Chromium opens: the same Playwright the kit imports,
65
+ # its `chromium.launch` retried without the channel when the channel is what failed. A CommonJS preload runs before
66
+ # an ES module entry, and the kit's `import('playwright')` returns the same object this patched.
67
+ PRELOAD = """
68
+ const { createRequire } = require("node:module");
69
+ const playwright = createRequire({scripts})("playwright");
70
+ const launch = playwright.chromium.launch.bind(playwright.chromium);
71
+ playwright.chromium.launch = async (options = {}) => {
72
+ try { return await launch(options); }
73
+ catch (error) {
74
+ if (!options.channel) throw error;
75
+ const { channel, ...rest } = options;
76
+ return launch(rest);
77
+ }
78
+ };
79
+ """
80
+ # The words Playwright's launch failure carries, on stderr, when a kit script could not open a browser.
81
+ LAUNCH_FAILED = "browserType.launch"
82
+
83
+
84
+ def project_root(script: Path, depth: int) -> Path:
85
+ """The nearest parent holding `project.json`, with a source-tree fallback."""
86
+ for candidate in script.parents:
87
+ if (candidate / "project.json").is_file():
88
+ return candidate
89
+ return script.parents[depth]
90
+
91
+
92
+ ROOT = project_root(Path(__file__).resolve(), 1)
93
+
94
+
95
+ def adopted() -> bool:
96
+ """Elected in the committed record, or marked in `AGENTS.md` by a project older than the record."""
97
+ record = ROOT / ".slipwai/extensions.json"
98
+ if record.is_file():
99
+ try:
100
+ document = json.loads(record.read_text())
101
+ except ValueError:
102
+ document = {}
103
+ if KEY in (document.get("extensions") or []):
104
+ return True
105
+ agents = ROOT / "AGENTS.md"
106
+ return agents.is_file() and f"<!-- extension:{KEY}:begin -->" in agents.read_text()
107
+
108
+
109
+ def browser_apps() -> list[Path]:
110
+ manifest = ROOT / "project.json"
111
+ if not manifest.is_file():
112
+ return []
113
+ deployables = json.loads(manifest.read_text()).get("deployables")
114
+ if not isinstance(deployables, dict):
115
+ return []
116
+ return [
117
+ ROOT / str(deployable["path"])
118
+ for deployable in deployables.values()
119
+ if isinstance(deployable, dict)
120
+ and "frontend" in deployable.get("capabilities", [])
121
+ and (ROOT / str(deployable.get("path", ""))).is_dir()
122
+ ]
123
+
124
+
125
+ def say(line: str) -> None:
126
+ """Flushed, so this script's lines land in order with the kit's, which write straight to the terminal."""
127
+ print(line, flush=True)
128
+
129
+
130
+ def browser() -> str:
131
+ """Which browser the render gates can open, asked once: `chrome`, `bundled`, `none` or `no-playwright`. A probe
132
+ that could not answer — node failing before the question — is `none`, with what it said on stderr."""
133
+ completed = subprocess.run(["node", "--input-type=module", "-e", PROBE], cwd=ROOT / KIT, check=False,
134
+ text=True, capture_output=True)
135
+ word = completed.stdout.strip().splitlines()[-1] if completed.stdout.strip() else ""
136
+ if completed.returncode == 0 and word in ("chrome", "bundled", "none", "no-playwright"):
137
+ return word
138
+ sys.stderr.write(completed.stderr)
139
+ return "none"
140
+
141
+
142
+ def run(script: str, *arguments: str, preload: Path | None = None) -> str:
143
+ """One kit script, from the kit's own directory so its relative imports resolve, started with the preload where
144
+ one is given. Its output is passed through, and the verdict is one of three words: `passed`, `failed`, or
145
+ `skipped` — the kit's own word when a gate could not open a browser, which exits 0 upstream and is refused as
146
+ a pass here, or a launch failure on stderr, which is the same fact told as a crash."""
147
+ kit = ROOT / KIT
148
+ interpreter = [sys.executable] if script.endswith(".py") else ["node"]
149
+ if preload is not None and script.endswith(".mjs"):
150
+ interpreter += ["--require", str(preload)]
151
+ environment = dict(os.environ)
152
+ if environment.get("UX_GATES_REQUIRE") == "1":
153
+ environment["DS_REQUIRE_BROWSER"] = "1" # the kit's own switch for the same demand
154
+ completed = subprocess.run(
155
+ [*interpreter, str(kit / "scripts" / script), *arguments],
156
+ cwd=kit, env=environment, check=False, text=True, capture_output=True,
157
+ )
158
+ sys.stdout.write(completed.stdout)
159
+ sys.stderr.write(completed.stderr)
160
+ sys.stdout.flush()
161
+ if completed.returncode != 0 and LAUNCH_FAILED in completed.stderr:
162
+ say(f"check-ux-gates: {script} could not open a browser — SKIPPED, not passed")
163
+ return "skipped"
164
+ if completed.returncode != 0:
165
+ return "failed"
166
+ return "skipped" if "SKIPPED" in completed.stdout else "passed"
167
+
168
+
169
+ def render_gates(app: Path, screens: list[Path], opened: str, preload: Path | None) -> tuple[list[str], int]:
170
+ """Every render gate over one app's previews, or all of them counted as skipped where no browser opens."""
171
+ relative = app.relative_to(ROOT).as_posix()
172
+ gates = [(script, flags, str(app / "screens")) for script, flags in DIRECTORY_GATES]
173
+ gates += [(script, flags, str(screen)) for screen in screens for script, flags in FILE_GATES]
174
+ if opened in ("none", "no-playwright"):
175
+ why = ("playwright is not resolvable from the kit" if opened == "no-playwright"
176
+ else "no browser opens — neither Chrome nor Playwright's Chromium (`npx playwright install chromium`)")
177
+ say(f"check-ux-gates: {relative}/screens/ — {why}; {len(gates)} render gate(s) SKIPPED, not passed")
178
+ return [], len(gates)
179
+ say(f"check-ux-gates: {relative}/screens/ — {len(screens)} preview(s) through the render gates"
180
+ + (" on Playwright's Chromium, Chrome not being installed" if opened == "bundled" else ""))
181
+ failures, skipped = [], 0
182
+ for script, flags, target in gates:
183
+ verdict = run(script, target, *flags, preload=preload)
184
+ if verdict == "failed":
185
+ failures.append(f"{Path(target).relative_to(ROOT).as_posix()}: {script} {' '.join(flags)}".rstrip())
186
+ elif verdict == "skipped":
187
+ skipped += 1
188
+ return failures, skipped
189
+
190
+
191
+ def main() -> int:
192
+ if not adopted():
193
+ say("check-ux-gates: not adopted (./init --extension ux-gates); nothing to check")
194
+ return 0
195
+ kit = ROOT / KIT
196
+ required = os.environ.get("UX_GATES_REQUIRE") == "1"
197
+ if not (kit / "scripts/lint_hardcodes.py").is_file():
198
+ say(
199
+ f"check-ux-gates: adopted, but {KIT}/ is not installed in this checkout — "
200
+ + ("REQUIRED, FAILING" if required else "SKIPPED, not passed")
201
+ + "; `./init --extension ux-gates` installs it"
202
+ )
203
+ return 1 if required else 0
204
+ apps = browser_apps()
205
+ if not apps:
206
+ say("check-ux-gates: no browser app to measure")
207
+ return 0
208
+ failures: list[str] = []
209
+ skipped = 0
210
+ opened: str | None = None # asked the first time a preview needs a browser, and once
211
+ with tempfile.TemporaryDirectory() as scratch:
212
+ preload = Path(scratch) / "preload.cjs"
213
+ preload.write_text(PRELOAD.replace("{scripts}", json.dumps(str(kit / "scripts/preload.cjs"))))
214
+ for app in apps:
215
+ relative = app.relative_to(ROOT).as_posix()
216
+ source = app / "src"
217
+ if source.is_dir():
218
+ say(f"check-ux-gates: {relative}/src — literal values outside the tokens")
219
+ if run("lint_hardcodes.py", str(source)) == "failed":
220
+ failures.append(f"{relative}/src carries literal values the tokens should own")
221
+ screens = sorted((app / "screens").glob("*.html")) if (app / "screens").is_dir() else []
222
+ if not screens:
223
+ say(f"check-ux-gates: {relative}/screens/ has no previews; the render gates have nothing to open")
224
+ continue
225
+ if shutil.which("node") is None:
226
+ say(f"check-ux-gates: {relative}/screens/ — node not found, render gates SKIPPED, not passed")
227
+ skipped += len(DIRECTORY_GATES) + len(FILE_GATES) * len(screens)
228
+ continue
229
+ opened = browser() if opened is None else opened
230
+ failed, unopened = render_gates(app, screens, opened, preload if opened == "bundled" else None)
231
+ failures += failed
232
+ skipped += unopened
233
+ if failures:
234
+ say("check-ux-gates: FAILED\n - " + "\n - ".join(failures))
235
+ return 1
236
+ if skipped:
237
+ say(f"check-ux-gates: passed where a gate could run; {skipped} render gate(s) SKIPPED, not passed — "
238
+ "each says above what it could not open")
239
+ return 1 if required else 0
240
+ say("check-ux-gates: every gate passed")
241
+ return 0
242
+
243
+
244
+ if __name__ == "__main__":
245
+ raise SystemExit(main())
@@ -54,12 +54,15 @@ the gates in it that are objective: a screen either passes or it does not.
54
54
  - **Always:** `{KIT_DIR}/scripts/lint_hardcodes.py` over each browser app's `src/`. A literal colour,
55
55
  pixel size or duration outside `tokens.css` fails the build; it is the rule `docs/design.md` already
56
56
  states, now measured. A justified exception carries a `ds-allow-hardcode` comment on its line.
57
- - **Where a browser is present** (`node`, and `playwright` resolvable from the project root): the render
58
- gates over every `*.html` under each browser app's `screens/` — contrast in light and dark across
59
- default, hover and focus states, visible focus, target size, no overflow at 280/320/414px, and axe. A
60
- screen preview under `screens/` is what puts a screen under those gates; the live routes are not
61
- rendered, because the gates read files and the app needs its API. With no browser the render gates are
62
- reported as skipped, never as passed.
57
+ - **Where a browser is present** (`node`, `playwright` resolvable from the project root, and Chrome or
58
+ Playwright's own Chromium — `npx playwright install chromium`): the render gates over every `*.html`
59
+ under each browser app's `screens/` — contrast in light and dark across default, hover and focus states,
60
+ visible focus, target size, no overflow at 280/320/414px, and axe. A screen preview under `screens/` is
61
+ what puts a screen under those gates; the live routes are not rendered, because the gates read files and
62
+ the app needs its API. With no browser the render gates are reported as skipped, never as passed, and the
63
+ gate says which browser it ran on. A gate that fails or crashes is never made to pass by editing
64
+ `scripts/check-ux-gates.py` or anything under `{KIT_DIR}/`: fix the screen, install the browser, or
65
+ report the gate's own words.
63
66
 
64
67
  **Run `make check-ux-gates` before the demo stop of any slice with a screen**, and fix what it finds
65
68
  rather than carrying it as a note. For the judgement the gates cannot make, the kit's checklists are files:
@@ -0,0 +1,30 @@
1
+ PATCH
2
+
3
+ **A `/cruise` run can no longer make a gate pass by changing the gate.** A run met `check-ux-gates` failing
4
+ because two of the kit's scripts crash where Chrome is not installed, and the bosun patched
5
+ `scripts/check-ux-gates.py` to report that as skipped, committed it, and went on. Its brief now forbids
6
+ touching anything under `scripts/`, the `Makefile`, anything under `tools/`, CI or a harness's hook settings,
7
+ and says what a gate the tree cannot satisfy becomes: a park with the gate's own words as the reason. The rule
8
+ is held in two places rather than said louder. `.claude/settings.json` runs `scripts/agents/cruise.py guard`
9
+ as Claude Code's `PreToolUse` hook on every editing tool, and in a session the runner started it refuses an
10
+ edit to any of those paths before it lands. And the runner takes the content of every gate and control before
11
+ each iteration and compares it after, on every harness: a file modified, deleted or added — a file installed
12
+ under `tools/` excepted — parks the run at once, names the files on the log entry as `controls_changed`, and
13
+ counts the iteration's last line for nothing. A person's own session meets neither.
14
+
15
+ **`check-ux-gates` runs on Playwright's own Chromium where Chrome is not installed, and never reports a
16
+ crash as a pass or a failure.** The gate now asks once which browser Playwright can open — Chrome, its bundled
17
+ Chromium, or neither — and where only the bundled one opens, starts every render gate with a Node preload that
18
+ retries the kit's `channel: 'chrome'` launch without the channel, so `verify_responsive.mjs` and
19
+ `verify_target_size.mjs` run there like the kit's other three. Where no browser opens, or Playwright is not
20
+ resolvable, the render gates are counted skipped without running one, and a gate that still fails on its launch
21
+ is reported skipped rather than as a finding; `UX_GATES_REQUIRE=1` still makes every skip a failure.
22
+
23
+ **`stop --now` returns once the runner has gone, not once it was told to go.** The runner ends the iteration's
24
+ session before it exits, which takes a moment, and a `start` typed the moment `stop --now` returned found the old
25
+ runner still alive and declined to start one — after which nobody was running and the watch seat found nobody to
26
+ watch. It now waits for the runner to be gone, up to thirty seconds, and says so if it is still ending after that.
27
+
28
+ **Catch-up.** `slipwai migrate` brings the hook, the runner, the gate and the command text. A run that already
29
+ carries a patched gate is found by `git log -- scripts/` and reverted by hand; the runner parks on the next
30
+ change, not on the standing one.
@@ -33,6 +33,11 @@ def compaction_hooks(layout: Layout) -> dict[str, list[dict[str, object]]]:
33
33
  "PreCompact": [{"hooks": [{"type": "command", "command": f"python3 {script} compacting"}]}],
34
34
  "SessionStart": [{"matcher": "compact", "hooks": [{"type": "command", "command": f"python3 {script} resume"}]}],
35
35
  "Stop": [{"hooks": [{"type": "command", "command": f"python3 {script} stopping"}]}],
36
+ # The editing tools, in a session the runner started: an edit to a gate or a control of the run —
37
+ # `scripts/`, the Makefile, `tools/`, CI, this file — is refused before it lands; the runner compares the
38
+ # controls after every iteration for what the shell wrote (`docs/cruise.md`, *When it is blocked*).
39
+ "PreToolUse": [{"matcher": "Edit|Write|MultiEdit|NotebookEdit",
40
+ "hooks": [{"type": "command", "command": f"python3 {script} guard"}]}],
36
41
  }
37
42
 
38
43
 
@@ -134,7 +134,7 @@ preference, and stop at the first that works:
134
134
  or `detected` — you work on the survey's value as a stated assumption and never mark it `confirmed` —
135
135
  and a change strategy proceeds at `Proposed` on the recommendation.
136
136
  3. **Repair the run.** Rebase and resolve, verify a dead delegate's leftovers against the tree and finish or
137
- revert them, find why a gate loops and fix the cause.
137
+ revert them, find why a gate loops and fix the cause in the tree the gate measures.
138
138
 
139
139
  Every move is an entry in `{DECISIONS}` with `Decided by: {BOSUN}`, its *Would reverse if* naming what a
140
140
  person must eventually supply, and a task in the next slice to remove the stub when they do. Commit on the
@@ -145,7 +145,15 @@ destroy data or history (drop a database or volume, rewrite or delete a shared b
145
145
  can recover); release what a person has not asked for (turn a flag on, deploy or promote to production,
146
146
  merge anything that reaches a real actor); spend or expose (pay for anything, create or reveal a secret,
147
147
  widen permissions); weaken security (bypass authentication, loosen a MUST about money, identity or a
148
- boundary in production code); or discard a person's commits to make a rebase go through. Return
149
- `unblocked: <what you did, and the entry's number>`, `catastrophic: <why>`, or `cannot: <what you tried>`,
150
- and the session that delegated you decides whether the run continues or parks.""",
148
+ boundary in production code); discard a person's commits to make a rebase go through; or make a gate pass by
149
+ changing the gate. **A gate is satisfied in the tree it measures, never by editing what measures it**: nothing
150
+ under `scripts/` — the `check-*` gates, this runner — the `Makefile`, anything under `tools/`, CI, or a
151
+ harness's hook settings is yours to touch, whatever it reports. A gate that fails because of the slice's own
152
+ tree is a task in that tree. A gate that fails for a reason the tree cannot fix — a browser this machine has
153
+ not got, a tool that is not installed, a script of the kit's that crashes — is `cannot: <the gate's name and
154
+ its own last lines>`, and the run parks on those words; `{layout.make} verify` reporting a gate as skipped is not a
155
+ failure and needs nothing from you. Claude Code refuses the edit before it lands (`PreToolUse`), and the
156
+ runner parks the run at the end of any iteration that changed one of those files, whatever the last line
157
+ said. Return `unblocked: <what you did, and the entry's number>`, `catastrophic: <why>`, or `cannot: <what
158
+ you tried>`, and the session that delegated you decides whether the run continues or parks.""",
151
159
  }
@@ -20,6 +20,9 @@ CATASTROPHIC = (
20
20
  "weakening security — bypassing authentication, loosening a MUST about money, identity or a boundary in "
21
21
  "production code",
22
22
  "discarding a person's commits to make a checkout consistent",
23
+ "making a gate pass by changing the gate — anything under `scripts/`, the `Makefile`, anything under `tools/`, CI, "
24
+ "a harness's hook settings: a gate is satisfied in the tree it measures, or the run parks with the gate's own "
25
+ "output as the reason",
23
26
  "a run the bosun could not move — the blocker survived its attempt, or the attempt itself would need one of the above",
24
27
  )
25
28
 
@@ -52,4 +55,14 @@ and parks at once.
52
55
 
53
56
  A park is therefore rare, and it says which of those it met, or what the bosun tried. `python3 {script}
54
57
  status` shows a parked run's reason beside its checkpoint.
58
+
59
+ **A failing gate is never repaired in the gate.** `make verify` red on the slice's own tree is the slice's
60
+ work. Red for a reason the tree cannot fix — a browser this machine has not got, a tool not installed, a
61
+ script of a kit's that crashes — is a park: `cruise: parked: <gate>: <its own last lines>`, so a person
62
+ reads what the gate said and not what an iteration made of it. A gate reported as skipped is neither. This is
63
+ not left to the text: on Claude Code, `python3 {script} guard` runs as the `PreToolUse` hook of every editing
64
+ tool and refuses, in a runner's session, an edit under `scripts/`, `tools/`, the `Makefile`, CI or the hook
65
+ settings before it lands; and the runner compares those files before and after every iteration, on every
66
+ harness, and parks the run on any change — `controls_changed` on the log entry names the files — whatever
67
+ the iteration's last line said. A file installed under `tools/` by `./init --extension` is not a change.
55
68
  """
@@ -1 +0,0 @@
1
- 1.2.1.dev5