Yeoman generator that scaffolds Superset visualization plugins and packages with proper structure and boilerplate code
63
{
"context": "This criteria evaluates how well the engineer uses Apache Superset's database connectivity and integration APIs to implement connection validation, testing, and credential handling. The focus is on proper usage of Superset's Database model, connection testing utilities, and security features.",
"type": "weighted_checklist",
"checklist": [
{
"name": "Database model usage",
"description": "Uses superset.models.core.Database class or appropriate database connection models from Apache Superset to represent and manage database connections",
"max_score": 20
},
{
"name": "Connection URI validation",
"description": "Implements proper connection URI validation using Superset's built-in validation utilities or SQLAlchemy engine URL parsing (sqlalchemy.engine.url.make_url) which Superset relies on",
"max_score": 15
},
{
"name": "Database type support",
"description": "Leverages Superset's database engine specifications (superset.db_engine_specs) to handle different database types (PostgreSQL, MySQL, SQLite) properly",
"max_score": 15
},
{
"name": "Connection testing implementation",
"description": "Uses Superset's connection testing methods (e.g., Database.test_connection() or similar API methods from superset.databases.api.DatabaseRestApi) to validate database connectivity",
"max_score": 20
},
{
"name": "SSH tunnel support",
"description": "Properly handles SSH tunnel configuration validation using Superset's SSH tunnel support features (checking for required fields like server, port, username)",
"max_score": 10
},
{
"name": "Credential security",
"description": "Implements credential masking/encryption using Superset's encrypted field utilities or proper credential handling patterns that prevent exposure of sensitive data in logs or error messages",
"max_score": 15
},
{
"name": "Error handling",
"description": "Uses appropriate Superset exception types or follows Superset's error handling patterns for database connection failures, including timeout handling and meaningful error messages",
"max_score": 5
}
]
}Install with Tessl CLI
npx tessl i tessl/npm-superset-ui--generator-supersetdocs
evals
scenario-1
scenario-2
scenario-3
scenario-4
scenario-5
scenario-6
scenario-7
scenario-8
scenario-9
scenario-10