Use when migrating or changing generic ECM math in openfdd.ecmengineering, publishing PyPI ECM workbook exports, or Compare honesty (FITTED vs industry). Triggers on: ECM, fan affinity, scheduling bins, full-parity workbook, IndustryScreening, BUG-ECM-018, BUG-ECM-019, satreset, open-fdd PyPI wheel.
Author an openfddpackagev1 zip for any BAS job: equipType, Haystack points to SQL roles, weather sidecar, motor vs compressor vs valve. Triggers on package zip, columnmap, mapping, empty Overview / RCx / Inspect charts, missing roles, haystack sidecar.
Use when installing, authenticating, linking, or re-pinning the Open-FDD Railway hub (central/mqtt/web) via the Railway CLI on bensbench. Triggers on: railway CLI, RAILWAYTOKEN, railway login, railway link, railway redeploy, Railway re-pin, OPENFDDNGINXRESOLVER, sha tip on Railway, gleaming-cooperation.
Maintain the Open-FDD React product SPA (frontend/web → openfdd-web). Use when editing Overview, Inspect, FDD Plots, RCx, Mapping, Operations, Sites, auth UI, health matrices, or client Plotly charts against central /api (DataFusion).
Use when working on production DataFusion SQL FDD: sqlrules registry, central /api/fdd/run, parity with pandas oracle, no pandas in central. Triggers on: sqlrules, DataFusion, registry.yaml, FDD engine, SQL cookbook.
Use when pulling, rebuilding, or verifying Open-FDD GHCR stack images. Test channel is nightly. Triggers on: nightly, openfdd-central, openfdd-web, GHCR, openfddstackup, OPENFDDIMAGETAG.