Dimensions
Dimensions are small catalog tables that describe the entities your facts reference. Fact tables already carry the most common names inline (agent_name, poll_name, team_name…), so you only need a dimension join when you want attributes beyond the name — an agent’s email, an HSM’s approval status, a node’s AI configuration.
dim_agents
One row per agent account.dim_teams
One row per team.dim_tags
One row per tag (queue/group inside a team).dim_agent_tags
One row per agent–tag assignment — which agents work which queues.dim_hsms
One row per HSM (WhatsApp template).dim_polls
One row per flow version. When you edit a flow in the editor, a new version (newpoll_id) is created; original_poll_id groups all versions of the same logical flow.
To analyze a flow across edits, group facts by
original_poll_id via this dimension rather than by raw poll_id.dim_channels
One row per WhatsApp line.dim_poll_nodes
One row per node of each flow version — the structure behindfact_treble_session_nodes. For AI nodes it includes the full AI agent configuration.