---
title: PM Data Density (earn-the-right-to-speak gatekeeper)
---

# PM Data Density (earn-the-right-to-speak gatekeeper)

## What it is

An in-development density tracker and behavior pattern detection engine that determines when the PM
has enough usage data to speak intelligently. It is the gatekeeper behind every suggestion Omniscio
makes about your boards: nothing gets recommended from a board until that board has earned it.

## Where to find it

There is no surface of its own -- it is a backend engine that other PM features consult before they
say anything. It is in development, gated behind the `pm-data-density` unreleased feature
(`pmDataDensityEnabled`), so it is off in a normal install.

## How it behaves

It monitors per-domain usage accumulation across six domains (task-management, workflow,
collaboration, scheduling, board-structure, integrations) and determines when each domain has enough
data to generate insights. It distinguishes fresh-start users (higher thresholds, 3-day minimum) from
import users (lower thresholds, faster ramp).

The **behavior pattern detection engine** watches item history for six patterns:

- Repeated manual status changes (threshold 10)
- Recurring subtask creation (threshold 3)
- Reassignment flows (threshold 5)
- Batch behavior (5+ in a 30-min window)
- Time-of-day patterns (top 2 hours >= 40% of activity)
- Feature usage frequency (2+ column types required)

All detection is algorithmic -- zero LLM cost. Observations are gated by domain density readiness: a
pattern detector will not run until its domain has sufficient data.

When the feature is disabled, `isDomainReady()` returns `true` so downstream consumers degrade to
ungated behavior.

## For agents

- Module in `src/main/services/pm/intelligence/` (density-tracker,
  density-signals, behavior-pattern-engine, behavior-observation-store,
  density-scheduler).
- 5 IPC channels added to `pm-intelligence-handlers.ts`.
- 2 database tables (`pm_density_signals`, `pm_behavior_observations`).
- Warm tick (10m) computes density scores; cold tick (24h) runs behavior
  detection + cleanup.
- Human-only filtering on workflow and collaboration domains.
- 31 tests (8 unit + 23 integration).
- Contract: `pm-data-density-contract.md`.

## Related

The boards whose usage is being counted are described in
[mission-control.md](mission-control.md). What this engine gates is what
[pm-discovery-callouts.md](pm-discovery-callouts.md) is allowed to put in your inbox, and the
snapshot layer that turns the same board data into cross-board reasoning is
[pm-cross-board-intelligence.md](pm-cross-board-intelligence.md). The forecasts and risk views further
up that chain are in [pm-predictive-analytics.md](pm-predictive-analytics.md).
