domain-product

Enforce domain-product analytics modeling rules in dbt models.

475|25|Updated Mar 31, 2026
One-click install
npx skills add https://github.com/SignalPilot-Labs/SignalPilot --skill domain-product
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: domain-product
Source: https://github.com/SignalPilot-Labs/SignalPilot/tree/main/benchmark/signalpilot-plugin/skills/domain-product
Command: npx skills add https://github.com/SignalPilot-Labs/SignalPilot --skill domain-product

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Product analytics pipelines often generate inaccurate metrics due to improper modeling decisions, such as unbounded spines, non-pivoted event data, and unmanaged first-run behavior.

Core Features & Use Cases

  • Driving tables from events and sessions to ensure metrics are driven by the right grain.
  • Calendar spine cross-joins with a date cap to prevent phantom future rows.
  • Event type pivoting to produce per-type metric columns and avoid type-skewed summaries.
  • Correct first-run behavior with NULLs for initial periods to preserve historical integrity.

Quick Start

Implement the domain-product rules in your analytics models to produce accurate, time-bounded product metrics from event and usage data.

Frequently Asked Questions about domain-product

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I enforce proper product analytics modeling rules in dbt?

To enforce product analytics rules in dbt, you automate validation of model definitions and YAML frontmatter to ensure proper event pivoting, driving tables, and calendar spine constraints for accurate metrics.

Why does my calendar spine cross-join create phantom future rows in metrics?

Calendar spine cross-joins create phantom future rows when unbounded. Applying a date cap in your dbt models restricts the join to valid periods, preventing phantom rows and ensuring accurate time-bounded metrics.

What is the best way to handle first-run NULLs in dbt event models?

Handling first-run NULLs in dbt event models requires preserving initial period NULLs to maintain historical integrity. Enforcing this behavior ensures accurate baseline metrics before sufficient data accumulates.

How do I pivot event type data for product analytics in dbt?

Pivoting event type data in dbt transforms event logs into per-type metric columns. This prevents type-skewed summaries and produces consistent, accurate product analytics metrics from usage data.

Can I use this to drive tables from events and sessions for dbt models?

Yes, you can drive tables from events and sessions to ensure metrics are calculated at the correct grain. Enforcing this pattern in dbt model definitions supports consistent and accurate analytics pipelines.