OpenEnergyPlatform / OpenEnergyPlatform/oeplatform
Academy notebook: re-import a scenario bundle from a pipeline
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 65
- Forks
- 29
- Avg merge
- 15h 25m
- Merged PRs (30d)
- 32
Description
Parent
Spec: #2454 — Document and teach the OEKG REST API. Derived from WF-15 decisions D11–D16.
Cross-repo: work in OpenEnergyPlatform/academy.
What to build
A pipeline author learns the case the declarative endpoint was built for: a run that holds no state between runs finds last month's bundle by its acronym and replaces it wholesale.
Standalone like its sibling — its create is scaffolding, stated as such in the prose, not a second lesson in creating. And in this notebook the leftover guard is the lesson: checking for a bundle from an earlier run is literally the ?acronym= re-identification the notebook exists to teach.
Acceptance criteria
- Sits in the same scenario-bundles tutorials folder, numbered after the researcher notebook.
- Same setup rules as its sibling: token from environment or prompt, stable per-reader acronym with no working default, failing loudly when unset.
- Its own acronym, distinct from the researcher notebook's, so the two can be run in either order without interfering.
- Opens with the leftover guard, and the prose names it as the re-identification lesson rather than as housekeeping.
- Creates a bundle as scaffolding, stated as scaffolding.
- The arc: re-identify by acronym (which also yields the precondition token), replace the whole bundle in one call, read the history to see the two runs side by side, then delete with the two-step protocol.
- Explains that delete-by-omission is the semantics of
replace/and of nothing else, linking the rule rather than restating it. - Dated banner, real feedback issue number, executed once with outputs committed.
Blocked by
- #2460 — the client rules page.
- External, outside this spec: the API slices The read side, completed (for the acronym lookup) and Replace the whole bundle in one call. Neither exists yet, which makes this the last thing to land in the whole effort.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the sibling researcher notebook in the scenario-bundles tutorials folder and the client rules from #2460. Confirm that the acronym lookup and whole-bundle replacement API slices are available before implementing the notebook flow. Done means the dated, executed notebook has committed outputs, a distinct acronym, the documented leftover guard, history check, and two-step deletion.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- jupyter-notebook, python
- Domain
- api, documentation
- Issue type
- Documentation
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Clearly specified
- Newbie friendliness
- 35/100