Consolidate workflow specifications, parameter models, and metadata mechanisms
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- Python
- Sterne
- 1
- Forks
- 3
- Ø Merge
- 2 T. 11 Std.
- Gemergte PRs (30 T.)
- 17
Beschreibung
Motivation
Avoid duplication, unify descriptions, etc. for UI generation and user info.
Relevant bits to be consolidated
- https://github.com/scipp/ess/blob/main/packages/essnmx/src/ess/nmx/configurations.py
- https://github.com/scipp/esslivedata/blob/main/src/ess/livedata/parameter_models.py
- Trimmed-down version of https://github.com/scipp/esslivedata/blob/aaf21dcf92a4df4e2b8b1e7278da96e02cd647b0/src/ess/livedata/config/workflow_spec.py#L246-L252
Probably not for v1: - Instrument-specific metadata (https://github.com/scipp/esslivedata/blob/aaf21dcf92a4df4e2b8b1e7278da96e02cd647b0/src/ess/livedata/config/instruments/loki/specs.py#L182-L227 )
- Models for inputs and outputs (example: https://github.com/scipp/esslivedata/blob/aaf21dcf92a4df4e2b8b1e7278da96e02cd647b0/src/ess/livedata/config/instruments/loki/specs.py#L120-L170)
Maybe start by writing an ADR about a minimal solution so we can have a consensus about scope and shape?
Mandatory reading
I have previously done most of this analysis in scipp/esslivedata#889. Make sure to read it and in particular https://github.com/scipp/esslivedata/issues/889#issuecomment-4311180193 -- the attempt to consolidate everything ended up getting out of hand and blocked the entire work.
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Lies scipp/esslivedata#889 und insbesondere den referenzierten Kommentar, bevor du configurations.py, parameter_models.py und den gekürzten Abschnitt aus workflow_spec.py vergleichst. Beginne mit dem Entwurf eines ADR für eine minimale v1-Konsolidierung, wobei instrumentenspezifische Metadaten sowie Eingabe-/Ausgabemodelle ausdrücklich ausgeschlossen werden. Fertig ist es, wenn Umfang und Struktur vor Beginn der Implementierung abgestimmt sind.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- python
- Bereich
- backend
- Issue-Typ
- Refactoring
- Schwierigkeit
- 5/5
- Geschätzter Aufwand
- Über eine Woche
- Aktivitätsstatus
- Ruhig
- Klarheit
- Muss geklärt werden
- Anfängerfreundlichkeit
- 35/100