Repository navigation
Publish the book on GitHub Pages; OpenSysML terminology and contribution policy - #29
Merged
Merged
Conversation
… reports resolved tools scripts/provision-tools.py downloads sysmlv2, z3, the PlantUML jar and the SysML v2 standard library into .tools/ in the layout toaster.tools resolves, verifying every download against scripts/tool-pins.json before installing. scripts/check-tools.py now prints each resolved tool and its version and exits non-zero, naming the provisioning command, if one is missing or broken.
…local-paths guard test
…ion of PUB-3 and PUB-5)
…red gaps and issues to GitHub (PUB-6A)
…d gaps on GitHub, reword setup labels
…cache successful probes
… and README (DL-122)
…ide, setup, README, ch10
…dit; CT-3/3b complete
…ate learning outcome (DL-124)
…ected against D-037 (DL-125)
…ns/ row says decision log (DL-124)
|
Check out this pull request on See visual diffs & provide feedback on Jupyter Notebooks. Powered by ReviewNB |
HuiJun
self-requested a review
October 5, 2026 00:11
HuiJun
approved these changes
Oct 5, 2026
HuiJun
left a comment
Collaborator
There was a problem hiding this comment.
I ran this through our agents and checked all the nits that it had, but seems they're all documented as well. We could also open a PR to bump the version once we have permission.
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.
Summary
Publishes the book on GitHub Pages at
https://open-mbee.github.io/toaster/, and brings the repository's wording and contribution policy into line with how the book is now published.Nothing deploys from this PR. The
deployjob runs only on a push tomain, and Pages has to be enabled first (see "Before merging").What changed
1. A reproducible build and a Pages pipeline (the work that makes the site publishable)
toaster.toolsresolves every external tool (thesysmlv2binary, its standard library, the PlantUML jar, Java, Z3) from environment variables, then.tools/, thenPATH. No notebook, test or script names a home directory or a Homebrew path any more (a guard test fails if one comes back).scripts/provision-tools.pydownloads the pinned tools (scripts/tool-pins.json: sysml-toolkit v0.9.1, Z3 5.1.0, PlantUML 1.2026.8, the SysML v2 standard library at a pinned commit), verifies each download by sha256 or commit before installing, and is idempotent.scripts/check-tools.pyreports what was resolved.scripts/check-site.pyis the release gate: the executed build's log has no cell errors; the content has the expected 18 figures; no built text file contains a host path; no exercise notebook orDEFERRED.mdis published as a raw download; every root-relative link and asset carries the/toasterbase and resolves..github/workflows/ci.ymlruns onubuntu-24.04: provision, test (withTOASTER_REQUIRE_TOOLS=1, so a missing tool fails instead of skipping),myst build --html --execute --strictwithBASE_URL=/toaster, the gate, then upload and deploy only from a push tomain. Pull requests build and gate but cannot deploy.decisions/pages-publishing-survey.mdanddecisions/pages-publishing/.2. OpenSysML terminology (
opensysml.orgcalls OpenSysML a stack; this repo had used the name for the Go runtime only)opensysml, v0.9.0) and sysml-toolkit (Rust,sysmlv2, v0.9.1); a claim true of one component names it. The OMG SysML v2 Pilot Implementation is the conformance baseline, not part of OpenSysML. Convention:AGENTS.md1.2.import) would have become false under the broader name; each was checked against itsDEFERRED.mdentry and rewritten.glossary/lint_rules.toml) now block the ambiguous patterns in learner prose.3. Contribution policy (
AGENTS.md1.12,docs/contributor.md,.github/PULL_REQUEST_TEMPLATE.md)4. Protection against regressions in the edits themselves
scripts/check-terminology-edit.pyverifies that a prose-only change leaves models, judgment records, notebook code cells and stored outputs,DEFERRED.mdheadings, skill code fences and protected tokens alone.Evidence
--strictbuilds of both base and head with the pinned tools): executed outputs identical across 59 content files;models/anddecisions/judgment-records/byte-identical; the judgment record'scontent_hashstill equals the model file's sha256; visible page text differs only on edited sources, and every changed line maps to an approved text.decisions/log.md.Before merging
AGENTS.md1.9 / "content" / "keep current"; and the defaults that 1.12 carries no pull-request exception.Test plan
buildjob green on this PR (provision, tests, executed strict build, release gate)deployjob skipped on this PRmainrun:buildgreen,deployruns, the deploy step reports the Pages URLcurl -sS -o /dev/null -w '%{http_code}'returns 200 for/toaster/,/toaster/setup,/toaster/glossary,/toaster/part-def,/toaster/interfaces,/toaster/judgment-synthesis;/toaster/interfaces.jsonand/toaster/judgment-synthesis.jsoncontainimage/svg+xml; no fetched page containsDocuments/GitHubor/opt/homebrewKnown, not blocking
OpenSysML itselflabel in a Chapter 7 stored output stays (stored outputs are not edited in a prose pass); the prose around it explains it.decisions/diagram-survey.mdis kept as dated evidence.glossary lintexits 1 on 77 pre-existing em-dash findings; it is not a CI gate, and the contributor guide asks for "no new hits against the base".decisions/pages-publishing-survey.md); recorded there as a follow-up, not yet a tracked issue.🤖 Generated with Claude Code