- Engine: Add ppa_revenue_cr, mcp_revenue_cr, tariff, units to PnLRow - Engine: Split PPA vs MCP revenue in P&L computation - Web: Collapsible rows for PPA/MCP Revenue and Opex - Web: Highlighted rows (Total Revenue, EBITDA, EBIT, PBT, PAT) - Web: Units above Tariff in breakdown, bg-blue-50 highlight - Fix sticky column z-index for horizontal scroll - CLAUDE.md: Add project documentation Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
929 B
Goal: Full hybrid RTC. Parity gate on hybrid scenario. Tasks:
S7-T01 Schema: BessConfig extended (DoD, RTE, aux, augmentation), DispatchConfig (curtail-vs-MCP toggle). S7-T02 dispatch/hybrid_rtc.py: per-timestamp dispatch loop. Use Numba @njit for speed if pure-Python is >5s. S7-T03 dispatch/mcp_settlement.py: optional surplus-to-MCP revenue using a forecast price profile (input as 8760 ₹/MWh). S7-T04 Update commercial/ppa.py to consume dispatch output (net injection, shortfall). S7-T05 Hand-validated test: 24-hour scenario with known optimal dispatch. Verify SOC, charge/discharge, shortfall. S7-T06 Update runner to wire dispatch in. S7-T07 UI: SOC chart (week-zoomable), RTC CUF achieved KPI prominent. S7-T08 PARITY GATE: full hybrid RTC scenario tariff matches Excel within 0.5%. RTC CUF within 0.5%. S7-T09 Documentation.
ESCALATION: Dispatch parity is the hardest. If miss > 0.5%, stop and consult Opus.