Skip to content

Validate the full standard examples corpus in CI - #81

Merged
ax3l merged 4 commits into
pals-project:mainfrom
ax3l:standard-examples-corpus
Jul 30, 2026
Merged

Validate the full standard examples corpus in CI#81
ax3l merged 4 commits into
pals-project:mainfrom
ax3l:standard-examples-corpus

Conversation

@ax3l

@ax3l ax3l commented Jul 30, 2026

Copy link
Copy Markdown
Member

pals-project/pals#285 grew the standard's examples/ into a corpus of example machines and unit-test lattices. Validate all of it: every *.pals.yaml is discovered automatically and must be readable with pals.load() (*.subpals.yaml include fragments are exempt), keeping the structural spot-checks for fodo.pals.yaml. The files this implementation cannot read yet are recorded in
tests/standard_examples_known_failures.txt, grouped by cause, to be resolved in follow-up PRs. A therein listed file that starts to load is reported so the list only shrinks.

The standard is checked out at a pinned commit (tests/pals_standard_ref.txt) so changes to it cannot break unrelated PRs. As in WarpX, a weekly_update workflow, bumps the pin to the current pals main in a controlled PR of its own.

Similar PR in pals-cpp: pals-project/pals-cpp#89

pals-project/pals#285 grew the standard's examples/ into a corpus of
example machines and unit-test lattices. Validate all of it: every
*.pals.yaml is discovered automatically and must be readable with
pals.load() (*.subpals.yaml include fragments are exempt), keeping the
structural spot-checks for fodo.pals.yaml. The files this
implementation cannot read yet are recorded in
tests/standard_examples_known_failures.txt, grouped by cause, to be
resolved in follow-up PRs; a listed file that starts to load is
reported so the list only shrinks.

The standard is checked out at a pinned commit
(tests/pals_standard_ref.txt) so changes to it cannot break unrelated
PRs; a weekly_update workflow, modeled on WarpX's, bumps the pin to the
current pals main in a controlled PR of its own.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@ax3l
ax3l requested a review from EZoni July 30, 2026 19:57
@ax3l ax3l added the test label Jul 30, 2026
Comment thread tests/validate_standard_examples.py
Comment thread tests/pals_standard_ref.txt

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For this file maybe, now or in the future, a TOML format could be useful in case we want to add metadata to the failures, e.g.,

["machine/machine.pals.yaml"]
reason = "Facility-level includes are not resolved"
issue = 123

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah. But also our goal is that this file is empty when we are done :D

I hope we will not have to permanently exclude files

Comment thread tests/standard_examples_known_failures.txt Outdated
@ax3l
ax3l requested a review from EZoni July 30, 2026 21:42
@ax3l
ax3l force-pushed the standard-examples-corpus branch from a851238 to 6d28297 Compare July 30, 2026 22:00
@ax3l
ax3l merged commit da282cb into pals-project:main Jul 30, 2026
16 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants