DPlan's Physics Layer makes your project push back when it's being mismanaged. It computes pace, predicts delays, shows consequences, and lets you simulate changes — all from the data you already have. No extra setup required.
Every task with progress history gets a forecast based on its actual pace vs its required pace:
| Signal | What It Means |
|---|---|
| Rate Ratio | Actual daily progress rate ÷ required daily rate. Ratio = 1.0 means on pace. Below 1.0 = falling behind. |
| Expected Rate | 100% ÷ task duration in days = how much progress per day the task needs. |
| Actual Rate | Computed from the last 2–3 progress history entries — how fast the task is actually moving. |
The forecast runs automatically every time the Gantt renders. No configuration needed — just update progress on your tasks.
| Level | Badge | Meaning |
|---|---|---|
| Learning | ··· | Not enough data yet (fewer than 2 progress entries or task just started) |
| Good | ▲ 3d | Ahead of pace — may finish early |
| On Track | — | Within ±2 days of plan. No badge shown (no noise). |
| Watch | ▼ 4d | Mild slip (3–5 days behind) |
| Warning | ▼ 8d | Significant slip (>5 days) or many dependent tasks affected |
| Critical | ⚠ +12d | Deadline breach, critical path impact, or stalled |
Forecast badges appear inline next to the task name in the task list. They're colour-coded gradient pills — green for ahead, amber for watch, orange for warning, red for critical. Click any badge to open the Consequence Card.
Click a forecast badge to open a centred modal showing the full analysis for that task:
The What-If section at the bottom of the Consequence Card lets you explore scenarios:
The simulator clones the entire project, applies your change, recomputes everything (CPM, costs, forecasts, milestones, SPI), and shows the diff — all in under 25 milliseconds.
DPlan measures two independent dimensions for every task:
| Dimension | Question | Source |
|---|---|---|
| Position | Are you behind right now? | Expected progress vs actual progress (from the Board/Morning Brief) |
| Momentum | At this pace, will you finish on time? | Rate ratio from the Forecast Engine |
Neither overrides the other. A task can be on-track by position but stalling by momentum — that's an invisible crisis no other tool catches. The Board card shows a momentum arrow (↑ or ↓) next to the position dot, and the health narrative explains both in plain English.
Task bars on the Gantt get a subtle coloured glow when their pace is off. The halo colour and intensity are driven by the forecast level — amber for mild drift, red for critical. The halo appears before any deadline is missed, showing deceleration that the eye can't see across 50+ tasks.
When a task is projected to finish late, a translucent dashed extension appears on the Gantt bar extending past the planned end date to the projected finish. The ghost bar shows the projected end date as a label. Ghost bars only appear when slip exceeds 2 days (no visual noise for on-track tasks).
When you drag a critical-path task to the right (extending it), the drag feels physically heavier. The resistance is proportional to the number of downstream tasks affected — a task blocking 12 others feels much heavier than one blocking 2. This is topology-aware haptic feedback: your hand learns the project structure without reading dependency charts. Dragging left (earlier) has no friction — that creates slack, not cascades.
The Gantt background shows a subtle warm tint behind rows with highest cost-at-risk. The gradient is driven by task cost × downstream count × remaining work. Higher-risk rows get warmer/more saturated background. It's barely perceptible — but your eye naturally gravitates toward the hottest zones.
An always-visible bar above the task list header showing the project's vital signs:
The entire Physics Layer can be toggled on/off in Settings → Feature Toggles → Forecast & Physics Layer. When off: no halos, no badges, no ghosts, no friction, no gradient, no pulse strip. Clean Gantt.
The Physics Layer requires no new data entry. It derives everything from:
The more progress entries a task has, the more accurate the forecast. After 3+ updates on different days, the velocity sparkline appears and the forecast confidence increases.