Repository navigation
Conversation
Both entries lacked the field, which eos.DataSetDescription requires, so eos.Datasets could not deserialise the registry at all. The version is the one stated in each data set's README.
Replace the hand-maintained matrix in the validation workflow with one built from a new record, .github/analyses.yaml, which names the analysis files of each data set at its highest released revision. A first job turns that record into a job matrix; a second checks out each data set's branch and validates one analysis file per job. Validation now runs in docker.io/eoshep/release:latest rather than against a pinned prerelease of eoshep installed with pip. eos-analysis validate exits 0 whether or not it finds anything, so the check runs through a driver that reports the errors found as JSON. Releases up to 1.0.21 have no notion of severity and print one line per error; later EOS returns diagnostics carrying a severity, of which only the errors are reported. Warnings are expected for released data sets and must not raise an alarm. Errors open an issue per data set and analysis file, or update the body of the issue already open for it. Issues are never closed automatically. The composite action is dropped, having become unused.
v4.4.0 declared the deprecated stage names 'commit' and 'push', which a future pre-commit will reject.
There was a problem hiding this comment.
Copilot review overview
🟡 Changes recommended
The analysis inventory omits three released data sets despite its stated completeness contract.
Review effort: Balanced
Findings: 1
Open (1)
What changed in this PR
Introduces scheduled validation of released EOS analysis files against the latest EOS container.
Changes:
- Builds validation jobs from a centralized analysis inventory.
- Reports validation errors through annotations and persistent issues.
- Updates dataset metadata and pre-commit hooks.
| File | Description |
|---|---|
.github/analyses.yaml |
Defines analysis files and validation eligibility. |
.github/workflows/validate.yaml |
Runs scheduled matrix validation. |
.github/scripts/build_matrix.py |
Generates the job matrix. |
.github/scripts/validate_analysis.py |
Filters and serializes EOS diagnostics. |
.github/scripts/report_issue.sh |
Creates or updates validation issues. |
.github/actions/validate-analysis/action.yml |
Removes the superseded composite action. |
datasets.yaml |
Adds missing EOS versions. |
.pre-commit-config.yaml |
Upgrades pre-commit hooks. |
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
| analysis_files: | ||
| - analysis.yaml | ||
|
|
||
| 2025-01: |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

Replaces the hand-maintained matrix in
validate.yamlwith one built from a newrecord,
.github/analyses.yaml, naming the analysis files of each data set. Afirst job turns that record into a job matrix; a second checks out each data
set's branch and validates one analysis file per job, in
docker.io/eoshep/eos:latest. Weekly, plus manual dispatch.Errors open an issue per data set and analysis file, or update the one already
open; issues are never closed automatically. Only ERROR diagnostics count;
warnings ("prior is unused", "default value may change across versions") are
expected for released data sets and would otherwise be permanent noise. Where
EOS reports a line, the issue links to it at the data set's own commit.
Validated for now: 2025-05, 2025-06, 2026-03. The rest carry
skip: Trueuntilthey have been looked at; 2026-01 has no analysis file.
Two unrelated commits ride along, both separable:
eos_versionfor 2025-05 and 2025-06 indatasets.yaml. Without iteos.Datasetscannot parse the registry at all.Not yet run in Actions:
scheduleandworkflow_dispatchonly work once theworkflow is on the default branch. Worth dispatching by hand after merging.
Expected: 2025-06 and 2026-03 silent, 2025-05 opening three issues of four
errors each (
corner-plotis no longer a task). A second run should updatethose three rather than open three more.