-
Notifications
You must be signed in to change notification settings - Fork 0
(PR40) Workflows and Testing #99
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: develop
Are you sure you want to change the base?
Changes from 23 commits
126fe17
e2021e7
739265a
1f39cc2
a6a737b
ebed444
174ea85
4c060b2
4aaa9a3
4e1c512
99f6b3e
b9f73fd
f695ad9
078bd41
81ba900
263da38
e918b26
0946d9c
40ac94a
733aca6
4f0f650
28ce993
0dd10ef
1df44c4
35e9f0c
2184dde
236ebbe
34cca0f
9c557fc
bc2d6b7
6d3a233
132b006
8b9bf1c
2220551
cdf0c19
d118941
5cca4b0
b574ea3
a8b67e2
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,45 @@ | ||
| name: Antares Simulator Update Detected | ||
| description: Automatically created when a new Antares Simulator release is detected | ||
| title: "[ANTARES UPDATE] New release: v" | ||
| labels: ["antares-update"] | ||
| body: | ||
| - type: markdown | ||
| attributes: | ||
| value: | | ||
| This issue was automatically created by the `check-antares-update` workflow. | ||
|
|
||
| **Next step:** review the release notes and open the relevant process issue(s): | ||
| - Impact on GEMS Language docs → open a **DOC-01** issue | ||
| - Impact on model libraries or taxonomies → open a **LT-01** issue | ||
|
|
||
| - type: input | ||
| id: antares_version | ||
| attributes: | ||
| label: New Antares Version | ||
| placeholder: "e.g. 9.4.0" | ||
| validations: | ||
| required: true | ||
|
|
||
| - type: input | ||
| id: previous_version | ||
| attributes: | ||
| label: Previous Tracked Version | ||
| placeholder: "e.g. 9.3.2" | ||
| validations: | ||
| required: true | ||
|
|
||
| - type: textarea | ||
| id: release_notes | ||
| attributes: | ||
| label: Release Notes Summary | ||
| description: Key changes in the new Antares release relevant to GEMS (auto-populated by workflow if available) | ||
|
|
||
| - type: textarea | ||
| id: triage | ||
| attributes: | ||
| label: Triage | ||
| value: | | ||
| - [ ] Release notes reviewed | ||
| - [ ] DOC-01 issue opened (if GEMS Language docs are affected) | ||
| - [ ] LT-01 issue opened (if libraries or taxonomies are affected) | ||
| - [ ] No action needed (if release has no GEMS impact) | ||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,115 @@ | ||
| name: "DOC-01 — Antares evolution impact on GEMS Language" | ||
| description: Track GEMS Language documentation updates triggered by a new Antares-Simulator/Modeler release | ||
| title: "[DOC-01] Antares v — GEMS Language impact" | ||
|
nikolaredstork marked this conversation as resolved.
Outdated
|
||
| labels: ["DOC-01", "antares-update"] | ||
| body: | ||
| - type: markdown | ||
| attributes: | ||
| value: | | ||
| **Process DOC-01** — Triggered by a new Antares-Simulator/Modeler release that affects the GEMS Language definition, modeler API, or documented behavior. | ||
|
|
||
| > **Deviation from standard workflow — Step 4:** documentation update must precede any implementation. Update the GEMS Language specification first, then update libraries or examples. | ||
|
|
||
| - type: input | ||
| id: antares_new_version | ||
| attributes: | ||
| label: New Antares Version | ||
| placeholder: "e.g. 9.4.0" | ||
| validations: | ||
| required: true | ||
|
|
||
| - type: input | ||
| id: antares_previous_version | ||
| attributes: | ||
| label: Previous Tracked Version | ||
| placeholder: "e.g. 9.3.2" | ||
| validations: | ||
| required: true | ||
|
|
||
| - type: textarea | ||
| id: trigger | ||
| attributes: | ||
| label: Trigger | ||
| description: What changed in the new Antares release? Link to the release notes or changelog. | ||
| validations: | ||
| required: true | ||
|
|
||
| - type: textarea | ||
| id: impact | ||
| attributes: | ||
| label: Impact Analysis | ||
| description: | | ||
| Assess the impact across all four dimensions: | ||
| - **Compatibility** — breaking vs backward-compatible? | ||
| - **Modeling behavior** — syntax, semantics, or API changes? | ||
| - **Results** — does it affect objective function values of documentation examples? | ||
| - **Dependencies** — which interpreters are affected (GemsPy, Antares Modeler)? | ||
| validations: | ||
| required: true | ||
|
|
||
| - type: textarea | ||
| id: interpreter_support | ||
| attributes: | ||
| label: Interpreter Support Status | ||
| description: | | ||
| For each changed feature, explicitly state whether it is supported by: | ||
| - Antares Modeler vX.Y.Z | ||
| - GemsPy vX.Y.Z | ||
| Mark features as: Supported / Not yet supported / Deprecated. | ||
|
|
||
| - type: textarea | ||
| id: validation_strategy | ||
| attributes: | ||
| label: Validation Strategy | ||
| description: How will correctness be validated? (E2E comparison, manual review, new reference values?) | ||
| validations: | ||
| required: true | ||
|
|
||
| - type: textarea | ||
| id: checklist | ||
| attributes: | ||
| label: Process Checklist | ||
| value: | | ||
| ### Step 1 — Issue Creation | ||
| - [x] Issue created and linked to process DOC-01 | ||
|
|
||
| ### Step 2 — Triage | ||
| - [ ] Process confirmed applicable | ||
| - [ ] Assigned to responsible contributor | ||
| - [ ] Priority and milestone set (if applicable) | ||
|
|
||
| ### Step 3 — Impact Analysis | ||
| - [ ] Antares release notes reviewed for GEMS Language-relevant changes | ||
| - [ ] Compatibility impact assessed (breaking vs backward-compatible) | ||
| - [ ] Modeling behavior impact assessed (syntax, semantics, modeler API) | ||
| - [ ] Results impact assessed (documentation examples) | ||
| - [ ] Interpreter support status determined for each affected feature | ||
|
|
||
| ### Step 4 — Implementation ⚠️ docs update precedes implementation | ||
| - [ ] GEMS Language specification updated first (before library or example changes) | ||
| - [ ] New features documented and marked as supported/unsupported per interpreter | ||
| - [ ] Deprecated features clearly marked in documentation | ||
| - [ ] Examples provided for new or changed features | ||
| - [ ] Implementation (libraries, studies) updated to align with updated spec | ||
|
|
||
| ### Step 5 — Testing & Validation | ||
| - [ ] Quick Start Examples verified against new Antares binary | ||
| - [ ] E2E tests pass (compare objective values: previous vs new Antares version) | ||
|
|
||
| ### Step 6 — CI Validation | ||
| - [ ] Documentation build passes (`mkdocs build`) | ||
| - [ ] E2E tests pass in CI | ||
|
|
||
| ### Step 7 — Review & Merge | ||
| - [ ] PR reviewed alongside documentation changes | ||
|
|
||
| ### Step 8 — Versioning | ||
| - [ ] `versions/antares-simulator.txt` updated to new version | ||
| - [ ] `versions/gems-language.txt` bumped (minor if new features, patch if clarification only) | ||
|
|
||
| ### Step 9 — Release | ||
| - [ ] Release documents supported Antares version, compatibility, and behavior changes | ||
|
|
||
| ### Step 10 — Documentation & Changelog | ||
| - [ ] `CHANGELOG-gems-language.md` entry added | ||
| - [ ] `COMPATIBILITY.md` updated with new version mapping | ||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,80 @@ | ||
| name: "DOC-02 — Internal documentation improvement" | ||
| description: Track website updates, content fixes, structural improvements, or clarifications to GEMS documentation | ||
| title: "[DOC-02] " | ||
| labels: ["DOC-02", "documentation"] | ||
| body: | ||
| - type: markdown | ||
| attributes: | ||
| value: | | ||
| **Process DOC-02** — Triggered by internal initiative to improve the GEMS documentation website. Not driven by an external tool update. | ||
|
|
||
| > **Deviation from standard workflow — Step 8:** versioning may be limited to a patch bump. A dedicated release is not required for documentation-only changes. | ||
|
|
||
| - type: dropdown | ||
| id: change_type | ||
| attributes: | ||
| label: Type of Change | ||
| options: | ||
| - New content | ||
| - Fix inconsistency or error | ||
| - Restructure or reorganise sections | ||
| - Improve or add examples | ||
| - Language clarification (may require patch version bump) | ||
| validations: | ||
| required: true | ||
|
|
||
| - type: textarea | ||
| id: description | ||
| attributes: | ||
| label: Description | ||
| description: What improvement is being proposed and why? | ||
| validations: | ||
| required: true | ||
|
|
||
| - type: textarea | ||
| id: affected_sections | ||
| attributes: | ||
| label: Affected Documentation Sections | ||
| description: Which doc pages or sections are affected? (e.g. `doc/2_model_library/`, `doc/0_quickstart/`) | ||
| validations: | ||
| required: true | ||
|
|
||
| - type: textarea | ||
| id: checklist | ||
| attributes: | ||
| label: Process Checklist | ||
| value: | | ||
| ### Step 1 — Issue Creation | ||
| - [x] Issue created and linked to process DOC-02 | ||
|
|
||
| ### Step 2 — Triage | ||
| - [ ] Process confirmed applicable | ||
| - [ ] Assigned to responsible contributor | ||
| - [ ] Priority and milestone set (if applicable) | ||
|
|
||
| ### Step 3 — Impact Analysis | ||
| - [ ] Affected documentation sections identified | ||
| - [ ] Inconsistencies between documentation and existing implementation identified | ||
| - [ ] Assessed whether change affects the GEMS Language definition (or is purely editorial/structural) | ||
| - [ ] No undocumented behavior will be introduced | ||
|
|
||
| ### Step 4 — Implementation | ||
| - [ ] Documentation pages updated | ||
| - [ ] Internal links verified | ||
| - [ ] No inconsistency introduced between documentation and implementation | ||
|
|
||
| ### Step 5 — Testing & Validation | ||
| - [ ] All documentation examples validated (no broken or incorrect examples) | ||
|
|
||
| ### Step 6 — CI Validation | ||
| - [ ] Documentation build passes (`mkdocs build`) without warnings | ||
|
|
||
| ### Step 7 — Review & Merge | ||
| - [ ] PR reviewed alongside documentation changes | ||
|
|
||
| ### Step 8 — Versioning ⚠️ patch bump only (or none for purely editorial changes) | ||
| - [ ] If language clarification: `versions/gems-language.txt` patch version bumped | ||
| - [ ] If purely editorial/structural: no version bump required | ||
|
|
||
| ### Step 10 — Documentation & Changelog | ||
| - [ ] If language clarification: `CHANGELOG-gems-language.md` entry added |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,103 @@ | ||
| name: "LT-01 — Antares evolution impact on libraries and taxonomies" | ||
| description: Track updates to GEMS model libraries or taxonomies triggered by a new Antares-Simulator/Modeler release | ||
| title: "[LT-01] Antares v — library/taxonomy impact" | ||
|
nikolaredstork marked this conversation as resolved.
Outdated
|
||
| labels: ["LT-01", "antares-update"] | ||
| body: | ||
| - type: markdown | ||
| attributes: | ||
| value: | | ||
| **Process LT-01** — Triggered by a new Antares-Simulator/Modeler release that affects GEMS model libraries or taxonomies. | ||
|
|
||
| > **Deviation from standard workflow — Step 4:** enforce alignment with GEMS Language semantics. All model and taxonomy updates must remain consistent with the GEMS Language specification (see DOC-01 if the spec itself changes). | ||
|
|
||
| - type: input | ||
| id: antares_new_version | ||
| attributes: | ||
| label: New Antares Version | ||
| placeholder: "e.g. 9.4.0" | ||
| validations: | ||
| required: true | ||
|
|
||
| - type: input | ||
| id: antares_previous_version | ||
| attributes: | ||
| label: Previous Tracked Version | ||
| placeholder: "e.g. 9.3.2" | ||
| validations: | ||
| required: true | ||
|
|
||
| - type: textarea | ||
| id: trigger | ||
| attributes: | ||
| label: Trigger | ||
| description: What changed in the new Antares release that affects libraries or taxonomies? Link to release notes. | ||
| validations: | ||
| required: true | ||
|
|
||
| - type: checkboxes | ||
| id: affected_libraries | ||
| attributes: | ||
| label: Potentially Affected Libraries | ||
| description: Check all libraries that need to be reviewed. | ||
| options: | ||
| - label: "`basic_models_library.yml`" | ||
| - label: "`antares_legacy_models.yml`" | ||
| - label: "`pypsa_models.yml`" | ||
| - label: "`andromede_models.yml`" | ||
|
Collaborator
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. We will need to update this eachtime we add a library into GEMS repo ?
Collaborator
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Yes, but I will try to make it dynamic!
Collaborator
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Cannot make it dynamic, instead I've created text area. |
||
|
|
||
| - type: textarea | ||
| id: validation_strategy | ||
| attributes: | ||
| label: Validation Strategy | ||
| description: How will equivalence be validated? (comparison studies, reference values, E2E against new binary?) | ||
| validations: | ||
| required: true | ||
|
|
||
| - type: textarea | ||
| id: checklist | ||
| attributes: | ||
| label: Process Checklist | ||
| value: | | ||
| ### Step 1 — Issue Creation | ||
| - [x] Issue created and linked to process LT-01 | ||
|
|
||
| ### Step 2 — Triage | ||
| - [ ] Process confirmed applicable | ||
| - [ ] Assigned to responsible contributor | ||
| - [ ] Priority and milestone set (if applicable) | ||
|
|
||
| ### Step 3 — Impact Analysis | ||
| - [ ] Antares release notes reviewed for library-relevant changes | ||
| - [ ] Each affected library YAML checked for compatibility with new Antares version | ||
| - [ ] Breaking vs backward-compatible changes identified per library | ||
| - [ ] Modeling behavior impact assessed (changes in optimization formulation) | ||
| - [ ] Results impact assessed (objective function values expected to change?) | ||
| - [ ] Dependencies assessed (affected studies in `resources/`) | ||
|
|
||
| ### Step 4 — Implementation ⚠️ enforce alignment with GEMS Language semantics | ||
| - [ ] Models and taxonomies updated to reflect GEMS Language changes (aligned with DOC-01 if applicable) | ||
| - [ ] No semantic inconsistency introduced with GEMS Language definition | ||
| - [ ] Backward compatibility maintained unless explicitly intended as breaking | ||
| - [ ] All studies referencing updated models verified (parameter counts, port refs) | ||
|
|
||
| ### Step 5 — Testing & Validation | ||
| - [ ] Unit tests pass | ||
| - [ ] Comparison studies run: previous Antares version vs new version (objective values compared) | ||
| - [ ] E2E tests pass against new Antares binary | ||
|
|
||
| ### Step 6 — CI Validation | ||
| - [ ] E2E tests pass in CI | ||
|
|
||
| ### Step 7 — Review & Merge | ||
| - [ ] PR reviewed alongside documentation changes | ||
|
|
||
| ### Step 8 — Versioning | ||
| - [ ] `versions/antares-simulator.txt` updated to new version | ||
| - [ ] Version file bumped for each affected library (`versions/<library>.txt`) | ||
|
|
||
| ### Step 9 — Release | ||
| - [ ] Release documents supported Antares version, compatibility, and behavior changes per library | ||
|
|
||
| ### Step 10 — Documentation & Changelog | ||
| - [ ] Changelog entry added for each affected library (`libraries/CHANGELOG-<library>.md`) | ||
| - [ ] `COMPATIBILITY.md` updated with new version mapping | ||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Why "v" ? Either fetch the version numer or just remove it ?
Uh oh!
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done! I've excluded it.