vetkit.data-access.destructive-schema-sync
The application drops and recreates database tables when it starts: Sequelize sync({ force: true }) runs DROP TABLE for every model, and TypeORM dropSchema: true drops the schema on each connection. A restart or deploy in production deletes all data. The application drops all tables (SQLAlchemy metadata.drop_all / Flask-SQLAlchemy db.drop_all()) in application code. When this runs on start-up or from a request, a restart or deploy in production deletes all data.
Last updated:
Suite: Production readiness
javascript, typescript
The application drops and recreates database tables when it starts: Sequelize sync({ force: true }) runs DROP TABLE for every model, and TypeORM dropSchema: true drops the schema on each connection. A restart or deploy in production deletes all data.
Category: DATABASE · Engine rule severity: ERROR
How to fix it
Remove the option from application start-up and manage the schema with migrations (Sequelize CLI / Umzug migrations, TypeORM migrations run in the deploy pipeline). Keep destructive resets in test set-up or an explicit local script that refuses to run against production.
References
Source: packages/engine/rules/data-access/javascript.yml.
python
The application drops all tables (SQLAlchemy metadata.drop_all / Flask-SQLAlchemy db.drop_all()) in application code. When this runs on start-up or from a request, a restart or deploy in production deletes all data.
Category: DATABASE · Engine rule severity: ERROR
How to fix it
Remove drop_all from application start-up; create and change tables with migrations (Alembic, Flask-Migrate) run during deploy. Keep destructive resets in test fixtures or an explicit CLI command that refuses to run against production.
References
Source: packages/engine/rules/data-access/python.yml.
Generated from shipped rule definitions at build time. Matching is a review signal, not proof of exploitability. “generic” denotes text matching, not complete language or framework coverage. Runtime configuration and available tools affect whether a rule runs.