declapract-typescript-ehmpathy 0.49.13 → 0.49.14
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/artifact-only/declarations/declapract.declare.yml +6 -0
- package/dist/.test/assets/artifact-only/declarations/practices/artifact/.test/assets/demo-repo-with-npx-command/declapract.use.yml +3 -0
- package/dist/.test/assets/artifact-only/declarations/practices/artifact/.test/assets/demo-repo-with-npx-command/package.json +11 -0
- package/dist/.test/assets/artifact-only/declarations/practices/artifact/__snapshots__/package.json.declapract.integration.test.ts.snap +31 -0
- package/dist/.test/assets/artifact-only/declarations/practices/artifact/best-practice/.declapract.readme.md +6 -0
- package/dist/.test/assets/artifact-only/declarations/practices/artifact/best-practice/artifact.yml +7 -0
- package/dist/.test/assets/artifact-only/declarations/practices/artifact/best-practice/package.json +8 -0
- package/dist/.test/assets/artifact-only/declarations/practices/artifact/package.json.declapract.integration.test.ts +74 -0
- package/dist/.test/assets/artifact-only/declarations/useCases.yml +6 -0
- package/dist/.test/assets/bottleneck/declarations/declapract.declare.yml +4 -0
- package/dist/.test/assets/bottleneck/declarations/practices/bottleneck/.declapract.integration.test.ts +96 -0
- package/dist/.test/assets/bottleneck/declarations/practices/bottleneck/__snapshots__/.declapract.integration.test.ts.snap +44 -0
- package/dist/.test/assets/bottleneck/declarations/practices/bottleneck/bad-practices/bottleneck/.test/assets/demo-repo-with-bottleneck-import/declapract.use.yml +2 -0
- package/dist/.test/assets/bottleneck/declarations/practices/bottleneck/bad-practices/bottleneck/.test/assets/demo-repo-with-bottleneck-import/package.json +7 -0
- package/dist/.test/assets/bottleneck/declarations/practices/bottleneck/bad-practices/bottleneck/.test/assets/demo-repo-with-bottleneck-import/src/utils/limiter.ts +3 -0
- package/dist/.test/assets/bottleneck/declarations/practices/bottleneck/bad-practices/bottleneck/.test/assets/demo-repo-without-bottleneck-import/declapract.use.yml +2 -0
- package/dist/.test/assets/bottleneck/declarations/practices/bottleneck/bad-practices/bottleneck/.test/assets/demo-repo-without-bottleneck-import/package.json +7 -0
- package/dist/.test/assets/bottleneck/declarations/practices/bottleneck/bad-practices/bottleneck/__snapshots__/package.json.declapract.integration.test.ts.snap +28 -0
- package/dist/.test/assets/bottleneck/declarations/practices/bottleneck/bad-practices/bottleneck/package.json +5 -0
- package/dist/.test/assets/bottleneck/declarations/practices/bottleneck/bad-practices/bottleneck/package.json.declapract.integration.test.ts +112 -0
- package/dist/.test/assets/bottleneck/declarations/practices/bottleneck/bad-practices/bottleneck/package.json.declapract.ts +110 -0
- package/dist/.test/assets/bottleneck/declarations/useCases.yml +5 -0
- package/dist/.test/assets/cache/declarations/practices/cache/.declapract.integration.test.ts +112 -16
- package/dist/.test/assets/cache/declarations/practices/cache/.test/assets/repo-with-retired-cache-member/declapract.use.yml +6 -0
- package/dist/.test/assets/cache/declarations/practices/cache/.test/assets/repo-with-retired-cache-member/package.json +8 -0
- package/dist/.test/assets/cache/declarations/practices/cache/.test/assets/repo-with-retired-cache-member/src/utils/cache/getCacheDirectory.ts +10 -0
- package/dist/.test/assets/cache/declarations/practices/cache/.test/assets/repo-with-retired-cache-member-imported/declapract.use.yml +6 -0
- package/dist/.test/assets/cache/declarations/practices/cache/.test/assets/repo-with-retired-cache-member-imported/package.json +7 -0
- package/dist/.test/assets/cache/declarations/practices/cache/.test/assets/repo-with-retired-cache-member-imported/src/logic/getWaveReport.ts +5 -0
- package/dist/.test/assets/cache/declarations/practices/cache/__snapshots__/.declapract.integration.test.ts.snap +73 -0
- package/dist/.test/assets/cache/declarations/practices/cache/bad-practices/cache-directory-options/.declapract.readme.md +5 -0
- package/dist/.test/assets/cache/declarations/practices/cache/bad-practices/cache-directory-options/src/<star><star>/<star>.ts.declapract.ts +78 -0
- package/dist/.test/assets/cache/declarations/practices/cache/bad-practices/unfloored-cache-member/.declapract.readme.md +10 -0
- package/dist/.test/assets/cache/declarations/practices/cache/bad-practices/unfloored-cache-member/package.json.declapract.ts +151 -0
- package/dist/.test/assets/cache/declarations/practices/cache/bad-practices/unfloored-cache-member/src/<star><star>/<star>.ts.declapract.ts +39 -0
- package/dist/.test/assets/cache/declarations/practices/cache/best-practice/.declapract.readme.md +17 -0
- package/dist/.test/assets/cache/declarations/practices/cache/best-practice/package.json +3 -0
- package/dist/.test/assets/cicd-app-react-native-expo/declarations/declapract.declare.yml +7 -0
- package/dist/.test/assets/cicd-app-react-native-expo/declarations/practices/cicd-app-react-native-expo/.declapract.integration.test.ts +904 -0
- package/dist/.test/assets/cicd-app-react-native-expo/declarations/practices/cicd-app-react-native-expo/__snapshots__/.declapract.integration.test.ts.snap +313 -0
- package/dist/.test/assets/cicd-app-react-native-expo/declarations/practices/cicd-app-react-native-expo/__snapshots__/package.json.declapract.integration.test.ts.snap +19 -0
- package/dist/.test/assets/cicd-app-react-native-expo/declarations/practices/cicd-app-react-native-expo/__snapshots__/provision.yml.declapract.integration.test.ts.snap +76 -0
- package/dist/.test/assets/cicd-app-react-native-expo/declarations/practices/cicd-app-react-native-expo/best-practice/.declapract.readme.md +27 -0
- package/dist/.test/assets/cicd-app-react-native-expo/declarations/practices/cicd-app-react-native-expo/best-practice/.github/workflows/.deploy-expo.yml +145 -0
- package/dist/.test/assets/cicd-app-react-native-expo/declarations/practices/cicd-app-react-native-expo/best-practice/.github/workflows/deploy.yml +76 -0
- package/dist/.test/assets/cicd-app-react-native-expo/declarations/practices/cicd-app-react-native-expo/best-practice/.github/workflows/provision.yml +33 -0
- package/dist/.test/assets/cicd-app-react-native-expo/declarations/practices/cicd-app-react-native-expo/best-practice/.github/workflows/provision.yml.declapract.ts +75 -0
- package/dist/.test/assets/cicd-app-react-native-expo/declarations/practices/cicd-app-react-native-expo/best-practice/.gitignore.declapract.ts +28 -0
- package/dist/.test/assets/cicd-app-react-native-expo/declarations/practices/cicd-app-react-native-expo/best-practice/package.json +39 -0
- package/dist/.test/assets/cicd-app-react-native-expo/declarations/practices/cicd-app-react-native-expo/package.json.declapract.integration.test.ts +149 -0
- package/dist/.test/assets/cicd-app-react-native-expo/declarations/practices/cicd-app-react-native-expo/provision.yml.declapract.integration.test.ts +131 -0
- package/dist/.test/assets/cicd-app-react-native-expo/declarations/practices/typescript-expo/__snapshots__/metro.config.js.declapract.integration.test.ts.snap +60 -0
- package/dist/.test/assets/cicd-app-react-native-expo/declarations/practices/typescript-expo/__snapshots__/package.json.declapract.integration.test.ts.snap +8 -0
- package/dist/.test/assets/cicd-app-react-native-expo/declarations/practices/typescript-expo/__snapshots__/tsconfig.json.declapract.integration.test.ts.snap +19 -0
- package/dist/.test/assets/cicd-app-react-native-expo/declarations/practices/typescript-expo/best-practice/metro.config.js +40 -0
- package/dist/.test/assets/cicd-app-react-native-expo/declarations/practices/typescript-expo/best-practice/metro.config.js.declapract.ts +101 -0
- package/dist/.test/assets/cicd-app-react-native-expo/declarations/practices/typescript-expo/best-practice/package.json +6 -0
- package/dist/.test/assets/cicd-app-react-native-expo/declarations/practices/typescript-expo/best-practice/package.json.declapract.ts +12 -0
- package/dist/.test/assets/cicd-app-react-native-expo/declarations/practices/typescript-expo/best-practice/tsconfig.json +14 -0
- package/dist/.test/assets/cicd-app-react-native-expo/declarations/practices/typescript-expo/best-practice/tsconfig.json.declapract.ts +12 -0
- package/dist/.test/assets/cicd-app-react-native-expo/declarations/practices/typescript-expo/metro.config.js.declapract.integration.test.ts +111 -0
- package/dist/.test/assets/cicd-app-react-native-expo/declarations/practices/typescript-expo/package.json.declapract.integration.test.ts +60 -0
- package/dist/.test/assets/cicd-app-react-native-expo/declarations/practices/typescript-expo/tsconfig.json.declapract.integration.test.ts +43 -0
- package/dist/.test/assets/cicd-app-react-native-expo/declarations/useCases.yml +6 -0
- package/dist/.test/assets/cicd-app-react-native-expo/demo-repo-expo/.github/workflows/provision.yml +27 -0
- package/dist/.test/assets/cicd-app-react-native-expo/demo-repo-expo/declapract.use.yml +15 -0
- package/dist/.test/assets/cicd-app-react-native-expo/demo-repo-expo/metro.config.js +8 -0
- package/dist/.test/assets/cicd-app-react-native-expo/demo-repo-expo/package.json +4 -0
- package/dist/.test/assets/cicd-service/declarations/practices/cicd-service/.test/assets/demo-repo-pre-oidc/.github/workflows/provision.yml +107 -0
- package/dist/.test/assets/cicd-service/declarations/practices/cicd-service/.test/assets/demo-repo-pre-oidc/declapract.use.rds.yml +20 -0
- package/dist/.test/assets/cicd-service/declarations/practices/cicd-service/.test/assets/demo-repo-pre-oidc/provision/schema/init.sql +3 -0
- package/dist/.test/assets/cicd-service/declarations/practices/cicd-service/__snapshots__/acceptanceContempFleetGuard.declapract.integration.test.ts.snap +3 -3
- package/dist/.test/assets/cicd-service/declarations/practices/cicd-service/__snapshots__/provision.yml.merge.declapract.integration.test.ts.snap +234 -0
- package/dist/.test/assets/cicd-service/declarations/practices/cicd-service/acceptanceContempFleetGuard.declapract.integration.test.ts +1 -1
- package/dist/.test/assets/cicd-service/declarations/practices/cicd-service/bad-practices/rds-jobs-in-non-rds-service/.declapract.integration.test.ts +8 -2
- 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 +5 -4
- package/dist/.test/assets/cicd-service/declarations/practices/cicd-service/bad-practices/rds-jobs-in-non-rds-service/.github/workflows/provision.yml.declapract.ts +6 -4
- package/dist/.test/assets/cicd-service/declarations/practices/cicd-service/bad-practices/rds-jobs-in-non-rds-service/__snapshots__/.declapract.integration.test.ts.snap +7 -7
- package/dist/.test/assets/cicd-service/declarations/practices/cicd-service/best-practice/.github/workflows/.deploy-sls.yml +14 -5
- package/dist/.test/assets/cicd-service/declarations/practices/cicd-service/best-practice/.github/workflows/.sql-schema-control.yml +7 -1
- package/dist/.test/assets/cicd-service/declarations/practices/cicd-service/best-practice/.github/workflows/.terraform.yml +7 -1
- package/dist/.test/assets/cicd-service/declarations/practices/cicd-service/best-practice/.github/workflows/provision.yml.declapract.ts +67 -5
- package/dist/.test/assets/cicd-service/declarations/practices/cicd-service/provision.yml.merge.declapract.integration.test.ts +144 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/.declapract.integration.test.ts +29 -16
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/.extensions.sql.declapract.integration.test.ts +121 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/.test/assets/demo-repo-config-schema/declapract.use.yml +20 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/.test/assets/demo-repo-config-schema/declarations/declapract.declare.yml +6 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/.test/assets/demo-repo-config-schema/package.json +4 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/.test/assets/demo-repo-on-a-prior-major/codegen.sql.dao.yml +20 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/.test/assets/demo-repo-on-a-prior-major/declapract.declare.yml +4 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/.test/assets/demo-repo-on-a-prior-major/declapract.use.yml +19 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/.test/assets/demo-repo-on-a-prior-major/package.json +4 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/.test/assets/demo-repo-on-a-prior-major/provision/docker/testdb/build-image.dockerfile +6 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/.test/assets/demo-repo-with-custom-extensions/declapract.declare.yml +4 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/.test/assets/demo-repo-with-custom-extensions/declapract.use.yml +21 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/.test/assets/demo-repo-with-custom-extensions/package.json +4 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/.test/assets/demo-repo-with-custom-extensions/provision/schema/sql/init/.extensions.sql +9 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/.test/assets/demo-repo-with-dev-config/declapract.declare.yml +3 -3
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/__snapshots__/.declapract.integration.test.ts.snap +3 -3
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/__snapshots__/.extensions.sql.declapract.integration.test.ts.snap +35 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/__snapshots__/config-validates-schema.declapract.integration.test.ts.snap +500 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/__snapshots__/database-wrappers-typecheck.declapract.integration.test.ts.snap +10 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/__snapshots__/engine-upgrade.declapract.integration.test.ts.snap +151 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/__snapshots__/ssm-param-names.declapract.integration.test.ts.snap +9 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/__snapshots__/with-connection-in-input.declapract.integration.test.ts.snap +57 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/legacy-change-id/.declapract.integration.test.ts +71 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/legacy-change-id/.declapract.readme.md +6 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/legacy-change-id/.test/assets/demo-repo-with-legacy-change-id/declapract.declare.yml +4 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/legacy-change-id/.test/assets/demo-repo-with-legacy-change-id/declapract.use.yml +19 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/legacy-change-id/.test/assets/demo-repo-with-legacy-change-id/package.json +4 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/legacy-change-id/.test/assets/demo-repo-with-legacy-change-id/provision/schema/sql/init.yml +15 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/legacy-change-id/__snapshots__/.declapract.integration.test.ts.snap +39 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/legacy-change-id/provision/schema/<star><star>/<star>.yml.declapract.ts +68 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/old-dev-config-location/config/dev.json.declapract.ts +14 -24
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/old-get-database-connection/.declapract.integration.test.ts +221 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/old-get-database-connection/.declapract.readme.md +11 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/old-get-database-connection/.test/assets/demo-repo-with-old-get-database-connection/declapract.declare.yml +4 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/old-get-database-connection/.test/assets/demo-repo-with-old-get-database-connection/declapract.use.yml +19 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/old-get-database-connection/.test/assets/demo-repo-with-old-get-database-connection/package.json +4 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/old-get-database-connection/.test/assets/demo-repo-with-old-get-database-connection/src/access/daos/daoSurfer.ts +15 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/old-get-database-connection/.test/assets/demo-repo-with-old-get-database-connection/src/domain.operations/getSurfLesson.ts +14 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/old-get-database-connection/.test/assets/demo-repo-with-old-get-database-connection/src/utils/database/getDatabaseConnection.integration.test.ts +10 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/old-get-database-connection/.test/assets/demo-repo-with-old-get-database-connection/src/utils/database/getDatabaseConnection.ts +68 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/old-get-database-connection/.test/assets/old-templates/getDatabaseConnection.3a193e5.ts +65 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/old-get-database-connection/.test/assets/old-templates/getDatabaseConnection.66284e3.ts +30 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/old-get-database-connection/.test/assets/old-templates/getDatabaseConnection.68cf8ba.ts +90 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/old-get-database-connection/.test/assets/old-templates/getDatabaseConnection.9e1bdc4.ts +65 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/old-get-database-connection/.test/assets/old-templates/getDatabaseConnection.c6cef7e.ts +68 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/old-get-database-connection/.test/assets/old-templates/getDatabaseConnection.c8eb35b.ts +90 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/old-get-database-connection/.test/assets/old-templates/getDatabaseConnection.d1e8cd7.ts +31 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/old-get-database-connection/.test/assets/old-templates/getDatabaseConnection.e0c53d8.ts +90 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/old-get-database-connection/.test/assets/old-templates/getDatabaseConnection.eab15c0.ts +89 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/old-get-database-connection/.test/assets/old-templates/getDatabaseConnection.ef25ae0.ts +32 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/old-get-database-connection/.test/assets/old-templates/getDatabaseConnection.integration.test.66284e3.ts +10 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/old-get-database-connection/__snapshots__/.declapract.integration.test.ts.snap +75 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/old-get-database-connection/src/<star><star>/<star>.ts.declapract.ts +33 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/old-get-database-connection/src/utils/database/getDatabaseConnection.integration.test.ts.declapract.ts +43 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/old-get-database-connection/src/utils/database/getDatabaseConnection.ts.declapract.ts +51 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/pg-client-without-ssl/.declapract.integration.test.ts +86 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/pg-client-without-ssl/.declapract.readme.md +9 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/pg-client-without-ssl/.test/assets/demo-repo-with-plaintext-pg-client/declapract.declare.yml +4 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/pg-client-without-ssl/.test/assets/demo-repo-with-plaintext-pg-client/declapract.use.yml +19 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/pg-client-without-ssl/.test/assets/demo-repo-with-plaintext-pg-client/package.json +4 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/pg-client-without-ssl/.test/assets/demo-repo-with-plaintext-pg-client/src/access/sdks/sdkWaveArchive.ts +7 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/pg-client-without-ssl/.test/assets/demo-repo-with-plaintext-pg-client/src/utils/database/getSurfReportConnection.ts +19 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/pg-client-without-ssl/__snapshots__/.declapract.integration.test.ts.snap +72 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/pg-client-without-ssl/src/<star><star>/<star>.ts.declapract.ts +32 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/terraform-parameters/.declapract.integration.test.ts +8 -1
- 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 +3 -3
- 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 +9 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/terraform-parameters/__snapshots__/.declapract.integration.test.ts.snap +17 -1
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/terraform-parameters/provision/aws/product/parameter-store.tf.declapract.ts +42 -3
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/with-connection-in-input/.declapract.readme.md +9 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/with-connection-in-input/.test/assets/demo-repo-with-connection-in-input/declapract.use.yml +2 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/with-connection-in-input/.test/assets/demo-repo-with-connection-in-input/package.json +4 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/with-connection-in-input/.test/assets/demo-repo-with-connection-in-input/src/domain.operations/findSurferById.ts +9 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/with-connection-in-input/.test/assets/demo-repo-with-connection-in-input/src/utils/database/withDatabaseConnection.ts +10 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/with-connection-in-input/src/<star><star>/<star>.ts.declapract.ts +55 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/.declapract.readme.md +34 -7
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/codegen.sql.dao.yml +1 -1
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/codegen.sql.dao.yml.declapract.ts +33 -1
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/codegen.sql.schema.yml +1 -1
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/codegen.sql.types.yml +1 -1
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/config/prep.json +6 -2
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/config/prep.json.declapract.ts +10 -14
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/config/prod.json +6 -2
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/config/prod.json.declapract.ts +10 -14
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/config/test.json +6 -2
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/config/test.json.declapract.ts +10 -14
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/package.json +11 -10
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/provision/aws/readme.md +66 -32
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/provision/aws/resources.parameters.ts +26 -72
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/provision/aws/resources.ts +1 -1
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/provision/docker/testdb/build-image.dockerfile.declapract.ts +37 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/provision/docker/testdb/check-engine-skew.integration.test.ts +115 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/provision/docker/testdb/check-engine-skew.sh +165 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/provision/docker/testdb/compose.sh +43 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/provision/docker/testdb/docker-compose.yml +4 -3
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/provision/schema/connection.config.js +8 -1
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/provision/schema/control.yml +1 -1
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/provision/schema/sql/init/.extensions.sql.declapract.ts +10 -1
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/provision/schema/sql/init.yml +2 -2
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/src/.test/assets/database/getTestdbIdentity.ts +52 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/src/.test/assets/database/getTestdbPort.ts +17 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/src/utils/config/config.schema.ts +8 -41
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/src/utils/database/asDatabaseClientSsl.test.ts +82 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/src/utils/database/asDatabaseClientSsl.ts +52 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/src/utils/database/databaseClientTimeouts.ts +14 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/src/utils/database/getOneDatabaseConnection.ts +43 -14
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/src/utils/database/getOneDatabasePort.ts +30 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/src/utils/database/rdsCaBundleUsEast1.test.ts +51 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/src/utils/database/rdsCaBundleUsEast1.ts +86 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/src/utils/database/withDatabaseContext.ts +2 -1
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/best-practice/src/utils/database/withDatabaseTransaction.ts +7 -5
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/config-validates-schema.declapract.integration.test.ts +332 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/database-client.declapract.integration.test.ts +291 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/database-wrappers-typecheck.declapract.integration.test.ts +225 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/empty-template-declares-zero-clusters.declapract.integration.test.ts +4 -4
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/engine-upgrade.declapract.integration.test.ts +243 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/provision-testdb-access.declapract.integration.test.ts +1 -1
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/ssm-param-names.declapract.integration.test.ts +154 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/testdb-per-worktree.declapract.integration.test.ts +332 -0
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/with-connection-in-input.declapract.integration.test.ts +97 -0
- package/dist/.test/assets/dates-and-times/declarations/declapract.declare.yml +4 -0
- package/dist/.test/assets/dates-and-times/declarations/practices/dates-and-times/.declapract.integration.test.ts +95 -0
- package/dist/.test/assets/dates-and-times/declarations/practices/dates-and-times/__snapshots__/.declapract.integration.test.ts.snap +59 -0
- package/dist/.test/assets/dates-and-times/declarations/practices/dates-and-times/bad-practices/moment/.declapract.readme.md +9 -0
- package/dist/.test/assets/dates-and-times/declarations/practices/dates-and-times/bad-practices/moment/src/<star><star>/<star>.ts.declapract.ts +21 -0
- package/dist/.test/assets/dates-and-times/declarations/practices/dates-and-times/bad-practices/uni-time/.test/assets/demo-repo-with-uni-time/declapract.use.yml +5 -0
- package/dist/.test/assets/dates-and-times/declarations/practices/dates-and-times/bad-practices/uni-time/.test/assets/demo-repo-with-uni-time/package.json +12 -0
- package/dist/.test/assets/dates-and-times/declarations/practices/dates-and-times/bad-practices/uni-time/.test/assets/demo-repo-with-uni-time/src/domain.objects/SurfLesson.ts +9 -0
- package/dist/.test/assets/dates-and-times/declarations/practices/dates-and-times/bad-practices/uni-time/package.json +5 -0
- package/dist/.test/assets/dates-and-times/declarations/practices/dates-and-times/bad-practices/uni-time/package.json.declapract.ts +53 -0
- package/dist/.test/assets/dates-and-times/declarations/practices/dates-and-times/bad-practices/uni-time/src/<star><star>/<star>.ts.declapract.ts +49 -0
- package/dist/.test/assets/dates-and-times/declarations/practices/dates-and-times/best-practice/.declapract.readme.md +1 -0
- package/dist/.test/assets/dates-and-times/declarations/practices/dates-and-times/best-practice/package.json +5 -0
- package/dist/.test/assets/dates-and-times/declarations/useCases.yml +5 -0
- package/dist/.test/assets/directory-structure-src/declarations/declapract.declare.yml +4 -0
- package/dist/.test/assets/directory-structure-src/declarations/practices/directory-structure-src/.declapract.integration.test.ts +98 -0
- package/dist/.test/assets/directory-structure-src/declarations/practices/directory-structure-src/__snapshots__/.declapract.integration.test.ts.snap +37 -0
- package/dist/.test/assets/directory-structure-src/declarations/practices/directory-structure-src/bad-practices/data-dir/.declapract.readme.md +10 -0
- package/dist/.test/assets/directory-structure-src/declarations/practices/directory-structure-src/bad-practices/data-dir/src/<star><star>/data/<star><star>/<star>.declapract.ts +19 -0
- package/dist/.test/assets/directory-structure-src/declarations/practices/directory-structure-src/bad-practices/domain-dir/.declapract.readme.md +8 -0
- package/dist/.test/assets/directory-structure-src/declarations/practices/directory-structure-src/bad-practices/domain-dir/src/<star><star>/domain/<star><star>/<star>.declapract.ts +107 -0
- package/dist/.test/assets/directory-structure-src/declarations/practices/directory-structure-src/bad-practices/logic-dir/.declapract.readme.md +8 -0
- package/dist/.test/assets/directory-structure-src/declarations/practices/directory-structure-src/bad-practices/logic-dir/src/<star><star>/logic/<star><star>/<star>.declapract.ts +19 -0
- package/dist/.test/assets/directory-structure-src/declarations/practices/directory-structure-src/bad-practices/model-dir/.declapract.readme.md +3 -0
- package/dist/.test/assets/directory-structure-src/declarations/practices/directory-structure-src/bad-practices/model-dir/src/<star><star>/<star>.ts.declapract.ts +46 -0
- package/dist/.test/assets/directory-structure-src/declarations/practices/directory-structure-src/bad-practices/model-dir/src/<star><star>/model/<star><star>/<star>.declapract.ts +16 -0
- package/dist/.test/assets/directory-structure-src/declarations/practices/directory-structure-src/bad-practices/nonpublished-modules-dir/src/__nonpublished_modules__/<star><star>/<star>.declapract.ts +17 -0
- package/dist/.test/assets/directory-structure-src/declarations/practices/directory-structure-src/bad-practices/old-import-paths/.declapract.readme.md +21 -0
- package/dist/.test/assets/directory-structure-src/declarations/practices/directory-structure-src/bad-practices/old-import-paths/src/<star><star>/<star>.ts.declapract.ts +93 -0
- package/dist/.test/assets/directory-structure-src/declarations/practices/directory-structure-src/bad-practices/services-dir/.declapract.readme.md +5 -0
- package/dist/.test/assets/directory-structure-src/declarations/practices/directory-structure-src/bad-practices/services-dir/src/<star><star>/services/<star><star>/<star>.declapract.ts +16 -0
- package/dist/.test/assets/directory-structure-src/declarations/practices/directory-structure-src/best-practice/.declapract.readme.md +73 -0
- package/dist/.test/assets/directory-structure-src/declarations/practices/directory-structure-src/best-practice/src/access/daos/<star><star>/<star>.ts.declapract.ts +4 -0
- package/dist/.test/assets/directory-structure-src/declarations/practices/directory-structure-src/best-practice/src/access/sdks/<star><star>/<star>.ts.declapract.ts +4 -0
- package/dist/.test/assets/directory-structure-src/declarations/practices/directory-structure-src/best-practice/src/access/svcs/<star><star>/<star>.ts.declapract.ts +4 -0
- package/dist/.test/assets/directory-structure-src/declarations/practices/directory-structure-src/best-practice/src/contract/<star><star>/<star>.ts.declapract.ts +7 -0
- package/dist/.test/assets/directory-structure-src/declarations/practices/directory-structure-src/best-practice/src/domain.objects/<star><star>/<star>.ts.declapract.ts +7 -0
- package/dist/.test/assets/directory-structure-src/declarations/practices/directory-structure-src/best-practice/src/domain.operations/<star><star>/<star>.ts.declapract.ts +7 -0
- package/dist/.test/assets/directory-structure-src/declarations/practices/directory-structure-src/best-practice/src/infra/<star><star>/<star>.ts.declapract.ts +4 -0
- package/dist/.test/assets/directory-structure-src/declarations/useCases.yml +5 -0
- package/dist/.test/assets/directory-structure-src/demo-repo-with-two-domain-barrels/declapract.use.yml +2 -0
- package/dist/.test/assets/directory-structure-src/demo-repo-with-two-domain-barrels/package.json +4 -0
- package/dist/.test/assets/directory-structure-src/demo-repo-with-two-domain-barrels/src/domain/index.ts +2 -0
- package/dist/.test/assets/directory-structure-src/demo-repo-with-two-domain-barrels/src/domain/objects/Quote.ts +4 -0
- package/dist/.test/assets/directory-structure-src/demo-repo-with-two-domain-barrels/src/domain/objects/index.ts +1 -0
- package/dist/.test/assets/directory-structure-src/demo-repo-with-two-domain-barrels/src/domain.operations/getQuote.ts +6 -0
- package/dist/.test/assets/domain-contract/declarations/declapract.declare.yml +4 -0
- package/dist/.test/assets/domain-contract/declarations/practices/domain/.declapract.integration.test.ts +115 -0
- package/dist/.test/assets/domain-contract/declarations/practices/domain/__snapshots__/contract.declapract.integration.test.ts.snap +47 -0
- package/dist/.test/assets/domain-contract/declarations/practices/domain/bad-practices/schema-over-contract/.declapract.readme.md +12 -0
- package/dist/.test/assets/domain-contract/declarations/practices/domain/bad-practices/schema-over-contract/src/contract/<star><star>/<star>.ts.declapract.ts +78 -0
- package/dist/.test/assets/domain-contract/declarations/practices/domain/bad-practices/schematic-joi-model/src/domain.objects/<star><star>/<star>.ts.declapract.ts +19 -0
- package/dist/.test/assets/domain-contract/declarations/practices/domain/bad-practices/simple-type-guards/.declapract.readme.md +1 -0
- package/dist/.test/assets/domain-contract/declarations/practices/domain/bad-practices/simple-type-guards/package.json.declapract.ts +23 -0
- package/dist/.test/assets/domain-contract/declarations/practices/domain/best-practice/package.json +6 -0
- package/dist/.test/assets/domain-contract/declarations/practices/domain/best-practice/package.json.declapract.ts +3 -0
- package/dist/.test/assets/domain-contract/declarations/practices/domain/best-practice/src/domain.objects/index.ts.declapract.ts +15 -0
- package/dist/.test/assets/domain-contract/declarations/practices/domain/contract.declapract.integration.test.ts +61 -0
- package/dist/.test/assets/domain-contract/declarations/useCases.yml +5 -0
- package/dist/.test/assets/domain-contract/repo-with-contract/declapract.use.yml +2 -0
- package/dist/.test/assets/domain-contract/repo-with-contract/package.json +8 -0
- package/dist/.test/assets/domain-contract/repo-with-contract/src/contract/handlers/getChatThread.ts +19 -0
- package/dist/.test/assets/domain-contract/repo-with-contract/src/domain.objects/ChatThread.ts +10 -0
- package/dist/.test/assets/domain-contract/repo-with-contract/src/domain.objects/Transmission.ts +12 -0
- package/dist/.test/assets/environments/declarations/practices/environments/.declapract.integration.test.ts +15 -12
- package/dist/.test/assets/environments/declarations/practices/environments/__snapshots__/.declapract.integration.test.ts.snap +16 -8
- package/dist/.test/assets/environments/declarations/practices/environments/bad-practices/old-dev-scripts/.declapract.integration.test.ts +97 -0
- package/dist/.test/assets/environments/declarations/practices/environments/bad-practices/old-dev-scripts/.test/assets/demo-repo-with-dev-scripts/declapract.declare.yml +4 -0
- package/dist/.test/assets/environments/declarations/practices/environments/bad-practices/old-dev-scripts/.test/assets/demo-repo-with-dev-scripts/declapract.use.yml +9 -0
- package/dist/.test/assets/environments/declarations/practices/environments/bad-practices/old-dev-scripts/.test/assets/demo-repo-with-dev-scripts/package.json +11 -0
- package/dist/.test/assets/environments/declarations/practices/environments/bad-practices/old-dev-scripts/__snapshots__/.declapract.integration.test.ts.snap +36 -0
- package/dist/.test/assets/environments/declarations/practices/environments/best-practice/.declapract.readme.md +2 -2
- package/dist/.test/assets/environments/declarations/practices/environments/best-practice/src/access/sdks/sdkAwsLambdaEnvAccessAncient.ts +13 -5
- package/dist/.test/assets/environments/declarations/practices/environments/best-practice/src/access/sdks/sdkAwsLambdaEnvAccessContemp.ts +3 -3
- package/dist/.test/assets/expo/declarations/practices/cicd-app-react-native-expo/.declapract.integration.test.ts +16 -22
- package/dist/.test/assets/expo/declarations/practices/cicd-app-react-native-expo/__snapshots__/.declapract.integration.test.ts.snap +41 -28
- package/dist/.test/assets/expo/declarations/practices/cicd-app-react-native-expo/__snapshots__/package.json.declapract.integration.test.ts.snap +19 -0
- package/dist/.test/assets/expo/declarations/practices/cicd-app-react-native-expo/__snapshots__/provision.yml.declapract.integration.test.ts.snap +76 -0
- package/dist/.test/assets/expo/declarations/practices/cicd-app-react-native-expo/best-practice/.github/workflows/.deploy-expo.yml +11 -3
- package/dist/.test/assets/expo/declarations/practices/cicd-app-react-native-expo/best-practice/.github/workflows/provision.yml +33 -0
- package/dist/.test/assets/expo/declarations/practices/cicd-app-react-native-expo/best-practice/.github/workflows/provision.yml.declapract.ts +75 -0
- package/dist/.test/assets/expo/declarations/practices/cicd-app-react-native-expo/best-practice/package.json +10 -7
- package/dist/.test/assets/expo/declarations/practices/cicd-app-react-native-expo/package.json.declapract.integration.test.ts +149 -0
- package/dist/.test/assets/expo/declarations/practices/cicd-app-react-native-expo/provision.yml.declapract.integration.test.ts +131 -0
- package/dist/.test/assets/expo/declarations/practices/node/.npmrc.declapract.integration.test.ts +109 -11
- package/dist/.test/assets/expo/declarations/practices/node/.test/assets/repo-readme-without-title/declapract.declare.yml +4 -0
- package/dist/.test/assets/expo/declarations/practices/node/.test/assets/repo-readme-without-title/declapract.use.yml +8 -0
- package/dist/.test/assets/expo/declarations/practices/node/.test/assets/repo-readme-without-title/package.json +4 -0
- package/dist/.test/assets/expo/declarations/practices/node/.test/assets/repo-readme-without-title/readme.md +5 -0
- package/dist/.test/assets/expo/declarations/practices/node/__snapshots__/.npmrc.declapract.integration.test.ts.snap +29 -0
- package/dist/.test/assets/expo/declarations/practices/node/__snapshots__/readme.md.declapract.integration.test.ts.snap +21 -0
- package/dist/.test/assets/expo/declarations/practices/node/bad-practices/self-deps-not-link/.declapract.integration.test.ts +1 -1
- package/dist/.test/assets/expo/declarations/practices/node/bad-practices/self-deps-not-link/.test/assets/demo-repo-with-self-deps/declapract.declare.yml +3 -3
- package/dist/.test/assets/expo/declarations/practices/node/bad-practices/self-deps-not-link/package.json.declapract.ts +24 -12
- package/dist/.test/assets/expo/declarations/practices/node/best-practice/.npmrc.declapract.ts +85 -3
- package/dist/.test/assets/expo/declarations/practices/node/best-practice/readme.md.declapract.ts +20 -2
- package/dist/.test/assets/expo/declarations/practices/node/readme.md.declapract.integration.test.ts +77 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cache/.declapract.integration.test.ts +112 -16
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cache/.test/assets/repo-with-retired-cache-member/declapract.use.yml +6 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cache/.test/assets/repo-with-retired-cache-member/package.json +8 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cache/.test/assets/repo-with-retired-cache-member/src/utils/cache/getCacheDirectory.ts +10 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cache/.test/assets/repo-with-retired-cache-member-imported/declapract.use.yml +6 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cache/.test/assets/repo-with-retired-cache-member-imported/package.json +7 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cache/.test/assets/repo-with-retired-cache-member-imported/src/logic/getWaveReport.ts +5 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cache/__snapshots__/.declapract.integration.test.ts.snap +73 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cache/bad-practices/cache-directory-options/.declapract.readme.md +5 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cache/bad-practices/cache-directory-options/src/<star><star>/<star>.ts.declapract.ts +78 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cache/bad-practices/unfloored-cache-member/.declapract.readme.md +10 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cache/bad-practices/unfloored-cache-member/package.json.declapract.ts +151 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cache/bad-practices/unfloored-cache-member/src/<star><star>/<star>.ts.declapract.ts +39 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cache/best-practice/.declapract.readme.md +17 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cache/best-practice/package.json +3 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cicd-app-react-native-expo/.declapract.integration.test.ts +16 -22
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cicd-app-react-native-expo/__snapshots__/.declapract.integration.test.ts.snap +41 -28
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cicd-app-react-native-expo/__snapshots__/package.json.declapract.integration.test.ts.snap +19 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cicd-app-react-native-expo/__snapshots__/provision.yml.declapract.integration.test.ts.snap +76 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cicd-app-react-native-expo/best-practice/.github/workflows/.deploy-expo.yml +11 -3
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cicd-app-react-native-expo/best-practice/.github/workflows/provision.yml +33 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cicd-app-react-native-expo/best-practice/.github/workflows/provision.yml.declapract.ts +75 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cicd-app-react-native-expo/best-practice/package.json +10 -7
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cicd-app-react-native-expo/package.json.declapract.integration.test.ts +149 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cicd-app-react-native-expo/provision.yml.declapract.integration.test.ts +131 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cicd-common/.declapract.integration.test.ts +8 -2
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cicd-common/__snapshots__/.declapract.integration.test.ts.snap +70 -4
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cicd-common/__snapshots__/report-slow-tests.play.declapract.integration.test.ts.snap +28 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cicd-common/best-practice/.github/workflows/.declastruct.yml +8 -2
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cicd-common/best-practice/.github/workflows/.test.yml +70 -4
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cicd-common/best-practice/.github/workflows/report-slow-tests.sh +3 -3
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cicd-common/report-slow-tests.play.declapract.integration.test.ts +20 -3
- package/dist/.test/assets/expo-fullusecase/declarations/practices/conventional-commits/best-practice/commitlint.config.js +3 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/conventional-commits/best-practice/package.json +1 -1
- package/dist/.test/assets/expo-fullusecase/declarations/practices/conventional-commits/commitlint-body-max-line.declapract.integration.test.ts +19 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/directory-structure-src/.declapract.integration.test.ts +98 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/directory-structure-src/__snapshots__/.declapract.integration.test.ts.snap +37 -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 +50 -2
- package/dist/.test/assets/expo-fullusecase/declarations/practices/directory-structure-src/bad-practices/old-import-paths/src/<star><star>/<star>.ts.declapract.ts +50 -24
- package/dist/.test/assets/expo-fullusecase/declarations/practices/directory-structure-src/best-practice/src/contract/<star><star>/<star>.ts.declapract.ts +5 -2
- package/dist/.test/assets/expo-fullusecase/declarations/practices/directory-structure-src/best-practice/src/domain.objects/<star><star>/<star>.ts.declapract.ts +5 -2
- package/dist/.test/assets/expo-fullusecase/declarations/practices/directory-structure-src/best-practice/src/domain.operations/<star><star>/<star>.ts.declapract.ts +5 -2
- package/dist/.test/assets/expo-fullusecase/declarations/practices/domain/__snapshots__/contract.declapract.integration.test.ts.snap +47 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/domain/bad-practices/schema-over-contract/.declapract.readme.md +12 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/domain/bad-practices/schema-over-contract/src/contract/<star><star>/<star>.ts.declapract.ts +78 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/domain/best-practice/src/domain.objects/index.ts.declapract.ts +5 -2
- package/dist/.test/assets/expo-fullusecase/declarations/practices/domain/contract.declapract.integration.test.ts +61 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/format/.declapract.integration.test.ts +62 -66
- package/dist/.test/assets/expo-fullusecase/declarations/practices/format/__snapshots__/.declapract.integration.test.ts.snap +36 -10
- package/dist/.test/assets/expo-fullusecase/declarations/practices/format/bad-practices/terraform-formatter/package.json.declapract.ts +57 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/format/best-practice/package.json +6 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/format/best-practice/package.json.declapract.ts +7 -47
- package/dist/.test/assets/expo-fullusecase/declarations/practices/git/.gitattributes.declapract.integration.test.ts +105 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/git/.test/assets/repo-with-legacy-gitattributes/.gitattributes +6 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/git/.test/assets/repo-with-legacy-gitattributes/declapract.use.yml +7 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/git/.test/assets/repo-with-legacy-gitattributes/package.json +4 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/git/__snapshots__/.declapract.integration.test.ts.snap +6 -4
- package/dist/.test/assets/expo-fullusecase/declarations/practices/git/__snapshots__/.gitattributes.declapract.integration.test.ts.snap +24 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/git/best-practice/.gitattributes.declapract.ts +42 -116
- package/dist/.test/assets/expo-fullusecase/declarations/practices/husky/.test/assets/demo-repo-with-edited-timestamp-hook/.husky/check.timestamps.sh +11 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/husky/.test/assets/demo-repo-with-edited-timestamp-hook/declapract.declare.yml +4 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/husky/.test/assets/demo-repo-with-edited-timestamp-hook/declapract.use.yml +2 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/husky/.test/assets/demo-repo-with-edited-timestamp-hook/package.json +4 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/husky/__snapshots__/check.secrets.play.declapract.integration.test.ts.snap +8 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/husky/__snapshots__/check.timestamps.lock.play.declapract.integration.test.ts.snap +107 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/husky/__snapshots__/check.timestamps.play.declapract.integration.test.ts.snap +3 -2
- package/dist/.test/assets/expo-fullusecase/declarations/practices/husky/best-practice/.husky/check.nvm.sh +2 -1
- package/dist/.test/assets/expo-fullusecase/declarations/practices/husky/best-practice/.husky/check.secrets.sh +60 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/husky/best-practice/.husky/check.timestamps.lock.sh +51 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/husky/best-practice/.husky/check.timestamps.lock.sh.declapract.ts +36 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/husky/best-practice/.husky/check.timestamps.sh +38 -19
- package/dist/.test/assets/expo-fullusecase/declarations/practices/husky/best-practice/.husky/pre-commit +4 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/husky/check.secrets.play.declapract.integration.test.ts +120 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/husky/check.timestamps.lock.play.declapract.integration.test.ts +220 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/husky/check.timestamps.play.declapract.integration.test.ts +172 -24
- package/dist/.test/assets/expo-fullusecase/declarations/practices/husky/self-application.declapract.integration.test.ts +60 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/lint/.depcheckrc.yml.declapract.integration.test.ts +184 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/lint/.depcheckrc.yml.self-application.declapract.integration.test.ts +33 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/lint/.dpdmrc.yaml.declapract.integration.test.ts +106 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/lint/.test/assets/repo-depcheckrc-denylisted/.depcheckrc.yml +8 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/lint/.test/assets/repo-depcheckrc-denylisted/declapract.use.yml +6 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/lint/.test/assets/repo-depcheckrc-denylisted/package.json +4 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/lint/.test/assets/repo-depcheckrc-extant/.depcheckrc.yml +5 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/lint/.test/assets/repo-depcheckrc-extant/declapract.use.expo.yml +4 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/lint/.test/assets/repo-depcheckrc-extant/declapract.use.yml +4 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/lint/.test/assets/repo-depcheckrc-extant/package.json +4 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/lint/.test/assets/repo-dpdmrc-extant/.dpdmrc.yaml +4 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/lint/.test/assets/repo-dpdmrc-extant/declapract.use.yml +4 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/lint/.test/assets/repo-dpdmrc-extant/package.json +4 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/lint/__snapshots__/.depcheckrc.yml.declapract.integration.test.ts.snap +79 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/lint/__snapshots__/.dpdmrc.yaml.declapract.integration.test.ts.snap +18 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/lint/__snapshots__/depcheck-denylisted-ignores.declapract.integration.test.ts.snap +47 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/lint/__snapshots__/lint-cycles-command.declapract.integration.test.ts.snap +3 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/lint/best-practice/.depcheckrc.yml +14 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/lint/best-practice/.depcheckrc.yml.declapract.ts +158 -26
- package/dist/.test/assets/expo-fullusecase/declarations/practices/lint/best-practice/.dpdmrc.yaml +9 -5
- package/dist/.test/assets/expo-fullusecase/declarations/practices/lint/best-practice/.dpdmrc.yaml.declapract.ts +82 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/lint/best-practice/biome.jsonc +14 -11
- package/dist/.test/assets/expo-fullusecase/declarations/practices/lint/best-practice/package.json +4 -3
- package/dist/.test/assets/expo-fullusecase/declarations/practices/lint/biome.jsonc.declapract.integration.test.ts +148 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/lint/depcheck-denylisted-ignores.declapract.integration.test.ts +112 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/lint/lint-cycles-command.declapract.integration.test.ts +124 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/node/.npmrc.declapract.integration.test.ts +109 -11
- package/dist/.test/assets/expo-fullusecase/declarations/practices/node/.test/assets/repo-readme-without-title/declapract.declare.yml +4 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/node/.test/assets/repo-readme-without-title/declapract.use.yml +8 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/node/.test/assets/repo-readme-without-title/package.json +4 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/node/.test/assets/repo-readme-without-title/readme.md +5 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/node/__snapshots__/.npmrc.declapract.integration.test.ts.snap +29 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/node/__snapshots__/readme.md.declapract.integration.test.ts.snap +21 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/node/bad-practices/self-deps-not-link/.declapract.integration.test.ts +1 -1
- 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 +3 -3
- package/dist/.test/assets/expo-fullusecase/declarations/practices/node/bad-practices/self-deps-not-link/package.json.declapract.ts +24 -12
- package/dist/.test/assets/expo-fullusecase/declarations/practices/node/best-practice/.npmrc.declapract.ts +85 -3
- package/dist/.test/assets/expo-fullusecase/declarations/practices/node/best-practice/readme.md.declapract.ts +20 -2
- package/dist/.test/assets/expo-fullusecase/declarations/practices/node/readme.md.declapract.integration.test.ts +77 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/nonpublished-modules/bad-practices/ahbode-standard-lambda-handler/.declapract.integration.test.ts +95 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/nonpublished-modules/bad-practices/ahbode-standard-lambda-handler/.test/assets/demo-repo-with-ahbode-handler-test/declapract.use.yml +5 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/nonpublished-modules/bad-practices/ahbode-standard-lambda-handler/.test/assets/demo-repo-with-ahbode-handler-test/package.json +4 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/nonpublished-modules/bad-practices/ahbode-standard-lambda-handler/.test/assets/demo-repo-with-ahbode-handler-test/src/contract/handlers/getWidget.integration.test.ts +18 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/nonpublished-modules/bad-practices/ahbode-standard-lambda-handler/__snapshots__/.declapract.integration.test.ts.snap +45 -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 +16 -6
- package/dist/.test/assets/expo-fullusecase/declarations/practices/package-json-order/.declapract.integration.test.ts +100 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/package-json-order/.test/assets/demo-repo-with-unordered-keys/declapract.declare.yml +4 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/package-json-order/.test/assets/demo-repo-with-unordered-keys/declapract.use.yml +9 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/package-json-order/.test/assets/demo-repo-with-unordered-keys/package.json +19 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/package-json-order/__snapshots__/.declapract.integration.test.ts.snap +47 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/package-json-order/best-practice/package.json.declapract.ts +1 -2
- package/dist/.test/assets/expo-fullusecase/declarations/practices/pnpm/.test/assets/repo-stale-patch/declapract.use.yml +4 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/pnpm/.test/assets/repo-stale-patch/package.json +14 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/pnpm/.test/assets/repo-stale-patch/patches/rhachet-roles-ehmpathy@1.39.1.patch +6 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/pnpm/.test/assets/repo-stale-patch/patches/type-fns@1.21.3.patch +6 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/pnpm/.test/assets/repo-stale-patch/pnpm-lock.yaml +19 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/pnpm/__snapshots__/.declapract.integration.test.ts.snap +3 -1
- package/dist/.test/assets/expo-fullusecase/declarations/practices/pnpm/__snapshots__/stale-patched-dependency.declapract.integration.test.ts.snap +38 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/pnpm/bad-practices/husky-lockfile-check/.husky/check.lockfile.sh.declapract.ts +9 -2
- package/dist/.test/assets/expo-fullusecase/declarations/practices/pnpm/bad-practices/override-undercuts-dependency/.declapract.readme.md +5 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/pnpm/bad-practices/override-undercuts-dependency/package.json.declapract.ts +67 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/pnpm/bad-practices/stale-patched-dependency/.declapract.readme.md +22 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/pnpm/bad-practices/stale-patched-dependency/package.json.declapract.ts +74 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/pnpm/bad-practices/stale-patched-dependency/patches/<star>.patch.declapract.ts +41 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/pnpm/best-practice/package.json +5 -1
- package/dist/.test/assets/expo-fullusecase/declarations/practices/pnpm/best-practice/package.json.declapract.ts +7 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/pnpm/stale-patched-dependency.declapract.integration.test.ts +82 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/provision-github/.test/assets/demo-repo-implicit-privacy/declapract.declare.yml +4 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/provision-github/.test/assets/demo-repo-implicit-privacy/declapract.use.yml +5 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/provision-github/.test/assets/demo-repo-implicit-privacy/package.json +13 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/provision-github/__snapshots__/implicit-package-privacy.declapract.integration.test.ts.snap +36 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/provision-github/bad-practices/implicit-package-privacy/package.json.declapract.ts +73 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/provision-github/best-practice/.declapract.readme.md +12 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/provision-github/best-practice/provision/github.repo/resources.ts +18 -33
- package/dist/.test/assets/expo-fullusecase/declarations/practices/provision-github/implicit-package-privacy.declapract.integration.test.ts +68 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/rhachet/.declapract.integration.test.ts +3 -3
- package/dist/.test/assets/expo-fullusecase/declarations/practices/rhachet/.test/assets/demo-repo-with-consumer-boot/.agent/repo=.this/role=any/boot.yml +2 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/rhachet/.test/assets/demo-repo-with-consumer-boot/declapract.declare.yml +3 -3
- package/dist/.test/assets/expo-fullusecase/declarations/practices/rhachet/.test/assets/repo-keyrack-extant/.agent/keyrack.yml +9 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/rhachet/.test/assets/repo-keyrack-extant/declapract.use.node.yml +4 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/rhachet/.test/assets/repo-keyrack-extant/declapract.use.yml +4 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/rhachet/.test/assets/repo-keyrack-extant/package.json +4 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/rhachet/.test/assets/repo-self-linked/declapract.use.yml +4 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/rhachet/.test/assets/repo-self-linked/package.json +22 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/rhachet/__snapshots__/.declapract.integration.test.ts.snap +6 -5
- package/dist/.test/assets/expo-fullusecase/declarations/practices/rhachet/__snapshots__/boot-yml-findsert.declapract.integration.test.ts.snap +6 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/rhachet/__snapshots__/keyrack-yml-findsert.declapract.integration.test.ts.snap +28 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/rhachet/__snapshots__/self-link-build-order.declapract.integration.test.ts.snap +81 -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 +3 -3
- package/dist/.test/assets/expo-fullusecase/declarations/practices/rhachet/best-practice/.agent/keyrack.yml.declapract.ts +142 -2
- package/dist/.test/assets/expo-fullusecase/declarations/practices/rhachet/best-practice/.agent/repo=.this/role=any/boot.yml +13 -37
- package/dist/.test/assets/expo-fullusecase/declarations/practices/rhachet/best-practice/.agent/repo=.this/role=any/boot.yml.declapract.ts +91 -67
- package/dist/.test/assets/expo-fullusecase/declarations/practices/rhachet/best-practice/.gitignore.declapract.ts +21 -4
- package/dist/.test/assets/expo-fullusecase/declarations/practices/rhachet/best-practice/package.json +6 -5
- package/dist/.test/assets/expo-fullusecase/declarations/practices/rhachet/best-practice/package.json.declapract.ts +49 -1
- package/dist/.test/assets/expo-fullusecase/declarations/practices/rhachet/boot-refs-glossary.declapract.integration.test.ts +3 -1
- package/dist/.test/assets/expo-fullusecase/declarations/practices/rhachet/boot-yml-findsert.declapract.integration.test.ts +11 -7
- package/dist/.test/assets/expo-fullusecase/declarations/practices/rhachet/keyrack-yml-findsert.declapract.integration.test.ts +105 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/rhachet/self-link-build-order.declapract.integration.test.ts +88 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-any/.test/assets/repo-old-acceptance-utils/blackbox/lambdas/consumeSESEmailEventFromSNS.acceptance.test.ts +23 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-any/.test/assets/repo-old-acceptance-utils/declapract.use.yml +9 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-any/.test/assets/repo-old-acceptance-utils/package.json +4 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-any/.test/assets/repo-old-acceptance-utils-2/blackbox/lambdas/addDecoratedImage.acceptance.test.ts +19 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-any/.test/assets/repo-old-acceptance-utils-2/declapract.use.yml +9 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-any/.test/assets/repo-old-acceptance-utils-2/package.json +4 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-any/.test/assets/repo-old-acceptance-utils-3/blackbox/lambdas/addDecoratedImage.acceptance.test.ts +19 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-any/.test/assets/repo-old-acceptance-utils-3/declapract.use.yml +9 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-any/.test/assets/repo-old-acceptance-utils-3/package.json +4 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-any/__snapshots__/old-acceptance-test-utils.declapract.integration.test.ts.snap +162 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-any/__snapshots__/test-kind-seam.declapract.integration.test.ts.snap +9 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-any/autoprune-hooks.declapract.integration.test.ts +9 -2
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-any/bad-practices/dev-tool-in-dependencies/.declapract.integration.test.ts +69 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-any/bad-practices/dev-tool-in-dependencies/.declapract.readme.md +19 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-any/bad-practices/dev-tool-in-dependencies/.test/assets/demo-repo-with-stale-test-fns-dep/declapract.use.yml +3 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-any/bad-practices/dev-tool-in-dependencies/.test/assets/demo-repo-with-stale-test-fns-dep/package.json +11 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-any/bad-practices/dev-tool-in-dependencies/__snapshots__/.declapract.integration.test.ts.snap +43 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-any/bad-practices/dev-tool-in-dependencies/package.json.declapract.ts +81 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-any/bad-practices/old-acceptance-dir-location/.declapract.integration.test.ts +25 -5
- 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.use.yml +3 -2
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-any/bad-practices/old-acceptance-test-utils/blackbox/lambdas/<star>.ts.declapract.ts +30 -25
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-any/bad-practices/old-acceptance-test-utils-2/blackbox/lambdas/<star>.ts.declapract.ts +10 -5
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-any/bad-practices/old-acceptance-test-utils-3/blackbox/lambdas/<star>.ts.declapract.ts +10 -5
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-any/best-practice/package.json +2 -1
- package/dist/{practices/tests-node → .test/assets/expo-fullusecase/declarations/practices/tests-any}/best-practice/src/.test/useWakeOfLivedb.ts +44 -16
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-any/best-practice/src/<star><star>/<star>.integration.test.ts.declapract.ts +7 -2
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-any/best-practice/src/<star><star>/<star>.test.ts.declapract.ts +6 -2
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-any/build-ifstale.declapract.integration.test.ts +124 -0
- package/dist/{practices/tests-node → .test/assets/expo-fullusecase/declarations/practices/tests-any}/livedb-wake-branches.declapract.integration.test.ts +105 -17
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-any/old-acceptance-test-utils.declapract.integration.test.ts +122 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-any/test-kind-seam.declapract.integration.test.ts +87 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-expo/.declapract.integration.test.ts +60 -7
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-expo/__snapshots__/.declapract.integration.test.ts.snap +117 -9
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-expo/__snapshots__/package.json.declapract.integration.test.ts.snap +5 -5
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-expo/autoprune-subpath-types.declapract.integration.test.ts +108 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-expo/best-practice/jest.acceptance.config.ts +14 -3
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-expo/best-practice/jest.acceptance.prepare.ts +31 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-expo/best-practice/jest.integration.config.ts +14 -3
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-expo/best-practice/jest.integration.prepare.ts +29 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-expo/best-practice/jest.unit.config.ts +10 -1
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-expo/best-practice/package.json.declapract.ts +17 -2
- package/dist/.test/assets/expo-fullusecase/declarations/practices/tests-expo/best-practice/src/.test/assets/test-fns.autoprune.d.ts +14 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/typescript-any/__snapshots__/tool-swap-removals.declapract.integration.test.ts.snap +57 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/typescript-any/bad-practices/legacy-tsconfig-lib/.declapract.readme.md +7 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/typescript-any/bad-practices/legacy-tsconfig-lib/tsconfig.json.declapract.ts +105 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/typescript-any/bad-practices/relative-imports/src/<star><star>/<star>.ts.declapract.ts +28 -11
- package/dist/.test/assets/expo-fullusecase/declarations/practices/typescript-any/bad-practices/ts-node-beside-esbuild-register/.declapract.readme.md +6 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/typescript-any/bad-practices/ts-node-beside-esbuild-register/package.json.declapract.ts +127 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/typescript-any/tool-swap-removals.declapract.integration.test.ts +96 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/typescript-expo/__snapshots__/metro.config.js.declapract.integration.test.ts.snap +60 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/typescript-expo/__snapshots__/package.json.declapract.integration.test.ts.snap +1 -1
- package/dist/.test/assets/expo-fullusecase/declarations/practices/typescript-expo/best-practice/metro.config.js +40 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/typescript-expo/best-practice/metro.config.js.declapract.ts +101 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/typescript-expo/best-practice/package.json +1 -1
- package/dist/.test/assets/expo-fullusecase/declarations/practices/typescript-expo/best-practice/package.json.declapract.ts +1 -1
- package/dist/.test/assets/expo-fullusecase/declarations/practices/typescript-expo/metro.config.js.declapract.integration.test.ts +111 -0
- package/dist/.test/assets/expo-fullusecase/declarations/practices/typescript-expo/package.json.declapract.integration.test.ts +17 -0
- package/dist/.test/assets/expo-migration/declarations/practices/cicd-app-react-native-expo/.declapract.integration.test.ts +16 -22
- package/dist/.test/assets/expo-migration/declarations/practices/cicd-app-react-native-expo/__snapshots__/.declapract.integration.test.ts.snap +41 -28
- package/dist/.test/assets/expo-migration/declarations/practices/cicd-app-react-native-expo/__snapshots__/package.json.declapract.integration.test.ts.snap +19 -0
- package/dist/.test/assets/expo-migration/declarations/practices/cicd-app-react-native-expo/__snapshots__/provision.yml.declapract.integration.test.ts.snap +76 -0
- package/dist/.test/assets/expo-migration/declarations/practices/cicd-app-react-native-expo/best-practice/.github/workflows/.deploy-expo.yml +11 -3
- package/dist/.test/assets/expo-migration/declarations/practices/cicd-app-react-native-expo/best-practice/.github/workflows/provision.yml +33 -0
- package/dist/.test/assets/expo-migration/declarations/practices/cicd-app-react-native-expo/best-practice/.github/workflows/provision.yml.declapract.ts +75 -0
- package/dist/.test/assets/expo-migration/declarations/practices/cicd-app-react-native-expo/best-practice/package.json +10 -7
- package/dist/.test/assets/expo-migration/declarations/practices/cicd-app-react-native-expo/package.json.declapract.integration.test.ts +149 -0
- package/dist/.test/assets/expo-migration/declarations/practices/cicd-app-react-native-expo/provision.yml.declapract.integration.test.ts +131 -0
- package/dist/.test/assets/expo-migration/declarations/practices/directory-structure-src/.declapract.integration.test.ts +98 -0
- package/dist/.test/assets/expo-migration/declarations/practices/directory-structure-src/__snapshots__/.declapract.integration.test.ts.snap +37 -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 +50 -2
- package/dist/.test/assets/expo-migration/declarations/practices/directory-structure-src/bad-practices/old-import-paths/src/<star><star>/<star>.ts.declapract.ts +50 -24
- package/dist/.test/assets/expo-migration/declarations/practices/directory-structure-src/best-practice/src/contract/<star><star>/<star>.ts.declapract.ts +5 -2
- package/dist/.test/assets/expo-migration/declarations/practices/directory-structure-src/best-practice/src/domain.objects/<star><star>/<star>.ts.declapract.ts +5 -2
- package/dist/.test/assets/expo-migration/declarations/practices/directory-structure-src/best-practice/src/domain.operations/<star><star>/<star>.ts.declapract.ts +5 -2
- package/dist/.test/assets/expo-migration/declarations/practices/domain/__snapshots__/contract.declapract.integration.test.ts.snap +47 -0
- package/dist/.test/assets/expo-migration/declarations/practices/domain/bad-practices/schema-over-contract/.declapract.readme.md +12 -0
- package/dist/.test/assets/expo-migration/declarations/practices/domain/bad-practices/schema-over-contract/src/contract/<star><star>/<star>.ts.declapract.ts +78 -0
- package/dist/.test/assets/expo-migration/declarations/practices/domain/best-practice/src/domain.objects/index.ts.declapract.ts +5 -2
- package/dist/.test/assets/expo-migration/declarations/practices/domain/contract.declapract.integration.test.ts +61 -0
- package/dist/.test/assets/expo-migration/declarations/practices/git/.gitattributes.declapract.integration.test.ts +105 -0
- package/dist/.test/assets/expo-migration/declarations/practices/git/.test/assets/repo-with-legacy-gitattributes/.gitattributes +6 -0
- package/dist/.test/assets/expo-migration/declarations/practices/git/.test/assets/repo-with-legacy-gitattributes/declapract.use.yml +7 -0
- package/dist/.test/assets/expo-migration/declarations/practices/git/.test/assets/repo-with-legacy-gitattributes/package.json +4 -0
- package/dist/.test/assets/expo-migration/declarations/practices/git/__snapshots__/.declapract.integration.test.ts.snap +6 -4
- package/dist/.test/assets/expo-migration/declarations/practices/git/__snapshots__/.gitattributes.declapract.integration.test.ts.snap +24 -0
- package/dist/.test/assets/expo-migration/declarations/practices/git/best-practice/.gitattributes.declapract.ts +42 -116
- package/dist/.test/assets/expo-migration/declarations/practices/node/.npmrc.declapract.integration.test.ts +109 -11
- package/dist/.test/assets/expo-migration/declarations/practices/node/.test/assets/repo-readme-without-title/declapract.declare.yml +4 -0
- package/dist/.test/assets/expo-migration/declarations/practices/node/.test/assets/repo-readme-without-title/declapract.use.yml +8 -0
- package/dist/.test/assets/expo-migration/declarations/practices/node/.test/assets/repo-readme-without-title/package.json +4 -0
- package/dist/.test/assets/expo-migration/declarations/practices/node/.test/assets/repo-readme-without-title/readme.md +5 -0
- package/dist/.test/assets/expo-migration/declarations/practices/node/__snapshots__/.npmrc.declapract.integration.test.ts.snap +29 -0
- package/dist/.test/assets/expo-migration/declarations/practices/node/__snapshots__/readme.md.declapract.integration.test.ts.snap +21 -0
- package/dist/.test/assets/expo-migration/declarations/practices/node/bad-practices/self-deps-not-link/.declapract.integration.test.ts +1 -1
- 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 +3 -3
- package/dist/.test/assets/expo-migration/declarations/practices/node/bad-practices/self-deps-not-link/package.json.declapract.ts +24 -12
- package/dist/.test/assets/expo-migration/declarations/practices/node/best-practice/.npmrc.declapract.ts +85 -3
- package/dist/.test/assets/expo-migration/declarations/practices/node/best-practice/readme.md.declapract.ts +20 -2
- package/dist/.test/assets/expo-migration/declarations/practices/node/readme.md.declapract.integration.test.ts +77 -0
- package/dist/.test/assets/expo-migration/declarations/practices/pnpm/.test/assets/repo-stale-patch/declapract.use.yml +4 -0
- package/dist/.test/assets/expo-migration/declarations/practices/pnpm/.test/assets/repo-stale-patch/package.json +14 -0
- package/dist/.test/assets/expo-migration/declarations/practices/pnpm/.test/assets/repo-stale-patch/patches/rhachet-roles-ehmpathy@1.39.1.patch +6 -0
- package/dist/.test/assets/expo-migration/declarations/practices/pnpm/.test/assets/repo-stale-patch/patches/type-fns@1.21.3.patch +6 -0
- package/dist/.test/assets/expo-migration/declarations/practices/pnpm/.test/assets/repo-stale-patch/pnpm-lock.yaml +19 -0
- package/dist/.test/assets/expo-migration/declarations/practices/pnpm/__snapshots__/.declapract.integration.test.ts.snap +3 -1
- package/dist/.test/assets/expo-migration/declarations/practices/pnpm/__snapshots__/stale-patched-dependency.declapract.integration.test.ts.snap +38 -0
- package/dist/.test/assets/expo-migration/declarations/practices/pnpm/bad-practices/husky-lockfile-check/.husky/check.lockfile.sh.declapract.ts +9 -2
- package/dist/.test/assets/expo-migration/declarations/practices/pnpm/bad-practices/override-undercuts-dependency/.declapract.readme.md +5 -0
- package/dist/.test/assets/expo-migration/declarations/practices/pnpm/bad-practices/override-undercuts-dependency/package.json.declapract.ts +67 -0
- package/dist/.test/assets/expo-migration/declarations/practices/pnpm/bad-practices/stale-patched-dependency/.declapract.readme.md +22 -0
- package/dist/.test/assets/expo-migration/declarations/practices/pnpm/bad-practices/stale-patched-dependency/package.json.declapract.ts +74 -0
- package/dist/.test/assets/expo-migration/declarations/practices/pnpm/bad-practices/stale-patched-dependency/patches/<star>.patch.declapract.ts +41 -0
- package/dist/.test/assets/expo-migration/declarations/practices/pnpm/best-practice/package.json +5 -1
- package/dist/.test/assets/expo-migration/declarations/practices/pnpm/best-practice/package.json.declapract.ts +7 -0
- package/dist/.test/assets/expo-migration/declarations/practices/pnpm/stale-patched-dependency.declapract.integration.test.ts +82 -0
- package/dist/.test/assets/expo-migration/declarations/practices/rhachet/.declapract.integration.test.ts +3 -3
- package/dist/.test/assets/expo-migration/declarations/practices/rhachet/.test/assets/demo-repo-with-consumer-boot/.agent/repo=.this/role=any/boot.yml +2 -0
- package/dist/.test/assets/expo-migration/declarations/practices/rhachet/.test/assets/demo-repo-with-consumer-boot/declapract.declare.yml +3 -3
- package/dist/.test/assets/expo-migration/declarations/practices/rhachet/.test/assets/repo-keyrack-extant/.agent/keyrack.yml +9 -0
- package/dist/.test/assets/expo-migration/declarations/practices/rhachet/.test/assets/repo-keyrack-extant/declapract.use.node.yml +4 -0
- package/dist/.test/assets/expo-migration/declarations/practices/rhachet/.test/assets/repo-keyrack-extant/declapract.use.yml +4 -0
- package/dist/.test/assets/expo-migration/declarations/practices/rhachet/.test/assets/repo-keyrack-extant/package.json +4 -0
- package/dist/.test/assets/expo-migration/declarations/practices/rhachet/.test/assets/repo-self-linked/declapract.use.yml +4 -0
- package/dist/.test/assets/expo-migration/declarations/practices/rhachet/.test/assets/repo-self-linked/package.json +22 -0
- package/dist/.test/assets/expo-migration/declarations/practices/rhachet/__snapshots__/.declapract.integration.test.ts.snap +6 -5
- package/dist/.test/assets/expo-migration/declarations/practices/rhachet/__snapshots__/boot-yml-findsert.declapract.integration.test.ts.snap +6 -0
- package/dist/.test/assets/expo-migration/declarations/practices/rhachet/__snapshots__/keyrack-yml-findsert.declapract.integration.test.ts.snap +28 -0
- package/dist/.test/assets/expo-migration/declarations/practices/rhachet/__snapshots__/self-link-build-order.declapract.integration.test.ts.snap +81 -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 +3 -3
- package/dist/.test/assets/expo-migration/declarations/practices/rhachet/best-practice/.agent/keyrack.yml.declapract.ts +142 -2
- package/dist/.test/assets/expo-migration/declarations/practices/rhachet/best-practice/.agent/repo=.this/role=any/boot.yml +13 -37
- package/dist/.test/assets/expo-migration/declarations/practices/rhachet/best-practice/.agent/repo=.this/role=any/boot.yml.declapract.ts +91 -67
- package/dist/.test/assets/expo-migration/declarations/practices/rhachet/best-practice/.gitignore.declapract.ts +21 -4
- package/dist/.test/assets/expo-migration/declarations/practices/rhachet/best-practice/package.json +6 -5
- package/dist/.test/assets/expo-migration/declarations/practices/rhachet/best-practice/package.json.declapract.ts +49 -1
- package/dist/.test/assets/expo-migration/declarations/practices/rhachet/boot-refs-glossary.declapract.integration.test.ts +3 -1
- package/dist/.test/assets/expo-migration/declarations/practices/rhachet/boot-yml-findsert.declapract.integration.test.ts +11 -7
- package/dist/.test/assets/expo-migration/declarations/practices/rhachet/keyrack-yml-findsert.declapract.integration.test.ts +105 -0
- package/dist/.test/assets/expo-migration/declarations/practices/rhachet/self-link-build-order.declapract.integration.test.ts +88 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/.test/assets/repo-old-acceptance-utils/blackbox/lambdas/consumeSESEmailEventFromSNS.acceptance.test.ts +23 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/.test/assets/repo-old-acceptance-utils/declapract.use.yml +9 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/.test/assets/repo-old-acceptance-utils/package.json +4 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/.test/assets/repo-old-acceptance-utils-2/blackbox/lambdas/addDecoratedImage.acceptance.test.ts +19 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/.test/assets/repo-old-acceptance-utils-2/declapract.use.yml +9 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/.test/assets/repo-old-acceptance-utils-2/package.json +4 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/.test/assets/repo-old-acceptance-utils-3/blackbox/lambdas/addDecoratedImage.acceptance.test.ts +19 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/.test/assets/repo-old-acceptance-utils-3/declapract.use.yml +9 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/.test/assets/repo-old-acceptance-utils-3/package.json +4 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/__snapshots__/livedb-wake-branches.declapract.integration.test.ts.snap +6 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/__snapshots__/old-acceptance-test-utils.declapract.integration.test.ts.snap +162 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/__snapshots__/test-kind-seam.declapract.integration.test.ts.snap +9 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/autoprune-hooks.declapract.integration.test.ts +9 -2
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/bad-practices/dev-tool-in-dependencies/.declapract.integration.test.ts +69 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/bad-practices/dev-tool-in-dependencies/.declapract.readme.md +19 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/bad-practices/dev-tool-in-dependencies/.test/assets/demo-repo-with-stale-test-fns-dep/declapract.use.yml +3 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/bad-practices/dev-tool-in-dependencies/.test/assets/demo-repo-with-stale-test-fns-dep/package.json +11 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/bad-practices/dev-tool-in-dependencies/__snapshots__/.declapract.integration.test.ts.snap +43 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/bad-practices/dev-tool-in-dependencies/package.json.declapract.ts +81 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/bad-practices/old-acceptance-dir-location/.declapract.integration.test.ts +25 -5
- 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 +3 -2
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/bad-practices/old-acceptance-test-utils/blackbox/lambdas/<star>.ts.declapract.ts +30 -25
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/bad-practices/old-acceptance-test-utils-2/blackbox/lambdas/<star>.ts.declapract.ts +10 -5
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/bad-practices/old-acceptance-test-utils-3/blackbox/lambdas/<star>.ts.declapract.ts +10 -5
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/best-practice/package.json +2 -1
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/best-practice/src/.test/useWakeOfLivedb.ts +209 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/best-practice/src/<star><star>/<star>.integration.test.ts.declapract.ts +7 -2
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/best-practice/src/<star><star>/<star>.test.ts.declapract.ts +6 -2
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/build-ifstale.declapract.integration.test.ts +124 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/livedb-wake-branches.declapract.integration.test.ts +315 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/old-acceptance-test-utils.declapract.integration.test.ts +122 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-any/test-kind-seam.declapract.integration.test.ts +87 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-expo/.declapract.integration.test.ts +60 -7
- package/dist/.test/assets/expo-migration/declarations/practices/tests-expo/__snapshots__/.declapract.integration.test.ts.snap +117 -9
- package/dist/.test/assets/expo-migration/declarations/practices/tests-expo/__snapshots__/package.json.declapract.integration.test.ts.snap +5 -5
- package/dist/.test/assets/expo-migration/declarations/practices/tests-expo/autoprune-subpath-types.declapract.integration.test.ts +108 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-expo/best-practice/jest.acceptance.config.ts +14 -3
- package/dist/.test/assets/expo-migration/declarations/practices/tests-expo/best-practice/jest.acceptance.prepare.ts +31 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-expo/best-practice/jest.integration.config.ts +14 -3
- package/dist/.test/assets/expo-migration/declarations/practices/tests-expo/best-practice/jest.integration.prepare.ts +29 -0
- package/dist/.test/assets/expo-migration/declarations/practices/tests-expo/best-practice/jest.unit.config.ts +10 -1
- package/dist/.test/assets/expo-migration/declarations/practices/tests-expo/best-practice/package.json.declapract.ts +17 -2
- package/dist/.test/assets/expo-migration/declarations/practices/tests-expo/best-practice/src/.test/assets/test-fns.autoprune.d.ts +14 -0
- package/dist/.test/assets/expo-migration/declarations/practices/typescript-any/__snapshots__/tool-swap-removals.declapract.integration.test.ts.snap +57 -0
- package/dist/.test/assets/expo-migration/declarations/practices/typescript-any/bad-practices/legacy-tsconfig-lib/.declapract.readme.md +7 -0
- package/dist/.test/assets/expo-migration/declarations/practices/typescript-any/bad-practices/legacy-tsconfig-lib/tsconfig.json.declapract.ts +105 -0
- package/dist/.test/assets/expo-migration/declarations/practices/typescript-any/bad-practices/relative-imports/src/<star><star>/<star>.ts.declapract.ts +28 -11
- package/dist/.test/assets/expo-migration/declarations/practices/typescript-any/bad-practices/ts-node-beside-esbuild-register/.declapract.readme.md +6 -0
- package/dist/.test/assets/expo-migration/declarations/practices/typescript-any/bad-practices/ts-node-beside-esbuild-register/package.json.declapract.ts +127 -0
- package/dist/.test/assets/expo-migration/declarations/practices/typescript-any/tool-swap-removals.declapract.integration.test.ts +96 -0
- package/dist/.test/assets/expo-migration/declarations/practices/typescript-expo/__snapshots__/metro.config.js.declapract.integration.test.ts.snap +60 -0
- package/dist/.test/assets/expo-migration/declarations/practices/typescript-expo/__snapshots__/package.json.declapract.integration.test.ts.snap +1 -1
- package/dist/.test/assets/expo-migration/declarations/practices/typescript-expo/best-practice/metro.config.js +40 -0
- package/dist/.test/assets/expo-migration/declarations/practices/typescript-expo/best-practice/metro.config.js.declapract.ts +101 -0
- package/dist/.test/assets/expo-migration/declarations/practices/typescript-expo/best-practice/package.json +1 -1
- package/dist/.test/assets/expo-migration/declarations/practices/typescript-expo/best-practice/package.json.declapract.ts +1 -1
- package/dist/.test/assets/expo-migration/declarations/practices/typescript-expo/metro.config.js.declapract.integration.test.ts +111 -0
- package/dist/.test/assets/expo-migration/declarations/practices/typescript-expo/package.json.declapract.integration.test.ts +17 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/.test/assets/repo-old-acceptance-utils/blackbox/lambdas/consumeSESEmailEventFromSNS.acceptance.test.ts +23 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/.test/assets/repo-old-acceptance-utils/declapract.use.yml +9 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/.test/assets/repo-old-acceptance-utils/package.json +4 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/.test/assets/repo-old-acceptance-utils-2/blackbox/lambdas/addDecoratedImage.acceptance.test.ts +19 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/.test/assets/repo-old-acceptance-utils-2/declapract.use.yml +9 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/.test/assets/repo-old-acceptance-utils-2/package.json +4 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/.test/assets/repo-old-acceptance-utils-3/blackbox/lambdas/addDecoratedImage.acceptance.test.ts +19 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/.test/assets/repo-old-acceptance-utils-3/declapract.use.yml +9 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/.test/assets/repo-old-acceptance-utils-3/package.json +4 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/__snapshots__/livedb-wake-branches.declapract.integration.test.ts.snap +6 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/__snapshots__/old-acceptance-test-utils.declapract.integration.test.ts.snap +162 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/__snapshots__/test-kind-seam.declapract.integration.test.ts.snap +9 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/autoprune-hooks.declapract.integration.test.ts +9 -2
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/bad-practices/dev-tool-in-dependencies/.declapract.integration.test.ts +69 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/bad-practices/dev-tool-in-dependencies/.declapract.readme.md +19 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/bad-practices/dev-tool-in-dependencies/.test/assets/demo-repo-with-stale-test-fns-dep/declapract.use.yml +3 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/bad-practices/dev-tool-in-dependencies/.test/assets/demo-repo-with-stale-test-fns-dep/package.json +11 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/bad-practices/dev-tool-in-dependencies/__snapshots__/.declapract.integration.test.ts.snap +43 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/bad-practices/dev-tool-in-dependencies/package.json.declapract.ts +81 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/bad-practices/old-acceptance-dir-location/.declapract.integration.test.ts +25 -5
- 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 +3 -2
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/bad-practices/old-acceptance-test-utils/blackbox/lambdas/<star>.ts.declapract.ts +30 -25
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/bad-practices/old-acceptance-test-utils-2/blackbox/lambdas/<star>.ts.declapract.ts +10 -5
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/bad-practices/old-acceptance-test-utils-3/blackbox/lambdas/<star>.ts.declapract.ts +10 -5
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/best-practice/package.json +2 -1
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/best-practice/src/.test/useWakeOfLivedb.ts +209 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/best-practice/src/<star><star>/<star>.integration.test.ts.declapract.ts +7 -2
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/best-practice/src/<star><star>/<star>.test.ts.declapract.ts +6 -2
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/build-ifstale.declapract.integration.test.ts +124 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/livedb-wake-branches.declapract.integration.test.ts +315 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/old-acceptance-test-utils.declapract.integration.test.ts +122 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-any/test-kind-seam.declapract.integration.test.ts +87 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-expo/.declapract.integration.test.ts +60 -7
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-expo/__snapshots__/.declapract.integration.test.ts.snap +117 -9
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-expo/__snapshots__/package.json.declapract.integration.test.ts.snap +5 -5
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-expo/autoprune-subpath-types.declapract.integration.test.ts +108 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-expo/best-practice/jest.acceptance.config.ts +14 -3
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-expo/best-practice/jest.acceptance.prepare.ts +31 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-expo/best-practice/jest.integration.config.ts +14 -3
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-expo/best-practice/jest.integration.prepare.ts +29 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-expo/best-practice/jest.unit.config.ts +10 -1
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-expo/best-practice/package.json.declapract.ts +17 -2
- package/dist/.test/assets/expo-toolchain/declarations/practices/tests-expo/best-practice/src/.test/assets/test-fns.autoprune.d.ts +14 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/typescript-any/__snapshots__/tool-swap-removals.declapract.integration.test.ts.snap +57 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/typescript-any/bad-practices/legacy-tsconfig-lib/.declapract.readme.md +7 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/typescript-any/bad-practices/legacy-tsconfig-lib/tsconfig.json.declapract.ts +105 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/typescript-any/bad-practices/relative-imports/src/<star><star>/<star>.ts.declapract.ts +28 -11
- package/dist/.test/assets/expo-toolchain/declarations/practices/typescript-any/bad-practices/ts-node-beside-esbuild-register/.declapract.readme.md +6 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/typescript-any/bad-practices/ts-node-beside-esbuild-register/package.json.declapract.ts +127 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/typescript-any/tool-swap-removals.declapract.integration.test.ts +96 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/typescript-expo/__snapshots__/metro.config.js.declapract.integration.test.ts.snap +60 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/typescript-expo/__snapshots__/package.json.declapract.integration.test.ts.snap +1 -1
- package/dist/.test/assets/expo-toolchain/declarations/practices/typescript-expo/best-practice/metro.config.js +40 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/typescript-expo/best-practice/metro.config.js.declapract.ts +101 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/typescript-expo/best-practice/package.json +1 -1
- package/dist/.test/assets/expo-toolchain/declarations/practices/typescript-expo/best-practice/package.json.declapract.ts +1 -1
- package/dist/.test/assets/expo-toolchain/declarations/practices/typescript-expo/metro.config.js.declapract.integration.test.ts +111 -0
- package/dist/.test/assets/expo-toolchain/declarations/practices/typescript-expo/package.json.declapract.integration.test.ts +17 -0
- package/dist/.test/assets/format/declarations/practices/format/.declapract.integration.test.ts +62 -66
- package/dist/.test/assets/format/declarations/practices/format/__snapshots__/.declapract.integration.test.ts.snap +36 -10
- package/dist/.test/assets/format/declarations/practices/format/bad-practices/terraform-formatter/package.json.declapract.ts +57 -0
- package/dist/.test/assets/format/declarations/practices/format/best-practice/package.json +6 -0
- package/dist/.test/assets/format/declarations/practices/format/best-practice/package.json.declapract.ts +7 -47
- package/dist/.test/assets/format/declarations/practices/terraform-common/best-practice/.terraform-version +1 -1
- package/dist/.test/assets/format/declarations/useCases.yml +3 -4
- package/dist/.test/assets/format/repo-with-terraform/declapract.use.yml +4 -4
- package/dist/.test/assets/format/repo-with-terraform/package.json +8 -1
- package/dist/.test/assets/format/repo-without-terraform/declapract.use.yml +3 -4
- package/dist/.test/assets/lint/declarations/declapract.declare.yml +4 -0
- package/dist/.test/assets/lint/declarations/practices/lint/.depcheckrc.yml.declapract.integration.test.ts +184 -0
- package/dist/.test/assets/lint/declarations/practices/lint/.depcheckrc.yml.self-application.declapract.integration.test.ts +33 -0
- package/dist/.test/assets/lint/declarations/practices/lint/.dpdmrc.yaml.declapract.integration.test.ts +106 -0
- package/dist/.test/assets/lint/declarations/practices/lint/.test/assets/repo-depcheckrc-denylisted/.depcheckrc.yml +8 -0
- package/dist/.test/assets/lint/declarations/practices/lint/.test/assets/repo-depcheckrc-denylisted/declapract.use.yml +6 -0
- package/dist/.test/assets/lint/declarations/practices/lint/.test/assets/repo-depcheckrc-denylisted/package.json +4 -0
- package/dist/.test/assets/lint/declarations/practices/lint/.test/assets/repo-depcheckrc-extant/.depcheckrc.yml +5 -0
- package/dist/.test/assets/lint/declarations/practices/lint/.test/assets/repo-depcheckrc-extant/declapract.use.expo.yml +4 -0
- package/dist/.test/assets/lint/declarations/practices/lint/.test/assets/repo-depcheckrc-extant/declapract.use.yml +4 -0
- package/dist/.test/assets/lint/declarations/practices/lint/.test/assets/repo-depcheckrc-extant/package.json +4 -0
- package/dist/.test/assets/lint/declarations/practices/lint/.test/assets/repo-dpdmrc-extant/.dpdmrc.yaml +4 -0
- package/dist/.test/assets/lint/declarations/practices/lint/.test/assets/repo-dpdmrc-extant/declapract.use.yml +4 -0
- package/dist/.test/assets/lint/declarations/practices/lint/.test/assets/repo-dpdmrc-extant/package.json +4 -0
- package/dist/.test/assets/lint/declarations/practices/lint/__snapshots__/.depcheckrc.yml.declapract.integration.test.ts.snap +79 -0
- package/dist/.test/assets/lint/declarations/practices/lint/__snapshots__/.dpdmrc.yaml.declapract.integration.test.ts.snap +18 -0
- package/dist/.test/assets/lint/declarations/practices/lint/__snapshots__/depcheck-denylisted-ignores.declapract.integration.test.ts.snap +47 -0
- package/dist/.test/assets/lint/declarations/practices/lint/__snapshots__/dpdmrc-exclude-policy.declapract.integration.test.ts.snap +3 -0
- package/dist/.test/assets/lint/declarations/practices/lint/__snapshots__/lint-cycles-command.declapract.integration.test.ts.snap +3 -0
- package/dist/.test/assets/lint/declarations/practices/lint/bad-practices/biome-json-extension/biome.json.declapract.ts +7 -0
- package/dist/.test/assets/lint/declarations/practices/lint/bad-practices/depcheck-denylisted-ignores/.declapract.readme.md +8 -0
- package/dist/.test/assets/lint/declarations/practices/lint/bad-practices/depcheck-denylisted-ignores/.depcheckrc.yml.declapract.ts +64 -0
- package/dist/.test/assets/{expo-fullusecase/declarations/practices/lint-react-native/best-practice → lint/declarations/practices/lint/bad-practices/eslint}/.eslintrc.js +29 -19
- package/dist/.test/assets/lint/declarations/practices/lint/bad-practices/eslint/package.json.declapract.ts +51 -0
- package/dist/.test/assets/lint/declarations/practices/lint/bad-practices/tslint/package.json.declapract.ts +22 -0
- package/dist/.test/assets/lint/declarations/practices/lint/best-practice/.declapract.readme.md +5 -0
- package/dist/.test/assets/lint/declarations/practices/lint/best-practice/.depcheckrc.yml +39 -0
- package/dist/.test/assets/lint/declarations/practices/lint/best-practice/.depcheckrc.yml.declapract.ts +174 -0
- package/dist/.test/assets/lint/declarations/practices/lint/best-practice/.dpdmrc.yaml +17 -0
- package/dist/.test/assets/lint/declarations/practices/lint/best-practice/.dpdmrc.yaml.declapract.ts +82 -0
- package/dist/.test/assets/lint/declarations/practices/lint/best-practice/biome.jsonc +106 -0
- package/dist/.test/assets/lint/declarations/practices/lint/best-practice/package.json +18 -0
- package/dist/.test/assets/lint/declarations/practices/lint/best-practice/package.json.declapract.ts +4 -0
- package/dist/.test/assets/lint/declarations/practices/lint/biome.jsonc.declapract.integration.test.ts +148 -0
- package/dist/.test/assets/lint/declarations/practices/lint/depcheck-denylisted-ignores.declapract.integration.test.ts +112 -0
- package/dist/.test/assets/lint/declarations/practices/lint/dpdmrc-exclude-policy.declapract.integration.test.ts +50 -0
- package/dist/.test/assets/lint/declarations/practices/lint/lint-cycles-command.declapract.integration.test.ts +124 -0
- package/dist/.test/assets/lint/declarations/practices/tests-expo/.declapract.integration.test.ts +191 -0
- package/dist/.test/assets/lint/declarations/practices/tests-expo/.test/assets/repo-expo-greenfield/declapract.use.yml +6 -0
- package/dist/.test/assets/lint/declarations/practices/tests-expo/.test/assets/repo-expo-greenfield/package.json +8 -0
- package/dist/.test/assets/lint/declarations/practices/tests-expo/__snapshots__/.declapract.integration.test.ts.snap +229 -0
- package/dist/.test/assets/lint/declarations/practices/tests-expo/__snapshots__/package.json.declapract.integration.test.ts.snap +60 -0
- package/dist/.test/assets/lint/declarations/practices/tests-expo/autoprune-subpath-types.declapract.integration.test.ts +108 -0
- package/dist/.test/assets/lint/declarations/practices/tests-expo/bad-practices/inline-jest-config/.declapract.readme.md +22 -0
- package/dist/.test/assets/lint/declarations/practices/tests-expo/bad-practices/inline-jest-config/package.json.declapract.ts +36 -0
- package/dist/.test/assets/lint/declarations/practices/tests-expo/best-practice/jest.acceptance.config.ts +59 -0
- package/dist/.test/assets/lint/declarations/practices/tests-expo/best-practice/jest.acceptance.env.ts +15 -0
- package/dist/.test/assets/lint/declarations/practices/tests-expo/best-practice/jest.acceptance.prepare.ts +31 -0
- package/dist/.test/assets/lint/declarations/practices/tests-expo/best-practice/jest.config.ts +7 -0
- package/dist/.test/assets/lint/declarations/practices/tests-expo/best-practice/jest.integration.config.ts +58 -0
- package/dist/.test/assets/lint/declarations/practices/tests-expo/best-practice/jest.integration.env.ts +26 -0
- package/dist/.test/assets/lint/declarations/practices/tests-expo/best-practice/jest.integration.prepare.ts +29 -0
- package/dist/.test/assets/lint/declarations/practices/tests-expo/best-practice/jest.unit.config.ts +67 -0
- package/dist/.test/assets/lint/declarations/practices/tests-expo/best-practice/jest.unit.env.ts +23 -0
- package/dist/.test/assets/lint/declarations/practices/tests-expo/best-practice/package.json.declapract.ts +208 -0
- package/dist/.test/assets/lint/declarations/practices/tests-expo/best-practice/src/.test/assets/test-fns.autoprune.d.ts +14 -0
- package/dist/.test/assets/lint/declarations/practices/tests-expo/package.json.declapract.integration.test.ts +94 -0
- package/dist/.test/assets/lint/declarations/useCases.yml +11 -0
- package/dist/.test/assets/logs/declarations/declapract.declare.yml +4 -0
- package/dist/.test/assets/logs/declarations/practices/logs/.declapract.integration.test.ts +103 -0
- package/dist/.test/assets/logs/declarations/practices/logs/__snapshots__/.declapract.integration.test.ts.snap +33 -0
- package/dist/.test/assets/logs/declarations/practices/logs/__snapshots__/src-markers.declapract.integration.test.ts.snap +61 -0
- package/dist/.test/assets/logs/declarations/practices/logs/bad-practices/leveled-term/.test/assets/demo-repo-with-leveled-term/declapract.declare.yml +4 -0
- package/dist/.test/assets/logs/declarations/practices/logs/bad-practices/leveled-term/.test/assets/demo-repo-with-leveled-term/declapract.use.yml +2 -0
- package/dist/.test/assets/logs/declarations/practices/logs/bad-practices/leveled-term/.test/assets/demo-repo-with-leveled-term/package.json +12 -0
- package/dist/.test/assets/logs/declarations/practices/logs/bad-practices/leveled-term/package.json.declapract.ts +62 -0
- package/dist/.test/assets/logs/declarations/practices/logs/bad-practices/leveled-term/src/<star><star>/<star>.ts.declapract.ts +43 -0
- package/dist/.test/assets/logs/declarations/practices/logs/bad-practices/simple-log-methods/package.json +5 -0
- package/dist/.test/assets/logs/declarations/practices/logs/bad-practices/simple-log-methods/package.json.declapract.ts +18 -0
- package/dist/.test/assets/logs/declarations/practices/logs/bad-practices/simple-log-methods/src/<star><star>/<star>.ts.declapract.ts +46 -0
- package/dist/.test/assets/logs/declarations/practices/logs/bad-practices/vendored-log-trail/.declapract.readme.md +6 -0
- package/dist/.test/assets/logs/declarations/practices/logs/bad-practices/vendored-log-trail/.test/assets/demo-repo-with-log-forks/declapract.use.yml +2 -0
- package/dist/.test/assets/logs/declarations/practices/logs/bad-practices/vendored-log-trail/.test/assets/demo-repo-with-log-forks/package.json +7 -0
- package/dist/.test/assets/logs/declarations/practices/logs/bad-practices/vendored-log-trail/.test/assets/demo-repo-with-log-forks/src/domain.operations/getWaveReport.ts +3 -0
- package/dist/.test/assets/logs/declarations/practices/logs/bad-practices/vendored-log-trail/.test/assets/demo-repo-with-log-forks/src/utils/withInputOutputTracing.ts +18 -0
- package/dist/.test/assets/logs/declarations/practices/logs/bad-practices/vendored-log-trail/src/<star><star>/<star>.ts.declapract.ts +69 -0
- package/dist/.test/assets/logs/declarations/practices/logs/best-practice/package.json +6 -0
- package/dist/.test/assets/logs/declarations/practices/logs/best-practice/package.json.declapract.ts +3 -0
- package/dist/.test/assets/logs/declarations/practices/logs/best-practice/src/utils/logger.ts +6 -0
- package/dist/.test/assets/logs/declarations/practices/logs/src-markers.declapract.integration.test.ts +96 -0
- package/dist/.test/assets/logs/declarations/useCases.yml +5 -0
- package/dist/.test/assets/node-service/declarations/practices/node-service/.declapract.integration.test.ts +93 -0
- package/dist/.test/assets/node-service/declarations/practices/node-service/__snapshots__/.declapract.integration.test.ts.snap +44 -0
- package/dist/.test/assets/node-service/declarations/practices/node-service/bad-practices/adhoc-lambda-clients/.declapract.integration.test.ts +101 -0
- package/dist/.test/assets/node-service/declarations/practices/node-service/bad-practices/adhoc-lambda-clients/.declapract.readme.md +26 -0
- package/dist/.test/assets/node-service/declarations/practices/node-service/bad-practices/adhoc-lambda-clients/.test/assets/demo-repo-with-adhoc-lambda-clients/declapract.use.yml +4 -0
- package/dist/.test/assets/node-service/declarations/practices/node-service/bad-practices/adhoc-lambda-clients/.test/assets/demo-repo-with-adhoc-lambda-clients/package.json +7 -0
- package/dist/.test/assets/node-service/declarations/practices/node-service/bad-practices/adhoc-lambda-clients/.test/assets/demo-repo-with-adhoc-lambda-clients/src/access/sdks/svcJobs.ts +10 -0
- package/dist/.test/assets/node-service/declarations/practices/node-service/bad-practices/adhoc-lambda-clients/.test/assets/demo-repo-with-adhoc-lambda-clients/src/access/sdks/svcUsers.ts +11 -0
- package/dist/.test/assets/node-service/declarations/practices/node-service/bad-practices/adhoc-lambda-clients/.test/assets/demo-repo-with-adhoc-lambda-clients/src/data/clients/svcQuotes.ts +10 -0
- package/dist/.test/assets/node-service/declarations/practices/node-service/bad-practices/adhoc-lambda-clients/__snapshots__/.declapract.integration.test.ts.snap +59 -0
- package/dist/.test/assets/node-service/declarations/practices/node-service/bad-practices/adhoc-lambda-clients/src/access/sdks/svc<star>.ts.declapract.ts +28 -0
- package/dist/.test/assets/node-service/declarations/practices/node-service/bad-practices/adhoc-lambda-clients/src/data/clients/svc<star>.ts.declapract.ts +28 -0
- package/dist/.test/assets/node-service/declarations/practices/node-service/bad-practices/sdk-aws-lambda-pre-v07/.declapract.integration.test.ts +123 -0
- package/dist/.test/assets/node-service/declarations/practices/node-service/bad-practices/sdk-aws-lambda-pre-v07/.declapract.readme.md +31 -0
- package/dist/.test/assets/node-service/declarations/practices/node-service/bad-practices/sdk-aws-lambda-pre-v07/.test/assets/demo-repo-on-sdk-aws-lambda-0.6/declapract.use.yml +4 -0
- package/dist/.test/assets/node-service/declarations/practices/node-service/bad-practices/sdk-aws-lambda-pre-v07/.test/assets/demo-repo-on-sdk-aws-lambda-0.6/package.json +12 -0
- package/dist/.test/assets/node-service/declarations/practices/node-service/bad-practices/sdk-aws-lambda-pre-v07/.test/assets/demo-repo-on-sdk-aws-lambda-0.6/patches/sdk-aws-lambda@0.6.2.patch +6 -0
- package/dist/.test/assets/node-service/declarations/practices/node-service/bad-practices/sdk-aws-lambda-pre-v07/.test/assets/demo-repo-on-sdk-aws-lambda-0.6/pnpm-workspace.yaml +5 -0
- package/dist/.test/assets/node-service/declarations/practices/node-service/bad-practices/sdk-aws-lambda-pre-v07/.test/assets/demo-repo-on-sdk-aws-lambda-0.6/src/contract/handlers/getWidget.ts +16 -0
- package/dist/.test/assets/node-service/declarations/practices/node-service/bad-practices/sdk-aws-lambda-pre-v07/__snapshots__/.declapract.integration.test.ts.snap +85 -0
- package/dist/.test/assets/node-service/declarations/practices/node-service/bad-practices/sdk-aws-lambda-pre-v07/package.json.declapract.ts +84 -0
- package/dist/.test/assets/node-service/declarations/practices/node-service/bad-practices/sdk-aws-lambda-pre-v07/patches/sdk-aws-lambda@<star>.patch.declapract.ts +30 -0
- package/dist/.test/assets/node-service/declarations/practices/node-service/bad-practices/sdk-aws-lambda-pre-v07/pnpm-workspace.yaml.declapract.ts +61 -0
- package/dist/.test/assets/node-service/declarations/practices/node-service/bad-practices/sdk-aws-lambda-pre-v07/src/<star><star>/<star>.ts.declapract.ts +202 -0
- package/dist/.test/assets/node-service/declarations/practices/node-service/bad-practices/simple-lambda-client/.declapract.integration.test.ts +99 -0
- package/dist/.test/assets/node-service/declarations/practices/node-service/bad-practices/simple-lambda-client/.declapract.readme.md +14 -12
- package/dist/.test/assets/node-service/declarations/practices/node-service/bad-practices/simple-lambda-client/.test/assets/demo-repo-with-simple-lambda-client/declapract.use.yml +5 -0
- package/dist/.test/assets/node-service/declarations/practices/node-service/bad-practices/simple-lambda-client/.test/assets/demo-repo-with-simple-lambda-client/package.json +4 -0
- package/dist/.test/assets/node-service/declarations/practices/node-service/bad-practices/simple-lambda-client/.test/assets/demo-repo-with-simple-lambda-client/src/domain.operations/getWidgetPrice.ts +17 -0
- package/dist/.test/assets/node-service/declarations/practices/node-service/bad-practices/simple-lambda-client/__snapshots__/.declapract.integration.test.ts.snap +45 -0
- package/dist/.test/assets/node-service/declarations/practices/node-service/bad-practices/simple-lambda-client/package.json.declapract.ts +1 -2
- package/dist/.test/assets/node-service/declarations/practices/node-service/bad-practices/simple-lambda-client/src/<star><star>/<star>.ts.declapract.ts +73 -19
- package/dist/.test/assets/node-service/declarations/practices/node-service/bad-practices/simple-lambda-handlers/.declapract.integration.test.ts +8 -5
- package/dist/.test/assets/node-service/declarations/practices/node-service/bad-practices/simple-lambda-handlers/.declapract.readme.md +59 -14
- package/dist/.test/assets/node-service/declarations/practices/node-service/bad-practices/simple-lambda-handlers/__snapshots__/.declapract.integration.test.ts.snap +6 -5
- package/dist/.test/assets/node-service/declarations/practices/node-service/bad-practices/simple-lambda-handlers/package.json.declapract.ts +1 -2
- package/dist/.test/assets/node-service/declarations/practices/node-service/bad-practices/simple-lambda-handlers/src/<star><star>/<star>.ts.declapract.ts +22 -18
- package/dist/.test/assets/node-service/declarations/practices/node-service/best-practice/package.json +1 -1
- package/dist/.test/assets/node-service/declarations/practices/node-service/best-practice/src/access/sdks/sdkAwsLambdaAskAncient.ts +39 -0
- package/dist/.test/assets/node-service/declarations/practices/node-service/withLambdaClientGenMarker.ts +55 -0
- package/dist/.test/assets/nonpublished-modules/declarations/declapract.declare.yml +4 -0
- package/dist/.test/assets/nonpublished-modules/declarations/practices/nonpublished-modules/.declapract.readme.md +5 -0
- package/dist/.test/assets/nonpublished-modules/declarations/practices/nonpublished-modules/bad-practices/ahbode-standard-lambda-handler/.declapract.integration.test.ts +95 -0
- package/dist/.test/assets/nonpublished-modules/declarations/practices/nonpublished-modules/bad-practices/ahbode-standard-lambda-handler/.declapract.readme.md +1 -0
- package/dist/.test/assets/nonpublished-modules/declarations/practices/nonpublished-modules/bad-practices/ahbode-standard-lambda-handler/.test/assets/demo-repo-with-ahbode-handler-test/declapract.use.yml +5 -0
- package/dist/.test/assets/nonpublished-modules/declarations/practices/nonpublished-modules/bad-practices/ahbode-standard-lambda-handler/.test/assets/demo-repo-with-ahbode-handler-test/package.json +4 -0
- package/dist/.test/assets/nonpublished-modules/declarations/practices/nonpublished-modules/bad-practices/ahbode-standard-lambda-handler/.test/assets/demo-repo-with-ahbode-handler-test/src/contract/handlers/getWidget.integration.test.ts +18 -0
- package/dist/.test/assets/nonpublished-modules/declarations/practices/nonpublished-modules/bad-practices/ahbode-standard-lambda-handler/__snapshots__/.declapract.integration.test.ts.snap +45 -0
- package/dist/.test/assets/nonpublished-modules/declarations/practices/nonpublished-modules/bad-practices/ahbode-standard-lambda-handler/src/contract/handlers/<star>.integration.test.ts +1 -0
- package/dist/.test/assets/nonpublished-modules/declarations/practices/nonpublished-modules/bad-practices/ahbode-standard-lambda-handler/src/contract/handlers/<star>.integration.test.ts.declapract.ts +25 -0
- package/dist/.test/assets/nonpublished-modules/declarations/practices/nonpublished-modules/bad-practices/ahbode-standard-lambda-handler/src/contract/handlers/<star>.ts +1 -0
- package/dist/.test/assets/nonpublished-modules/declarations/practices/nonpublished-modules/bad-practices/ahbode-standard-lambda-handler/src/contract/handlers/<star>.ts.declapract.ts +13 -0
- package/dist/.test/assets/nonpublished-modules/declarations/practices/nonpublished-modules/bad-practices/deep-omit/.declapract.readme.md +1 -0
- package/dist/.test/assets/nonpublished-modules/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/nonpublished-modules/declarations/practices/nonpublished-modules/bad-practices/deep-omit/src/data/dao/<star><star>/<star>.integration.test.ts +1 -0
- package/dist/.test/assets/nonpublished-modules/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/nonpublished-modules/declarations/practices/nonpublished-modules/bad-practices/simple-dynamodb-client/.declapract.readme.md +1 -0
- package/dist/.test/assets/nonpublished-modules/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/nonpublished-modules/declarations/useCases.yml +5 -0
- package/dist/.test/assets/persist-with-rds-connection-in-input/declarations/declapract.declare.yml +4 -0
- package/dist/.test/assets/persist-with-rds-connection-in-input/declarations/practices/persist-with-rds/bad-practices/with-connection-in-input/.declapract.readme.md +10 -0
- package/dist/.test/assets/persist-with-rds-connection-in-input/declarations/practices/persist-with-rds/bad-practices/with-connection-in-input/.test/assets/demo-repo-with-connection-in-input/declapract.use.yml +2 -0
- package/dist/.test/assets/persist-with-rds-connection-in-input/declarations/practices/persist-with-rds/bad-practices/with-connection-in-input/.test/assets/demo-repo-with-connection-in-input/package.json +4 -0
- package/dist/.test/assets/persist-with-rds-connection-in-input/declarations/practices/persist-with-rds/bad-practices/with-connection-in-input/.test/assets/demo-repo-with-connection-in-input/src/domain.operations/findSurferById.ts +9 -0
- package/dist/.test/assets/persist-with-rds-connection-in-input/declarations/practices/persist-with-rds/bad-practices/with-connection-in-input/.test/assets/demo-repo-with-connection-in-input/src/utils/database/withDatabaseConnection.ts +10 -0
- package/dist/.test/assets/persist-with-rds-connection-in-input/declarations/practices/persist-with-rds/bad-practices/with-connection-in-input/src/<star><star>/<star>.ts.declapract.ts +55 -0
- package/dist/.test/assets/persist-with-rds-connection-in-input/declarations/useCases.yml +5 -0
- package/dist/.test/assets/pnpm/declarations/practices/pnpm/.test/assets/repo-stale-patch/declapract.use.yml +4 -0
- package/dist/.test/assets/pnpm/declarations/practices/pnpm/.test/assets/repo-stale-patch/package.json +14 -0
- package/dist/.test/assets/pnpm/declarations/practices/pnpm/.test/assets/repo-stale-patch/patches/rhachet-roles-ehmpathy@1.39.1.patch +6 -0
- package/dist/.test/assets/pnpm/declarations/practices/pnpm/.test/assets/repo-stale-patch/patches/type-fns@1.21.3.patch +6 -0
- package/dist/.test/assets/pnpm/declarations/practices/pnpm/.test/assets/repo-stale-patch/pnpm-lock.yaml +19 -0
- package/dist/.test/assets/pnpm/declarations/practices/pnpm/__snapshots__/.declapract.integration.test.ts.snap +3 -1
- package/dist/.test/assets/pnpm/declarations/practices/pnpm/__snapshots__/stale-patched-dependency.declapract.integration.test.ts.snap +38 -0
- package/dist/.test/assets/pnpm/declarations/practices/pnpm/bad-practices/husky-lockfile-check/.husky/check.lockfile.sh.declapract.ts +9 -2
- package/dist/.test/assets/pnpm/declarations/practices/pnpm/bad-practices/override-undercuts-dependency/.declapract.readme.md +5 -0
- package/dist/.test/assets/pnpm/declarations/practices/pnpm/bad-practices/override-undercuts-dependency/package.json.declapract.ts +67 -0
- package/dist/.test/assets/pnpm/declarations/practices/pnpm/bad-practices/stale-patched-dependency/.declapract.readme.md +22 -0
- package/dist/.test/assets/pnpm/declarations/practices/pnpm/bad-practices/stale-patched-dependency/package.json.declapract.ts +74 -0
- package/dist/.test/assets/pnpm/declarations/practices/pnpm/bad-practices/stale-patched-dependency/patches/<star>.patch.declapract.ts +41 -0
- package/dist/.test/assets/pnpm/declarations/practices/pnpm/best-practice/package.json +5 -1
- package/dist/.test/assets/pnpm/declarations/practices/pnpm/best-practice/package.json.declapract.ts +7 -0
- package/dist/.test/assets/pnpm/declarations/practices/pnpm/stale-patched-dependency.declapract.integration.test.ts +82 -0
- package/dist/.test/assets/rhachet/declarations/declapract.declare.yml +4 -0
- package/dist/.test/assets/rhachet/declarations/practices/environments-aws/best-practice/.declapract.readme.md +5 -0
- package/dist/.test/assets/rhachet/declarations/practices/rhachet/.declapract.integration.test.ts +98 -0
- package/dist/.test/assets/rhachet/declarations/practices/rhachet/.test/assets/demo-repo-with-consumer-boot/.agent/repo=.this/role=any/boot.yml +9 -0
- package/dist/.test/assets/rhachet/declarations/practices/rhachet/.test/assets/demo-repo-with-consumer-boot/declapract.declare.yml +4 -0
- package/dist/.test/assets/rhachet/declarations/practices/rhachet/.test/assets/demo-repo-with-consumer-boot/declapract.use.yml +2 -0
- package/dist/.test/assets/rhachet/declarations/practices/rhachet/.test/assets/demo-repo-with-consumer-boot/package.json +4 -0
- package/dist/.test/assets/rhachet/declarations/practices/rhachet/.test/assets/repo-keyrack-extant/.agent/keyrack.yml +9 -0
- package/dist/.test/assets/rhachet/declarations/practices/rhachet/.test/assets/repo-keyrack-extant/declapract.use.node.yml +4 -0
- package/dist/.test/assets/rhachet/declarations/practices/rhachet/.test/assets/repo-keyrack-extant/declapract.use.yml +4 -0
- package/dist/.test/assets/rhachet/declarations/practices/rhachet/.test/assets/repo-keyrack-extant/package.json +4 -0
- package/dist/.test/assets/rhachet/declarations/practices/rhachet/.test/assets/repo-self-linked/declapract.use.yml +4 -0
- package/dist/.test/assets/rhachet/declarations/practices/rhachet/.test/assets/repo-self-linked/package.json +22 -0
- package/dist/.test/assets/rhachet/declarations/practices/rhachet/__snapshots__/.declapract.integration.test.ts.snap +46 -0
- package/dist/.test/assets/rhachet/declarations/practices/rhachet/__snapshots__/boot-refs-glossary.declapract.integration.test.ts.snap +6 -0
- package/dist/.test/assets/rhachet/declarations/practices/rhachet/__snapshots__/boot-yml-findsert.declapract.integration.test.ts.snap +33 -0
- package/dist/.test/assets/rhachet/declarations/practices/rhachet/__snapshots__/keyrack-yml-findsert.declapract.integration.test.ts.snap +28 -0
- package/dist/.test/assets/rhachet/declarations/practices/rhachet/__snapshots__/self-link-build-order.declapract.integration.test.ts.snap +81 -0
- package/dist/.test/assets/rhachet/declarations/practices/rhachet/bad-practices/deprecated-use-file/.declapract.readme.md +11 -0
- package/dist/.test/assets/rhachet/declarations/practices/rhachet/bad-practices/deprecated-use-file/rhachet.use.ts.declapract.ts +12 -0
- package/dist/.test/assets/rhachet/declarations/practices/rhachet/bad-practices/prod-deps/.declapract.readme.md +59 -0
- package/dist/.test/assets/rhachet/declarations/practices/rhachet/bad-practices/prod-deps/.test/assets/demo-repo-with-rhachet-prod-deps/declapract.declare.yml +4 -0
- package/dist/.test/assets/rhachet/declarations/practices/rhachet/bad-practices/prod-deps/.test/assets/demo-repo-with-rhachet-prod-deps/declapract.use.yml +2 -0
- package/dist/.test/assets/rhachet/declarations/practices/rhachet/bad-practices/prod-deps/.test/assets/demo-repo-with-rhachet-prod-deps/package.json +12 -0
- package/dist/.test/assets/rhachet/declarations/practices/rhachet/bad-practices/prod-deps/package.json +5 -0
- package/dist/.test/assets/rhachet/declarations/practices/rhachet/bad-practices/prod-deps/package.json.declapract.ts +88 -0
- package/dist/.test/assets/rhachet/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/rhachet/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/rhachet/declarations/practices/rhachet/bad-practices/review-peer-artifacts/.declapract.readme.md +12 -0
- package/dist/.test/assets/rhachet/declarations/practices/rhachet/best-practice/.agent/keyrack.yml.declapract.ts +143 -0
- package/dist/.test/assets/rhachet/declarations/practices/rhachet/best-practice/.agent/repo=.this/role=any/boot.yml +22 -0
- package/dist/.test/assets/rhachet/declarations/practices/rhachet/best-practice/.agent/repo=.this/role=any/boot.yml.declapract.ts +189 -0
- package/dist/.test/assets/rhachet/declarations/practices/rhachet/best-practice/.declapract.readme.md +32 -0
- package/dist/.test/assets/rhachet/declarations/practices/rhachet/best-practice/.gitignore.declapract.ts +94 -0
- package/dist/.test/assets/rhachet/declarations/practices/rhachet/best-practice/package.json +19 -0
- package/dist/.test/assets/rhachet/declarations/practices/rhachet/best-practice/package.json.declapract.ts +51 -0
- package/dist/.test/assets/rhachet/declarations/practices/rhachet/boot-refs-glossary.declapract.integration.test.ts +91 -0
- package/dist/.test/assets/rhachet/declarations/practices/rhachet/boot-yml-findsert.declapract.integration.test.ts +149 -0
- package/dist/.test/assets/rhachet/declarations/practices/rhachet/keyrack-yml-findsert.declapract.integration.test.ts +105 -0
- package/dist/.test/assets/rhachet/declarations/practices/rhachet/self-link-build-order.declapract.integration.test.ts +88 -0
- package/dist/.test/assets/rhachet/declarations/useCases.yml +11 -0
- package/dist/.test/assets/runtime-schemas/declarations/practices/runtime-schemas/bad-practices/joi/.declapract.integration.test.ts +68 -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 +2 -1
- package/dist/.test/assets/runtime-schemas/declarations/practices/runtime-schemas/bad-practices/joi/.test/assets/demo-repo-with-joi-deps/declapract.use.yml +4 -0
- package/dist/.test/assets/runtime-schemas/declarations/practices/runtime-schemas/bad-practices/joi/.test/assets/demo-repo-with-joi-deps/package.json +14 -0
- package/dist/.test/assets/runtime-schemas/declarations/practices/runtime-schemas/bad-practices/joi/__snapshots__/.declapract.integration.test.ts.snap +43 -3
- package/dist/.test/assets/runtime-schemas/declarations/practices/runtime-schemas/bad-practices/joi/package.json.declapract.ts +27 -5
- package/dist/.test/assets/runtime-schemas/declarations/practices/runtime-schemas/bad-practices/joi/src/<star><star>/<star>.ts.declapract.ts +52 -4
- package/dist/.test/assets/runtime-schemas/declarations/practices/runtime-schemas/best-practice/package.json +1 -1
- package/dist/.test/assets/runtime-schemas/declarations/practices/runtime-schemas/best-practice/package.json.declapract.ts +123 -2
- package/dist/.test/assets/tests-any-only/declarations/declapract.declare.yml +6 -0
- package/dist/.test/assets/tests-any-only/declarations/practices/tests-any/.test/assets/repo-old-acceptance-utils/blackbox/lambdas/consumeSESEmailEventFromSNS.acceptance.test.ts +23 -0
- package/dist/.test/assets/tests-any-only/declarations/practices/tests-any/.test/assets/repo-old-acceptance-utils/declapract.use.yml +9 -0
- package/dist/.test/assets/tests-any-only/declarations/practices/tests-any/.test/assets/repo-old-acceptance-utils/package.json +4 -0
- package/dist/.test/assets/tests-any-only/declarations/practices/tests-any/.test/assets/repo-old-acceptance-utils-2/blackbox/lambdas/addDecoratedImage.acceptance.test.ts +19 -0
- package/dist/.test/assets/tests-any-only/declarations/practices/tests-any/.test/assets/repo-old-acceptance-utils-2/declapract.use.yml +9 -0
- package/dist/.test/assets/tests-any-only/declarations/practices/tests-any/.test/assets/repo-old-acceptance-utils-2/package.json +4 -0
- package/dist/.test/assets/tests-any-only/declarations/practices/tests-any/.test/assets/repo-old-acceptance-utils-3/blackbox/lambdas/addDecoratedImage.acceptance.test.ts +19 -0
- package/dist/.test/assets/tests-any-only/declarations/practices/tests-any/.test/assets/repo-old-acceptance-utils-3/declapract.use.yml +9 -0
- package/dist/.test/assets/tests-any-only/declarations/practices/tests-any/.test/assets/repo-old-acceptance-utils-3/package.json +4 -0
- package/dist/.test/assets/tests-any-only/declarations/practices/tests-any/__snapshots__/changedsince-origin-main.declapract.integration.test.ts.snap +8 -0
- package/dist/.test/assets/tests-any-only/declarations/practices/tests-any/__snapshots__/livedb-wake-branches.declapract.integration.test.ts.snap +6 -0
- package/dist/.test/assets/tests-any-only/declarations/practices/tests-any/__snapshots__/old-acceptance-test-utils.declapract.integration.test.ts.snap +162 -0
- package/dist/.test/assets/tests-any-only/declarations/practices/tests-any/__snapshots__/test-kind-seam.declapract.integration.test.ts.snap +9 -0
- package/dist/.test/assets/tests-any-only/declarations/practices/tests-any/autoprune-hooks.declapract.integration.test.ts +111 -0
- package/dist/.test/assets/tests-any-only/declarations/practices/tests-any/bad-practices/dev-tool-in-dependencies/.declapract.integration.test.ts +69 -0
- package/dist/.test/assets/tests-any-only/declarations/practices/tests-any/bad-practices/dev-tool-in-dependencies/.declapract.readme.md +19 -0
- package/dist/.test/assets/tests-any-only/declarations/practices/tests-any/bad-practices/dev-tool-in-dependencies/.test/assets/demo-repo-with-stale-test-fns-dep/declapract.use.yml +3 -0
- package/dist/.test/assets/tests-any-only/declarations/practices/tests-any/bad-practices/dev-tool-in-dependencies/.test/assets/demo-repo-with-stale-test-fns-dep/package.json +11 -0
- package/dist/.test/assets/tests-any-only/declarations/practices/tests-any/bad-practices/dev-tool-in-dependencies/__snapshots__/.declapract.integration.test.ts.snap +43 -0
- package/dist/.test/assets/tests-any-only/declarations/practices/tests-any/bad-practices/dev-tool-in-dependencies/package.json.declapract.ts +81 -0
- package/dist/.test/assets/tests-any-only/declarations/practices/tests-any/bad-practices/javascript-config-files/.declapract.readme.md +1 -0
- package/dist/.test/assets/tests-any-only/declarations/practices/tests-any/bad-practices/javascript-config-files/jest.<star>.js.declapract.ts +17 -0
- package/dist/.test/assets/tests-any-only/declarations/practices/tests-any/bad-practices/mocks/.declapract.readme.md +8 -0
- package/dist/.test/assets/tests-any-only/declarations/practices/tests-any/bad-practices/mocks/<star><star>/__mock__/<star>.js +3 -0
- package/dist/.test/assets/tests-any-only/declarations/practices/tests-any/bad-practices/mocks/<star><star>/__mock__/<star>.ts +3 -0
- package/dist/.test/assets/tests-any-only/declarations/practices/tests-any/bad-practices/old-acceptance-dir-location/.declapract.integration.test.ts +83 -0
- package/dist/.test/assets/tests-any-only/declarations/practices/tests-any/bad-practices/old-acceptance-dir-location/.declapract.readme.md +22 -0
- package/dist/.test/assets/tests-any-only/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/tests-any-only/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/tests-any-only/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/tests-any-only/declarations/practices/tests-any/bad-practices/old-acceptance-dir-location/.test/assets/demo-repo-with-accept-blackbox-dir/declapract.use.yml +6 -0
- package/dist/.test/assets/tests-any-only/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/tests-any-only/declarations/practices/tests-any/bad-practices/old-acceptance-dir-location/accept.blackbox/<star><star>/<star>.declapract.ts +19 -0
- package/dist/.test/assets/tests-any-only/declarations/practices/tests-any/bad-practices/old-acceptance-dir-location/acceptance/<star><star>/<star>.declapract.ts +19 -0
- package/dist/.test/assets/tests-any-only/declarations/practices/tests-any/bad-practices/old-acceptance-import-paths/.declapract.readme.md +31 -0
- package/dist/.test/assets/tests-any-only/declarations/practices/tests-any/bad-practices/old-acceptance-import-paths/<star><star>/<star>.ts.declapract.ts +25 -0
- package/dist/.test/assets/tests-any-only/declarations/practices/tests-any/bad-practices/old-acceptance-test-utils/blackbox/_utils/getDataFromLastOpenBracketAtStartOfLine.ts.declapract.ts +3 -0
- package/dist/.test/assets/tests-any-only/declarations/practices/tests-any/bad-practices/old-acceptance-test-utils/blackbox/_utils/invokeLambda.ts.declapract.ts +3 -0
- package/dist/.test/assets/tests-any-only/declarations/practices/tests-any/bad-practices/old-acceptance-test-utils/blackbox/lambdas/<star>.ts.declapract.ts +49 -0
- package/dist/.test/assets/tests-any-only/declarations/practices/tests-any/bad-practices/old-acceptance-test-utils-2/blackbox/lambdas/<star>.ts.declapract.ts +27 -0
- package/dist/.test/assets/tests-any-only/declarations/practices/tests-any/bad-practices/old-acceptance-test-utils-3/blackbox/_utils/environment.ts.declapract.ts +3 -0
- package/dist/.test/assets/tests-any-only/declarations/practices/tests-any/bad-practices/old-acceptance-test-utils-3/blackbox/lambdas/<star>.ts.declapract.ts +23 -0
- package/dist/.test/assets/tests-any-only/declarations/practices/tests-any/bad-practices/old-extension-pattern/.declapract.readme.md +3 -0
- package/dist/.test/assets/tests-any-only/declarations/practices/tests-any/bad-practices/old-extension-pattern/<star><star>/<star>.test.acceptance.ts.declapract.ts +11 -0
- package/dist/.test/assets/tests-any-only/declarations/practices/tests-any/bad-practices/old-extension-pattern/<star><star>/<star>.test.integration.ts.declapract.ts +11 -0
- package/dist/.test/assets/tests-any-only/declarations/practices/tests-any/bad-practices/old-test-utils-and-assets-location/.declapract.readme.md +8 -0
- package/dist/.test/assets/tests-any-only/declarations/practices/tests-any/bad-practices/old-test-utils-and-assets-location/<star><star>/<star>.ts.declapract.ts +27 -0
- package/dist/.test/assets/tests-any-only/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/tests-any-only/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/tests-any-only/declarations/practices/tests-any/best-practice/.declapract.readme.md +45 -0
- package/dist/.test/assets/tests-any-only/declarations/practices/tests-any/best-practice/.declapract.todo.md +3 -0
- package/dist/.test/assets/tests-any-only/declarations/practices/tests-any/best-practice/package.json +18 -0
- package/dist/.test/assets/tests-any-only/declarations/practices/tests-any/best-practice/package.json.declapract.ts +3 -0
- package/dist/.test/assets/tests-any-only/declarations/practices/tests-any/best-practice/src/.test/useWakeOfLivedb.ts +209 -0
- package/dist/.test/assets/tests-any-only/declarations/practices/tests-any/best-practice/src/<star><star>/<star>.integration.test.ts.declapract.ts +8 -0
- package/dist/.test/assets/tests-any-only/declarations/practices/tests-any/best-practice/src/<star><star>/<star>.test.ts.declapract.ts +7 -0
- package/dist/.test/assets/tests-any-only/declarations/practices/tests-any/build-ifstale.declapract.integration.test.ts +124 -0
- package/dist/.test/assets/tests-any-only/declarations/practices/tests-any/changedsince-origin-main.declapract.integration.test.ts +58 -0
- package/dist/.test/assets/tests-any-only/declarations/practices/tests-any/livedb-wake-branches.declapract.integration.test.ts +315 -0
- package/dist/.test/assets/tests-any-only/declarations/practices/tests-any/old-acceptance-test-utils.declapract.integration.test.ts +122 -0
- package/dist/.test/assets/tests-any-only/declarations/practices/tests-any/package.json.shell-flags.declapract.integration.test.ts +139 -0
- package/dist/.test/assets/tests-any-only/declarations/practices/tests-any/test-kind-seam.declapract.integration.test.ts +87 -0
- package/dist/.test/assets/tests-any-only/declarations/useCases.yml +6 -0
- package/dist/.test/assets/tests-service/declarations/practices/tests-service/__snapshots__/package.json.declapract.integration.test.ts.snap +1 -7
- package/dist/.test/assets/tests-service/declarations/practices/tests-service/bad-practices/simple-lambda-testing-methods/.declapract.integration.test.ts +83 -0
- package/dist/.test/assets/tests-service/declarations/practices/tests-service/bad-practices/simple-lambda-testing-methods/.test/assets/demo-repo-on-retired-lib/blackbox/lambdas/getWidget.acceptance.test.ts +21 -0
- package/dist/.test/assets/tests-service/declarations/practices/tests-service/bad-practices/simple-lambda-testing-methods/.test/assets/demo-repo-on-retired-lib/declapract.use.yml +5 -0
- package/dist/.test/assets/tests-service/declarations/practices/tests-service/bad-practices/simple-lambda-testing-methods/.test/assets/demo-repo-on-retired-lib/package.json +7 -0
- package/dist/.test/assets/tests-service/declarations/practices/tests-service/bad-practices/simple-lambda-testing-methods/__snapshots__/.declapract.integration.test.ts.snap +76 -0
- package/dist/.test/assets/tests-service/declarations/practices/tests-service/bad-practices/simple-lambda-testing-methods/blackbox/<star><star>/<star>.ts.declapract.ts +23 -0
- package/dist/.test/assets/tests-service/declarations/practices/tests-service/bad-practices/simple-lambda-testing-methods/package.json.declapract.ts +66 -0
- package/dist/.test/assets/tests-service/declarations/practices/tests-service/bad-practices/simple-lambda-testing-methods/src/<star><star>/<star>.ts.declapract.ts +23 -0
- package/dist/.test/assets/tests-service/declarations/practices/tests-service/best-practice/.declapract.readme.md +37 -13
- package/dist/.test/assets/tests-service/declarations/practices/tests-service/best-practice/blackbox/<star><star>/<star>.acceptance.test.ts.declapract.ts +7 -2
- package/dist/.test/assets/tests-service/declarations/practices/tests-service/best-practice/blackbox/lambdas/<star>.acceptance.test.ts.declapract.ts +19 -9
- package/dist/.test/assets/tests-service/declarations/practices/tests-service/best-practice/package.json +0 -3
- package/dist/.test/assets/tests-service/declarations/practices/tests-service/best-practice/src/<star><star>/<star>.integration.test.ts.declapract.ts +7 -2
- package/dist/.test/assets/tests-service/declarations/practices/tests-service/best-practice/src/<star><star>/<star>.test.ts.declapract.ts +6 -2
- package/dist/.test/assets/tool-swap-removals/declarations/declapract.declare.yml +4 -0
- package/dist/.test/assets/tool-swap-removals/declarations/practices/tests-node/bad-practices/deprecated-test-deps/.declapract.readme.md +7 -0
- package/dist/.test/assets/tool-swap-removals/declarations/practices/tests-node/bad-practices/deprecated-test-deps/package.json +9 -0
- package/dist/.test/assets/tool-swap-removals/declarations/practices/tests-node/bad-practices/deprecated-test-deps/package.json.declapract.ts +60 -0
- package/dist/.test/assets/tool-swap-removals/declarations/practices/typescript-any/bad-practices/legacy-tsconfig-lib/.declapract.readme.md +7 -0
- package/dist/.test/assets/tool-swap-removals/declarations/practices/typescript-any/bad-practices/legacy-tsconfig-lib/tsconfig.json.declapract.ts +105 -0
- package/dist/.test/assets/tool-swap-removals/declarations/practices/typescript-any/bad-practices/ts-node-beside-esbuild-register/.declapract.readme.md +6 -0
- package/dist/.test/assets/tool-swap-removals/declarations/practices/typescript-any/bad-practices/ts-node-beside-esbuild-register/package.json.declapract.ts +127 -0
- package/dist/.test/assets/tool-swap-removals/declarations/practices/typescript-node/bad-practices/node-lts-strictest/.declapract.readme.md +5 -0
- package/dist/.test/assets/tool-swap-removals/declarations/practices/typescript-node/bad-practices/node-lts-strictest/package.json.declapract.ts +90 -0
- package/dist/.test/assets/tool-swap-removals/declarations/useCases.yml +7 -0
- package/dist/.test/assets/tool-swap-removals/repo-after-swaps/declapract.use.yml +2 -0
- package/dist/.test/assets/tool-swap-removals/repo-after-swaps/jest.unit.config.ts +8 -0
- package/dist/.test/assets/tool-swap-removals/repo-after-swaps/package.json +15 -0
- package/dist/.test/assets/tool-swap-removals/repo-after-swaps/tsconfig.json +7 -0
- package/dist/.test/assets/tool-swap-removals/repo-mid-swaps/declapract.use.yml +2 -0
- package/dist/.test/assets/tool-swap-removals/repo-mid-swaps/jest.unit.config.ts +5 -0
- package/dist/.test/assets/tool-swap-removals/repo-mid-swaps/package.json +10 -0
- package/dist/.test/assets/tool-swap-removals/repo-mid-swaps/tsconfig.json +6 -0
- package/dist/.test/assets/typecheck-templates/declarations/declapract.declare.yml +9 -0
- package/dist/.test/assets/typecheck-templates/repo-bare/package.json +7 -0
- package/dist/.test/useWakeOfLivedb.ts +209 -0
- package/dist/__snapshots__/actionPins.declapract.integration.test.ts.snap +9 -10
- package/dist/__snapshots__/ancientTargetPublished.declapract.integration.test.ts.snap +3 -3
- package/dist/__snapshots__/typecheckBestPracticeTemplates.declapract.integration.test.ts.snap +96 -0
- package/dist/__snapshots__/useCases.rhachet-roles-package.declapract.integration.test.ts.snap +29 -0
- package/dist/__snapshots__/workflowCallerCalleeReconciliation.declapract.integration.test.ts.snap +17 -17
- package/dist/__snapshots__/workflowJobScopeIdToken.declapract.integration.test.ts.snap +38 -0
- package/dist/__snapshots__/workflowPrBuild.declapract.integration.test.ts.snap +10 -0
- package/dist/actionPinsBump.declapract.integration.test.ts +54 -0
- package/dist/ancientTargetPublished.declapract.integration.test.ts +33 -32
- package/dist/bestPracticeTemplateParse.declapract.integration.test.ts +58 -4
- package/dist/huskyCommitMsgHook.declapract.integration.test.ts +74 -0
- package/dist/integrationApplyScopedOverRealSrc.declapract.integration.test.ts +89 -0
- package/dist/integrationMountsDeclarationsOutsideSrc.declapract.integration.test.ts +72 -0
- package/dist/packageCommandsCallDeclaredBins.declapract.integration.test.ts +176 -0
- package/dist/parsePackageJSONAdoption.declapract.integration.test.ts +0 -1
- package/dist/practiceFixCoverage.declapract.integration.test.ts +388 -0
- package/dist/practiceOwnerPerFile.declapract.integration.test.ts +163 -0
- package/dist/practiceTemplateBiomeClean.declapract.integration.test.ts +122 -0
- package/dist/practiceTemplateImportsDeclared.declapract.integration.test.ts +173 -0
- package/dist/practiceTemplateIssueRefs.declapract.integration.test.ts +124 -0
- package/dist/practiceTemplateSrcAliasImports.declapract.integration.test.ts +83 -0
- package/dist/practiceTemplateTrailingNewline.declapract.integration.test.ts +58 -0
- package/dist/practices/artifact/.test/assets/demo-repo-with-npx-command/declapract.use.yml +3 -0
- package/dist/practices/artifact/.test/assets/demo-repo-with-npx-command/package.json +11 -0
- package/dist/practices/artifact/__snapshots__/package.json.declapract.integration.test.ts.snap +31 -0
- package/dist/practices/artifact/best-practice/artifact.yml +1 -1
- package/dist/practices/artifact/best-practice/package.json +1 -1
- package/dist/practices/artifact/package.json.declapract.integration.test.ts +74 -0
- package/dist/practices/bottleneck/.declapract.integration.test.ts +96 -0
- package/dist/practices/bottleneck/__snapshots__/.declapract.integration.test.ts.snap +44 -0
- package/dist/practices/bottleneck/bad-practices/bottleneck/.test/assets/demo-repo-with-bottleneck-import/declapract.use.yml +2 -0
- package/dist/practices/bottleneck/bad-practices/bottleneck/.test/assets/demo-repo-with-bottleneck-import/package.json +7 -0
- package/dist/practices/bottleneck/bad-practices/bottleneck/.test/assets/demo-repo-with-bottleneck-import/src/utils/limiter.ts +3 -0
- package/dist/practices/bottleneck/bad-practices/bottleneck/.test/assets/demo-repo-without-bottleneck-import/declapract.use.yml +2 -0
- package/dist/practices/bottleneck/bad-practices/bottleneck/.test/assets/demo-repo-without-bottleneck-import/package.json +7 -0
- package/dist/practices/bottleneck/bad-practices/bottleneck/__snapshots__/package.json.declapract.integration.test.ts.snap +28 -0
- package/dist/practices/bottleneck/bad-practices/bottleneck/package.json.declapract.integration.test.ts +112 -0
- package/dist/practices/bottleneck/bad-practices/bottleneck/package.json.declapract.ts +97 -6
- package/dist/practices/cache/.declapract.integration.test.ts +112 -16
- package/dist/practices/cache/.test/assets/repo-with-retired-cache-member/declapract.use.yml +6 -0
- package/dist/practices/cache/.test/assets/repo-with-retired-cache-member/package.json +8 -0
- package/dist/practices/cache/.test/assets/repo-with-retired-cache-member/src/utils/cache/getCacheDirectory.ts +10 -0
- package/dist/practices/cache/.test/assets/repo-with-retired-cache-member-imported/declapract.use.yml +6 -0
- package/dist/practices/cache/.test/assets/repo-with-retired-cache-member-imported/package.json +7 -0
- package/dist/practices/cache/.test/assets/repo-with-retired-cache-member-imported/src/logic/getWaveReport.ts +5 -0
- package/dist/practices/cache/__snapshots__/.declapract.integration.test.ts.snap +73 -0
- package/dist/practices/cache/bad-practices/cache-directory-options/.declapract.readme.md +5 -0
- package/dist/practices/cache/bad-practices/cache-directory-options/src/<star><star>/<star>.ts.declapract.ts +78 -0
- package/dist/practices/cache/bad-practices/unfloored-cache-member/.declapract.readme.md +10 -0
- package/dist/practices/cache/bad-practices/unfloored-cache-member/package.json.declapract.ts +151 -0
- package/dist/practices/cache/bad-practices/unfloored-cache-member/src/<star><star>/<star>.ts.declapract.ts +39 -0
- package/dist/practices/cache/best-practice/.declapract.readme.md +17 -0
- package/dist/practices/cache/best-practice/package.json +3 -0
- package/dist/practices/cicd-app-react-native-expo/.declapract.integration.test.ts +16 -22
- package/dist/practices/cicd-app-react-native-expo/__snapshots__/.declapract.integration.test.ts.snap +41 -28
- package/dist/practices/cicd-app-react-native-expo/__snapshots__/package.json.declapract.integration.test.ts.snap +19 -0
- package/dist/practices/cicd-app-react-native-expo/__snapshots__/provision.yml.declapract.integration.test.ts.snap +76 -0
- package/dist/practices/cicd-app-react-native-expo/best-practice/.github/workflows/.deploy-expo.yml +11 -3
- package/dist/practices/cicd-app-react-native-expo/best-practice/.github/workflows/provision.yml +33 -0
- package/dist/practices/cicd-app-react-native-expo/best-practice/.github/workflows/provision.yml.declapract.ts +75 -0
- package/dist/practices/cicd-app-react-native-expo/best-practice/package.json +10 -7
- package/dist/practices/cicd-app-react-native-expo/package.json.declapract.integration.test.ts +149 -0
- package/dist/practices/cicd-app-react-native-expo/provision.yml.declapract.integration.test.ts +131 -0
- package/dist/practices/cicd-common/.declapract.integration.test.ts +8 -2
- package/dist/practices/cicd-common/__snapshots__/.declapract.integration.test.ts.snap +70 -4
- package/dist/practices/cicd-common/__snapshots__/report-slow-tests.play.declapract.integration.test.ts.snap +28 -0
- package/dist/practices/cicd-common/best-practice/.github/workflows/.declastruct.yml +8 -2
- package/dist/practices/cicd-common/best-practice/.github/workflows/.test.yml +70 -4
- package/dist/practices/cicd-common/best-practice/.github/workflows/report-slow-tests.sh +3 -3
- package/dist/practices/cicd-common/report-slow-tests.play.declapract.integration.test.ts +20 -3
- package/dist/practices/cicd-package/best-practice/.github/workflows/.publish-npm.yml +5 -1
- package/dist/practices/cicd-service/.test/assets/demo-repo-pre-oidc/.github/workflows/provision.yml +107 -0
- package/dist/practices/cicd-service/.test/assets/demo-repo-pre-oidc/declapract.use.rds.yml +20 -0
- package/dist/practices/cicd-service/.test/assets/demo-repo-pre-oidc/package.json +4 -0
- package/dist/practices/cicd-service/.test/assets/demo-repo-pre-oidc/provision/schema/init.sql +3 -0
- package/dist/practices/cicd-service/__snapshots__/acceptanceContempFleetGuard.declapract.integration.test.ts.snap +3 -3
- package/dist/practices/cicd-service/__snapshots__/provision.yml.merge.declapract.integration.test.ts.snap +234 -0
- package/dist/practices/cicd-service/acceptanceContempFleetGuard.declapract.integration.test.ts +1 -1
- package/dist/practices/cicd-service/bad-practices/rds-jobs-in-non-rds-service/.declapract.integration.test.ts +8 -2
- package/dist/practices/cicd-service/bad-practices/rds-jobs-in-non-rds-service/.github/workflows/provision.yml.declapract.integration.test.ts +5 -4
- package/dist/practices/cicd-service/bad-practices/rds-jobs-in-non-rds-service/.github/workflows/provision.yml.declapract.ts +6 -4
- package/dist/practices/cicd-service/bad-practices/rds-jobs-in-non-rds-service/__snapshots__/.declapract.integration.test.ts.snap +7 -7
- package/dist/practices/cicd-service/best-practice/.github/workflows/.deploy-sls.yml +14 -5
- package/dist/practices/cicd-service/best-practice/.github/workflows/.sql-schema-control.yml +7 -1
- package/dist/practices/cicd-service/best-practice/.github/workflows/.terraform.yml +7 -1
- package/dist/practices/cicd-service/best-practice/.github/workflows/provision.yml.declapract.ts +67 -5
- package/dist/practices/cicd-service/provision.yml.merge.declapract.integration.test.ts +144 -0
- package/dist/practices/commands/best-practice/src/contract/commands/sayHello.ts +3 -2
- package/dist/practices/config/.declapract.integration.test.ts +10 -7
- package/dist/practices/config/.test/assets/demo-repo-with-dev-config/declapract.declare.yml +3 -3
- package/dist/practices/config/.test/assets/demo-repo-with-hand-written-config-type/declapract.use.yml +9 -0
- package/dist/practices/config/.test/assets/demo-repo-with-hand-written-config-type/declarations/declapract.declare.yml +6 -0
- package/dist/practices/config/.test/assets/demo-repo-with-hand-written-config-type/package.json +4 -0
- package/dist/practices/config/.test/assets/demo-repo-with-hand-written-config-type/src/logic/getSurfReport.ts +4 -0
- package/dist/practices/config/.test/assets/demo-repo-with-hand-written-config-type/src/utils/config/Config.ts +3 -0
- package/dist/practices/config/.test/assets/demo-repo-with-hand-written-config-type/src/utils/config/getAccessLabel.ts +4 -0
- package/dist/practices/config/__snapshots__/.declapract.integration.test.ts.snap +2 -2
- package/dist/practices/config/__snapshots__/config-schema-superset.declapract.integration.test.ts.snap +3 -0
- package/dist/practices/config/__snapshots__/hand-written-config-type.declapract.integration.test.ts.snap +33 -0
- package/dist/practices/config/bad-practices/divergent-config-shapes/config/prep.json.declapract.ts +10 -17
- package/dist/practices/config/bad-practices/divergent-config-shapes/config/prod.json.declapract.ts +10 -17
- package/dist/practices/config/bad-practices/hand-written-config-type/.declapract.readme.md +3 -0
- package/dist/practices/config/bad-practices/hand-written-config-type/src/<star><star>/<star>.ts.declapract.ts +68 -0
- package/dist/practices/config/bad-practices/hand-written-config-type/src/utils/config/Config.ts.declapract.ts +10 -0
- package/dist/practices/config/bad-practices/old-dev-config-location/config/dev.json.declapract.ts +1 -1
- package/dist/practices/config/bad-practices/unmigrated-param-paths/.declapract.readme.md +15 -0
- package/dist/practices/config/bad-practices/unmigrated-param-paths/config/prep.json.declapract.ts +3 -0
- package/dist/practices/config/bad-practices/unmigrated-param-paths/config/prod.json.declapract.ts +3 -0
- package/dist/practices/config/bad-practices/unmigrated-param-paths/config/test.json.declapract.ts +3 -0
- package/dist/practices/config/best-practice/.declapract.readme.md +18 -0
- package/dist/practices/config/best-practice/package.json +4 -1
- package/dist/practices/config/best-practice/src/utils/config/config.schema.ts.declapract.ts +78 -0
- package/dist/practices/config/best-practice/src/utils/config/getConfig.ts +7 -30
- package/dist/practices/config/best-practice/src/utils/config/getOneCacheDirectory.ts +3 -3
- package/dist/practices/config/config-schema-superset.declapract.integration.test.ts +90 -0
- package/dist/practices/config/hand-written-config-type.declapract.integration.test.ts +101 -0
- package/dist/practices/config/no-hand-written-config-type.declapract.integration.test.ts +2 -2
- package/dist/practices/config/template-prose-condensed.declapract.integration.test.ts +60 -0
- package/dist/practices/conventional-commits/best-practice/commitlint.config.js +3 -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 +19 -0
- package/dist/practices/dates-and-times/.declapract.integration.test.ts +95 -0
- package/dist/practices/dates-and-times/__snapshots__/.declapract.integration.test.ts.snap +59 -0
- package/dist/practices/dates-and-times/bad-practices/moment/src/<star><star>/<star>.ts.declapract.ts +21 -0
- package/dist/practices/dates-and-times/bad-practices/uni-time/.test/assets/demo-repo-with-uni-time/declapract.use.yml +5 -0
- package/dist/practices/dates-and-times/bad-practices/uni-time/.test/assets/demo-repo-with-uni-time/package.json +12 -0
- package/dist/practices/dates-and-times/bad-practices/uni-time/.test/assets/demo-repo-with-uni-time/src/domain.objects/SurfLesson.ts +9 -0
- package/dist/practices/dates-and-times/bad-practices/uni-time/package.json.declapract.ts +38 -8
- package/dist/practices/dates-and-times/bad-practices/uni-time/src/<star><star>/<star>.ts.declapract.ts +38 -6
- package/dist/practices/declastruct/bad-practices/old-module-name/package.json.declapract.ts +70 -8
- package/dist/practices/directory-structure-src/.declapract.integration.test.ts +98 -0
- package/dist/practices/directory-structure-src/__snapshots__/.declapract.integration.test.ts.snap +37 -0
- package/dist/practices/directory-structure-src/bad-practices/domain-dir/src/<star><star>/domain/<star><star>/<star>.declapract.ts +50 -2
- package/dist/practices/directory-structure-src/bad-practices/old-import-paths/src/<star><star>/<star>.ts.declapract.ts +50 -24
- package/dist/practices/directory-structure-src/best-practice/src/contract/<star><star>/<star>.ts.declapract.ts +5 -2
- package/dist/practices/directory-structure-src/best-practice/src/domain.objects/<star><star>/<star>.ts.declapract.ts +5 -2
- package/dist/practices/directory-structure-src/best-practice/src/domain.operations/<star><star>/<star>.ts.declapract.ts +5 -2
- package/dist/practices/domain/__snapshots__/contract.declapract.integration.test.ts.snap +47 -0
- package/dist/practices/domain/bad-practices/schema-over-contract/.declapract.readme.md +12 -0
- package/dist/practices/domain/bad-practices/schema-over-contract/src/contract/<star><star>/<star>.ts.declapract.ts +78 -0
- package/dist/practices/domain/best-practice/src/domain.objects/index.ts.declapract.ts +5 -2
- package/dist/practices/domain/contract.declapract.integration.test.ts +61 -0
- package/dist/practices/environments/.declapract.integration.test.ts +15 -12
- package/dist/practices/environments/__snapshots__/.declapract.integration.test.ts.snap +16 -8
- package/dist/practices/environments/bad-practices/old-dev-scripts/.declapract.integration.test.ts +97 -0
- package/dist/practices/environments/bad-practices/old-dev-scripts/.test/assets/demo-repo-with-dev-scripts/declapract.declare.yml +4 -0
- package/dist/practices/environments/bad-practices/old-dev-scripts/.test/assets/demo-repo-with-dev-scripts/declapract.use.yml +9 -0
- package/dist/practices/environments/bad-practices/old-dev-scripts/.test/assets/demo-repo-with-dev-scripts/package.json +11 -0
- package/dist/practices/environments/bad-practices/old-dev-scripts/__snapshots__/.declapract.integration.test.ts.snap +36 -0
- package/dist/practices/environments/best-practice/.declapract.readme.md +2 -2
- package/dist/practices/environments/best-practice/src/access/sdks/sdkAwsLambdaEnvAccessAncient.ts +13 -5
- package/dist/practices/environments/best-practice/src/access/sdks/sdkAwsLambdaEnvAccessContemp.ts +3 -3
- package/dist/practices/environments-aws/best-practice/.declapract.readme.md +4 -0
- package/dist/practices/format/.declapract.integration.test.ts +62 -66
- package/dist/practices/format/__snapshots__/.declapract.integration.test.ts.snap +36 -10
- package/dist/practices/format/bad-practices/terraform-formatter/package.json.declapract.ts +57 -0
- package/dist/practices/format/best-practice/package.json +6 -0
- package/dist/practices/format/best-practice/package.json.declapract.ts +7 -47
- package/dist/practices/git/.gitattributes.declapract.integration.test.ts +105 -0
- package/dist/practices/git/.test/assets/repo-with-legacy-gitattributes/.gitattributes +6 -0
- package/dist/practices/git/.test/assets/repo-with-legacy-gitattributes/declapract.use.yml +7 -0
- package/dist/practices/git/.test/assets/repo-with-legacy-gitattributes/package.json +4 -0
- package/dist/practices/git/__snapshots__/.declapract.integration.test.ts.snap +6 -4
- package/dist/practices/git/__snapshots__/.gitattributes.declapract.integration.test.ts.snap +24 -0
- package/dist/practices/git/best-practice/.gitattributes.declapract.ts +42 -116
- package/dist/practices/husky/.test/assets/demo-repo-with-edited-timestamp-hook/.husky/check.timestamps.sh +11 -0
- package/dist/practices/husky/.test/assets/demo-repo-with-edited-timestamp-hook/declapract.declare.yml +4 -0
- package/dist/practices/husky/.test/assets/demo-repo-with-edited-timestamp-hook/declapract.use.yml +2 -0
- package/dist/practices/husky/.test/assets/demo-repo-with-edited-timestamp-hook/package.json +4 -0
- package/dist/practices/husky/__snapshots__/check.secrets.play.declapract.integration.test.ts.snap +8 -0
- package/dist/practices/husky/__snapshots__/check.timestamps.lock.play.declapract.integration.test.ts.snap +107 -0
- package/dist/practices/husky/__snapshots__/check.timestamps.play.declapract.integration.test.ts.snap +3 -2
- package/dist/practices/husky/best-practice/.husky/check.nvm.sh +2 -1
- package/dist/practices/husky/best-practice/.husky/check.secrets.sh +60 -0
- package/dist/practices/husky/best-practice/.husky/check.timestamps.lock.sh +51 -0
- package/dist/practices/husky/best-practice/.husky/check.timestamps.lock.sh.declapract.ts +36 -0
- package/dist/practices/husky/best-practice/.husky/check.timestamps.sh +38 -19
- package/dist/practices/husky/best-practice/.husky/pre-commit +4 -0
- package/dist/practices/husky/check.secrets.play.declapract.integration.test.ts +120 -0
- package/dist/practices/husky/check.timestamps.lock.play.declapract.integration.test.ts +220 -0
- package/dist/practices/husky/check.timestamps.play.declapract.integration.test.ts +172 -24
- package/dist/practices/husky/self-application.declapract.integration.test.ts +60 -0
- package/dist/practices/lint/.depcheckrc.yml.declapract.integration.test.ts +184 -0
- package/dist/practices/lint/.depcheckrc.yml.self-application.declapract.integration.test.ts +33 -0
- package/dist/practices/lint/.dpdmrc.yaml.declapract.integration.test.ts +106 -0
- package/dist/practices/lint/.test/assets/repo-depcheckrc-denylisted/.depcheckrc.yml +8 -0
- package/dist/practices/lint/.test/assets/repo-depcheckrc-denylisted/declapract.use.yml +6 -0
- package/dist/practices/lint/.test/assets/repo-depcheckrc-denylisted/package.json +4 -0
- package/dist/practices/lint/.test/assets/repo-depcheckrc-extant/.depcheckrc.yml +5 -0
- package/dist/practices/lint/.test/assets/repo-depcheckrc-extant/declapract.use.expo.yml +4 -0
- package/dist/practices/lint/.test/assets/repo-depcheckrc-extant/declapract.use.yml +4 -0
- package/dist/practices/lint/.test/assets/repo-depcheckrc-extant/package.json +4 -0
- package/dist/practices/lint/.test/assets/repo-dpdmrc-extant/.dpdmrc.yaml +4 -0
- package/dist/practices/lint/.test/assets/repo-dpdmrc-extant/declapract.use.yml +4 -0
- package/dist/practices/lint/.test/assets/repo-dpdmrc-extant/package.json +4 -0
- package/dist/practices/lint/__snapshots__/.depcheckrc.yml.declapract.integration.test.ts.snap +79 -0
- package/dist/practices/lint/__snapshots__/.dpdmrc.yaml.declapract.integration.test.ts.snap +18 -0
- package/dist/practices/lint/__snapshots__/depcheck-denylisted-ignores.declapract.integration.test.ts.snap +47 -0
- package/dist/practices/lint/__snapshots__/lint-cycles-command.declapract.integration.test.ts.snap +3 -0
- package/dist/practices/lint/best-practice/.depcheckrc.yml +14 -0
- package/dist/practices/lint/best-practice/.depcheckrc.yml.declapract.ts +158 -26
- package/dist/practices/lint/best-practice/.dpdmrc.yaml +9 -5
- package/dist/practices/lint/best-practice/.dpdmrc.yaml.declapract.ts +82 -0
- package/dist/practices/lint/best-practice/biome.jsonc +14 -11
- package/dist/practices/lint/best-practice/package.json +4 -3
- package/dist/practices/lint/biome.jsonc.declapract.integration.test.ts +148 -0
- package/dist/practices/lint/depcheck-denylisted-ignores.declapract.integration.test.ts +112 -0
- package/dist/practices/lint/lint-cycles-command.declapract.integration.test.ts +124 -0
- package/dist/practices/logs/.declapract.integration.test.ts +4 -1
- package/dist/practices/logs/__snapshots__/src-markers.declapract.integration.test.ts.snap +61 -0
- package/dist/practices/logs/bad-practices/leveled-term/.test/assets/demo-repo-with-leveled-term/declapract.declare.yml +3 -3
- package/dist/practices/logs/bad-practices/leveled-term/src/<star><star>/<star>.ts.declapract.ts +43 -0
- package/dist/practices/logs/bad-practices/vendored-log-trail/.declapract.readme.md +6 -0
- package/dist/practices/logs/bad-practices/vendored-log-trail/.test/assets/demo-repo-with-log-forks/declapract.use.yml +2 -0
- package/dist/practices/logs/bad-practices/vendored-log-trail/.test/assets/demo-repo-with-log-forks/package.json +7 -0
- package/dist/practices/logs/bad-practices/vendored-log-trail/.test/assets/demo-repo-with-log-forks/src/domain.operations/getWaveReport.ts +3 -0
- package/dist/practices/logs/bad-practices/vendored-log-trail/.test/assets/demo-repo-with-log-forks/src/utils/withInputOutputTracing.ts +18 -0
- package/dist/practices/logs/bad-practices/vendored-log-trail/src/<star><star>/<star>.ts.declapract.ts +69 -0
- package/dist/practices/logs/src-markers.declapract.integration.test.ts +96 -0
- package/dist/practices/node/.npmrc.declapract.integration.test.ts +109 -11
- package/dist/practices/node/.test/assets/repo-readme-without-title/declapract.declare.yml +4 -0
- package/dist/practices/node/.test/assets/repo-readme-without-title/declapract.use.yml +8 -0
- package/dist/practices/node/.test/assets/repo-readme-without-title/package.json +4 -0
- package/dist/practices/node/.test/assets/repo-readme-without-title/readme.md +5 -0
- package/dist/practices/node/__snapshots__/.npmrc.declapract.integration.test.ts.snap +29 -0
- package/dist/practices/node/__snapshots__/readme.md.declapract.integration.test.ts.snap +21 -0
- package/dist/practices/node/bad-practices/self-deps-not-link/.declapract.integration.test.ts +1 -1
- package/dist/practices/node/bad-practices/self-deps-not-link/.test/assets/demo-repo-with-self-deps/declapract.declare.yml +3 -3
- package/dist/practices/node/bad-practices/self-deps-not-link/package.json.declapract.ts +24 -12
- package/dist/practices/node/best-practice/.npmrc.declapract.ts +85 -3
- package/dist/practices/node/best-practice/readme.md.declapract.ts +20 -2
- package/dist/practices/node/readme.md.declapract.integration.test.ts +77 -0
- package/dist/practices/node-service/.declapract.integration.test.ts +93 -0
- package/dist/practices/node-service/__snapshots__/.declapract.integration.test.ts.snap +44 -0
- package/dist/practices/node-service/bad-practices/adhoc-lambda-clients/.declapract.integration.test.ts +101 -0
- package/dist/practices/node-service/bad-practices/adhoc-lambda-clients/.declapract.readme.md +26 -0
- package/dist/practices/node-service/bad-practices/adhoc-lambda-clients/.test/assets/demo-repo-with-adhoc-lambda-clients/declapract.use.yml +4 -0
- package/dist/practices/node-service/bad-practices/adhoc-lambda-clients/.test/assets/demo-repo-with-adhoc-lambda-clients/package.json +7 -0
- package/dist/practices/node-service/bad-practices/adhoc-lambda-clients/.test/assets/demo-repo-with-adhoc-lambda-clients/src/access/sdks/svcJobs.ts +10 -0
- package/dist/practices/node-service/bad-practices/adhoc-lambda-clients/.test/assets/demo-repo-with-adhoc-lambda-clients/src/access/sdks/svcUsers.ts +11 -0
- package/dist/practices/node-service/bad-practices/adhoc-lambda-clients/.test/assets/demo-repo-with-adhoc-lambda-clients/src/data/clients/svcQuotes.ts +10 -0
- package/dist/practices/node-service/bad-practices/adhoc-lambda-clients/__snapshots__/.declapract.integration.test.ts.snap +59 -0
- package/dist/practices/node-service/bad-practices/adhoc-lambda-clients/src/access/sdks/svc<star>.ts.declapract.ts +28 -0
- package/dist/practices/node-service/bad-practices/adhoc-lambda-clients/src/data/clients/svc<star>.ts.declapract.ts +28 -0
- package/dist/practices/node-service/bad-practices/sdk-aws-lambda-pre-v07/.declapract.integration.test.ts +123 -0
- package/dist/practices/node-service/bad-practices/sdk-aws-lambda-pre-v07/.declapract.readme.md +31 -0
- package/dist/practices/node-service/bad-practices/sdk-aws-lambda-pre-v07/.test/assets/demo-repo-on-sdk-aws-lambda-0.6/declapract.use.yml +4 -0
- package/dist/practices/node-service/bad-practices/sdk-aws-lambda-pre-v07/.test/assets/demo-repo-on-sdk-aws-lambda-0.6/package.json +12 -0
- package/dist/practices/node-service/bad-practices/sdk-aws-lambda-pre-v07/.test/assets/demo-repo-on-sdk-aws-lambda-0.6/patches/sdk-aws-lambda@0.6.2.patch +6 -0
- package/dist/practices/node-service/bad-practices/sdk-aws-lambda-pre-v07/.test/assets/demo-repo-on-sdk-aws-lambda-0.6/pnpm-workspace.yaml +5 -0
- package/dist/practices/node-service/bad-practices/sdk-aws-lambda-pre-v07/.test/assets/demo-repo-on-sdk-aws-lambda-0.6/src/contract/handlers/getWidget.ts +16 -0
- package/dist/practices/node-service/bad-practices/sdk-aws-lambda-pre-v07/__snapshots__/.declapract.integration.test.ts.snap +85 -0
- package/dist/practices/node-service/bad-practices/sdk-aws-lambda-pre-v07/package.json.declapract.ts +84 -0
- package/dist/practices/node-service/bad-practices/sdk-aws-lambda-pre-v07/patches/sdk-aws-lambda@<star>.patch.declapract.ts +30 -0
- package/dist/practices/node-service/bad-practices/sdk-aws-lambda-pre-v07/pnpm-workspace.yaml.declapract.ts +61 -0
- package/dist/practices/node-service/bad-practices/sdk-aws-lambda-pre-v07/src/<star><star>/<star>.ts.declapract.ts +202 -0
- package/dist/practices/node-service/bad-practices/simple-lambda-client/.declapract.integration.test.ts +99 -0
- package/dist/practices/node-service/bad-practices/simple-lambda-client/.declapract.readme.md +14 -12
- package/dist/practices/node-service/bad-practices/simple-lambda-client/.test/assets/demo-repo-with-simple-lambda-client/declapract.use.yml +5 -0
- package/dist/practices/node-service/bad-practices/simple-lambda-client/.test/assets/demo-repo-with-simple-lambda-client/package.json +4 -0
- package/dist/practices/node-service/bad-practices/simple-lambda-client/.test/assets/demo-repo-with-simple-lambda-client/src/domain.operations/getWidgetPrice.ts +17 -0
- package/dist/practices/node-service/bad-practices/simple-lambda-client/__snapshots__/.declapract.integration.test.ts.snap +45 -0
- package/dist/practices/node-service/bad-practices/simple-lambda-client/package.json.declapract.ts +1 -2
- package/dist/practices/node-service/bad-practices/simple-lambda-client/src/<star><star>/<star>.ts.declapract.ts +73 -19
- package/dist/practices/node-service/bad-practices/simple-lambda-handlers/.declapract.integration.test.ts +8 -5
- package/dist/practices/node-service/bad-practices/simple-lambda-handlers/.declapract.readme.md +59 -14
- package/dist/practices/node-service/bad-practices/simple-lambda-handlers/__snapshots__/.declapract.integration.test.ts.snap +6 -5
- package/dist/practices/node-service/bad-practices/simple-lambda-handlers/package.json.declapract.ts +1 -2
- package/dist/practices/node-service/bad-practices/simple-lambda-handlers/src/<star><star>/<star>.ts.declapract.ts +22 -18
- package/dist/practices/node-service/best-practice/package.json +1 -1
- package/dist/practices/node-service/best-practice/src/access/sdks/sdkAwsLambdaAskAncient.ts +39 -0
- package/dist/practices/node-service/withLambdaClientGenMarker.ts +55 -0
- package/dist/practices/nonpublished-modules/bad-practices/ahbode-standard-lambda-handler/.declapract.integration.test.ts +95 -0
- package/dist/practices/nonpublished-modules/bad-practices/ahbode-standard-lambda-handler/.test/assets/demo-repo-with-ahbode-handler-test/declapract.use.yml +5 -0
- package/dist/practices/nonpublished-modules/bad-practices/ahbode-standard-lambda-handler/.test/assets/demo-repo-with-ahbode-handler-test/package.json +4 -0
- package/dist/practices/nonpublished-modules/bad-practices/ahbode-standard-lambda-handler/.test/assets/demo-repo-with-ahbode-handler-test/src/contract/handlers/getWidget.integration.test.ts +18 -0
- package/dist/practices/nonpublished-modules/bad-practices/ahbode-standard-lambda-handler/__snapshots__/.declapract.integration.test.ts.snap +45 -0
- package/dist/practices/nonpublished-modules/bad-practices/ahbode-standard-lambda-handler/src/contract/handlers/<star>.integration.test.ts.declapract.ts +16 -6
- package/dist/practices/package-json-order/.declapract.integration.test.ts +100 -0
- package/dist/practices/package-json-order/.test/assets/demo-repo-with-unordered-keys/declapract.declare.yml +4 -0
- package/dist/practices/package-json-order/.test/assets/demo-repo-with-unordered-keys/declapract.use.yml +9 -0
- package/dist/practices/package-json-order/.test/assets/demo-repo-with-unordered-keys/package.json +19 -0
- package/dist/practices/package-json-order/__snapshots__/.declapract.integration.test.ts.snap +47 -0
- package/dist/practices/package-json-order/best-practice/package.json.declapract.ts +1 -2
- package/dist/practices/persist-with-dynamodb/.declapract.integration.test.ts +161 -72
- package/dist/practices/persist-with-dynamodb/.test/assets/demo-repo-with-dynamodb/declapract.declare.yml +4 -0
- package/dist/practices/persist-with-dynamodb/.test/assets/demo-repo-with-dynamodb/declapract.use.yml +11 -0
- package/dist/practices/persist-with-dynamodb/.test/assets/demo-repo-with-dynamodb/package.json +1 -0
- package/dist/practices/persist-with-dynamodb/.test/assets/demo-repo-with-dynamodb/useCases.yml +8 -0
- package/dist/practices/persist-with-dynamodb/__snapshots__/.declapract.integration.test.ts.snap +220 -6
- package/dist/practices/persist-with-dynamodb/best-practice/package.json +1 -1
- package/dist/practices/persist-with-rds/.declapract.integration.test.ts +29 -16
- package/dist/practices/persist-with-rds/.extensions.sql.declapract.integration.test.ts +121 -0
- package/dist/practices/persist-with-rds/.test/assets/demo-repo-config-schema/declapract.use.yml +20 -0
- package/dist/practices/persist-with-rds/.test/assets/demo-repo-config-schema/declarations/declapract.declare.yml +6 -0
- package/dist/practices/persist-with-rds/.test/assets/demo-repo-config-schema/package.json +4 -0
- package/dist/practices/persist-with-rds/.test/assets/demo-repo-on-a-prior-major/codegen.sql.dao.yml +20 -0
- package/dist/practices/persist-with-rds/.test/assets/demo-repo-on-a-prior-major/declapract.declare.yml +4 -0
- package/dist/practices/persist-with-rds/.test/assets/demo-repo-on-a-prior-major/declapract.use.yml +19 -0
- package/dist/practices/persist-with-rds/.test/assets/demo-repo-on-a-prior-major/package.json +4 -0
- package/dist/practices/persist-with-rds/.test/assets/demo-repo-on-a-prior-major/provision/docker/testdb/build-image.dockerfile +6 -0
- package/dist/practices/persist-with-rds/.test/assets/demo-repo-with-custom-extensions/declapract.declare.yml +4 -0
- package/dist/practices/persist-with-rds/.test/assets/demo-repo-with-custom-extensions/declapract.use.yml +21 -0
- package/dist/practices/persist-with-rds/.test/assets/demo-repo-with-custom-extensions/package.json +4 -0
- package/dist/practices/persist-with-rds/.test/assets/demo-repo-with-custom-extensions/provision/schema/sql/init/.extensions.sql +9 -0
- package/dist/practices/persist-with-rds/.test/assets/demo-repo-with-dev-config/declapract.declare.yml +3 -3
- package/dist/practices/persist-with-rds/__snapshots__/.declapract.integration.test.ts.snap +3 -3
- package/dist/practices/persist-with-rds/__snapshots__/.extensions.sql.declapract.integration.test.ts.snap +35 -0
- package/dist/practices/persist-with-rds/__snapshots__/config-validates-schema.declapract.integration.test.ts.snap +500 -0
- package/dist/practices/persist-with-rds/__snapshots__/database-wrappers-typecheck.declapract.integration.test.ts.snap +10 -0
- package/dist/practices/persist-with-rds/__snapshots__/engine-upgrade.declapract.integration.test.ts.snap +151 -0
- package/dist/practices/persist-with-rds/__snapshots__/ssm-param-names.declapract.integration.test.ts.snap +9 -0
- package/dist/practices/persist-with-rds/__snapshots__/with-connection-in-input.declapract.integration.test.ts.snap +57 -0
- package/dist/practices/persist-with-rds/bad-practices/legacy-change-id/.declapract.integration.test.ts +71 -0
- package/dist/practices/persist-with-rds/bad-practices/legacy-change-id/.declapract.readme.md +6 -0
- package/dist/practices/persist-with-rds/bad-practices/legacy-change-id/.test/assets/demo-repo-with-legacy-change-id/declapract.declare.yml +4 -0
- package/dist/practices/persist-with-rds/bad-practices/legacy-change-id/.test/assets/demo-repo-with-legacy-change-id/declapract.use.yml +19 -0
- package/dist/practices/persist-with-rds/bad-practices/legacy-change-id/.test/assets/demo-repo-with-legacy-change-id/package.json +4 -0
- package/dist/practices/persist-with-rds/bad-practices/legacy-change-id/.test/assets/demo-repo-with-legacy-change-id/provision/schema/sql/init.yml +15 -0
- package/dist/practices/persist-with-rds/bad-practices/legacy-change-id/__snapshots__/.declapract.integration.test.ts.snap +39 -0
- package/dist/practices/persist-with-rds/bad-practices/legacy-change-id/provision/schema/<star><star>/<star>.yml.declapract.ts +68 -0
- package/dist/practices/persist-with-rds/bad-practices/old-dev-config-location/config/dev.json.declapract.ts +14 -24
- package/dist/practices/persist-with-rds/bad-practices/old-get-database-connection/.declapract.integration.test.ts +221 -0
- package/dist/practices/persist-with-rds/bad-practices/old-get-database-connection/.declapract.readme.md +11 -0
- package/dist/practices/persist-with-rds/bad-practices/old-get-database-connection/.test/assets/demo-repo-with-old-get-database-connection/declapract.declare.yml +4 -0
- package/dist/practices/persist-with-rds/bad-practices/old-get-database-connection/.test/assets/demo-repo-with-old-get-database-connection/declapract.use.yml +19 -0
- package/dist/practices/persist-with-rds/bad-practices/old-get-database-connection/.test/assets/demo-repo-with-old-get-database-connection/package.json +4 -0
- package/dist/practices/persist-with-rds/bad-practices/old-get-database-connection/.test/assets/demo-repo-with-old-get-database-connection/src/access/daos/daoSurfer.ts +15 -0
- package/dist/practices/persist-with-rds/bad-practices/old-get-database-connection/.test/assets/demo-repo-with-old-get-database-connection/src/domain.operations/getSurfLesson.ts +14 -0
- package/dist/practices/persist-with-rds/bad-practices/old-get-database-connection/.test/assets/demo-repo-with-old-get-database-connection/src/utils/database/getDatabaseConnection.integration.test.ts +10 -0
- package/dist/practices/persist-with-rds/bad-practices/old-get-database-connection/.test/assets/demo-repo-with-old-get-database-connection/src/utils/database/getDatabaseConnection.ts +68 -0
- package/dist/practices/persist-with-rds/bad-practices/old-get-database-connection/.test/assets/old-templates/getDatabaseConnection.3a193e5.ts +65 -0
- package/dist/practices/persist-with-rds/bad-practices/old-get-database-connection/.test/assets/old-templates/getDatabaseConnection.66284e3.ts +30 -0
- package/dist/practices/persist-with-rds/bad-practices/old-get-database-connection/.test/assets/old-templates/getDatabaseConnection.68cf8ba.ts +90 -0
- package/dist/practices/persist-with-rds/bad-practices/old-get-database-connection/.test/assets/old-templates/getDatabaseConnection.9e1bdc4.ts +65 -0
- package/dist/practices/persist-with-rds/bad-practices/old-get-database-connection/.test/assets/old-templates/getDatabaseConnection.c6cef7e.ts +68 -0
- package/dist/practices/persist-with-rds/bad-practices/old-get-database-connection/.test/assets/old-templates/getDatabaseConnection.c8eb35b.ts +90 -0
- package/dist/practices/persist-with-rds/bad-practices/old-get-database-connection/.test/assets/old-templates/getDatabaseConnection.d1e8cd7.ts +31 -0
- package/dist/practices/persist-with-rds/bad-practices/old-get-database-connection/.test/assets/old-templates/getDatabaseConnection.e0c53d8.ts +90 -0
- package/dist/practices/persist-with-rds/bad-practices/old-get-database-connection/.test/assets/old-templates/getDatabaseConnection.eab15c0.ts +89 -0
- package/dist/practices/persist-with-rds/bad-practices/old-get-database-connection/.test/assets/old-templates/getDatabaseConnection.ef25ae0.ts +32 -0
- package/dist/practices/persist-with-rds/bad-practices/old-get-database-connection/.test/assets/old-templates/getDatabaseConnection.integration.test.66284e3.ts +10 -0
- package/dist/practices/persist-with-rds/bad-practices/old-get-database-connection/__snapshots__/.declapract.integration.test.ts.snap +75 -0
- package/dist/practices/persist-with-rds/bad-practices/old-get-database-connection/src/<star><star>/<star>.ts.declapract.ts +33 -0
- package/dist/practices/persist-with-rds/bad-practices/old-get-database-connection/src/utils/database/getDatabaseConnection.integration.test.ts.declapract.ts +43 -0
- package/dist/practices/persist-with-rds/bad-practices/old-get-database-connection/src/utils/database/getDatabaseConnection.ts.declapract.ts +51 -0
- package/dist/practices/persist-with-rds/bad-practices/pg-client-without-ssl/.declapract.integration.test.ts +86 -0
- package/dist/practices/persist-with-rds/bad-practices/pg-client-without-ssl/.declapract.readme.md +9 -0
- package/dist/practices/persist-with-rds/bad-practices/pg-client-without-ssl/.test/assets/demo-repo-with-plaintext-pg-client/declapract.declare.yml +4 -0
- package/dist/practices/persist-with-rds/bad-practices/pg-client-without-ssl/.test/assets/demo-repo-with-plaintext-pg-client/declapract.use.yml +19 -0
- package/dist/practices/persist-with-rds/bad-practices/pg-client-without-ssl/.test/assets/demo-repo-with-plaintext-pg-client/package.json +4 -0
- package/dist/practices/persist-with-rds/bad-practices/pg-client-without-ssl/.test/assets/demo-repo-with-plaintext-pg-client/src/access/sdks/sdkWaveArchive.ts +7 -0
- package/dist/practices/persist-with-rds/bad-practices/pg-client-without-ssl/.test/assets/demo-repo-with-plaintext-pg-client/src/utils/database/getSurfReportConnection.ts +19 -0
- package/dist/practices/persist-with-rds/bad-practices/pg-client-without-ssl/__snapshots__/.declapract.integration.test.ts.snap +72 -0
- package/dist/practices/persist-with-rds/bad-practices/pg-client-without-ssl/src/<star><star>/<star>.ts.declapract.ts +32 -0
- package/dist/practices/persist-with-rds/bad-practices/terraform-parameters/.declapract.integration.test.ts +8 -1
- package/dist/practices/persist-with-rds/bad-practices/terraform-parameters/.test/assets/demo-repo-with-terraform-ssm/declapract.declare.yml +3 -3
- package/dist/practices/persist-with-rds/bad-practices/terraform-parameters/.test/assets/demo-repo-with-terraform-ssm/provision/aws/product/parameter-store.tf +9 -0
- package/dist/practices/persist-with-rds/bad-practices/terraform-parameters/__snapshots__/.declapract.integration.test.ts.snap +17 -1
- package/dist/practices/persist-with-rds/bad-practices/terraform-parameters/provision/aws/product/parameter-store.tf.declapract.ts +42 -3
- package/dist/practices/persist-with-rds/bad-practices/with-connection-in-input/.declapract.readme.md +9 -0
- package/dist/practices/persist-with-rds/bad-practices/with-connection-in-input/.test/assets/demo-repo-with-connection-in-input/declapract.use.yml +2 -0
- package/dist/practices/persist-with-rds/bad-practices/with-connection-in-input/.test/assets/demo-repo-with-connection-in-input/package.json +4 -0
- package/dist/practices/persist-with-rds/bad-practices/with-connection-in-input/.test/assets/demo-repo-with-connection-in-input/src/domain.operations/findSurferById.ts +9 -0
- package/dist/practices/persist-with-rds/bad-practices/with-connection-in-input/.test/assets/demo-repo-with-connection-in-input/src/utils/database/withDatabaseConnection.ts +10 -0
- package/dist/practices/persist-with-rds/bad-practices/with-connection-in-input/src/<star><star>/<star>.ts.declapract.ts +55 -0
- package/dist/practices/persist-with-rds/best-practice/.declapract.readme.md +34 -7
- package/dist/practices/persist-with-rds/best-practice/codegen.sql.dao.yml +1 -1
- package/dist/practices/persist-with-rds/best-practice/codegen.sql.dao.yml.declapract.ts +33 -1
- package/dist/practices/persist-with-rds/best-practice/codegen.sql.schema.yml +1 -1
- package/dist/practices/persist-with-rds/best-practice/codegen.sql.types.yml +1 -1
- package/dist/practices/persist-with-rds/best-practice/config/prep.json +6 -2
- package/dist/practices/persist-with-rds/best-practice/config/prep.json.declapract.ts +10 -14
- package/dist/practices/persist-with-rds/best-practice/config/prod.json +6 -2
- package/dist/practices/persist-with-rds/best-practice/config/prod.json.declapract.ts +10 -14
- package/dist/practices/persist-with-rds/best-practice/config/test.json +6 -2
- package/dist/practices/persist-with-rds/best-practice/config/test.json.declapract.ts +10 -14
- package/dist/practices/persist-with-rds/best-practice/package.json +11 -10
- package/dist/practices/persist-with-rds/best-practice/provision/aws/readme.md +66 -32
- package/dist/practices/persist-with-rds/best-practice/provision/aws/resources.parameters.ts +26 -72
- package/dist/practices/persist-with-rds/best-practice/provision/aws/resources.ts +1 -1
- package/dist/practices/persist-with-rds/best-practice/provision/docker/testdb/build-image.dockerfile.declapract.ts +37 -0
- package/dist/practices/persist-with-rds/best-practice/provision/docker/testdb/check-engine-skew.integration.test.ts +115 -0
- package/dist/practices/persist-with-rds/best-practice/provision/docker/testdb/check-engine-skew.sh +165 -0
- package/dist/practices/persist-with-rds/best-practice/provision/docker/testdb/compose.sh +43 -0
- package/dist/practices/persist-with-rds/best-practice/provision/docker/testdb/docker-compose.yml +4 -3
- package/dist/practices/persist-with-rds/best-practice/provision/schema/connection.config.js +8 -1
- package/dist/practices/persist-with-rds/best-practice/provision/schema/control.yml +1 -1
- package/dist/practices/persist-with-rds/best-practice/provision/schema/sql/init/.extensions.sql.declapract.ts +10 -1
- package/dist/practices/persist-with-rds/best-practice/provision/schema/sql/init.yml +2 -2
- package/dist/practices/persist-with-rds/best-practice/src/.test/assets/database/getTestdbIdentity.ts +52 -0
- package/dist/practices/persist-with-rds/best-practice/src/.test/assets/database/getTestdbPort.ts +17 -0
- package/dist/practices/persist-with-rds/best-practice/src/utils/config/config.schema.ts +8 -41
- package/dist/practices/persist-with-rds/best-practice/src/utils/database/asDatabaseClientSsl.test.ts +82 -0
- package/dist/practices/persist-with-rds/best-practice/src/utils/database/asDatabaseClientSsl.ts +52 -0
- package/dist/practices/persist-with-rds/best-practice/src/utils/database/databaseClientTimeouts.ts +14 -0
- package/dist/practices/persist-with-rds/best-practice/src/utils/database/getOneDatabaseConnection.ts +43 -14
- package/dist/practices/persist-with-rds/best-practice/src/utils/database/getOneDatabasePort.ts +30 -0
- package/dist/practices/persist-with-rds/best-practice/src/utils/database/rdsCaBundleUsEast1.test.ts +51 -0
- package/dist/practices/persist-with-rds/best-practice/src/utils/database/rdsCaBundleUsEast1.ts +86 -0
- package/dist/practices/persist-with-rds/best-practice/src/utils/database/withDatabaseContext.ts +2 -1
- package/dist/practices/persist-with-rds/best-practice/src/utils/database/withDatabaseTransaction.ts +7 -5
- package/dist/practices/persist-with-rds/config-validates-schema.declapract.integration.test.ts +332 -0
- package/dist/practices/persist-with-rds/database-client.declapract.integration.test.ts +291 -0
- package/dist/practices/persist-with-rds/database-wrappers-typecheck.declapract.integration.test.ts +225 -0
- package/dist/practices/persist-with-rds/empty-template-declares-zero-clusters.declapract.integration.test.ts +4 -4
- package/dist/practices/persist-with-rds/engine-upgrade.declapract.integration.test.ts +243 -0
- package/dist/practices/persist-with-rds/provision-testdb-access.declapract.integration.test.ts +1 -1
- package/dist/practices/persist-with-rds/ssm-param-names.declapract.integration.test.ts +154 -0
- package/dist/practices/persist-with-rds/testdb-per-worktree.declapract.integration.test.ts +332 -0
- package/dist/practices/persist-with-rds/with-connection-in-input.declapract.integration.test.ts +97 -0
- package/dist/practices/pnpm/.test/assets/repo-stale-patch/declapract.use.yml +4 -0
- package/dist/practices/pnpm/.test/assets/repo-stale-patch/package.json +14 -0
- package/dist/practices/pnpm/.test/assets/repo-stale-patch/patches/rhachet-roles-ehmpathy@1.39.1.patch +6 -0
- package/dist/practices/pnpm/.test/assets/repo-stale-patch/patches/type-fns@1.21.3.patch +6 -0
- package/dist/practices/pnpm/.test/assets/repo-stale-patch/pnpm-lock.yaml +19 -0
- package/dist/practices/pnpm/__snapshots__/.declapract.integration.test.ts.snap +3 -1
- package/dist/practices/pnpm/__snapshots__/stale-patched-dependency.declapract.integration.test.ts.snap +38 -0
- package/dist/practices/pnpm/bad-practices/husky-lockfile-check/.husky/check.lockfile.sh.declapract.ts +9 -2
- package/dist/practices/pnpm/bad-practices/override-undercuts-dependency/.declapract.readme.md +5 -0
- package/dist/practices/pnpm/bad-practices/override-undercuts-dependency/package.json.declapract.ts +67 -0
- package/dist/practices/pnpm/bad-practices/stale-patched-dependency/.declapract.readme.md +22 -0
- package/dist/practices/pnpm/bad-practices/stale-patched-dependency/package.json.declapract.ts +74 -0
- package/dist/practices/pnpm/bad-practices/stale-patched-dependency/patches/<star>.patch.declapract.ts +41 -0
- package/dist/practices/pnpm/best-practice/package.json +5 -1
- package/dist/practices/pnpm/best-practice/package.json.declapract.ts +7 -0
- package/dist/practices/pnpm/stale-patched-dependency.declapract.integration.test.ts +82 -0
- package/dist/practices/provision-github/.test/assets/demo-repo-implicit-privacy/declapract.declare.yml +4 -0
- package/dist/practices/provision-github/.test/assets/demo-repo-implicit-privacy/declapract.use.yml +5 -0
- package/dist/practices/provision-github/.test/assets/demo-repo-implicit-privacy/package.json +13 -0
- package/dist/practices/provision-github/__snapshots__/implicit-package-privacy.declapract.integration.test.ts.snap +36 -0
- package/dist/practices/provision-github/bad-practices/implicit-package-privacy/package.json.declapract.ts +73 -0
- package/dist/practices/provision-github/best-practice/.declapract.readme.md +12 -0
- package/dist/practices/provision-github/best-practice/provision/github.repo/resources.ts +18 -33
- package/dist/practices/provision-github/implicit-package-privacy.declapract.integration.test.ts +68 -0
- package/dist/practices/rhachet/.declapract.integration.test.ts +3 -3
- package/dist/practices/rhachet/.test/assets/demo-repo-with-consumer-boot/.agent/repo=.this/role=any/boot.yml +2 -0
- package/dist/practices/rhachet/.test/assets/demo-repo-with-consumer-boot/declapract.declare.yml +3 -3
- package/dist/practices/rhachet/.test/assets/repo-keyrack-extant/.agent/keyrack.yml +9 -0
- package/dist/practices/rhachet/.test/assets/repo-keyrack-extant/declapract.use.node.yml +4 -0
- package/dist/practices/rhachet/.test/assets/repo-keyrack-extant/declapract.use.yml +4 -0
- package/dist/practices/rhachet/.test/assets/repo-keyrack-extant/package.json +4 -0
- package/dist/practices/rhachet/.test/assets/repo-self-linked/declapract.use.yml +4 -0
- package/dist/practices/rhachet/.test/assets/repo-self-linked/package.json +22 -0
- package/dist/practices/rhachet/__snapshots__/.declapract.integration.test.ts.snap +6 -5
- package/dist/practices/rhachet/__snapshots__/boot-yml-findsert.declapract.integration.test.ts.snap +6 -0
- package/dist/practices/rhachet/__snapshots__/keyrack-yml-findsert.declapract.integration.test.ts.snap +28 -0
- package/dist/practices/rhachet/__snapshots__/self-link-build-order.declapract.integration.test.ts.snap +81 -0
- package/dist/practices/rhachet/bad-practices/prod-deps/.test/assets/demo-repo-with-rhachet-prod-deps/declapract.declare.yml +3 -3
- package/dist/practices/rhachet/best-practice/.agent/keyrack.yml.declapract.ts +142 -2
- package/dist/practices/rhachet/best-practice/.agent/repo=.this/role=any/boot.yml +13 -37
- package/dist/practices/rhachet/best-practice/.agent/repo=.this/role=any/boot.yml.declapract.ts +91 -67
- package/dist/practices/rhachet/best-practice/.gitignore.declapract.ts +21 -4
- package/dist/practices/rhachet/best-practice/package.json +6 -5
- package/dist/practices/rhachet/best-practice/package.json.declapract.ts +49 -1
- package/dist/practices/rhachet/boot-refs-glossary.declapract.integration.test.ts +3 -1
- package/dist/practices/rhachet/boot-yml-findsert.declapract.integration.test.ts +11 -7
- package/dist/practices/rhachet/keyrack-yml-findsert.declapract.integration.test.ts +105 -0
- package/dist/practices/rhachet/self-link-build-order.declapract.integration.test.ts +88 -0
- package/dist/practices/runtime-schemas/bad-practices/joi/.declapract.integration.test.ts +68 -0
- package/dist/practices/runtime-schemas/bad-practices/joi/.test/assets/demo-repo-with-joi/src/contract/schemas/widget.schema.ts +2 -1
- package/dist/practices/runtime-schemas/bad-practices/joi/.test/assets/demo-repo-with-joi-deps/declapract.use.yml +4 -0
- package/dist/practices/runtime-schemas/bad-practices/joi/.test/assets/demo-repo-with-joi-deps/package.json +14 -0
- package/dist/practices/runtime-schemas/bad-practices/joi/__snapshots__/.declapract.integration.test.ts.snap +43 -3
- package/dist/practices/runtime-schemas/bad-practices/joi/package.json.declapract.ts +27 -5
- package/dist/practices/runtime-schemas/bad-practices/joi/src/<star><star>/<star>.ts.declapract.ts +52 -4
- package/dist/practices/runtime-schemas/best-practice/package.json +1 -1
- package/dist/practices/runtime-schemas/best-practice/package.json.declapract.ts +123 -2
- package/dist/practices/serverless/.declapract.integration.test.ts +217 -4
- package/dist/practices/serverless/.test/assets/demo-repo-with-serverless/declapract.declare.yml +3 -3
- package/dist/practices/serverless/__snapshots__/divergentStageGuard.declapract.integration.test.ts.snap +5 -3
- package/dist/practices/serverless/best-practice/.declapract.readme.md +2 -2
- package/dist/practices/serverless/best-practice/package.json +6 -5
- package/dist/practices/serverless/best-practice/serverless.yml +1 -1
- package/dist/practices/serverless/best-practice/serverless.yml.declapract.ts +45 -19
- package/dist/practices/serverless/deployment-bucket-account-scoped.declapract.integration.test.ts +1 -1
- package/dist/practices/serverless/getOneLambdaNodeRuntime.ts +50 -0
- package/dist/practices/serverless/if-env-unfloored.declapract.integration.test.ts +41 -0
- package/dist/practices/terraform-aws/best-practice/provision/aws/environments/test/main.tf.declapract.ts +73 -0
- package/dist/practices/terraform-common/best-practice/.terraform-version +1 -1
- package/dist/practices/tests-any/.test/assets/repo-old-acceptance-utils/blackbox/lambdas/consumeSESEmailEventFromSNS.acceptance.test.ts +23 -0
- package/dist/practices/tests-any/.test/assets/repo-old-acceptance-utils/declapract.use.yml +9 -0
- package/dist/practices/tests-any/.test/assets/repo-old-acceptance-utils/package.json +4 -0
- package/dist/practices/tests-any/.test/assets/repo-old-acceptance-utils-2/blackbox/lambdas/addDecoratedImage.acceptance.test.ts +19 -0
- package/dist/practices/tests-any/.test/assets/repo-old-acceptance-utils-2/declapract.use.yml +9 -0
- package/dist/practices/tests-any/.test/assets/repo-old-acceptance-utils-2/package.json +4 -0
- package/dist/practices/tests-any/.test/assets/repo-old-acceptance-utils-3/blackbox/lambdas/addDecoratedImage.acceptance.test.ts +19 -0
- package/dist/practices/tests-any/.test/assets/repo-old-acceptance-utils-3/declapract.use.yml +9 -0
- package/dist/practices/tests-any/.test/assets/repo-old-acceptance-utils-3/package.json +4 -0
- package/dist/practices/tests-any/__snapshots__/livedb-wake-branches.declapract.integration.test.ts.snap +6 -0
- package/dist/practices/tests-any/__snapshots__/old-acceptance-test-utils.declapract.integration.test.ts.snap +162 -0
- package/dist/practices/tests-any/__snapshots__/test-kind-seam.declapract.integration.test.ts.snap +9 -0
- package/dist/practices/tests-any/autoprune-hooks.declapract.integration.test.ts +9 -2
- package/dist/practices/tests-any/bad-practices/dev-tool-in-dependencies/.declapract.integration.test.ts +69 -0
- package/dist/practices/tests-any/bad-practices/dev-tool-in-dependencies/.declapract.readme.md +19 -0
- package/dist/practices/tests-any/bad-practices/dev-tool-in-dependencies/.test/assets/demo-repo-with-stale-test-fns-dep/declapract.use.yml +3 -0
- package/dist/practices/tests-any/bad-practices/dev-tool-in-dependencies/.test/assets/demo-repo-with-stale-test-fns-dep/package.json +11 -0
- package/dist/practices/tests-any/bad-practices/dev-tool-in-dependencies/__snapshots__/.declapract.integration.test.ts.snap +43 -0
- package/dist/practices/tests-any/bad-practices/dev-tool-in-dependencies/package.json.declapract.ts +81 -0
- package/dist/practices/tests-any/bad-practices/old-acceptance-dir-location/.declapract.integration.test.ts +25 -5
- package/dist/practices/tests-any/bad-practices/old-acceptance-dir-location/.test/assets/demo-repo-with-accept-blackbox-dir/declapract.use.yml +3 -2
- package/dist/practices/tests-any/bad-practices/old-acceptance-test-utils/blackbox/lambdas/<star>.ts.declapract.ts +30 -25
- package/dist/practices/tests-any/bad-practices/old-acceptance-test-utils-2/blackbox/lambdas/<star>.ts.declapract.ts +10 -5
- package/dist/practices/tests-any/bad-practices/old-acceptance-test-utils-3/blackbox/lambdas/<star>.ts.declapract.ts +10 -5
- package/dist/practices/tests-any/best-practice/package.json +2 -1
- package/dist/practices/tests-any/best-practice/src/.test/useWakeOfLivedb.ts +209 -0
- package/dist/practices/tests-any/best-practice/src/<star><star>/<star>.integration.test.ts.declapract.ts +7 -2
- package/dist/practices/tests-any/best-practice/src/<star><star>/<star>.test.ts.declapract.ts +6 -2
- package/dist/practices/tests-any/build-ifstale.declapract.integration.test.ts +124 -0
- package/dist/practices/tests-any/livedb-wake-branches.declapract.integration.test.ts +315 -0
- package/dist/practices/tests-any/old-acceptance-test-utils.declapract.integration.test.ts +122 -0
- package/dist/practices/tests-any/test-kind-seam.declapract.integration.test.ts +87 -0
- package/dist/practices/tests-expo/.declapract.integration.test.ts +60 -7
- package/dist/practices/tests-expo/__snapshots__/.declapract.integration.test.ts.snap +117 -9
- package/dist/practices/tests-expo/__snapshots__/package.json.declapract.integration.test.ts.snap +5 -5
- package/dist/practices/tests-expo/autoprune-subpath-types.declapract.integration.test.ts +108 -0
- package/dist/practices/tests-expo/best-practice/jest.acceptance.config.ts +14 -3
- package/dist/practices/tests-expo/best-practice/jest.acceptance.prepare.ts +31 -0
- package/dist/practices/tests-expo/best-practice/jest.integration.config.ts +14 -3
- package/dist/practices/tests-expo/best-practice/jest.integration.prepare.ts +29 -0
- package/dist/practices/tests-expo/best-practice/jest.unit.config.ts +10 -1
- package/dist/practices/tests-expo/best-practice/package.json.declapract.ts +17 -2
- package/dist/practices/tests-expo/best-practice/src/.test/assets/test-fns.autoprune.d.ts +14 -0
- package/dist/practices/tests-node/bad-practices/deprecated-test-deps/package.json.declapract.ts +13 -3
- package/dist/practices/tests-node/best-practice/jest.acceptance.config.ts +11 -1
- package/dist/practices/tests-node/best-practice/jest.acceptance.env.ts +20 -10
- package/dist/practices/tests-node/best-practice/jest.acceptance.prepare.ts +27 -12
- package/dist/practices/tests-node/best-practice/jest.integration.config.ts +11 -1
- package/dist/practices/tests-node/best-practice/jest.integration.env.db.ts +5 -1
- package/dist/practices/tests-node/best-practice/jest.integration.env.ts +6 -9
- package/dist/practices/tests-node/best-practice/jest.integration.env.ts.declapract.ts +82 -0
- package/dist/practices/tests-node/best-practice/jest.integration.prepare.ts +22 -11
- package/dist/practices/tests-node/best-practice/jest.unit.config.ts +10 -1
- package/dist/practices/tests-node/best-practice/jest.unit.env.ts +1 -1
- package/dist/practices/tests-node/best-practice/jest.unit.env.ts.declapract.ts +30 -5
- package/dist/practices/tests-node/best-practice/src/.test/assets/database/useTestdbPortOverride.ts +61 -0
- package/dist/practices/tests-node/best-practice/src/.test/useKeyrack.ts +185 -52
- package/dist/practices/tests-node/best-practice/src/.test/useWakeOfTestdb.ts +28 -3
- package/dist/practices/tests-node/catch-cause-narrowed.declapract.integration.test.ts +70 -0
- package/dist/practices/tests-node/livedb-wake-prepare.declapract.integration.test.ts +140 -34
- package/dist/practices/tests-node/testdb-port-override.declapract.integration.test.ts +184 -0
- package/dist/practices/tests-node/testdb-preflight-branches.declapract.integration.test.ts +76 -18
- package/dist/practices/tests-service/__snapshots__/package.json.declapract.integration.test.ts.snap +1 -7
- package/dist/practices/tests-service/bad-practices/simple-lambda-testing-methods/.declapract.integration.test.ts +83 -0
- package/dist/practices/tests-service/bad-practices/simple-lambda-testing-methods/.test/assets/demo-repo-on-retired-lib/blackbox/lambdas/getWidget.acceptance.test.ts +21 -0
- package/dist/practices/tests-service/bad-practices/simple-lambda-testing-methods/.test/assets/demo-repo-on-retired-lib/declapract.use.yml +5 -0
- package/dist/practices/tests-service/bad-practices/simple-lambda-testing-methods/.test/assets/demo-repo-on-retired-lib/package.json +7 -0
- package/dist/practices/tests-service/bad-practices/simple-lambda-testing-methods/__snapshots__/.declapract.integration.test.ts.snap +76 -0
- package/dist/practices/tests-service/bad-practices/simple-lambda-testing-methods/blackbox/<star><star>/<star>.ts.declapract.ts +23 -0
- package/dist/practices/tests-service/bad-practices/simple-lambda-testing-methods/package.json.declapract.ts +66 -0
- package/dist/practices/tests-service/bad-practices/simple-lambda-testing-methods/src/<star><star>/<star>.ts.declapract.ts +23 -0
- package/dist/practices/tests-service/best-practice/.declapract.readme.md +37 -13
- package/dist/practices/tests-service/best-practice/blackbox/<star><star>/<star>.acceptance.test.ts.declapract.ts +7 -2
- package/dist/practices/tests-service/best-practice/blackbox/lambdas/<star>.acceptance.test.ts.declapract.ts +19 -9
- package/dist/practices/tests-service/best-practice/package.json +0 -3
- package/dist/practices/tests-service/best-practice/src/<star><star>/<star>.integration.test.ts.declapract.ts +7 -2
- package/dist/practices/tests-service/best-practice/src/<star><star>/<star>.test.ts.declapract.ts +6 -2
- package/dist/practices/typescript-any/__snapshots__/tool-swap-removals.declapract.integration.test.ts.snap +57 -0
- package/dist/practices/typescript-any/bad-practices/legacy-tsconfig-lib/.declapract.readme.md +7 -0
- package/dist/practices/typescript-any/bad-practices/legacy-tsconfig-lib/tsconfig.json.declapract.ts +105 -0
- package/dist/practices/typescript-any/bad-practices/relative-imports/src/<star><star>/<star>.ts.declapract.ts +28 -11
- package/dist/practices/typescript-any/bad-practices/ts-node-beside-esbuild-register/.declapract.readme.md +6 -0
- package/dist/practices/typescript-any/bad-practices/ts-node-beside-esbuild-register/package.json.declapract.ts +127 -0
- package/dist/practices/typescript-any/tool-swap-removals.declapract.integration.test.ts +96 -0
- package/dist/practices/typescript-expo/__snapshots__/metro.config.js.declapract.integration.test.ts.snap +60 -0
- package/dist/practices/typescript-expo/__snapshots__/package.json.declapract.integration.test.ts.snap +1 -1
- package/dist/practices/typescript-expo/best-practice/metro.config.js +40 -0
- package/dist/practices/typescript-expo/best-practice/metro.config.js.declapract.ts +101 -0
- package/dist/practices/typescript-expo/best-practice/package.json +1 -1
- package/dist/practices/typescript-expo/best-practice/package.json.declapract.ts +1 -1
- package/dist/practices/typescript-expo/metro.config.js.declapract.integration.test.ts +111 -0
- package/dist/practices/typescript-expo/package.json.declapract.integration.test.ts +17 -0
- package/dist/practices/typescript-node/bad-practices/node-lts-strictest/.declapract.readme.md +5 -0
- package/dist/practices/typescript-node/bad-practices/node-lts-strictest/package.json.declapract.ts +90 -0
- package/dist/practices/typescript-node/best-practice/tsconfig.build.json +1 -1
- package/dist/provisionGithubWishPath.declapract.integration.test.ts +93 -0
- package/dist/snapshotsHostPathFree.declapract.integration.test.ts +34 -0
- package/dist/stageAccessBridge.declapract.integration.test.ts +30 -66
- package/dist/terraformVersionPin.declapract.integration.test.ts +124 -0
- package/dist/typecheckBestPracticeTemplates.declapract.integration.test.ts +422 -0
- package/dist/useCases.rhachet-roles-package.declapract.integration.test.ts +43 -0
- package/dist/useCases.yml +11 -0
- package/dist/utils/__snapshots__/genUnmigratedParamPathsDeclaration.declapract.integration.test.ts.snap +15 -0
- package/dist/utils/actionPins/asActionPinTargetTag.ts +67 -0
- package/dist/utils/actionPins/bumpActionPins.play.declapract.integration.test.ts +94 -0
- package/dist/utils/actionPins/bumpActionPins.ts +172 -0
- package/dist/utils/asBareDeprecatedDirSpecifierReplacement.ts +83 -0
- package/dist/utils/asDatabaseClusterName.ts +37 -0
- package/dist/utils/asInputToContextReviewMarker.ts +14 -0
- package/dist/utils/asJsonMergedDeep.ts +69 -0
- package/dist/utils/asObjectLiteralProps.ts +44 -0
- package/dist/utils/asPresenceCheck.ts +18 -0
- package/dist/utils/asSourceOnRunLambdaEndpoint.declapract.integration.test.ts +84 -0
- package/dist/utils/asSourceOnRunLambdaEndpoint.ts +349 -0
- package/dist/utils/asTemplateFingerprint.ts +61 -0
- package/dist/utils/asTestKindPresenceCheck.declapract.integration.test.ts +71 -0
- package/dist/utils/asTestKindPresenceCheck.ts +43 -0
- package/dist/utils/asWorkflowMergedByJob.ts +245 -0
- package/dist/utils/asWorkflowParts.ts +43 -0
- package/dist/utils/defineExpectedContentsWithUsecaseInserts.ts +60 -0
- package/dist/utils/defineExpectedGitignoreContents.ts +126 -14
- package/dist/utils/genRdsConfigDeclaration.ts +171 -0
- package/dist/utils/genTempRepoWithDeclarationsOutside.ts +53 -0
- package/dist/utils/genUnmigratedParamPathsDeclaration.declapract.integration.test.ts +95 -0
- package/dist/utils/genUnmigratedParamPathsDeclaration.ts +70 -0
- package/dist/utils/getAllJsonDriftPaths.ts +42 -0
- package/dist/utils/getAllStalePatchKeys.ts +45 -0
- package/dist/utils/getAllVersionsByPackageFromLockfile.ts +71 -0
- package/dist/utils/getAllWorkflowJobDrifts.ts +97 -0
- package/dist/utils/getFileTextOrNull.integration.test.ts +28 -0
- package/dist/utils/getFileTextOrNull.ts +15 -0
- package/dist/utils/getModuleExportsFromTsSource.ts +34 -0
- package/dist/utils/getOneContentionSetFromLockfile.ts +16 -0
- package/dist/utils/getOneSourceScanEnd.ts +100 -0
- package/dist/utils/isConfigShapeDivergent.ts +61 -0
- package/dist/utils/isPackageImportedInRepo.ts +39 -0
- package/dist/utils/isVersionBelowFloor.ts +33 -0
- package/dist/utils/migrateDevConfigToPrep.ts +6 -6
- package/dist/utils/withEachCallRewritten.ts +53 -0
- package/dist/utils/withGetDatabaseConnectionRepointed.ts +121 -0
- package/dist/utils/withPgClientSslDeclared.ts +190 -0
- package/dist/utils/withReviewMarkerAbove.ts +43 -0
- package/dist/utils/zodVersionPinned.ts +9 -0
- package/dist/workflowJobScopeIdToken.declapract.integration.test.ts +236 -0
- package/dist/workflowPrBuild.declapract.integration.test.ts +240 -0
- package/package.json +12 -8
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/__snapshots__/ssm-cicd-param-names.declapract.integration.test.ts.snap +0 -10
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/with-connection-in-input/src/utils/database/withDatabaseConnection.ts +0 -3
- package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/ssm-cicd-param-names.declapract.integration.test.ts +0 -73
- package/dist/.test/assets/expo/declarations/practices/cicd-app-react-native-expo/best-practice/.github/workflows/test.yml +0 -25
- package/dist/.test/assets/expo-fullusecase/declarations/practices/cicd-app-react-native-expo/best-practice/.github/workflows/test.yml +0 -25
- package/dist/.test/assets/expo-fullusecase/declarations/practices/conventional-commits/best-practice/.husky/check.commit.sh +0 -7
- package/dist/.test/assets/expo-fullusecase/declarations/practices/conventional-commits/best-practice/.husky/commit-msg +0 -8
- 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 +0 -4
- package/dist/.test/assets/expo-migration/declarations/practices/cicd-app-react-native-expo/best-practice/.github/workflows/test.yml +0 -25
- 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 +0 -4
- 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 +0 -4
- package/dist/.test/assets/format/declarations/practices/terraform-common/best-practice/package.json +0 -6
- package/dist/practices/cicd-app-react-native-expo/best-practice/.github/workflows/test.yml +0 -25
- package/dist/practices/config/best-practice/provision/aws/product/variables.tf +0 -3
- package/dist/practices/config/best-practice/src/utils/environment.ts +0 -9
- package/dist/practices/config/best-practice/src/utils/environment.ts.declapract.ts +0 -11
- package/dist/practices/conventional-commits/best-practice/.husky/check.commit.sh +0 -7
- package/dist/practices/conventional-commits/best-practice/.husky/commit-msg +0 -8
- package/dist/practices/dates-and-times/bad-practices/moment/package.json.declapract.ts +0 -12
- package/dist/practices/lint-react-native/best-practice/.eslintrc.js +0 -57
- package/dist/practices/persist-with-dynamodb/.test/assets/demo-repo-with-divergent-jest-env/declapract.declare.yml +0 -4
- package/dist/practices/persist-with-dynamodb/.test/assets/demo-repo-with-divergent-jest-env/declapract.use.yml +0 -2
- package/dist/practices/persist-with-dynamodb/.test/assets/demo-repo-with-divergent-jest-env/jest.integration.env.ts +0 -4
- package/dist/practices/persist-with-dynamodb/best-practice/jest.integration.env.ts +0 -7
- package/dist/practices/persist-with-dynamodb/best-practice/provision/aws/environments/test/main.tf +0 -3
- package/dist/practices/persist-with-dynamodb/best-practice/provision/aws/environments/test/main.tf.declapract.ts +0 -3
- package/dist/practices/persist-with-rds/__snapshots__/ssm-cicd-param-names.declapract.integration.test.ts.snap +0 -10
- package/dist/practices/persist-with-rds/bad-practices/with-connection-in-input/src/utils/database/withDatabaseConnection.ts +0 -3
- package/dist/practices/persist-with-rds/ssm-cicd-param-names.declapract.integration.test.ts +0 -73
- package/dist/practices/terraform-common/best-practice/package.json +0 -6
- package/dist/practices/tests-any/bad-practices/old-acceptance-dir-location/.test/assets/demo-repo-with-accept-blackbox-dir/declapract.declare.yml +0 -4
- /package/dist/.test/assets/{format/declarations/practices/terraform-common → artifact-only/declarations/practices/artifact}/best-practice/package.json.declapract.ts +0 -0
- /package/dist/{practices/terraform-common → .test/assets/cicd-app-react-native-expo/declarations/practices/cicd-app-react-native-expo}/best-practice/package.json.declapract.ts +0 -0
- /package/dist/{practices/persist-with-dynamodb/.test/assets/demo-repo-with-divergent-jest-env → .test/assets/cicd-service/declarations/practices/cicd-service/.test/assets/demo-repo-pre-oidc}/package.json +0 -0
- /package/dist/.test/assets/cicd-service/declarations/practices/persist-with-rds/bad-practices/non-prefixed-manual-init-sqls/{readme.md → .declapract.readme.md} +0 -0
- /package/dist/{practices/config/best-practice/provision/aws/product/variables.tf.declapract.ts → .test/assets/dates-and-times/declarations/practices/dates-and-times/best-practice/package.json.declapract.ts} +0 -0
- /package/dist/{practices/tests-node → .test/assets/expo-fullusecase/declarations/practices/tests-any}/__snapshots__/livedb-wake-branches.declapract.integration.test.ts.snap +0 -0
- /package/dist/{practices/environments-aws/best-practice/provision/aws/environments/dev/main.tf.declapract.ts → .test/assets/lint/declarations/practices/lint/bad-practices/eslint/.eslintrc.js.declapract.ts} +0 -0
- /package/dist/{practices/environments-aws/best-practice/provision/aws/environments/prod/main.tf.declapract.ts → .test/assets/lint/declarations/practices/lint/bad-practices/tslint/tslint.json.declapract.ts} +0 -0
- /package/dist/{practices/environments-aws/best-practice/provision/aws/environments/test/main.tf.declapract.ts → .test/assets/nonpublished-modules/declarations/practices/nonpublished-modules/bad-practices/ahbode-standard-lambda-handler/src/__nonpublished_modules__/ahbode-standard-lambda-handler/<star><star>/<star>.ts.declapract.ts} +0 -0
- /package/dist/practices/persist-with-rds/bad-practices/non-prefixed-manual-init-sqls/{readme.md → .declapract.readme.md} +0 -0
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
import { execFileSync, spawnSync } from 'node:child_process';
|
|
2
|
+
import fs from 'node:fs';
|
|
3
|
+
import os from 'node:os';
|
|
4
|
+
import path from 'node:path';
|
|
5
|
+
|
|
6
|
+
import { given, then, when } from 'test-fns';
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* .what = integration test for the check.secrets husky guard (#514)
|
|
10
|
+
* .why = proves the guard halts a commit whose staged blob holds a key shape, names the
|
|
11
|
+
* file + line + shape (never the key), and lets clean files and look-alikes through
|
|
12
|
+
* .note = each fake key is assembled at runtime, so this source file never holds a key shape
|
|
13
|
+
* itself — a repo that adopts the guard can still commit its own tests
|
|
14
|
+
*/
|
|
15
|
+
|
|
16
|
+
// the guard under test (the distributed best-practice template)
|
|
17
|
+
const guardPath = path.join(__dirname, 'best-practice/.husky/check.secrets.sh');
|
|
18
|
+
|
|
19
|
+
// assemble a fake key from a prefix and a tail of repeated chars
|
|
20
|
+
const asFakeKey = (input: { prefix: string; tail: string; length: number }) =>
|
|
21
|
+
input.prefix + input.tail.repeat(input.length);
|
|
22
|
+
|
|
23
|
+
// build a fresh temp git repo with the given files staged
|
|
24
|
+
const genStagedRepo = (files: Record<string, string>): string => {
|
|
25
|
+
const dir = fs.mkdtempSync(path.join(os.tmpdir(), 'check-secrets-'));
|
|
26
|
+
execFileSync('git', ['init', '-q'], { cwd: dir });
|
|
27
|
+
for (const [name, content] of Object.entries(files)) {
|
|
28
|
+
const full = path.join(dir, name);
|
|
29
|
+
fs.mkdirSync(path.dirname(full), { recursive: true });
|
|
30
|
+
fs.writeFileSync(full, content);
|
|
31
|
+
execFileSync('git', ['add', '--', name], { cwd: dir });
|
|
32
|
+
}
|
|
33
|
+
return dir;
|
|
34
|
+
};
|
|
35
|
+
|
|
36
|
+
// spawn the guard against a repo; return its exit code + streams
|
|
37
|
+
const runGuard = (
|
|
38
|
+
dir: string,
|
|
39
|
+
): { code: number | null; stdout: string; stderr: string } => {
|
|
40
|
+
const res = spawnSync('bash', [guardPath], { cwd: dir, encoding: 'utf-8' });
|
|
41
|
+
return { code: res.status, stdout: res.stdout, stderr: res.stderr };
|
|
42
|
+
};
|
|
43
|
+
|
|
44
|
+
describe('check.secrets guard', () => {
|
|
45
|
+
given('[case1] a staged debug file that holds a fireworks key (the #514 incident)', () => {
|
|
46
|
+
const key = asFakeKey({ prefix: 'fw_', tail: 'aB3', length: 10 });
|
|
47
|
+
const result = runGuard(
|
|
48
|
+
genStagedRepo({ '.cache/debug.env': `# debug\nFIREWORKS_API_KEY='${key}'\n` }),
|
|
49
|
+
);
|
|
50
|
+
|
|
51
|
+
when('[t0] the guard runs', () => {
|
|
52
|
+
then('it halts with exit 2', () => {
|
|
53
|
+
expect(result.code).toEqual(2);
|
|
54
|
+
});
|
|
55
|
+
then('it names the file, the line, and the shape on stderr', () => {
|
|
56
|
+
expect(result.stderr).toContain('✋ ConstraintError: a secret key shape is staged');
|
|
57
|
+
expect(result.stderr).toContain(' ├─ shape: fireworks key');
|
|
58
|
+
expect(result.stderr).toContain(' └─ .cache/debug.env:2');
|
|
59
|
+
});
|
|
60
|
+
then('it never echoes the key itself', () => {
|
|
61
|
+
expect(result.stderr).not.toContain(key);
|
|
62
|
+
expect(result.stdout).not.toContain(key);
|
|
63
|
+
});
|
|
64
|
+
then('the halt output matches snapshot', () => {
|
|
65
|
+
expect(result.stderr).toMatchSnapshot('check.secrets halt output');
|
|
66
|
+
});
|
|
67
|
+
});
|
|
68
|
+
});
|
|
69
|
+
|
|
70
|
+
given('[case2] the halt table — each key shape the guard knows', () => {
|
|
71
|
+
const haltTable = [
|
|
72
|
+
{ shape: 'aws access key id', line: `id = ${asFakeKey({ prefix: 'AKIA', tail: 'Q7', length: 8 })}` },
|
|
73
|
+
{ shape: 'private key block', line: `${'-----BEGIN'} RSA ${'PRIVATE KEY-----'}` },
|
|
74
|
+
{ shape: 'github token', line: `token: ${asFakeKey({ prefix: 'ghp_', tail: 'aZ9', length: 13 })}` },
|
|
75
|
+
{ shape: 'openai-style key', line: `key=${asFakeKey({ prefix: 'sk-', tail: 'aZ9', length: 10 })}` },
|
|
76
|
+
{ shape: 'xai key', line: `XAI_API_KEY=${asFakeKey({ prefix: 'xai-', tail: 'aZ9', length: 10 })}` },
|
|
77
|
+
{ shape: 'slack token', line: `hook ${asFakeKey({ prefix: 'xoxb-', tail: '12', length: 8 })}` },
|
|
78
|
+
];
|
|
79
|
+
haltTable.forEach((row) => {
|
|
80
|
+
when(`[t0] the guard runs on a ${row.shape}`, () => {
|
|
81
|
+
const result = runGuard(genStagedRepo({ 'config.md': `${row.line}\n` }));
|
|
82
|
+
|
|
83
|
+
then('it halts with exit 2, and names the shape', () => {
|
|
84
|
+
expect(result.code).toEqual(2);
|
|
85
|
+
expect(result.stderr).toContain(` ├─ shape: ${row.shape}`);
|
|
86
|
+
});
|
|
87
|
+
});
|
|
88
|
+
});
|
|
89
|
+
});
|
|
90
|
+
|
|
91
|
+
given('[case3] the pass table — values that resemble a key but are not one', () => {
|
|
92
|
+
const passTable = [
|
|
93
|
+
{ form: 'a placeholder env line', line: 'FIREWORKS_API_KEY=__set_me__' },
|
|
94
|
+
{ form: 'an env read', line: 'const key = process.env.XAI_API_KEY;' },
|
|
95
|
+
{ form: 'a short prefix word', line: 'a risk-assessment and a disk-usage report' },
|
|
96
|
+
{ form: 'a ci secret ref', line: 'API_KEY: ${{ secrets.API_KEY }}' },
|
|
97
|
+
{ form: 'a lockfile integrity hash', line: 'integrity: sha512-Ab3Ab3Ab3Ab3Ab3Ab3Ab3Ab3Ab3Ab3Ab3==' },
|
|
98
|
+
];
|
|
99
|
+
passTable.forEach((row) => {
|
|
100
|
+
when(`[t0] the guard runs on ${row.form}`, () => {
|
|
101
|
+
const result = runGuard(genStagedRepo({ 'notes.md': `${row.line}\n` }));
|
|
102
|
+
|
|
103
|
+
then('it allows the commit with exit 0', () => {
|
|
104
|
+
expect(result.code).toEqual(0);
|
|
105
|
+
expect(result.stderr).toEqual('');
|
|
106
|
+
});
|
|
107
|
+
});
|
|
108
|
+
});
|
|
109
|
+
});
|
|
110
|
+
|
|
111
|
+
given('[case4] no staged file holds a key', () => {
|
|
112
|
+
when('[t0] the guard runs', () => {
|
|
113
|
+
const result = runGuard(genStagedRepo({ 'readme.md': 'hello\n' }));
|
|
114
|
+
|
|
115
|
+
then('it allows the commit with exit 0', () => {
|
|
116
|
+
expect(result.code).toEqual(0);
|
|
117
|
+
});
|
|
118
|
+
});
|
|
119
|
+
});
|
|
120
|
+
});
|
|
@@ -0,0 +1,220 @@
|
|
|
1
|
+
import { execFileSync, spawnSync } from 'node:child_process';
|
|
2
|
+
import fs from 'node:fs';
|
|
3
|
+
import path from 'node:path';
|
|
4
|
+
|
|
5
|
+
import { executeApply } from 'declapract';
|
|
6
|
+
import { genTempDir, given, then, useThen, when } from 'test-fns';
|
|
7
|
+
|
|
8
|
+
import { asGitBlobId } from './best-practice/.husky/check.timestamps.lock.sh.declapract';
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* .what = end-to-end proof of the timestamp lock: a second husky hook that halts every commit
|
|
12
|
+
* while .husky/check.timestamps.sh differs from the practice's declared copy
|
|
13
|
+
* .why = the timestamp hook takes zero exemptions, by design — a timestamp in a tracked file a
|
|
14
|
+
* privacy leak. a hand edit that softens the hook (here, a
|
|
15
|
+
* `.goals/*` exemption) must halt loud and say revert, never slip through
|
|
16
|
+
* .how = clone a demo repo whose hook was hand-softened; apply the husky practice through the real
|
|
17
|
+
* declapract pipeline; run the lock against the repo before and after the hook is restored
|
|
18
|
+
*/
|
|
19
|
+
|
|
20
|
+
// the declared timestamp hook template
|
|
21
|
+
const hookTemplatePath = path.join(
|
|
22
|
+
__dirname,
|
|
23
|
+
'best-practice/.husky/check.timestamps.sh',
|
|
24
|
+
);
|
|
25
|
+
|
|
26
|
+
// mask the blob id so the snapshot vibechecks the shape, not the hook's current bytes
|
|
27
|
+
const asMaskedBlob = (text: string): string =>
|
|
28
|
+
text.replace(/[0-9a-f]{40}/g, '[blob]');
|
|
29
|
+
|
|
30
|
+
describe('check.timestamps.lock', () => {
|
|
31
|
+
given('[case1] the blob id transformer', () => {
|
|
32
|
+
when('[t0] it hashes the declared hook template', () => {
|
|
33
|
+
then('it equals the id `git hash-object` reports for the same file', () => {
|
|
34
|
+
const viaGit = execFileSync('git', ['hash-object', '--', hookTemplatePath], {
|
|
35
|
+
encoding: 'utf-8',
|
|
36
|
+
}).trim();
|
|
37
|
+
const viaFn = asGitBlobId({
|
|
38
|
+
contents: fs.readFileSync(hookTemplatePath, 'utf-8'),
|
|
39
|
+
});
|
|
40
|
+
expect(viaFn).toEqual(viaGit);
|
|
41
|
+
});
|
|
42
|
+
});
|
|
43
|
+
});
|
|
44
|
+
|
|
45
|
+
given('[case2] a repo whose timestamp hook was hand-softened with an exemption', () => {
|
|
46
|
+
const tempDir = genTempDir({
|
|
47
|
+
slug: 'declapract-husky-timestamps-lock',
|
|
48
|
+
clone:
|
|
49
|
+
'./src/practices/husky/.test/assets/demo-repo-with-edited-timestamp-hook',
|
|
50
|
+
symlink: [{ at: 'declarations', to: 'src' }],
|
|
51
|
+
});
|
|
52
|
+
const hookRel = '.husky/check.timestamps.sh';
|
|
53
|
+
const lockRel = '.husky/check.timestamps.lock.sh';
|
|
54
|
+
const read = (rel: string) => fs.readFileSync(path.join(tempDir, rel), 'utf-8');
|
|
55
|
+
const applyFile = (file: string) =>
|
|
56
|
+
executeApply({
|
|
57
|
+
config: path.join(tempDir, 'declapract.use.yml'),
|
|
58
|
+
practice: 'husky',
|
|
59
|
+
file,
|
|
60
|
+
});
|
|
61
|
+
const runLock = () => {
|
|
62
|
+
const res = spawnSync('bash', [lockRel], { cwd: tempDir, encoding: 'utf-8' });
|
|
63
|
+
return { code: res.status, stderr: res.stderr };
|
|
64
|
+
};
|
|
65
|
+
// pre-commit is `#!/bin/sh` and SOURCES the lock, so the lock must also hold under posix sh
|
|
66
|
+
const runLockSourcedBySh = () => {
|
|
67
|
+
const res = spawnSync('sh', ['-c', `. ./${lockRel}`, './.husky/pre-commit'], {
|
|
68
|
+
cwd: tempDir,
|
|
69
|
+
encoding: 'utf-8',
|
|
70
|
+
});
|
|
71
|
+
return { code: res.status, stderr: res.stderr };
|
|
72
|
+
};
|
|
73
|
+
|
|
74
|
+
when('[t0] the input (before any apply)', () => {
|
|
75
|
+
then('the softened hook carries the exemption, and matches snapshot', () => {
|
|
76
|
+
const before = read(hookRel);
|
|
77
|
+
expect(before).toContain('.goals/*) continue');
|
|
78
|
+
expect(before).toMatchSnapshot('check.timestamps.sh — before');
|
|
79
|
+
});
|
|
80
|
+
then('no lock exists yet', () => {
|
|
81
|
+
expect(fs.existsSync(path.join(tempDir, lockRel))).toEqual(false);
|
|
82
|
+
});
|
|
83
|
+
});
|
|
84
|
+
|
|
85
|
+
when('[t1] the lock is applied, the softened hook left in place', () => {
|
|
86
|
+
useThen('apply the lock', async () => {
|
|
87
|
+
await applyFile(lockRel);
|
|
88
|
+
execFileSync('git', ['init', '-q'], { cwd: tempDir });
|
|
89
|
+
});
|
|
90
|
+
|
|
91
|
+
then('the lock is stamped with the declared hook blob id, and matches snapshot', () => {
|
|
92
|
+
const lock = read(lockRel);
|
|
93
|
+
expect(lock).not.toContain('__EXPECTED_BLOB__');
|
|
94
|
+
expect(lock).toContain(
|
|
95
|
+
`TIMESTAMPS_LOCK_EXPECTED='${asGitBlobId({ contents: fs.readFileSync(hookTemplatePath, 'utf-8') })}'`,
|
|
96
|
+
);
|
|
97
|
+
expect(asMaskedBlob(lock)).toMatchSnapshot('check.timestamps.lock.sh — after');
|
|
98
|
+
});
|
|
99
|
+
|
|
100
|
+
then('the lock halts with exit 2 and says revert, zero exceptions', () => {
|
|
101
|
+
const result = runLock();
|
|
102
|
+
expect(result.code).toEqual(2);
|
|
103
|
+
expect(result.stderr).toContain(
|
|
104
|
+
'✋ ConstraintError: .husky/check.timestamps.sh was changed. revert the hook, zero exceptions — remove all timestamps',
|
|
105
|
+
);
|
|
106
|
+
expect(result.stderr).toContain('a privacy leak');
|
|
107
|
+
expect(result.stderr).not.toContain('permadrift');
|
|
108
|
+
expect(asMaskedBlob(result.stderr)).toMatchSnapshot('lock halt output — on disk');
|
|
109
|
+
});
|
|
110
|
+
|
|
111
|
+
then('the lock halts with exit 2 when sourced by posix sh, as pre-commit does', () => {
|
|
112
|
+
const result = runLockSourcedBySh();
|
|
113
|
+
expect(result.code).toEqual(2);
|
|
114
|
+
expect(result.stderr).toContain('revert the hook, zero exceptions');
|
|
115
|
+
});
|
|
116
|
+
});
|
|
117
|
+
|
|
118
|
+
when('[t2] the hook edit is staged, then reverted on disk only', () => {
|
|
119
|
+
useThen('stage the softened hook, then restore the declared hook on disk', async () => {
|
|
120
|
+
execFileSync('git', ['add', '--', hookRel], { cwd: tempDir });
|
|
121
|
+
fs.copyFileSync(hookTemplatePath, path.join(tempDir, hookRel));
|
|
122
|
+
});
|
|
123
|
+
|
|
124
|
+
then('the lock still halts — the index would commit the exemption', () => {
|
|
125
|
+
const result = runLock();
|
|
126
|
+
expect(result.code).toEqual(2);
|
|
127
|
+
expect(result.stderr).toContain('in the index');
|
|
128
|
+
expect(asMaskedBlob(result.stderr)).toMatchSnapshot('lock halt output — in the index');
|
|
129
|
+
});
|
|
130
|
+
});
|
|
131
|
+
|
|
132
|
+
when('[t3] the practice restores the hook', () => {
|
|
133
|
+
useThen('apply the hook, then stage it', async () => {
|
|
134
|
+
await applyFile(hookRel);
|
|
135
|
+
execFileSync('git', ['add', '--', hookRel], { cwd: tempDir });
|
|
136
|
+
});
|
|
137
|
+
|
|
138
|
+
then('the hook equals the declared template, byte for byte', () => {
|
|
139
|
+
// no snapshot here: the template's comments hold example stamps, and a .snap is a tracked
|
|
140
|
+
// file the timestamp hook scans. the byte-equal assert IS the full after-state proof
|
|
141
|
+
const after = read(hookRel);
|
|
142
|
+
expect(after).toEqual(fs.readFileSync(hookTemplatePath, 'utf-8'));
|
|
143
|
+
expect(after).not.toContain('.goals/');
|
|
144
|
+
});
|
|
145
|
+
|
|
146
|
+
then('the lock passes with exit 0', () => {
|
|
147
|
+
expect(runLock().code).toEqual(0);
|
|
148
|
+
});
|
|
149
|
+
|
|
150
|
+
then('the lock passes with exit 0 when sourced by posix sh, as pre-commit does', () => {
|
|
151
|
+
expect(runLockSourcedBySh().code).toEqual(0);
|
|
152
|
+
});
|
|
153
|
+
});
|
|
154
|
+
|
|
155
|
+
when('[t4] the index cannot be read', () => {
|
|
156
|
+
const indexPath = path.join(tempDir, '.git/index');
|
|
157
|
+
const result = useThen('corrupt the index, run the lock, then restore the index', async () => {
|
|
158
|
+
const indexBytes = fs.readFileSync(indexPath);
|
|
159
|
+
fs.writeFileSync(indexPath, 'not an index');
|
|
160
|
+
const outcome = runLock();
|
|
161
|
+
fs.writeFileSync(indexPath, indexBytes);
|
|
162
|
+
return outcome;
|
|
163
|
+
});
|
|
164
|
+
|
|
165
|
+
then('the lock halts as a malfunction (exit 1) and names the unreadable index, never reads it as unstaged', () => {
|
|
166
|
+
// the hook may be intact, so the halt blames the index, never asks to revert the hook
|
|
167
|
+
expect(result.code).toEqual(1);
|
|
168
|
+
expect(result.stderr).toContain('💥 MalfunctionError:');
|
|
169
|
+
expect(result.stderr).toContain('unreadable (in the index)');
|
|
170
|
+
expect(result.stderr).not.toContain('was changed');
|
|
171
|
+
expect(asMaskedBlob(result.stderr)).toMatchSnapshot('lock halt output — index unreadable');
|
|
172
|
+
});
|
|
173
|
+
});
|
|
174
|
+
|
|
175
|
+
when('[t5] the practice is applied again', () => {
|
|
176
|
+
const before = useThen('read the lock', async () => ({ lock: read(lockRel) }));
|
|
177
|
+
useThen('apply both files a second time', async () => {
|
|
178
|
+
await applyFile(lockRel);
|
|
179
|
+
await applyFile(hookRel);
|
|
180
|
+
});
|
|
181
|
+
|
|
182
|
+
then('the second apply is a no-op', () => {
|
|
183
|
+
expect(read(lockRel)).toEqual(before.lock);
|
|
184
|
+
expect(read(hookRel)).toEqual(fs.readFileSync(hookTemplatePath, 'utf-8'));
|
|
185
|
+
});
|
|
186
|
+
});
|
|
187
|
+
|
|
188
|
+
when('[t6] the hook is deleted', () => {
|
|
189
|
+
useThen('delete the hook', async () => {
|
|
190
|
+
fs.rmSync(path.join(tempDir, hookRel));
|
|
191
|
+
});
|
|
192
|
+
|
|
193
|
+
then('the lock halts with exit 2', () => {
|
|
194
|
+
const result = runLock();
|
|
195
|
+
expect(result.code).toEqual(2);
|
|
196
|
+
expect(result.stderr).toContain('absent');
|
|
197
|
+
expect(asMaskedBlob(result.stderr)).toMatchSnapshot('lock halt output — hook absent');
|
|
198
|
+
});
|
|
199
|
+
});
|
|
200
|
+
});
|
|
201
|
+
|
|
202
|
+
given('[case3] the declared timestamp hook, read as text', () => {
|
|
203
|
+
const hook = fs.readFileSync(hookTemplatePath, 'utf-8');
|
|
204
|
+
|
|
205
|
+
when('[t0] its skip list is inspected', () => {
|
|
206
|
+
then('the only skip is code that computes time: *.ts and *.sh, never a new path', () => {
|
|
207
|
+
// a clamp on the no-exemption rule: any new `case` arm, path glob, or allowlist reddens this
|
|
208
|
+
const skips = hook.match(/^\s*\*[^\n]*\)\s*continue\s*;;/gm) ?? [];
|
|
209
|
+
expect(skips).toEqual([' *.ts | *.sh) continue ;;']);
|
|
210
|
+
});
|
|
211
|
+
then('it never names permadrift, and it names the privacy reason', () => {
|
|
212
|
+
expect(hook).not.toContain('permadrift');
|
|
213
|
+
expect(hook).toContain('a privacy leak');
|
|
214
|
+
});
|
|
215
|
+
then('it declares, loud, that it takes no exemption', () => {
|
|
216
|
+
expect(hook).toContain('NEVER ADD AN EXEMPTION TO THIS HOOK');
|
|
217
|
+
});
|
|
218
|
+
});
|
|
219
|
+
});
|
|
220
|
+
});
|
|
@@ -31,10 +31,12 @@ const genStagedRepo = (files: Record<string, string>): string => {
|
|
|
31
31
|
return dir;
|
|
32
32
|
};
|
|
33
33
|
|
|
34
|
-
// spawn the guard against a repo; return its exit code +
|
|
35
|
-
const runGuard = (
|
|
36
|
-
|
|
37
|
-
|
|
34
|
+
// spawn the guard against a repo; return its exit code + streams
|
|
35
|
+
const runGuard = (input: {
|
|
36
|
+
dir: string;
|
|
37
|
+
}): { code: number | null; stdout: string; stderr: string } => {
|
|
38
|
+
const res = spawnSync('bash', [guardPath], { cwd: input.dir, encoding: 'utf-8' });
|
|
39
|
+
return { code: res.status, stdout: res.stdout, stderr: res.stderr };
|
|
38
40
|
};
|
|
39
41
|
|
|
40
42
|
describe('check.timestamps guard', () => {
|
|
@@ -43,26 +45,32 @@ describe('check.timestamps guard', () => {
|
|
|
43
45
|
const dir = genStagedRepo({
|
|
44
46
|
'snapshot.json': '{ "createdAt": "2026-06-25T14:30:00Z" }\n',
|
|
45
47
|
});
|
|
46
|
-
const result = runGuard(dir);
|
|
48
|
+
const result = runGuard({ dir });
|
|
47
49
|
|
|
48
50
|
then('it halts with exit 2', () => {
|
|
49
51
|
expect(result.code).toEqual(2);
|
|
50
52
|
});
|
|
51
|
-
then('it prints the verbatim constraint
|
|
52
|
-
expect(result.
|
|
53
|
-
'timestamps are forbidden in
|
|
53
|
+
then('it prints the verbatim constraint header on stderr (#681)', () => {
|
|
54
|
+
expect(result.stderr).toContain(
|
|
55
|
+
'✋ ConstraintError: timestamps are forbidden in tracked files, prose and docs included. remove them, zero exceptions',
|
|
56
|
+
);
|
|
57
|
+
expect(result.stdout).toEqual('');
|
|
58
|
+
});
|
|
59
|
+
then('it prints the why line beneath the header', () => {
|
|
60
|
+
expect(result.stderr).toContain(
|
|
61
|
+
' ├─ why: a timestamp is a privacy leak, and churns every diff',
|
|
54
62
|
);
|
|
55
63
|
});
|
|
56
64
|
then('it names the matched file', () => {
|
|
57
|
-
expect(result.
|
|
65
|
+
expect(result.stderr).toContain('snapshot.json');
|
|
58
66
|
});
|
|
59
67
|
then('it renders the matched file:line:content detail line', () => {
|
|
60
68
|
// locks the exact halt-output shape: tree-prefixed detail line
|
|
61
|
-
expect(result.
|
|
69
|
+
expect(result.stderr).toContain(
|
|
62
70
|
' └─ snapshot.json:1:{ "createdAt": "2026-06-25T14:30:00Z" }',
|
|
63
71
|
);
|
|
64
72
|
});
|
|
65
|
-
then('the
|
|
73
|
+
then('the halt output, its instant masked, matches snapshot', () => {
|
|
66
74
|
// user-faced halt message — a reword must redden a vibecheck, not slip past the
|
|
67
75
|
// toContain asserts above (rule.require.snapshots). the fixture timestamp is a fixed
|
|
68
76
|
// input (not a live clock), so the output is deterministic.
|
|
@@ -70,7 +78,7 @@ describe('check.timestamps guard', () => {
|
|
|
70
78
|
// this very guard (only .ts/.sh are exempt), so a raw instant here would forbid its own
|
|
71
79
|
// commit. the raw detail-line toContain above already locks the exact instant in the
|
|
72
80
|
// output; the snapshot vibechecks the message shape, per the guard's own mask remedy (case8).
|
|
73
|
-
const masked = result.
|
|
81
|
+
const masked = result.stderr.replace(
|
|
74
82
|
/\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}Z/g,
|
|
75
83
|
'[timestamp]',
|
|
76
84
|
);
|
|
@@ -82,7 +90,7 @@ describe('check.timestamps guard', () => {
|
|
|
82
90
|
given('[case2] a non-code file with a bare time (no lead T)', () => {
|
|
83
91
|
when('[t0] the guard runs', () => {
|
|
84
92
|
const dir = genStagedRepo({ 'doc.md': 'released at 14:30:00 today\n' });
|
|
85
|
-
const result = runGuard(dir);
|
|
93
|
+
const result = runGuard({ dir });
|
|
86
94
|
|
|
87
95
|
then('it halts with exit 2 (optional T prefix matches bare time)', () => {
|
|
88
96
|
expect(result.code).toEqual(2);
|
|
@@ -93,7 +101,7 @@ describe('check.timestamps guard', () => {
|
|
|
93
101
|
given('[case3] a .ts file with a timestamp', () => {
|
|
94
102
|
when('[t0] the guard runs', () => {
|
|
95
103
|
const dir = genStagedRepo({ 'time.ts': "const t = '14:30:00';\n" });
|
|
96
|
-
const result = runGuard(dir);
|
|
104
|
+
const result = runGuard({ dir });
|
|
97
105
|
|
|
98
106
|
then('it allows the commit with exit 0 (.ts is exempt)', () => {
|
|
99
107
|
expect(result.code).toEqual(0);
|
|
@@ -104,7 +112,7 @@ describe('check.timestamps guard', () => {
|
|
|
104
112
|
given('[case4] a .sh file with a timestamp', () => {
|
|
105
113
|
when('[t0] the guard runs', () => {
|
|
106
114
|
const dir = genStagedRepo({ 'log.sh': "echo 'at 14:30:00Z'\n" });
|
|
107
|
-
const result = runGuard(dir);
|
|
115
|
+
const result = runGuard({ dir });
|
|
108
116
|
|
|
109
117
|
then('it allows the commit with exit 0 (.sh is exempt)', () => {
|
|
110
118
|
expect(result.code).toEqual(0);
|
|
@@ -115,7 +123,7 @@ describe('check.timestamps guard', () => {
|
|
|
115
123
|
given('[case5] a clean non-code file with no timestamp', () => {
|
|
116
124
|
when('[t0] the guard runs', () => {
|
|
117
125
|
const dir = genStagedRepo({ 'notes.md': 'hello world, no times here\n' });
|
|
118
|
-
const result = runGuard(dir);
|
|
126
|
+
const result = runGuard({ dir });
|
|
119
127
|
|
|
120
128
|
then('it allows the commit with exit 0', () => {
|
|
121
129
|
expect(result.code).toEqual(0);
|
|
@@ -126,7 +134,7 @@ describe('check.timestamps guard', () => {
|
|
|
126
134
|
given('[case6] a non-code file with only a date (no time)', () => {
|
|
127
135
|
when('[t0] the guard runs', () => {
|
|
128
136
|
const dir = genStagedRepo({ 'dated.md': 'shipped on 2026-06-25\n' });
|
|
129
|
-
const result = runGuard(dir);
|
|
137
|
+
const result = runGuard({ dir });
|
|
130
138
|
|
|
131
139
|
then('it allows the commit with exit 0 (date alone does not match)', () => {
|
|
132
140
|
expect(result.code).toEqual(0);
|
|
@@ -139,7 +147,7 @@ describe('check.timestamps guard', () => {
|
|
|
139
147
|
const dir = genStagedRepo({
|
|
140
148
|
'rec.yml': 'when: 2026-06-25T14:30:00+05:00\n',
|
|
141
149
|
});
|
|
142
|
-
const result = runGuard(dir);
|
|
150
|
+
const result = runGuard({ dir });
|
|
143
151
|
|
|
144
152
|
then('it halts with exit 2 (offset tz form matches)', () => {
|
|
145
153
|
expect(result.code).toEqual(2);
|
|
@@ -152,7 +160,7 @@ describe('check.timestamps guard', () => {
|
|
|
152
160
|
const dir = genStagedRepo({
|
|
153
161
|
'render.test.ts.snap': '{ "createdAt": "[timestamp]" }\n',
|
|
154
162
|
});
|
|
155
|
-
const result = runGuard(dir);
|
|
163
|
+
const result = runGuard({ dir });
|
|
156
164
|
|
|
157
165
|
then('it allows the commit with exit 0 (mask remedy is committable)', () => {
|
|
158
166
|
expect(result.code).toEqual(0);
|
|
@@ -160,12 +168,12 @@ describe('check.timestamps guard', () => {
|
|
|
160
168
|
});
|
|
161
169
|
});
|
|
162
170
|
|
|
163
|
-
// #566: an iso-8601 duration is a fixed span, not an instant, so it
|
|
171
|
+
// #566: an iso-8601 duration is a fixed span, not an instant, so it is a stable value —
|
|
164
172
|
// the matcher must not halt on it (a false positive that trains folks to bypass the hook)
|
|
165
173
|
given('[case9] a non-code file with a simple iso duration (PT12:30:00)', () => {
|
|
166
174
|
when('[t0] the guard runs', () => {
|
|
167
175
|
const dir = genStagedRepo({ 'fixture.json': '{ "window": "PT12:30:00" }\n' });
|
|
168
|
-
const result = runGuard(dir);
|
|
176
|
+
const result = runGuard({ dir });
|
|
169
177
|
|
|
170
178
|
then('it allows the commit with exit 0 (a duration is not a timestamp)', () => {
|
|
171
179
|
expect(result.code).toEqual(0);
|
|
@@ -176,7 +184,7 @@ describe('check.timestamps guard', () => {
|
|
|
176
184
|
given('[case10] a non-code file with a day+time duration (P1DT02:15:30)', () => {
|
|
177
185
|
when('[t0] the guard runs', () => {
|
|
178
186
|
const dir = genStagedRepo({ 'fixture.json': '{ "elapsed": "P1DT02:15:30" }\n' });
|
|
179
|
-
const result = runGuard(dir);
|
|
187
|
+
const result = runGuard({ dir });
|
|
180
188
|
|
|
181
189
|
then('it allows the commit with exit 0 (a duration is not a timestamp)', () => {
|
|
182
190
|
expect(result.code).toEqual(0);
|
|
@@ -189,7 +197,7 @@ describe('check.timestamps guard', () => {
|
|
|
189
197
|
const dir = genStagedRepo({
|
|
190
198
|
'fixture.json': '{ "span": "P3Y6M4DT12:30:05" }\n',
|
|
191
199
|
});
|
|
192
|
-
const result = runGuard(dir);
|
|
200
|
+
const result = runGuard({ dir });
|
|
193
201
|
|
|
194
202
|
then('it allows the commit with exit 0 (a duration is not a timestamp)', () => {
|
|
195
203
|
expect(result.code).toEqual(0);
|
|
@@ -203,11 +211,151 @@ describe('check.timestamps guard', () => {
|
|
|
203
211
|
'fixture.json':
|
|
204
212
|
'{ "window": "PT12:30:00", "createdAt": "2026-06-25T14:30:00Z" }\n',
|
|
205
213
|
});
|
|
206
|
-
const result = runGuard(dir);
|
|
214
|
+
const result = runGuard({ dir });
|
|
207
215
|
|
|
208
216
|
then('it halts with exit 2 (the real stamp wins, despite the duration)', () => {
|
|
209
217
|
expect(result.code).toEqual(2);
|
|
210
218
|
});
|
|
211
219
|
});
|
|
212
220
|
});
|
|
221
|
+
|
|
222
|
+
// #641: the pattern required seconds and colons, so a minute-only clock, a dash-separated
|
|
223
|
+
// iso stamp in a filename, and a bare `<hh>:<mm>` all slipped through
|
|
224
|
+
given('[case13] the halt table — each time-of-day form a doc can carry (#641)', () => {
|
|
225
|
+
const haltTable = [
|
|
226
|
+
{ form: 'a bare minute clock', content: 'ran at 14:30 UTC\n' },
|
|
227
|
+
{ form: 'a bare second clock', content: 'ran at 14:30:00\n' },
|
|
228
|
+
{ form: 'a minute-only iso stamp', content: 'at 2026-09-20T14:30Z\n' },
|
|
229
|
+
{ form: 'a dash-separated iso stamp', content: 'log: run.2026-09-20T14-30-00Z.log\n' },
|
|
230
|
+
{ form: 'a dash-separated minute stamp', content: 'log: run.2026-09-20T14-30Z.log\n' },
|
|
231
|
+
{ form: 'a clock with an offset', content: 'at T09:05+05:30\n' },
|
|
232
|
+
];
|
|
233
|
+
haltTable.forEach((row) => {
|
|
234
|
+
when(`[t0] the guard runs on ${row.form}`, () => {
|
|
235
|
+
const result = runGuard({ dir: genStagedRepo({ 'yield.md': row.content }) });
|
|
236
|
+
|
|
237
|
+
then('it halts with exit 2', () => {
|
|
238
|
+
expect(result.code).toEqual(2);
|
|
239
|
+
});
|
|
240
|
+
then('it names the file and line on stderr', () => {
|
|
241
|
+
expect(result.stderr).toContain(' └─ yield.md:1:');
|
|
242
|
+
});
|
|
243
|
+
});
|
|
244
|
+
});
|
|
245
|
+
});
|
|
246
|
+
|
|
247
|
+
// the guard earns trust by what it lets through: a halt on a line:col ref or a port map
|
|
248
|
+
// would block every dev on every commit
|
|
249
|
+
given('[case14] the pass table — values that look like a clock but are not one (#641)', () => {
|
|
250
|
+
const passTable = [
|
|
251
|
+
{ form: 'an iso duration', content: 'window: PT12:30:00\n' },
|
|
252
|
+
{ form: 'a minute iso duration', content: 'window: PT12:30\n' },
|
|
253
|
+
{ form: 'a date alone', content: 'shipped on 2026-09-20\n' },
|
|
254
|
+
{ form: 'a file:line:col ref', content: 'see src/foo.ts:42:7\n' },
|
|
255
|
+
{ form: 'a two-digit line:col ref', content: 'see src/foo.ts:12:34\n' },
|
|
256
|
+
{ form: 'a port map', content: 'ports: 5432:5432\n' },
|
|
257
|
+
{ form: 'a ratio', content: 'aspect 3:1\n' },
|
|
258
|
+
{ form: 'a markdown table rule', content: '|:---|:---:|\n' },
|
|
259
|
+
{ form: 'an out-of-range hour', content: 'score 42:17\n' },
|
|
260
|
+
];
|
|
261
|
+
passTable.forEach((row) => {
|
|
262
|
+
when(`[t0] the guard runs on ${row.form}`, () => {
|
|
263
|
+
const result = runGuard({ dir: genStagedRepo({ 'doc.md': row.content }) });
|
|
264
|
+
|
|
265
|
+
then('it allows the commit with exit 0', () => {
|
|
266
|
+
expect(result.code).toEqual(0);
|
|
267
|
+
});
|
|
268
|
+
});
|
|
269
|
+
});
|
|
270
|
+
});
|
|
271
|
+
|
|
272
|
+
// #681: core.quotepath quoted a non-ascii path, so `git show` could not read it and the
|
|
273
|
+
// guard exited 1 as a malfunction on a legal file
|
|
274
|
+
given('[case15] a staged file at a non-ascii path (#681)', () => {
|
|
275
|
+
when('[t0] the file holds a date only', () => {
|
|
276
|
+
const result = runGuard({ dir: genStagedRepo({ 'docs/café.md': 'on 2026-09-20\n' }) });
|
|
277
|
+
|
|
278
|
+
then('it allows the commit with exit 0 — no false malfunction', () => {
|
|
279
|
+
expect(result.code).toEqual(0);
|
|
280
|
+
expect(result.stderr).toEqual('');
|
|
281
|
+
});
|
|
282
|
+
});
|
|
283
|
+
|
|
284
|
+
when('[t1] the file holds a clock time', () => {
|
|
285
|
+
const result = runGuard({ dir: genStagedRepo({ 'docs/café.md': 'at 14:30\n' }) });
|
|
286
|
+
|
|
287
|
+
then('it halts with exit 2, with the raw path and line on stderr', () => {
|
|
288
|
+
expect(result.code).toEqual(2);
|
|
289
|
+
expect(result.stderr).toContain('✋ ConstraintError:');
|
|
290
|
+
expect(result.stderr).toContain(' └─ docs/café.md:1:at 14:30');
|
|
291
|
+
});
|
|
292
|
+
});
|
|
293
|
+
});
|
|
294
|
+
|
|
295
|
+
// #681: a blob git cannot read is the system's fault, not the caller's
|
|
296
|
+
given('[case16] a staged file whose blob git cannot read (#681)', () => {
|
|
297
|
+
when('[t0] the guard runs', () => {
|
|
298
|
+
const dir = genStagedRepo({ 'notes.md': 'no time here\n' });
|
|
299
|
+
const sha = execFileSync('git', ['rev-parse', ':notes.md'], {
|
|
300
|
+
cwd: dir,
|
|
301
|
+
encoding: 'utf-8',
|
|
302
|
+
}).trim();
|
|
303
|
+
fs.rmSync(path.join(dir, '.git/objects', sha.slice(0, 2), sha.slice(2)));
|
|
304
|
+
const result = runGuard({ dir });
|
|
305
|
+
|
|
306
|
+
then('it exits 1, with a MalfunctionError header on stderr', () => {
|
|
307
|
+
expect(result.code).toEqual(1);
|
|
308
|
+
expect(result.stderr).toContain(
|
|
309
|
+
'💥 MalfunctionError: check.timestamps could not read the staged blob',
|
|
310
|
+
);
|
|
311
|
+
expect(result.stderr).toContain(' └─ notes.md');
|
|
312
|
+
});
|
|
313
|
+
});
|
|
314
|
+
});
|
|
315
|
+
|
|
316
|
+
// #684 asked to exempt the achiever's `.goals/` ask log; the answer is no (S16): the log must
|
|
317
|
+
// not hold a clock, so a pasted shell prompt clock there halts like it does anywhere else
|
|
318
|
+
given('[case17] a staged .goals/ ask log that holds a pasted shell prompt clock (#684)', () => {
|
|
319
|
+
when('[t0] the guard runs', () => {
|
|
320
|
+
const result = runGuard({
|
|
321
|
+
dir: genStagedRepo({
|
|
322
|
+
'.route/x/.goals/asks.inventory.jsonl':
|
|
323
|
+
'{"ask":"[14:32:07] ~/repo $ npm run test"}\n',
|
|
324
|
+
}),
|
|
325
|
+
});
|
|
326
|
+
|
|
327
|
+
then('it halts with exit 2, as for any other path — no path is exempt', () => {
|
|
328
|
+
expect(result.code).toEqual(2);
|
|
329
|
+
expect(result.stderr).toContain('✋ ConstraintError:');
|
|
330
|
+
expect(result.stderr).toContain('.route/x/.goals/asks.inventory.jsonl:1:');
|
|
331
|
+
});
|
|
332
|
+
});
|
|
333
|
+
|
|
334
|
+
when('[t1] the same log holds the ask with the clock masked', () => {
|
|
335
|
+
const result = runGuard({
|
|
336
|
+
dir: genStagedRepo({
|
|
337
|
+
'.route/x/.goals/asks.inventory.jsonl':
|
|
338
|
+
'{"ask":"[time] ~/repo $ npm run test"}\n',
|
|
339
|
+
}),
|
|
340
|
+
});
|
|
341
|
+
|
|
342
|
+
then('it allows the commit with exit 0 — the masked form is the remedy', () => {
|
|
343
|
+
expect(result.code).toEqual(0);
|
|
344
|
+
expect(result.stderr).toEqual('');
|
|
345
|
+
});
|
|
346
|
+
});
|
|
347
|
+
});
|
|
348
|
+
|
|
349
|
+
given('[case-scope] the hook source a reader meets (#641)', () => {
|
|
350
|
+
when('[t0] its header is read', () => {
|
|
351
|
+
const header = fs
|
|
352
|
+
.readFileSync(guardPath, 'utf-8').split('\n').slice(0, 8).join('\n');
|
|
353
|
+
|
|
354
|
+
then('the .what says prose is in scope, so no reader asks for a prose skip', () => {
|
|
355
|
+
expect(header).toContain('ANY staged file but .ts/.sh');
|
|
356
|
+
expect(header).toContain('prose included');
|
|
357
|
+
expect(header).not.toContain('snapshot'); // no single file kind reads as the target
|
|
358
|
+
});
|
|
359
|
+
});
|
|
360
|
+
});
|
|
213
361
|
});
|