Skip to content

Split centralized manifest.json into per-spec manifest.json files#180

Merged
ahelwer merged 6 commits into
tlaplus:masterfrom
ahelwer:split-manifest
Aug 1, 2025
Merged

Split centralized manifest.json into per-spec manifest.json files#180
ahelwer merged 6 commits into
tlaplus:masterfrom
ahelwer:split-manifest

Conversation

@ahelwer
Copy link
Copy Markdown
Collaborator

@ahelwer ahelwer commented Jul 31, 2025

In furtherance of #171. These changes:

  • Initially modify generate_manifest.py to split the existing manifest into per-directory manifests
  • Append the output of running the generate_manifest.py script, which is a large number of small manifests
  • Change the manifest-schema.json to validate the split manifests
  • Change all the CI validation scripts to use split manifests
  • Change the CI workflow itself to use the updated script arguments
  • Deletes the central manifest.json file
  • Update the repository documentation to reflect the new split nature of the manifest

Now that we have per-spec manifests, we can incrementally devolve the various components of the manifests into either the README table or the specs themselves. Ideally we will reach a world where no manifests exist at all, but some features like recording the model state count will make that difficult. Putting those details as comments in the model is one possibility.

ahelwer added 6 commits July 31, 2025 12:55
Signed-off-by: Andrew Helwer <ahelwer@pm.me>
Signed-off-by: Andrew Helwer <ahelwer@pm.me>
Signed-off-by: Andrew Helwer <ahelwer@pm.me>
Signed-off-by: Andrew Helwer <ahelwer@pm.me>
…anifests

Signed-off-by: Andrew Helwer <ahelwer@pm.me>
Signed-off-by: Andrew Helwer <ahelwer@pm.me>
@ahelwer ahelwer marked this pull request as ready for review August 1, 2025 17:07
@ahelwer ahelwer requested a review from lemmy August 1, 2025 17:10
Comment thread README.md
They are not covered by CI testing so it is possible they contain errors, the reported details are incorrect, or they are no longer available.
## Other Examples
Here is a list of specs stored in locations outside this repository or not validated by the CI, such as submodules.
Since these specs are not covered by CI testing it is possible they contain errors, the reported details are incorrect, or they are no longer available.
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.

This is factually incorrect. These specifications may not be covered by the CI in this repository, but they could be managed by their own dedicated CI pipelines. For example, the BlockingQueue specs have their own CI.

Copy link
Copy Markdown
Collaborator Author

@ahelwer ahelwer Aug 1, 2025

Choose a reason for hiding this comment

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

If the BlockingQueue repository is moved or deleted then it will no longer be available, as stated. Although this itself will probably be detected in the next CI run, when git tries to clone a submodule that no longer exists.

Comment thread README.md

## Examples Included Here
Here is a list of specs included in this repository, with links to the relevant directory and flags for various features:
## Validated Examples Included Here
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.

Again, why not have a single table that has an additional column that indicates if a spec has CI?

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

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

We can certainly look at doing that in the future, but that's beyond the scope of this PR.

Copy link
Copy Markdown
Member

@lemmy lemmy left a comment

Choose a reason for hiding this comment

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

I don't know enough about the python tooling to review it. The markdown files and the CI.yml look ready to merge (modulo my comments below).

@ahelwer ahelwer merged commit c19a200 into tlaplus:master Aug 1, 2025
13 of 14 checks passed
@ahelwer ahelwer deleted the split-manifest branch August 1, 2025 20:24
ahelwer added a commit to ahelwer/tlaplus that referenced this pull request Aug 1, 2025
Reflect changes in tlaplus/Examples#180

[CI]

Signed-off-by: Andrew Helwer <ahelwer@pm.me>
ahelwer added a commit to ahelwer/tlapm that referenced this pull request Aug 1, 2025
Reflect changes in tlaplus/Examples#180

Signed-off-by: Andrew Helwer <ahelwer@pm.me>
ahelwer added a commit to ahelwer/tlaplus that referenced this pull request Aug 1, 2025
Reflect changes in tlaplus/Examples#180

[CI]

Signed-off-by: Andrew Helwer <ahelwer@pm.me>
ahelwer added a commit to ahelwer/tlapm that referenced this pull request Aug 1, 2025
Reflect changes in tlaplus/Examples#180

Signed-off-by: Andrew Helwer <ahelwer@pm.me>
ahelwer added a commit to tlaplus/tlapm that referenced this pull request Aug 1, 2025
Reflect changes in tlaplus/Examples#180

Signed-off-by: Andrew Helwer <ahelwer@pm.me>
lemmy pushed a commit to tlaplus/tlaplus that referenced this pull request Aug 5, 2025
Reflect changes in tlaplus/Examples#180

[CI]

Signed-off-by: Andrew Helwer <ahelwer@pm.me>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

2 participants