slipwai 1.2.1.dev13__tar.gz → 1.3.0.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.
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/CHANGELOG.md +83 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/PKG-INFO +1 -1
- slipwai-1.3.0.dev8/VERSION +1 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/targets/aws/README.md +35 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/targets/aws/bootstrap/main.tf +3 -1
- slipwai-1.3.0.dev8/assets/targets/aws/scripts/check-deploy-role.py +169 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/targets/aws/scripts/deploy.py +26 -3
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/targets/azure/README.md +22 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/docs/agent-harnesses.md +4 -2
- slipwai-1.3.0.dev8/assets/toolkit/scripts/agents/code_index.py +481 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/scripts/agents/cruise.py +35 -35
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/scripts/agents/registry.json +5 -2
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/scripts/check-codegraph.py +76 -15
- slipwai-1.3.0.dev8/assets/toolkit/scripts/check-ux-gates.py +403 -0
- slipwai-1.3.0.dev8/assets/toolkit/scripts/codegraph +28 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/scripts/extensions/codegraph/init.py +48 -36
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/scripts/extensions/guidance.py +5 -1
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/scripts/extensions/ux-gates/init.py +70 -1
- slipwai-1.3.0.dev8/changelog.d/code-index-held.md +35 -0
- slipwai-1.3.0.dev8/changelog.d/deploy-role-scope.md +21 -0
- slipwai-1.3.0.dev8/changelog.d/setup-go-workspace-cache.md +7 -0
- slipwai-1.3.0.dev8/changelog.d/ux-gates-at-scale.md +17 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/agent_settings.py +21 -3
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/agents.py +10 -12
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/ci_workflows.py +9 -1
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/commands.py +2 -2
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/cruise.py +3 -3
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/makefile.py +5 -4
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/production.py +17 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/rules.py +8 -2
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/stage_models.py +7 -8
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/toolkit.py +4 -4
- slipwai-1.2.1.dev13/VERSION +0 -1
- slipwai-1.2.1.dev13/assets/toolkit/scripts/check-ux-gates.py +0 -245
- slipwai-1.2.1.dev13/changelog.d/check-imports-leaves-tests.md +0 -11
- slipwai-1.2.1.dev13/changelog.d/gates-are-not-the-runs-to-change.md +0 -42
- slipwai-1.2.1.dev13/changelog.d/slice-scope-record-and-canvas.md +0 -31
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/.gitignore +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/LICENSE +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/NOTICE +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/README.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/README.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/adoption/docs/change-strategy.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/adoption/scripts/check-convergence.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/adoption/scripts/ratchet.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/adoption/support.json +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/adoption/wrappers/gradle/gradle-wrapper.jar.base64 +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/adoption/wrappers/gradle/gradle-wrapper.properties +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/adoption/wrappers/gradle/gradlew +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/adoption/wrappers/gradle/gradlew.bat +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/adoption/wrappers/gradle/source-notes.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/docker-compose.yml +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/env.example +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/go/checkpoint_store_contract.go +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/go/checkpoint_store_memory.go +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/go/checkpoint_store_memory_test.go +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/go/checkpoint_store_postgres.go +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/go/checkpoint_store_postgres_integration_test.go +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/go/checkpoint_store_sqlite.go +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/go/checkpoint_store_sqlite_test.go +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/go/config.go +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/go/config_test.go +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/go/event_store_contract.go +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/go/event_store_memory.go +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/go/event_store_memory_test.go +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/go/event_store_postgres.go +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/go/event_store_postgres_integration_test.go +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/go/event_store_sqlite.go +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/go/event_store_sqlite_test.go +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/go/events.go +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/go/http_app.go +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/go/http_app_test.go +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/go/http_openapi_test.go +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/go/http_security.go +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/go/http_security_test.go +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/go/migrate_main.go +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/go/migrate_main_test.go +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/go/migrations_embed.go +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/go/migrations_keep +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/go/oidc_keycloak.go +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/go/oidc_keycloak_test.go +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/go/openapi.yaml +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/go/projections.go +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/go/projections_test.go +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/go/projections_ticker.go +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/go/projections_ticker_test.go +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/go/read_models.go +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/go/serve_main.go +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/go/tracing.go +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/go/tracing_test.go +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/go/users_oidc_keycloak.go +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/go/users_oidc_keycloak_test.go +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/java/actor.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/java/append_result.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/java/causation_id.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/java/checkpoint_store_memory.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/java/checkpoint_store_postgres.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/java/checkpoint_store_sqlite.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/java/committed_event.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/java/condition.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/java/conditional_append_result.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/java/correlation_id.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/java/database_url.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/java/domain_event.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/java/event_store.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/java/event_store_exception.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/java/event_store_memory.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/java/event_store_memory_database.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/java/event_store_postgres.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/java/event_store_sqlite.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/java/event_visitor.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/java/http_schema_failure.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/java/migrate_main.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/java/oidc_keycloak.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/java/projection.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/java/projections.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/java/read_models.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/java/tag_query.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/java/tagged_read.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/java/tags_of.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/java/tests/checkpoint_store_contract.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/java/tests/checkpoint_store_memory_test.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/java/tests/checkpoint_store_sqlite_test.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/java/tests/database_url_test.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/java/tests/event_store_contract.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/java/tests/event_store_memory_test.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/java/tests/event_store_sqlite_test.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/java/tests/oidc_keycloak_test.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/java/tests/projections_test.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/java/tests/users_oidc_keycloak_test.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/java/transactions.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/java/users_oidc_keycloak.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/java-quarkus/config_source_registration +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/java-quarkus/database_url_config_source.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/java-quarkus/http_flags_resource.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/java-quarkus/http_health_check.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/java-quarkus/http_not_found_mapper.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/java-quarkus/jta_transactions.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/java-quarkus/oidc_keycloak_augmentor.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/java-quarkus/scheduled_projections.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/java-quarkus/tests/checkpoint_store_postgres_it.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/java-quarkus/tests/event_store_postgres_it.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/java-quarkus/tests/http_app_test.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/java-quarkus/users_current_customer.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/java-spring/database_url_environment_post_processor.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/java-spring/environment_post_processor_registration +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/java-spring/http_flags_controller.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/java-spring/http_health_indicator.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/java-spring/http_not_found_advice.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/java-spring/oidc_keycloak_security.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/java-spring/scheduled_projections.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/java-spring/spring_transactions.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/java-spring/tests/checkpoint_store_postgres_it.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/java-spring/tests/event_store_postgres_it.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/java-spring/tests/http_app_test.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/java-spring/users_security.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/keycloak/README.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/keycloak/realms/app.json +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/keycloak/realms/customers.json +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/prune.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/python/checkpoint_store_memory.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/python/checkpoint_store_postgres.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/python/checkpoint_store_sqlite.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/python/event_store_memory.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/python/event_store_postgres.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/python/event_store_sqlite.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/python/events.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/python/http_app.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/python/logging_setup.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/python/main.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/python/migrations_apply.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/python/oidc_keycloak.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/python/openapi-flags.json +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/python/openapi.json +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/python/openapi_export.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/python/projections.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/python/projections_lifespan.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/python/read_models.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/python/settings.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/python/tests/checkpoint_store_contract.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/python/tests/conftest.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/python/tests/event_store_contract.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/python/tests/test_checkpoint_store_memory.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/python/tests/test_checkpoint_store_postgres.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/python/tests/test_checkpoint_store_sqlite.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/python/tests/test_event_store_memory.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/python/tests/test_event_store_postgres.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/python/tests/test_event_store_sqlite.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/python/tests/test_http_app.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/python/tests/test_logging_setup.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/python/tests/test_oidc_keycloak.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/python/tests/test_projections.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/python/tests/test_projections_lifespan.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/python/tests/test_settings.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/python/tests/test_tracing.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/python/tests/test_users_oidc_keycloak.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/python/tracing.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/python/users_oidc_keycloak.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/sql/001_events.sql +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/sql/002_events_append_only.sql +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/sql/003_projection_checkpoints.sql +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/sql/004_event_tags.sql +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/typescript/checkpoint-store-memory.ts +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/typescript/checkpoint-store-postgres.ts +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/typescript/checkpoint-store-sqlite.ts +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/typescript/config.ts +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/typescript/event-store-memory.ts +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/typescript/event-store-postgres.ts +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/typescript/event-store-sqlite.ts +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/typescript/events.ts +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/typescript/http-app.ts +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/typescript/main.ts +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/typescript/migrations/001_events.js +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/typescript/migrations/002_events_append_only.js +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/typescript/migrations/003_projection_checkpoints.js +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/typescript/migrations/004_event_tags.js +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/typescript/oidc-keycloak.ts +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/typescript/openapi-export.ts +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/typescript/openapi-flags.json +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/typescript/openapi.json +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/typescript/projections-plugin.ts +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/typescript/projections.ts +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/typescript/read-models.ts +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/typescript/tests/checkpoint-store-contract.ts +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/typescript/tests/checkpoint-store-memory.test.ts +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/typescript/tests/checkpoint-store-postgres.test.ts +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/typescript/tests/checkpoint-store-sqlite.test.ts +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/typescript/tests/event-store-contract.ts +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/typescript/tests/event-store-memory.test.ts +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/typescript/tests/event-store-postgres.test.ts +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/typescript/tests/event-store-sqlite.test.ts +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/typescript/tests/http-app.test.ts +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/typescript/tests/oidc-keycloak.test.ts +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/typescript/tests/projections-plugin.test.ts +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/typescript/tests/projections.test.ts +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/typescript/tests/tracing.test.ts +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/typescript/tests/users-oidc-keycloak.test.ts +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/typescript/tracing.ts +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/typescript/users-oidc-keycloak.ts +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/backing-services/typescript/vitest.integration.config.ts +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/frontends/react-vite/api-client/package.json +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/frontends/react-vite/api-client/src/index.ts +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/frontends/react-vite/app/index.html +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/frontends/react-vite/app/package.json +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/frontends/react-vite/app/src/App.tsx +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/frontends/react-vite/app/src/main.tsx +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/frontends/react-vite/app/src/styles/base.css +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/frontends/react-vite/app/src/styles/tokens.css +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/frontends/react-vite/app/tests/App.test.tsx +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/frontends/react-vite/app/tests/setup.ts +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/frontends/react-vite/app/tsconfig.json +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/frontends/react-vite/app/vite.config.ts +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/frontends/react-vite/app-flags-local/flags.test.ts +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/frontends/react-vite/app-flags-local/flags.ts +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/frontends/react-vite/app-flags-target/flags.test.ts +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/frontends/react-vite/app-flags-target/flags.ts +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/frontends/react-vite/app-route-client/Home.test.tsx +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/frontends/react-vite/app-route-client/Home.tsx +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/frontends/react-vite/app-route-plain/Home.test.tsx +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/frontends/react-vite/app-route-plain/Home.tsx +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/frontends/react-vite/features/users-keycloak/src/auth/Account.tsx +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/frontends/react-vite/features/users-keycloak/src/auth/users.tsx +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/frontends/react-vite/features/users-keycloak/tests/auth/Account.test.tsx +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/frontends/react-vite/features/users-keycloak/tests/auth/users.test.ts +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/frontends/react-vite/locks/frontend-only-users-keycloak.json +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/frontends/react-vite/locks/frontend-only.json +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/frontends/react-vite/locks/typescript-backend-fastify-postgres-users-keycloak.json +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/frontends/react-vite/locks/typescript-backend-fastify-postgres.json +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/frontends/react-vite/locks/typescript-backend-fastify-users-keycloak.json +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/frontends/react-vite/locks/typescript-backend-fastify.json +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/frontends/react-vite/locks/typescript-backend-postgres-users-keycloak.json +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/frontends/react-vite/locks/typescript-backend-postgres.json +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/frontends/react-vite/locks/typescript-backend-users-keycloak.json +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/frontends/react-vite/locks/typescript-backend.json +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/app/.gremlins.yaml +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/app/application/README.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/app/domain/README.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/app/health/health.go +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/app/health/health_test.go +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/event-port/application/ports/events/events.go +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/event-port/application/ports/events/events_test.go +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/domain-driven-design/accept-child-id-remove-exercise.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/domain-driven-design/acl-stripe-payment-translation.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/domain-driven-design/aggregate-sizing-occasion.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/domain-driven-design/aggregate-vs-read-model.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/domain-driven-design/always-valid-occasion-invariants.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/domain-driven-design/branded-id-types.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/domain-driven-design/create-child-through-root.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/domain-driven-design/decider-pattern-order.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/domain-driven-design/describe-order-exhaustive-switch.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/domain-driven-design/discriminated-union-pledge-result.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/domain-driven-design/domain-behavioral-tests.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/domain-driven-design/domain-service-pledge-contribution.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/domain-driven-design/domain-service-test-pledge-contribution.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/domain-driven-design/domain-service-vs-use-case.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/domain-driven-design/entity-rename-occasion.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/domain-driven-design/error-propagation-through-layers.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/domain-driven-design/exception-vs-result-type.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/domain-driven-design/explicit-return-pledge-no-events.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/domain-driven-design/fake-vs-mock-repository.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/domain-driven-design/in-process-event-dispatch.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/domain-driven-design/integration-test-order-repository.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/domain-driven-design/invariant-driven-vending-machine.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/domain-driven-design/money-value-object-factory.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/domain-driven-design/multiple-error-reasons-union.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/domain-driven-design/naming-signature-domain-vs-use-case.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/domain-driven-design/occasion-repository-interface.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/domain-driven-design/one-aggregate-per-transaction.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/domain-driven-design/optimistic-locking-repository-save.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/domain-driven-design/optimistic-locking-version-field.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/domain-driven-design/order-lifecycle-union.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/domain-driven-design/outbox-pattern-dispatch.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/domain-driven-design/pledge-result-types.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/domain-driven-design/process-manager-gift-purchase.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/domain-driven-design/property-based-test-pledge-budget.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/domain-driven-design/purity-test-domain-vs-presentation.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/domain-driven-design/readonly-array-child-collection.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/domain-driven-design/shared-kernel-package-layout.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/domain-driven-design/specification-can-pledge.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/domain-driven-design/test-decide-order-events.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/domain-driven-design/test-error-funding-closed.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/domain-driven-design/test-factory-get-occasion.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/domain-driven-design/ubiquitous-language-glossary-types.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/domain-driven-design/use-case-test-pledge-contribution.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/domain-driven-design/wrong-catch-rethrow-context.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/domain-driven-design/wrong-exception-for-business-rule.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/domain-driven-design/wrong-generic-error-type.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/domain-driven-design/zod-branded-type-bridging.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/event-sourcing/account-decider-and-evolve.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/event-sourcing/balance-view-apply-fold.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/event-sourcing/balance-view-projection.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/event-sourcing/catch-up-checkpoint-transaction.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/event-sourcing/command-handler-loop.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/event-sourcing/command-handler-retry-loop.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/event-sourcing/decide-withdraw-example.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/event-sourcing/decider-behaviour-tests.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/event-sourcing/decider-insufficient-funds-test.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/event-sourcing/decider-type.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/event-sourcing/decision-result-type.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/event-sourcing/deposit-money-command-with-timestamp.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/event-sourcing/event-envelope-type.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/event-sourcing/event-store-port-interface.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/event-sourcing/event-store-port.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/event-sourcing/evolve-behaviour-via-withdraw-limit.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/event-sourcing/generic-rehydrate-fold.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/event-sourcing/idempotent-projection-dedupe.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/event-sourcing/in-memory-event-store-fake.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/event-sourcing/inline-view-in-append-transaction.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/event-sourcing/live-view-bounded-fold.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/event-sourcing/order-placed-upcaster.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/event-sourcing/projection-behaviour-tests.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/event-sourcing/rehydrate-left-fold.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/event-sourcing/tags-of-from-identifying-attributes.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/event-sourcing/todo-list-claiming.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/event-sourcing/tolerant-reader-read-path.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/event-sourcing/upcaster-behaviour-test.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/hexagonal-architecture/adapter-error-translation.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/hexagonal-architecture/antipattern-business-logic-in-adapter.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/hexagonal-architecture/antipattern-bypass-adapter.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/hexagonal-architecture/antipattern-domain-depends-on-infrastructure.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/hexagonal-architecture/antipattern-pattern-shaped-names.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/hexagonal-architecture/antipattern-technology-shaped-port.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/hexagonal-architecture/composition-root-http-entrypoint.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/hexagonal-architecture/composition-root-queue-entrypoint.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/hexagonal-architecture/cqrs-lite-dashboard-query-function.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/hexagonal-architecture/cqrs-lite-domain-transform-read-data.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/hexagonal-architecture/cross-cutting-auth-driving-adapter.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/hexagonal-architecture/cross-cutting-domain-authorization.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/hexagonal-architecture/cross-cutting-domain-probe-port.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/hexagonal-architecture/cross-cutting-error-formatting-http.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/hexagonal-architecture/cross-cutting-technical-telemetry-adapters.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/hexagonal-architecture/cross-cutting-transactional-persistence-port.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/hexagonal-architecture/cross-cutting-use-case-identity.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/hexagonal-architecture/dependency-injection-order-placement.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/hexagonal-architecture/driven-adapter-and-fake-implementation.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/hexagonal-architecture/greenfield-driven-port-fake.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/hexagonal-architecture/greenfield-driving-port-constant.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/hexagonal-architecture/incremental-after-thin-entrypoint.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/hexagonal-architecture/incremental-before-tangled-handler.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/hexagonal-architecture/incremental-create-adapter.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/hexagonal-architecture/incremental-create-use-case.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/hexagonal-architecture/incremental-extract-domain-function.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/hexagonal-architecture/incremental-extract-port-interface.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/hexagonal-architecture/port-interface-definitions.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/hexagonal-architecture/reads-vs-writes-query-function-example.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/hexagonal-architecture/testing-create-test-db-helper.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/hexagonal-architecture/testing-domain-unit-test-example.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/hexagonal-architecture/testing-fake-order-repo.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/hexagonal-architecture/testing-narrow-integration-tests.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/hexagonal-architecture/testing-recording-fake-instrumentation.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/hexagonal-architecture/testing-use-case-primary-boundary.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/hexagonal-architecture/worked-example-domain-function-record-pledge.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/hexagonal-architecture/worked-example-domain-types.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/hexagonal-architecture/worked-example-domain-unit-test.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/hexagonal-architecture/worked-example-driven-adapters.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/hexagonal-architecture/worked-example-driving-adapter-entrypoint.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/hexagonal-architecture/worked-example-fakes-for-testing.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/hexagonal-architecture/worked-example-port-interfaces.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/hexagonal-architecture/worked-example-use-case-orchestration.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/hexagonal-architecture/worked-example-use-case-test.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/testing/correct-complete-factory-object.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/testing/correct-fresh-state-per-test.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/testing/correct-import-real-schema.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/testing/correct-inline-tested-through-behavior.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/testing/correct-testing-behavior-public-api.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/testing/coverage-theater-assert-called-only-correct.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/testing/coverage-theater-assert-called-only-wrong.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/testing/coverage-theater-branch-coverage-correct.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/testing/coverage-theater-happy-path-only-wrong.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/testing/coverage-theater-mock-function-under-test-correct.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/testing/coverage-theater-mock-function-under-test-wrong.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/testing/coverage-theater-trivial-getter-setter-correct.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/testing/coverage-theater-trivial-getter-setter-wrong.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/testing/factory-basic-pattern.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/testing/factory-complete-example.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/testing/factory-composition.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/testing/reach-validation-through-behavior.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/testing/wrong-extracted-helper-with-own-test.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/testing/wrong-incomplete-factory-object.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/testing/wrong-redefine-schema-in-test.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/testing/wrong-shared-mutable-fixture.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/examples/testing/wrong-testing-implementation-detail.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/flags/flags/flags.go +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/flags/flags/flags_test.go +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/modules/base/go.mod +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/modules/base/go.sum +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/modules/postgres/go.mod +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/modules/postgres/go.sum +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/modules/sqlite/go.mod +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/modules/sqlite/go.sum +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/scripts/go-coverage.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/go/scripts/go-mutation.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/build/.gitattributes +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/build/.mvn/wrapper/maven-wrapper.properties +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/build/config/checkstyle.xml +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/build/config/pmd-ruleset.xml +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/build/config/spotbugs-exclude.xml +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/build/mvnw +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/build/mvnw.cmd +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/domain-driven-design/accept-child-id-remove-exercise.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/domain-driven-design/acl-stripe-payment-translation.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/domain-driven-design/aggregate-sizing-occasion.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/domain-driven-design/aggregate-vs-read-model.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/domain-driven-design/always-valid-occasion-invariants.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/domain-driven-design/branded-id-types.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/domain-driven-design/create-child-through-root.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/domain-driven-design/decider-pattern-order.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/domain-driven-design/describe-order-exhaustive-switch.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/domain-driven-design/discriminated-union-pledge-result.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/domain-driven-design/domain-behavioral-tests.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/domain-driven-design/domain-service-pledge-contribution.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/domain-driven-design/domain-service-test-pledge-contribution.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/domain-driven-design/domain-service-vs-use-case.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/domain-driven-design/entity-rename-occasion.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/domain-driven-design/error-propagation-through-layers.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/domain-driven-design/exception-vs-result-type.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/domain-driven-design/explicit-return-pledge-no-events.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/domain-driven-design/fake-vs-mock-repository.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/domain-driven-design/in-process-event-dispatch.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/domain-driven-design/integration-test-order-repository.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/domain-driven-design/invariant-driven-vending-machine.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/domain-driven-design/money-value-object-factory.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/domain-driven-design/multiple-error-reasons-union.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/domain-driven-design/naming-signature-domain-vs-use-case.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/domain-driven-design/occasion-repository-interface.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/domain-driven-design/one-aggregate-per-transaction.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/domain-driven-design/optimistic-locking-repository-save.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/domain-driven-design/optimistic-locking-version-field.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/domain-driven-design/order-lifecycle-union.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/domain-driven-design/outbox-pattern-dispatch.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/domain-driven-design/pledge-result-types.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/domain-driven-design/process-manager-gift-purchase.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/domain-driven-design/property-based-test-pledge-budget.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/domain-driven-design/purity-test-domain-vs-presentation.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/domain-driven-design/readonly-array-child-collection.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/domain-driven-design/shared-kernel-package-layout.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/domain-driven-design/specification-can-pledge.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/domain-driven-design/test-decide-order-events.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/domain-driven-design/test-error-funding-closed.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/domain-driven-design/test-factory-get-occasion.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/domain-driven-design/ubiquitous-language-glossary-types.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/domain-driven-design/use-case-test-pledge-contribution.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/domain-driven-design/wrong-catch-rethrow-context.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/domain-driven-design/wrong-exception-for-business-rule.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/domain-driven-design/wrong-generic-error-type.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/domain-driven-design/zod-branded-type-bridging.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/event-sourcing/account-decider-and-evolve.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/event-sourcing/balance-view-apply-fold.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/event-sourcing/balance-view-projection.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/event-sourcing/catch-up-checkpoint-transaction.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/event-sourcing/command-handler-loop.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/event-sourcing/command-handler-retry-loop.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/event-sourcing/decide-withdraw-example.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/event-sourcing/decider-behaviour-tests.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/event-sourcing/decider-insufficient-funds-test.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/event-sourcing/decider-type.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/event-sourcing/decision-result-type.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/event-sourcing/deposit-money-command-with-timestamp.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/event-sourcing/event-envelope-type.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/event-sourcing/event-store-port-interface.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/event-sourcing/event-store-port.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/event-sourcing/evolve-behaviour-via-withdraw-limit.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/event-sourcing/generic-rehydrate-fold.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/event-sourcing/idempotent-projection-dedupe.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/event-sourcing/in-memory-event-store-fake.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/event-sourcing/inline-view-in-append-transaction.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/event-sourcing/live-view-bounded-fold.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/event-sourcing/order-placed-upcaster.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/event-sourcing/projection-behaviour-tests.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/event-sourcing/rehydrate-left-fold.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/event-sourcing/tags-of-from-identifying-attributes.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/event-sourcing/todo-list-claiming.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/event-sourcing/tolerant-reader-read-path.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/event-sourcing/upcaster-behaviour-test.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/hexagonal-architecture/adapter-error-translation.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/hexagonal-architecture/antipattern-business-logic-in-adapter.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/hexagonal-architecture/antipattern-bypass-adapter.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/hexagonal-architecture/antipattern-domain-depends-on-infrastructure.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/hexagonal-architecture/antipattern-pattern-shaped-names.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/hexagonal-architecture/antipattern-technology-shaped-port.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/hexagonal-architecture/composition-root-http-entrypoint.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/hexagonal-architecture/composition-root-queue-entrypoint.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/hexagonal-architecture/cqrs-lite-dashboard-query-function.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/hexagonal-architecture/cqrs-lite-domain-transform-read-data.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/hexagonal-architecture/cross-cutting-auth-driving-adapter.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/hexagonal-architecture/cross-cutting-domain-authorization.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/hexagonal-architecture/cross-cutting-domain-probe-port.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/hexagonal-architecture/cross-cutting-error-formatting-http.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/hexagonal-architecture/cross-cutting-technical-telemetry-adapters.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/hexagonal-architecture/cross-cutting-transactional-persistence-port.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/hexagonal-architecture/cross-cutting-use-case-identity.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/hexagonal-architecture/dependency-injection-order-placement.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/hexagonal-architecture/driven-adapter-and-fake-implementation.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/hexagonal-architecture/greenfield-driven-port-fake.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/hexagonal-architecture/greenfield-driving-port-constant.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/hexagonal-architecture/incremental-after-thin-entrypoint.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/hexagonal-architecture/incremental-before-tangled-handler.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/hexagonal-architecture/incremental-create-adapter.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/hexagonal-architecture/incremental-create-use-case.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/hexagonal-architecture/incremental-extract-domain-function.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/hexagonal-architecture/incremental-extract-port-interface.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/hexagonal-architecture/port-interface-definitions.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/hexagonal-architecture/reads-vs-writes-query-function-example.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/hexagonal-architecture/testing-create-test-db-helper.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/hexagonal-architecture/testing-domain-unit-test-example.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/hexagonal-architecture/testing-fake-order-repo.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/hexagonal-architecture/testing-narrow-integration-tests.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/hexagonal-architecture/testing-recording-fake-instrumentation.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/hexagonal-architecture/testing-use-case-primary-boundary.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/hexagonal-architecture/worked-example-domain-function-record-pledge.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/hexagonal-architecture/worked-example-domain-types.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/hexagonal-architecture/worked-example-domain-unit-test.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/hexagonal-architecture/worked-example-driven-adapters.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/hexagonal-architecture/worked-example-driving-adapter-entrypoint.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/hexagonal-architecture/worked-example-fakes-for-testing.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/hexagonal-architecture/worked-example-port-interfaces.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/hexagonal-architecture/worked-example-use-case-orchestration.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/hexagonal-architecture/worked-example-use-case-test.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/testing/correct-complete-factory-object.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/testing/correct-fresh-state-per-test.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/testing/correct-import-real-schema.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/testing/correct-inline-tested-through-behavior.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/testing/correct-testing-behavior-public-api.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/testing/coverage-theater-assert-called-only-correct.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/testing/coverage-theater-assert-called-only-wrong.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/testing/coverage-theater-branch-coverage-correct.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/testing/coverage-theater-happy-path-only-wrong.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/testing/coverage-theater-mock-function-under-test-correct.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/testing/coverage-theater-mock-function-under-test-wrong.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/testing/coverage-theater-trivial-getter-setter-correct.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/testing/coverage-theater-trivial-getter-setter-wrong.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/testing/factory-basic-pattern.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/testing/factory-complete-example.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/testing/factory-composition.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/testing/reach-validation-through-behavior.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/testing/wrong-extracted-helper-with-own-test.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/testing/wrong-incomplete-factory-object.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/testing/wrong-redefine-schema-in-test.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/testing/wrong-shared-mutable-fixture.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/examples/testing/wrong-testing-implementation-detail.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/flags/src/main/java/com/example/deliverystarter/flags/Flags.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java/flags/src/test/java/com/example/deliverystarter/flags/FlagsTest.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java-quarkus/app/pom.xml +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java-quarkus/app/src/main/java/com/example/deliverystarter/application/README.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java-quarkus/app/src/main/java/com/example/deliverystarter/domain/README.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java-quarkus/app/src/main/java/com/example/deliverystarter/health/HealthStatus.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java-quarkus/app/src/main/resources/application.properties +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java-quarkus/app/src/test/java/com/example/deliverystarter/health/HealthStatusTest.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java-spring/app/pom.xml +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java-spring/app/src/main/java/com/example/deliverystarter/ServiceApplication.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java-spring/app/src/main/java/com/example/deliverystarter/application/README.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java-spring/app/src/main/java/com/example/deliverystarter/domain/README.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java-spring/app/src/main/java/com/example/deliverystarter/health/HealthStatus.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java-spring/app/src/main/resources/application.properties +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/java-spring/app/src/test/java/com/example/deliverystarter/health/HealthStatusTest.java +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/app/pyproject.toml +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/app/src/delivery_starter/__init__.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/app/src/delivery_starter/application/README.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/app/src/delivery_starter/domain/README.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/app/tests/test_health.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/event-port/src/delivery_starter/application/ports/events.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/event-port/tests/test_events.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/domain-driven-design/accept-child-id-remove-exercise.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/domain-driven-design/acl-stripe-payment-translation.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/domain-driven-design/aggregate-sizing-occasion.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/domain-driven-design/aggregate-vs-read-model.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/domain-driven-design/always-valid-occasion-invariants.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/domain-driven-design/branded-id-types.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/domain-driven-design/create-child-through-root.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/domain-driven-design/decider-pattern-order.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/domain-driven-design/describe-order-exhaustive-switch.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/domain-driven-design/discriminated-union-pledge-result.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/domain-driven-design/domain-behavioral-tests.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/domain-driven-design/domain-service-pledge-contribution.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/domain-driven-design/domain-service-test-pledge-contribution.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/domain-driven-design/domain-service-vs-use-case.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/domain-driven-design/entity-rename-occasion.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/domain-driven-design/error-propagation-through-layers.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/domain-driven-design/exception-vs-result-type.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/domain-driven-design/explicit-return-pledge-no-events.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/domain-driven-design/fake-vs-mock-repository.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/domain-driven-design/in-process-event-dispatch.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/domain-driven-design/integration-test-order-repository.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/domain-driven-design/invariant-driven-vending-machine.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/domain-driven-design/money-value-object-factory.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/domain-driven-design/multiple-error-reasons-union.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/domain-driven-design/naming-signature-domain-vs-use-case.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/domain-driven-design/occasion-repository-interface.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/domain-driven-design/one-aggregate-per-transaction.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/domain-driven-design/optimistic-locking-repository-save.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/domain-driven-design/optimistic-locking-version-field.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/domain-driven-design/order-lifecycle-union.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/domain-driven-design/outbox-pattern-dispatch.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/domain-driven-design/pledge-result-types.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/domain-driven-design/process-manager-gift-purchase.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/domain-driven-design/property-based-test-pledge-budget.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/domain-driven-design/purity-test-domain-vs-presentation.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/domain-driven-design/readonly-array-child-collection.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/domain-driven-design/shared-kernel-package-layout.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/domain-driven-design/specification-can-pledge.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/domain-driven-design/test-decide-order-events.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/domain-driven-design/test-error-funding-closed.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/domain-driven-design/test-factory-get-occasion.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/domain-driven-design/ubiquitous-language-glossary-types.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/domain-driven-design/use-case-test-pledge-contribution.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/domain-driven-design/wrong-catch-rethrow-context.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/domain-driven-design/wrong-exception-for-business-rule.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/domain-driven-design/wrong-generic-error-type.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/domain-driven-design/zod-branded-type-bridging.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/event-sourcing/account-decider-and-evolve.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/event-sourcing/balance-view-apply-fold.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/event-sourcing/balance-view-projection.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/event-sourcing/catch-up-checkpoint-transaction.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/event-sourcing/command-handler-loop.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/event-sourcing/command-handler-retry-loop.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/event-sourcing/decide-withdraw-example.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/event-sourcing/decider-behaviour-tests.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/event-sourcing/decider-insufficient-funds-test.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/event-sourcing/decider-type.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/event-sourcing/decision-result-type.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/event-sourcing/deposit-money-command-with-timestamp.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/event-sourcing/event-envelope-type.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/event-sourcing/event-store-port-interface.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/event-sourcing/event-store-port.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/event-sourcing/evolve-behaviour-via-withdraw-limit.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/event-sourcing/generic-rehydrate-fold.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/event-sourcing/idempotent-projection-dedupe.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/event-sourcing/in-memory-event-store-fake.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/event-sourcing/inline-view-in-append-transaction.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/event-sourcing/live-view-bounded-fold.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/event-sourcing/order-placed-upcaster.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/event-sourcing/projection-behaviour-tests.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/event-sourcing/rehydrate-left-fold.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/event-sourcing/tags-of-from-identifying-attributes.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/event-sourcing/todo-list-claiming.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/event-sourcing/tolerant-reader-read-path.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/event-sourcing/upcaster-behaviour-test.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/hexagonal-architecture/adapter-error-translation.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/hexagonal-architecture/antipattern-business-logic-in-adapter.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/hexagonal-architecture/antipattern-bypass-adapter.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/hexagonal-architecture/antipattern-domain-depends-on-infrastructure.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/hexagonal-architecture/antipattern-pattern-shaped-names.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/hexagonal-architecture/antipattern-technology-shaped-port.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/hexagonal-architecture/composition-root-http-entrypoint.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/hexagonal-architecture/composition-root-queue-entrypoint.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/hexagonal-architecture/cqrs-lite-dashboard-query-function.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/hexagonal-architecture/cqrs-lite-domain-transform-read-data.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/hexagonal-architecture/cross-cutting-auth-driving-adapter.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/hexagonal-architecture/cross-cutting-domain-authorization.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/hexagonal-architecture/cross-cutting-domain-probe-port.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/hexagonal-architecture/cross-cutting-error-formatting-http.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/hexagonal-architecture/cross-cutting-technical-telemetry-adapters.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/hexagonal-architecture/cross-cutting-transactional-persistence-port.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/hexagonal-architecture/cross-cutting-use-case-identity.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/hexagonal-architecture/dependency-injection-order-placement.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/hexagonal-architecture/driven-adapter-and-fake-implementation.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/hexagonal-architecture/greenfield-driven-port-fake.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/hexagonal-architecture/greenfield-driving-port-constant.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/hexagonal-architecture/incremental-after-thin-entrypoint.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/hexagonal-architecture/incremental-before-tangled-handler.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/hexagonal-architecture/incremental-create-adapter.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/hexagonal-architecture/incremental-create-use-case.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/hexagonal-architecture/incremental-extract-domain-function.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/hexagonal-architecture/incremental-extract-port-interface.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/hexagonal-architecture/port-interface-definitions.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/hexagonal-architecture/reads-vs-writes-query-function-example.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/hexagonal-architecture/testing-create-test-db-helper.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/hexagonal-architecture/testing-domain-unit-test-example.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/hexagonal-architecture/testing-fake-order-repo.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/hexagonal-architecture/testing-narrow-integration-tests.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/hexagonal-architecture/testing-recording-fake-instrumentation.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/hexagonal-architecture/testing-use-case-primary-boundary.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/hexagonal-architecture/worked-example-domain-function-record-pledge.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/hexagonal-architecture/worked-example-domain-types.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/hexagonal-architecture/worked-example-domain-unit-test.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/hexagonal-architecture/worked-example-driven-adapters.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/hexagonal-architecture/worked-example-driving-adapter-entrypoint.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/hexagonal-architecture/worked-example-fakes-for-testing.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/hexagonal-architecture/worked-example-port-interfaces.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/hexagonal-architecture/worked-example-use-case-orchestration.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/hexagonal-architecture/worked-example-use-case-test.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/testing/correct-complete-factory-object.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/testing/correct-fresh-state-per-test.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/testing/correct-import-real-schema.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/testing/correct-inline-tested-through-behavior.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/testing/correct-testing-behavior-public-api.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/testing/coverage-theater-assert-called-only-correct.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/testing/coverage-theater-assert-called-only-wrong.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/testing/coverage-theater-branch-coverage-correct.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/testing/coverage-theater-happy-path-only-wrong.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/testing/coverage-theater-mock-function-under-test-correct.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/testing/coverage-theater-mock-function-under-test-wrong.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/testing/coverage-theater-trivial-getter-setter-correct.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/testing/coverage-theater-trivial-getter-setter-wrong.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/testing/factory-basic-pattern.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/testing/factory-complete-example.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/testing/factory-composition.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/testing/reach-validation-through-behavior.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/testing/wrong-extracted-helper-with-own-test.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/testing/wrong-incomplete-factory-object.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/testing/wrong-redefine-schema-in-test.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/testing/wrong-shared-mutable-fixture.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/examples/testing/wrong-testing-implementation-detail.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/flags/src/delivery_starter/flags.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/flags/tests/test_flags.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/locks/uv-fastapi-postgres.lock +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/locks/uv-fastapi.lock +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/locks/uv-postgres.lock +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/python/locks/uv.lock +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/app/package.json +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/app/src/application/README.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/app/src/domain/README.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/app/src/health.ts +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/app/tests/health.test.ts +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/biome/biome.jsonc +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/biome/domain-purity.grit +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/domain-driven-design/accept-child-id-remove-exercise.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/domain-driven-design/acl-stripe-payment-translation.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/domain-driven-design/aggregate-sizing-occasion.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/domain-driven-design/aggregate-vs-read-model.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/domain-driven-design/always-valid-occasion-invariants.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/domain-driven-design/branded-id-types.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/domain-driven-design/create-child-through-root.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/domain-driven-design/decider-pattern-order.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/domain-driven-design/describe-order-exhaustive-switch.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/domain-driven-design/discriminated-union-pledge-result.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/domain-driven-design/domain-behavioral-tests.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/domain-driven-design/domain-service-pledge-contribution.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/domain-driven-design/domain-service-test-pledge-contribution.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/domain-driven-design/domain-service-vs-use-case.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/domain-driven-design/entity-rename-occasion.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/domain-driven-design/error-propagation-through-layers.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/domain-driven-design/exception-vs-result-type.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/domain-driven-design/explicit-return-pledge-no-events.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/domain-driven-design/fake-vs-mock-repository.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/domain-driven-design/in-process-event-dispatch.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/domain-driven-design/integration-test-order-repository.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/domain-driven-design/invariant-driven-vending-machine.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/domain-driven-design/money-value-object-factory.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/domain-driven-design/multiple-error-reasons-union.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/domain-driven-design/naming-signature-domain-vs-use-case.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/domain-driven-design/occasion-repository-interface.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/domain-driven-design/one-aggregate-per-transaction.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/domain-driven-design/optimistic-locking-repository-save.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/domain-driven-design/optimistic-locking-version-field.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/domain-driven-design/order-lifecycle-union.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/domain-driven-design/outbox-pattern-dispatch.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/domain-driven-design/pledge-result-types.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/domain-driven-design/process-manager-gift-purchase.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/domain-driven-design/property-based-test-pledge-budget.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/domain-driven-design/purity-test-domain-vs-presentation.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/domain-driven-design/readonly-array-child-collection.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/domain-driven-design/shared-kernel-package-layout.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/domain-driven-design/specification-can-pledge.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/domain-driven-design/test-decide-order-events.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/domain-driven-design/test-error-funding-closed.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/domain-driven-design/test-factory-get-occasion.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/domain-driven-design/ubiquitous-language-glossary-types.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/domain-driven-design/use-case-test-pledge-contribution.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/domain-driven-design/wrong-catch-rethrow-context.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/domain-driven-design/wrong-exception-for-business-rule.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/domain-driven-design/wrong-generic-error-type.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/domain-driven-design/zod-branded-type-bridging.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/event-sourcing/account-decider-and-evolve.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/event-sourcing/balance-view-apply-fold.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/event-sourcing/balance-view-projection.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/event-sourcing/catch-up-checkpoint-transaction.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/event-sourcing/command-handler-loop.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/event-sourcing/command-handler-retry-loop.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/event-sourcing/decide-withdraw-example.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/event-sourcing/decider-behaviour-tests.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/event-sourcing/decider-insufficient-funds-test.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/event-sourcing/decider-type.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/event-sourcing/decision-result-type.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/event-sourcing/deposit-money-command-with-timestamp.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/event-sourcing/event-envelope-type.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/event-sourcing/event-store-port-interface.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/event-sourcing/event-store-port.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/event-sourcing/evolve-behaviour-via-withdraw-limit.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/event-sourcing/generic-rehydrate-fold.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/event-sourcing/idempotent-projection-dedupe.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/event-sourcing/in-memory-event-store-fake.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/event-sourcing/inline-view-in-append-transaction.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/event-sourcing/live-view-bounded-fold.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/event-sourcing/order-placed-upcaster.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/event-sourcing/projection-behaviour-tests.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/event-sourcing/rehydrate-left-fold.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/event-sourcing/tags-of-from-identifying-attributes.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/event-sourcing/todo-list-claiming.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/event-sourcing/tolerant-reader-read-path.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/event-sourcing/upcaster-behaviour-test.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/hexagonal-architecture/adapter-error-translation.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/hexagonal-architecture/antipattern-business-logic-in-adapter.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/hexagonal-architecture/antipattern-bypass-adapter.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/hexagonal-architecture/antipattern-domain-depends-on-infrastructure.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/hexagonal-architecture/antipattern-pattern-shaped-names.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/hexagonal-architecture/antipattern-technology-shaped-port.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/hexagonal-architecture/composition-root-http-entrypoint.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/hexagonal-architecture/composition-root-queue-entrypoint.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/hexagonal-architecture/cqrs-lite-dashboard-query-function.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/hexagonal-architecture/cqrs-lite-domain-transform-read-data.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/hexagonal-architecture/cross-cutting-auth-driving-adapter.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/hexagonal-architecture/cross-cutting-domain-authorization.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/hexagonal-architecture/cross-cutting-domain-probe-port.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/hexagonal-architecture/cross-cutting-error-formatting-http.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/hexagonal-architecture/cross-cutting-technical-telemetry-adapters.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/hexagonal-architecture/cross-cutting-transactional-persistence-port.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/hexagonal-architecture/cross-cutting-use-case-identity.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/hexagonal-architecture/dependency-injection-order-placement.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/hexagonal-architecture/driven-adapter-and-fake-implementation.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/hexagonal-architecture/greenfield-driven-port-fake.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/hexagonal-architecture/greenfield-driving-port-constant.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/hexagonal-architecture/incremental-after-thin-entrypoint.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/hexagonal-architecture/incremental-before-tangled-handler.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/hexagonal-architecture/incremental-create-adapter.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/hexagonal-architecture/incremental-create-use-case.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/hexagonal-architecture/incremental-extract-domain-function.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/hexagonal-architecture/incremental-extract-port-interface.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/hexagonal-architecture/port-interface-definitions.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/hexagonal-architecture/reads-vs-writes-query-function-example.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/hexagonal-architecture/testing-create-test-db-helper.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/hexagonal-architecture/testing-domain-unit-test-example.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/hexagonal-architecture/testing-fake-order-repo.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/hexagonal-architecture/testing-narrow-integration-tests.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/hexagonal-architecture/testing-recording-fake-instrumentation.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/hexagonal-architecture/testing-use-case-primary-boundary.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/hexagonal-architecture/worked-example-domain-function-record-pledge.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/hexagonal-architecture/worked-example-domain-types.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/hexagonal-architecture/worked-example-domain-unit-test.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/hexagonal-architecture/worked-example-driven-adapters.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/hexagonal-architecture/worked-example-driving-adapter-entrypoint.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/hexagonal-architecture/worked-example-fakes-for-testing.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/hexagonal-architecture/worked-example-port-interfaces.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/hexagonal-architecture/worked-example-use-case-orchestration.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/hexagonal-architecture/worked-example-use-case-test.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/testing/correct-complete-factory-object.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/testing/correct-fresh-state-per-test.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/testing/correct-import-real-schema.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/testing/correct-inline-tested-through-behavior.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/testing/correct-testing-behavior-public-api.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/testing/coverage-theater-assert-called-only-correct.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/testing/coverage-theater-assert-called-only-wrong.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/testing/coverage-theater-branch-coverage-correct.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/testing/coverage-theater-happy-path-only-wrong.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/testing/coverage-theater-mock-function-under-test-correct.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/testing/coverage-theater-mock-function-under-test-wrong.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/testing/coverage-theater-trivial-getter-setter-correct.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/testing/coverage-theater-trivial-getter-setter-wrong.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/testing/factory-basic-pattern.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/testing/factory-complete-example.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/testing/factory-composition.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/testing/reach-validation-through-behavior.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/testing/wrong-extracted-helper-with-own-test.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/testing/wrong-incomplete-factory-object.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/testing/wrong-redefine-schema-in-test.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/testing/wrong-shared-mutable-fixture.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/examples/testing/wrong-testing-implementation-detail.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/flags/src/flags.ts +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/flags/tests/flags.test.ts +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/locks/package-lock-fastify-postgres.json +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/locks/package-lock-fastify.json +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/locks/package-lock-postgres.json +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/languages/typescript/locks/package-lock.json +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/profiles/event-modelling/.specify/presets/.registry +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/profiles/event-modelling/.specify/presets/event-modelling/preset.yml +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/profiles/event-modelling/.specify/presets/event-modelling/templates/constitution-template.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/profiles/event-modelling/.specify/presets/event-modelling/templates/plan-template.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/profiles/event-modelling/.specify/presets/event-modelling/templates/tasks-template.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/profiles/event-modelling/commands/example-map.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/profiles/event-modelling/commands/validate-code-against-model.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/profiles/event-modelling/docs/speckit-preset.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/profiles/standard/.specify/presets/.registry +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/profiles/standard/.specify/presets/standard/preset.yml +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/profiles/standard/.specify/presets/standard/templates/constitution-template.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/profiles/standard/docs/adr/0001-record-architecture-decisions.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/profiles/standard/docs/speckit-preset.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/profiles/standard/skills/adversarial-testing/SKILL.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/profiles/standard/skills/adversarial-testing/resources/attack-catalogue.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/profiles/standard/skills/architecture-decisions/SKILL.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/targets/aws/bootstrap/outputs.tf +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/targets/aws/bootstrap/variables.tf +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/targets/aws/scripts/bootstrap.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/targets/aws/scripts/check-flags.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/targets/aws/service/auth0.tf +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/targets/aws/service/cognito_customers.tf +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/targets/aws/service/cognito_staff.tf +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/targets/aws/service/flags.auto.tfvars +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/targets/aws/service/flags.tf +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/targets/aws/service/frontend.tf +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/targets/aws/service/ingress.tf +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/targets/aws/service/main.tf +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/targets/aws/service/network.tf +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/targets/aws/service/no-auth0.tf +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/targets/aws/service/no-frontend.tf +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/targets/aws/service/outputs.tf +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/targets/aws/service/production.tfvars +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/targets/aws/service/rds.tf +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/targets/aws/service/staging.tfvars +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/targets/aws/service/variables.tf +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/targets/aws/service/versions.tf +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/targets/azure/bootstrap/main.tf +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/targets/azure/bootstrap/outputs.tf +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/targets/azure/bootstrap/variables.tf +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/targets/azure/scripts/bootstrap.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/targets/azure/scripts/check-flags.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/targets/azure/scripts/deploy.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/targets/azure/service/auth0.tf +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/targets/azure/service/entra_staff.tf +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/targets/azure/service/flags.auto.tfvars +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/targets/azure/service/flags.tf +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/targets/azure/service/frontend.tf +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/targets/azure/service/ingress.tf +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/targets/azure/service/main.tf +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/targets/azure/service/no-auth0.tf +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/targets/azure/service/no-frontend.tf +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/targets/azure/service/outputs.tf +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/targets/azure/service/postgres.tf +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/targets/azure/service/production.tfvars +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/targets/azure/service/staging.tfvars +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/targets/azure/service/variables.tf +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/targets/azure/service/versions.tf +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/.specify/extensions.yml +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/docs/adr/0001-record-architecture-decisions.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/docs/delegated-agent-safety.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/docs/event-model/README.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/docs/event-model/model.yaml +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/docs/event-modeling-to-code.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/docs/first-slice.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/scripts/agents/benchmark.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/scripts/agents/drive.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/scripts/agents/models.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/scripts/agents/project.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/scripts/check-constitution.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/scripts/check-decisions.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/scripts/check-imports.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/scripts/check-migrations.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/scripts/check-slice-scope.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/scripts/check-speckit.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/scripts/check-styles.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/scripts/event-model/board-plan.test.ts +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/scripts/event-model/board-plan.ts +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/scripts/event-model/check.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/scripts/event-model/check.ts +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/scripts/event-model/drawio.test.ts +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/scripts/event-model/drawio.ts +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/scripts/event-model/example-model.ts +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/scripts/event-model/mermaid.ts +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/scripts/event-model/model.ts +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/scripts/event-model/package.json +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/scripts/event-model/page.ts +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/scripts/event-model/palette.ts +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/scripts/event-model/patch-mermaid-swimlanes.ts +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/scripts/event-model/readme.ts +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/scripts/event-model/render-drawio.ts +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/scripts/event-model/render.ts +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/scripts/event-model/requirements.txt +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/scripts/event-model/validate.ts +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/scripts/event-model/workspace.ts +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/scripts/extensions/menu.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/scripts/extensions/project.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/scripts/extensions/uipro/init.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/scripts/test_benchmark.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/LICENSE +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/REFERENCES.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/acceptance-review/LICENSE +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/acceptance-review/SKILL.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/acceptance-review/agents/openai.yaml +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/acceptance-review/references/source-notes.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/adversarial-testing/SKILL.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/adversarial-testing/resources/attack-catalogue.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/api-design/LICENSE +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/api-design/SKILL.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/api-design/resources/api-evolution.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/api-design/resources/api-security.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/api-design/resources/auth-security.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/api-design/resources/http-fundamentals.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/api-design/resources/problem-details.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/api-design/resources/source-notes.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/architecture-decisions/SKILL.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/bff-design/SKILL.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/bff-design/agents/openai.yaml +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/bff-design/references/adoption-and-granularity.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/bff-design/references/aggregation-and-resilience.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/bff-design/references/alternatives.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/bff-design/references/upstream-identity.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/bff-entry-points/SKILL.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/bff-entry-points/agents/openai.yaml +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/bff-entry-points/references/browser-session-coordination.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/bff-entry-points/references/endpoint-protection.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/bff-entry-points/references/enforcement-and-testing.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/bff-entry-points/references/hexagonal-auth-boundaries.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/bff-entry-points/references/hono-example.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/bff-entry-points/references/realtime-entry-points.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/characterisation-tests/SKILL.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/characterisation-tests/resources/modern-tooling.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/characterisation-tests/resources/writing-process.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/ci-debugging/SKILL.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/cli-design/LICENSE +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/cli-design/SKILL.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/cli-design/resources/composability.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/cli-design/resources/output-architecture.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/cli-design/resources/source-notes.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/cli-design/resources/stream-contracts.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/cli-design/resources/testing-cli.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/codebase-design/LICENSE +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/codebase-design/SKILL.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/codebase-design/agents/openai.yaml +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/codebase-design/references/deepening.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/codebase-design/references/design-it-twice.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/codebase-design/references/source-notes.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/debugging/SKILL.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/debugging/agents/openai.yaml +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/debugging/references/source-notes.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/diagrams/NOTICE +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/diagrams/SKILL.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/diagrams/references/source-notes.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/domain-driven-design/SKILL.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/domain-driven-design/resources/aggregate-design.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/domain-driven-design/resources/bounded-contexts.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/domain-driven-design/resources/domain-events.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/domain-driven-design/resources/domain-services.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/domain-driven-design/resources/error-modeling.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/domain-driven-design/resources/modelling-process.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/domain-driven-design/resources/references.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/domain-driven-design/resources/testing-by-layer.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/double-check/SKILL.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/double-check/resources/brief-template.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/double-check/resources/providers.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/evaluate-existing-solutions/SKILL.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/evaluate-existing-solutions/agents/openai.yaml +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/evaluate-existing-solutions/assets/solution-decision-template.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/evaluate-existing-solutions/references/evaluation-dimensions.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/evaluate-existing-solutions/references/evidence-and-currentness.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/event-modeling/NOTICE +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/event-modeling/SKILL.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/event-modeling/references/gwt-template.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/event-modeling/references/nine-steps.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/event-sourcing/SKILL.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/event-sourcing/resources/decider-and-rehydration.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/event-sourcing/resources/event-store.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/event-sourcing/resources/event-versioning.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/event-sourcing/resources/modelling-events.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/event-sourcing/resources/production-concerns.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/event-sourcing/resources/projections-and-read-models.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/event-sourcing/resources/references.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/event-sourcing/resources/testing-event-sourced-systems.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/event-sourcing/resources/when-to-use-event-sourcing.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/expectations/SKILL.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/find-gaps/SKILL.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/find-skills/LICENSE +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/find-skills/SKILL.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/find-skills/references/source-notes.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/finding-seams/SKILL.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/finding-seams/resources/creating-seams.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/finding-seams/resources/oop-patterns.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/finding-seams/resources/seam-types.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/folder-structure/SKILL.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/folder-structure/agents/openai.yaml +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/front-end-testing/SKILL.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/front-end-testing/resources/async-patterns.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/front-end-testing/resources/dom-testing-library-legacy.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/front-end-testing/resources/msw.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/front-end-testing/resources/playwright-e2e.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/frontend-design/LICENSE +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/frontend-design/SKILL.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/frontend-design/references/source-notes.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/functional/SKILL.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/functional/resources/composition-patterns.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/functional/resources/immutability-catalog.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/global-event-model/SKILL.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/hexagonal-architecture/SKILL.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/hexagonal-architecture/resources/cqrs-lite.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/hexagonal-architecture/resources/cross-cutting-concerns.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/hexagonal-architecture/resources/greenfield-sequence.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/hexagonal-architecture/resources/incremental-adoption.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/hexagonal-architecture/resources/references.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/hexagonal-architecture/resources/testing-hex-arch.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/hexagonal-architecture/resources/worked-example.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/improve-codebase-architecture/LICENSE +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/improve-codebase-architecture/SKILL.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/improve-codebase-architecture/agents/openai.yaml +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/improve-codebase-architecture/references/html-report.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/improve-codebase-architecture/references/source-notes.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/mutation-testing/SKILL.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/mutation-testing/resources/mutator-rules.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/observability/SKILL.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/observability/resources/node-patterns.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/observability/resources/references.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/observability/resources/slo-alerting.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/observability/resources/testing-telemetry.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/planning/SKILL.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/production-parity-skill-builder/SKILL.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/production-parity-skill-builder/resources/generated-skill-template.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/production-parity-skill-builder/resources/parity-surface-catalog.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/production-parity-skill-builder/resources/question-patterns.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/react-testing/SKILL.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/react-testing/resources/testing-library-react-legacy.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/reduce-system-complexity/LICENSE +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/reduce-system-complexity/SKILL.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/reduce-system-complexity/agents/openai.yaml +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/reduce-system-complexity/references/ledger-template.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/reduce-system-complexity/references/source-notes.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/refactoring/SKILL.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/secure-oauth-oidc/SKILL.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/secure-oauth-oidc/agents/openai.yaml +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/secure-oauth-oidc/references/attack-and-test-catalog.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/secure-oauth-oidc/references/oidc-validation.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/secure-oauth-oidc/references/review-and-delivery.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/secure-oauth-oidc/references/rfc9700-control-catalog.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/secure-oauth-oidc/references/standards-map.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/specification/SKILL.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/specification/resources/references.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/specification/resources/spec-review-template.html +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/stack-pull-requests/SKILL.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/stack-pull-requests/agents/openai.yaml +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/stack-pull-requests/references/source-notes.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/story-splitting/SKILL.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/story-splitting/resources/pattern-catalog.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/story-splitting/resources/source-notes.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/storyboard/SKILL.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/structure-codebase/SKILL.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/structure-codebase/agents/openai.yaml +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/structure-codebase/references/backend-patterns.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/structure-codebase/references/enforcement-and-migration.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/structure-codebase/references/frontend-patterns.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/structure-codebase/references/research-notes.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/structure-codebase/references/visible-hexagon.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/tdd/SKILL.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/tdd/resources/vitest-watch-feedback.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/teach-me/SKILL.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/teach-me/resources/assessment-patterns.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/teach-me/resources/course-generation.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/teach-me/resources/html-lessons.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/teach-me/resources/learning-science.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/teach-me/resources/session-management.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/technical-writing/LICENSE +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/technical-writing/SKILL.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/technical-writing/resources/agent-docs.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/technical-writing/resources/doc-types.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/technical-writing/resources/docs-quality.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/technical-writing/resources/formatting.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/technical-writing/resources/readme.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/technical-writing/resources/references.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/technical-writing/resources/source-notes.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/test-design-reviewer/SKILL.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/test-design-reviewer/references/source-notes.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/testing/SKILL.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/twelve-factor/SKILL.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/twelve-factor/resources/node-patterns.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/typescript-strict/SKILL.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/ubiquitous-language/SKILL.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/ubiquitous-language/resources/glossary-format.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/ubiquitous-language/resources/language-protocol.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/web-interface-guidelines/LICENSE +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/web-interface-guidelines/SKILL.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/web-interface-guidelines/references/guidelines.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/web-interface-guidelines/references/source-notes.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/wtf/LICENSE +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/wtf/SKILL.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/wtf/agents/openai.yaml +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/assets/toolkit/skills/wtf/references/source-notes.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/catalog.json +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/changelog.d/README.md +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/pyproject.toml +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/__init__.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/__main__.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/add_service.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/adopt.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/adopt_report.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/assets.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/axes.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/backends.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/capabilities.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/catalog.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/catch_up.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/changelog.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/cli.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/cli_add.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/cli_adopt.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/cli_prompts.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/converge.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/convergence.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/delivery_facts.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/ecosystems.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/errors.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/examples.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/extensions.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/features.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/images.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/layout.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/manifest.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/migrate.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/naming.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/origin.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/platform.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/preflight.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/probes.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/programme.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/__init__.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/add_commands.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/adopted.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/adopted_ci.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/adopted_targets.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/adversary.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/agent_targets.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/aws_docs.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/azure_docs.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/backing_service_prose.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/backing_services.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/benchmark.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/biome.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/ci_services.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/compose.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/composition.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/constitution_journey.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/converge_stage.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/convergence_page.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/cruise_agents.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/cruise_hand.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/cruise_record.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/cruise_seat.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/cruise_stops.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/cruise_told.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/cruise_unblock.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/decisions.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/demo_stop.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/deploy_workflow.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/design_page.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/docs.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/docs_index.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/drive_adoption.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/drive_settings.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/entry_stores.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/event_model.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/evolving.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/existing.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/flag_route.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/flags.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/frontend.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/gitignore.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/ground_command.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/guidance.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/infra.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/init_production.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/init_script.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/integration.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/languages/__init__.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/languages/go.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/languages/java.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/languages/java_quarkus.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/languages/java_spring.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/languages/python.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/languages/typescript.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/metadata.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/model_targets.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/model_to_code.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/mutation.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/native_commands.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/openapi.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/parallel_slices.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/pin_commands.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/pins.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/provisioning.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/read_side_layouts.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/readme.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/renovate.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/repository.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/run_skill.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/service_layouts.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/shared_packages.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/skills_page.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/strangle_command.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/structure_page.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/target_docs.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/whats_next.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/project/where_are_we.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/quick_wins.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/replay.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/resurvey.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/scaffold.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/selection.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/services.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/strategy.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/structure.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/survey.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/targets.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/tooling.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/upgrade.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/versions.py +0 -0
- {slipwai-1.2.1.dev13 → slipwai-1.3.0.dev8}/src/slipwai/wrappers.py +0 -0
|
@@ -2,6 +2,89 @@
|
|
|
2
2
|
|
|
3
3
|
No public releases yet. Release notes are recorded here newest first.
|
|
4
4
|
|
|
5
|
+
## 1.2.1 — PATCH
|
|
6
|
+
|
|
7
|
+
**`make check-imports` no longer reads a test of the domain as domain code.** The gate took any file with a
|
|
8
|
+
`domain/` or `application/` segment in its path for that layer, so a Decider spec at
|
|
9
|
+
`tests/domain/<context>.spec.ts` — exactly where `adversarial-testing` and `docs/event-modeling-to-code.md`
|
|
10
|
+
send it — was refused for importing its test runner ("domain imports 'vitest' — only zod may be imported
|
|
11
|
+
here"), and so was a test beside the Decider (`decider.test.ts`, `decider_test.go`, `test_decider.py`,
|
|
12
|
+
`DeciderTest.java`) that named a fake adapter. Test directories (`test/`, `tests/`, `__tests__/`) and test
|
|
13
|
+
files are now left to the level they are; the layer itself is held exactly as before. The path is also read
|
|
14
|
+
relative to `apps/` and `packages/`, so a checkout that happens to sit under a directory called `domain` no
|
|
15
|
+
longer turns every file into domain code.
|
|
16
|
+
|
|
17
|
+
**A `/cruise` run can no longer make a gate pass by changing the gate.** A run met `check-ux-gates` failing
|
|
18
|
+
because two of the kit's scripts crash where Chrome is not installed, and the bosun patched
|
|
19
|
+
`scripts/check-ux-gates.py` to report that as skipped, committed it, and went on. Its brief now forbids
|
|
20
|
+
touching anything under `scripts/`, the `Makefile`, anything under `tools/`, CI or a harness's hook settings,
|
|
21
|
+
and says what a gate the tree cannot satisfy becomes: a park with the gate's own words as the reason. The rule
|
|
22
|
+
is held in two places rather than said louder. `.claude/settings.json` runs `scripts/agents/cruise.py guard`
|
|
23
|
+
as Claude Code's `PreToolUse` hook on every editing tool, and in a session the runner started it refuses an
|
|
24
|
+
edit to any of those paths before it lands. And the runner takes the content of every gate and control before
|
|
25
|
+
each iteration and compares it after, on every harness: a file modified, deleted or added — a file installed
|
|
26
|
+
under `tools/` excepted — parks the run at once, names the files on the log entry as `controls_changed`, and
|
|
27
|
+
counts the iteration's last line for nothing. A person's own session meets neither.
|
|
28
|
+
|
|
29
|
+
**`check-ux-gates` runs on Playwright's own Chromium where Chrome is not installed, and never reports a
|
|
30
|
+
crash as a pass or a failure.** The gate now asks once which browser Playwright can open — Chrome, its bundled
|
|
31
|
+
Chromium, or neither — and where only the bundled one opens, starts every render gate with a Node preload that
|
|
32
|
+
retries the kit's `channel: 'chrome'` launch without the channel, so `verify_responsive.mjs` and
|
|
33
|
+
`verify_target_size.mjs` run there like the kit's other three. Where no browser opens, or Playwright is not
|
|
34
|
+
resolvable, the render gates are counted skipped without running one, and a gate that still fails on its launch
|
|
35
|
+
is reported skipped rather than as a finding; `UX_GATES_REQUIRE=1` still makes every skip a failure.
|
|
36
|
+
|
|
37
|
+
**`stop --now` returns once the runner has gone, not once it was told to go.** The runner ends the iteration's
|
|
38
|
+
session before it exits, which takes a moment, and a `start` typed the moment `stop --now` returned found the old
|
|
39
|
+
runner still alive and declined to start one — after which nobody was running and the watch seat found nobody to
|
|
40
|
+
watch. It now waits for the runner to be gone, up to thirty seconds, and says so if it is still ending after that.
|
|
41
|
+
|
|
42
|
+
**`/where-are-we` and `/whats-next` answer beside a running `/cruise`.** Both used to answer as if the person's
|
|
43
|
+
session were about to take the next slice — "Run: /drive S13" while the runner was on S13. Each now runs
|
|
44
|
+
`scripts/agents/cruise.py where` first, a read that prints the runner's iteration, the checkpoint's slice, stage
|
|
45
|
+
and next step, and a park's reason, and puts those lines in the reply; the step for a person is then the runner's,
|
|
46
|
+
with `/cruise`, `/cruise-tell` and `/cruise-stop` as what they can do. Where no runner is running the verb prints
|
|
47
|
+
nothing and both commands answer exactly as before, so nothing changes outside a run.
|
|
48
|
+
|
|
49
|
+
**`/cruise-watch` takes the watch seat on its own.** `/cruise-status` reads once and stops, and a session that
|
|
50
|
+
typed it to answer a question had left the seat; the way back was `/cruise`, which reads as starting a run.
|
|
51
|
+
`/cruise-watch` sits back down where the feed left off and starts nothing, with the seat's rules — its words
|
|
52
|
+
and `commands/cruise.md`'s are one text — and `make cruise-watch` stays the same seat from a terminal.
|
|
53
|
+
|
|
54
|
+
**Catch-up.** `slipwai migrate` brings the hook, the runner, the gate and the command text. A run that already
|
|
55
|
+
carries a patched gate is found by `git log -- scripts/` and reverted by hand; the runner parks on the next
|
|
56
|
+
change, not on the standing one.
|
|
57
|
+
|
|
58
|
+
**A slice branch run by `/cruise` can pass `make verify` again.** `check-slice-scope` refused two files that
|
|
59
|
+
two other gates require on a slice branch. `specs/<feature>/decisions.md`, which `/cruise` writes where the
|
|
60
|
+
ladder took the decision — during a slice's stages, that is the slice's branch — and which `check-decisions`
|
|
61
|
+
holds to `Written to` paths that exist only there, so the record could pass on neither branch. And
|
|
62
|
+
`docs/event-model/model.drawio`, which `check-drawio` requires to match the `model.yaml` block the slice is
|
|
63
|
+
allowed to advance, and which the scope gate refused as the host's docs. Both are now a slice's to write:
|
|
64
|
+
`decisions.md` beside the other cumulative artifacts the host merges in split order, and the canvas because
|
|
65
|
+
its own gate holds it to the model, so it can carry nothing of the slice's own. `commands/drive.md` and the
|
|
66
|
+
`drive-slice` brief say so, and say the canvas is regenerated again after each merge.
|
|
67
|
+
|
|
68
|
+
**A slice is compared with the newest `main` the checkout knows, not with `origin/main` first.** Both
|
|
69
|
+
`check-slice-scope` and `check-migrations` took `origin/main` as the base whenever it existed, so a `main`
|
|
70
|
+
that had moved locally and not been pushed — a migration run there, then merged into the slice — put its own
|
|
71
|
+
files into the slice's diff, and the slice stayed red until `main` was pushed, which `/catch-up`'s *green
|
|
72
|
+
before pushed* rule forbids while it is red. Every `main` is now tried and the base that is newest wins.
|
|
73
|
+
`/catch-up` and the upgrading page also say where a migration runs: on `main`, on a clean tree, never on a
|
|
74
|
+
`slice/<id>` branch.
|
|
75
|
+
|
|
76
|
+
**A decision `/cruise` takes that would cost a migration to reverse is also an ADR.** `commands/cruise.md`
|
|
77
|
+
now puts the `architecture-decisions` skill's one question to every decision entry — an event's schema or
|
|
78
|
+
name, stream identity, tenancy, the store, personal data, identity, a dependency, a contract — and where the
|
|
79
|
+
answer is a migration, the driver writes `docs/adr/NNNN-<title>.md` at `Proposed`, numbered the way `D<n>`
|
|
80
|
+
is, and names it in the entry's `Written to`. The skipper returns the five sections with its entry, or says
|
|
81
|
+
in a line why the decision is reversible. The owner brief and the cruise report say a person accepts them.
|
|
82
|
+
`check-slice-scope` allows a new ADR on a slice branch, and refuses an edit to one that stands.
|
|
83
|
+
|
|
84
|
+
**Catch-up.** `slipwai migrate` brings the two gates and the command text. A slice branch red on
|
|
85
|
+
`decisions.md` or `model.drawio` passes as it stands after the merge; a migration already run on a slice
|
|
86
|
+
branch is undone with `git reset --hard ORIG_HEAD` there and run again on `main`.
|
|
87
|
+
|
|
5
88
|
## 1.2.0 — MINOR
|
|
6
89
|
|
|
7
90
|
**A benchmark bracket now counts only its own lines, an entry a session leaves open is cut off rather than left
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.5
|
|
2
2
|
Name: slipwai
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.3.0.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
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
1.3.0.dev8
|
|
@@ -227,6 +227,41 @@ when it starts a task and the task role is untouched, while the agent runs insid
|
|
|
227
227
|
task role. `infra/service/flags.tf` has the whole argument, including why the stack owns the AppConfig
|
|
228
228
|
profile but not the document in it.
|
|
229
229
|
|
|
230
|
+
## Changing the stacks
|
|
231
|
+
|
|
232
|
+
### Adding IAM to the service stack
|
|
233
|
+
|
|
234
|
+
The deploy role applies `service/`, and it may create and delete only what `bootstrap/main.tf` grants it:
|
|
235
|
+
PowerUserAccess, which excludes IAM, and IAM back on roles named `<project>-*`. An IAM user, a managed
|
|
236
|
+
policy, an instance profile or anything else outside roles is refused by AWS at the production apply,
|
|
237
|
+
part-way, after the apply has changed what it reached first. `make check-deploy-role` — part of `make
|
|
238
|
+
verify` — reads both stacks and fails first, naming each `aws_iam_*` resource whose create or delete action
|
|
239
|
+
the role is not granted on that kind of resource. The fix is never in `service/` and never in the IAM
|
|
240
|
+
console: add the actions to a statement of `data.aws_iam_policy_document.deploy_iam` in `bootstrap/main.tf`,
|
|
241
|
+
scoped to this project's names the way the role statement is, and have a person with administrator
|
|
242
|
+
credentials run `make bootstrap` before the change merges. A deploy refused on an `iam:` action anyway says
|
|
243
|
+
the same thing.
|
|
244
|
+
|
|
245
|
+
### Renaming or retiring a resource
|
|
246
|
+
|
|
247
|
+
OpenTofu keys state by address, so renaming a resource block, or moving it into a `for_each` or a module,
|
|
248
|
+
reads as destroying the old address and creating a new one — unless a `moved` block says the two are one:
|
|
249
|
+
|
|
250
|
+
```hcl
|
|
251
|
+
moved {
|
|
252
|
+
from = aws_cloudfront_response_headers_policy.web_noindex
|
|
253
|
+
to = aws_cloudfront_response_headers_policy.web
|
|
254
|
+
}
|
|
255
|
+
```
|
|
256
|
+
|
|
257
|
+
With it, the rename is an in-place update. Without it the apply creates the new resource, then destroys the
|
|
258
|
+
old one — and the old one's destroy is not ordered after the in-place update of whatever still uses it, so a
|
|
259
|
+
provider that refuses to delete something in use (CloudFront answers 409) fails the apply part-way, in every
|
|
260
|
+
environment it reaches. A block that is only being dropped from the code, while what it made carries on
|
|
261
|
+
existing or is removed by hand, is a `removed` block (`removed { from = … lifecycle { destroy = false } }`),
|
|
262
|
+
which forgets it rather than deleting it. Both stay in the stack until every environment has been applied
|
|
263
|
+
past them; `tofu plan` showing `has moved to` or `will no longer be managed`, and no destroy, is the check.
|
|
264
|
+
|
|
230
265
|
## What lives where
|
|
231
266
|
|
|
232
267
|
- **Environment variables the services are given** — `service/main.tf`, composed from what each answer
|
|
@@ -240,7 +240,9 @@ resource "aws_iam_role" "deploy" {
|
|
|
240
240
|
|
|
241
241
|
# PowerUserAccess is everything but IAM, and the service stack has to create the three roles ECS runs under
|
|
242
242
|
# — so the deploy role gets IAM back, scoped to roles carrying this project's name. Narrow this further once
|
|
243
|
-
# the service stack has settled: `tofu plan` lists exactly what it touches.
|
|
243
|
+
# the service stack has settled: `tofu plan` lists exactly what it touches. `make check-deploy-role` holds
|
|
244
|
+
# every `aws_iam_*` resource in infra/service/ to the statements below; IAM of another kind (a user, a
|
|
245
|
+
# policy) is a statement added here and a `make bootstrap`, which the pipeline cannot do for itself.
|
|
244
246
|
resource "aws_iam_role_policy_attachment" "deploy_power_user" {
|
|
245
247
|
role = aws_iam_role.deploy.name
|
|
246
248
|
policy_arn = "arn:aws:iam::aws:policy/PowerUserAccess"
|
|
@@ -0,0 +1,169 @@
|
|
|
1
|
+
#!/usr/bin/env python3
|
|
2
|
+
"""Fail when the service stack declares IAM the deploy role is not allowed to create or delete.
|
|
3
|
+
|
|
4
|
+
Two stacks meet at the deploy role, and nothing else connects them. `infra/bootstrap/` makes the role once,
|
|
5
|
+
applied by a person with admin credentials (`make bootstrap`): PowerUserAccess, which is everything but IAM,
|
|
6
|
+
and IAM back on roles carrying this project's name. `infra/service/` is applied by that role on every push to
|
|
7
|
+
`main`, and is free to declare any `aws_iam_*` resource. So a slice that adds an IAM user, a managed policy or
|
|
8
|
+
an instance profile passes every gate, merges, and the first place the two stacks meet is the production
|
|
9
|
+
apply — which is refused part-way, after it has changed whatever it reached first, on an action the
|
|
10
|
+
pipeline cannot grant itself. The person who reads that failure goes looking for the permission in the
|
|
11
|
+
console, when the answer is a statement in `infra/bootstrap/main.tf` and a `make bootstrap`.
|
|
12
|
+
|
|
13
|
+
This reads both stacks and holds each `aws_iam_*` resource under `infra/service/` to the policies the
|
|
14
|
+
bootstrap stack attaches to `aws_iam_role.deploy`: the action that creates it and the one that deletes it,
|
|
15
|
+
each granted on a resource of the same kind (`role/`, `user/`, `policy/`, …) or on `*`. It reads files, runs
|
|
16
|
+
no `tofu` and no `aws`, and needs nothing running.
|
|
17
|
+
|
|
18
|
+
What it does not see, said so a pass is not over-read: the name a resource is given against the name the
|
|
19
|
+
grant is scoped to (both are usually interpolated, and the answer is in the plan, not the text); the read,
|
|
20
|
+
tag and update actions an apply also calls (PowerUserAccess covers none of them, so the bootstrap policy
|
|
21
|
+
lists them beside each create); and IAM declared inside a module. A resource type it has no row for is a
|
|
22
|
+
failure, never a pass, and the message says where the row goes.
|
|
23
|
+
"""
|
|
24
|
+
from __future__ import annotations
|
|
25
|
+
|
|
26
|
+
import re
|
|
27
|
+
import sys
|
|
28
|
+
from fnmatch import fnmatchcase
|
|
29
|
+
from pathlib import Path
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
def project_root(script: Path, depth: int) -> Path:
|
|
33
|
+
for candidate in script.parents:
|
|
34
|
+
if (candidate / "project.json").is_file():
|
|
35
|
+
return candidate
|
|
36
|
+
return script.parents[depth]
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
ROOT = project_root(Path(__file__).resolve(), 1)
|
|
40
|
+
BOOTSTRAP = ROOT / "infra/bootstrap"
|
|
41
|
+
SERVICE = ROOT / "infra/service"
|
|
42
|
+
|
|
43
|
+
# What tofu calls to create and to delete each IAM resource type, and the kind of IAM resource ARN the call
|
|
44
|
+
# is authorised against. The kind is the segment after the account in the ARN: `arn:aws:iam::<account>:<kind>/…`.
|
|
45
|
+
TYPES: dict[str, tuple[str, tuple[str, str]]] = {
|
|
46
|
+
"aws_iam_role": ("role", ("iam:CreateRole", "iam:DeleteRole")),
|
|
47
|
+
"aws_iam_role_policy": ("role", ("iam:PutRolePolicy", "iam:DeleteRolePolicy")),
|
|
48
|
+
"aws_iam_role_policy_attachment": ("role", ("iam:AttachRolePolicy", "iam:DetachRolePolicy")),
|
|
49
|
+
"aws_iam_service_linked_role": ("role", ("iam:CreateServiceLinkedRole", "iam:DeleteServiceLinkedRole")),
|
|
50
|
+
"aws_iam_user": ("user", ("iam:CreateUser", "iam:DeleteUser")),
|
|
51
|
+
"aws_iam_user_policy": ("user", ("iam:PutUserPolicy", "iam:DeleteUserPolicy")),
|
|
52
|
+
"aws_iam_user_policy_attachment": ("user", ("iam:AttachUserPolicy", "iam:DetachUserPolicy")),
|
|
53
|
+
"aws_iam_access_key": ("user", ("iam:CreateAccessKey", "iam:DeleteAccessKey")),
|
|
54
|
+
"aws_iam_user_login_profile": ("user", ("iam:CreateLoginProfile", "iam:DeleteLoginProfile")),
|
|
55
|
+
"aws_iam_user_group_membership": ("group", ("iam:AddUserToGroup", "iam:RemoveUserFromGroup")),
|
|
56
|
+
"aws_iam_group": ("group", ("iam:CreateGroup", "iam:DeleteGroup")),
|
|
57
|
+
"aws_iam_group_policy": ("group", ("iam:PutGroupPolicy", "iam:DeleteGroupPolicy")),
|
|
58
|
+
"aws_iam_group_policy_attachment": ("group", ("iam:AttachGroupPolicy", "iam:DetachGroupPolicy")),
|
|
59
|
+
"aws_iam_group_membership": ("group", ("iam:AddUserToGroup", "iam:RemoveUserFromGroup")),
|
|
60
|
+
"aws_iam_policy": ("policy", ("iam:CreatePolicy", "iam:DeletePolicy")),
|
|
61
|
+
"aws_iam_instance_profile": ("instance-profile", ("iam:CreateInstanceProfile", "iam:DeleteInstanceProfile")),
|
|
62
|
+
"aws_iam_openid_connect_provider": ("oidc-provider",
|
|
63
|
+
("iam:CreateOpenIDConnectProvider", "iam:DeleteOpenIDConnectProvider")),
|
|
64
|
+
"aws_iam_saml_provider": ("saml-provider", ("iam:CreateSAMLProvider", "iam:DeleteSAMLProvider")),
|
|
65
|
+
}
|
|
66
|
+
STRING = r'"(?:\\.|[^"\\])*"'
|
|
67
|
+
LITERAL = re.compile(STRING)
|
|
68
|
+
COMMENT = re.compile(rf"({STRING})|#[^\n]*|//[^\n]*|/\*.*?\*/", re.DOTALL)
|
|
69
|
+
RESOURCE = re.compile(r'\bresource\s+"(aws_iam_[a-z0-9_]+)"\s+"([^"]+)"')
|
|
70
|
+
ARN_KIND = re.compile(r"^arn:[^:]*:iam::[^:]*:([a-z-]+)/")
|
|
71
|
+
|
|
72
|
+
|
|
73
|
+
def uncommented(text: str) -> str:
|
|
74
|
+
"""HCL without its comments; a `#` inside a string is part of the string."""
|
|
75
|
+
return COMMENT.sub(lambda match: match.group(1) or "", text)
|
|
76
|
+
|
|
77
|
+
|
|
78
|
+
def body(text: str, opening: int) -> str:
|
|
79
|
+
"""What is between the brace at `opening` and the one that closes it, stepping over strings — whose
|
|
80
|
+
`${…}` interpolations carry braces of their own."""
|
|
81
|
+
depth, index = 0, opening
|
|
82
|
+
while index < len(text):
|
|
83
|
+
character = text[index]
|
|
84
|
+
if character == '"':
|
|
85
|
+
literal = LITERAL.match(text, index)
|
|
86
|
+
index = literal.end() if literal else len(text) # an unterminated string runs to the end
|
|
87
|
+
continue
|
|
88
|
+
depth += {"{": 1, "}": -1}.get(character, 0)
|
|
89
|
+
if depth == 0:
|
|
90
|
+
return text[opening + 1:index]
|
|
91
|
+
index += 1
|
|
92
|
+
return text[opening + 1:]
|
|
93
|
+
|
|
94
|
+
|
|
95
|
+
def blocks(text: str, header: str) -> list[tuple[re.Match[str], str]]:
|
|
96
|
+
return [(match, body(text, match.end() - 1)) for match in re.finditer(header + r"\s*\{", text)]
|
|
97
|
+
|
|
98
|
+
|
|
99
|
+
def strings(listing: str) -> list[str]:
|
|
100
|
+
return [literal[1:-1] for literal in LITERAL.findall(listing)]
|
|
101
|
+
|
|
102
|
+
|
|
103
|
+
def deploy_grants(text: str) -> list[tuple[list[str], list[str]]]:
|
|
104
|
+
"""Every Allow statement of every policy document the bootstrap stack attaches to `aws_iam_role.deploy`."""
|
|
105
|
+
attached = set()
|
|
106
|
+
for _, inline in blocks(text, r'\bresource\s+"aws_iam_role_policy"\s+"[^"]+"'):
|
|
107
|
+
if re.search(r"\brole\s*=\s*aws_iam_role\.deploy\.(?:id|name)\b", inline):
|
|
108
|
+
attached |= set(re.findall(r"\bpolicy\s*=\s*data\.aws_iam_policy_document\.([A-Za-z0-9_-]+)\.json", inline))
|
|
109
|
+
grants = []
|
|
110
|
+
for match, document in blocks(text, r'\bdata\s+"aws_iam_policy_document"\s+"([^"]+)"'):
|
|
111
|
+
if match.group(1) not in attached:
|
|
112
|
+
continue
|
|
113
|
+
for _, statement in blocks(document, r"\bstatement"):
|
|
114
|
+
if re.search(r'\beffect\s*=\s*"Deny"', statement):
|
|
115
|
+
continue
|
|
116
|
+
actions = re.search(r"\bactions\s*=\s*\[(.*?)\]", statement, re.DOTALL)
|
|
117
|
+
resources = re.search(r"\bresources\s*=\s*\[(.*?)\]", statement, re.DOTALL)
|
|
118
|
+
if actions and resources:
|
|
119
|
+
grants.append((strings(actions.group(1)), strings(resources.group(1))))
|
|
120
|
+
return grants
|
|
121
|
+
|
|
122
|
+
|
|
123
|
+
def granted(action: str, kind: str, grants: list[tuple[list[str], list[str]]]) -> bool:
|
|
124
|
+
for actions, resources in grants:
|
|
125
|
+
if not any(fnmatchcase(action.lower(), pattern.lower()) for pattern in actions):
|
|
126
|
+
continue
|
|
127
|
+
for resource in resources:
|
|
128
|
+
found = ARN_KIND.match(resource)
|
|
129
|
+
if resource == "*" or (found and found.group(1) == kind):
|
|
130
|
+
return True
|
|
131
|
+
return False
|
|
132
|
+
|
|
133
|
+
|
|
134
|
+
def main() -> int:
|
|
135
|
+
if not (BOOTSTRAP / "main.tf").is_file() or not SERVICE.is_dir():
|
|
136
|
+
print("check-deploy-role: no infra/bootstrap/main.tf and infra/service/ here; nothing to compare")
|
|
137
|
+
return 0
|
|
138
|
+
grants = deploy_grants("\n".join(uncommented(path.read_text()) for path in sorted(BOOTSTRAP.glob("*.tf"))))
|
|
139
|
+
problems, checked = [], 0
|
|
140
|
+
for path in sorted(SERVICE.rglob("*.tf")):
|
|
141
|
+
relative = path.relative_to(ROOT).as_posix()
|
|
142
|
+
for match in RESOURCE.finditer(uncommented(path.read_text())):
|
|
143
|
+
kind_actions = TYPES.get(match.group(1))
|
|
144
|
+
address = f"{match.group(1)}.{match.group(2)}"
|
|
145
|
+
if kind_actions is None:
|
|
146
|
+
problems.append(f"{relative}: {address} is an IAM type this gate has no row for, so it cannot say "
|
|
147
|
+
"whether the deploy role may create it — add its create and delete actions to TYPES "
|
|
148
|
+
"in scripts/check-deploy-role.py, and to the bootstrap policy if they are missing")
|
|
149
|
+
continue
|
|
150
|
+
checked += 1
|
|
151
|
+
kind, actions = kind_actions
|
|
152
|
+
for action in actions:
|
|
153
|
+
if not granted(action, kind, grants):
|
|
154
|
+
problems.append(f"{relative}: {address} needs {action} on {kind}/…, and the deploy role is "
|
|
155
|
+
f"granted it on no {kind}")
|
|
156
|
+
if problems:
|
|
157
|
+
print("check-deploy-role: FAILED — the service stack declares IAM the deploy role cannot manage, so the "
|
|
158
|
+
"production apply would be refused part-way\n - " + "\n - ".join(problems))
|
|
159
|
+
print("The fix is not in infra/service/ and not in the pipeline: add the actions to a statement of "
|
|
160
|
+
"`data.aws_iam_policy_document.deploy_iam` in infra/bootstrap/main.tf, scoped the way the role "
|
|
161
|
+
"statement is (`arn:aws:iam::${local.account}:<kind>/${var.project}-*`), and have someone with "
|
|
162
|
+
"admin AWS credentials run `make bootstrap`. The deploy role cannot grant itself what it lacks.")
|
|
163
|
+
return 1
|
|
164
|
+
print(f"check-deploy-role: {checked} IAM resource(s) in infra/service/, each within the deploy role's grants")
|
|
165
|
+
return 0
|
|
166
|
+
|
|
167
|
+
|
|
168
|
+
if __name__ == "__main__":
|
|
169
|
+
raise SystemExit(main())
|
|
@@ -28,6 +28,7 @@ from __future__ import annotations
|
|
|
28
28
|
|
|
29
29
|
import json
|
|
30
30
|
import os
|
|
31
|
+
import re
|
|
31
32
|
import shutil
|
|
32
33
|
import subprocess
|
|
33
34
|
import sys
|
|
@@ -52,6 +53,10 @@ HEALTH_PATH = "/health"
|
|
|
52
53
|
# How long a migrate task may run before it is stopped and the deploy fails. Generous for a real migration
|
|
53
54
|
# on the smallest RDS instance; short enough that a task that is serving instead of migrating is caught.
|
|
54
55
|
MIGRATION_MINUTES = 15
|
|
56
|
+
# How AWS words a call the deploy role has no grant for, as `tofu apply` prints it. An IAM action refused
|
|
57
|
+
# here is not the pipeline's to fix: the role's grants are `infra/bootstrap/`, applied by `make bootstrap`
|
|
58
|
+
# with admin credentials, and the console is where somebody reading the error will otherwise go looking.
|
|
59
|
+
DENIED_IAM = re.compile(r"not authorized to perform: (iam:[A-Za-z]+)")
|
|
55
60
|
# How many times a failed task's log stream is read before it is called empty. A task reported STOPPED has
|
|
56
61
|
# usually flushed, but not always, and the lines that explain the failure are the last ones written.
|
|
57
62
|
LOG_ATTEMPTS = 4
|
|
@@ -265,12 +270,30 @@ def outputs() -> dict:
|
|
|
265
270
|
|
|
266
271
|
|
|
267
272
|
def apply(environment: str, images: dict[str, str], *targets: str) -> dict:
|
|
268
|
-
|
|
269
|
-
|
|
273
|
+
"""The service stack applied, its stderr passed through as it comes and read for an IAM refusal, which is
|
|
274
|
+
turned into the one thing that fixes it: `make bootstrap`, by a person, with admin credentials."""
|
|
275
|
+
command = [
|
|
276
|
+
"tofu", f"-chdir={INFRA}", "apply", "-input=false", "-auto-approve",
|
|
270
277
|
f"-var-file={environment}.tfvars",
|
|
271
278
|
f"-var=images={json.dumps(images)}",
|
|
272
279
|
*(f"-target={target}" for target in targets),
|
|
273
|
-
|
|
280
|
+
]
|
|
281
|
+
print("+", " ".join(command), file=sys.stderr, flush=True)
|
|
282
|
+
process = subprocess.Popen(command, text=True, stdout=sys.stderr, stderr=subprocess.PIPE)
|
|
283
|
+
denied: list[str] = []
|
|
284
|
+
for line in process.stderr or ():
|
|
285
|
+
sys.stderr.write(line)
|
|
286
|
+
denied += [action for action in DENIED_IAM.findall(line) if action not in denied]
|
|
287
|
+
if process.wait() != 0 and denied:
|
|
288
|
+
raise Failure(
|
|
289
|
+
f"the apply was refused {', '.join(denied)}, which the deploy role is not granted. The role's grants "
|
|
290
|
+
"are infra/bootstrap/main.tf (`data.aws_iam_policy_document.deploy_iam`), not the service stack and not "
|
|
291
|
+
"the IAM console: add the action there, scoped to this project's names, and have someone with admin "
|
|
292
|
+
"AWS credentials run `make bootstrap`; then re-run the deploy. The apply stopped part-way, so this "
|
|
293
|
+
"environment is between releases until it does."
|
|
294
|
+
)
|
|
295
|
+
if process.returncode != 0:
|
|
296
|
+
raise Failure(f"`tofu apply` exited {process.returncode}")
|
|
274
297
|
return outputs()
|
|
275
298
|
|
|
276
299
|
|
|
@@ -275,6 +275,28 @@ the platform resolves the values before the process starts and the app never tal
|
|
|
275
275
|
free tier of App Configuration allows **one store per subscription per region**, so a second environment
|
|
276
276
|
opting in needs the standard tier at roughly $36 a month. `infra/service/flags.tf` has the whole argument.
|
|
277
277
|
|
|
278
|
+
## Changing the stacks
|
|
279
|
+
|
|
280
|
+
### Renaming or retiring a resource
|
|
281
|
+
|
|
282
|
+
OpenTofu keys state by address, so renaming a resource block, or moving it into a `for_each` or a module,
|
|
283
|
+
reads as destroying the old address and creating a new one — unless a `moved` block says the two are one:
|
|
284
|
+
|
|
285
|
+
```hcl
|
|
286
|
+
moved {
|
|
287
|
+
from = azurerm_container_app.api
|
|
288
|
+
to = azurerm_container_app.service
|
|
289
|
+
}
|
|
290
|
+
```
|
|
291
|
+
|
|
292
|
+
With it, the rename is an in-place update. Without it the apply creates the new resource, then destroys the
|
|
293
|
+
old one — and the old one's destroy is not ordered after the in-place update of whatever still uses it, so a
|
|
294
|
+
provider that refuses to delete something in use fails the apply part-way, in every
|
|
295
|
+
environment it reaches. A block that is only being dropped from the code, while what it made carries on
|
|
296
|
+
existing or is removed by hand, is a `removed` block (`removed { from = … lifecycle { destroy = false } }`),
|
|
297
|
+
which forgets it rather than deleting it. Both stay in the stack until every environment has been applied
|
|
298
|
+
past them; `tofu plan` showing `has moved to` or `will no longer be managed`, and no destroy, is the check.
|
|
299
|
+
|
|
278
300
|
## What lives where
|
|
279
301
|
|
|
280
302
|
- **Environment variables the services are given** — `service/main.tf`, composed from what each answer
|
|
@@ -86,8 +86,10 @@ project with no index. Both lists name the route back (`mcp_*` on Gemini, one `<
|
|
|
86
86
|
this project's extensions install on Copilot), which costs nothing that was being held, because both already
|
|
87
87
|
carry the whole shell. The other four reach the session's servers whatever the file says — Claude Code and
|
|
88
88
|
Codex inherit them, Cursor inherits every tool, opencode's `permission` map is a denylist — and on Claude Code
|
|
89
|
-
|
|
90
|
-
before it can call it
|
|
89
|
+
an MCP tool arrives *deferred*, a bare name the delegate has to load through the harness's own tool-search step
|
|
90
|
+
before it can call it — unless the server's `.mcp.json` entry carries `alwaysLoad: true`, which the registry's
|
|
91
|
+
`projectMcp.serverFields` has the CodeGraph extension write, so its tool is loaded at session start. Every
|
|
92
|
+
harness also has `scripts/codegraph`, the pinned CLI, through the shell. `registry.json` records all of that under `agentFile.mcp`, with the source and the date
|
|
91
93
|
it was read, and every projection's stamp carries it, so a route a harness withholds is one somebody can read.
|
|
92
94
|
|
|
93
95
|
Because the model lives in these files on five of the six harnesses, `/model-delegation-settings` rewrites them as part of the
|