skills/council/alchemist/schema-evaluation/SKILL.md
Use when evaluating or designing data warehouse schemas for analytical workloads. Covers star schemas, snowflake schemas, data vault, OBT patterns, grain definition, SCD strategies, normalization trade-offs, and data contracts between producers and consumers. Do not use for pipeline orchestration or ETL flow design (use pipeline-design).
npx skillsauth add dtsong/my-claude-setup schema-evaluationInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Evaluate and design data warehouse schemas for analytical workloads. Covers star schemas, snowflake schemas, data vault, and One Big Table (OBT) patterns. Assesses grain definition, normalization trade-offs, slowly changing dimension strategies, and data contracts between producers and consumers.
Reads schema definitions, DDL, ERDs, data dictionaries, and query patterns for analysis. Does not execute queries, modify databases, or manage pipeline orchestration.
No user-provided values are used in commands or file paths. All inputs are treated as read-only analysis targets.
Identify the grain of each fact table — what does one row represent? A single transaction? A daily snapshot? A session event? The grain determines everything downstream. Document the grain as a clear English sentence: "One row = one order line item" or "One row = one daily active user per product."
Separate measurable facts (revenue, quantity, duration, count) from descriptive dimensions (customer, product, date, geography). For each:
Evaluate which pattern fits the requirements:
Document the chosen approach and the reasoning behind it.
For each dimension that changes over time, specify the SCD type:
Document which SCD type applies to each changing attribute and why.
For each source-to-warehouse interface, specify the contract:
Test the proposed schema against the required analytical queries:
Produce a complete schema specification with DDL, relationships, and usage notes.
Compaction resilience: If context was lost during a long session, re-read the Inputs section to reconstruct what system is being analyzed, check the Progress Checklist for completed steps, then resume from the earliest incomplete step.
# Schema Evaluation: [Domain/Project Name]
## Grain Definitions
| Fact Table | Grain (one row = ...) | Estimated Rows | Growth Rate |
|------------|----------------------|----------------|-------------|
| ... | ... | ... | ... |
## Entity Relationship Summary
[ASCII diagram showing fact and dimension relationships]
## Modeling Approach
**Chosen:** [Star / Snowflake / Data Vault / OBT]
**Rationale:** [1-2 sentences]
## Fact Tables
### fct_[name]
| Column | Type | Description | Aggregation |
|--------|------|-------------|-------------|
| ... | ... | ... | SUM/AVG/... |
## Dimension Tables
### dim_[name]
| Column | Type | Description | SCD Type |
|--------|------|-------------|----------|
| ... | ... | ... | 1/2/3 |
## Slowly Changing Dimensions
| Dimension | Attribute | SCD Type | Rationale |
|-----------|-----------|----------|-----------|
| ... | ... | ... | ... |
## Data Contracts
| Source → Target | Freshness SLA | Quality Checks | Breaking Change Policy |
|-----------------|---------------|----------------|----------------------|
| ... | ... | ... | ... |
## Query Validation
| Query Pattern | Tables Involved | Join Count | Performance Notes |
|---------------|----------------|------------|-------------------|
| ... | ... | ... | ... |
testing
Use to convert a Word .docx file to PDF and/or verify its page count. Triggers on: converting docx to pdf, rendering a document, checking how many pages a docx produces, or asserting a page-count constraint (e.g. a resume must stay 2 pages). Wraps LibreOffice headless conversion.
development
Security audit checklist for web applications. Use when reviewing, auditing, or hardening a web app's security posture. Covers rate limiting, auth headers, IP blocking, CORS, security middleware, input validation, file upload limits, ORM usage, and password hashing. Triggers on requests like "review security", "harden this app", "security audit", "check for vulnerabilities", or when building/reviewing API endpoints.
development
Interactive wizard to craft effective prompts using Claude Code best practices
tools
Use when batch labeling, prioritizing, and assigning GitHub issues during triage sessions.