brainstorming
brainstorming
You MUST use this before any creative work - creating features, building components, adding functionality, modifying behavior, or planning anything new, in software or out of it (a talk, a business, a renovation).
parsersUse when adding, debugging, inspecting, or smoke-testing Electricity Maps live parsers and parser registry mappings.
Independent GitHub snapshot · Automated classification · Original documentation governs
Use this sub-skill for live Electricity Maps parser work: production, consumption, price, exchange, forecast, grid-alert, locational marginal price, and intraday-statistics parser functions.
Do not use this route for installed capacity updates or productionCapacity
execution; those belong to capacity. Use
configuration for broad zone/exchange YAML model
validation beyond parser mapping fields.
Identify whether the task is zone-side or exchange-side. Exchange-side data
types use two zone keys and exchange identifiers such as NO-NO3->SE.
Identify the parser data type. If the user omits it, production is the usual default for a zone and exchange is the usual default for an exchange key.
Check whether a config mapping already exists before editing parser code:
python scripts/test_parser.py --repo-root <checkout> --describe FR production
python scripts/test_parser.py --repo-root <checkout> --list
Only use live execution after confirming network/API-token expectations:
python scripts/test_parser.py --repo-root <checkout> --execute FR production \
--target-datetime "2024-01-01T00:00:00+00:00"
ParserDataType groups, registry mappings, output model expectations, mode
enums, and decorator/token helpers.scripts/test_parser.py is an adapted safe wrapper for registry inspection
and optional live parser execution. Run --help first when unsure.zone_key, session, target_datetime, logger.zone_key1, zone_key2, session, target_datetime, logger.datetime.datetime values. Missing production modes should be omitted or
None, not silently set to zero unless the source explicitly reports zero.ProductionBreakdownList, TotalConsumptionList, ExchangeList,
PriceList, and related event-list helpers when possible so output fields
stay consistent.tests/test_parser_interface.py after changing signatures, config
parser mappings, ParserDataType, or parser registry behavior.uv run pytest tests/test_parser_interface.py -q
uv run pytest electricitymap/contrib/parsers/tests/test_<PARSER>.py -q
uv run test-parser FR production
uv run test-parser "NO-NO3->SE" exchange
If the command fails before reaching parser code, first run the root
scripts/check_environment.py --repo-root <checkout> diagnostic and then read
repo troubleshooting.