bigquery-sql
BigQuery-specific SQL patterns: UNNEST for array expansion, STRUCT, ARRAY_AGG,…
HR & operations rules: SCD current-record filtering, issue resolution metrics.
$ npx -y skills add signalpilot-labs/signalpilot --skill domain-hr --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/domain-hrContext preview
The summary Claude sees to decide when to auto-load this skill.
HR & operations rules: SCD current-record filtering, issue resolution metrics.
name: domain-hr description: "HR & operations rules: SCD current-record filtering, issue resolution metrics."
When aggregating workforce or issue metrics, drive FROM the fact/event table (issues, tickets, time_entries), not the dimension table (employees, teams, projects). Employees with zero activity MUST NOT appear in activity reports - they have no data to aggregate.
Exception: if a parent/entity table exists whose primary key matches the GROUP BY key AND some parent rows have no matching children in the detail table, drive FROM the parent and LEFT JOIN the detail. Parent rows with zero children must appear with count=0, not be silently dropped.
Tables with `_fivetran_start`/`_fivetran_end` or `valid_from`/`valid_to` columns track historical state. You MUST filter to the current record before aggregating.
Current record: `_fivetran_end = '9999-12-31'` OR `_fivetran_end IS NULL` - verify the sentinel value by querying 3-5 rows before assuming.
For `_fivetran_active` columns, always use `WHERE COALESCE(_fivetran_active, true)` - never `WHERE _fivetran_active = true` because NULL values (meaning "active") would be filtered out.
NEVER aggregate across all historical rows without filtering to current records first - doing so double-counts entities that changed state.
Include ONLY closed issues in resolution time calculations - open issues have no close timestamp.
NEVER substitute `current_date` for a missing close timestamp - this produces artificially inflated resolution times that corrupt the metric.
Repo: signalpilot-labs/signalpilot
BigQuery-specific SQL patterns: UNNEST for array expansion, STRUCT, ARRAY_AGG,…
Load when dbt run or dbt parse fails. Covers YML duplicate patches, ref errors, passthrough…
Populate the knowledge base from dbt project research. Proposes entries across all 6…
Load when task involves dbt snapshots, SCD Type 2, or tracking data changes over time. Covers…
Load when task involves adding, writing, or fixing dbt unit tests. Covers unit_tests YAML…
Load when task involves dbt model versioning, creating v2 of a model, or backward-compatible…