slipwai 1.3.0.dev44__tar.gz → 1.4.0.dev10__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.3.0.dev44 → slipwai-1.4.0.dev10}/CHANGELOG.md +426 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/PKG-INFO +11 -13
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/README.md +10 -12
- slipwai-1.4.0.dev10/VERSION +1 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/adoption/scripts/check-convergence.py +6 -6
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/adoption/scripts/ratchet.py +3 -3
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/prune.py +17 -17
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/python/migrations_apply.py +1 -1
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/python/openapi_export.py +3 -1
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/scripts/go-coverage.py +1 -1
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/scripts/go-mutation.py +8 -8
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/profiles/event-modelling/docs/speckit-preset.md +6 -3
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/profiles/standard/docs/speckit-preset.md +6 -3
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/targets/aws/scripts/bootstrap.py +6 -6
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/targets/aws/scripts/check-deploy-role.py +2 -2
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/targets/aws/scripts/check-flags.py +3 -3
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/targets/aws/scripts/deploy.py +12 -12
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/targets/azure/scripts/bootstrap.py +8 -8
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/targets/azure/scripts/check-flags.py +3 -3
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/targets/azure/scripts/deploy.py +11 -11
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/scripts/agents/benchmark.py +11 -11
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/scripts/agents/code_index.py +4 -4
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/scripts/agents/cruise.py +34 -34
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/scripts/agents/drive.py +2 -2
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/scripts/agents/models.py +4 -4
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/scripts/agents/project.py +18 -18
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/scripts/check-constitution.py +4 -4
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/scripts/check-decisions.py +10 -10
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/scripts/check-imports.py +7 -7
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/scripts/check-migrations.py +2 -2
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/scripts/check-slice-scope.py +2 -2
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/scripts/check-speckit.py +6 -6
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/scripts/check-styles.py +4 -4
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/scripts/check-ux-gates.py +6 -6
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/scripts/event-model/check.py +2 -2
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/scripts/extensions/guidance.py +12 -12
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/scripts/extensions/menu.py +1 -1
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/scripts/extensions/uipro/init.py +3 -3
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/scripts/extensions/ux-gates/init.py +3 -3
- slipwai-1.4.0.dev10/changelog.d/generate-runs-init.md +15 -0
- slipwai-1.4.0.dev10/changelog.d/pyyaml-without-activation.md +16 -0
- slipwai-1.4.0.dev10/changelog.d/windows-utf8-and-line-endings.md +25 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/add_service.py +2 -2
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/adopt.py +10 -10
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/assets.py +2 -2
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/catalog.py +1 -1
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/catch_up.py +1 -1
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/changelog.py +1 -1
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/cli.py +48 -2
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/cli_init.py +84 -11
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/confirm.py +1 -1
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/converge.py +6 -4
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/ecosystems.py +1 -1
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/examples.py +1 -1
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/harness.py +2 -2
- slipwai-1.4.0.dev10/src/slipwai/host.py +144 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/manifest.py +1 -1
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/migrate.py +2 -2
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/next_steps.py +2 -2
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/platform.py +1 -1
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/preflight.py +24 -4
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/adopted.py +3 -1
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/backing_services.py +5 -5
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/biome.py +3 -3
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/constitution_journey.py +1 -1
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/event_model.py +1 -1
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/flag_route.py +1 -1
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/frontend.py +5 -5
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/gitignore.py +1 -1
- slipwai-1.4.0.dev10/src/slipwai/project/init_pyyaml.py +55 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/init_script.py +3 -37
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/languages/go.py +3 -3
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/languages/python.py +1 -1
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/languages/typescript.py +1 -1
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/model_targets.py +5 -1
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/openapi.py +1 -1
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/pins.py +15 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/stage_models.py +1 -1
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/strangle_command.py +1 -1
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/resurvey.py +7 -6
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/scaffold.py +7 -4
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/strategy.py +2 -2
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/survey.py +2 -2
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/toolkit.py +3 -2
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/uncommitted.py +2 -2
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/upgrade.py +1 -1
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/wrappers.py +1 -1
- slipwai-1.3.0.dev44/VERSION +0 -1
- slipwai-1.3.0.dev44/changelog.d/a-refusal-comes-before-the-work.md +0 -10
- slipwai-1.3.0.dev44/changelog.d/a-wrapped-application-begins-as-a-candidate.md +0 -40
- slipwai-1.3.0.dev44/changelog.d/adopt-knows-which-agent.md +0 -29
- slipwai-1.3.0.dev44/changelog.d/adopt-next-and-intro-repair.md +0 -23
- slipwai-1.3.0.dev44/changelog.d/code-index-held.md +0 -35
- slipwai-1.3.0.dev44/changelog.d/deploy-role-scope.md +0 -21
- slipwai-1.3.0.dev44/changelog.d/design-review-is-a-stage.md +0 -28
- slipwai-1.3.0.dev44/changelog.d/four-small-things-a-real-run-found.md +0 -26
- slipwai-1.3.0.dev44/changelog.d/gates-a-migration-can-pass.md +0 -33
- slipwai-1.3.0.dev44/changelog.d/ground-asks-how-much-to-explain.md +0 -18
- slipwai-1.3.0.dev44/changelog.d/ground-records-answers-and-commits-once.md +0 -22
- slipwai-1.3.0.dev44/changelog.d/ground-says-what-an-answer-does.md +0 -18
- slipwai-1.3.0.dev44/changelog.d/ground-says-what-an-application-is.md +0 -14
- slipwai-1.3.0.dev44/changelog.d/setup-go-workspace-cache.md +0 -7
- slipwai-1.3.0.dev44/changelog.d/the-first-repository-somebody-else-adopted.md +0 -41
- slipwai-1.3.0.dev44/changelog.d/the-gate-is-green-after-ground.md +0 -18
- slipwai-1.3.0.dev44/changelog.d/the-ratchet-sees-findings-below-the-root.md +0 -19
- slipwai-1.3.0.dev44/changelog.d/the-record-catches-up-with-init.md +0 -20
- slipwai-1.3.0.dev44/changelog.d/ux-gates-at-scale.md +0 -21
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/.gitignore +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/LICENSE +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/NOTICE +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/README.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/adoption/docs/change-strategy.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/adoption/support.json +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/adoption/wrappers/gradle/gradle-wrapper.jar.base64 +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/adoption/wrappers/gradle/gradle-wrapper.properties +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/adoption/wrappers/gradle/gradlew +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/adoption/wrappers/gradle/gradlew.bat +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/adoption/wrappers/gradle/source-notes.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/docker-compose.yml +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/env.example +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/go/checkpoint_store_contract.go +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/go/checkpoint_store_memory.go +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/go/checkpoint_store_memory_test.go +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/go/checkpoint_store_postgres.go +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/go/checkpoint_store_postgres_integration_test.go +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/go/checkpoint_store_sqlite.go +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/go/checkpoint_store_sqlite_test.go +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/go/config.go +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/go/config_test.go +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/go/event_store_contract.go +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/go/event_store_memory.go +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/go/event_store_memory_test.go +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/go/event_store_postgres.go +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/go/event_store_postgres_integration_test.go +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/go/event_store_sqlite.go +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/go/event_store_sqlite_test.go +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/go/events.go +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/go/http_app.go +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/go/http_app_test.go +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/go/http_openapi_test.go +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/go/http_security.go +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/go/http_security_test.go +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/go/migrate_main.go +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/go/migrate_main_test.go +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/go/migrations_embed.go +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/go/migrations_keep +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/go/oidc_keycloak.go +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/go/oidc_keycloak_test.go +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/go/openapi.yaml +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/go/projections.go +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/go/projections_test.go +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/go/projections_ticker.go +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/go/projections_ticker_test.go +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/go/read_models.go +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/go/serve_main.go +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/go/tracing.go +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/go/tracing_test.go +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/go/users_oidc_keycloak.go +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/go/users_oidc_keycloak_test.go +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/java/actor.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/java/append_result.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/java/causation_id.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/java/checkpoint_store_memory.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/java/checkpoint_store_postgres.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/java/checkpoint_store_sqlite.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/java/committed_event.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/java/condition.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/java/conditional_append_result.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/java/correlation_id.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/java/database_url.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/java/domain_event.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/java/event_store.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/java/event_store_exception.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/java/event_store_memory.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/java/event_store_memory_database.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/java/event_store_postgres.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/java/event_store_sqlite.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/java/event_visitor.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/java/http_schema_failure.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/java/migrate_main.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/java/oidc_keycloak.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/java/projection.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/java/projections.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/java/read_models.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/java/tag_query.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/java/tagged_read.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/java/tags_of.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/java/tests/checkpoint_store_contract.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/java/tests/checkpoint_store_memory_test.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/java/tests/checkpoint_store_sqlite_test.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/java/tests/database_url_test.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/java/tests/event_store_contract.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/java/tests/event_store_memory_test.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/java/tests/event_store_sqlite_test.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/java/tests/oidc_keycloak_test.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/java/tests/projections_test.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/java/tests/users_oidc_keycloak_test.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/java/transactions.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/java/users_oidc_keycloak.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/java-quarkus/config_source_registration +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/java-quarkus/database_url_config_source.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/java-quarkus/http_flags_resource.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/java-quarkus/http_health_check.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/java-quarkus/http_not_found_mapper.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/java-quarkus/jta_transactions.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/java-quarkus/oidc_keycloak_augmentor.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/java-quarkus/scheduled_projections.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/java-quarkus/tests/checkpoint_store_postgres_it.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/java-quarkus/tests/event_store_postgres_it.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/java-quarkus/tests/http_app_test.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/java-quarkus/users_current_customer.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/java-spring/database_url_environment_post_processor.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/java-spring/environment_post_processor_registration +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/java-spring/http_flags_controller.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/java-spring/http_health_indicator.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/java-spring/http_not_found_advice.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/java-spring/oidc_keycloak_security.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/java-spring/scheduled_projections.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/java-spring/spring_transactions.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/java-spring/tests/checkpoint_store_postgres_it.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/java-spring/tests/event_store_postgres_it.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/java-spring/tests/http_app_test.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/java-spring/users_security.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/keycloak/README.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/keycloak/realms/app.json +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/keycloak/realms/customers.json +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/python/checkpoint_store_memory.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/python/checkpoint_store_postgres.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/python/checkpoint_store_sqlite.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/python/event_store_memory.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/python/event_store_postgres.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/python/event_store_sqlite.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/python/events.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/python/http_app.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/python/logging_setup.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/python/main.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/python/oidc_keycloak.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/python/openapi-flags.json +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/python/openapi.json +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/python/projections.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/python/projections_lifespan.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/python/read_models.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/python/settings.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/python/tests/checkpoint_store_contract.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/python/tests/conftest.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/python/tests/event_store_contract.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/python/tests/test_checkpoint_store_memory.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/python/tests/test_checkpoint_store_postgres.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/python/tests/test_checkpoint_store_sqlite.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/python/tests/test_event_store_memory.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/python/tests/test_event_store_postgres.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/python/tests/test_event_store_sqlite.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/python/tests/test_http_app.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/python/tests/test_logging_setup.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/python/tests/test_oidc_keycloak.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/python/tests/test_projections.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/python/tests/test_projections_lifespan.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/python/tests/test_settings.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/python/tests/test_tracing.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/python/tests/test_users_oidc_keycloak.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/python/tracing.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/python/users_oidc_keycloak.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/sql/001_events.sql +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/sql/002_events_append_only.sql +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/sql/003_projection_checkpoints.sql +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/sql/004_event_tags.sql +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/typescript/checkpoint-store-memory.ts +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/typescript/checkpoint-store-postgres.ts +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/typescript/checkpoint-store-sqlite.ts +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/typescript/config.ts +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/typescript/event-store-memory.ts +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/typescript/event-store-postgres.ts +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/typescript/event-store-sqlite.ts +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/typescript/events.ts +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/typescript/http-app.ts +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/typescript/main.ts +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/typescript/migrations/001_events.js +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/typescript/migrations/002_events_append_only.js +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/typescript/migrations/003_projection_checkpoints.js +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/typescript/migrations/004_event_tags.js +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/typescript/oidc-keycloak.ts +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/typescript/openapi-export.ts +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/typescript/openapi-flags.json +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/typescript/openapi.json +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/typescript/projections-plugin.ts +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/typescript/projections.ts +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/typescript/read-models.ts +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/typescript/tests/checkpoint-store-contract.ts +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/typescript/tests/checkpoint-store-memory.test.ts +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/typescript/tests/checkpoint-store-postgres.test.ts +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/typescript/tests/checkpoint-store-sqlite.test.ts +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/typescript/tests/event-store-contract.ts +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/typescript/tests/event-store-memory.test.ts +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/typescript/tests/event-store-postgres.test.ts +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/typescript/tests/event-store-sqlite.test.ts +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/typescript/tests/http-app.test.ts +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/typescript/tests/oidc-keycloak.test.ts +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/typescript/tests/projections-plugin.test.ts +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/typescript/tests/projections.test.ts +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/typescript/tests/tracing.test.ts +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/typescript/tests/users-oidc-keycloak.test.ts +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/typescript/tracing.ts +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/typescript/users-oidc-keycloak.ts +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/backing-services/typescript/vitest.integration.config.ts +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/frontends/react-vite/api-client/package.json +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/frontends/react-vite/api-client/src/index.ts +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/frontends/react-vite/app/index.html +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/frontends/react-vite/app/package.json +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/frontends/react-vite/app/src/App.tsx +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/frontends/react-vite/app/src/main.tsx +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/frontends/react-vite/app/src/styles/base.css +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/frontends/react-vite/app/src/styles/tokens.css +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/frontends/react-vite/app/tests/App.test.tsx +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/frontends/react-vite/app/tests/setup.ts +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/frontends/react-vite/app/tsconfig.json +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/frontends/react-vite/app/vite.config.ts +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/frontends/react-vite/app-flags-local/flags.test.ts +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/frontends/react-vite/app-flags-local/flags.ts +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/frontends/react-vite/app-flags-target/flags.test.ts +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/frontends/react-vite/app-flags-target/flags.ts +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/frontends/react-vite/app-route-client/Home.test.tsx +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/frontends/react-vite/app-route-client/Home.tsx +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/frontends/react-vite/app-route-plain/Home.test.tsx +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/frontends/react-vite/app-route-plain/Home.tsx +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/frontends/react-vite/features/users-keycloak/src/auth/Account.tsx +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/frontends/react-vite/features/users-keycloak/src/auth/users.tsx +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/frontends/react-vite/features/users-keycloak/tests/auth/Account.test.tsx +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/frontends/react-vite/features/users-keycloak/tests/auth/users.test.ts +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/frontends/react-vite/locks/frontend-only-users-keycloak.json +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/frontends/react-vite/locks/frontend-only.json +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/frontends/react-vite/locks/typescript-backend-fastify-postgres-users-keycloak.json +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/frontends/react-vite/locks/typescript-backend-fastify-postgres.json +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/frontends/react-vite/locks/typescript-backend-fastify-users-keycloak.json +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/frontends/react-vite/locks/typescript-backend-fastify.json +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/frontends/react-vite/locks/typescript-backend-postgres-users-keycloak.json +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/frontends/react-vite/locks/typescript-backend-postgres.json +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/frontends/react-vite/locks/typescript-backend-users-keycloak.json +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/frontends/react-vite/locks/typescript-backend.json +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/app/.gremlins.yaml +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/app/application/README.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/app/domain/README.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/app/health/health.go +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/app/health/health_test.go +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/event-port/application/ports/events/events.go +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/event-port/application/ports/events/events_test.go +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/domain-driven-design/accept-child-id-remove-exercise.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/domain-driven-design/acl-stripe-payment-translation.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/domain-driven-design/aggregate-sizing-occasion.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/domain-driven-design/aggregate-vs-read-model.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/domain-driven-design/always-valid-occasion-invariants.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/domain-driven-design/branded-id-types.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/domain-driven-design/create-child-through-root.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/domain-driven-design/decider-pattern-order.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/domain-driven-design/describe-order-exhaustive-switch.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/domain-driven-design/discriminated-union-pledge-result.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/domain-driven-design/domain-behavioral-tests.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/domain-driven-design/domain-service-pledge-contribution.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/domain-driven-design/domain-service-test-pledge-contribution.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/domain-driven-design/domain-service-vs-use-case.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/domain-driven-design/entity-rename-occasion.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/domain-driven-design/error-propagation-through-layers.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/domain-driven-design/exception-vs-result-type.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/domain-driven-design/explicit-return-pledge-no-events.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/domain-driven-design/fake-vs-mock-repository.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/domain-driven-design/in-process-event-dispatch.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/domain-driven-design/integration-test-order-repository.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/domain-driven-design/invariant-driven-vending-machine.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/domain-driven-design/money-value-object-factory.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/domain-driven-design/multiple-error-reasons-union.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/domain-driven-design/naming-signature-domain-vs-use-case.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/domain-driven-design/occasion-repository-interface.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/domain-driven-design/one-aggregate-per-transaction.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/domain-driven-design/optimistic-locking-repository-save.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/domain-driven-design/optimistic-locking-version-field.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/domain-driven-design/order-lifecycle-union.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/domain-driven-design/outbox-pattern-dispatch.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/domain-driven-design/pledge-result-types.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/domain-driven-design/process-manager-gift-purchase.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/domain-driven-design/property-based-test-pledge-budget.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/domain-driven-design/purity-test-domain-vs-presentation.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/domain-driven-design/readonly-array-child-collection.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/domain-driven-design/shared-kernel-package-layout.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/domain-driven-design/specification-can-pledge.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/domain-driven-design/test-decide-order-events.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/domain-driven-design/test-error-funding-closed.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/domain-driven-design/test-factory-get-occasion.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/domain-driven-design/ubiquitous-language-glossary-types.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/domain-driven-design/use-case-test-pledge-contribution.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/domain-driven-design/wrong-catch-rethrow-context.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/domain-driven-design/wrong-exception-for-business-rule.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/domain-driven-design/wrong-generic-error-type.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/domain-driven-design/zod-branded-type-bridging.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/event-sourcing/account-decider-and-evolve.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/event-sourcing/balance-view-apply-fold.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/event-sourcing/balance-view-projection.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/event-sourcing/catch-up-checkpoint-transaction.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/event-sourcing/command-handler-loop.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/event-sourcing/command-handler-retry-loop.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/event-sourcing/decide-withdraw-example.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/event-sourcing/decider-behaviour-tests.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/event-sourcing/decider-insufficient-funds-test.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/event-sourcing/decider-type.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/event-sourcing/decision-result-type.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/event-sourcing/deposit-money-command-with-timestamp.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/event-sourcing/event-envelope-type.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/event-sourcing/event-store-port-interface.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/event-sourcing/event-store-port.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/event-sourcing/evolve-behaviour-via-withdraw-limit.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/event-sourcing/generic-rehydrate-fold.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/event-sourcing/idempotent-projection-dedupe.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/event-sourcing/in-memory-event-store-fake.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/event-sourcing/inline-view-in-append-transaction.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/event-sourcing/live-view-bounded-fold.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/event-sourcing/order-placed-upcaster.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/event-sourcing/projection-behaviour-tests.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/event-sourcing/rehydrate-left-fold.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/event-sourcing/tags-of-from-identifying-attributes.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/event-sourcing/todo-list-claiming.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/event-sourcing/tolerant-reader-read-path.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/event-sourcing/upcaster-behaviour-test.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/hexagonal-architecture/adapter-error-translation.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/hexagonal-architecture/antipattern-business-logic-in-adapter.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/hexagonal-architecture/antipattern-bypass-adapter.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/hexagonal-architecture/antipattern-domain-depends-on-infrastructure.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/hexagonal-architecture/antipattern-pattern-shaped-names.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/hexagonal-architecture/antipattern-technology-shaped-port.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/hexagonal-architecture/composition-root-http-entrypoint.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/hexagonal-architecture/composition-root-queue-entrypoint.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/hexagonal-architecture/cqrs-lite-dashboard-query-function.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/hexagonal-architecture/cqrs-lite-domain-transform-read-data.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/hexagonal-architecture/cross-cutting-auth-driving-adapter.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/hexagonal-architecture/cross-cutting-domain-authorization.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/hexagonal-architecture/cross-cutting-domain-probe-port.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/hexagonal-architecture/cross-cutting-error-formatting-http.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/hexagonal-architecture/cross-cutting-technical-telemetry-adapters.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/hexagonal-architecture/cross-cutting-transactional-persistence-port.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/hexagonal-architecture/cross-cutting-use-case-identity.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/hexagonal-architecture/dependency-injection-order-placement.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/hexagonal-architecture/driven-adapter-and-fake-implementation.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/hexagonal-architecture/greenfield-driven-port-fake.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/hexagonal-architecture/greenfield-driving-port-constant.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/hexagonal-architecture/incremental-after-thin-entrypoint.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/hexagonal-architecture/incremental-before-tangled-handler.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/hexagonal-architecture/incremental-create-adapter.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/hexagonal-architecture/incremental-create-use-case.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/hexagonal-architecture/incremental-extract-domain-function.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/hexagonal-architecture/incremental-extract-port-interface.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/hexagonal-architecture/port-interface-definitions.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/hexagonal-architecture/reads-vs-writes-query-function-example.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/hexagonal-architecture/testing-create-test-db-helper.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/hexagonal-architecture/testing-domain-unit-test-example.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/hexagonal-architecture/testing-fake-order-repo.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/hexagonal-architecture/testing-narrow-integration-tests.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/hexagonal-architecture/testing-recording-fake-instrumentation.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/hexagonal-architecture/testing-use-case-primary-boundary.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/hexagonal-architecture/worked-example-domain-function-record-pledge.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/hexagonal-architecture/worked-example-domain-types.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/hexagonal-architecture/worked-example-domain-unit-test.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/hexagonal-architecture/worked-example-driven-adapters.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/hexagonal-architecture/worked-example-driving-adapter-entrypoint.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/hexagonal-architecture/worked-example-fakes-for-testing.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/hexagonal-architecture/worked-example-port-interfaces.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/hexagonal-architecture/worked-example-use-case-orchestration.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/hexagonal-architecture/worked-example-use-case-test.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/testing/correct-complete-factory-object.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/testing/correct-fresh-state-per-test.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/testing/correct-import-real-schema.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/testing/correct-inline-tested-through-behavior.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/testing/correct-testing-behavior-public-api.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/testing/coverage-theater-assert-called-only-correct.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/testing/coverage-theater-assert-called-only-wrong.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/testing/coverage-theater-branch-coverage-correct.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/testing/coverage-theater-happy-path-only-wrong.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/testing/coverage-theater-mock-function-under-test-correct.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/testing/coverage-theater-mock-function-under-test-wrong.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/testing/coverage-theater-trivial-getter-setter-correct.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/testing/coverage-theater-trivial-getter-setter-wrong.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/testing/factory-basic-pattern.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/testing/factory-complete-example.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/testing/factory-composition.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/testing/reach-validation-through-behavior.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/testing/wrong-extracted-helper-with-own-test.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/testing/wrong-incomplete-factory-object.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/testing/wrong-redefine-schema-in-test.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/testing/wrong-shared-mutable-fixture.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/examples/testing/wrong-testing-implementation-detail.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/flags/flags/flags.go +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/flags/flags/flags_test.go +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/modules/base/go.mod +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/modules/base/go.sum +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/modules/postgres/go.mod +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/modules/postgres/go.sum +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/modules/sqlite/go.mod +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/go/modules/sqlite/go.sum +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/build/.gitattributes +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/build/.mvn/wrapper/maven-wrapper.properties +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/build/config/checkstyle.xml +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/build/config/pmd-ruleset.xml +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/build/config/spotbugs-exclude.xml +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/build/mvnw +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/build/mvnw.cmd +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/domain-driven-design/accept-child-id-remove-exercise.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/domain-driven-design/acl-stripe-payment-translation.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/domain-driven-design/aggregate-sizing-occasion.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/domain-driven-design/aggregate-vs-read-model.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/domain-driven-design/always-valid-occasion-invariants.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/domain-driven-design/branded-id-types.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/domain-driven-design/create-child-through-root.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/domain-driven-design/decider-pattern-order.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/domain-driven-design/describe-order-exhaustive-switch.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/domain-driven-design/discriminated-union-pledge-result.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/domain-driven-design/domain-behavioral-tests.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/domain-driven-design/domain-service-pledge-contribution.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/domain-driven-design/domain-service-test-pledge-contribution.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/domain-driven-design/domain-service-vs-use-case.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/domain-driven-design/entity-rename-occasion.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/domain-driven-design/error-propagation-through-layers.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/domain-driven-design/exception-vs-result-type.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/domain-driven-design/explicit-return-pledge-no-events.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/domain-driven-design/fake-vs-mock-repository.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/domain-driven-design/in-process-event-dispatch.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/domain-driven-design/integration-test-order-repository.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/domain-driven-design/invariant-driven-vending-machine.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/domain-driven-design/money-value-object-factory.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/domain-driven-design/multiple-error-reasons-union.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/domain-driven-design/naming-signature-domain-vs-use-case.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/domain-driven-design/occasion-repository-interface.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/domain-driven-design/one-aggregate-per-transaction.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/domain-driven-design/optimistic-locking-repository-save.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/domain-driven-design/optimistic-locking-version-field.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/domain-driven-design/order-lifecycle-union.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/domain-driven-design/outbox-pattern-dispatch.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/domain-driven-design/pledge-result-types.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/domain-driven-design/process-manager-gift-purchase.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/domain-driven-design/property-based-test-pledge-budget.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/domain-driven-design/purity-test-domain-vs-presentation.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/domain-driven-design/readonly-array-child-collection.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/domain-driven-design/shared-kernel-package-layout.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/domain-driven-design/specification-can-pledge.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/domain-driven-design/test-decide-order-events.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/domain-driven-design/test-error-funding-closed.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/domain-driven-design/test-factory-get-occasion.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/domain-driven-design/ubiquitous-language-glossary-types.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/domain-driven-design/use-case-test-pledge-contribution.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/domain-driven-design/wrong-catch-rethrow-context.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/domain-driven-design/wrong-exception-for-business-rule.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/domain-driven-design/wrong-generic-error-type.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/domain-driven-design/zod-branded-type-bridging.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/event-sourcing/account-decider-and-evolve.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/event-sourcing/balance-view-apply-fold.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/event-sourcing/balance-view-projection.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/event-sourcing/catch-up-checkpoint-transaction.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/event-sourcing/command-handler-loop.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/event-sourcing/command-handler-retry-loop.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/event-sourcing/decide-withdraw-example.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/event-sourcing/decider-behaviour-tests.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/event-sourcing/decider-insufficient-funds-test.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/event-sourcing/decider-type.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/event-sourcing/decision-result-type.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/event-sourcing/deposit-money-command-with-timestamp.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/event-sourcing/event-envelope-type.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/event-sourcing/event-store-port-interface.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/event-sourcing/event-store-port.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/event-sourcing/evolve-behaviour-via-withdraw-limit.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/event-sourcing/generic-rehydrate-fold.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/event-sourcing/idempotent-projection-dedupe.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/event-sourcing/in-memory-event-store-fake.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/event-sourcing/inline-view-in-append-transaction.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/event-sourcing/live-view-bounded-fold.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/event-sourcing/order-placed-upcaster.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/event-sourcing/projection-behaviour-tests.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/event-sourcing/rehydrate-left-fold.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/event-sourcing/tags-of-from-identifying-attributes.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/event-sourcing/todo-list-claiming.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/event-sourcing/tolerant-reader-read-path.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/event-sourcing/upcaster-behaviour-test.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/hexagonal-architecture/adapter-error-translation.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/hexagonal-architecture/antipattern-business-logic-in-adapter.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/hexagonal-architecture/antipattern-bypass-adapter.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/hexagonal-architecture/antipattern-domain-depends-on-infrastructure.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/hexagonal-architecture/antipattern-pattern-shaped-names.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/hexagonal-architecture/antipattern-technology-shaped-port.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/hexagonal-architecture/composition-root-http-entrypoint.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/hexagonal-architecture/composition-root-queue-entrypoint.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/hexagonal-architecture/cqrs-lite-dashboard-query-function.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/hexagonal-architecture/cqrs-lite-domain-transform-read-data.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/hexagonal-architecture/cross-cutting-auth-driving-adapter.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/hexagonal-architecture/cross-cutting-domain-authorization.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/hexagonal-architecture/cross-cutting-domain-probe-port.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/hexagonal-architecture/cross-cutting-error-formatting-http.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/hexagonal-architecture/cross-cutting-technical-telemetry-adapters.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/hexagonal-architecture/cross-cutting-transactional-persistence-port.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/hexagonal-architecture/cross-cutting-use-case-identity.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/hexagonal-architecture/dependency-injection-order-placement.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/hexagonal-architecture/driven-adapter-and-fake-implementation.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/hexagonal-architecture/greenfield-driven-port-fake.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/hexagonal-architecture/greenfield-driving-port-constant.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/hexagonal-architecture/incremental-after-thin-entrypoint.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/hexagonal-architecture/incremental-before-tangled-handler.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/hexagonal-architecture/incremental-create-adapter.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/hexagonal-architecture/incremental-create-use-case.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/hexagonal-architecture/incremental-extract-domain-function.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/hexagonal-architecture/incremental-extract-port-interface.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/hexagonal-architecture/port-interface-definitions.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/hexagonal-architecture/reads-vs-writes-query-function-example.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/hexagonal-architecture/testing-create-test-db-helper.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/hexagonal-architecture/testing-domain-unit-test-example.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/hexagonal-architecture/testing-fake-order-repo.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/hexagonal-architecture/testing-narrow-integration-tests.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/hexagonal-architecture/testing-recording-fake-instrumentation.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/hexagonal-architecture/testing-use-case-primary-boundary.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/hexagonal-architecture/worked-example-domain-function-record-pledge.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/hexagonal-architecture/worked-example-domain-types.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/hexagonal-architecture/worked-example-domain-unit-test.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/hexagonal-architecture/worked-example-driven-adapters.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/hexagonal-architecture/worked-example-driving-adapter-entrypoint.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/hexagonal-architecture/worked-example-fakes-for-testing.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/hexagonal-architecture/worked-example-port-interfaces.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/hexagonal-architecture/worked-example-use-case-orchestration.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/hexagonal-architecture/worked-example-use-case-test.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/testing/correct-complete-factory-object.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/testing/correct-fresh-state-per-test.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/testing/correct-import-real-schema.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/testing/correct-inline-tested-through-behavior.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/testing/correct-testing-behavior-public-api.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/testing/coverage-theater-assert-called-only-correct.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/testing/coverage-theater-assert-called-only-wrong.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/testing/coverage-theater-branch-coverage-correct.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/testing/coverage-theater-happy-path-only-wrong.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/testing/coverage-theater-mock-function-under-test-correct.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/testing/coverage-theater-mock-function-under-test-wrong.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/testing/coverage-theater-trivial-getter-setter-correct.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/testing/coverage-theater-trivial-getter-setter-wrong.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/testing/factory-basic-pattern.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/testing/factory-complete-example.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/testing/factory-composition.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/testing/reach-validation-through-behavior.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/testing/wrong-extracted-helper-with-own-test.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/testing/wrong-incomplete-factory-object.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/testing/wrong-redefine-schema-in-test.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/testing/wrong-shared-mutable-fixture.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/examples/testing/wrong-testing-implementation-detail.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/flags/src/main/java/com/example/deliverystarter/flags/Flags.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java/flags/src/test/java/com/example/deliverystarter/flags/FlagsTest.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java-quarkus/app/pom.xml +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java-quarkus/app/src/main/java/com/example/deliverystarter/application/README.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java-quarkus/app/src/main/java/com/example/deliverystarter/domain/README.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java-quarkus/app/src/main/java/com/example/deliverystarter/health/HealthStatus.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java-quarkus/app/src/main/resources/application.properties +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java-quarkus/app/src/test/java/com/example/deliverystarter/health/HealthStatusTest.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java-spring/app/pom.xml +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java-spring/app/src/main/java/com/example/deliverystarter/ServiceApplication.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java-spring/app/src/main/java/com/example/deliverystarter/application/README.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java-spring/app/src/main/java/com/example/deliverystarter/domain/README.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java-spring/app/src/main/java/com/example/deliverystarter/health/HealthStatus.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java-spring/app/src/main/resources/application.properties +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/java-spring/app/src/test/java/com/example/deliverystarter/health/HealthStatusTest.java +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/app/pyproject.toml +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/app/src/delivery_starter/__init__.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/app/src/delivery_starter/application/README.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/app/src/delivery_starter/domain/README.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/app/tests/test_health.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/event-port/src/delivery_starter/application/ports/events.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/event-port/tests/test_events.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/domain-driven-design/accept-child-id-remove-exercise.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/domain-driven-design/acl-stripe-payment-translation.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/domain-driven-design/aggregate-sizing-occasion.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/domain-driven-design/aggregate-vs-read-model.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/domain-driven-design/always-valid-occasion-invariants.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/domain-driven-design/branded-id-types.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/domain-driven-design/create-child-through-root.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/domain-driven-design/decider-pattern-order.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/domain-driven-design/describe-order-exhaustive-switch.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/domain-driven-design/discriminated-union-pledge-result.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/domain-driven-design/domain-behavioral-tests.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/domain-driven-design/domain-service-pledge-contribution.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/domain-driven-design/domain-service-test-pledge-contribution.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/domain-driven-design/domain-service-vs-use-case.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/domain-driven-design/entity-rename-occasion.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/domain-driven-design/error-propagation-through-layers.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/domain-driven-design/exception-vs-result-type.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/domain-driven-design/explicit-return-pledge-no-events.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/domain-driven-design/fake-vs-mock-repository.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/domain-driven-design/in-process-event-dispatch.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/domain-driven-design/integration-test-order-repository.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/domain-driven-design/invariant-driven-vending-machine.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/domain-driven-design/money-value-object-factory.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/domain-driven-design/multiple-error-reasons-union.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/domain-driven-design/naming-signature-domain-vs-use-case.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/domain-driven-design/occasion-repository-interface.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/domain-driven-design/one-aggregate-per-transaction.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/domain-driven-design/optimistic-locking-repository-save.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/domain-driven-design/optimistic-locking-version-field.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/domain-driven-design/order-lifecycle-union.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/domain-driven-design/outbox-pattern-dispatch.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/domain-driven-design/pledge-result-types.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/domain-driven-design/process-manager-gift-purchase.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/domain-driven-design/property-based-test-pledge-budget.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/domain-driven-design/purity-test-domain-vs-presentation.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/domain-driven-design/readonly-array-child-collection.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/domain-driven-design/shared-kernel-package-layout.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/domain-driven-design/specification-can-pledge.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/domain-driven-design/test-decide-order-events.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/domain-driven-design/test-error-funding-closed.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/domain-driven-design/test-factory-get-occasion.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/domain-driven-design/ubiquitous-language-glossary-types.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/domain-driven-design/use-case-test-pledge-contribution.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/domain-driven-design/wrong-catch-rethrow-context.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/domain-driven-design/wrong-exception-for-business-rule.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/domain-driven-design/wrong-generic-error-type.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/domain-driven-design/zod-branded-type-bridging.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/event-sourcing/account-decider-and-evolve.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/event-sourcing/balance-view-apply-fold.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/event-sourcing/balance-view-projection.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/event-sourcing/catch-up-checkpoint-transaction.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/event-sourcing/command-handler-loop.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/event-sourcing/command-handler-retry-loop.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/event-sourcing/decide-withdraw-example.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/event-sourcing/decider-behaviour-tests.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/event-sourcing/decider-insufficient-funds-test.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/event-sourcing/decider-type.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/event-sourcing/decision-result-type.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/event-sourcing/deposit-money-command-with-timestamp.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/event-sourcing/event-envelope-type.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/event-sourcing/event-store-port-interface.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/event-sourcing/event-store-port.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/event-sourcing/evolve-behaviour-via-withdraw-limit.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/event-sourcing/generic-rehydrate-fold.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/event-sourcing/idempotent-projection-dedupe.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/event-sourcing/in-memory-event-store-fake.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/event-sourcing/inline-view-in-append-transaction.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/event-sourcing/live-view-bounded-fold.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/event-sourcing/order-placed-upcaster.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/event-sourcing/projection-behaviour-tests.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/event-sourcing/rehydrate-left-fold.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/event-sourcing/tags-of-from-identifying-attributes.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/event-sourcing/todo-list-claiming.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/event-sourcing/tolerant-reader-read-path.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/event-sourcing/upcaster-behaviour-test.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/hexagonal-architecture/adapter-error-translation.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/hexagonal-architecture/antipattern-business-logic-in-adapter.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/hexagonal-architecture/antipattern-bypass-adapter.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/hexagonal-architecture/antipattern-domain-depends-on-infrastructure.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/hexagonal-architecture/antipattern-pattern-shaped-names.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/hexagonal-architecture/antipattern-technology-shaped-port.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/hexagonal-architecture/composition-root-http-entrypoint.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/hexagonal-architecture/composition-root-queue-entrypoint.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/hexagonal-architecture/cqrs-lite-dashboard-query-function.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/hexagonal-architecture/cqrs-lite-domain-transform-read-data.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/hexagonal-architecture/cross-cutting-auth-driving-adapter.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/hexagonal-architecture/cross-cutting-domain-authorization.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/hexagonal-architecture/cross-cutting-domain-probe-port.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/hexagonal-architecture/cross-cutting-error-formatting-http.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/hexagonal-architecture/cross-cutting-technical-telemetry-adapters.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/hexagonal-architecture/cross-cutting-transactional-persistence-port.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/hexagonal-architecture/cross-cutting-use-case-identity.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/hexagonal-architecture/dependency-injection-order-placement.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/hexagonal-architecture/driven-adapter-and-fake-implementation.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/hexagonal-architecture/greenfield-driven-port-fake.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/hexagonal-architecture/greenfield-driving-port-constant.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/hexagonal-architecture/incremental-after-thin-entrypoint.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/hexagonal-architecture/incremental-before-tangled-handler.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/hexagonal-architecture/incremental-create-adapter.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/hexagonal-architecture/incremental-create-use-case.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/hexagonal-architecture/incremental-extract-domain-function.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/hexagonal-architecture/incremental-extract-port-interface.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/hexagonal-architecture/port-interface-definitions.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/hexagonal-architecture/reads-vs-writes-query-function-example.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/hexagonal-architecture/testing-create-test-db-helper.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/hexagonal-architecture/testing-domain-unit-test-example.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/hexagonal-architecture/testing-fake-order-repo.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/hexagonal-architecture/testing-narrow-integration-tests.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/hexagonal-architecture/testing-recording-fake-instrumentation.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/hexagonal-architecture/testing-use-case-primary-boundary.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/hexagonal-architecture/worked-example-domain-function-record-pledge.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/hexagonal-architecture/worked-example-domain-types.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/hexagonal-architecture/worked-example-domain-unit-test.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/hexagonal-architecture/worked-example-driven-adapters.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/hexagonal-architecture/worked-example-driving-adapter-entrypoint.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/hexagonal-architecture/worked-example-fakes-for-testing.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/hexagonal-architecture/worked-example-port-interfaces.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/hexagonal-architecture/worked-example-use-case-orchestration.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/hexagonal-architecture/worked-example-use-case-test.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/testing/correct-complete-factory-object.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/testing/correct-fresh-state-per-test.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/testing/correct-import-real-schema.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/testing/correct-inline-tested-through-behavior.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/testing/correct-testing-behavior-public-api.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/testing/coverage-theater-assert-called-only-correct.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/testing/coverage-theater-assert-called-only-wrong.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/testing/coverage-theater-branch-coverage-correct.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/testing/coverage-theater-happy-path-only-wrong.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/testing/coverage-theater-mock-function-under-test-correct.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/testing/coverage-theater-mock-function-under-test-wrong.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/testing/coverage-theater-trivial-getter-setter-correct.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/testing/coverage-theater-trivial-getter-setter-wrong.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/testing/factory-basic-pattern.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/testing/factory-complete-example.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/testing/factory-composition.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/testing/reach-validation-through-behavior.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/testing/wrong-extracted-helper-with-own-test.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/testing/wrong-incomplete-factory-object.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/testing/wrong-redefine-schema-in-test.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/testing/wrong-shared-mutable-fixture.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/examples/testing/wrong-testing-implementation-detail.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/flags/src/delivery_starter/flags.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/flags/tests/test_flags.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/locks/uv-fastapi-postgres.lock +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/locks/uv-fastapi.lock +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/locks/uv-postgres.lock +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/python/locks/uv.lock +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/app/package.json +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/app/src/application/README.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/app/src/domain/README.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/app/src/health.ts +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/app/tests/health.test.ts +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/biome/biome.jsonc +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/biome/domain-purity.grit +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/domain-driven-design/accept-child-id-remove-exercise.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/domain-driven-design/acl-stripe-payment-translation.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/domain-driven-design/aggregate-sizing-occasion.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/domain-driven-design/aggregate-vs-read-model.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/domain-driven-design/always-valid-occasion-invariants.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/domain-driven-design/branded-id-types.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/domain-driven-design/create-child-through-root.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/domain-driven-design/decider-pattern-order.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/domain-driven-design/describe-order-exhaustive-switch.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/domain-driven-design/discriminated-union-pledge-result.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/domain-driven-design/domain-behavioral-tests.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/domain-driven-design/domain-service-pledge-contribution.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/domain-driven-design/domain-service-test-pledge-contribution.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/domain-driven-design/domain-service-vs-use-case.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/domain-driven-design/entity-rename-occasion.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/domain-driven-design/error-propagation-through-layers.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/domain-driven-design/exception-vs-result-type.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/domain-driven-design/explicit-return-pledge-no-events.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/domain-driven-design/fake-vs-mock-repository.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/domain-driven-design/in-process-event-dispatch.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/domain-driven-design/integration-test-order-repository.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/domain-driven-design/invariant-driven-vending-machine.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/domain-driven-design/money-value-object-factory.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/domain-driven-design/multiple-error-reasons-union.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/domain-driven-design/naming-signature-domain-vs-use-case.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/domain-driven-design/occasion-repository-interface.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/domain-driven-design/one-aggregate-per-transaction.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/domain-driven-design/optimistic-locking-repository-save.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/domain-driven-design/optimistic-locking-version-field.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/domain-driven-design/order-lifecycle-union.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/domain-driven-design/outbox-pattern-dispatch.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/domain-driven-design/pledge-result-types.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/domain-driven-design/process-manager-gift-purchase.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/domain-driven-design/property-based-test-pledge-budget.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/domain-driven-design/purity-test-domain-vs-presentation.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/domain-driven-design/readonly-array-child-collection.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/domain-driven-design/shared-kernel-package-layout.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/domain-driven-design/specification-can-pledge.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/domain-driven-design/test-decide-order-events.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/domain-driven-design/test-error-funding-closed.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/domain-driven-design/test-factory-get-occasion.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/domain-driven-design/ubiquitous-language-glossary-types.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/domain-driven-design/use-case-test-pledge-contribution.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/domain-driven-design/wrong-catch-rethrow-context.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/domain-driven-design/wrong-exception-for-business-rule.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/domain-driven-design/wrong-generic-error-type.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/domain-driven-design/zod-branded-type-bridging.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/event-sourcing/account-decider-and-evolve.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/event-sourcing/balance-view-apply-fold.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/event-sourcing/balance-view-projection.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/event-sourcing/catch-up-checkpoint-transaction.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/event-sourcing/command-handler-loop.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/event-sourcing/command-handler-retry-loop.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/event-sourcing/decide-withdraw-example.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/event-sourcing/decider-behaviour-tests.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/event-sourcing/decider-insufficient-funds-test.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/event-sourcing/decider-type.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/event-sourcing/decision-result-type.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/event-sourcing/deposit-money-command-with-timestamp.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/event-sourcing/event-envelope-type.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/event-sourcing/event-store-port-interface.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/event-sourcing/event-store-port.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/event-sourcing/evolve-behaviour-via-withdraw-limit.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/event-sourcing/generic-rehydrate-fold.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/event-sourcing/idempotent-projection-dedupe.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/event-sourcing/in-memory-event-store-fake.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/event-sourcing/inline-view-in-append-transaction.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/event-sourcing/live-view-bounded-fold.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/event-sourcing/order-placed-upcaster.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/event-sourcing/projection-behaviour-tests.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/event-sourcing/rehydrate-left-fold.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/event-sourcing/tags-of-from-identifying-attributes.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/event-sourcing/todo-list-claiming.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/event-sourcing/tolerant-reader-read-path.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/event-sourcing/upcaster-behaviour-test.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/hexagonal-architecture/adapter-error-translation.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/hexagonal-architecture/antipattern-business-logic-in-adapter.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/hexagonal-architecture/antipattern-bypass-adapter.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/hexagonal-architecture/antipattern-domain-depends-on-infrastructure.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/hexagonal-architecture/antipattern-pattern-shaped-names.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/hexagonal-architecture/antipattern-technology-shaped-port.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/hexagonal-architecture/composition-root-http-entrypoint.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/hexagonal-architecture/composition-root-queue-entrypoint.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/hexagonal-architecture/cqrs-lite-dashboard-query-function.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/hexagonal-architecture/cqrs-lite-domain-transform-read-data.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/hexagonal-architecture/cross-cutting-auth-driving-adapter.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/hexagonal-architecture/cross-cutting-domain-authorization.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/hexagonal-architecture/cross-cutting-domain-probe-port.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/hexagonal-architecture/cross-cutting-error-formatting-http.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/hexagonal-architecture/cross-cutting-technical-telemetry-adapters.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/hexagonal-architecture/cross-cutting-transactional-persistence-port.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/hexagonal-architecture/cross-cutting-use-case-identity.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/hexagonal-architecture/dependency-injection-order-placement.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/hexagonal-architecture/driven-adapter-and-fake-implementation.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/hexagonal-architecture/greenfield-driven-port-fake.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/hexagonal-architecture/greenfield-driving-port-constant.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/hexagonal-architecture/incremental-after-thin-entrypoint.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/hexagonal-architecture/incremental-before-tangled-handler.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/hexagonal-architecture/incremental-create-adapter.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/hexagonal-architecture/incremental-create-use-case.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/hexagonal-architecture/incremental-extract-domain-function.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/hexagonal-architecture/incremental-extract-port-interface.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/hexagonal-architecture/port-interface-definitions.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/hexagonal-architecture/reads-vs-writes-query-function-example.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/hexagonal-architecture/testing-create-test-db-helper.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/hexagonal-architecture/testing-domain-unit-test-example.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/hexagonal-architecture/testing-fake-order-repo.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/hexagonal-architecture/testing-narrow-integration-tests.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/hexagonal-architecture/testing-recording-fake-instrumentation.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/hexagonal-architecture/testing-use-case-primary-boundary.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/hexagonal-architecture/worked-example-domain-function-record-pledge.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/hexagonal-architecture/worked-example-domain-types.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/hexagonal-architecture/worked-example-domain-unit-test.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/hexagonal-architecture/worked-example-driven-adapters.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/hexagonal-architecture/worked-example-driving-adapter-entrypoint.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/hexagonal-architecture/worked-example-fakes-for-testing.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/hexagonal-architecture/worked-example-port-interfaces.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/hexagonal-architecture/worked-example-use-case-orchestration.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/hexagonal-architecture/worked-example-use-case-test.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/testing/correct-complete-factory-object.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/testing/correct-fresh-state-per-test.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/testing/correct-import-real-schema.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/testing/correct-inline-tested-through-behavior.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/testing/correct-testing-behavior-public-api.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/testing/coverage-theater-assert-called-only-correct.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/testing/coverage-theater-assert-called-only-wrong.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/testing/coverage-theater-branch-coverage-correct.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/testing/coverage-theater-happy-path-only-wrong.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/testing/coverage-theater-mock-function-under-test-correct.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/testing/coverage-theater-mock-function-under-test-wrong.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/testing/coverage-theater-trivial-getter-setter-correct.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/testing/coverage-theater-trivial-getter-setter-wrong.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/testing/factory-basic-pattern.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/testing/factory-complete-example.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/testing/factory-composition.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/testing/reach-validation-through-behavior.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/testing/wrong-extracted-helper-with-own-test.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/testing/wrong-incomplete-factory-object.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/testing/wrong-redefine-schema-in-test.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/testing/wrong-shared-mutable-fixture.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/examples/testing/wrong-testing-implementation-detail.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/flags/src/flags.ts +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/flags/tests/flags.test.ts +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/locks/package-lock-fastify-postgres.json +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/locks/package-lock-fastify.json +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/locks/package-lock-postgres.json +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/languages/typescript/locks/package-lock.json +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/profiles/event-modelling/.specify/presets/.registry +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/profiles/event-modelling/.specify/presets/event-modelling/preset.yml +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/profiles/event-modelling/.specify/presets/event-modelling/templates/constitution-template.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/profiles/event-modelling/.specify/presets/event-modelling/templates/plan-template.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/profiles/event-modelling/.specify/presets/event-modelling/templates/tasks-template.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/profiles/event-modelling/commands/example-map.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/profiles/event-modelling/commands/validate-code-against-model.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/profiles/standard/.specify/presets/.registry +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/profiles/standard/.specify/presets/standard/preset.yml +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/profiles/standard/.specify/presets/standard/templates/constitution-template.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/profiles/standard/docs/adr/0001-record-architecture-decisions.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/profiles/standard/skills/adversarial-testing/SKILL.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/profiles/standard/skills/adversarial-testing/resources/attack-catalogue.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/profiles/standard/skills/architecture-decisions/SKILL.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/targets/aws/README.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/targets/aws/bootstrap/main.tf +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/targets/aws/bootstrap/outputs.tf +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/targets/aws/bootstrap/variables.tf +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/targets/aws/service/auth0.tf +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/targets/aws/service/cognito_customers.tf +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/targets/aws/service/cognito_staff.tf +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/targets/aws/service/flags.auto.tfvars +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/targets/aws/service/flags.tf +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/targets/aws/service/frontend.tf +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/targets/aws/service/ingress.tf +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/targets/aws/service/main.tf +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/targets/aws/service/network.tf +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/targets/aws/service/no-auth0.tf +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/targets/aws/service/no-frontend.tf +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/targets/aws/service/outputs.tf +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/targets/aws/service/production.tfvars +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/targets/aws/service/rds.tf +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/targets/aws/service/staging.tfvars +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/targets/aws/service/variables.tf +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/targets/aws/service/versions.tf +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/targets/azure/README.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/targets/azure/bootstrap/main.tf +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/targets/azure/bootstrap/outputs.tf +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/targets/azure/bootstrap/variables.tf +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/targets/azure/service/auth0.tf +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/targets/azure/service/entra_staff.tf +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/targets/azure/service/flags.auto.tfvars +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/targets/azure/service/flags.tf +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/targets/azure/service/frontend.tf +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/targets/azure/service/ingress.tf +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/targets/azure/service/main.tf +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/targets/azure/service/no-auth0.tf +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/targets/azure/service/no-frontend.tf +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/targets/azure/service/outputs.tf +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/targets/azure/service/postgres.tf +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/targets/azure/service/production.tfvars +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/targets/azure/service/staging.tfvars +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/targets/azure/service/variables.tf +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/targets/azure/service/versions.tf +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/.specify/extensions.yml +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/docs/adr/0001-record-architecture-decisions.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/docs/agent-harnesses.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/docs/delegated-agent-safety.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/docs/event-model/README.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/docs/event-model/model.yaml +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/docs/event-modeling-to-code.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/docs/first-slice.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/scripts/agents/registry.json +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/scripts/check-codegraph.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/scripts/codegraph +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/scripts/event-model/board-plan.test.ts +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/scripts/event-model/board-plan.ts +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/scripts/event-model/check.ts +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/scripts/event-model/drawio.test.ts +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/scripts/event-model/drawio.ts +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/scripts/event-model/example-model.ts +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/scripts/event-model/mermaid.ts +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/scripts/event-model/model.ts +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/scripts/event-model/package.json +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/scripts/event-model/page.ts +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/scripts/event-model/palette.ts +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/scripts/event-model/patch-mermaid-swimlanes.ts +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/scripts/event-model/readme.ts +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/scripts/event-model/render-drawio.ts +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/scripts/event-model/render.ts +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/scripts/event-model/requirements.txt +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/scripts/event-model/validate.ts +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/scripts/event-model/workspace.ts +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/scripts/extensions/codegraph/init.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/scripts/extensions/project.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/scripts/test_benchmark.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/LICENSE +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/REFERENCES.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/acceptance-review/LICENSE +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/acceptance-review/SKILL.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/acceptance-review/agents/openai.yaml +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/acceptance-review/references/source-notes.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/adversarial-testing/SKILL.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/adversarial-testing/resources/attack-catalogue.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/api-design/LICENSE +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/api-design/SKILL.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/api-design/resources/api-evolution.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/api-design/resources/api-security.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/api-design/resources/auth-security.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/api-design/resources/http-fundamentals.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/api-design/resources/problem-details.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/api-design/resources/source-notes.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/architecture-decisions/SKILL.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/bff-design/SKILL.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/bff-design/agents/openai.yaml +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/bff-design/references/adoption-and-granularity.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/bff-design/references/aggregation-and-resilience.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/bff-design/references/alternatives.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/bff-design/references/upstream-identity.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/bff-entry-points/SKILL.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/bff-entry-points/agents/openai.yaml +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/bff-entry-points/references/browser-session-coordination.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/bff-entry-points/references/endpoint-protection.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/bff-entry-points/references/enforcement-and-testing.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/bff-entry-points/references/hexagonal-auth-boundaries.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/bff-entry-points/references/hono-example.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/bff-entry-points/references/realtime-entry-points.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/characterisation-tests/SKILL.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/characterisation-tests/resources/modern-tooling.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/characterisation-tests/resources/writing-process.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/ci-debugging/SKILL.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/cli-design/LICENSE +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/cli-design/SKILL.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/cli-design/resources/composability.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/cli-design/resources/output-architecture.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/cli-design/resources/source-notes.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/cli-design/resources/stream-contracts.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/cli-design/resources/testing-cli.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/codebase-design/LICENSE +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/codebase-design/SKILL.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/codebase-design/agents/openai.yaml +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/codebase-design/references/deepening.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/codebase-design/references/design-it-twice.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/codebase-design/references/source-notes.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/debugging/SKILL.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/debugging/agents/openai.yaml +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/debugging/references/source-notes.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/diagrams/NOTICE +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/diagrams/SKILL.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/diagrams/references/source-notes.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/domain-driven-design/SKILL.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/domain-driven-design/resources/aggregate-design.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/domain-driven-design/resources/bounded-contexts.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/domain-driven-design/resources/domain-events.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/domain-driven-design/resources/domain-services.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/domain-driven-design/resources/error-modeling.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/domain-driven-design/resources/modelling-process.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/domain-driven-design/resources/references.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/domain-driven-design/resources/testing-by-layer.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/double-check/SKILL.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/double-check/resources/brief-template.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/double-check/resources/providers.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/evaluate-existing-solutions/SKILL.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/evaluate-existing-solutions/agents/openai.yaml +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/evaluate-existing-solutions/assets/solution-decision-template.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/evaluate-existing-solutions/references/evaluation-dimensions.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/evaluate-existing-solutions/references/evidence-and-currentness.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/event-modeling/NOTICE +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/event-modeling/SKILL.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/event-modeling/references/gwt-template.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/event-modeling/references/nine-steps.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/event-sourcing/SKILL.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/event-sourcing/resources/decider-and-rehydration.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/event-sourcing/resources/event-store.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/event-sourcing/resources/event-versioning.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/event-sourcing/resources/modelling-events.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/event-sourcing/resources/production-concerns.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/event-sourcing/resources/projections-and-read-models.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/event-sourcing/resources/references.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/event-sourcing/resources/testing-event-sourced-systems.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/event-sourcing/resources/when-to-use-event-sourcing.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/expectations/SKILL.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/find-gaps/SKILL.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/find-skills/LICENSE +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/find-skills/SKILL.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/find-skills/references/source-notes.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/finding-seams/SKILL.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/finding-seams/resources/creating-seams.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/finding-seams/resources/oop-patterns.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/finding-seams/resources/seam-types.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/folder-structure/SKILL.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/folder-structure/agents/openai.yaml +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/front-end-testing/SKILL.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/front-end-testing/resources/async-patterns.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/front-end-testing/resources/dom-testing-library-legacy.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/front-end-testing/resources/msw.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/front-end-testing/resources/playwright-e2e.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/frontend-design/LICENSE +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/frontend-design/SKILL.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/frontend-design/references/source-notes.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/functional/SKILL.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/functional/resources/composition-patterns.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/functional/resources/immutability-catalog.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/global-event-model/SKILL.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/hexagonal-architecture/SKILL.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/hexagonal-architecture/resources/cqrs-lite.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/hexagonal-architecture/resources/cross-cutting-concerns.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/hexagonal-architecture/resources/greenfield-sequence.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/hexagonal-architecture/resources/incremental-adoption.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/hexagonal-architecture/resources/references.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/hexagonal-architecture/resources/testing-hex-arch.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/hexagonal-architecture/resources/worked-example.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/improve-codebase-architecture/LICENSE +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/improve-codebase-architecture/SKILL.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/improve-codebase-architecture/agents/openai.yaml +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/improve-codebase-architecture/references/html-report.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/improve-codebase-architecture/references/source-notes.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/mutation-testing/SKILL.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/mutation-testing/resources/mutator-rules.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/observability/SKILL.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/observability/resources/node-patterns.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/observability/resources/references.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/observability/resources/slo-alerting.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/observability/resources/testing-telemetry.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/planning/SKILL.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/production-parity-skill-builder/SKILL.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/production-parity-skill-builder/resources/generated-skill-template.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/production-parity-skill-builder/resources/parity-surface-catalog.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/production-parity-skill-builder/resources/question-patterns.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/react-testing/SKILL.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/react-testing/resources/testing-library-react-legacy.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/reduce-system-complexity/LICENSE +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/reduce-system-complexity/SKILL.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/reduce-system-complexity/agents/openai.yaml +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/reduce-system-complexity/references/ledger-template.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/reduce-system-complexity/references/source-notes.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/refactoring/SKILL.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/secure-oauth-oidc/SKILL.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/secure-oauth-oidc/agents/openai.yaml +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/secure-oauth-oidc/references/attack-and-test-catalog.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/secure-oauth-oidc/references/oidc-validation.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/secure-oauth-oidc/references/review-and-delivery.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/secure-oauth-oidc/references/rfc9700-control-catalog.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/secure-oauth-oidc/references/standards-map.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/specification/SKILL.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/specification/resources/references.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/specification/resources/spec-review-template.html +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/stack-pull-requests/SKILL.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/stack-pull-requests/agents/openai.yaml +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/stack-pull-requests/references/source-notes.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/story-splitting/SKILL.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/story-splitting/resources/pattern-catalog.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/story-splitting/resources/source-notes.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/storyboard/SKILL.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/structure-codebase/SKILL.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/structure-codebase/agents/openai.yaml +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/structure-codebase/references/backend-patterns.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/structure-codebase/references/enforcement-and-migration.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/structure-codebase/references/frontend-patterns.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/structure-codebase/references/research-notes.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/structure-codebase/references/visible-hexagon.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/tdd/SKILL.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/tdd/resources/vitest-watch-feedback.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/teach-me/SKILL.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/teach-me/resources/assessment-patterns.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/teach-me/resources/course-generation.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/teach-me/resources/html-lessons.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/teach-me/resources/learning-science.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/teach-me/resources/session-management.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/technical-writing/LICENSE +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/technical-writing/SKILL.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/technical-writing/resources/agent-docs.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/technical-writing/resources/doc-types.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/technical-writing/resources/docs-quality.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/technical-writing/resources/formatting.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/technical-writing/resources/readme.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/technical-writing/resources/references.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/technical-writing/resources/source-notes.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/test-design-reviewer/SKILL.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/test-design-reviewer/references/source-notes.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/testing/SKILL.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/twelve-factor/SKILL.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/twelve-factor/resources/node-patterns.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/typescript-strict/SKILL.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/ubiquitous-language/SKILL.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/ubiquitous-language/resources/glossary-format.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/ubiquitous-language/resources/language-protocol.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/web-interface-guidelines/LICENSE +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/web-interface-guidelines/SKILL.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/web-interface-guidelines/references/guidelines.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/web-interface-guidelines/references/source-notes.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/wtf/LICENSE +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/wtf/SKILL.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/wtf/agents/openai.yaml +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/assets/toolkit/skills/wtf/references/source-notes.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/catalog.json +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/changelog.d/README.md +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/pyproject.toml +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/__init__.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/__main__.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/adopt_report.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/axes.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/backends.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/capabilities.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/cli_add.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/cli_adopt.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/cli_confirm.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/cli_interview.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/cli_prompts.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/convergence.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/delivery_facts.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/errors.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/extensions.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/features.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/images.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/layout.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/naming.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/origin.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/probes.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/programme.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/__init__.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/add_commands.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/adopted_ci.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/adopted_targets.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/adversary.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/agent_settings.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/agent_targets.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/agents.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/aws_docs.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/azure_docs.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/backing_service_prose.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/benchmark.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/catch_up_command.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/ci_services.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/ci_workflows.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/commands.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/compose.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/composition.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/converge_stage.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/convergence_page.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/cruise.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/cruise_agents.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/cruise_hand.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/cruise_record.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/cruise_seat.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/cruise_stops.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/cruise_told.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/cruise_unblock.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/decisions.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/demo_stop.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/deploy_workflow.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/design_page.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/design_stage.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/docs.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/docs_index.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/drive_adoption.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/drive_settings.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/entry_stores.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/evolving.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/existing.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/flags.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/ground_command.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/guidance.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/infra.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/init_production.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/integration.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/languages/__init__.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/languages/java.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/languages/java_quarkus.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/languages/java_spring.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/makefile.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/metadata.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/model_to_code.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/mutation.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/native_commands.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/parallel_slices.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/pin_commands.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/production.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/provisioning.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/read_side_layouts.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/readme.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/renovate.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/repository.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/rules.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/run_skill.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/service_layouts.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/shared_packages.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/skills_page.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/structure_page.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/target_docs.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/whats_next.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/project/where_are_we.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/quick_wins.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/replay.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/selection.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/services.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/structure.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/targets.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/tooling.py +0 -0
- {slipwai-1.3.0.dev44 → slipwai-1.4.0.dev10}/src/slipwai/versions.py +0 -0
|
@@ -2,6 +2,432 @@
|
|
|
2
2
|
|
|
3
3
|
No public releases yet. Release notes are recorded here newest first.
|
|
4
4
|
|
|
5
|
+
## 1.3.0 — MINOR
|
|
6
|
+
|
|
7
|
+
**`slipwai adopt` refuses an unclean tree, a directory that is not a Git repository, or one already holding a
|
|
8
|
+
`project.json` before it surveys anything or asks anything — not after.** The check ran as `adopt` began
|
|
9
|
+
writing, which is the right place for it to be enforced but the wrong place to find out: on a repository of
|
|
10
|
+
twelve thousand files it meant waiting through the survey, answering the interview, and only then being told
|
|
11
|
+
that none of it could be kept. `adopt` still checks when it writes, because it is a library function and that
|
|
12
|
+
contract is its own; the command line now checks first as well.
|
|
13
|
+
|
|
14
|
+
Part of brownfield adoption, which is experimental (#74): what it offers may change in a MINOR, and what it gets wrong belongs on that issue.
|
|
15
|
+
|
|
16
|
+
**`slipwai adopt` no longer wraps anything in a terminal: every buildable directory the survey finds is
|
|
17
|
+
recorded as a candidate, and which of them is an application is answered by the coding agent, with the code in
|
|
18
|
+
front of it.** [ADR 0003](docs/adr/0003-a-wrapped-application-begins-as-a-candidate.md) has the reasoning and
|
|
19
|
+
the evidence. `Wrap it as the application …? [Y/n]` defaults to yes and is asked of somebody who has not read
|
|
20
|
+
the directory; on the first real monorepo this met, that wrapped three asset bundles and a test suite as
|
|
21
|
+
applications, under names taken from their directories, with every `purpose` left blank — and there was no way
|
|
22
|
+
back, because a re-survey reports an unwrapped directory but has never removed a record.
|
|
23
|
+
|
|
24
|
+
So `project.json` gained the state it was missing. `deployables` says what somebody has established;
|
|
25
|
+
`candidates` says what was merely found, with the path, the language, the commands the build answers and the
|
|
26
|
+
file that found it. It is the same distinction `unrecorded` already draws for every row of the convergence
|
|
27
|
+
map, and it is why no un-wrap command had to be written: nothing is wrapped, so nothing needs unwrapping.
|
|
28
|
+
|
|
29
|
+
What follows from it: **`make verify` refuses while nothing is confirmed** and names what confirms one, because
|
|
30
|
+
a gate with nothing to hold has not been given its subject and a green run over zero applications is the false
|
|
31
|
+
assurance this exists to prevent. **The terminal asks one question** — the forge — and shows the rest as facts;
|
|
32
|
+
the language, the kind, the commands, what each directory owns, where the schema and the infrastructure live,
|
|
33
|
+
how a change reaches production and why the work is happening all move to the agent or to a conversation.
|
|
34
|
+
**`/ground` opens with the candidates**, one at a time, saying what it thinks each is and why from what it
|
|
35
|
+
read, before asking. **`slipwai adopt --confirm <name>`** records the answer — with `--as` for a name that is
|
|
36
|
+
not the directory's, and `--kind`, `--purpose`, `--command` and `--hexagonal` for the rest — builds the entry
|
|
37
|
+
and regenerates everything that reads it, so `deployables` is never edited by hand; **`--decline <name>`** drops
|
|
38
|
+
a candidate with nothing recorded in its place. **`--next`** names confirming as the step before the map's rows.
|
|
39
|
+
`--yes` stays the unattended path it has always been: it confirms every candidate as found, and the report now
|
|
40
|
+
says plainly that nobody looked.
|
|
41
|
+
|
|
42
|
+
This is the only intro. The per-directory interview it replaces — wrap it? language? kind? these commands?
|
|
43
|
+
what does it own? the schema, the infrastructure, the release path, why — is gone, and in a terminal `adopt`
|
|
44
|
+
now runs `./<delivery>/init` once its commit is made unless `--no-init` says otherwise. It arrived behind
|
|
45
|
+
`--experimental-intro` and `SLIPWAI_EXPERIMENTAL_INTRO=1` while it was being built; the flag is still accepted
|
|
46
|
+
and chooses nothing, so a script that passes it keeps working, and the variable is no longer read.
|
|
47
|
+
|
|
48
|
+
**Catch-up.** Nothing. A repository adopted before this has its applications in `deployables` already, which is
|
|
49
|
+
confirmation by an earlier factory and is left alone; it has no `candidates` key, which reads as an adoption
|
|
50
|
+
with nothing outstanding, and `--confirm` says so rather than inventing work. Two readers of an adopted record
|
|
51
|
+
— `--next` and `--refresh` — now tolerate a manifest with no deployables, which is the honest state between
|
|
52
|
+
`adopt` and the first confirmation; `add-service` still refuses one, since it needs an application to take a
|
|
53
|
+
language and a port from.
|
|
54
|
+
|
|
55
|
+
**`slipwai adopt` establishes which coding agent the material is for, instead of leaving it to a question
|
|
56
|
+
`./init` asks one step too late.** `./init` projects the canonical skills, commands and agent types into one
|
|
57
|
+
harness's native locations, and it has always asked which — after `adopt` had already finished. That ordering
|
|
58
|
+
makes the answer useless to the adoption itself, because the questions worth handing to a coding agent are the
|
|
59
|
+
ones asked before there is one. It was also mostly answerable without asking: a run started from inside a
|
|
60
|
+
harness is told so by its environment, and a repository whose team already uses one says so in the tree
|
|
61
|
+
(`.claude/skills`, `.gemini/commands`, `.github/copilot-instructions.md`). `adopt` now reads both and records
|
|
62
|
+
the answer in `project.json` under `agent`, with the evidence and `detected` provenance; `--integration <agent>`
|
|
63
|
+
names it outright, recorded `overridden`, and `./init` asks nothing where the record already says. What nothing
|
|
64
|
+
establishes stays `unrecorded` and is said out loud — a directory two harnesses read names neither, a tree that
|
|
65
|
+
reads for two records neither, and a thirty-six-row list is not a question a terminal can ask well — so `./init`
|
|
66
|
+
keeps its own question for exactly the case it is still needed in.
|
|
67
|
+
|
|
68
|
+
**Catch-up.** Nothing. A repository adopted by an earlier factory has no `agent` key, which reads as the
|
|
69
|
+
question still being open, and `./init --integration <agent>` answers it the way it always did. A re-survey
|
|
70
|
+
carries the key as recorded rather than re-reading it: which agent gets the material is not something the tree
|
|
71
|
+
says.
|
|
72
|
+
|
|
73
|
+
**`slipwai adopt --init` runs `./init` once the adoption is committed, so a terminal adoption can end in one
|
|
74
|
+
step rather than four.** Off unless asked for: `./init` reaches Spec Kit's source, and making every `--yes` in
|
|
75
|
+
a script or a test need the network to finish would be a poor trade for saving a line. It runs last and never
|
|
76
|
+
inside the commit, so an unreachable source costs the adoption nothing — the commit is already made, the
|
|
77
|
+
failure says so, and `slipwai adopt --next` keeps naming `./init` as the step you are on. What it writes is
|
|
78
|
+
left uncommitted and yours to read, exactly as in a project the factory generated. `--no-init` is the default
|
|
79
|
+
said out loud.
|
|
80
|
+
|
|
81
|
+
Part of brownfield adoption, which is experimental (#74): what it offers may change in a MINOR, and what it gets wrong belongs on that issue.
|
|
82
|
+
|
|
83
|
+
**`slipwai adopt --next` says where an adopted repository stands in the sequence the adoption report names —
|
|
84
|
+
what is done, what is next, and why — so the plan survives the scrollback.** That report is printed once, at
|
|
85
|
+
the end of the longest output this factory produces, and the sequence it names spans days and four tools;
|
|
86
|
+
`docs/adoption.md` carries the same list but is introduced there as a record of what was wrapped rather than
|
|
87
|
+
as the plan. Nothing is remembered now: every step leaves a mark, and `--next` reads them. Spec Kit writes
|
|
88
|
+
`.specify/integration.json`, the first gate run writes the ratchet baseline, `/ground` moves a row of the
|
|
89
|
+
convergence map off `unrecorded`, the root Makefile gains its `-include`, and a strategy is an accepted ADR
|
|
90
|
+
with a `Strategy:` line. It writes nothing itself, and it names the applications nobody has yet proved start.
|
|
91
|
+
A repository adopted by an earlier version needs nothing: the marks are the ones it was already leaving.
|
|
92
|
+
|
|
93
|
+
**A recorded command that changes directory first no longer reports the shell's `cd` as a tool this machine
|
|
94
|
+
is missing.** Every build that is not at the repository root is recorded as `cd <dir> && <build>`, and the
|
|
95
|
+
report read the first word off that line and asked the PATH for it — so a repository with four such builds
|
|
96
|
+
was told `` `cd` is not on PATH here `` above a list of all fifteen of their targets, with the one tool that
|
|
97
|
+
really was missing a line among them. The tools a command runs are now every shell segment's program, past
|
|
98
|
+
any leading `VAR=value`, and never one of the shell's own words.
|
|
99
|
+
|
|
100
|
+
**The questions a terminal cannot answer well move to the coding agent, which can read the code before
|
|
101
|
+
asking.** What a directory is, what it is called, what it owns, and first of all the language, which the line
|
|
102
|
+
above it had already printed. The candidate state is what finished the move; see the entry that introduces
|
|
103
|
+
it.
|
|
104
|
+
|
|
105
|
+
**The code index is kept sound, kept current and asked first by the harness, not by a sentence in a brief.** A
|
|
106
|
+
`/cruise` iteration on an indexed project started against a corrupt `.codegraph/codegraph.db` — which CodeGraph's
|
|
107
|
+
own `status` and `sync` report as up to date — repaired it by hand, asked it once and went back to grep, and its
|
|
108
|
+
delegates located symbols with `grep -n` and `sed -n` although their brief said to ask the index; nothing counted
|
|
109
|
+
who asked it. Now:
|
|
110
|
+
|
|
111
|
+
- Before every iteration the runner opens the database, runs SQLite's integrity check, moves a corrupt one to
|
|
112
|
+
`.codegraph/corrupt/` and rebuilds it, and syncs one the tree has moved past; the log entry's `index` says which.
|
|
113
|
+
A Claude Code session takes the same step when it opens (a `SessionStart` hook), so a person's `/drive` starts on
|
|
114
|
+
a sound index too, and hears about it only when something was done. `python3 scripts/agents/code_index.py health`
|
|
115
|
+
is the same repair by hand.
|
|
116
|
+
- `scripts/codegraph` runs the pinned CLI (`@colbymchenry/codegraph@1.6.0`, the version the MCP server now runs
|
|
117
|
+
too) through `npx`, or an installed `codegraph`, so every session with a shell — a delegate's included — has a
|
|
118
|
+
route. Claude Code's `.mcp.json` entry carries `alwaysLoad`, so `codegraph_explore` is loaded at session start
|
|
119
|
+
instead of behind the tool-search step a delegate had to take by name.
|
|
120
|
+
- Claude Code's `PreToolUse` hook refuses a search of the source for a symbol — a name the index defines, or one
|
|
121
|
+
shaped like one — from any session or delegate that has not asked the index yet, naming the command that
|
|
122
|
+
answers; words, phrases and searches confined to documents are text search and never refused. A `PostToolUse`
|
|
123
|
+
hook syncs the index each time a delegate returns, because CodeGraph turns its own watcher off where it decides
|
|
124
|
+
it is sandboxed.
|
|
125
|
+
- `check-codegraph` no longer skips a database that fails the integrity check: where the CLI is reachable it
|
|
126
|
+
rebuilds it, and syncs a stale index, before comparing, and fails only where the index cannot be made sound and
|
|
127
|
+
current — so `make verify` on any harness mends a broken index rather than going red on it
|
|
128
|
+
(`CODEGRAPH_GATE_NO_SYNC=1` compares without repairing).
|
|
129
|
+
- The log entry's `index_use`, the feed and `cruise.py status` count index queries per delegate and name each
|
|
130
|
+
that searched the source for a symbol before asking.
|
|
131
|
+
|
|
132
|
+
The hooks and per-delegate counts are Claude Code's; on other harnesses the runner's repair, the gate, the wrapper
|
|
133
|
+
and a per-iteration count hold.
|
|
134
|
+
|
|
135
|
+
**Catch-up.** `slipwai migrate` brings the scripts, the hooks and the delegate briefs. Run `make agents` (or
|
|
136
|
+
`./init --extension codegraph`) once in a project that adopted the index, so `.mcp.json` and the `AGENTS.md` block
|
|
137
|
+
name the pinned server with `alwaysLoad`, and commit the result.
|
|
138
|
+
|
|
139
|
+
**`make verify` on the `aws` target fails when the service stack declares IAM the deploy role cannot create.**
|
|
140
|
+
The bootstrap stack gives the deploy role PowerUserAccess and IAM on roles named `<project>-*`, and nothing
|
|
141
|
+
held `infra/service/` to that: a generated project added an `aws_iam_user`, passed every gate, and met the
|
|
142
|
+
limit at the production apply — refused on `iam:CreateUser` part-way through. `check-deploy-role` reads both
|
|
143
|
+
stacks and fails on every `aws_iam_*` resource whose create or delete action the policies attached to the
|
|
144
|
+
deploy role do not grant on that kind of IAM resource, and on any IAM type it has no row for. Its message,
|
|
145
|
+
and `scripts/deploy.py`'s when an apply is refused on an `iam:` action anyway, name where the fix is: a
|
|
146
|
+
statement in `infra/bootstrap/main.tf` and a `make bootstrap` by a person with admin credentials — not the
|
|
147
|
+
service stack, not the pipeline and not the IAM console.
|
|
148
|
+
|
|
149
|
+
**Renaming a resource is a `moved` block, and the guidance says so.** The same project renamed a CloudFront
|
|
150
|
+
response-headers policy with no `moved` block; OpenTofu created the new one and destroyed the old one before
|
|
151
|
+
updating the distribution that still used it, and CloudFront refused with 409. `infra/README.md` on both
|
|
152
|
+
targets, and the production rule in `AGENTS.md`, now say that a renamed or moved resource gets a `moved` block
|
|
153
|
+
and one dropped from the code a `removed` block, and what `tofu plan` shows when either is right.
|
|
154
|
+
|
|
155
|
+
**Catch-up.** `slipwai migrate` brings the gate. If it fails on a stack that deploys today, the resource it
|
|
156
|
+
names was granted by hand outside `infra/bootstrap/`: put the grant in `bootstrap/main.tf` and run
|
|
157
|
+
`make bootstrap`, so the next bootstrap does not take it away.
|
|
158
|
+
|
|
159
|
+
**A slice with a screen now has its design decided before it is built and reviewed on the rendered screen
|
|
160
|
+
before the demo, as two `/drive` rungs, not as a sentence nothing asked anyone to act on.** Three new screens
|
|
161
|
+
reached a demo with every `check-ux-gates` gate green and still showed default-blue links, labels crammed
|
|
162
|
+
against their fields, a raw UUID and a diagram drawn as a bare rectangle: the design skills were installed and
|
|
163
|
+
`AGENTS.md` named them, but no stage of the ladder asked for them, so a delegate briefed from the plan styled
|
|
164
|
+
from the tokens, ran the gates and stopped. Where the project has a browser app:
|
|
165
|
+
|
|
166
|
+
- **Screen design**, between *Plan and tasks* and *Implementation*: `docs/design.md` holds the decision each
|
|
167
|
+
screen needs, `skills/frontend-design`'s second pass has been over the plan, and `tasks.md` records a
|
|
168
|
+
`Designed:` line per screen under `## Design review`.
|
|
169
|
+
- **Design review**, between *Implementation* and *Convergence*: each screen rendered, a screenshot per state,
|
|
170
|
+
read against `skills/web-interface-guidelines`, every finding fixed or given its reason on a `Reviewed:`
|
|
171
|
+
line. A green gate is evidence for this rung, never the rung.
|
|
172
|
+
- A slice with no screen says `No screen in this slice` once, and both rungs are done.
|
|
173
|
+
|
|
174
|
+
The ladder names only what every browser app ships with. The `uipro` extension's `AGENTS.md` block now puts its
|
|
175
|
+
search into *Screen design*, and the `ux-gates` block puts `make check-ux-gates` and the kit's `design-review.md`
|
|
176
|
+
and `wcag-checklist.md` into *Design review*, so a project that did not adopt them reads about neither. The
|
|
177
|
+
`drive-tasks` brief and the event-modelling tasks template carry the steps inside the styling task and leave the
|
|
178
|
+
`## Design review` heading. The demo stop checks the record. Under `/cruise`, `drive-hand` also looks at every
|
|
179
|
+
screen on its browser walk and writes what it sees as `design:` notes in the demo log's **Feedback**.
|
|
180
|
+
|
|
181
|
+
**Catch-up.** `slipwai migrate` brings the ladder, the brief and the template. A slice already past
|
|
182
|
+
*Implementation* whose `tasks.md` has no `## Design review` enters `/drive` at *Screen design*: write the
|
|
183
|
+
`Designed:` lines for the screens that were built, then run the review. In a project that adopted `uipro` or
|
|
184
|
+
`ux-gates`, run `make agents` once so its `AGENTS.md` block names the rung, and commit the result.
|
|
185
|
+
|
|
186
|
+
**A flag that describes the adoption is refused on a `--confirm` or `--decline` run, rather than read and
|
|
187
|
+
thrown away.** `slipwai adopt --confirm shop --integration cursor` looked like it recorded a coding agent and
|
|
188
|
+
recorded nothing: the settling path never reads those flags. It now names each one and says where it belongs —
|
|
189
|
+
`--integration` after the method is installed is `./init`'s. The same rule the intro already applies
|
|
190
|
+
to flags that describe an application, and nothing that previously worked stops working: a flag that did
|
|
191
|
+
nothing now says so.
|
|
192
|
+
|
|
193
|
+
**`check-codegraph` no longer fails a repository for files CodeGraph deliberately declined.** It inferred what
|
|
194
|
+
should be indexed from the suffixes already in the index, so a vendored `bootstrap.min.js` beside a `src/app.js`
|
|
195
|
+
read as a hole in the graph — and a real adoption failed a gate that `codegraph sync` said was already up to
|
|
196
|
+
date, the two tools calling each other wrong. Which files belong in the index is CodeGraph's decision; a file
|
|
197
|
+
the index has never seen is now a finding only where it appeared *after* the index last ran, which is the
|
|
198
|
+
question the check was always asking.
|
|
199
|
+
|
|
200
|
+
**A harness that cannot be projected says where its skills live instead of only that they are elsewhere.** The
|
|
201
|
+
registry already records the reason — Hermes keeps them at `~/.hermes/skills` — and the refusal now quotes it,
|
|
202
|
+
because a person told "outside the repository" still has to go and find out where.
|
|
203
|
+
|
|
204
|
+
**`docs/change-strategy.md` stopped opening by asserting that `make verify` is green.** It is written before
|
|
205
|
+
any gate has run, and on a repository whose build tool is not on the machine it is not true. The page says what
|
|
206
|
+
the gate actually does instead: runs the build's own commands, green where the ratchet has a baseline to hold
|
|
207
|
+
them to and plainly red where it does not.
|
|
208
|
+
|
|
209
|
+
Part of brownfield adoption, which is experimental (#74): what it offers may change in a MINOR, and what it gets wrong belongs on that issue.
|
|
210
|
+
|
|
211
|
+
**A migration no longer lands on gates nothing true can satisfy: `check-benchmark` warns rather than fails, the one
|
|
212
|
+
event model charges a slice to its own feature, and a project's slice history can be baselined for the adversary
|
|
213
|
+
log once.** A project migrating from a 1.2.0 snapshot met two gates that arrived in 1.2.0 without a word in its
|
|
214
|
+
catch-up note. `check-benchmark` failed on every slice finished before benchmark records existed, and those records
|
|
215
|
+
can only be taken at the time, so the only ways to pass were to invent them or never push again. It now prints
|
|
216
|
+
each of those findings as a `warning:` and passes, and its own self-test is still what fails it. Both it and
|
|
217
|
+
`check-decisions` counted every `status: implemented` slice in `docs/event-model/model.yaml`, which is the whole
|
|
218
|
+
project's, against every feature they checked: a second feature failed for the first feature's slices, and
|
|
219
|
+
nothing done inside the second could fix that. A slice now counts only for the feature its `spec` or `gwt` path
|
|
220
|
+
is under, or, where it names none, the feature holding `slices/<id>/`. An implemented slice that no feature holds
|
|
221
|
+
is reported once. `python3 scripts/check-decisions.py --adversary-baseline` writes, once, a `## <id> · predates
|
|
222
|
+
the adversary gate · <date>` row for every done slice with no row. The gate accepts that row. The row says the
|
|
223
|
+
slice was never attacked, and `/adversary` never relies on it. A second baseline is refused.
|
|
224
|
+
|
|
225
|
+
Four smaller fixes, found on the same migration. `make verify` now runs `check-python` first, and it names the
|
|
226
|
+
interpreter when `python3` is older than the 3.10 the gate scripts need. Before this, a non-interactive macOS
|
|
227
|
+
shell that found `/usr/bin/python3` (3.9) first died inside whichever gate first used a newer feature.
|
|
228
|
+
`check-codegraph` and `code_index.py health` now tell a database they cannot open apart from a damaged one. On
|
|
229
|
+
macOS's system SQLite, CodeGraph's WAL database with no `-shm` beside it refuses a read-only open. It is now
|
|
230
|
+
read with `immutable=1`, and an open failure is reported as one and never moves the database aside, so `health`
|
|
231
|
+
no longer rebuilds a sound index in a loop. The code index finds a Node that nvm, volta or fnm installed when a
|
|
232
|
+
hook's shell has none on `PATH`, and says that is the likely cause when it finds none. `check-ux-gates.py` can
|
|
233
|
+
now be loaded with `importlib` without being registered in `sys.modules`, and it says to unset an
|
|
234
|
+
`UX_GATES_SHARD` value it refuses.
|
|
235
|
+
|
|
236
|
+
**Catch-up.** These gates are new or stricter since 1.1: `check-benchmark` (warns since this release),
|
|
237
|
+
`check-decisions`' adversary rows (1.2.0), `check-deploy-role` on `aws` (1.3.0), `check-ux-gates` sharding and
|
|
238
|
+
its CI job (1.3.0), and `check-python` (1.3.0). If `check-decisions` reports `no row for` slices finished
|
|
239
|
+
before you migrated, run `python3 scripts/check-decisions.py --adversary-baseline` once and commit the rows it
|
|
240
|
+
writes. Slices finished after that need the row `/adversary` writes. Make sure the `python3` your shell finds
|
|
241
|
+
first is 3.10 or newer. Nothing else needs doing: the rest arrives whole with the merge.
|
|
242
|
+
|
|
243
|
+
**`/ground` asks, before anything about the repository, how much each answer should explain itself — and holds
|
|
244
|
+
to the answer.** Spelling out what every option writes, what moves because of it and what it costs is what
|
|
245
|
+
somebody meeting a codebase or this method for the first time needs to answer safely; it is also how a
|
|
246
|
+
question set becomes a wall to skim for somebody on their second adoption who already knows what confirming
|
|
247
|
+
an application does. So it is asked once, the agent says which it would pick for this person and why, and
|
|
248
|
+
either form can be changed at any question. The short form drops the elaboration and not the honesty: what
|
|
249
|
+
the agent thinks and why, from what it read, stays, and *I don't know* stays an answer on offer.
|
|
250
|
+
|
|
251
|
+
**And `slipwai adopt --refresh` no longer drops the outstanding candidates and the recorded agent.** A
|
|
252
|
+
re-survey reads the tree, and neither is a fact about the tree — a candidate is a question nobody has
|
|
253
|
+
answered yet, and which coding agent gets the material is `./init`'s. Rebuilding the record without them left
|
|
254
|
+
`project.json` holding two candidates while the `/ground` regenerated in the same run had lost the section
|
|
255
|
+
that asks about them: a generated file disagreeing with the record it is generated from, which is the one
|
|
256
|
+
thing this must not do. Found by running the command over a real adoption mid-way through.
|
|
257
|
+
|
|
258
|
+
Part of brownfield adoption, which is experimental (#74): what it offers may change in a MINOR, and what it gets wrong belongs on that issue.
|
|
259
|
+
|
|
260
|
+
**`/ground` can record its answers one at a time and commit them once, as it says to.** `adopt --confirm`,
|
|
261
|
+
`adopt --decline` and `adopt --refresh` refused any uncommitted change at all, so the first answer was refused
|
|
262
|
+
by what `./init` had just left for the person to read, the second by the first, and the refresh by the rows it
|
|
263
|
+
exists to follow — and the first repository taken end to end got through by committing after every answer. They
|
|
264
|
+
now refuse only where they would write over somebody's work: a path they write, from the factory's `.written`
|
|
265
|
+
listing or the survey's pages, holding an uncommitted change that is not what slipwai last left there. What
|
|
266
|
+
slipwai left is recorded by digest in `.delivery-tools/written.json`, which every `.gitignore` the factory has
|
|
267
|
+
written already ignores, so it belongs to the checkout and is never committed. It is kept out of `.git` on purpose: Codex runs an agent's
|
|
268
|
+
commands in a sandbox that makes `.git` read-only, and a record there was silently never written.
|
|
269
|
+
`project.json`, what `./init` wrote and a person's own source no longer stop anything, because none of them is
|
|
270
|
+
written. `slipwai adopt` itself still refuses an unclean tree: it commits, and the `git reset --hard HEAD^` it
|
|
271
|
+
offers as the undo would take uncommitted work with it.
|
|
272
|
+
|
|
273
|
+
**The code-index guard holds only searches of its own repository.** A session opened in one repository searched
|
|
274
|
+
another checkout and was refused, because `version` is a name the first repository's index defines — an index
|
|
275
|
+
that cannot answer anything about code it never read. Where a search runs is now read from the hook's `cwd`, a
|
|
276
|
+
Grep `path`, or a `cd` earlier in the shell command, and a search wholly outside the repository is allowed.
|
|
277
|
+
|
|
278
|
+
Part of brownfield adoption, which is experimental (#74): what it offers may change in a MINOR, and what it
|
|
279
|
+
gets wrong belongs on that issue.
|
|
280
|
+
|
|
281
|
+
**`/ground` now has to say what each answer on offer will do, not just what it is called.** The first real run
|
|
282
|
+
of the command over a brownfield monorepo produced a page of sound reasoning per candidate and then collapsed
|
|
283
|
+
it into option labels — *Yes — hold its lint*, *Yes, as recommended* — and the person answering it replied
|
|
284
|
+
"Not sure, what do you think?" and, once, "check yourself". A person reads the options, not the paragraph
|
|
285
|
+
above them, so that is where the consequence has to be: each answer names what it writes, what moves because
|
|
286
|
+
of it, and what it costs. Three rules go with it: a question the tree can settle is read and settled rather
|
|
287
|
+
than put as a menu; a recommendation always comes with the reasoning that produced it, never a bare list; and
|
|
288
|
+
*I don't know* is offered as one of the answers every time rather than merely accepted when volunteered,
|
|
289
|
+
because a question that does not offer it manufactures an answer.
|
|
290
|
+
|
|
291
|
+
**And a runtime past its end of life is named once, however many applications run it.** The platform record
|
|
292
|
+
holds a row per application per product, so a repository whose four npm packages all run Node 20 had the same
|
|
293
|
+
sentence four times under the strategy's `because` and four more under its `before`. The reader needs the
|
|
294
|
+
products; a product is its title and its version.
|
|
295
|
+
|
|
296
|
+
Part of brownfield adoption, which is experimental (#74): what it offers may change in a MINOR, and what it gets wrong belongs on that issue.
|
|
297
|
+
|
|
298
|
+
**`/ground`'s long form says what being an application commits you to, before it asks about the first one.**
|
|
299
|
+
The question was "is this an application?", and the natural reading of the word is "something that gets
|
|
300
|
+
deployed" — so a person could agree to put a directory's lint and tests in front of every change without knowing
|
|
301
|
+
that was what they were agreeing to. In the long form the agent now says, once and in this repository's terms,
|
|
302
|
+
that an application here is a directory whose build the gate holds: its commands join `make verify`, which every
|
|
303
|
+
change has to pass, the person's and `/drive`'s and `/cruise`'s; the gate's CI runs it on every pull request;
|
|
304
|
+
`/drive` can change it once somebody has recorded how it starts. It says what declining leaves behind, that
|
|
305
|
+
leaving a directory a candidate is *not yet decided*, and that neither answer can be taken back by a command yet —
|
|
306
|
+
so an unsure answer is best left open.
|
|
307
|
+
|
|
308
|
+
Part of brownfield adoption, which is experimental (#74): what it offers may change in a MINOR, and what it
|
|
309
|
+
gets wrong belongs on that issue.
|
|
310
|
+
|
|
311
|
+
**Go's CI cache is keyed on the files a workspace has.** `actions/setup-go` keys its cache on a root `go.sum`,
|
|
312
|
+
and a generated Go project is a workspace — `go.work` and `go.work.sum` at the root, each module's `go.sum`
|
|
313
|
+
beside its `go.mod` — so the step found nothing to key on, cached nothing, and said so only as a warning while
|
|
314
|
+
the run stayed green and downloaded and compiled every module from cold. `verify.yml` and `deploy.yml` now
|
|
315
|
+
name every module's `go.sum` and `go.work.sum` as `cache-dependency-path`.
|
|
316
|
+
|
|
317
|
+
**A language somebody spoke brings its own toolchain.** The survey reads each directory once, by the first
|
|
318
|
+
ecosystem that recognises it, so a directory with a `package.json` beside a `requirements.txt` is Node. Saying
|
|
319
|
+
it is Python — with `--language`, or through the `--confirm` that `/ground` runs once it has read the code —
|
|
320
|
+
moved the language and left `kind: node` behind it, and a refresh then put the reading back over the answer.
|
|
321
|
+
The toolchain is what CI installs, so the record was describing a pipeline that cannot run. It now follows the
|
|
322
|
+
language where the tree has a build in that language to follow, is left alone where it has none rather than
|
|
323
|
+
invented, and a refresh holds what a person settled and says what the tree now reads instead.
|
|
324
|
+
|
|
325
|
+
**Claude Code's hooks find their scripts from any directory.** They were written as repository-relative paths
|
|
326
|
+
and run with whatever directory the session is in, so a session opened in a subdirectory ran
|
|
327
|
+
`python3 delivery/scripts/agents/cruise.py` against a path that is not there — and a hook that fails is silent.
|
|
328
|
+
They are written from `$CLAUDE_PROJECT_DIR` now, and the two other harnesses the factory writes hooks for —
|
|
329
|
+
Cursor's `.cursor/hooks.json` and Gemini CLI's `.gemini/settings.json` — change to the root Git names
|
|
330
|
+
(`cd "$(git rev-parse --show-toplevel)" && …`) before they run, since neither harness shares a variable
|
|
331
|
+
for it. `make agents` rewrites them; nothing else is asked of a repository already generated.
|
|
332
|
+
|
|
333
|
+
**A command that needs an application says that confirming one is the missing step.** Between `adopt` and the
|
|
334
|
+
first confirmed candidate there is nothing for a frontend to sit beside, and `slipwai add-frontend web` — which
|
|
335
|
+
is what `./init` had just said to run — answered "project.json names no deployables, so there is nothing to add
|
|
336
|
+
a service to". True, and the same sentence a manifest that names none gets. It now names the candidates and the
|
|
337
|
+
command that settles one.
|
|
338
|
+
|
|
339
|
+
**An extension tells a wrapped repository to run the script it actually has.** `./init --extension codegraph`
|
|
340
|
+
is advice nobody can follow where the adoption put `init` under `delivery/`. The three shipped extensions
|
|
341
|
+
derive the path from where they are, in all ten places they print it.
|
|
342
|
+
|
|
343
|
+
**`slipwai adopt --next` runs to the loop rather than stopping at a ready repository.** It ended at the
|
|
344
|
+
strategy ADR — wrapped, gated and asked to do nothing — and the first person to take it end to end had to be
|
|
345
|
+
told the rest in chat. It now names `/speckit-constitution` before the first spec, because `check-constitution`
|
|
346
|
+
fails the moment `specs/` exists over the template it installed, then `/speckit-specify`, `/drive` once by
|
|
347
|
+
hand, and `make cruise`. A constitution in a repository where `./init` has never run reports as pending, which
|
|
348
|
+
is what it is.
|
|
349
|
+
|
|
350
|
+
**`--command app:test=` records none, as `-` does.** An empty value is what a shell leaves when a variable is
|
|
351
|
+
unset, and recording `""` wrote a target that runs nothing and reads as one somebody chose. The report now
|
|
352
|
+
says what each target was vouched for with, so a written no is visible where it was decided.
|
|
353
|
+
|
|
354
|
+
Part of brownfield adoption, which is experimental (#74): what it offers may change in a MINOR, and what it
|
|
355
|
+
gets wrong belongs on that issue.
|
|
356
|
+
|
|
357
|
+
**`slipwai adopt --confirm` and `--refresh` now re-derive the harness projections, so `make verify` is not red
|
|
358
|
+
the moment `/ground` finishes.** Confirming a candidate changes which languages the record names, which
|
|
359
|
+
rewrites the skills' prose, which makes every copy under `.claude/skills/` differ from its canonical source —
|
|
360
|
+
and `check-agents` fails. Both real adoptions hit it and fixed it by hand with `make agents`. The factory
|
|
361
|
+
writes the canonical files, so the factory re-derives what copies them, exactly as `migrate` already does
|
|
362
|
+
after a merge. A projector that cannot run is reported rather than raised: the record is written and good
|
|
363
|
+
either way.
|
|
364
|
+
|
|
365
|
+
**And the typecheck the survey proposes for a TypeScript directory with no script of its own now passes
|
|
366
|
+
`--skipLibCheck`.** A bare `tsc --noEmit` gave seventeen errors on a real adoption, every one of them inside
|
|
367
|
+
`node_modules` where two dependencies ship disagreeing types — nothing the project can fix, and the ratchet
|
|
368
|
+
baselines the whole failure as a blanket excuse for the check. With lib types skipped the same tree is green,
|
|
369
|
+
and a type error the project actually wrote is what turns it red. A directory with its own `typecheck` script
|
|
370
|
+
keeps it, whatever it says.
|
|
371
|
+
|
|
372
|
+
Part of brownfield adoption, which is experimental (#74): what it offers may change in a MINOR, and what it gets wrong belongs on that issue.
|
|
373
|
+
|
|
374
|
+
**The ratchet now sees findings in an application that is not at the repository root — which, until now, it
|
|
375
|
+
never did.** A tool prints the paths it found relative to the directory it ran in, and a wrapped application's
|
|
376
|
+
build runs in its own: `cd admin-dev/themes/new-theme && npm exec -- tsc`. Every path it reported was resolved
|
|
377
|
+
against the repository root alone, where nothing of that name exists, so the run found no findings at all and
|
|
378
|
+
fell back to comparing the exit code — which passes a second error tomorrow exactly as it passed the first.
|
|
379
|
+
On a real adoption a plain type error in the project's own source was invisible to it. That is the ratchet
|
|
380
|
+
failing at the one thing it exists for, silently, on precisely the repositories it was written for: the ones
|
|
381
|
+
whose applications live in subdirectories. A path is now resolved against the directory the build runs in as
|
|
382
|
+
well as the root — `project.json` records it — and recorded root-relative either way, so a finding compares
|
|
383
|
+
the same however the tool that printed it spelled it.
|
|
384
|
+
|
|
385
|
+
**Catch-up.** An adopted repository with an application below its root should re-record: its `lint` or
|
|
386
|
+
`typecheck` entry in `baseline.json` is almost certainly `{"exit": N, "findings": []}`, which excused the whole
|
|
387
|
+
command. `make ratchet-tighten` after reading what the command actually reports replaces it with the findings
|
|
388
|
+
that are really there, and the gate holds to no new ones from then on.
|
|
389
|
+
|
|
390
|
+
Part of brownfield adoption, which is experimental (#74): what it offers may change in a MINOR, and what it gets wrong belongs on that issue.
|
|
391
|
+
|
|
392
|
+
**`slipwai adopt` no longer names `./init` as the next step and then runs it two lines later.** Where
|
|
393
|
+
`--init` is going to run it, the report says it is running now and what that leaves for you to commit; the
|
|
394
|
+
rest of the sequence is unchanged, since only the first line was ever about that step.
|
|
395
|
+
|
|
396
|
+
**And where `adopt` could not tell which coding agent the material was for, the record now catches up with
|
|
397
|
+
the answer `./init` collected.** Handing the question on was right — a tree that reads for three harnesses is
|
|
398
|
+
a decision and not a guess — but the answer then existed only in Spec Kit's own file while `project.json`
|
|
399
|
+
still said nobody had established one, and `slipwai adopt --next` went on offering `--integration` for a
|
|
400
|
+
question somebody had already answered. `harness.py` now reads `.specify/integration.json` as a source of its
|
|
401
|
+
own, and the strongest one: a person answered `./init`, so it is recorded `confirmed`, and it outranks both
|
|
402
|
+
the environment a run started in and what the tree reads, which are readings rather than answers. A record
|
|
403
|
+
that already names a harness is left alone, and one a person overrode is never moved by a later step.
|
|
404
|
+
|
|
405
|
+
Found by running the candidate intro over PrestaShop, whose tree reads for Claude Code, GitHub Copilot and
|
|
406
|
+
Gemini CLI at once — which is the case the ambiguity rule was written for, and the first time it has been met
|
|
407
|
+
in the wild.
|
|
408
|
+
|
|
409
|
+
Part of brownfield adoption, which is experimental (#74): what it offers may change in a MINOR, and what it gets wrong belongs on that issue.
|
|
410
|
+
|
|
411
|
+
**The UX render gates are spread from the first screen: side by side, sharded across six CI jobs, and scoped
|
|
412
|
+
to what a pull request changed.** Each per-file render gate launches its own browser, four per preview, so
|
|
413
|
+
their cost is linear in `screens/`: a generated project with 225 previews spent 24 minutes of a 33-minute
|
|
414
|
+
`verify` in them. `check-ux-gates` now runs its gates concurrently (`UX_GATES_JOBS`, one per processor by
|
|
415
|
+
default); `UX_GATES_SHARD=k/n` runs every n-th gate from the k-th, so n jobs cover every gate exactly once;
|
|
416
|
+
and `UX_GATES_SINCE=<ref>` renders only the previews whose own file, or a local stylesheet they link or
|
|
417
|
+
`@import`, changed since the merge base with `<ref>` — every preview again when the gate, the extension, the
|
|
418
|
+
lockfile or `verify.yml` moved, or when Git cannot say. The file gate over `src/` always runs. And
|
|
419
|
+
`./init --extension ux-gates` now writes a `ux-gates` job into `verify.yml`, between markers: six shards, each
|
|
420
|
+
installing the pinned kit and Playwright's Chromium and setting `UX_GATES_REQUIRE=1`, scoped to the base commit
|
|
421
|
+
on a pull request and whole on `main`. Until now the generated CI never installed the kit, so its render gates
|
|
422
|
+
were reported skipped there on every run; they are now measured before a deploy, which waits on `verify`.
|
|
423
|
+
|
|
424
|
+
**Catch-up.** Run `./init --extension ux-gates` once in a project that adopted the gates, and commit the job it
|
|
425
|
+
adds to `.github/workflows/verify.yml`. A project that wrote its own UX-gate job should remove it first. A project that patched the gate should know
|
|
426
|
+
what the upstream script no longer takes: `UX_GATES_SHARD` accepts only `k/n` (`1 <= k <= n`), and any other
|
|
427
|
+
value — `none` included — fails the gate, so unset it to run every gate; and `check-ux-gates.py`'s entry points
|
|
428
|
+
are `main()` and the `UX_GATES_*` variables, its helpers are not a contract, and a test that loads it with
|
|
429
|
+
`importlib` should call `main()` with the environment set rather than reach into them.
|
|
430
|
+
|
|
5
431
|
## 1.2.1 — PATCH
|
|
6
432
|
|
|
7
433
|
**`make check-imports` no longer reads a test of the domain as domain code.** The gate took any file with a
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.5
|
|
2
2
|
Name: slipwai
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.4.0.dev10
|
|
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
|
|
@@ -59,11 +59,11 @@ make verify # the gate, the same one CI runs
|
|
|
59
59
|
Do not clone this repository to create a product. Install the command once. Then run `slipwai generate` or
|
|
60
60
|
`slipwai adopt`.
|
|
61
61
|
|
|
62
|
-
Two
|
|
63
|
-
|
|
64
|
-
`/catch-up` handles the work a merge cannot finish.
|
|
62
|
+
Two runsheets, one per starting point. Each is every step in order: install the command, the first session
|
|
63
|
+
with terminal screenshots, the first feature, `/drive` and `/cruise`, then how to update `slipwai`, migrate a
|
|
64
|
+
project when the factory moves, and catch up. `/catch-up` handles the work a merge cannot finish.
|
|
65
65
|
|
|
66
|
-
|
|
|
66
|
+
| Runsheet | When |
|
|
67
67
|
|---|---|
|
|
68
68
|
| **[Generate a new project](docs/learn-generate.md)** | You want a fresh repository. You get a walking skeleton, a gate and a delivery method from a few answers |
|
|
69
69
|
| **[Adopt an existing repository](docs/learn-adopt.md)** — experimental | You already have a codebase. Install the method around it, without rewriting it first |
|
|
@@ -132,10 +132,10 @@ Every other question has its own answer, and a project can answer most of them a
|
|
|
132
132
|
|
|
133
133
|
Four steps. You install a `slipwai` command and run it. You do not clone this repository.
|
|
134
134
|
|
|
135
|
-
New here?
|
|
136
|
-
[adopt](docs/learn-adopt.md)
|
|
137
|
-
`/
|
|
138
|
-
|
|
135
|
+
New here? Follow the runsheet for your case: [generate a new project](docs/learn-generate.md), or
|
|
136
|
+
[adopt an existing repository](docs/learn-adopt.md). Each is every step in order, from installing the
|
|
137
|
+
command through the first feature and `/cruise` to taking each slipwai release, with where to type it,
|
|
138
|
+
how you know it worked, and what the terminal shows.
|
|
139
139
|
|
|
140
140
|
[Scaffold a new project](docs/generating.md) is the full reference.
|
|
141
141
|
[Tools required](docs/requirements.md) lists what each toolchain and `make` target needs.
|
|
@@ -427,10 +427,8 @@ is which, what each answer brings, and how a project answers a question again la
|
|
|
427
427
|
|
|
428
428
|
| Document | Covers |
|
|
429
429
|
|---|---|
|
|
430
|
-
| [
|
|
431
|
-
| [
|
|
432
|
-
| [Runsheet: a new project](docs/runsheet-greenfield.md) | Every command in order, from `slipwai generate` to `/cruise`, and the three steps that keep the project in tune with each slipwai release |
|
|
433
|
-
| [Runsheet: an existing repository](docs/runsheet-brownfield.md) — **experimental** | Every command in order, from `slipwai adopt` through `/ground` to `/cruise`, how to revisit an answer, and how to take each slipwai release |
|
|
430
|
+
| [Runsheet: generate a new project](docs/learn-generate.md) | Every step in order, from installing the command and `slipwai generate` to `/cruise`, the three steps that keep the project in tune with each slipwai release, and how to undo each one |
|
|
431
|
+
| [Runsheet: adopt an existing repository](docs/learn-adopt.md) — **experimental** | Every step in order, from `slipwai adopt` through `/ground` to `/cruise`, how to revisit an answer, how to take each slipwai release, and how to undo each one |
|
|
434
432
|
| [Scaffold a new project](docs/generating.md) | The interactive and argument forms, one-shot semantics, the generated repository layout, and the event-sourcing boundary between the services and `apps/web` |
|
|
435
433
|
| [Bring a generated project forward](docs/upgrading.md) | `slipwai migrate`: a newer factory's output merged over a project already generated. What comes through clean, what conflicts and should, the catch-up notes it leaves for what a merge cannot do, and the gate that proves it |
|
|
436
434
|
| [Adopt an existing repository](docs/adopting.md) — **experimental** | `slipwai adopt`: the method installed around a repository the factory did not make. The survey, the candidates `/ground` confirms, what is written beside the code and never over it, what `project.json` records with provenance, and what it forfeits for a language the factory cannot generate |
|
|
@@ -30,11 +30,11 @@ make verify # the gate, the same one CI runs
|
|
|
30
30
|
Do not clone this repository to create a product. Install the command once. Then run `slipwai generate` or
|
|
31
31
|
`slipwai adopt`.
|
|
32
32
|
|
|
33
|
-
Two
|
|
34
|
-
|
|
35
|
-
`/catch-up` handles the work a merge cannot finish.
|
|
33
|
+
Two runsheets, one per starting point. Each is every step in order: install the command, the first session
|
|
34
|
+
with terminal screenshots, the first feature, `/drive` and `/cruise`, then how to update `slipwai`, migrate a
|
|
35
|
+
project when the factory moves, and catch up. `/catch-up` handles the work a merge cannot finish.
|
|
36
36
|
|
|
37
|
-
|
|
|
37
|
+
| Runsheet | When |
|
|
38
38
|
|---|---|
|
|
39
39
|
| **[Generate a new project](docs/learn-generate.md)** | You want a fresh repository. You get a walking skeleton, a gate and a delivery method from a few answers |
|
|
40
40
|
| **[Adopt an existing repository](docs/learn-adopt.md)** — experimental | You already have a codebase. Install the method around it, without rewriting it first |
|
|
@@ -103,10 +103,10 @@ Every other question has its own answer, and a project can answer most of them a
|
|
|
103
103
|
|
|
104
104
|
Four steps. You install a `slipwai` command and run it. You do not clone this repository.
|
|
105
105
|
|
|
106
|
-
New here?
|
|
107
|
-
[adopt](docs/learn-adopt.md)
|
|
108
|
-
`/
|
|
109
|
-
|
|
106
|
+
New here? Follow the runsheet for your case: [generate a new project](docs/learn-generate.md), or
|
|
107
|
+
[adopt an existing repository](docs/learn-adopt.md). Each is every step in order, from installing the
|
|
108
|
+
command through the first feature and `/cruise` to taking each slipwai release, with where to type it,
|
|
109
|
+
how you know it worked, and what the terminal shows.
|
|
110
110
|
|
|
111
111
|
[Scaffold a new project](docs/generating.md) is the full reference.
|
|
112
112
|
[Tools required](docs/requirements.md) lists what each toolchain and `make` target needs.
|
|
@@ -398,10 +398,8 @@ is which, what each answer brings, and how a project answers a question again la
|
|
|
398
398
|
|
|
399
399
|
| Document | Covers |
|
|
400
400
|
|---|---|
|
|
401
|
-
| [
|
|
402
|
-
| [
|
|
403
|
-
| [Runsheet: a new project](docs/runsheet-greenfield.md) | Every command in order, from `slipwai generate` to `/cruise`, and the three steps that keep the project in tune with each slipwai release |
|
|
404
|
-
| [Runsheet: an existing repository](docs/runsheet-brownfield.md) — **experimental** | Every command in order, from `slipwai adopt` through `/ground` to `/cruise`, how to revisit an answer, and how to take each slipwai release |
|
|
401
|
+
| [Runsheet: generate a new project](docs/learn-generate.md) | Every step in order, from installing the command and `slipwai generate` to `/cruise`, the three steps that keep the project in tune with each slipwai release, and how to undo each one |
|
|
402
|
+
| [Runsheet: adopt an existing repository](docs/learn-adopt.md) — **experimental** | Every step in order, from `slipwai adopt` through `/ground` to `/cruise`, how to revisit an answer, how to take each slipwai release, and how to undo each one |
|
|
405
403
|
| [Scaffold a new project](docs/generating.md) | The interactive and argument forms, one-shot semantics, the generated repository layout, and the event-sourcing boundary between the services and `apps/web` |
|
|
406
404
|
| [Bring a generated project forward](docs/upgrading.md) | `slipwai migrate`: a newer factory's output merged over a project already generated. What comes through clean, what conflicts and should, the catch-up notes it leaves for what a merge cannot do, and the gate that proves it |
|
|
407
405
|
| [Adopt an existing repository](docs/adopting.md) — **experimental** | `slipwai adopt`: the method installed around a repository the factory did not make. The survey, the candidates `/ground` confirms, what is written beside the code and never over it, what `project.json` records with provenance, and what it forfeits for a language the factory cannot generate |
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
1.4.0.dev10
|
|
@@ -97,7 +97,7 @@ def caps(document: dict) -> dict[str, tuple[str, str]]:
|
|
|
97
97
|
found["platform"] = ("supported", "not every application records an audit command")
|
|
98
98
|
if BASELINE.is_file():
|
|
99
99
|
try:
|
|
100
|
-
baseline = json.loads(BASELINE.read_text())
|
|
100
|
+
baseline = json.loads(BASELINE.read_text(encoding="utf-8"))
|
|
101
101
|
except ValueError:
|
|
102
102
|
baseline = {}
|
|
103
103
|
red = []
|
|
@@ -110,7 +110,7 @@ def caps(document: dict) -> dict[str, tuple[str, str]]:
|
|
|
110
110
|
red.append(f"{name} ({failing} failing)" if failing else name)
|
|
111
111
|
if red and "safety-net" not in found:
|
|
112
112
|
found["safety-net"] = ("tests-exist", f"the ratchet quarantines the test suite of {', '.join(red)}")
|
|
113
|
-
if not CONSTITUTION.is_file() or PLACEHOLDER.search(CONSTITUTION.read_text(errors="replace")):
|
|
113
|
+
if not CONSTITUTION.is_file() or PLACEHOLDER.search(CONSTITUTION.read_text(errors="replace", encoding="utf-8")):
|
|
114
114
|
found["constitution"] = ("template", "the constitution is missing or still carries the template's placeholders")
|
|
115
115
|
if not document.get("why"):
|
|
116
116
|
found["strategy"] = ("open", "no `why` is recorded")
|
|
@@ -128,7 +128,7 @@ def decided_strategy() -> str | None:
|
|
|
128
128
|
"""The strategy the highest-numbered accepted ADR names, or None."""
|
|
129
129
|
decided = None
|
|
130
130
|
for path in sorted((DELIVERY / "docs/adr").glob("*.md")):
|
|
131
|
-
text = path.read_text(errors="replace")
|
|
131
|
+
text = path.read_text(errors="replace", encoding="utf-8")
|
|
132
132
|
spelled = [match.group(1).lower() for match in ADR_STRATEGY.finditer(text)]
|
|
133
133
|
named = [OLD_STRATEGIES.get(name, name) for name in spelled]
|
|
134
134
|
strategy = next((name for name in named if name in STRATEGIES), None)
|
|
@@ -139,7 +139,7 @@ def decided_strategy() -> str | None:
|
|
|
139
139
|
|
|
140
140
|
def ledger_finished() -> bool:
|
|
141
141
|
last: dict[str, str] = {}
|
|
142
|
-
for line in (LEDGER.read_text(errors="replace") if LEDGER.is_file() else "").splitlines():
|
|
142
|
+
for line in (LEDGER.read_text(errors="replace", encoding="utf-8") if LEDGER.is_file() else "").splitlines():
|
|
143
143
|
cells = [cell.strip() for cell in line.strip().strip("|").split("|")]
|
|
144
144
|
if len(cells) == 7 and cells[0] not in ("Date", "---") and not cells[0].startswith("-"):
|
|
145
145
|
last[cells[1]] = cells[6].strip("*").lower()
|
|
@@ -147,7 +147,7 @@ def ledger_finished() -> bool:
|
|
|
147
147
|
|
|
148
148
|
|
|
149
149
|
def main() -> int:
|
|
150
|
-
document = json.loads((ROOT / "project.json").read_text())
|
|
150
|
+
document = json.loads((ROOT / "project.json").read_text(encoding="utf-8"))
|
|
151
151
|
rows = document.get("convergence")
|
|
152
152
|
if not isinstance(rows, list) or not rows:
|
|
153
153
|
print("check-convergence: no map recorded — adopted before the map existed; `slipwai adopt --refresh` writes "
|
|
@@ -157,7 +157,7 @@ def main() -> int:
|
|
|
157
157
|
print(f"check-convergence: {PAGE.relative_to(ROOT)} is missing; /survey (slipwai adopt --refresh) writes it",
|
|
158
158
|
file=sys.stderr)
|
|
159
159
|
return 1
|
|
160
|
-
marker = MARKER.search(PAGE.read_text())
|
|
160
|
+
marker = MARKER.search(PAGE.read_text(encoding="utf-8"))
|
|
161
161
|
expected = hashlib.sha256(json.dumps(rows, sort_keys=True).encode()).hexdigest()[:16]
|
|
162
162
|
if marker is None or marker.group(1) != expected:
|
|
163
163
|
print(
|
|
@@ -104,7 +104,7 @@ def application_directory(application: str) -> Path:
|
|
|
104
104
|
if not manifest.is_file():
|
|
105
105
|
return ROOT
|
|
106
106
|
try:
|
|
107
|
-
recorded = json.loads(manifest.read_text()).get("deployables", {}).get(application, {}).get("path")
|
|
107
|
+
recorded = json.loads(manifest.read_text(encoding="utf-8")).get("deployables", {}).get(application, {}).get("path")
|
|
108
108
|
except (OSError, json.JSONDecodeError, AttributeError):
|
|
109
109
|
return ROOT
|
|
110
110
|
if not isinstance(recorded, str) or recorded in ("", "."):
|
|
@@ -163,14 +163,14 @@ def read_baseline() -> dict:
|
|
|
163
163
|
if not BASELINE.is_file():
|
|
164
164
|
return {}
|
|
165
165
|
try:
|
|
166
|
-
loaded = json.loads(BASELINE.read_text())
|
|
166
|
+
loaded = json.loads(BASELINE.read_text(encoding="utf-8"))
|
|
167
167
|
except ValueError as error:
|
|
168
168
|
raise SystemExit(f"ratchet: {BASELINE.relative_to(ROOT)} is not valid JSON: {error}") from error
|
|
169
169
|
return loaded if isinstance(loaded, dict) else {}
|
|
170
170
|
|
|
171
171
|
|
|
172
172
|
def write_baseline(baseline: dict) -> None:
|
|
173
|
-
BASELINE.write_text(json.dumps(baseline, indent=2, sort_keys=True) + "\n")
|
|
173
|
+
BASELINE.write_text(json.dumps(baseline, indent=2, sort_keys=True) + "\n", encoding="utf-8", newline="\n")
|
|
174
174
|
|
|
175
175
|
|
|
176
176
|
def relative(path: Path) -> str:
|