Decision needed
ESIID is an ERCOT-specific term (Electric Service Identifier). Other ISOs use:
CAISO — Service Account ID (SAID) / Service Agreement
PJM — Account Number / Service Point
NYISO — ICAP ID / Premise ID
MISO — Premise ID / Account ID
ISO-NE — Account ID
CENACE — RPU (Registro Único de Usuarios) / Punto de Carga
We need a generic term for "the thing we track per ISO." Candidates:
service_point — neutral, used by some ISOs
premise — used by NYISO, MISO
account — too overloaded
Keep esiid as the universal term — fastest, but locks the project to ERCOT vocabulary forever
Affected surfaces if we rename
Table: esiids → service_points (or chosen term)
Model: Esiid → ServicePoint
API path: GET /esiid/{esiid} (Add GET /esiid/{esiid} direct lookup endpoint #14 if not yet implemented) → GET /service_points/{id} or GET /service_points/by_iso_id/{iso}/{id}
API response field: esiid stays as the ERCOT-specific identifier on the record; the universal primary key is the surrogate id
Crate names: esiid-* → handled separately in v0.4.0 crate rename
README, CLAUDE.md, docs
Required output
ADR at docs/adr/0002-domain-term.md documenting the choice and rename plan.
Why now
This decision drives the v0.4.0 implementation work (crate rename, schema rename). Decide once, implement once.
Blocks
v0.4.0 crate rename
v0.4.0 schema implementation
Context
See docs/multi-iso-plan.md for the broader multi-ISO architectural plan.
Decision needed
ESIID is an ERCOT-specific term (Electric Service Identifier). Other ISOs use:
We need a generic term for "the thing we track per ISO." Candidates:
service_point— neutral, used by some ISOspremise— used by NYISO, MISOaccount— too overloadedesiidas the universal term — fastest, but locks the project to ERCOT vocabulary foreverAffected surfaces if we rename
esiids→service_points(or chosen term)Esiid→ServicePointGET /esiid/{esiid}(Add GET /esiid/{esiid} direct lookup endpoint #14 if not yet implemented) →GET /service_points/{id}orGET /service_points/by_iso_id/{iso}/{id}esiidstays as the ERCOT-specific identifier on the record; the universal primary key is the surrogateidesiid-*→ handled separately in v0.4.0 crate renameRequired output
ADR at
docs/adr/0002-domain-term.mddocumenting the choice and rename plan.Why now
This decision drives the v0.4.0 implementation work (crate rename, schema rename). Decide once, implement once.
Blocks
Context
See
docs/multi-iso-plan.mdfor the broader multi-ISO architectural plan.