declapract-typescript-ehmpathy 0.49.10 → 0.49.12
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.
- package/dist/.test/assets/cache/declarations/declapract.declare.yml +4 -0
- package/dist/.test/assets/cache/declarations/practices/cache/.declapract.integration.test.ts +108 -0
- package/dist/.test/assets/cache/declarations/practices/cache/.test/assets/repo-with-old-cache-package/declapract.use.yml +6 -0
- package/dist/.test/assets/cache/declarations/practices/cache/.test/assets/repo-with-old-cache-package/package.json +7 -0
- package/dist/.test/assets/cache/declarations/practices/cache/.test/assets/repo-with-valid-cache-package/declapract.use.yml +6 -0
- package/dist/.test/assets/cache/declarations/practices/cache/.test/assets/repo-with-valid-cache-package/package.json +7 -0
- package/dist/.test/assets/cache/declarations/practices/cache/.test/assets/repo-without-cache-package/declapract.use.yml +6 -0
- package/dist/.test/assets/cache/declarations/practices/cache/.test/assets/repo-without-cache-package/package.json +7 -0
- package/dist/.test/assets/cache/declarations/practices/cache/best-practice/package.json +7 -0
- package/dist/.test/assets/cache/declarations/useCases.yml +5 -0
- package/dist/.test/assets/cicd-service/declarations/declapract.declare.yml +9 -0
- package/dist/.test/assets/cicd-service/declarations/practices/cicd-service/.declapract.integration.test.ts +175 -0
- package/dist/.test/assets/cicd-service/declarations/practices/cicd-service/.test/assets/demo-repo-pre-stamped-nords/.github/workflows/provision.yml +110 -0
- package/dist/.test/assets/cicd-service/declarations/practices/cicd-service/.test/assets/demo-repo-pre-stamped-nords/declapract.use.nords.yml +20 -0
- package/dist/.test/assets/cicd-service/declarations/practices/cicd-service/.test/assets/demo-repo-pre-stamped-nords/declapract.use.rds.yml +20 -0
- package/dist/.test/assets/cicd-service/declarations/practices/cicd-service/.test/assets/demo-repo-service/declapract.use.nords.yml +20 -0
- package/dist/.test/assets/cicd-service/declarations/practices/cicd-service/.test/assets/demo-repo-service/declapract.use.rds.yml +20 -0
- package/dist/.test/assets/cicd-service/declarations/practices/cicd-service/.test/assets/demo-repo-service/package.json +4 -0
- package/dist/.test/assets/cicd-service/declarations/practices/cicd-service/__snapshots__/.declapract.integration.test.ts.snap +24 -0
- package/dist/.test/assets/cicd-service/declarations/practices/cicd-service/__snapshots__/acceptanceContempFleetGuard.declapract.integration.test.ts.snap +13 -0
- package/dist/.test/assets/cicd-service/declarations/practices/cicd-service/__snapshots__/insync-grep.declapract.integration.test.ts.snap +5 -0
- package/dist/.test/assets/cicd-service/declarations/practices/cicd-service/__snapshots__/provision.yml.declapract.integration.test.ts.snap +297 -0
- package/dist/.test/assets/cicd-service/declarations/practices/cicd-service/acceptanceContempFleetGuard.declapract.integration.test.ts +89 -0
- package/dist/.test/assets/cicd-service/declarations/practices/cicd-service/bad-practices/rds-jobs-in-non-rds-service/.declapract.integration.test.ts +153 -0
- package/dist/.test/assets/cicd-service/declarations/practices/cicd-service/bad-practices/rds-jobs-in-non-rds-service/.declapract.readme.md +38 -0
- package/dist/.test/assets/cicd-service/declarations/practices/cicd-service/bad-practices/rds-jobs-in-non-rds-service/.github/workflows/provision.yml.declapract.integration.test.ts +167 -0
- package/dist/.test/assets/cicd-service/declarations/practices/cicd-service/bad-practices/rds-jobs-in-non-rds-service/.github/workflows/provision.yml.declapract.ts +88 -0
- package/dist/.test/assets/cicd-service/declarations/practices/cicd-service/bad-practices/rds-jobs-in-non-rds-service/.test/assets/repo-non-rds/readme.md +9 -0
- package/dist/.test/assets/cicd-service/declarations/practices/cicd-service/bad-practices/rds-jobs-in-non-rds-service/.test/assets/repo-with-aws-resources-callee/provision/aws/resources.ts +5 -0
- package/dist/.test/assets/cicd-service/declarations/practices/cicd-service/bad-practices/rds-jobs-in-non-rds-service/.test/assets/repo-with-schema-callee/provision/schema/init.sql +5 -0
- package/dist/.test/assets/cicd-service/declarations/practices/cicd-service/bad-practices/rds-jobs-in-non-rds-service/__snapshots__/.declapract.integration.test.ts.snap +183 -0
- package/dist/.test/assets/cicd-service/declarations/practices/cicd-service/best-practice/.declapract.readme.md +22 -0
- package/dist/.test/assets/cicd-service/declarations/practices/cicd-service/best-practice/.github/workflows/.deploy-sls.yml +163 -0
- package/dist/.test/assets/cicd-service/declarations/practices/cicd-service/best-practice/.github/workflows/.sql-schema-control.yml +154 -0
- package/dist/.test/assets/cicd-service/declarations/practices/cicd-service/best-practice/.github/workflows/.terraform.yml +118 -0
- package/dist/.test/assets/cicd-service/declarations/practices/cicd-service/best-practice/.github/workflows/deploy.yml +77 -0
- package/dist/.test/assets/cicd-service/declarations/practices/cicd-service/best-practice/.github/workflows/deploy.yml.declapract.ts +15 -0
- package/dist/.test/assets/cicd-service/declarations/practices/cicd-service/best-practice/.github/workflows/provision.yml +110 -0
- package/dist/.test/assets/cicd-service/declarations/practices/cicd-service/best-practice/.github/workflows/provision.yml.declapract.ts +74 -0
- package/dist/.test/assets/cicd-service/declarations/practices/cicd-service/best-practice/package.json +7 -0
- package/dist/.test/assets/cicd-service/declarations/practices/cicd-service/insync-grep.declapract.integration.test.ts +76 -0
- package/dist/.test/assets/cicd-service/declarations/practices/cicd-service/provision.yml.declapract.integration.test.ts +182 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/.declapract.integration.test.ts +224 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/.extensions.sql.declapract.integration.test.ts +38 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/.test/assets/demo-repo-with-dev-config/config/dev.json +18 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/.test/assets/demo-repo-with-dev-config/declapract.use.yml +18 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/.test/assets/demo-repo-with-dev-config/package.json +4 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/__snapshots__/.declapract.integration.test.ts.snap +45 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/__snapshots__/.extensions.sql.declapract.integration.test.ts.snap +42 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/__snapshots__/deploy-database-gerunds.declapract.integration.test.ts.snap +102 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/__snapshots__/provision-testdb-access.declapract.integration.test.ts.snap +3 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/__snapshots__/ssm-cicd-param-names.declapract.integration.test.ts.snap +10 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/__snapshots__/testdb-preflight-failloud.declapract.integration.test.ts.snap +30 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/non-prefixed-manual-init-sqls/provision/schema/sql/init/extensions.sql.declapract.ts +13 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/non-prefixed-manual-init-sqls/provision/schema/sql/init/schema.sql.declapract.ts +3 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/non-prefixed-manual-init-sqls/provision/schema/sql/init/user.cicd.sql.declapract.ts +3 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/non-prefixed-manual-init-sqls/provision/schema/sql/init/user.datalakedb.sql.declapract.ts +3 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/non-prefixed-manual-init-sqls/readme.md +5 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/old-config-file-names/codegen.sql.yml.declapract.ts +3 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/old-dev-config-location/config/dev.json.declapract.ts +33 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/old-integration-test-db-dir/.declapract.readme.md +1 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/old-integration-test-db-dir/provision/docker/integration_test_db/<star><star>/<star>.declapract.ts +15 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/old-integration-test-db-hyphen-dir/.declapract.readme.md +1 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/old-integration-test-db-hyphen-dir/provision/docker/integration-test-db/<star><star>/<star>.declapract.ts +15 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/old-integration-test-db-paths/.declapract.readme.md +1 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/old-integration-test-db-paths/package.json +8 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/old-integration-test-db-paths/package.json.declapract.ts +10 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/old-packagejson-script-names/package.json +9 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/old-packagejson-script-names/package.json.declapract.ts +22 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/old-param-placeholder/config/<star>.json.declapract.ts +14 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/schema-entities-dir/.declapract.readme.md +1 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/schema-entities-dir/provision/schema/entities/<star>.ts.declapract.ts +12 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/schema-entities-dir/provision/schema/sql/entities.yml.declapract.ts +13 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/terraform-parameters/.declapract.integration.test.ts +88 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/terraform-parameters/.test/assets/demo-repo-with-terraform-ssm/declapract.declare.yml +4 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/terraform-parameters/.test/assets/demo-repo-with-terraform-ssm/declapract.use.yml +18 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/terraform-parameters/.test/assets/demo-repo-with-terraform-ssm/package.json +4 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/terraform-parameters/.test/assets/demo-repo-with-terraform-ssm/provision/aws/product/parameter-store.tf +23 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/terraform-parameters/__snapshots__/.declapract.integration.test.ts.snap +44 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/terraform-parameters/provision/aws/product/parameter-store.tf.declapract.ts +55 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/with-connection-in-input/.declapract.readme.md +1 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/with-connection-in-input/src/utils/database/withDatabaseConnection.ts +3 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/.declapract.readme.md +58 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/codegen.sql.dao.yml +18 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/codegen.sql.dao.yml.declapract.ts +3 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/codegen.sql.schema.yml +6 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/codegen.sql.types.yml +16 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/config/prep.json +36 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/config/prep.json.declapract.ts +15 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/config/prod.json +36 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/config/prod.json.declapract.ts +15 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/config/test.json +33 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/config/test.json.declapract.ts +15 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/package.json +30 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/provision/aws/readme.md +79 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/provision/aws/resources.parameters.ts +101 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/provision/aws/resources.ts +30 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/provision/docker/testdb/build-image.dockerfile +7 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/provision/docker/testdb/docker-compose.yml +18 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/provision/docker/testdb/init/.gitignore +3 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/provision/docker/testdb/init/readme.md +3 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/provision/docker/testdb/wait-for-postgres.sh +25 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/provision/schema/connection.config.js +29 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/provision/schema/control.yml +7 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/provision/schema/deploy.database.sh +97 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/provision/schema/sql/init/.database.sql +10 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/provision/schema/sql/init/.extensions.sql +16 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/provision/schema/sql/init/.extensions.sql.declapract.ts +37 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/provision/schema/sql/init/.schema.sql +11 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/provision/schema/sql/init/.user.cicd.sql +14 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/provision/schema/sql/init/.user.datalakedb.sql +12 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/provision/schema/sql/init/default_transaction_isolation.sql +6 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/provision/schema/sql/init/user.service.sql +16 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/provision/schema/sql/init.yml +9 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/provision/schema/sql/init.yml.declapract.ts +3 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/src/utils/config/config.schema.ts +110 -0
- package/dist/{practices/persist-with-rds/best-practice/src/utils/database/getDatabaseConnection.integration.test.ts → .test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/src/utils/database/getOneDatabaseConnection.integration.test.ts} +3 -3
- package/dist/{practices/persist-with-rds/best-practice/src/utils/database/getDatabaseConnection.ts → .test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/src/utils/database/getOneDatabaseConnection.ts} +1 -1
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/src/utils/database/withDatabaseContext.ts +53 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/src/utils/database/withDatabaseTransaction.ts +33 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/deploy-database-gerunds.declapract.integration.test.ts +57 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/empty-template-declares-zero-clusters.declapract.integration.test.ts +71 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/provision-testdb-access.declapract.integration.test.ts +50 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/ssm-cicd-param-names.declapract.integration.test.ts +73 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/testdb-preflight-failloud.declapract.integration.test.ts +83 -0
- package/dist/.test/assets/cicd-service/declarations/useCases.yml +13 -0
- package/dist/.test/assets/environments/declarations/declapract.declare.yml +4 -0
- package/dist/.test/assets/environments/declarations/practices/environments/.declapract.integration.test.ts +136 -0
- package/dist/.test/assets/environments/declarations/practices/environments/__snapshots__/.declapract.integration.test.ts.snap +55 -0
- package/dist/.test/assets/environments/declarations/practices/environments/bad-practices/old-dev-scripts/package.json.declapract.ts +59 -0
- package/dist/.test/assets/environments/declarations/practices/environments/bad-practices/old-stage-enum/.declapract.integration.test.ts +133 -0
- package/dist/.test/assets/environments/declarations/practices/environments/bad-practices/old-stage-enum/.test/assets/demo-repo-with-stage-enum/declapract.use.yml +8 -0
- package/dist/.test/assets/environments/declarations/practices/environments/bad-practices/old-stage-enum/.test/assets/demo-repo-with-stage-enum/package.json +4 -0
- package/dist/.test/assets/environments/declarations/practices/environments/bad-practices/old-stage-enum/.test/assets/demo-repo-with-stage-enum/src/logic/getDeployTarget.ts +15 -0
- package/dist/.test/assets/environments/declarations/practices/environments/bad-practices/old-stage-enum/__snapshots__/.declapract.integration.test.ts.snap +40 -0
- package/dist/.test/assets/environments/declarations/practices/environments/bad-practices/old-stage-enum/src/<star><star>/<star>.ts.declapract.ts +304 -0
- package/dist/.test/assets/environments/declarations/practices/environments/best-practice/.declapract.readme.md +61 -0
- package/dist/.test/assets/environments/declarations/practices/environments/best-practice/package.json +7 -0
- package/dist/.test/assets/environments/declarations/practices/environments/best-practice/package.json.declapract.ts +3 -0
- package/dist/.test/assets/environments/declarations/practices/environments/best-practice/src/access/sdks/sdkAwsLambdaEnvAccessAncient.ts +32 -0
- package/dist/.test/assets/environments/declarations/practices/environments/best-practice/src/access/sdks/sdkAwsLambdaEnvAccessContemp.ts +14 -0
- package/dist/.test/assets/environments/declarations/practices/environments/best-practice/src/utils/environment.ts +9 -0
- package/dist/.test/assets/environments/declarations/useCases.yml +5 -0
- package/dist/.test/assets/expo/declarations/declapract.declare.yml +4 -0
- package/dist/.test/assets/expo/declarations/practices/cicd-app-react-native-expo/.declapract.integration.test.ts +910 -0
- package/dist/.test/assets/expo/declarations/practices/cicd-app-react-native-expo/__snapshots__/.declapract.integration.test.ts.snap +300 -0
- package/dist/.test/assets/expo/declarations/practices/cicd-app-react-native-expo/best-practice/.declapract.readme.md +27 -0
- package/dist/.test/assets/expo/declarations/practices/cicd-app-react-native-expo/best-practice/.github/workflows/.deploy-expo.yml +137 -0
- package/dist/.test/assets/expo/declarations/practices/cicd-app-react-native-expo/best-practice/.github/workflows/deploy.yml +76 -0
- package/dist/.test/assets/expo/declarations/practices/cicd-app-react-native-expo/best-practice/.github/workflows/test.yml +25 -0
- package/dist/.test/assets/expo/declarations/practices/cicd-app-react-native-expo/best-practice/.gitignore.declapract.ts +28 -0
- package/dist/.test/assets/expo/declarations/practices/cicd-app-react-native-expo/best-practice/package.json +36 -0
- package/dist/.test/assets/expo/declarations/practices/cicd-app-react-native-expo/best-practice/package.json.declapract.ts +3 -0
- package/dist/.test/assets/expo/declarations/practices/node/.npmrc.declapract.integration.test.ts +165 -0
- package/dist/.test/assets/expo/declarations/practices/node/.test/assets/repo-expo-npmrc/declapract.use.yml +23 -0
- package/dist/.test/assets/expo/declarations/practices/node/.test/assets/repo-expo-npmrc/package.json +4 -0
- package/dist/.test/assets/expo/declarations/practices/node/__snapshots__/.npmrc.declapract.integration.test.ts.snap +24 -0
- package/dist/.test/assets/expo/declarations/practices/node/bad-practices/self-deps-not-link/.declapract.integration.test.ts +102 -0
- package/dist/.test/assets/expo/declarations/practices/node/bad-practices/self-deps-not-link/.declapract.readme.md +10 -0
- package/dist/.test/assets/expo/declarations/practices/node/bad-practices/self-deps-not-link/.test/assets/demo-repo-with-self-deps/declapract.declare.yml +4 -0
- package/dist/.test/assets/expo/declarations/practices/node/bad-practices/self-deps-not-link/.test/assets/demo-repo-with-self-deps/declapract.use.yml +8 -0
- package/dist/.test/assets/expo/declarations/practices/node/bad-practices/self-deps-not-link/.test/assets/demo-repo-with-self-deps/package.json +15 -0
- package/dist/.test/assets/expo/declarations/practices/node/bad-practices/self-deps-not-link/__snapshots__/.declapract.integration.test.ts.snap +46 -0
- package/dist/.test/assets/expo/declarations/practices/node/bad-practices/self-deps-not-link/package.json.declapract.ts +69 -0
- package/dist/.test/assets/expo/declarations/practices/node/best-practice/.npmrc.declapract.ts +64 -0
- package/dist/.test/assets/expo/declarations/practices/node/best-practice/.nvmrc +1 -0
- package/dist/.test/assets/expo/declarations/practices/node/best-practice/package.json +15 -0
- package/dist/.test/assets/expo/declarations/practices/node/best-practice/package.json.declapract.ts +3 -0
- package/dist/.test/assets/expo/declarations/practices/node/best-practice/readme.md +1 -0
- package/dist/.test/assets/expo/declarations/practices/node/best-practice/readme.md.declapract.ts +3 -0
- package/dist/.test/assets/expo/declarations/useCases.yml +8 -0
- package/dist/.test/assets/expo-fullusecase/declarations/declapract.declare.yml +10 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cache/.declapract.integration.test.ts +108 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cache/.test/assets/repo-with-old-cache-package/declapract.use.yml +6 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cache/.test/assets/repo-with-old-cache-package/package.json +7 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cache/.test/assets/repo-with-valid-cache-package/declapract.use.yml +6 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cache/.test/assets/repo-with-valid-cache-package/package.json +7 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cache/.test/assets/repo-without-cache-package/declapract.use.yml +6 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cache/.test/assets/repo-without-cache-package/package.json +7 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cache/best-practice/package.json +7 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cache/best-practice/package.json.declapract.ts +3 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cicd-app-react-native-expo/.declapract.integration.test.ts +910 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cicd-app-react-native-expo/__snapshots__/.declapract.integration.test.ts.snap +300 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cicd-app-react-native-expo/best-practice/.declapract.readme.md +27 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cicd-app-react-native-expo/best-practice/.github/workflows/.deploy-expo.yml +137 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cicd-app-react-native-expo/best-practice/.github/workflows/deploy.yml +76 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cicd-app-react-native-expo/best-practice/.github/workflows/test.yml +25 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cicd-app-react-native-expo/best-practice/.gitignore.declapract.ts +28 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cicd-app-react-native-expo/best-practice/package.json +36 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cicd-app-react-native-expo/best-practice/package.json.declapract.ts +3 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cicd-common/.declapract.integration.test.ts +597 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cicd-common/.test/assets/repo-with-unpinned-workflow/.github/workflows/.test.yml +19 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cicd-common/.test/assets/repo-with-unpinned-workflow/.github/workflows/consumer-owned.yml +21 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cicd-common/.test/assets/repo-with-unpinned-workflow/.github/workflows/review.yml +26 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cicd-common/.test/assets/repo-with-unpinned-workflow/declapract.use.yml +6 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cicd-common/.test/assets/repo-with-unpinned-workflow/package.json +4 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cicd-common/__snapshots__/.declapract.integration.test.ts.snap +538 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cicd-common/__snapshots__/declastruct-insync-grep.declapract.integration.test.ts.snap +3 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cicd-common/bad-practices/has-changelog-file/changelog.md.declapract.ts +11 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cicd-common/bad-practices/old-names/.github/workflows/ci-on-commit.yml.declapract.ts +3 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cicd-common/bad-practices/old-names/.github/workflows/ci_on_commit.yml.declapract.ts +3 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cicd-common/bad-practices/old-names/.github/workflows/pr-release-on-main.yml.declapract.ts +3 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cicd-common/bad-practices/old-names/.github/workflows/test-on-commit.yml.declapract.ts +3 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cicd-common/bad-practices/old-names/.github/workflows/test_on_commit.yml.declapract.ts +3 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cicd-common/bad-practices/old-use-apikeys/.agent/repo=.this/role=any/skills/use.apikeys.json.declapract.ts +7 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cicd-common/bad-practices/old-use-apikeys/.agent/repo=.this/role=any/skills/use.apikeys.sh.declapract.ts +7 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cicd-common/best-practice/.declapract.readme.md +8 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cicd-common/best-practice/.github/actions/please-release/action.yml +469 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cicd-common/best-practice/.github/actions/test-shards-setup/action.yml +68 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cicd-common/best-practice/.github/workflows/.declastruct.yml +212 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cicd-common/best-practice/.github/workflows/.install.yml +56 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cicd-common/best-practice/.github/workflows/.test.yml +368 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cicd-common/best-practice/.github/workflows/.test.yml.declapract.ts +26 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cicd-common/best-practice/.github/workflows/release.yml +32 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cicd-common/best-practice/.github/workflows/report-slow-tests.sh +65 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cicd-common/best-practice/.github/workflows/review.yml +26 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cicd-common/best-practice/.github/workflows/test.yml +25 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cicd-common/best-practice/.github/workflows/test.yml.declapract.ts +15 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cicd-common/declastruct-insync-grep.declapract.integration.test.ts +49 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cicd-common/report-slow-tests.play.declapract.integration.test.ts +144 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/conventional-commits/__snapshots__/commitlint-body-max-line.declapract.integration.test.ts.snap +3 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/conventional-commits/bad-practices/commitlint/package.json +5 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/conventional-commits/bad-practices/commitlint/package.json.declapract.ts +19 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/conventional-commits/best-practice/.declapract.readme.md +5 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/conventional-commits/best-practice/.husky/check.commit.sh +7 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/conventional-commits/best-practice/.husky/commit-msg +8 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/conventional-commits/best-practice/commitlint.config.js +26 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/conventional-commits/best-practice/package.json +17 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/conventional-commits/best-practice/package.json.declapract.ts +3 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/conventional-commits/commitlint-body-max-line.declapract.integration.test.ts +49 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/directory-structure-src/bad-practices/data-dir/.declapract.readme.md +10 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/directory-structure-src/bad-practices/data-dir/src/<star><star>/data/<star><star>/<star>.declapract.ts +19 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/directory-structure-src/bad-practices/domain-dir/.declapract.readme.md +8 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/directory-structure-src/bad-practices/domain-dir/src/<star><star>/domain/<star><star>/<star>.declapract.ts +59 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/directory-structure-src/bad-practices/logic-dir/.declapract.readme.md +8 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/directory-structure-src/bad-practices/logic-dir/src/<star><star>/logic/<star><star>/<star>.declapract.ts +19 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/directory-structure-src/bad-practices/model-dir/.declapract.readme.md +3 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/directory-structure-src/bad-practices/model-dir/src/<star><star>/<star>.ts.declapract.ts +46 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/directory-structure-src/bad-practices/model-dir/src/<star><star>/model/<star><star>/<star>.declapract.ts +16 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/directory-structure-src/bad-practices/nonpublished-modules-dir/src/__nonpublished_modules__/<star><star>/<star>.declapract.ts +17 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/directory-structure-src/bad-practices/old-import-paths/.declapract.readme.md +21 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/directory-structure-src/bad-practices/old-import-paths/src/<star><star>/<star>.ts.declapract.ts +67 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/directory-structure-src/bad-practices/services-dir/.declapract.readme.md +5 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/directory-structure-src/bad-practices/services-dir/src/<star><star>/services/<star><star>/<star>.declapract.ts +16 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/directory-structure-src/best-practice/.declapract.readme.md +73 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/directory-structure-src/best-practice/src/access/daos/<star><star>/<star>.ts.declapract.ts +4 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/directory-structure-src/best-practice/src/access/sdks/<star><star>/<star>.ts.declapract.ts +4 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/directory-structure-src/best-practice/src/access/svcs/<star><star>/<star>.ts.declapract.ts +4 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/directory-structure-src/best-practice/src/contract/<star><star>/<star>.ts.declapract.ts +4 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/directory-structure-src/best-practice/src/domain.objects/<star><star>/<star>.ts.declapract.ts +4 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/directory-structure-src/best-practice/src/domain.operations/<star><star>/<star>.ts.declapract.ts +4 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/directory-structure-src/best-practice/src/infra/<star><star>/<star>.ts.declapract.ts +4 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/domain/.declapract.integration.test.ts +115 -0
- package/dist/{practices/domain/bad-practices/schematic-joi-model/src/domain → .test/assets/expo-fullusecase/declarations/practices/domain/bad-practices/schematic-joi-model/src/domain.objects}/<star><star>/<star>.ts.declapract.ts +4 -1
- package/dist/.test/assets/expo-fullusecase/declarations/practices/domain/bad-practices/simple-type-guards/.declapract.readme.md +1 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/domain/bad-practices/simple-type-guards/package.json.declapract.ts +23 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/domain/best-practice/package.json +6 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/domain/best-practice/package.json.declapract.ts +3 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/domain/best-practice/src/domain.objects/index.ts.declapract.ts +12 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/errors/.declapract.integration.test.ts +121 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/errors/bad-practices/error-fns/package.json +5 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/errors/bad-practices/error-fns/package.json.declapract.ts +23 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/errors/bad-practices/error-fns/src/<star><star>/<star>.ts.declapract.ts +17 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/errors/bad-practices/local-error-imports/src/<star><star>/<star>.ts.declapract.ts +85 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/errors/bad-practices/own-implementation/src/<star><star>/UnexpectedCodePathError.ts.declapract.ts +8 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/errors/best-practice/package.json +5 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/errors/best-practice/package.json.declapract.ts +4 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/format/.declapract.integration.test.ts +131 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/format/__snapshots__/.declapract.integration.test.ts.snap +17 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/format/bad-practices/format-script/package.json.declapract.ts +26 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/format/bad-practices/prettier/.declapract.readme.md +6 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/format/bad-practices/prettier/.prettierignore +3 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/format/bad-practices/prettier/.prettierignore.declapract.ts +8 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/format/bad-practices/prettier/package.json +10 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/format/bad-practices/prettier/package.json.declapract.ts +35 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/format/bad-practices/prettier/prettier.config.js +10 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/format/bad-practices/prettier/prettier.config.js.declapract.ts +8 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/format/best-practice/package.json.declapract.ts +50 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/git/.declapract.integration.test.ts +1001 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/git/.test/assets/repo-with-rhachet-only/declapract.use.yml +6 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/git/.test/assets/repo-with-rhachet-only/package.json +4 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/git/.test/assets/repo-without-cache-ignores/declapract.use.yml +9 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/git/.test/assets/repo-without-cache-ignores/package.json +4 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/git/__snapshots__/.declapract.integration.test.ts.snap +53 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/git/best-practice/.declapract.readme.md +23 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/git/best-practice/.gitattributes +7 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/git/best-practice/.gitattributes.declapract.ts +172 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/git/best-practice/.gitignore.declapract.ts +100 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/husky/__snapshots__/check.timestamps.play.declapract.integration.test.ts.snap +7 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/husky/bad-practices/postinstall/package.json.declapract.ts +18 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/husky/best-practice/.husky/check.commit.sh +7 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/husky/best-practice/.husky/check.lockfile.sh +14 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/husky/best-practice/.husky/check.nvm.sh +4 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/husky/best-practice/.husky/check.timestamps.sh +57 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/husky/best-practice/.husky/check.yalc.sh +11 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/husky/best-practice/.husky/commit-msg +8 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/husky/best-practice/.husky/post-checkout +9 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/husky/best-practice/.husky/post-merge +8 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/husky/best-practice/.husky/post-rewrite +8 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/husky/best-practice/.husky/pre-commit +10 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/husky/best-practice/package.json +9 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/husky/best-practice/package.json.declapract.ts +3 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/husky/check.timestamps.play.declapract.integration.test.ts +213 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/lint/__snapshots__/dpdmrc-exclude-policy.declapract.integration.test.ts.snap +3 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/lint/bad-practices/biome-json-extension/biome.json.declapract.ts +7 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/lint/bad-practices/depcheck-denylisted-ignores/.declapract.readme.md +8 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/lint/bad-practices/depcheck-denylisted-ignores/.depcheckrc.yml.declapract.ts +64 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/lint/bad-practices/eslint/.eslintrc.js +67 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/lint/bad-practices/eslint/.eslintrc.js.declapract.ts +3 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/lint/bad-practices/eslint/package.json.declapract.ts +51 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/lint/bad-practices/tslint/package.json.declapract.ts +22 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/lint/bad-practices/tslint/tslint.json.declapract.ts +3 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/lint/best-practice/.declapract.readme.md +5 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/lint/best-practice/.depcheckrc.yml +25 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/lint/best-practice/.depcheckrc.yml.declapract.ts +42 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/lint/best-practice/.dpdmrc.yaml +13 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/lint/best-practice/biome.jsonc +103 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/lint/best-practice/package.json +17 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/lint/best-practice/package.json.declapract.ts +4 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/lint/dpdmrc-exclude-policy.declapract.integration.test.ts +50 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/lint-react/best-practice/package.json +7 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/lint-react/best-practice/package.json.declapract.ts +4 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/lint-react-native/best-practice/.eslintrc.js +57 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/lint-react-native/best-practice/package.json +5 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/lint-react-native/best-practice/package.json.declapract.ts +4 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/node/.npmrc.declapract.integration.test.ts +165 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/node/.test/assets/repo-expo-npmrc/declapract.use.yml +23 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/node/.test/assets/repo-expo-npmrc/package.json +4 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/node/__snapshots__/.npmrc.declapract.integration.test.ts.snap +24 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/node/bad-practices/self-deps-not-link/.declapract.integration.test.ts +102 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/node/bad-practices/self-deps-not-link/.declapract.readme.md +10 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/node/bad-practices/self-deps-not-link/.test/assets/demo-repo-with-self-deps/declapract.declare.yml +4 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/node/bad-practices/self-deps-not-link/.test/assets/demo-repo-with-self-deps/declapract.use.yml +8 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/node/bad-practices/self-deps-not-link/.test/assets/demo-repo-with-self-deps/package.json +15 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/node/bad-practices/self-deps-not-link/__snapshots__/.declapract.integration.test.ts.snap +46 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/node/bad-practices/self-deps-not-link/package.json.declapract.ts +69 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/node/best-practice/.npmrc.declapract.ts +64 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/node/best-practice/.nvmrc +1 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/node/best-practice/package.json +15 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/node/best-practice/package.json.declapract.ts +3 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/node/best-practice/readme.md +1 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/node/best-practice/readme.md.declapract.ts +3 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/nonpublished-modules/.declapract.readme.md +5 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/nonpublished-modules/bad-practices/ahbode-standard-lambda-handler/.declapract.readme.md +1 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/nonpublished-modules/bad-practices/ahbode-standard-lambda-handler/src/__nonpublished_modules__/ahbode-standard-lambda-handler/<star><star>/<star>.ts.declapract.ts +3 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/nonpublished-modules/bad-practices/ahbode-standard-lambda-handler/src/contract/handlers/<star>.integration.test.ts +1 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/nonpublished-modules/bad-practices/ahbode-standard-lambda-handler/src/contract/handlers/<star>.integration.test.ts.declapract.ts +15 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/nonpublished-modules/bad-practices/ahbode-standard-lambda-handler/src/contract/handlers/<star>.ts +1 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/nonpublished-modules/bad-practices/ahbode-standard-lambda-handler/src/contract/handlers/<star>.ts.declapract.ts +13 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/nonpublished-modules/bad-practices/deep-omit/.declapract.readme.md +1 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/nonpublished-modules/bad-practices/deep-omit/src/__nonpublished_modules__/deep-omit/<star><star>/<star>.ts.declapract.ts +3 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/nonpublished-modules/bad-practices/deep-omit/src/data/dao/<star><star>/<star>.integration.test.ts +1 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/nonpublished-modules/bad-practices/deep-omit/src/data/dao/<star><star>/<star>.integration.test.ts.declapract.ts +18 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/nonpublished-modules/bad-practices/simple-dynamodb-client/.declapract.readme.md +1 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/nonpublished-modules/bad-practices/simple-dynamodb-client/src/__nonpublished_modules__/simple-dynamodb-client/<star><star>/<star>.ts.declapract.ts +3 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/package-json-order/best-practice/.declapract.readme.md +3 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/package-json-order/best-practice/package.json.declapract.ts +233 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/pnpm/.declapract.integration.test.ts +325 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/pnpm/.test/assets/repo-npm-to-pnpm/.husky/check.lockfile.sh +10 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/pnpm/.test/assets/repo-npm-to-pnpm/declapract.use.yml +7 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/pnpm/.test/assets/repo-npm-to-pnpm/package.json +16 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/pnpm/.test/assets/repo-npm-to-pnpm/pnpm-workspace.yaml +3 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/pnpm/__snapshots__/.declapract.integration.test.ts.snap +75 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/pnpm/bad-practices/husky-lockfile-check/.declapract.readme.md +17 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/pnpm/bad-practices/husky-lockfile-check/.husky/check.lockfile.sh.declapract.ts +28 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/pnpm/bad-practices/inert-build-allowlist/pnpm-workspace.yaml.declapract.ts +59 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/pnpm/bad-practices/npm-overrides/.declapract.readme.md +20 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/pnpm/bad-practices/npm-overrides/package.json.declapract.ts +75 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/pnpm/bad-practices/package-lock-json/.declapract.readme.md +30 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/pnpm/bad-practices/package-lock-json/package-lock.json.declapract.integration.test.ts +105 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/pnpm/bad-practices/package-lock-json/package-lock.json.declapract.ts +41 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/pnpm/best-practice/.declapract.readme.md +22 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/pnpm/best-practice/package.json +3 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/pnpm/best-practice/package.json.declapract.ts +17 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/provision-github/bad-practices/deprecated-reviewers-variable/declapract.use.yml.declapract.ts +41 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/provision-github/bad-practices/old-declastruct-resources-path/provision/github/declastruct.resources.ts.declapract.ts +7 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/provision-github/bad-practices/terraform-github/provision/github/environment/import-existing-repo.sh +12 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/provision-github/bad-practices/terraform-github/provision/github/environment/import-existing-repo.sh.declapract.ts +3 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/provision-github/bad-practices/terraform-github/provision/github/environment/main.tf +20 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/provision-github/bad-practices/terraform-github/provision/github/environment/main.tf.declapract.ts +3 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/provision-github/bad-practices/terraform-github/provision/github/environment/versions.tf +9 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/provision-github/bad-practices/terraform-github/provision/github/environment/versions.tf.declapract.ts +3 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/provision-github/bad-practices/terraform-github/provision/github/product/repository.tf +74 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/provision-github/bad-practices/terraform-github/provision/github/product/repository.tf.declapract.ts +3 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/provision-github/best-practice/.declapract.readme.md +7 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/provision-github/best-practice/package.json +7 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/provision-github/best-practice/package.json.declapract.ts +3 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/provision-github/best-practice/provision/github.repo/resources.ts +245 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/rhachet/.declapract.integration.test.ts +98 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/rhachet/.test/assets/demo-repo-with-consumer-boot/.agent/repo=.this/role=any/boot.yml +7 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/rhachet/.test/assets/demo-repo-with-consumer-boot/declapract.declare.yml +4 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/rhachet/.test/assets/demo-repo-with-consumer-boot/declapract.use.yml +2 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/rhachet/.test/assets/demo-repo-with-consumer-boot/package.json +4 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/rhachet/__snapshots__/.declapract.integration.test.ts.snap +45 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/rhachet/__snapshots__/boot-refs-glossary.declapract.integration.test.ts.snap +6 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/rhachet/__snapshots__/boot-yml-findsert.declapract.integration.test.ts.snap +27 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/rhachet/bad-practices/deprecated-use-file/.declapract.readme.md +11 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/rhachet/bad-practices/deprecated-use-file/rhachet.use.ts.declapract.ts +12 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/rhachet/bad-practices/prod-deps/.declapract.readme.md +59 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/rhachet/bad-practices/prod-deps/.test/assets/demo-repo-with-rhachet-prod-deps/declapract.declare.yml +4 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/rhachet/bad-practices/prod-deps/.test/assets/demo-repo-with-rhachet-prod-deps/declapract.use.yml +2 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/rhachet/bad-practices/prod-deps/.test/assets/demo-repo-with-rhachet-prod-deps/package.json +12 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/rhachet/bad-practices/prod-deps/package.json +5 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/rhachet/bad-practices/prod-deps/package.json.declapract.ts +88 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/rhachet/bad-practices/review-peer-artifacts/.behavior/<star><star>/.reviews/<star><star>/<star>peer-review<star>.md.declapract.ts +16 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/rhachet/bad-practices/review-peer-artifacts/.behavior/<star><star>/.reviews/peer/<star><star>/<star>.md.declapract.ts +16 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/rhachet/bad-practices/review-peer-artifacts/.declapract.readme.md +12 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/rhachet/best-practice/.agent/keyrack.yml.declapract.ts +3 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/rhachet/best-practice/.agent/repo=.this/role=any/boot.yml +46 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/rhachet/best-practice/.agent/repo=.this/role=any/boot.yml.declapract.ts +165 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/rhachet/best-practice/.declapract.readme.md +32 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/rhachet/best-practice/.gitignore.declapract.ts +77 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/rhachet/best-practice/package.json +18 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/rhachet/best-practice/package.json.declapract.ts +3 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/rhachet/boot-refs-glossary.declapract.integration.test.ts +89 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/rhachet/boot-yml-findsert.declapract.integration.test.ts +145 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-any/__snapshots__/changedsince-origin-main.declapract.integration.test.ts.snap +8 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-any/autoprune-hooks.declapract.integration.test.ts +104 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-any/bad-practices/javascript-config-files/jest.<star>.js.declapract.ts +17 -0
- package/dist/{practices/tests → .test/assets/expo-fullusecase/declarations/practices/tests-any}/bad-practices/old-acceptance-dir-location/.declapract.integration.test.ts +2 -2
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-any/bad-practices/old-acceptance-dir-location/.test/assets/demo-repo-with-accept-blackbox-dir/declapract.declare.yml +4 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-any/bad-practices/old-acceptance-dir-location/.test/assets/demo-repo-with-accept-blackbox-dir/package.json +4 -0
- package/dist/{practices/tests → .test/assets/expo-fullusecase/declarations/practices/tests-any}/bad-practices/old-acceptance-import-paths/.declapract.readme.md +2 -2
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-any/bad-practices/old-acceptance-test-utils/blackbox/_utils/getDataFromLastOpenBracketAtStartOfLine.ts.declapract.ts +3 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-any/bad-practices/old-acceptance-test-utils/blackbox/_utils/invokeLambda.ts.declapract.ts +3 -0
- package/dist/{practices/tests → .test/assets/expo-fullusecase/declarations/practices/tests-any}/bad-practices/old-acceptance-test-utils/blackbox/lambdas/<star>.ts.declapract.ts +9 -9
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-any/bad-practices/old-acceptance-test-utils-3/blackbox/_utils/environment.ts.declapract.ts +3 -0
- package/dist/{practices/tests → .test/assets/expo-fullusecase/declarations/practices/tests-any}/best-practice/package.json +4 -6
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-any/best-practice/package.json.declapract.ts +3 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-any/changedsince-origin-main.declapract.integration.test.ts +58 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-any/package.json.shell-flags.declapract.integration.test.ts +139 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-expo/.declapract.integration.test.ts +138 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-expo/.test/assets/repo-expo-greenfield/declapract.use.yml +6 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-expo/.test/assets/repo-expo-greenfield/package.json +8 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-expo/__snapshots__/.declapract.integration.test.ts.snap +121 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-expo/__snapshots__/package.json.declapract.integration.test.ts.snap +60 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-expo/bad-practices/inline-jest-config/.declapract.readme.md +22 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-expo/bad-practices/inline-jest-config/package.json.declapract.ts +36 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-expo/best-practice/jest.acceptance.config.ts +48 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-expo/best-practice/jest.acceptance.env.ts +15 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-expo/best-practice/jest.integration.config.ts +47 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-expo/best-practice/jest.integration.env.ts +26 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-expo/best-practice/jest.unit.config.ts +58 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-expo/best-practice/jest.unit.env.ts +23 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-expo/best-practice/package.json.declapract.ts +193 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-expo/package.json.declapract.integration.test.ts +94 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/typescript-any/bad-practices/relative-imports/.declapract.readme.md +45 -0
- package/dist/{practices/typescript → .test/assets/expo-fullusecase/declarations/practices/typescript-any}/bad-practices/relative-imports/src/<star><star>/<star>.ts.declapract.ts +11 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/typescript-any/best-practice/.declapract.readme.md +17 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/typescript-any/best-practice/package.json +8 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/typescript-any/best-practice/package.json.declapract.ts +11 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/typescript-expo/__snapshots__/package.json.declapract.integration.test.ts.snap +8 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/typescript-expo/__snapshots__/tsconfig.json.declapract.integration.test.ts.snap +19 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/typescript-expo/best-practice/package.json +6 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/typescript-expo/best-practice/package.json.declapract.ts +12 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/typescript-expo/best-practice/tsconfig.json +14 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/typescript-expo/best-practice/tsconfig.json.declapract.ts +12 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/typescript-expo/package.json.declapract.integration.test.ts +43 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/typescript-expo/tsconfig.json.declapract.integration.test.ts +43 -0
- package/dist/.test/assets/expo-fullusecase/declarations/useCases.yml +36 -0
- package/dist/.test/assets/expo-fullusecase/repo-greenfield/app.json +6 -0
- package/dist/.test/assets/expo-fullusecase/repo-greenfield/declapract.use.yml +24 -0
- package/dist/.test/assets/expo-fullusecase/repo-greenfield/package.json +7 -0
- package/dist/.test/assets/expo-migration/declarations/declapract.declare.yml +4 -0
- package/dist/.test/assets/expo-migration/declarations/practices/cicd-app-react-native-expo/.declapract.integration.test.ts +910 -0
- package/dist/.test/assets/expo-migration/declarations/practices/cicd-app-react-native-expo/__snapshots__/.declapract.integration.test.ts.snap +300 -0
- package/dist/.test/assets/expo-migration/declarations/practices/cicd-app-react-native-expo/best-practice/.declapract.readme.md +27 -0
- package/dist/.test/assets/expo-migration/declarations/practices/cicd-app-react-native-expo/best-practice/.github/workflows/.deploy-expo.yml +137 -0
- package/dist/.test/assets/expo-migration/declarations/practices/cicd-app-react-native-expo/best-practice/.github/workflows/deploy.yml +76 -0
- package/dist/.test/assets/expo-migration/declarations/practices/cicd-app-react-native-expo/best-practice/.github/workflows/test.yml +25 -0
- package/dist/.test/assets/expo-migration/declarations/practices/cicd-app-react-native-expo/best-practice/.gitignore.declapract.ts +28 -0
- package/dist/.test/assets/expo-migration/declarations/practices/cicd-app-react-native-expo/best-practice/package.json +36 -0
- package/dist/.test/assets/expo-migration/declarations/practices/cicd-app-react-native-expo/best-practice/package.json.declapract.ts +3 -0
- package/dist/.test/assets/expo-migration/declarations/practices/directory-structure-src/bad-practices/data-dir/.declapract.readme.md +10 -0
- package/dist/.test/assets/expo-migration/declarations/practices/directory-structure-src/bad-practices/data-dir/src/<star><star>/data/<star><star>/<star>.declapract.ts +19 -0
- package/dist/.test/assets/expo-migration/declarations/practices/directory-structure-src/bad-practices/domain-dir/.declapract.readme.md +8 -0
- package/dist/.test/assets/expo-migration/declarations/practices/directory-structure-src/bad-practices/domain-dir/src/<star><star>/domain/<star><star>/<star>.declapract.ts +59 -0
- package/dist/.test/assets/expo-migration/declarations/practices/directory-structure-src/bad-practices/logic-dir/.declapract.readme.md +8 -0
- package/dist/.test/assets/expo-migration/declarations/practices/directory-structure-src/bad-practices/logic-dir/src/<star><star>/logic/<star><star>/<star>.declapract.ts +19 -0
- package/dist/.test/assets/expo-migration/declarations/practices/directory-structure-src/bad-practices/model-dir/.declapract.readme.md +3 -0
- package/dist/.test/assets/expo-migration/declarations/practices/directory-structure-src/bad-practices/model-dir/src/<star><star>/<star>.ts.declapract.ts +46 -0
- package/dist/.test/assets/expo-migration/declarations/practices/directory-structure-src/bad-practices/model-dir/src/<star><star>/model/<star><star>/<star>.declapract.ts +16 -0
- package/dist/.test/assets/expo-migration/declarations/practices/directory-structure-src/bad-practices/nonpublished-modules-dir/src/__nonpublished_modules__/<star><star>/<star>.declapract.ts +17 -0
- package/dist/.test/assets/expo-migration/declarations/practices/directory-structure-src/bad-practices/old-import-paths/.declapract.readme.md +21 -0
- package/dist/.test/assets/expo-migration/declarations/practices/directory-structure-src/bad-practices/old-import-paths/src/<star><star>/<star>.ts.declapract.ts +67 -0
- package/dist/.test/assets/expo-migration/declarations/practices/directory-structure-src/bad-practices/services-dir/.declapract.readme.md +5 -0
- package/dist/.test/assets/expo-migration/declarations/practices/directory-structure-src/bad-practices/services-dir/src/<star><star>/services/<star><star>/<star>.declapract.ts +16 -0
- package/dist/.test/assets/expo-migration/declarations/practices/directory-structure-src/best-practice/.declapract.readme.md +73 -0
- package/dist/.test/assets/expo-migration/declarations/practices/directory-structure-src/best-practice/src/access/daos/<star><star>/<star>.ts.declapract.ts +4 -0
- package/dist/.test/assets/expo-migration/declarations/practices/directory-structure-src/best-practice/src/access/sdks/<star><star>/<star>.ts.declapract.ts +4 -0
- package/dist/.test/assets/expo-migration/declarations/practices/directory-structure-src/best-practice/src/access/svcs/<star><star>/<star>.ts.declapract.ts +4 -0
- package/dist/.test/assets/expo-migration/declarations/practices/directory-structure-src/best-practice/src/contract/<star><star>/<star>.ts.declapract.ts +4 -0
- package/dist/.test/assets/expo-migration/declarations/practices/directory-structure-src/best-practice/src/domain.objects/<star><star>/<star>.ts.declapract.ts +4 -0
- package/dist/.test/assets/expo-migration/declarations/practices/directory-structure-src/best-practice/src/domain.operations/<star><star>/<star>.ts.declapract.ts +4 -0
- package/dist/.test/assets/expo-migration/declarations/practices/directory-structure-src/best-practice/src/infra/<star><star>/<star>.ts.declapract.ts +4 -0
- package/dist/.test/assets/expo-migration/declarations/practices/domain/.declapract.integration.test.ts +115 -0
- package/dist/.test/assets/expo-migration/declarations/practices/domain/bad-practices/schematic-joi-model/src/domain.objects/<star><star>/<star>.ts.declapract.ts +19 -0
- package/dist/.test/assets/expo-migration/declarations/practices/domain/bad-practices/simple-type-guards/.declapract.readme.md +1 -0
- package/dist/.test/assets/expo-migration/declarations/practices/domain/bad-practices/simple-type-guards/package.json.declapract.ts +23 -0
- package/dist/.test/assets/expo-migration/declarations/practices/domain/best-practice/package.json +6 -0
- package/dist/.test/assets/expo-migration/declarations/practices/domain/best-practice/package.json.declapract.ts +3 -0
- package/dist/.test/assets/expo-migration/declarations/practices/domain/best-practice/src/domain.objects/index.ts.declapract.ts +12 -0
- package/dist/.test/assets/expo-migration/declarations/practices/git/.declapract.integration.test.ts +1001 -0
- package/dist/.test/assets/expo-migration/declarations/practices/git/.test/assets/repo-with-rhachet-only/declapract.use.yml +6 -0
- package/dist/.test/assets/expo-migration/declarations/practices/git/.test/assets/repo-with-rhachet-only/package.json +4 -0
- package/dist/.test/assets/expo-migration/declarations/practices/git/.test/assets/repo-without-cache-ignores/declapract.use.yml +9 -0
- package/dist/.test/assets/expo-migration/declarations/practices/git/.test/assets/repo-without-cache-ignores/package.json +4 -0
- package/dist/.test/assets/expo-migration/declarations/practices/git/__snapshots__/.declapract.integration.test.ts.snap +53 -0
- package/dist/.test/assets/expo-migration/declarations/practices/git/best-practice/.declapract.readme.md +23 -0
- package/dist/.test/assets/expo-migration/declarations/practices/git/best-practice/.gitattributes +7 -0
- package/dist/.test/assets/expo-migration/declarations/practices/git/best-practice/.gitattributes.declapract.ts +172 -0
- package/dist/.test/assets/expo-migration/declarations/practices/git/best-practice/.gitignore.declapract.ts +100 -0
- package/dist/.test/assets/expo-migration/declarations/practices/node/.npmrc.declapract.integration.test.ts +165 -0
- package/dist/.test/assets/expo-migration/declarations/practices/node/.test/assets/repo-expo-npmrc/declapract.use.yml +23 -0
- package/dist/.test/assets/expo-migration/declarations/practices/node/.test/assets/repo-expo-npmrc/package.json +4 -0
- package/dist/.test/assets/expo-migration/declarations/practices/node/__snapshots__/.npmrc.declapract.integration.test.ts.snap +24 -0
- package/dist/.test/assets/expo-migration/declarations/practices/node/bad-practices/self-deps-not-link/.declapract.integration.test.ts +102 -0
- package/dist/.test/assets/expo-migration/declarations/practices/node/bad-practices/self-deps-not-link/.declapract.readme.md +10 -0
- package/dist/.test/assets/expo-migration/declarations/practices/node/bad-practices/self-deps-not-link/.test/assets/demo-repo-with-self-deps/declapract.declare.yml +4 -0
- package/dist/.test/assets/expo-migration/declarations/practices/node/bad-practices/self-deps-not-link/.test/assets/demo-repo-with-self-deps/declapract.use.yml +8 -0
- package/dist/.test/assets/expo-migration/declarations/practices/node/bad-practices/self-deps-not-link/.test/assets/demo-repo-with-self-deps/package.json +15 -0
- package/dist/.test/assets/expo-migration/declarations/practices/node/bad-practices/self-deps-not-link/__snapshots__/.declapract.integration.test.ts.snap +46 -0
- package/dist/.test/assets/expo-migration/declarations/practices/node/bad-practices/self-deps-not-link/package.json.declapract.ts +69 -0
- package/dist/.test/assets/expo-migration/declarations/practices/node/best-practice/.npmrc.declapract.ts +64 -0
- package/dist/.test/assets/expo-migration/declarations/practices/node/best-practice/.nvmrc +1 -0
- package/dist/.test/assets/expo-migration/declarations/practices/node/best-practice/package.json +15 -0
- package/dist/.test/assets/expo-migration/declarations/practices/node/best-practice/package.json.declapract.ts +3 -0
- package/dist/.test/assets/expo-migration/declarations/practices/node/best-practice/readme.md +1 -0
- package/dist/.test/assets/expo-migration/declarations/practices/node/best-practice/readme.md.declapract.ts +3 -0
- package/dist/.test/assets/expo-migration/declarations/practices/pnpm/.declapract.integration.test.ts +325 -0
- package/dist/.test/assets/expo-migration/declarations/practices/pnpm/.test/assets/repo-npm-to-pnpm/.husky/check.lockfile.sh +10 -0
- package/dist/.test/assets/expo-migration/declarations/practices/pnpm/.test/assets/repo-npm-to-pnpm/declapract.use.yml +7 -0
- package/dist/.test/assets/expo-migration/declarations/practices/pnpm/.test/assets/repo-npm-to-pnpm/package.json +16 -0
- package/dist/.test/assets/expo-migration/declarations/practices/pnpm/.test/assets/repo-npm-to-pnpm/pnpm-workspace.yaml +3 -0
- package/dist/.test/assets/expo-migration/declarations/practices/pnpm/__snapshots__/.declapract.integration.test.ts.snap +75 -0
- package/dist/.test/assets/expo-migration/declarations/practices/pnpm/bad-practices/husky-lockfile-check/.declapract.readme.md +17 -0
- package/dist/.test/assets/expo-migration/declarations/practices/pnpm/bad-practices/husky-lockfile-check/.husky/check.lockfile.sh.declapract.ts +28 -0
- package/dist/.test/assets/expo-migration/declarations/practices/pnpm/bad-practices/inert-build-allowlist/pnpm-workspace.yaml.declapract.ts +59 -0
- package/dist/.test/assets/expo-migration/declarations/practices/pnpm/bad-practices/npm-overrides/.declapract.readme.md +20 -0
- package/dist/.test/assets/expo-migration/declarations/practices/pnpm/bad-practices/npm-overrides/package.json.declapract.ts +75 -0
- package/dist/.test/assets/expo-migration/declarations/practices/pnpm/bad-practices/package-lock-json/.declapract.readme.md +30 -0
- package/dist/.test/assets/expo-migration/declarations/practices/pnpm/bad-practices/package-lock-json/package-lock.json.declapract.integration.test.ts +105 -0
- package/dist/.test/assets/expo-migration/declarations/practices/pnpm/bad-practices/package-lock-json/package-lock.json.declapract.ts +41 -0
- package/dist/.test/assets/expo-migration/declarations/practices/pnpm/best-practice/.declapract.readme.md +22 -0
- package/dist/.test/assets/expo-migration/declarations/practices/pnpm/best-practice/package.json +3 -0
- package/dist/.test/assets/expo-migration/declarations/practices/pnpm/best-practice/package.json.declapract.ts +17 -0
- package/dist/.test/assets/expo-migration/declarations/practices/rhachet/.declapract.integration.test.ts +98 -0
- package/dist/.test/assets/expo-migration/declarations/practices/rhachet/.test/assets/demo-repo-with-consumer-boot/.agent/repo=.this/role=any/boot.yml +7 -0
- package/dist/.test/assets/expo-migration/declarations/practices/rhachet/.test/assets/demo-repo-with-consumer-boot/declapract.declare.yml +4 -0
- package/dist/.test/assets/expo-migration/declarations/practices/rhachet/.test/assets/demo-repo-with-consumer-boot/declapract.use.yml +2 -0
- package/dist/.test/assets/expo-migration/declarations/practices/rhachet/.test/assets/demo-repo-with-consumer-boot/package.json +4 -0
- package/dist/.test/assets/expo-migration/declarations/practices/rhachet/__snapshots__/.declapract.integration.test.ts.snap +45 -0
- package/dist/.test/assets/expo-migration/declarations/practices/rhachet/__snapshots__/boot-refs-glossary.declapract.integration.test.ts.snap +6 -0
- package/dist/.test/assets/expo-migration/declarations/practices/rhachet/__snapshots__/boot-yml-findsert.declapract.integration.test.ts.snap +27 -0
- package/dist/.test/assets/expo-migration/declarations/practices/rhachet/bad-practices/deprecated-use-file/.declapract.readme.md +11 -0
- package/dist/.test/assets/expo-migration/declarations/practices/rhachet/bad-practices/deprecated-use-file/rhachet.use.ts.declapract.ts +12 -0
- package/dist/.test/assets/expo-migration/declarations/practices/rhachet/bad-practices/prod-deps/.declapract.readme.md +59 -0
- package/dist/.test/assets/expo-migration/declarations/practices/rhachet/bad-practices/prod-deps/.test/assets/demo-repo-with-rhachet-prod-deps/declapract.declare.yml +4 -0
- package/dist/.test/assets/expo-migration/declarations/practices/rhachet/bad-practices/prod-deps/.test/assets/demo-repo-with-rhachet-prod-deps/declapract.use.yml +2 -0
- package/dist/.test/assets/expo-migration/declarations/practices/rhachet/bad-practices/prod-deps/.test/assets/demo-repo-with-rhachet-prod-deps/package.json +12 -0
- package/dist/.test/assets/expo-migration/declarations/practices/rhachet/bad-practices/prod-deps/package.json +5 -0
- package/dist/.test/assets/expo-migration/declarations/practices/rhachet/bad-practices/prod-deps/package.json.declapract.ts +88 -0
- package/dist/.test/assets/expo-migration/declarations/practices/rhachet/bad-practices/review-peer-artifacts/.behavior/<star><star>/.reviews/<star><star>/<star>peer-review<star>.md.declapract.ts +16 -0
- package/dist/.test/assets/expo-migration/declarations/practices/rhachet/bad-practices/review-peer-artifacts/.behavior/<star><star>/.reviews/peer/<star><star>/<star>.md.declapract.ts +16 -0
- package/dist/.test/assets/expo-migration/declarations/practices/rhachet/bad-practices/review-peer-artifacts/.declapract.readme.md +12 -0
- package/dist/.test/assets/expo-migration/declarations/practices/rhachet/best-practice/.agent/keyrack.yml.declapract.ts +3 -0
- package/dist/.test/assets/expo-migration/declarations/practices/rhachet/best-practice/.agent/repo=.this/role=any/boot.yml +46 -0
- package/dist/.test/assets/expo-migration/declarations/practices/rhachet/best-practice/.agent/repo=.this/role=any/boot.yml.declapract.ts +165 -0
- package/dist/.test/assets/expo-migration/declarations/practices/rhachet/best-practice/.declapract.readme.md +32 -0
- package/dist/.test/assets/expo-migration/declarations/practices/rhachet/best-practice/.gitignore.declapract.ts +77 -0
- package/dist/.test/assets/expo-migration/declarations/practices/rhachet/best-practice/package.json +18 -0
- package/dist/.test/assets/expo-migration/declarations/practices/rhachet/best-practice/package.json.declapract.ts +3 -0
- package/dist/.test/assets/expo-migration/declarations/practices/rhachet/boot-refs-glossary.declapract.integration.test.ts +89 -0
- package/dist/.test/assets/expo-migration/declarations/practices/rhachet/boot-yml-findsert.declapract.integration.test.ts +145 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/__snapshots__/changedsince-origin-main.declapract.integration.test.ts.snap +8 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/autoprune-hooks.declapract.integration.test.ts +104 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/bad-practices/javascript-config-files/.declapract.readme.md +1 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/bad-practices/javascript-config-files/jest.<star>.js.declapract.ts +17 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/bad-practices/mocks/.declapract.readme.md +8 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/bad-practices/mocks/<star><star>/__mock__/<star>.js +3 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/bad-practices/mocks/<star><star>/__mock__/<star>.ts +3 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/bad-practices/old-acceptance-dir-location/.declapract.integration.test.ts +63 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/bad-practices/old-acceptance-dir-location/.declapract.readme.md +22 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/bad-practices/old-acceptance-dir-location/.test/assets/demo-repo-with-accept-blackbox-dir/accept.blackbox/.test/assets/.agent/config.yml +1 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/bad-practices/old-acceptance-dir-location/.test/assets/demo-repo-with-accept-blackbox-dir/accept.blackbox/.test/assets/.rhachet/manifest.json +1 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/bad-practices/old-acceptance-dir-location/.test/assets/demo-repo-with-accept-blackbox-dir/accept.blackbox/somefile.ts +1 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/bad-practices/old-acceptance-dir-location/.test/assets/demo-repo-with-accept-blackbox-dir/declapract.declare.yml +4 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/bad-practices/old-acceptance-dir-location/.test/assets/demo-repo-with-accept-blackbox-dir/declapract.use.yml +5 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/bad-practices/old-acceptance-dir-location/.test/assets/demo-repo-with-accept-blackbox-dir/package.json +4 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/bad-practices/old-acceptance-dir-location/accept.blackbox/<star><star>/<star>.declapract.ts +19 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/bad-practices/old-acceptance-dir-location/acceptance/<star><star>/<star>.declapract.ts +19 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/bad-practices/old-acceptance-import-paths/.declapract.readme.md +31 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/bad-practices/old-acceptance-import-paths/<star><star>/<star>.ts.declapract.ts +25 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/bad-practices/old-acceptance-test-utils/blackbox/_utils/getDataFromLastOpenBracketAtStartOfLine.ts.declapract.ts +3 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/bad-practices/old-acceptance-test-utils/blackbox/_utils/invokeLambda.ts.declapract.ts +3 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/bad-practices/old-acceptance-test-utils/blackbox/lambdas/<star>.ts.declapract.ts +44 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/bad-practices/old-acceptance-test-utils-2/blackbox/lambdas/<star>.ts.declapract.ts +22 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/bad-practices/old-acceptance-test-utils-3/blackbox/_utils/environment.ts.declapract.ts +3 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/bad-practices/old-acceptance-test-utils-3/blackbox/lambdas/<star>.ts.declapract.ts +18 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/bad-practices/old-extension-pattern/.declapract.readme.md +3 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/bad-practices/old-extension-pattern/<star><star>/<star>.test.acceptance.ts.declapract.ts +11 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/bad-practices/old-extension-pattern/<star><star>/<star>.test.integration.ts.declapract.ts +11 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/bad-practices/old-test-utils-and-assets-location/.declapract.readme.md +8 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/bad-practices/old-test-utils-and-assets-location/<star><star>/<star>.ts.declapract.ts +27 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/bad-practices/old-test-utils-and-assets-location/<star><star>/__test_assets__/<star><star>/<star>.declapract.ts +17 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/bad-practices/old-test-utils-and-assets-location/<star><star>/__test_utils__/<star><star>/<star>.declapract.ts +17 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/best-practice/.declapract.readme.md +45 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/best-practice/.declapract.todo.md +3 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/best-practice/package.json +17 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/best-practice/package.json.declapract.ts +3 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/best-practice/src/<star><star>/<star>.integration.test.ts.declapract.ts +3 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/best-practice/src/<star><star>/<star>.test.ts.declapract.ts +3 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/changedsince-origin-main.declapract.integration.test.ts +58 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/package.json.shell-flags.declapract.integration.test.ts +139 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-expo/.declapract.integration.test.ts +138 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-expo/.test/assets/repo-expo-greenfield/declapract.use.yml +6 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-expo/.test/assets/repo-expo-greenfield/package.json +8 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-expo/__snapshots__/.declapract.integration.test.ts.snap +121 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-expo/__snapshots__/package.json.declapract.integration.test.ts.snap +60 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-expo/bad-practices/inline-jest-config/.declapract.readme.md +22 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-expo/bad-practices/inline-jest-config/package.json.declapract.ts +36 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-expo/best-practice/jest.acceptance.config.ts +48 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-expo/best-practice/jest.acceptance.env.ts +15 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-expo/best-practice/jest.config.ts +7 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-expo/best-practice/jest.integration.config.ts +47 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-expo/best-practice/jest.integration.env.ts +26 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-expo/best-practice/jest.unit.config.ts +58 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-expo/best-practice/jest.unit.env.ts +23 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-expo/best-practice/package.json.declapract.ts +193 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-expo/package.json.declapract.integration.test.ts +94 -0
- package/dist/.test/assets/expo-migration/declarations/practices/typescript-any/bad-practices/relative-imports/.declapract.readme.md +45 -0
- package/dist/.test/assets/expo-migration/declarations/practices/typescript-any/bad-practices/relative-imports/src/<star><star>/<star>.ts.declapract.ts +97 -0
- package/dist/.test/assets/expo-migration/declarations/practices/typescript-any/best-practice/.declapract.readme.md +17 -0
- package/dist/.test/assets/expo-migration/declarations/practices/typescript-any/best-practice/package.json +8 -0
- package/dist/.test/assets/expo-migration/declarations/practices/typescript-any/best-practice/package.json.declapract.ts +11 -0
- package/dist/.test/assets/expo-migration/declarations/practices/typescript-expo/__snapshots__/package.json.declapract.integration.test.ts.snap +8 -0
- package/dist/.test/assets/expo-migration/declarations/practices/typescript-expo/__snapshots__/tsconfig.json.declapract.integration.test.ts.snap +19 -0
- package/dist/.test/assets/expo-migration/declarations/practices/typescript-expo/best-practice/package.json +6 -0
- package/dist/.test/assets/expo-migration/declarations/practices/typescript-expo/best-practice/package.json.declapract.ts +12 -0
- package/dist/.test/assets/expo-migration/declarations/practices/typescript-expo/best-practice/tsconfig.json +14 -0
- package/dist/.test/assets/expo-migration/declarations/practices/typescript-expo/best-practice/tsconfig.json.declapract.ts +12 -0
- package/dist/.test/assets/expo-migration/declarations/practices/typescript-expo/package.json.declapract.integration.test.ts +43 -0
- package/dist/.test/assets/expo-migration/declarations/practices/typescript-expo/tsconfig.json.declapract.integration.test.ts +43 -0
- package/dist/.test/assets/expo-migration/declarations/useCases.yml +21 -0
- package/dist/.test/assets/expo-migration/repo-app-protools-shaped/.github/workflows/.deploy-expo.yml +30 -0
- package/dist/.test/assets/expo-migration/repo-app-protools-shaped/.husky/check.lockfile.sh +5 -0
- package/dist/.test/assets/expo-migration/repo-app-protools-shaped/declapract.use.yml +24 -0
- package/dist/.test/assets/expo-migration/repo-app-protools-shaped/jest.config.js +8 -0
- package/dist/.test/assets/expo-migration/repo-app-protools-shaped/package-lock.json +7 -0
- package/dist/.test/assets/expo-migration/repo-app-protools-shaped/package.json +22 -0
- package/dist/.test/assets/expo-migration/repo-app-protools-shaped/pnpm-lock.yaml +5 -0
- package/dist/.test/assets/expo-migration/repo-app-protools-shaped/src/data/dao/daoCustomer.ts +9 -0
- package/dist/.test/assets/expo-migration/repo-app-protools-shaped/src/logic/customer/getCustomer.ts +25 -0
- package/dist/.test/assets/expo-migration/repo-app-protools-shaped/src/logic/shared/formatCustomer.ts +8 -0
- package/dist/.test/assets/expo-migration/repo-app-protools-shaped/tsconfig.json +12 -0
- package/dist/.test/assets/expo-toolchain/declarations/declapract.declare.yml +4 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/__snapshots__/changedsince-origin-main.declapract.integration.test.ts.snap +8 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/autoprune-hooks.declapract.integration.test.ts +104 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/bad-practices/javascript-config-files/.declapract.readme.md +1 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/bad-practices/javascript-config-files/jest.<star>.js.declapract.ts +17 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/bad-practices/mocks/.declapract.readme.md +8 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/bad-practices/mocks/<star><star>/__mock__/<star>.js +3 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/bad-practices/mocks/<star><star>/__mock__/<star>.ts +3 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/bad-practices/old-acceptance-dir-location/.declapract.integration.test.ts +63 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/bad-practices/old-acceptance-dir-location/.declapract.readme.md +22 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/bad-practices/old-acceptance-dir-location/.test/assets/demo-repo-with-accept-blackbox-dir/accept.blackbox/.test/assets/.agent/config.yml +1 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/bad-practices/old-acceptance-dir-location/.test/assets/demo-repo-with-accept-blackbox-dir/accept.blackbox/.test/assets/.rhachet/manifest.json +1 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/bad-practices/old-acceptance-dir-location/.test/assets/demo-repo-with-accept-blackbox-dir/accept.blackbox/somefile.ts +1 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/bad-practices/old-acceptance-dir-location/.test/assets/demo-repo-with-accept-blackbox-dir/declapract.declare.yml +4 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/bad-practices/old-acceptance-dir-location/.test/assets/demo-repo-with-accept-blackbox-dir/declapract.use.yml +5 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/bad-practices/old-acceptance-dir-location/.test/assets/demo-repo-with-accept-blackbox-dir/package.json +4 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/bad-practices/old-acceptance-dir-location/accept.blackbox/<star><star>/<star>.declapract.ts +19 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/bad-practices/old-acceptance-dir-location/acceptance/<star><star>/<star>.declapract.ts +19 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/bad-practices/old-acceptance-import-paths/.declapract.readme.md +31 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/bad-practices/old-acceptance-import-paths/<star><star>/<star>.ts.declapract.ts +25 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/bad-practices/old-acceptance-test-utils/blackbox/_utils/getDataFromLastOpenBracketAtStartOfLine.ts.declapract.ts +3 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/bad-practices/old-acceptance-test-utils/blackbox/_utils/invokeLambda.ts.declapract.ts +3 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/bad-practices/old-acceptance-test-utils/blackbox/lambdas/<star>.ts.declapract.ts +44 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/bad-practices/old-acceptance-test-utils-2/blackbox/lambdas/<star>.ts.declapract.ts +22 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/bad-practices/old-acceptance-test-utils-3/blackbox/_utils/environment.ts.declapract.ts +3 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/bad-practices/old-acceptance-test-utils-3/blackbox/lambdas/<star>.ts.declapract.ts +18 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/bad-practices/old-extension-pattern/.declapract.readme.md +3 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/bad-practices/old-extension-pattern/<star><star>/<star>.test.acceptance.ts.declapract.ts +11 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/bad-practices/old-extension-pattern/<star><star>/<star>.test.integration.ts.declapract.ts +11 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/bad-practices/old-test-utils-and-assets-location/.declapract.readme.md +8 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/bad-practices/old-test-utils-and-assets-location/<star><star>/<star>.ts.declapract.ts +27 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/bad-practices/old-test-utils-and-assets-location/<star><star>/__test_assets__/<star><star>/<star>.declapract.ts +17 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/bad-practices/old-test-utils-and-assets-location/<star><star>/__test_utils__/<star><star>/<star>.declapract.ts +17 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/best-practice/.declapract.readme.md +45 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/best-practice/.declapract.todo.md +3 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/best-practice/package.json +17 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/best-practice/package.json.declapract.ts +3 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/best-practice/src/<star><star>/<star>.integration.test.ts.declapract.ts +3 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/best-practice/src/<star><star>/<star>.test.ts.declapract.ts +3 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/changedsince-origin-main.declapract.integration.test.ts +58 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/package.json.shell-flags.declapract.integration.test.ts +139 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-expo/.declapract.integration.test.ts +138 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-expo/.test/assets/repo-expo-greenfield/declapract.use.yml +6 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-expo/.test/assets/repo-expo-greenfield/package.json +8 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-expo/__snapshots__/.declapract.integration.test.ts.snap +121 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-expo/__snapshots__/package.json.declapract.integration.test.ts.snap +60 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-expo/bad-practices/inline-jest-config/.declapract.readme.md +22 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-expo/bad-practices/inline-jest-config/package.json.declapract.ts +36 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-expo/best-practice/jest.acceptance.config.ts +48 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-expo/best-practice/jest.acceptance.env.ts +15 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-expo/best-practice/jest.config.ts +7 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-expo/best-practice/jest.integration.config.ts +47 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-expo/best-practice/jest.integration.env.ts +26 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-expo/best-practice/jest.unit.config.ts +58 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-expo/best-practice/jest.unit.env.ts +23 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-expo/best-practice/package.json.declapract.ts +193 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-expo/package.json.declapract.integration.test.ts +94 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/typescript-any/bad-practices/relative-imports/.declapract.readme.md +45 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/typescript-any/bad-practices/relative-imports/src/<star><star>/<star>.ts.declapract.ts +97 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/typescript-any/best-practice/.declapract.readme.md +17 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/typescript-any/best-practice/package.json +8 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/typescript-any/best-practice/package.json.declapract.ts +11 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/typescript-expo/__snapshots__/package.json.declapract.integration.test.ts.snap +8 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/typescript-expo/__snapshots__/tsconfig.json.declapract.integration.test.ts.snap +19 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/typescript-expo/best-practice/package.json +6 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/typescript-expo/best-practice/package.json.declapract.ts +12 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/typescript-expo/best-practice/tsconfig.json +14 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/typescript-expo/best-practice/tsconfig.json.declapract.ts +12 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/typescript-expo/package.json.declapract.integration.test.ts +43 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/typescript-expo/tsconfig.json.declapract.integration.test.ts +43 -0
- package/dist/.test/assets/expo-toolchain/declarations/useCases.yml +12 -0
- package/dist/.test/assets/format/declarations/declapract.declare.yml +9 -0
- package/dist/.test/assets/format/declarations/practices/format/.declapract.integration.test.ts +131 -0
- package/dist/.test/assets/format/declarations/practices/format/__snapshots__/.declapract.integration.test.ts.snap +17 -0
- package/dist/.test/assets/format/declarations/practices/format/bad-practices/format-script/package.json.declapract.ts +26 -0
- package/dist/.test/assets/format/declarations/practices/format/bad-practices/prettier/.declapract.readme.md +6 -0
- package/dist/.test/assets/format/declarations/practices/format/bad-practices/prettier/.prettierignore +3 -0
- package/dist/.test/assets/format/declarations/practices/format/bad-practices/prettier/.prettierignore.declapract.ts +8 -0
- package/dist/.test/assets/format/declarations/practices/format/bad-practices/prettier/package.json +10 -0
- package/dist/.test/assets/format/declarations/practices/format/bad-practices/prettier/package.json.declapract.ts +35 -0
- package/dist/.test/assets/format/declarations/practices/format/bad-practices/prettier/prettier.config.js +10 -0
- package/dist/.test/assets/format/declarations/practices/format/bad-practices/prettier/prettier.config.js.declapract.ts +8 -0
- package/dist/.test/assets/format/declarations/practices/format/best-practice/package.json.declapract.ts +50 -0
- package/dist/.test/assets/format/declarations/practices/terraform-common/bad-practices/terraform-dir/.declapract.readme.md +8 -0
- package/dist/.test/assets/format/declarations/practices/terraform-common/bad-practices/terraform-dir/provision/terraform/<star><star>/<star>.declapract.ts +17 -0
- package/dist/.test/assets/format/declarations/practices/terraform-common/best-practice/.terraform-version +1 -0
- package/dist/.test/assets/format/declarations/practices/terraform-common/best-practice/package.json +6 -0
- package/dist/.test/assets/format/declarations/practices/terraform-common/best-practice/package.json.declapract.ts +3 -0
- package/dist/.test/assets/format/declarations/useCases.yml +13 -0
- package/dist/.test/assets/format/repo-with-terraform/declapract.use.yml +8 -0
- package/dist/.test/assets/format/repo-with-terraform/package.json +5 -0
- package/dist/.test/assets/format/repo-without-terraform/declapract.use.yml +6 -0
- package/dist/.test/assets/format/repo-without-terraform/package.json +5 -0
- package/dist/.test/assets/node-service/declarations/declapract.declare.yml +4 -0
- package/dist/.test/assets/node-service/declarations/practices/node-service/bad-practices/license/package.json.declapract.ts +22 -0
- package/dist/.test/assets/node-service/declarations/practices/node-service/bad-practices/simple-lambda-client/.declapract.readme.md +55 -0
- package/dist/.test/assets/node-service/declarations/practices/node-service/bad-practices/simple-lambda-client/package.json +5 -0
- package/dist/.test/assets/node-service/declarations/practices/node-service/bad-practices/simple-lambda-client/package.json.declapract.ts +27 -0
- package/dist/.test/assets/node-service/declarations/practices/node-service/bad-practices/simple-lambda-client/src/<star><star>/<star>.ts.declapract.ts +44 -0
- package/dist/.test/assets/node-service/declarations/practices/node-service/bad-practices/simple-lambda-handlers/.declapract.integration.test.ts +103 -0
- package/dist/.test/assets/node-service/declarations/practices/node-service/bad-practices/simple-lambda-handlers/.declapract.readme.md +60 -0
- package/dist/.test/assets/node-service/declarations/practices/node-service/bad-practices/simple-lambda-handlers/.test/assets/demo-repo-with-simple-lambda-handlers/declapract.use.yml +5 -0
- package/dist/.test/assets/node-service/declarations/practices/node-service/bad-practices/simple-lambda-handlers/.test/assets/demo-repo-with-simple-lambda-handlers/package.json +4 -0
- package/dist/.test/assets/node-service/declarations/practices/node-service/bad-practices/simple-lambda-handlers/.test/assets/demo-repo-with-simple-lambda-handlers/src/contract/handlers/getWidget.ts +13 -0
- package/dist/.test/assets/node-service/declarations/practices/node-service/bad-practices/simple-lambda-handlers/__snapshots__/.declapract.integration.test.ts.snap +44 -0
- package/dist/.test/assets/node-service/declarations/practices/node-service/bad-practices/simple-lambda-handlers/package.json +5 -0
- package/dist/.test/assets/node-service/declarations/practices/node-service/bad-practices/simple-lambda-handlers/package.json.declapract.ts +27 -0
- package/dist/.test/assets/node-service/declarations/practices/node-service/bad-practices/simple-lambda-handlers/src/<star><star>/<star>.ts.declapract.ts +130 -0
- package/dist/.test/assets/node-service/declarations/practices/node-service/best-practice/package.json +6 -0
- package/dist/.test/assets/node-service/declarations/practices/node-service/best-practice/package.json.declapract.ts +3 -0
- package/dist/.test/assets/node-service/declarations/useCases.yml +5 -0
- package/dist/.test/assets/pnpm/declarations/declapract.declare.yml +4 -0
- package/dist/.test/assets/pnpm/declarations/practices/pnpm/.declapract.integration.test.ts +325 -0
- package/dist/.test/assets/pnpm/declarations/practices/pnpm/.test/assets/repo-npm-to-pnpm/.husky/check.lockfile.sh +10 -0
- package/dist/.test/assets/pnpm/declarations/practices/pnpm/.test/assets/repo-npm-to-pnpm/declapract.use.yml +7 -0
- package/dist/.test/assets/pnpm/declarations/practices/pnpm/.test/assets/repo-npm-to-pnpm/package.json +16 -0
- package/dist/.test/assets/pnpm/declarations/practices/pnpm/.test/assets/repo-npm-to-pnpm/pnpm-workspace.yaml +3 -0
- package/dist/.test/assets/pnpm/declarations/practices/pnpm/__snapshots__/.declapract.integration.test.ts.snap +75 -0
- package/dist/.test/assets/pnpm/declarations/practices/pnpm/bad-practices/husky-lockfile-check/.declapract.readme.md +17 -0
- package/dist/.test/assets/pnpm/declarations/practices/pnpm/bad-practices/husky-lockfile-check/.husky/check.lockfile.sh.declapract.ts +28 -0
- package/dist/.test/assets/pnpm/declarations/practices/pnpm/bad-practices/inert-build-allowlist/pnpm-workspace.yaml.declapract.ts +59 -0
- package/dist/.test/assets/pnpm/declarations/practices/pnpm/bad-practices/npm-overrides/.declapract.readme.md +20 -0
- package/dist/.test/assets/pnpm/declarations/practices/pnpm/bad-practices/npm-overrides/package.json.declapract.ts +75 -0
- package/dist/.test/assets/pnpm/declarations/practices/pnpm/bad-practices/package-lock-json/.declapract.readme.md +30 -0
- package/dist/.test/assets/pnpm/declarations/practices/pnpm/bad-practices/package-lock-json/package-lock.json.declapract.integration.test.ts +105 -0
- package/dist/.test/assets/pnpm/declarations/practices/pnpm/bad-practices/package-lock-json/package-lock.json.declapract.ts +41 -0
- package/dist/.test/assets/pnpm/declarations/practices/pnpm/best-practice/.declapract.readme.md +22 -0
- package/dist/.test/assets/pnpm/declarations/practices/pnpm/best-practice/package.json +3 -0
- package/dist/.test/assets/pnpm/declarations/practices/pnpm/best-practice/package.json.declapract.ts +17 -0
- package/dist/.test/assets/pnpm/declarations/useCases.yml +7 -0
- package/dist/.test/assets/runtime-schemas/declarations/declapract.declare.yml +4 -0
- package/dist/.test/assets/runtime-schemas/declarations/practices/runtime-schemas/bad-practices/joi/.declapract.integration.test.ts +102 -0
- package/dist/.test/assets/runtime-schemas/declarations/practices/runtime-schemas/bad-practices/joi/.declapract.readme.md +3 -0
- package/dist/.test/assets/runtime-schemas/declarations/practices/runtime-schemas/bad-practices/joi/.test/assets/demo-repo-with-joi/declapract.use.yml +5 -0
- package/dist/.test/assets/runtime-schemas/declarations/practices/runtime-schemas/bad-practices/joi/.test/assets/demo-repo-with-joi/package.json +4 -0
- package/dist/.test/assets/runtime-schemas/declarations/practices/runtime-schemas/bad-practices/joi/.test/assets/demo-repo-with-joi/src/contract/schemas/widget.schema.ts +9 -0
- package/dist/.test/assets/runtime-schemas/declarations/practices/runtime-schemas/bad-practices/joi/__snapshots__/.declapract.integration.test.ts.snap +37 -0
- package/dist/.test/assets/runtime-schemas/declarations/practices/runtime-schemas/bad-practices/joi/package.json +5 -0
- package/dist/.test/assets/runtime-schemas/declarations/practices/runtime-schemas/bad-practices/joi/package.json.declapract.ts +23 -0
- package/dist/.test/assets/runtime-schemas/declarations/practices/runtime-schemas/bad-practices/joi/src/<star><star>/<star>.ts.declapract.ts +79 -0
- package/dist/.test/assets/runtime-schemas/declarations/practices/runtime-schemas/best-practice/package.json +5 -0
- package/dist/.test/assets/runtime-schemas/declarations/practices/runtime-schemas/best-practice/package.json.declapract.ts +3 -0
- package/dist/.test/assets/runtime-schemas/declarations/useCases.yml +5 -0
- package/dist/.test/assets/tests-service/declarations/declapract.declare.yml +10 -0
- package/dist/.test/assets/tests-service/declarations/practices/tests-service/.test/assets/demo-repo-service/declapract.use.yml +5 -0
- package/dist/.test/assets/tests-service/declarations/practices/tests-service/.test/assets/demo-repo-service/package.json +4 -0
- package/dist/.test/assets/tests-service/declarations/practices/tests-service/__snapshots__/package.json.declapract.integration.test.ts.snap +26 -0
- package/dist/.test/assets/tests-service/declarations/practices/tests-service/asFunctionNameFromTestFileName.ts +7 -0
- package/dist/.test/assets/tests-service/declarations/practices/tests-service/best-practice/.declapract.readme.md +68 -0
- package/dist/.test/assets/tests-service/declarations/practices/tests-service/best-practice/blackbox/<star><star>/<star>.acceptance.test.ts.declapract.ts +3 -0
- package/dist/.test/assets/tests-service/declarations/practices/tests-service/best-practice/blackbox/lambdas/<star>.acceptance.test.ts.declapract.ts +56 -0
- package/dist/.test/assets/tests-service/declarations/practices/tests-service/best-practice/package.json +8 -0
- package/dist/.test/assets/tests-service/declarations/practices/tests-service/best-practice/package.json.declapract.ts +101 -0
- package/dist/.test/assets/tests-service/declarations/practices/tests-service/best-practice/src/<star><star>/<star>.integration.test.ts.declapract.ts +3 -0
- package/dist/.test/assets/tests-service/declarations/practices/tests-service/best-practice/src/<star><star>/<star>.test.ts.declapract.ts +3 -0
- package/dist/.test/assets/tests-service/declarations/practices/tests-service/package.json.declapract.integration.test.ts +204 -0
- package/dist/.test/assets/tests-service/declarations/useCases.yml +9 -0
- package/dist/__snapshots__/ancientTargetPublished.declapract.integration.test.ts.snap +42 -0
- package/dist/__snapshots__/workflowCallerCalleeReconciliation.declapract.integration.test.ts.snap +450 -0
- package/dist/__snapshots__/workflowEnvDeploymentFalse.declapract.integration.test.ts.snap +36 -0
- package/dist/actionPins.declapract.integration.test.ts +3 -18
- package/dist/ancientTargetPublished.declapract.integration.test.ts +174 -0
- package/dist/parsePackageJSONAdoption.declapract.integration.test.ts +136 -0
- package/dist/practiceTestFileLocation.declapract.integration.test.ts +75 -0
- package/dist/practices/cache/.declapract.integration.test.ts +7 -7
- package/dist/practices/cache/.test/assets/repo-with-valid-cache-package/package.json +1 -1
- package/dist/practices/cache/best-practice/package.json +3 -3
- package/dist/practices/cicd-app-react-native-expo/.declapract.integration.test.ts +910 -0
- package/dist/practices/cicd-app-react-native-expo/__snapshots__/.declapract.integration.test.ts.snap +300 -0
- package/dist/practices/cicd-app-react-native-expo/best-practice/.github/workflows/.deploy-expo.yml +28 -19
- package/dist/practices/cicd-app-react-native-expo/best-practice/.github/workflows/deploy.yml +11 -11
- package/dist/practices/cicd-app-react-native-expo/best-practice/.github/workflows/test.yml +3 -5
- package/dist/practices/cicd-app-react-native-expo/best-practice/package.json +2 -9
- package/dist/practices/cicd-common/.declapract.integration.test.ts +25 -0
- package/dist/practices/cicd-common/__snapshots__/.declapract.integration.test.ts.snap +11 -23
- package/dist/practices/cicd-common/__snapshots__/declastruct-insync-grep.declapract.integration.test.ts.snap +3 -0
- package/dist/practices/cicd-common/best-practice/.github/workflows/.declastruct.yml +22 -8
- package/dist/practices/cicd-common/best-practice/.github/workflows/.test.yml +11 -23
- package/dist/practices/cicd-common/best-practice/.github/workflows/.test.yml.declapract.ts +12 -1
- package/dist/practices/cicd-common/best-practice/.github/workflows/report-slow-tests.sh +65 -0
- package/dist/practices/cicd-common/declastruct-insync-grep.declapract.integration.test.ts +49 -0
- package/dist/practices/cicd-common/report-slow-tests.play.declapract.integration.test.ts +144 -0
- package/dist/practices/cicd-package/best-practice/.github/workflows/provision.yml +2 -1
- package/dist/practices/cicd-service/.declapract.integration.test.ts +175 -0
- package/dist/practices/cicd-service/.test/assets/demo-repo-pre-stamped-nords/.github/workflows/provision.yml +110 -0
- package/dist/practices/cicd-service/.test/assets/demo-repo-pre-stamped-nords/declapract.use.nords.yml +20 -0
- package/dist/practices/cicd-service/.test/assets/demo-repo-pre-stamped-nords/declapract.use.rds.yml +20 -0
- package/dist/practices/cicd-service/.test/assets/demo-repo-pre-stamped-nords/package.json +4 -0
- package/dist/practices/cicd-service/.test/assets/demo-repo-service/declapract.use.nords.yml +20 -0
- package/dist/practices/cicd-service/.test/assets/demo-repo-service/declapract.use.rds.yml +20 -0
- package/dist/practices/cicd-service/.test/assets/demo-repo-service/package.json +4 -0
- package/dist/practices/cicd-service/__snapshots__/.declapract.integration.test.ts.snap +24 -0
- package/dist/practices/cicd-service/__snapshots__/acceptanceContempFleetGuard.declapract.integration.test.ts.snap +13 -0
- package/dist/practices/cicd-service/__snapshots__/insync-grep.declapract.integration.test.ts.snap +5 -0
- package/dist/practices/cicd-service/__snapshots__/provision.yml.declapract.integration.test.ts.snap +297 -0
- package/dist/practices/cicd-service/acceptanceContempFleetGuard.declapract.integration.test.ts +89 -0
- package/dist/practices/cicd-service/bad-practices/rds-jobs-in-non-rds-service/.declapract.integration.test.ts +153 -0
- package/dist/practices/cicd-service/bad-practices/rds-jobs-in-non-rds-service/.declapract.readme.md +38 -0
- package/dist/practices/cicd-service/bad-practices/rds-jobs-in-non-rds-service/.github/workflows/provision.yml.declapract.integration.test.ts +167 -0
- package/dist/practices/cicd-service/bad-practices/rds-jobs-in-non-rds-service/.github/workflows/provision.yml.declapract.ts +88 -0
- package/dist/practices/cicd-service/bad-practices/rds-jobs-in-non-rds-service/.test/assets/repo-non-rds/readme.md +9 -0
- package/dist/practices/cicd-service/bad-practices/rds-jobs-in-non-rds-service/.test/assets/repo-with-aws-resources-callee/provision/aws/resources.ts +5 -0
- package/dist/practices/cicd-service/bad-practices/rds-jobs-in-non-rds-service/.test/assets/repo-with-schema-callee/provision/schema/init.sql +5 -0
- package/dist/practices/cicd-service/bad-practices/rds-jobs-in-non-rds-service/__snapshots__/.declapract.integration.test.ts.snap +183 -0
- package/dist/practices/cicd-service/best-practice/.declapract.readme.md +18 -0
- package/dist/practices/cicd-service/best-practice/.github/workflows/.deploy-sls.yml +32 -11
- package/dist/practices/cicd-service/best-practice/.github/workflows/.sql-schema-control.yml +20 -10
- package/dist/practices/cicd-service/best-practice/.github/workflows/.terraform.yml +14 -4
- package/dist/practices/cicd-service/best-practice/.github/workflows/deploy.yml +17 -9
- package/dist/practices/cicd-service/best-practice/.github/workflows/provision.yml +15 -10
- package/dist/practices/cicd-service/best-practice/.github/workflows/provision.yml.declapract.ts +74 -0
- package/dist/practices/cicd-service/best-practice/package.json +3 -3
- package/dist/practices/cicd-service/insync-grep.declapract.integration.test.ts +76 -0
- package/dist/practices/cicd-service/provision.yml.declapract.integration.test.ts +182 -0
- package/dist/practices/commands/best-practice/package.json +2 -2
- package/dist/practices/commands/best-practice/src/contract/commands/sayHello.ts +3 -2
- package/dist/practices/config/.declapract.integration.test.ts +116 -0
- package/dist/practices/config/.test/assets/demo-repo-with-dev-config/config/dev.json +17 -0
- package/dist/practices/config/.test/assets/demo-repo-with-dev-config/declapract.declare.yml +4 -0
- package/dist/practices/config/.test/assets/demo-repo-with-dev-config/declapract.use.yml +9 -0
- package/dist/practices/config/.test/assets/demo-repo-with-dev-config/package.json +4 -0
- package/dist/practices/config/__snapshots__/.declapract.integration.test.ts.snap +43 -0
- package/dist/practices/config/bad-practices/divergent-config-shapes/config/prep.json.declapract.ts +3 -3
- package/dist/practices/config/bad-practices/divergent-config-shapes/config/prod.json.declapract.ts +3 -3
- package/dist/practices/config/bad-practices/old-dev-config-location/config/dev.json.declapract.ts +10 -12
- package/dist/practices/config/best-practice/package.json +2 -2
- package/dist/practices/config/best-practice/src/utils/config/getConfig.ts +24 -5
- package/dist/practices/config/best-practice/src/utils/config/getOneCacheDirectory.ts +33 -0
- package/dist/practices/config/best-practice/src/utils/config/getOneProjectBucket.ts +22 -0
- package/dist/practices/config/best-practice/src/utils/environment.ts +9 -3
- package/dist/practices/config/best-practice/src/utils/environment.ts.declapract.ts +8 -0
- package/dist/practices/config/no-hand-written-config-type.declapract.integration.test.ts +64 -0
- package/dist/practices/conventional-commits/__snapshots__/commitlint-body-max-line.declapract.integration.test.ts.snap +3 -0
- package/dist/practices/conventional-commits/best-practice/commitlint.config.js +5 -0
- package/dist/practices/conventional-commits/best-practice/package.json +1 -1
- package/dist/practices/conventional-commits/commitlint-body-max-line.declapract.integration.test.ts +49 -0
- package/dist/practices/directory-structure-src/bad-practices/old-import-paths/.declapract.readme.md +10 -0
- package/dist/practices/directory-structure-src/bad-practices/old-import-paths/src/<star><star>/<star>.ts.declapract.ts +13 -1
- package/dist/practices/domain/.declapract.integration.test.ts +115 -0
- package/dist/practices/domain/bad-practices/schematic-joi-model/src/domain.objects/<star><star>/<star>.ts.declapract.ts +19 -0
- package/dist/practices/domain/best-practice/package.json +2 -2
- package/dist/practices/domain/best-practice/src/domain.objects/index.ts.declapract.ts +12 -0
- package/dist/practices/environments/.declapract.integration.test.ts +136 -0
- package/dist/practices/environments/__snapshots__/.declapract.integration.test.ts.snap +55 -0
- package/dist/practices/environments/bad-practices/old-dev-scripts/package.json.declapract.ts +6 -4
- package/dist/practices/environments/bad-practices/old-stage-enum/.declapract.integration.test.ts +133 -0
- package/dist/practices/environments/bad-practices/old-stage-enum/.test/assets/demo-repo-with-stage-enum/declapract.use.yml +8 -0
- package/dist/practices/environments/bad-practices/old-stage-enum/.test/assets/demo-repo-with-stage-enum/package.json +4 -0
- package/dist/practices/environments/bad-practices/old-stage-enum/.test/assets/demo-repo-with-stage-enum/src/logic/getDeployTarget.ts +15 -0
- package/dist/practices/environments/bad-practices/old-stage-enum/__snapshots__/.declapract.integration.test.ts.snap +40 -0
- package/dist/practices/environments/bad-practices/old-stage-enum/src/<star><star>/<star>.ts.declapract.ts +291 -24
- package/dist/practices/environments/best-practice/.declapract.readme.md +44 -11
- package/dist/practices/environments/best-practice/src/access/sdks/sdkAwsLambdaEnvAccessAncient.ts +32 -0
- package/dist/practices/environments/best-practice/src/access/sdks/sdkAwsLambdaEnvAccessContemp.ts +14 -0
- package/dist/practices/environments/best-practice/src/utils/environment.ts +3 -2
- package/dist/practices/errors/.declapract.integration.test.ts +121 -0
- package/dist/practices/errors/bad-practices/own-implementation/src/<star><star>/UnexpectedCodePathError.ts.declapract.ts +8 -0
- package/dist/practices/errors/best-practice/package.json +1 -1
- package/dist/practices/format/.declapract.integration.test.ts +131 -0
- package/dist/practices/format/__snapshots__/.declapract.integration.test.ts.snap +17 -0
- package/dist/practices/format/bad-practices/prettier/prettier.config.js.declapract.ts +1 -1
- package/dist/practices/format/best-practice/package.json.declapract.ts +36 -18
- package/dist/practices/git/.declapract.integration.test.ts +57 -6
- package/dist/practices/git/__snapshots__/.declapract.integration.test.ts.snap +2 -0
- package/dist/practices/git/best-practice/.gitattributes.declapract.ts +50 -37
- package/dist/practices/git/best-practice/.gitignore.declapract.ts +8 -0
- package/dist/practices/husky/__snapshots__/check.timestamps.play.declapract.integration.test.ts.snap +7 -0
- package/dist/practices/husky/best-practice/.husky/check.timestamps.sh +11 -2
- package/dist/practices/husky/check.timestamps.play.declapract.integration.test.ts +65 -0
- package/dist/practices/lint/__snapshots__/dpdmrc-exclude-policy.declapract.integration.test.ts.snap +3 -0
- package/dist/practices/lint/bad-practices/depcheck-denylisted-ignores/.depcheckrc.yml.declapract.ts +4 -0
- package/dist/practices/lint/best-practice/.depcheckrc.yml.declapract.ts +10 -9
- package/dist/practices/lint/best-practice/.dpdmrc.yaml +10 -6
- package/dist/practices/lint/dpdmrc-exclude-policy.declapract.integration.test.ts +50 -0
- package/dist/practices/logs/.declapract.integration.test.ts +100 -0
- package/dist/practices/logs/__snapshots__/.declapract.integration.test.ts.snap +33 -0
- package/dist/practices/logs/bad-practices/leveled-term/.test/assets/demo-repo-with-leveled-term/declapract.declare.yml +4 -0
- package/dist/practices/logs/bad-practices/leveled-term/.test/assets/demo-repo-with-leveled-term/declapract.use.yml +2 -0
- package/dist/practices/logs/bad-practices/leveled-term/.test/assets/demo-repo-with-leveled-term/package.json +12 -0
- package/dist/practices/logs/bad-practices/leveled-term/package.json.declapract.ts +56 -12
- package/dist/practices/node/.npmrc.declapract.integration.test.ts +165 -0
- package/dist/practices/node/.test/assets/repo-expo-npmrc/declapract.use.yml +23 -0
- package/dist/practices/node/.test/assets/repo-expo-npmrc/package.json +4 -0
- package/dist/practices/node/__snapshots__/.npmrc.declapract.integration.test.ts.snap +24 -0
- package/dist/practices/node/bad-practices/self-deps-not-link/.declapract.integration.test.ts +102 -0
- package/dist/practices/node/bad-practices/self-deps-not-link/.test/assets/demo-repo-with-self-deps/declapract.declare.yml +4 -0
- package/dist/practices/node/bad-practices/self-deps-not-link/.test/assets/demo-repo-with-self-deps/declapract.use.yml +8 -0
- package/dist/practices/node/bad-practices/self-deps-not-link/.test/assets/demo-repo-with-self-deps/package.json +15 -0
- package/dist/practices/node/bad-practices/self-deps-not-link/__snapshots__/.declapract.integration.test.ts.snap +46 -0
- package/dist/practices/node/bad-practices/self-deps-not-link/package.json.declapract.ts +22 -29
- package/dist/practices/node/best-practice/.npmrc.declapract.ts +64 -0
- package/dist/practices/node/best-practice/package.json +1 -1
- package/dist/practices/node-service/bad-practices/simple-lambda-handlers/.declapract.integration.test.ts +103 -0
- package/dist/practices/node-service/bad-practices/simple-lambda-handlers/.declapract.readme.md +8 -0
- package/dist/practices/node-service/bad-practices/simple-lambda-handlers/.test/assets/demo-repo-with-simple-lambda-handlers/declapract.use.yml +5 -0
- package/dist/practices/node-service/bad-practices/simple-lambda-handlers/.test/assets/demo-repo-with-simple-lambda-handlers/package.json +4 -0
- package/dist/practices/node-service/bad-practices/simple-lambda-handlers/.test/assets/demo-repo-with-simple-lambda-handlers/src/contract/handlers/getWidget.ts +13 -0
- package/dist/practices/node-service/bad-practices/simple-lambda-handlers/__snapshots__/.declapract.integration.test.ts.snap +44 -0
- package/dist/practices/node-service/bad-practices/simple-lambda-handlers/src/<star><star>/<star>.ts.declapract.ts +90 -10
- package/dist/practices/node-service/best-practice/package.json +1 -1
- package/dist/practices/package-json-order/best-practice/package.json.declapract.ts +7 -1
- package/dist/practices/persist-with-dynamodb/.declapract.integration.test.ts +92 -0
- package/dist/practices/persist-with-dynamodb/.test/assets/demo-repo-with-divergent-jest-env/declapract.declare.yml +4 -0
- package/dist/practices/persist-with-dynamodb/.test/assets/demo-repo-with-divergent-jest-env/declapract.use.yml +2 -0
- package/dist/practices/persist-with-dynamodb/.test/assets/demo-repo-with-divergent-jest-env/jest.integration.env.ts +4 -0
- package/dist/practices/persist-with-dynamodb/.test/assets/demo-repo-with-divergent-jest-env/package.json +4 -0
- package/dist/practices/persist-with-dynamodb/__snapshots__/.declapract.integration.test.ts.snap +20 -0
- package/dist/practices/persist-with-dynamodb/best-practice/jest.integration.env.ts +3 -3
- package/dist/practices/persist-with-dynamodb/best-practice/package.json +2 -2
- package/dist/practices/persist-with-rds/.declapract.integration.test.ts +224 -0
- package/dist/practices/persist-with-rds/.extensions.sql.declapract.integration.test.ts +38 -0
- package/dist/practices/persist-with-rds/.test/assets/demo-repo-with-dev-config/config/dev.json +18 -0
- package/dist/practices/persist-with-rds/.test/assets/demo-repo-with-dev-config/declapract.declare.yml +4 -0
- package/dist/practices/persist-with-rds/.test/assets/demo-repo-with-dev-config/declapract.use.yml +18 -0
- package/dist/practices/persist-with-rds/.test/assets/demo-repo-with-dev-config/package.json +4 -0
- package/dist/practices/persist-with-rds/__snapshots__/.declapract.integration.test.ts.snap +45 -0
- package/dist/practices/persist-with-rds/__snapshots__/.extensions.sql.declapract.integration.test.ts.snap +42 -0
- package/dist/practices/persist-with-rds/__snapshots__/deploy-database-gerunds.declapract.integration.test.ts.snap +102 -0
- package/dist/practices/persist-with-rds/__snapshots__/provision-testdb-access.declapract.integration.test.ts.snap +3 -0
- package/dist/practices/persist-with-rds/__snapshots__/ssm-cicd-param-names.declapract.integration.test.ts.snap +10 -0
- package/dist/practices/persist-with-rds/__snapshots__/testdb-preflight-failloud.declapract.integration.test.ts.snap +30 -0
- package/dist/practices/persist-with-rds/bad-practices/old-dev-config-location/config/dev.json.declapract.ts +22 -8
- package/dist/practices/persist-with-rds/best-practice/.declapract.readme.md +32 -0
- package/dist/practices/persist-with-rds/best-practice/codegen.sql.dao.yml +1 -1
- package/dist/practices/persist-with-rds/best-practice/package.json +5 -5
- package/dist/practices/persist-with-rds/best-practice/provision/aws/readme.md +9 -6
- package/dist/practices/persist-with-rds/best-practice/provision/aws/resources.parameters.ts +33 -14
- package/dist/practices/persist-with-rds/best-practice/provision/aws/resources.ts +6 -3
- package/dist/practices/persist-with-rds/best-practice/provision/docker/testdb/wait-for-postgres.sh +13 -3
- package/dist/practices/persist-with-rds/best-practice/provision/schema/deploy.database.sh +27 -22
- package/dist/practices/persist-with-rds/best-practice/src/utils/config/config.schema.ts +13 -6
- package/dist/practices/persist-with-rds/best-practice/src/utils/database/getOneDatabaseConnection.integration.test.ts +10 -0
- package/dist/practices/persist-with-rds/best-practice/src/utils/database/getOneDatabaseConnection.ts +90 -0
- package/dist/practices/persist-with-rds/best-practice/src/utils/database/withDatabaseContext.ts +12 -4
- package/dist/practices/persist-with-rds/best-practice/src/utils/database/withDatabaseTransaction.ts +16 -4
- package/dist/practices/persist-with-rds/deploy-database-gerunds.declapract.integration.test.ts +57 -0
- package/dist/practices/persist-with-rds/empty-template-declares-zero-clusters.declapract.integration.test.ts +71 -0
- package/dist/practices/persist-with-rds/provision-testdb-access.declapract.integration.test.ts +50 -0
- package/dist/practices/persist-with-rds/ssm-cicd-param-names.declapract.integration.test.ts +73 -0
- package/dist/practices/persist-with-rds/testdb-preflight-failloud.declapract.integration.test.ts +83 -0
- package/dist/practices/pnpm/.declapract.integration.test.ts +325 -0
- package/dist/practices/pnpm/.test/assets/repo-npm-to-pnpm/.husky/check.lockfile.sh +10 -0
- package/dist/practices/pnpm/.test/assets/repo-npm-to-pnpm/declapract.use.yml +7 -0
- package/dist/practices/pnpm/.test/assets/repo-npm-to-pnpm/package.json +16 -0
- package/dist/practices/pnpm/.test/assets/repo-npm-to-pnpm/pnpm-workspace.yaml +3 -0
- package/dist/practices/pnpm/__snapshots__/.declapract.integration.test.ts.snap +75 -0
- package/dist/practices/pnpm/bad-practices/husky-lockfile-check/.declapract.readme.md +17 -0
- package/dist/practices/pnpm/bad-practices/husky-lockfile-check/.husky/check.lockfile.sh.declapract.ts +28 -0
- package/dist/practices/pnpm/bad-practices/inert-build-allowlist/pnpm-workspace.yaml.declapract.ts +59 -0
- package/dist/practices/pnpm/bad-practices/npm-overrides/.declapract.readme.md +20 -0
- package/dist/practices/pnpm/bad-practices/npm-overrides/package.json.declapract.ts +75 -0
- package/dist/practices/pnpm/bad-practices/package-lock-json/.declapract.readme.md +30 -0
- package/dist/practices/pnpm/bad-practices/package-lock-json/package-lock.json.declapract.integration.test.ts +105 -0
- package/dist/practices/pnpm/bad-practices/package-lock-json/package-lock.json.declapract.ts +40 -2
- package/dist/practices/pnpm/best-practice/.declapract.readme.md +22 -0
- package/dist/practices/pnpm/best-practice/package.json +1 -1
- package/dist/practices/pnpm/best-practice/package.json.declapract.ts +14 -0
- package/dist/practices/provision-github/best-practice/package.json +2 -2
- package/dist/practices/provision-github/best-practice/provision/github.repo/resources.ts +16 -0
- package/dist/practices/rhachet/.declapract.integration.test.ts +98 -0
- package/dist/practices/rhachet/.test/assets/demo-repo-with-consumer-boot/.agent/repo=.this/role=any/boot.yml +7 -0
- package/dist/practices/rhachet/.test/assets/demo-repo-with-consumer-boot/declapract.declare.yml +4 -0
- package/dist/practices/rhachet/.test/assets/demo-repo-with-consumer-boot/declapract.use.yml +2 -0
- package/dist/practices/rhachet/.test/assets/demo-repo-with-consumer-boot/package.json +4 -0
- package/dist/practices/rhachet/__snapshots__/.declapract.integration.test.ts.snap +45 -0
- package/dist/practices/rhachet/__snapshots__/boot-refs-glossary.declapract.integration.test.ts.snap +6 -0
- package/dist/practices/rhachet/__snapshots__/boot-yml-findsert.declapract.integration.test.ts.snap +27 -0
- package/dist/practices/rhachet/bad-practices/prod-deps/.declapract.readme.md +6 -2
- package/dist/practices/rhachet/bad-practices/prod-deps/.test/assets/demo-repo-with-rhachet-prod-deps/declapract.declare.yml +4 -0
- package/dist/practices/rhachet/bad-practices/prod-deps/.test/assets/demo-repo-with-rhachet-prod-deps/declapract.use.yml +2 -0
- package/dist/practices/rhachet/bad-practices/prod-deps/.test/assets/demo-repo-with-rhachet-prod-deps/package.json +12 -0
- package/dist/practices/rhachet/bad-practices/prod-deps/package.json.declapract.ts +58 -17
- package/dist/practices/rhachet/best-practice/.agent/repo=.this/role=any/boot.yml +46 -0
- package/dist/practices/rhachet/best-practice/.agent/repo=.this/role=any/boot.yml.declapract.ts +165 -0
- package/dist/practices/rhachet/best-practice/.gitignore.declapract.ts +18 -5
- package/dist/practices/rhachet/best-practice/package.json +8 -8
- package/dist/practices/rhachet/boot-refs-glossary.declapract.integration.test.ts +89 -0
- package/dist/practices/rhachet/boot-yml-findsert.declapract.integration.test.ts +145 -0
- package/dist/practices/runtime-schemas/bad-practices/joi/.declapract.integration.test.ts +102 -0
- package/dist/practices/runtime-schemas/bad-practices/joi/.test/assets/demo-repo-with-joi/declapract.use.yml +5 -0
- package/dist/practices/runtime-schemas/bad-practices/joi/.test/assets/demo-repo-with-joi/package.json +4 -0
- package/dist/practices/runtime-schemas/bad-practices/joi/.test/assets/demo-repo-with-joi/src/contract/schemas/widget.schema.ts +9 -0
- package/dist/practices/runtime-schemas/bad-practices/joi/__snapshots__/.declapract.integration.test.ts.snap +37 -0
- package/dist/practices/runtime-schemas/bad-practices/joi/src/<star><star>/<star>.ts.declapract.ts +32 -3
- package/dist/practices/serverless/.declapract.integration.test.ts +230 -0
- package/dist/practices/serverless/.test/assets/demo-repo-with-serverless/declapract.declare.yml +4 -0
- package/dist/practices/serverless/.test/assets/demo-repo-with-serverless/declapract.use.yml +8 -0
- package/dist/practices/serverless/.test/assets/demo-repo-with-serverless/package.json +4 -0
- package/dist/practices/serverless/.test/assets/demo-repo-with-serverless/serverless.yml +8 -0
- package/dist/practices/serverless/__snapshots__/.declapract.integration.test.ts.snap +43 -0
- package/dist/practices/serverless/__snapshots__/cache-grant-stage-globbed.declapract.integration.test.ts.snap +3 -0
- package/dist/practices/serverless/__snapshots__/deployment-bucket-account-scoped.declapract.integration.test.ts.snap +9 -0
- package/dist/practices/serverless/__snapshots__/divergentStageGuard.declapract.integration.test.ts.snap +15 -0
- package/dist/practices/serverless/__snapshots__/serverless.yml.declapract.integration.test.ts.snap +165 -0
- package/dist/practices/serverless/best-practice/.declapract.readme.md +111 -0
- package/dist/practices/serverless/best-practice/package.json +7 -5
- package/dist/practices/serverless/best-practice/serverless.yml +14 -6
- package/dist/practices/serverless/best-practice/serverless.yml.declapract.ts +609 -64
- package/dist/practices/serverless/cache-grant-stage-globbed.declapract.integration.test.ts +69 -0
- package/dist/practices/serverless/deployment-bucket-account-scoped.declapract.integration.test.ts +78 -0
- package/dist/practices/serverless/divergentStageGuard.declapract.integration.test.ts +280 -0
- package/dist/practices/serverless/serverless.yml.declapract.integration.test.ts +1285 -0
- package/dist/practices/terraform-aws/best-practice/provision/aws/environments/prep/main.tf +1 -1
- package/dist/practices/tests-any/__snapshots__/changedsince-origin-main.declapract.integration.test.ts.snap +8 -0
- package/dist/practices/tests-any/autoprune-hooks.declapract.integration.test.ts +104 -0
- package/dist/practices/tests-any/bad-practices/javascript-config-files/.declapract.readme.md +1 -0
- package/dist/practices/tests-any/bad-practices/javascript-config-files/jest.<star>.js.declapract.ts +17 -0
- package/dist/practices/tests-any/bad-practices/mocks/.declapract.readme.md +8 -0
- package/dist/practices/tests-any/bad-practices/mocks/<star><star>/__mock__/<star>.js +3 -0
- package/dist/practices/tests-any/bad-practices/mocks/<star><star>/__mock__/<star>.ts +3 -0
- package/dist/practices/tests-any/bad-practices/old-acceptance-dir-location/.declapract.integration.test.ts +63 -0
- package/dist/practices/tests-any/bad-practices/old-acceptance-dir-location/.declapract.readme.md +22 -0
- package/dist/practices/tests-any/bad-practices/old-acceptance-dir-location/.test/assets/demo-repo-with-accept-blackbox-dir/accept.blackbox/.test/assets/.agent/config.yml +1 -0
- package/dist/practices/tests-any/bad-practices/old-acceptance-dir-location/.test/assets/demo-repo-with-accept-blackbox-dir/accept.blackbox/.test/assets/.rhachet/manifest.json +1 -0
- package/dist/practices/tests-any/bad-practices/old-acceptance-dir-location/.test/assets/demo-repo-with-accept-blackbox-dir/accept.blackbox/somefile.ts +1 -0
- package/dist/practices/tests-any/bad-practices/old-acceptance-dir-location/.test/assets/demo-repo-with-accept-blackbox-dir/declapract.declare.yml +4 -0
- package/dist/practices/tests-any/bad-practices/old-acceptance-dir-location/.test/assets/demo-repo-with-accept-blackbox-dir/declapract.use.yml +5 -0
- package/dist/practices/tests-any/bad-practices/old-acceptance-dir-location/.test/assets/demo-repo-with-accept-blackbox-dir/package.json +4 -0
- package/dist/practices/tests-any/bad-practices/old-acceptance-dir-location/accept.blackbox/<star><star>/<star>.declapract.ts +19 -0
- package/dist/practices/tests-any/bad-practices/old-acceptance-dir-location/acceptance/<star><star>/<star>.declapract.ts +19 -0
- package/dist/practices/tests-any/bad-practices/old-acceptance-import-paths/.declapract.readme.md +31 -0
- package/dist/practices/tests-any/bad-practices/old-acceptance-import-paths/<star><star>/<star>.ts.declapract.ts +25 -0
- package/dist/practices/tests-any/bad-practices/old-acceptance-test-utils/blackbox/_utils/getDataFromLastOpenBracketAtStartOfLine.ts.declapract.ts +3 -0
- package/dist/practices/tests-any/bad-practices/old-acceptance-test-utils/blackbox/_utils/invokeLambda.ts.declapract.ts +3 -0
- package/dist/practices/tests-any/bad-practices/old-acceptance-test-utils/blackbox/lambdas/<star>.ts.declapract.ts +44 -0
- package/dist/practices/tests-any/bad-practices/old-acceptance-test-utils-2/blackbox/lambdas/<star>.ts.declapract.ts +22 -0
- package/dist/practices/tests-any/bad-practices/old-acceptance-test-utils-3/blackbox/_utils/environment.ts.declapract.ts +3 -0
- package/dist/practices/tests-any/bad-practices/old-acceptance-test-utils-3/blackbox/lambdas/<star>.ts.declapract.ts +18 -0
- package/dist/practices/tests-any/bad-practices/old-extension-pattern/.declapract.readme.md +3 -0
- package/dist/practices/tests-any/bad-practices/old-extension-pattern/<star><star>/<star>.test.acceptance.ts.declapract.ts +11 -0
- package/dist/practices/tests-any/bad-practices/old-extension-pattern/<star><star>/<star>.test.integration.ts.declapract.ts +11 -0
- package/dist/practices/tests-any/bad-practices/old-test-utils-and-assets-location/.declapract.readme.md +8 -0
- package/dist/practices/tests-any/bad-practices/old-test-utils-and-assets-location/<star><star>/<star>.ts.declapract.ts +27 -0
- package/dist/practices/tests-any/bad-practices/old-test-utils-and-assets-location/<star><star>/__test_assets__/<star><star>/<star>.declapract.ts +17 -0
- package/dist/practices/tests-any/bad-practices/old-test-utils-and-assets-location/<star><star>/__test_utils__/<star><star>/<star>.declapract.ts +17 -0
- package/dist/practices/tests-any/best-practice/.declapract.readme.md +45 -0
- package/dist/practices/tests-any/best-practice/.declapract.todo.md +3 -0
- package/dist/practices/tests-any/best-practice/package.json +17 -0
- package/dist/practices/tests-any/best-practice/package.json.declapract.ts +3 -0
- package/dist/practices/tests-any/best-practice/src/<star><star>/<star>.integration.test.ts.declapract.ts +3 -0
- package/dist/practices/tests-any/best-practice/src/<star><star>/<star>.test.ts.declapract.ts +3 -0
- package/dist/practices/tests-any/changedsince-origin-main.declapract.integration.test.ts +58 -0
- package/dist/practices/tests-any/package.json.shell-flags.declapract.integration.test.ts +139 -0
- package/dist/practices/tests-expo/.declapract.integration.test.ts +138 -0
- package/dist/practices/tests-expo/.test/assets/repo-expo-greenfield/declapract.use.yml +6 -0
- package/dist/practices/tests-expo/.test/assets/repo-expo-greenfield/package.json +8 -0
- package/dist/practices/tests-expo/__snapshots__/.declapract.integration.test.ts.snap +121 -0
- package/dist/practices/tests-expo/__snapshots__/package.json.declapract.integration.test.ts.snap +60 -0
- package/dist/practices/tests-expo/bad-practices/inline-jest-config/.declapract.readme.md +22 -0
- package/dist/practices/tests-expo/bad-practices/inline-jest-config/package.json.declapract.ts +36 -0
- package/dist/practices/tests-expo/best-practice/jest.acceptance.config.ts +48 -0
- package/dist/practices/tests-expo/best-practice/jest.acceptance.env.ts +15 -0
- package/dist/practices/tests-expo/best-practice/jest.config.ts +7 -0
- package/dist/practices/tests-expo/best-practice/jest.integration.config.ts +47 -0
- package/dist/practices/tests-expo/best-practice/jest.integration.env.ts +26 -0
- package/dist/practices/tests-expo/best-practice/jest.unit.config.ts +58 -0
- package/dist/practices/tests-expo/best-practice/jest.unit.env.ts +23 -0
- package/dist/practices/tests-expo/best-practice/package.json.declapract.ts +193 -0
- package/dist/practices/tests-expo/package.json.declapract.integration.test.ts +94 -0
- package/dist/practices/tests-node/__snapshots__/livedb-wake-branches.declapract.integration.test.ts.snap +6 -0
- package/dist/practices/tests-node/bad-practices/babel/babel.config.js.declapract.ts +3 -0
- package/dist/practices/tests-node/bad-practices/deprecated-test-deps/package.json.declapract.ts +50 -0
- package/dist/practices/{tests → tests-node}/best-practice/jest.acceptance.config.ts +8 -0
- package/dist/practices/tests-node/best-practice/jest.acceptance.env.ts +36 -0
- package/dist/practices/tests-node/best-practice/jest.acceptance.prepare.ts +36 -0
- package/dist/practices/tests-node/best-practice/jest.config.ts +7 -0
- package/dist/practices/{tests → tests-node}/best-practice/jest.integration.config.ts +8 -0
- package/dist/practices/tests-node/best-practice/jest.integration.env.db.ts +90 -0
- package/dist/practices/tests-node/best-practice/jest.integration.env.ts +60 -0
- package/dist/practices/tests-node/best-practice/jest.integration.prepare.ts +33 -0
- package/dist/practices/{tests → tests-node}/best-practice/jest.unit.config.ts +7 -0
- package/dist/practices/{tests → tests-node}/best-practice/jest.unit.env.ts +11 -4
- package/dist/practices/tests-node/best-practice/jest.unit.env.ts.declapract.ts +41 -0
- package/dist/practices/tests-node/best-practice/package.json +6 -0
- package/dist/practices/tests-node/best-practice/package.json.declapract.ts +10 -0
- package/dist/practices/tests-node/best-practice/src/.test/useKeyrack.ts +211 -0
- package/dist/practices/tests-node/best-practice/src/.test/useWakeOfLivedb.ts +181 -0
- package/dist/practices/tests-node/best-practice/src/.test/useWakeOfTestdb.ts +71 -0
- package/dist/practices/tests-node/livedb-wake-branches.declapract.integration.test.ts +227 -0
- package/dist/practices/tests-node/livedb-wake-prepare.declapract.integration.test.ts +112 -0
- package/dist/practices/tests-node/testdb-preflight-branches.declapract.integration.test.ts +203 -0
- package/dist/practices/tests-node/testdb-preflight-env.declapract.integration.test.ts +65 -0
- package/dist/practices/tests-service/.test/assets/demo-repo-service/declapract.use.yml +5 -0
- package/dist/practices/tests-service/.test/assets/demo-repo-service/package.json +4 -0
- package/dist/practices/tests-service/__snapshots__/package.json.declapract.integration.test.ts.snap +26 -0
- package/dist/practices/tests-service/asFunctionNameFromTestFileName.ts +7 -0
- package/dist/practices/tests-service/best-practice/.declapract.readme.md +68 -0
- package/dist/practices/tests-service/best-practice/blackbox/lambdas/<star>.acceptance.test.ts.declapract.ts +33 -8
- package/dist/practices/tests-service/best-practice/package.json +4 -1
- package/dist/practices/tests-service/best-practice/package.json.declapract.ts +99 -1
- package/dist/practices/tests-service/package.json.declapract.integration.test.ts +204 -0
- package/dist/practices/typescript-any/bad-practices/relative-imports/.declapract.readme.md +45 -0
- package/dist/practices/typescript-any/bad-practices/relative-imports/src/<star><star>/<star>.ts.declapract.ts +97 -0
- package/dist/practices/typescript-any/best-practice/.declapract.readme.md +17 -0
- package/dist/practices/typescript-any/best-practice/package.json +8 -0
- package/dist/practices/typescript-any/best-practice/package.json.declapract.ts +11 -0
- package/dist/practices/typescript-expo/__snapshots__/package.json.declapract.integration.test.ts.snap +8 -0
- package/dist/practices/typescript-expo/__snapshots__/tsconfig.json.declapract.integration.test.ts.snap +19 -0
- package/dist/practices/typescript-expo/best-practice/package.json +6 -0
- package/dist/practices/typescript-expo/best-practice/package.json.declapract.ts +12 -0
- package/dist/practices/typescript-expo/best-practice/tsconfig.json +14 -0
- package/dist/practices/typescript-expo/best-practice/tsconfig.json.declapract.ts +12 -0
- package/dist/practices/typescript-expo/package.json.declapract.integration.test.ts +43 -0
- package/dist/practices/typescript-expo/tsconfig.json.declapract.integration.test.ts +43 -0
- package/dist/practices/{typescript → typescript-node}/best-practice/package.json +1 -3
- package/dist/practices/typescript-node/best-practice/package.json.declapract.ts +27 -0
- package/dist/practices/typescript-node/best-practice/tsconfig.json.declapract.ts +3 -0
- package/dist/practices/uuid/best-practice/package.json +1 -1
- package/dist/stageAccessBridge.declapract.integration.test.ts +163 -0
- package/dist/useCases.yml +36 -16
- package/dist/utils/asPackageJSON.ts +57 -0
- package/dist/utils/asPrepConfigPath.ts +12 -0
- package/dist/utils/defineExpectedNpmrcContents.ts +103 -0
- package/dist/utils/getAllPathsUnderDir.ts +45 -0
- package/dist/utils/getAllPracticesForUsecase.ts +79 -0
- package/dist/utils/isDeferredToDeprecatedDirMove.ts +37 -0
- package/dist/utils/migrateDevConfigToPrep.ts +47 -0
- package/dist/utils/readFile.ts +2 -2
- package/dist/workflowCallerCalleeReconciliation.declapract.integration.test.ts +319 -0
- package/dist/workflowEnvDeploymentFalse.declapract.integration.test.ts +173 -0
- package/package.json +10 -9
- package/dist/practices/config/best-practice/src/utils/config/Config.ts +0 -10
- package/dist/practices/config/best-practice/src/utils/config/Config.ts.declapract.ts +0 -16
- package/dist/practices/config/best-practice/src/utils/config/getCacheDirectory.ts +0 -42
- package/dist/practices/domain/best-practice/src/domain/objects/index.ts.declapract.ts +0 -4
- package/dist/practices/logs/bad-practices/leveled-term/package.json +0 -5
- package/dist/practices/persist-with-rds/best-practice/src/utils/config/Config.ts +0 -26
- package/dist/practices/persist-with-rds/best-practice/src/utils/config/Config.ts.declapract.ts +0 -39
- package/dist/practices/persist-with-rds/best-practice/src/utils/config/config.schema.ts.declapract.ts +0 -49
- package/dist/practices/persist-with-rds/best-practice/src/utils/config/getConfig.ts +0 -2
- package/dist/practices/tests/bad-practices/deprecated-test-deps/package.json.declapract.ts +0 -39
- package/dist/practices/tests/best-practice/jest.acceptance.env.ts +0 -46
- package/dist/practices/tests/best-practice/jest.integration.env.ts +0 -108
- package/dist/practices/tests/best-practice/jest.unit.env.ts.declapract.ts +0 -35
- package/dist/practices/tests-service/defineFunctionNameFromTestFileName.ts +0 -11
- package/dist/practices/typescript/bad-practices/relative-imports/.declapract.readme.md +0 -27
- package/dist/practices/typescript/best-practice/.declapract.readme.md +0 -15
- package/dist/practices/typescript/best-practice/package.json.declapract.ts +0 -18
- /package/dist/{practices/tests → .test/assets/cache/declarations/practices/cache}/best-practice/package.json.declapract.ts +0 -0
- /package/dist/{practices/tests/bad-practices/old-acceptance-dir-location/.test/assets/demo-repo-with-accept-blackbox-dir → .test/assets/cicd-service/declarations/practices/cicd-service/.test/assets/demo-repo-pre-stamped-nords}/package.json +0 -0
- /package/dist/{practices/errors/bad-practices/own-implementation/src/utils/errors/UnexpectedCodePathError.ts.declapract.ts → .test/assets/cicd-service/declarations/practices/cicd-service/bad-practices/old-names/.github/workflows/deploy-dev-on-main.yml.declapract.ts} +0 -0
- /package/dist/{practices/persist-with-rds/best-practice/src/utils/config/getConfig.ts.declapract.ts → .test/assets/cicd-service/declarations/practices/cicd-service/bad-practices/old-names/.github/workflows/deploy-prod-on-tag.yml.declapract.ts} +0 -0
- /package/dist/{practices/tests/bad-practices/babel/babel.config.js.declapract.ts → .test/assets/cicd-service/declarations/practices/cicd-service/bad-practices/old-names/.github/workflows/deploy_dev_on_main.yml.declapract.ts} +0 -0
- /package/dist/{practices/tests/bad-practices/javascript-config-files/jest.<star>.js.declapract.ts → .test/assets/cicd-service/declarations/practices/cicd-service/bad-practices/old-names/.github/workflows/deploy_dev_on_master.yml.declapract.ts} +0 -0
- /package/dist/{practices/tests/bad-practices/old-acceptance-test-utils-3/blackbox/_utils/environment.ts.declapract.ts → .test/assets/cicd-service/declarations/practices/cicd-service/bad-practices/old-names/.github/workflows/deploy_on_tag.yml.declapract.ts} +0 -0
- /package/dist/{practices/tests/bad-practices/old-acceptance-test-utils/blackbox/_utils/getDataFromLastOpenBracketAtStartOfLine.ts.declapract.ts → .test/assets/cicd-service/declarations/practices/cicd-service/bad-practices/old-names/.github/workflows/deploy_prod_on_tag.yml.declapract.ts} +0 -0
- /package/dist/{practices/persist-with-dynamodb/best-practice/jest.integration.env.ts.declapract.ts → .test/assets/cicd-service/declarations/practices/cicd-service/best-practice/package.json.declapract.ts} +0 -0
- /package/dist/{practices/tests/bad-practices/old-acceptance-dir-location/.test/assets/demo-repo-with-accept-blackbox-dir → .test/assets/cicd-service/declarations/practices/persist-with-rds/.test/assets/demo-repo-with-dev-config}/declapract.declare.yml +0 -0
- /package/dist/{practices/tests/bad-practices/old-acceptance-test-utils/blackbox/_utils/invokeLambda.ts.declapract.ts → .test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/non-prefixed-manual-init-sqls/provision/schema/sql/init/database.sql.declapract.ts} +0 -0
- /package/dist/{practices/typescript/best-practice/tsconfig.json.declapract.ts → .test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/package.json.declapract.ts} +0 -0
- /package/dist/{practices/tests → .test/assets/expo-fullusecase/declarations/practices/tests-any}/bad-practices/javascript-config-files/.declapract.readme.md +0 -0
- /package/dist/{practices/tests → .test/assets/expo-fullusecase/declarations/practices/tests-any}/bad-practices/mocks/.declapract.readme.md +0 -0
- /package/dist/{practices/tests → .test/assets/expo-fullusecase/declarations/practices/tests-any}/bad-practices/mocks/<star><star>/__mock__/<star>.js +0 -0
- /package/dist/{practices/tests → .test/assets/expo-fullusecase/declarations/practices/tests-any}/bad-practices/mocks/<star><star>/__mock__/<star>.ts +0 -0
- /package/dist/{practices/tests → .test/assets/expo-fullusecase/declarations/practices/tests-any}/bad-practices/old-acceptance-dir-location/.declapract.readme.md +0 -0
- /package/dist/{practices/tests → .test/assets/expo-fullusecase/declarations/practices/tests-any}/bad-practices/old-acceptance-dir-location/.test/assets/demo-repo-with-accept-blackbox-dir/accept.blackbox/.test/assets/.agent/config.yml +0 -0
- /package/dist/{practices/tests → .test/assets/expo-fullusecase/declarations/practices/tests-any}/bad-practices/old-acceptance-dir-location/.test/assets/demo-repo-with-accept-blackbox-dir/accept.blackbox/.test/assets/.rhachet/manifest.json +0 -0
- /package/dist/{practices/tests → .test/assets/expo-fullusecase/declarations/practices/tests-any}/bad-practices/old-acceptance-dir-location/.test/assets/demo-repo-with-accept-blackbox-dir/accept.blackbox/somefile.ts +0 -0
- /package/dist/{practices/tests → .test/assets/expo-fullusecase/declarations/practices/tests-any}/bad-practices/old-acceptance-dir-location/.test/assets/demo-repo-with-accept-blackbox-dir/declapract.use.yml +0 -0
- /package/dist/{practices/tests → .test/assets/expo-fullusecase/declarations/practices/tests-any}/bad-practices/old-acceptance-dir-location/accept.blackbox/<star><star>/<star>.declapract.ts +0 -0
- /package/dist/{practices/tests → .test/assets/expo-fullusecase/declarations/practices/tests-any}/bad-practices/old-acceptance-dir-location/acceptance/<star><star>/<star>.declapract.ts +0 -0
- /package/dist/{practices/tests → .test/assets/expo-fullusecase/declarations/practices/tests-any}/bad-practices/old-acceptance-import-paths/<star><star>/<star>.ts.declapract.ts +0 -0
- /package/dist/{practices/tests → .test/assets/expo-fullusecase/declarations/practices/tests-any}/bad-practices/old-acceptance-test-utils-2/blackbox/lambdas/<star>.ts.declapract.ts +0 -0
- /package/dist/{practices/tests → .test/assets/expo-fullusecase/declarations/practices/tests-any}/bad-practices/old-acceptance-test-utils-3/blackbox/lambdas/<star>.ts.declapract.ts +0 -0
- /package/dist/{practices/tests → .test/assets/expo-fullusecase/declarations/practices/tests-any}/bad-practices/old-extension-pattern/.declapract.readme.md +0 -0
- /package/dist/{practices/tests → .test/assets/expo-fullusecase/declarations/practices/tests-any}/bad-practices/old-extension-pattern/<star><star>/<star>.test.acceptance.ts.declapract.ts +0 -0
- /package/dist/{practices/tests → .test/assets/expo-fullusecase/declarations/practices/tests-any}/bad-practices/old-extension-pattern/<star><star>/<star>.test.integration.ts.declapract.ts +0 -0
- /package/dist/{practices/tests → .test/assets/expo-fullusecase/declarations/practices/tests-any}/bad-practices/old-test-utils-and-assets-location/.declapract.readme.md +0 -0
- /package/dist/{practices/tests → .test/assets/expo-fullusecase/declarations/practices/tests-any}/bad-practices/old-test-utils-and-assets-location/<star><star>/<star>.ts.declapract.ts +0 -0
- /package/dist/{practices/tests → .test/assets/expo-fullusecase/declarations/practices/tests-any}/bad-practices/old-test-utils-and-assets-location/<star><star>/__test_assets__/<star><star>/<star>.declapract.ts +0 -0
- /package/dist/{practices/tests → .test/assets/expo-fullusecase/declarations/practices/tests-any}/bad-practices/old-test-utils-and-assets-location/<star><star>/__test_utils__/<star><star>/<star>.declapract.ts +0 -0
- /package/dist/{practices/tests → .test/assets/expo-fullusecase/declarations/practices/tests-any}/best-practice/.declapract.readme.md +0 -0
- /package/dist/{practices/tests → .test/assets/expo-fullusecase/declarations/practices/tests-any}/best-practice/.declapract.todo.md +0 -0
- /package/dist/{practices/tests → .test/assets/expo-fullusecase/declarations/practices/tests-any}/best-practice/src/<star><star>/<star>.integration.test.ts.declapract.ts +0 -0
- /package/dist/{practices/tests → .test/assets/expo-fullusecase/declarations/practices/tests-any}/best-practice/src/<star><star>/<star>.test.ts.declapract.ts +0 -0
- /package/dist/{practices/tests → .test/assets/expo-fullusecase/declarations/practices/tests-expo}/best-practice/jest.config.ts +0 -0
- /package/dist/practices/{tests → tests-node}/bad-practices/babel/babel.config.js +0 -0
- /package/dist/practices/{tests → tests-node}/bad-practices/deprecated-test-deps/.declapract.readme.md +0 -0
- /package/dist/practices/{tests → tests-node}/bad-practices/deprecated-test-deps/package.json +0 -0
- /package/dist/practices/{typescript → typescript-node}/best-practice/tsconfig.build.json +0 -0
- /package/dist/practices/{typescript → typescript-node}/best-practice/tsconfig.json +0 -0
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
// Jest Snapshot v1, https://jestjs.io/docs/snapshot-testing
|
|
2
|
+
|
|
3
|
+
exports[`persist-with-rds deploy.database.sh gerund-free given: the shipped deploy.database.sh when: the template body is read then: the emitted deploy.database.sh matches snapshot: deploy.database.sh 1`] = `
|
|
4
|
+
"#####################################################
|
|
5
|
+
## initialize the database in a live cluster
|
|
6
|
+
## - in other words, it does all of the things that docker does for us when we spin up a cluster without the db already
|
|
7
|
+
## - i.e.,
|
|
8
|
+
## - create the database
|
|
9
|
+
## - install the extensions
|
|
10
|
+
## - creates the schema
|
|
11
|
+
## - creates the cicd user
|
|
12
|
+
## - grants the cicd user ownership of the db
|
|
13
|
+
## - note:
|
|
14
|
+
## - requires pg admin access
|
|
15
|
+
## - requires _you_ to change the passwords in prod manually
|
|
16
|
+
##
|
|
17
|
+
## usage example:
|
|
18
|
+
## \`\`\`sh
|
|
19
|
+
## ./provision/schema/deploy.database.sh prep $(op item get ahbodedb.prep.postgres --fields label=password --format json | jq -r .value)
|
|
20
|
+
## \`\`\`
|
|
21
|
+
#####################################################
|
|
22
|
+
|
|
23
|
+
set -eu
|
|
24
|
+
|
|
25
|
+
# check that the human has defined the environment that they want this key created for correctly
|
|
26
|
+
ENVIRONMENT="\${1:-}";
|
|
27
|
+
if [ "$ENVIRONMENT" != "prod" ] && [ "$ENVIRONMENT" != "prep" ]; then
|
|
28
|
+
echo "\\nerror: environment, the first argument, must be specified as either 'prod' or 'prep'. you specified '$ENVIRONMENT'";
|
|
29
|
+
exit 2;
|
|
30
|
+
fi
|
|
31
|
+
|
|
32
|
+
# check that the human is authed into correct account
|
|
33
|
+
AWS_ACCOUNT_ID=$(aws sts get-caller-identity | jq -r '.Account');
|
|
34
|
+
EXPECTED_AWS_ACCOUNT_ID=$([ "$ENVIRONMENT" = 'prod' ] && echo "@declapract{variable.awsAccountId.prod}" || echo "@declapract{variable.awsAccountId.prep}");
|
|
35
|
+
if [ "$AWS_ACCOUNT_ID" != "$EXPECTED_AWS_ACCOUNT_ID" ]; then
|
|
36
|
+
echo "\\nerror: the AWS_ACCOUNT that you are signed into is not correct for the environment you specified. you are authed into account '$AWS_ACCOUNT_ID' but the correct account id for '$ENVIRONMENT' is '$EXPECTED_AWS_ACCOUNT_ID'";
|
|
37
|
+
exit 2;
|
|
38
|
+
fi
|
|
39
|
+
|
|
40
|
+
# check that pg admin password was specified
|
|
41
|
+
POSTGRES_ADMIN_PASSWORD="\${2:-}"
|
|
42
|
+
if [ -z "\${POSTGRES_ADMIN_PASSWORD:-}" ]; then
|
|
43
|
+
echo "\\nerror: POSTGRES_ADMIN_PASSWORD must be defined as second arg";
|
|
44
|
+
exit 2;
|
|
45
|
+
fi;
|
|
46
|
+
|
|
47
|
+
# check that the cicd password was provisioned, if in prod, since this is used to create the cicd user
|
|
48
|
+
# note: this reads the legacy DOTTED param name (\`....database.role.cicd.password\`), a live consumer
|
|
49
|
+
# distinct from the slash-path plan/apply secrets. it is the prod cicd-user bootstrap credential
|
|
50
|
+
# and stays alive on purpose — do not prune it as an unreferenced legacy param.
|
|
51
|
+
if [ "$ENVIRONMENT" = "prod" ]; then
|
|
52
|
+
CICD_USER_PASSWORD=$(aws ssm get-parameter --name "@declapract{variable.organizationName}.@declapract{variable.projectName}.$ENVIRONMENT.database.role.cicd.password" --with-decryption --output text --query Parameter.Value)
|
|
53
|
+
if [ -z "\${CICD_USER_PASSWORD:-}" ]; then
|
|
54
|
+
echo "\\nerror: CICD_USER_PASSWORD must be provisioned with terraform before you run this"
|
|
55
|
+
exit 2;
|
|
56
|
+
fi;
|
|
57
|
+
if [ "$CICD_USER_PASSWORD" = "__IGNORED__" ] || [ "$CICD_USER_PASSWORD" = "__CHANG3_ME__" ]; then
|
|
58
|
+
echo "\\nerror: CICD_USER_PASSWORD must be set to a value other than the default placeholder"
|
|
59
|
+
exit 2;
|
|
60
|
+
fi;
|
|
61
|
+
fi;
|
|
62
|
+
|
|
63
|
+
|
|
64
|
+
# define the postgres connection string
|
|
65
|
+
CLUSTER_HOST=$([ "$ENVIRONMENT" = 'prod' ] && echo "@declapract{variable.databaseTunnelHost.prod}" || echo "@declapract{variable.databaseTunnelHost.prep}");
|
|
66
|
+
CLUSTER_CONNECTION_STRING=postgresql://postgres:$POSTGRES_ADMIN_PASSWORD@$CLUSTER_HOST:5432
|
|
67
|
+
ROOT_DB_CONNECTION_STRING=$CLUSTER_CONNECTION_STRING/postgres
|
|
68
|
+
SVC_DB_CONNECTION_STRING=$CLUSTER_CONNECTION_STRING/@declapract{variable.databaseName}
|
|
69
|
+
|
|
70
|
+
# define path to the init sqls
|
|
71
|
+
SRC_PATH=$(readlink --canonicalize "$0");
|
|
72
|
+
SRC_DIR=$(dirname $SRC_PATH);
|
|
73
|
+
INIT_SQLS_DIR=$SRC_DIR/sql/init;
|
|
74
|
+
|
|
75
|
+
# run the create database command on root db
|
|
76
|
+
echo "\\n 🔨 create the database..."
|
|
77
|
+
psql $ROOT_DB_CONNECTION_STRING -f $INIT_SQLS_DIR/.database.sql
|
|
78
|
+
|
|
79
|
+
echo "\\n 🔨 install the extensions..."
|
|
80
|
+
psql $SVC_DB_CONNECTION_STRING -f $INIT_SQLS_DIR/.extensions.sql
|
|
81
|
+
|
|
82
|
+
echo "\\n 🔨 create the schema..."
|
|
83
|
+
psql $SVC_DB_CONNECTION_STRING -f $INIT_SQLS_DIR/.schema.sql
|
|
84
|
+
|
|
85
|
+
if [ "$ENVIRONMENT" = "prod" ]; then
|
|
86
|
+
echo "\\n 🔨 grant reads to the datalakedb user..." # only in prod env; we dont want prep's test data in our datalake
|
|
87
|
+
psql $SVC_DB_CONNECTION_STRING -f $INIT_SQLS_DIR/.user.datalakedb.sql
|
|
88
|
+
fi;
|
|
89
|
+
|
|
90
|
+
echo "\\n 🔨 create the cicd user..."
|
|
91
|
+
CICD_USER_CREATE_SQL_PATH=$INIT_SQLS_DIR/.user.cicd.sql
|
|
92
|
+
if [ "$ENVIRONMENT" = "prod" ]; then
|
|
93
|
+
CICD_USER_CREATE_SQL_PATH_TEMP=$CICD_USER_CREATE_SQL_PATH.tmp # in prod, we must create a temp file which will have the actual password we'll use to create the cicd user
|
|
94
|
+
cat $CICD_USER_CREATE_SQL_PATH | sed "s/__CHANG3_ME__/\${CICD_USER_PASSWORD}/" > $CICD_USER_CREATE_SQL_PATH_TEMP # create the temp file w/ the actual password
|
|
95
|
+
psql $SVC_DB_CONNECTION_STRING -f $CICD_USER_CREATE_SQL_PATH_TEMP # run the temp create sql w/ the actual password
|
|
96
|
+
rm $CICD_USER_CREATE_SQL_PATH_TEMP # remove the temp file, so the password doesn't get checked in
|
|
97
|
+
else
|
|
98
|
+
psql $SVC_DB_CONNECTION_STRING -f $CICD_USER_CREATE_SQL_PATH # otherwise, we can run the file directly. no password replacement required
|
|
99
|
+
fi
|
|
100
|
+
echo "\\n 🎉 done"
|
|
101
|
+
"
|
|
102
|
+
`;
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
// Jest Snapshot v1, https://jestjs.io/docs/snapshot-testing
|
|
2
|
+
|
|
3
|
+
exports[`persist-with-rds provision:testdb access given: the shipped best-practice package.json when: the provision:testdb chain is read then: the emitted provision:testdb chain matches snapshot: provision:testdb chain 1`] = `"npm run provision:testdb:docker:clear && npm run provision:testdb:docker:prepare && npm run provision:testdb:docker:up && npm run provision:testdb:docker:await && ACCESS=test npm run provision:schema:plan && ACCESS=test npm run provision:schema:apply && ACCESS=test npm run provision:schema:plan"`;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
// Jest Snapshot v1, https://jestjs.io/docs/snapshot-testing
|
|
2
|
+
|
|
3
|
+
exports[`persist-with-rds ssm cicd param names are slash-path, tierless given: [case1] the two cicd credentials when: [t0] resources.parameters.ts is read then: the emitted cicd + crud param-name lines match snapshot: ssm cicd + crud param names 1`] = `
|
|
4
|
+
[
|
|
5
|
+
"* with NO tier segment — \`parameter/*/svc-*/database/role/cicd/for-plan/*\` and",
|
|
6
|
+
"secret({ name: \`\${namespace}.database.role.crud.password\` }),",
|
|
7
|
+
"name: \`/@declapract{variable.organizationName}/@declapract{variable.projectName}/database/role/cicd/for-plan/password\`,",
|
|
8
|
+
"name: \`/@declapract{variable.organizationName}/@declapract{variable.projectName}/database/role/cicd/for-apply/password\`,",
|
|
9
|
+
]
|
|
10
|
+
`;
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
// Jest Snapshot v1, https://jestjs.io/docs/snapshot-testing
|
|
2
|
+
|
|
3
|
+
exports[`testdb preflight fails loud (#589) given: the shipped wait-for-postgres preflight probe when: [t4] the shipped probe is vibechecked as a whole then: the emitted wait-for-postgres.sh matches snapshot: wait-for-postgres.sh preflight probe 1`] = `
|
|
4
|
+
"#!/bin/sh
|
|
5
|
+
set -eu
|
|
6
|
+
# wait until postgres is really available
|
|
7
|
+
maxcounter=45
|
|
8
|
+
|
|
9
|
+
echo "waiting for postgres server to begin accepting connections..."
|
|
10
|
+
counter=1
|
|
11
|
+
# pass the secret via PGPASSWORD, not inline in the connection string (which leaks it to \`ps\`)
|
|
12
|
+
export PGPASSWORD="\${POSTGRES_PASSWORD:-}"
|
|
13
|
+
# capture the probe's stderr so the real cause (bad password, port conflict, image build failure)
|
|
14
|
+
# surfaces on timeout, rather than one hardcoded diagnosis that reads the same for every cause
|
|
15
|
+
lasterr=""
|
|
16
|
+
while true; do
|
|
17
|
+
# fold the capture into the if-condition so \`set -e\` does not exit on the expected
|
|
18
|
+
# connect failures while postgres warms up; lasterr still holds the last stderr
|
|
19
|
+
if lasterr=$(psql "dbname=\${POSTGRES_DB:-} host=localhost user=postgres port=5432" -c '\\l' 2>&1); then break; fi
|
|
20
|
+
sleep 1
|
|
21
|
+
counter=\`expr $counter + 1\`
|
|
22
|
+
if [ $counter -gt $maxcounter ]; then
|
|
23
|
+
>&2 echo "postgres did not accept connections after \${maxcounter}s; the last psql error was:"
|
|
24
|
+
>&2 echo "$lasterr"
|
|
25
|
+
exit 1
|
|
26
|
+
fi;
|
|
27
|
+
done
|
|
28
|
+
echo "connected to postgres instance successfully"
|
|
29
|
+
"
|
|
30
|
+
`;
|
|
@@ -1,19 +1,33 @@
|
|
|
1
1
|
import { FileCheckType, type FileFixFunction } from 'declapract';
|
|
2
2
|
|
|
3
|
+
import { asPrepConfigPath } from '../../../../../utils/asPrepConfigPath';
|
|
4
|
+
import { migrateDevConfigToPrep } from '../../../../../utils/migrateDevConfigToPrep';
|
|
5
|
+
|
|
3
6
|
export const check = FileCheckType.EXISTS;
|
|
4
7
|
|
|
8
|
+
/**
|
|
9
|
+
* .what = rewrite the rds password placeholder `"__CHANG3_ME__"` to the aws-param reference.
|
|
10
|
+
* .why = the rds config twin adds this one transform the config twin lacks; a named op keeps the
|
|
11
|
+
* declarer's `fix` a what-not-how read (rule.require.named-transformers).
|
|
12
|
+
*/
|
|
13
|
+
const withAwsParamPlaceholder = (input: { contents: string }): string =>
|
|
14
|
+
input.contents.replace(/"__CHANG3_ME__"/g, '"$.at(aws::param)"');
|
|
15
|
+
|
|
5
16
|
export const fix: FileFixFunction = (contents, context) => {
|
|
6
|
-
// move config/dev.json → config/prep.json and
|
|
17
|
+
// move config/dev.json → config/prep.json and migrate the tier tokens (dev → prep).
|
|
18
|
+
// both halves are shared utils (one source for both declarers): migrateDevConfigToPrep
|
|
19
|
+
// owns the content migration, asPrepConfigPath owns the relocate. this declarer adds the
|
|
20
|
+
// rds-only aws-param placeholder rewrite on top.
|
|
7
21
|
const updatedContents = contents
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
22
|
+
? withAwsParamPlaceholder({
|
|
23
|
+
contents: migrateDevConfigToPrep({ contents }),
|
|
24
|
+
})
|
|
25
|
+
: contents;
|
|
11
26
|
|
|
12
27
|
return {
|
|
13
28
|
contents: updatedContents ?? null,
|
|
14
|
-
relativeFilePath:
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
),
|
|
29
|
+
relativeFilePath: asPrepConfigPath({
|
|
30
|
+
relativeFilePath: context.relativeFilePath,
|
|
31
|
+
}),
|
|
18
32
|
};
|
|
19
33
|
};
|
|
@@ -24,3 +24,35 @@ terraform provisions these ssm parameters for database credentials:
|
|
|
24
24
|
legacy parameters (kept for backwards compatibility):
|
|
25
25
|
- `{namespace}.database.admin.password`
|
|
26
26
|
- `{namespace}.database.service.password`
|
|
27
|
+
|
|
28
|
+
## a stateful store gets an alias, never a copy, across the dual-publish transition
|
|
29
|
+
|
|
30
|
+
the `serverless` + `environments` practices dual-publish each lambda fleet under both slugs
|
|
31
|
+
(`-dev-` ancient, `-prep-` contemp) through the `-dev-`→`-prep-` slug transition. a stateless lambda
|
|
32
|
+
is safe under two names. a stateful store is not.
|
|
33
|
+
|
|
34
|
+
this RDS cluster (and its SSM credential params, its S3 buckets, its SQS queues) stays one store
|
|
35
|
+
reached by two pointers — a Route53 CNAME, an SSM pointer, or an ARN — never two clusters.
|
|
36
|
+
|
|
37
|
+
a second `-prep-` RDS cluster is never stood up to satisfy dual-publish. two independent clusters
|
|
38
|
+
form a write-`-dev-`/read-`-prep-` split: the ancient fleet writes one, the contemp fleet reads the
|
|
39
|
+
other, and the divergence stays silent until data is absent. the alias points at the one cluster.
|
|
40
|
+
|
|
41
|
+
no data migration is needed: the runtime DB path resolves `config.database.tunnel.lambda.host` (see
|
|
42
|
+
`src/utils/database/getOneDatabaseConnection.ts`), an access-keyed config value
|
|
43
|
+
(`databaseClusterHost.{prep,prod}`) with no deploy-slug token, so a CNAME re-points the one live
|
|
44
|
+
cluster with zero data moved. which alias mechanism to use is unsettled; the invariant "one store, two
|
|
45
|
+
pointers" holds regardless.
|
|
46
|
+
|
|
47
|
+
## the provision workflow's rds jobs are gated behind this practice (D28)
|
|
48
|
+
|
|
49
|
+
`cicd-service`'s `provision.yml` carries 4 rds-coupled jobs — `sql-schema-{prep,prod}` (the
|
|
50
|
+
`.sql-schema-control.yml` callee, driven by this practice's schema + daos) and
|
|
51
|
+
`aws-{prep,prod}-declastruct` (the `provision/aws/resources.ts` wish this practice ships). the gate
|
|
52
|
+
lives in `cicd-service/best-practice/.github/workflows/provision.yml.declapract.ts`: a usecase-aware
|
|
53
|
+
`contents` fn emits those 4 jobs **only** when `persist-with-rds` is in the resolved practice set, so
|
|
54
|
+
a service **without** rds (`lambda-service`, `lambda-service-with-dynamodb`) does not inherit a
|
|
55
|
+
`provision` workflow that references files it lacks. it uses `CONTAINS`, not `EQUALS`, so a narrow
|
|
56
|
+
`declapract fix --practice cicd-service` cannot strip an rds repo's own jobs (the additive-delta
|
|
57
|
+
EQUALS hazard). if you add a new rds-coupled provision job, add it to that gate the same way — a
|
|
58
|
+
caller that names a callee this practice supplies must be reconciled against this practice's presence.
|
|
@@ -5,7 +5,7 @@ generates:
|
|
|
5
5
|
to: src/access/daos
|
|
6
6
|
using:
|
|
7
7
|
log: src/utils/logger#log
|
|
8
|
-
DatabaseConnection: src/utils/database/
|
|
8
|
+
DatabaseConnection: src/utils/database/getOneDatabaseConnection#DatabaseConnection
|
|
9
9
|
schema:
|
|
10
10
|
config: codegen.sql.schema.yml
|
|
11
11
|
control:
|
|
@@ -4,10 +4,10 @@
|
|
|
4
4
|
"yesql": "@declapract{check.minVersion('3.2.2')}"
|
|
5
5
|
},
|
|
6
6
|
"devDependencies": {
|
|
7
|
-
"sql-code-generator": "@declapract{check.minVersion('0.10.
|
|
8
|
-
"sql-dao-generator": "@declapract{check.minVersion('0.
|
|
9
|
-
"sql-schema-control": "@declapract{check.minVersion('1.
|
|
10
|
-
"sql-schema-generator": "@declapract{check.minVersion('0.
|
|
7
|
+
"sql-code-generator": "@declapract{check.minVersion('0.10.2')}",
|
|
8
|
+
"sql-dao-generator": "@declapract{check.minVersion('0.13.1')}",
|
|
9
|
+
"sql-schema-control": "@declapract{check.minVersion('1.8.1')}",
|
|
10
|
+
"sql-schema-generator": "@declapract{check.minVersion('0.26.1')}",
|
|
11
11
|
"@types/yesql": "@declapract{check.minVersion('3.2.2')}",
|
|
12
12
|
"@types/pg": "@declapract{check.minVersion('8.6.1')}"
|
|
13
13
|
},
|
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
"provision:testdb:docker:up": "docker compose -f ./provision/docker/testdb/docker-compose.yml up -d --force-recreate --build --renew-anon-volumes",
|
|
24
24
|
"provision:testdb:docker:await": "docker compose -f ./provision/docker/testdb/docker-compose.yml exec -T postgres /root/wait-for-postgres.sh",
|
|
25
25
|
"provision:testdb:docker:down": "docker compose -f ./provision/docker/testdb/docker-compose.yml down",
|
|
26
|
-
"provision:testdb": "npm run provision:testdb:docker:clear && npm run provision:testdb:docker:prepare && npm run provision:testdb:docker:up && npm run provision:testdb:docker:await && npm run provision:schema:plan && npm run provision:schema:apply && npm run provision:schema:plan",
|
|
26
|
+
"provision:testdb": "npm run provision:testdb:docker:clear && npm run provision:testdb:docker:prepare && npm run provision:testdb:docker:up && npm run provision:testdb:docker:await && ACCESS=test npm run provision:schema:plan && ACCESS=test npm run provision:schema:apply && ACCESS=test npm run provision:schema:plan",
|
|
27
27
|
"start:testdb": "npm run provision:testdb",
|
|
28
28
|
"start:livedb:prep": "rhx use.rds.capacity --env prep"
|
|
29
29
|
}
|
|
@@ -40,8 +40,9 @@ path) maps onto the write-only contract exactly:
|
|
|
40
40
|
|
|
41
41
|
- **plan role** (`CREDS_CICD_AWS_PROD_OIDC_PLAN_ROLE_ARN`): `ssm:DescribeParameters` +
|
|
42
42
|
`ssm:ListTagsForResource` only. NO `ssm:GetParameter`, NO `kms:Decrypt` — it
|
|
43
|
-
reconciles metadata. its ONE decrypt exception is the
|
|
44
|
-
credential
|
|
43
|
+
reconciles metadata. its ONE decrypt exception is the
|
|
44
|
+
`/{org}/{project}/database/role/cicd/for-plan/password` credential — a SLASH path with
|
|
45
|
+
no tier segment, byte-identical to the arn the policy pins.
|
|
45
46
|
- **apply role** (`CREDS_CICD_AWS_PROD_OIDC_APPLY_ROLE_ARN`): `ssm:PutParameter` +
|
|
46
47
|
`kms:Encrypt` (default `aws/ssm` key) + the tag write perms. never needs decrypt.
|
|
47
48
|
|
|
@@ -52,10 +53,12 @@ declared `name` must be byte-identical. do NOT reshape the path.
|
|
|
52
53
|
|
|
53
54
|
terraform seeded these params under `var.environment`, where the prep account carries
|
|
54
55
|
the legacy `dev` label (see `define.infrastructure-dev-vs-application-prep`). the live
|
|
55
|
-
param
|
|
56
|
-
namespace prep→dev.
|
|
57
|
-
|
|
58
|
-
|
|
56
|
+
CRUD param name contains that literal `dev`, so `resources.parameters.ts` casts the
|
|
57
|
+
dotted crud namespace prep→dev. the two cicd names do NOT cast — they are slash paths
|
|
58
|
+
with no tier segment at all (the aws ACCOUNT separates prep from prod, and the plan
|
|
59
|
+
role's iam pin omits a tier), so they stay byte-identical across every tier. tags do
|
|
60
|
+
NOT cast either — they conform to the access vocab (`prep`), so the first apply
|
|
61
|
+
reconciles the live `environment` tag dev→prep (a metadata-only change, no value write).
|
|
59
62
|
|
|
60
63
|
## order of operations (once per env — prep, then prod)
|
|
61
64
|
|
|
@@ -30,13 +30,16 @@ import { getEnvironment } from 'sdk-environment';
|
|
|
30
30
|
const { access } = getEnvironment.static();
|
|
31
31
|
|
|
32
32
|
/**
|
|
33
|
-
* .what = the
|
|
33
|
+
* .what = the access as it is SPELLED in the live SSM param NAMES — a legacy slug.
|
|
34
34
|
* .why = terraform seeded these params under var.environment, where the prep account carried the
|
|
35
|
-
* legacy `dev`
|
|
35
|
+
* legacy `dev` slug (see define.infrastructure-dev-vs-application-prep). the live param
|
|
36
36
|
* names contain that literal string, so the dotted namespace casts prep→dev. test/prod are
|
|
37
37
|
* unchanged. (tags do NOT cast — they conform to the access vocab; see `secret` below.)
|
|
38
|
+
* .note = this is NOT the lambda-fleet slug bridge `sdkAwsLambdaEnvAccessAncient`, which collapses
|
|
39
|
+
* BOTH test and prep to `dev`. here test keeps its own name, because this casts a literal
|
|
40
|
+
* legacy SSM param string, not a fleet slug — a deliberately narrower cast, not a drifted copy.
|
|
38
41
|
*/
|
|
39
|
-
const
|
|
42
|
+
const accessSlug = access === 'prep' ? 'dev' : access;
|
|
40
43
|
|
|
41
44
|
/**
|
|
42
45
|
* .what = declare a secret ssm parameter for adoption (write-only, default key).
|
|
@@ -46,9 +49,9 @@ const stage = access === 'prep' ? 'dev' : access;
|
|
|
46
49
|
* org access vocab (`prep`, not the legacy `dev`), so the first apply reconciles the live
|
|
47
50
|
* `environment` tag from dev→prep (a metadata-only change, no value write).
|
|
48
51
|
*/
|
|
49
|
-
const secret = (name: string): DeclaredAwsSsmParameterSecure =>
|
|
52
|
+
const secret = (input: { name: string }): DeclaredAwsSsmParameterSecure =>
|
|
50
53
|
DeclaredAwsSsmParameterSecure.as({
|
|
51
|
-
name,
|
|
54
|
+
name: input.name,
|
|
52
55
|
keyId: null, // default aws/ssm key (matches the terraform resources)
|
|
53
56
|
description: null,
|
|
54
57
|
tags: {
|
|
@@ -61,22 +64,38 @@ const secret = (name: string): DeclaredAwsSsmParameterSecure =>
|
|
|
61
64
|
|
|
62
65
|
/**
|
|
63
66
|
* .what = the full set of secret ssm parameters this wish declares.
|
|
64
|
-
* .why = the db-role credentials the service + migrations use. declared for every access
|
|
67
|
+
* .why = the db-role credentials the service + migrations use. declared for every access —
|
|
65
68
|
* no per-tier conditional. only prep + prod ever APPLY this wish (there is no
|
|
66
69
|
* aws-test-declastruct provision job — see .github/workflows/provision.yml), so the
|
|
67
70
|
* value-less-absent throw on apply cannot trigger in test. test sources its non-sensitive
|
|
68
71
|
* db creds straight from config/test.json and never reconciles these params.
|
|
69
|
-
* .note = the
|
|
70
|
-
*
|
|
72
|
+
* .note = the two cicd credentials are pinned in the prod plan role's iam policy as SLASH paths
|
|
73
|
+
* with NO tier segment — `parameter/*/svc-*/database/role/cicd/for-plan/*` and
|
|
74
|
+
* `.../for-apply/*`. that pin's arn needs literal `/` separators after `parameter/`, so a
|
|
75
|
+
* dotted name cannot match it and the plan role gets ciphertext or a denial, forever. it
|
|
76
|
+
* omits a tier segment on purpose: the aws ACCOUNT separates prep from prod, never the
|
|
77
|
+
* name. so the for-plan name MUST stay byte-identical to the pin. the crud credential is
|
|
78
|
+
* pinned by NO policy, so it keeps the dotted `${org}.${project}.${accessSlug}` name that
|
|
79
|
+
* config/${env}.json matches — hence the three names differ in shape by design, not by
|
|
80
|
+
* accident.
|
|
71
81
|
*/
|
|
72
|
-
export const
|
|
73
|
-
|
|
82
|
+
export const getAllParameters = (input: {
|
|
83
|
+
accessSlug: string | null;
|
|
84
|
+
}): DeclaredAwsSsmParameterSecure[] => {
|
|
85
|
+
// dotted namespace that prefixes the env-scoped crud param name
|
|
74
86
|
// keep in sync with terraform local.parameter_store_namespace + config/${env}.json
|
|
75
|
-
const
|
|
87
|
+
const slug = input.accessSlug ?? accessSlug;
|
|
88
|
+
const namespace = `@declapract{variable.organizationName}.@declapract{variable.projectName}.${slug}`;
|
|
76
89
|
|
|
77
90
|
return [
|
|
78
|
-
|
|
79
|
-
secret(`${namespace}.database.role.
|
|
80
|
-
|
|
91
|
+
// crud: dotted + tier-scoped, matched by config/${env}.json; no policy pins it
|
|
92
|
+
secret({ name: `${namespace}.database.role.crud.password` }),
|
|
93
|
+
// cicd: SLASH path, NO tier segment — byte-identical to the prod plan role's iam pin
|
|
94
|
+
secret({
|
|
95
|
+
name: `/@declapract{variable.organizationName}/@declapract{variable.projectName}/database/role/cicd/for-plan/password`,
|
|
96
|
+
}),
|
|
97
|
+
secret({
|
|
98
|
+
name: `/@declapract{variable.organizationName}/@declapract{variable.projectName}/database/role/cicd/for-apply/password`,
|
|
99
|
+
}),
|
|
81
100
|
];
|
|
82
101
|
};
|
|
@@ -3,14 +3,17 @@ import { getDeclastructAwsProvider } from 'declastruct-aws';
|
|
|
3
3
|
import type { DomainEntity } from 'domain-objects';
|
|
4
4
|
import { genLogMethods } from 'sdk-logs';
|
|
5
5
|
|
|
6
|
-
import {
|
|
6
|
+
import { getAllParameters } from './resources.parameters';
|
|
7
7
|
|
|
8
8
|
/**
|
|
9
9
|
* .what = the declastruct wish for this service's aws resources.
|
|
10
10
|
* .why = declastruct-aws owns the ssm parameters that terraform now forgets (see
|
|
11
11
|
* provision/aws/product/parameter-store.tf). the plan role reconciles secrets
|
|
12
|
-
*
|
|
12
|
+
* without any ssm:GetParameter or kms:Decrypt; apply writes via PutParameter +
|
|
13
13
|
* kms:Encrypt.
|
|
14
|
+
* .name = `getProviders` + `getResources` are declastruct's REQUIRED wish entrypoint names, so
|
|
15
|
+
* both are exempt from the get-set-gen One/All cardinality rule (a `getAll*` rename makes
|
|
16
|
+
* declastruct find no entrypoint — the wish dies). external-framework contract names.
|
|
14
17
|
*/
|
|
15
18
|
|
|
16
19
|
export const getProviders = async (): Promise<DeclastructProvider[]> => [
|
|
@@ -24,4 +27,4 @@ export const getProviders = async (): Promise<DeclastructProvider[]> => [
|
|
|
24
27
|
];
|
|
25
28
|
|
|
26
29
|
export const getResources = async (): Promise<DomainEntity<any>[]> =>
|
|
27
|
-
|
|
30
|
+
getAllParameters({ accessSlug: null });
|
package/dist/practices/persist-with-rds/best-practice/provision/docker/testdb/wait-for-postgres.sh
CHANGED
|
@@ -1,15 +1,25 @@
|
|
|
1
1
|
#!/bin/sh
|
|
2
|
+
set -eu
|
|
2
3
|
# wait until postgres is really available
|
|
3
4
|
maxcounter=45
|
|
4
5
|
|
|
5
6
|
echo "waiting for postgres server to begin accepting connections..."
|
|
6
7
|
counter=1
|
|
7
|
-
|
|
8
|
+
# pass the secret via PGPASSWORD, not inline in the connection string (which leaks it to `ps`)
|
|
9
|
+
export PGPASSWORD="${POSTGRES_PASSWORD:-}"
|
|
10
|
+
# capture the probe's stderr so the real cause (bad password, port conflict, image build failure)
|
|
11
|
+
# surfaces on timeout, rather than one hardcoded diagnosis that reads the same for every cause
|
|
12
|
+
lasterr=""
|
|
13
|
+
while true; do
|
|
14
|
+
# fold the capture into the if-condition so `set -e` does not exit on the expected
|
|
15
|
+
# connect failures while postgres warms up; lasterr still holds the last stderr
|
|
16
|
+
if lasterr=$(psql "dbname=${POSTGRES_DB:-} host=localhost user=postgres port=5432" -c '\l' 2>&1); then break; fi
|
|
8
17
|
sleep 1
|
|
9
18
|
counter=`expr $counter + 1`
|
|
10
19
|
if [ $counter -gt $maxcounter ]; then
|
|
11
|
-
>&2 echo "
|
|
20
|
+
>&2 echo "postgres did not accept connections after ${maxcounter}s; the last psql error was:"
|
|
21
|
+
>&2 echo "$lasterr"
|
|
12
22
|
exit 1
|
|
13
23
|
fi;
|
|
14
24
|
done
|
|
15
|
-
echo "connected to postgres instance
|
|
25
|
+
echo "connected to postgres instance successfully"
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
#####################################################
|
|
2
|
-
##
|
|
2
|
+
## initialize the database in a live cluster
|
|
3
3
|
## - in other words, it does all of the things that docker does for us when we spin up a cluster without the db already
|
|
4
4
|
## - i.e.,
|
|
5
5
|
## - create the database
|
|
@@ -17,43 +17,48 @@
|
|
|
17
17
|
## ```
|
|
18
18
|
#####################################################
|
|
19
19
|
|
|
20
|
-
|
|
21
|
-
|
|
20
|
+
set -eu
|
|
21
|
+
|
|
22
|
+
# check that the human has defined the environment that they want this key created for correctly
|
|
23
|
+
ENVIRONMENT="${1:-}";
|
|
22
24
|
if [ "$ENVIRONMENT" != "prod" ] && [ "$ENVIRONMENT" != "prep" ]; then
|
|
23
|
-
echo "\nerror:
|
|
24
|
-
exit
|
|
25
|
+
echo "\nerror: environment, the first argument, must be specified as either 'prod' or 'prep'. you specified '$ENVIRONMENT'";
|
|
26
|
+
exit 2;
|
|
25
27
|
fi
|
|
26
28
|
|
|
27
|
-
# check that
|
|
29
|
+
# check that the human is authed into correct account
|
|
28
30
|
AWS_ACCOUNT_ID=$(aws sts get-caller-identity | jq -r '.Account');
|
|
29
31
|
EXPECTED_AWS_ACCOUNT_ID=$([ "$ENVIRONMENT" = 'prod' ] && echo "@declapract{variable.awsAccountId.prod}" || echo "@declapract{variable.awsAccountId.prep}");
|
|
30
32
|
if [ "$AWS_ACCOUNT_ID" != "$EXPECTED_AWS_ACCOUNT_ID" ]; then
|
|
31
|
-
echo "\nerror: the AWS_ACCOUNT that you are signed into is not correct for the environment you specified.
|
|
32
|
-
exit
|
|
33
|
+
echo "\nerror: the AWS_ACCOUNT that you are signed into is not correct for the environment you specified. you are authed into account '$AWS_ACCOUNT_ID' but the correct account id for '$ENVIRONMENT' is '$EXPECTED_AWS_ACCOUNT_ID'";
|
|
34
|
+
exit 2;
|
|
33
35
|
fi
|
|
34
36
|
|
|
35
37
|
# check that pg admin password was specified
|
|
36
|
-
POSTGRES_ADMIN_PASSWORD="$2"
|
|
37
|
-
if [ -z $POSTGRES_ADMIN_PASSWORD ]; then
|
|
38
|
+
POSTGRES_ADMIN_PASSWORD="${2:-}"
|
|
39
|
+
if [ -z "${POSTGRES_ADMIN_PASSWORD:-}" ]; then
|
|
38
40
|
echo "\nerror: POSTGRES_ADMIN_PASSWORD must be defined as second arg";
|
|
39
|
-
exit
|
|
41
|
+
exit 2;
|
|
40
42
|
fi;
|
|
41
43
|
|
|
42
44
|
# check that the cicd password was provisioned, if in prod, since this is used to create the cicd user
|
|
45
|
+
# note: this reads the legacy DOTTED param name (`....database.role.cicd.password`), a live consumer
|
|
46
|
+
# distinct from the slash-path plan/apply secrets. it is the prod cicd-user bootstrap credential
|
|
47
|
+
# and stays alive on purpose — do not prune it as an unreferenced legacy param.
|
|
43
48
|
if [ "$ENVIRONMENT" = "prod" ]; then
|
|
44
49
|
CICD_USER_PASSWORD=$(aws ssm get-parameter --name "@declapract{variable.organizationName}.@declapract{variable.projectName}.$ENVIRONMENT.database.role.cicd.password" --with-decryption --output text --query Parameter.Value)
|
|
45
|
-
if [ -z "$CICD_USER_PASSWORD" ]; then
|
|
46
|
-
echo "\nerror: CICD_USER_PASSWORD must be provisioned with terraform before
|
|
47
|
-
exit
|
|
50
|
+
if [ -z "${CICD_USER_PASSWORD:-}" ]; then
|
|
51
|
+
echo "\nerror: CICD_USER_PASSWORD must be provisioned with terraform before you run this"
|
|
52
|
+
exit 2;
|
|
48
53
|
fi;
|
|
49
54
|
if [ "$CICD_USER_PASSWORD" = "__IGNORED__" ] || [ "$CICD_USER_PASSWORD" = "__CHANG3_ME__" ]; then
|
|
50
55
|
echo "\nerror: CICD_USER_PASSWORD must be set to a value other than the default placeholder"
|
|
51
|
-
exit
|
|
56
|
+
exit 2;
|
|
52
57
|
fi;
|
|
53
58
|
fi;
|
|
54
59
|
|
|
55
60
|
|
|
56
|
-
# define the postgres
|
|
61
|
+
# define the postgres connection string
|
|
57
62
|
CLUSTER_HOST=$([ "$ENVIRONMENT" = 'prod' ] && echo "@declapract{variable.databaseTunnelHost.prod}" || echo "@declapract{variable.databaseTunnelHost.prep}");
|
|
58
63
|
CLUSTER_CONNECTION_STRING=postgresql://postgres:$POSTGRES_ADMIN_PASSWORD@$CLUSTER_HOST:5432
|
|
59
64
|
ROOT_DB_CONNECTION_STRING=$CLUSTER_CONNECTION_STRING/postgres
|
|
@@ -65,24 +70,24 @@ SRC_DIR=$(dirname $SRC_PATH);
|
|
|
65
70
|
INIT_SQLS_DIR=$SRC_DIR/sql/init;
|
|
66
71
|
|
|
67
72
|
# run the create database command on root db
|
|
68
|
-
echo "\n 🔨
|
|
73
|
+
echo "\n 🔨 create the database..."
|
|
69
74
|
psql $ROOT_DB_CONNECTION_STRING -f $INIT_SQLS_DIR/.database.sql
|
|
70
75
|
|
|
71
|
-
echo "\n 🔨
|
|
76
|
+
echo "\n 🔨 install the extensions..."
|
|
72
77
|
psql $SVC_DB_CONNECTION_STRING -f $INIT_SQLS_DIR/.extensions.sql
|
|
73
78
|
|
|
74
|
-
echo "\n 🔨
|
|
79
|
+
echo "\n 🔨 create the schema..."
|
|
75
80
|
psql $SVC_DB_CONNECTION_STRING -f $INIT_SQLS_DIR/.schema.sql
|
|
76
81
|
|
|
77
82
|
if [ "$ENVIRONMENT" = "prod" ]; then
|
|
78
|
-
echo "\n 🔨
|
|
83
|
+
echo "\n 🔨 grant reads to the datalakedb user..." # only in prod env; we dont want prep's test data in our datalake
|
|
79
84
|
psql $SVC_DB_CONNECTION_STRING -f $INIT_SQLS_DIR/.user.datalakedb.sql
|
|
80
85
|
fi;
|
|
81
86
|
|
|
82
|
-
echo "\n 🔨
|
|
87
|
+
echo "\n 🔨 create the cicd user..."
|
|
83
88
|
CICD_USER_CREATE_SQL_PATH=$INIT_SQLS_DIR/.user.cicd.sql
|
|
84
89
|
if [ "$ENVIRONMENT" = "prod" ]; then
|
|
85
|
-
CICD_USER_CREATE_SQL_PATH_TEMP=$CICD_USER_CREATE_SQL_PATH.tmp # in prod, we must create a temp file which will have the actual password we'll use
|
|
90
|
+
CICD_USER_CREATE_SQL_PATH_TEMP=$CICD_USER_CREATE_SQL_PATH.tmp # in prod, we must create a temp file which will have the actual password we'll use to create the cicd user
|
|
86
91
|
cat $CICD_USER_CREATE_SQL_PATH | sed "s/__CHANG3_ME__/${CICD_USER_PASSWORD}/" > $CICD_USER_CREATE_SQL_PATH_TEMP # create the temp file w/ the actual password
|
|
87
92
|
psql $SVC_DB_CONNECTION_STRING -f $CICD_USER_CREATE_SQL_PATH_TEMP # run the temp create sql w/ the actual password
|
|
88
93
|
rm $CICD_USER_CREATE_SQL_PATH_TEMP # remove the temp file, so the password doesn't get checked in
|
|
@@ -15,16 +15,23 @@ export type Grant = 'plan' | 'apply';
|
|
|
15
15
|
* .note = grant is a per-schema arg, NOT read from env here; getConfig picks which
|
|
16
16
|
* schema to parse with at call time (see getConfig.ts).
|
|
17
17
|
*/
|
|
18
|
-
const
|
|
18
|
+
const getOneSchema = <TGrant extends Grant>(grant: TGrant) => {
|
|
19
19
|
// required by default; optional only under grant=plan. generic on the LITERAL
|
|
20
20
|
// TGrant so each schema infers monomorphically (all-required for apply,
|
|
21
21
|
// reader-denied-optional for plan) instead of the widened union.
|
|
22
|
-
// .note on `as`: a conditional return type cannot be proven from the runtime
|
|
23
|
-
// ternary, so TS needs this one assertion. it is sound — the branch matches
|
|
24
|
-
// TGrant exactly (plan => .optional(), apply => schema).
|
|
25
22
|
const secret = <T extends z.ZodTypeAny>(
|
|
26
23
|
schema: T,
|
|
27
24
|
): TGrant extends 'plan' ? z.ZodOptional<T> : T =>
|
|
25
|
+
// as-cast — why types miss: TS cannot relate a conditional return type
|
|
26
|
+
// (`TGrant extends 'plan' ? … : …`) to a runtime `grant === 'plan'`
|
|
27
|
+
// ternary; the two are unrelated to the checker, so the ternary widens to
|
|
28
|
+
// `ZodOptional<T> | T` and does not fit the declared conditional return.
|
|
29
|
+
// correct type: the value IS `ZodOptional<T>` when TGrant='plan' and `T`
|
|
30
|
+
// otherwise — exactly the declared return; the runtime branch matches the
|
|
31
|
+
// type branch one-to-one, so the assertion is sound.
|
|
32
|
+
// removal path: TS learns to relate a conditional return type to a runtime
|
|
33
|
+
// discriminant check (microsoft/TypeScript#33912), or the caller splits
|
|
34
|
+
// into two monomorphic overloads that never share this body.
|
|
28
35
|
(grant === 'plan' ? schema.optional() : schema) as TGrant extends 'plan'
|
|
29
36
|
? z.ZodOptional<T>
|
|
30
37
|
: T;
|
|
@@ -88,8 +95,8 @@ const getSchema = <TGrant extends Grant>(grant: TGrant) => {
|
|
|
88
95
|
* .why = getConfig picks which to parse with by grant (see getConfig.ts).
|
|
89
96
|
*/
|
|
90
97
|
export const schema = {
|
|
91
|
-
apply:
|
|
92
|
-
plan:
|
|
98
|
+
apply: getOneSchema('apply'),
|
|
99
|
+
plan: getOneSchema('plan'),
|
|
93
100
|
} as const;
|
|
94
101
|
|
|
95
102
|
/**
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { getOneDatabaseConnection } from './getOneDatabaseConnection';
|
|
2
|
+
|
|
3
|
+
describe('getOneDatabaseConnection', () => {
|
|
4
|
+
it('should be able to connect and execute a query', async () => {
|
|
5
|
+
const dbConnection = await getOneDatabaseConnection();
|
|
6
|
+
const result = await dbConnection.query({ sql: 'select 1' });
|
|
7
|
+
expect(result.rows.length).toEqual(1);
|
|
8
|
+
await dbConnection.end();
|
|
9
|
+
});
|
|
10
|
+
});
|