P2: Monte Carlo forecast → real burn-up cone (#10) #38
Reference in New Issue
Block a user
No description provided.
Delete Branch "p2/monte-carlo"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Stacked on #37 (P2 scheduler). Retarget to
mainonce #37 merges.What
Replaces the demo burn-up cone on Morning service with a real, seeded Monte Carlo forecast over the open backlog. The LLM never does this — it's plain, reproducible code (evidence-based scheduling).
Core (
@commitea/core/forecast-v0)forecast(): seeded mulberry32 + Box–Muller over the scheduler's deterministic order (order is fixed from estimates/deps; only durations vary, so the cone stretches, never reorders). Returns p50/p80/p95 landing + a per-issue burn-up curve (p10/p50/p90). 12 unit tests, reproducible.Renderer
lib/dates.ts: working-day→calendar mapper (skips weekends) +buildBurnUpData.BurnUpConegains a data-driven twin; falls back byte-identical to the fixture cone in demo mode.v0 scope (each a later slice)
Single serial worker (capacity → #8); cold-start priors only (empirical fit → #5); no historical actual polyline (needs lifecycle events → #5). Header chrome (reconcile time, ahead/behind badge) stays fixture until milestone due dates land.
Verified
51 core tests green · desktop typecheck clean · 14 fixture e2e green · live spec asserts the real cone (25 open issues, "lands by Nov 11–27").
🤖 Generated with Claude Code