id: no-new-controller-sqlalchemy language: python rule: any: - pattern: db.session.add($$$ARGS) - pattern: db.session.add_all($$$ARGS) - pattern: db.session.begin($$$ARGS) - pattern: db.session.commit($$$ARGS) - pattern: db.session.delete($$$ARGS) - pattern: db.session.execute($$$ARGS) - pattern: db.session.flush($$$ARGS) - pattern: db.session.get($MODEL, $$$ARGS) - pattern: db.session.merge($$$ARGS) - pattern: db.session.refresh($$$ARGS) - pattern: db.session.rollback($$$ARGS) - pattern: db.session.scalar($$$ARGS) - pattern: db.session.scalars($$$ARGS) - pattern: session.add($$$ARGS) - pattern: session.add_all($$$ARGS) - pattern: session.begin($$$ARGS) - pattern: session.commit($$$ARGS) - pattern: session.delete($$$ARGS) - pattern: session.execute($$$ARGS) - pattern: session.flush($$$ARGS) - pattern: session.get($MODEL, $$$ARGS) - pattern: session.merge($$$ARGS) - pattern: session.refresh($$$ARGS) - pattern: session.rollback($$$ARGS) - pattern: session.scalar($$$ARGS) - pattern: session.scalars($$$ARGS) - pattern: Session($$$ARGS) - pattern: sessionmaker($$$ARGS) - pattern: select($$$ARGS) - pattern: insert($$$ARGS) - pattern: update($$$ARGS) - pattern: delete($$$ARGS) - pattern: text($$$ARGS) - pattern: sa.select($$$ARGS) - pattern: sa.insert($$$ARGS) - pattern: sa.update($$$ARGS) - pattern: sa.delete($$$ARGS) - pattern: sa.text($$$ARGS) - pattern: sqlalchemy.select($$$ARGS) - pattern: sqlalchemy.insert($$$ARGS) - pattern: sqlalchemy.update($$$ARGS) - pattern: sqlalchemy.delete($$$ARGS) - pattern: sqlalchemy.text($$$ARGS) - pattern: db.select($$$ARGS) - pattern: db.insert($$$ARGS) - pattern: db.update($$$ARGS) - pattern: db.delete($$$ARGS) - pattern: db.text($$$ARGS) message: net-new direct SQLAlchemy call in controller code severity: error