Repository navigation
Add CI, Pages and recipe-intake workflows - #4
Merged
Merged
Conversation
- ci.yml: ruff + pytest (3.10–3.13, macOS, Windows) + registry index check - pages.yml: build and deploy the exchange site to GitHub Pages - recipe-intake.yml: validate recipe issues and open a PR into the index Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The bundled indexes are written with ensure_ascii=False, so titles like "Apple M4 Pro · 24 GB" are stored as raw UTF-8. On Windows, read_text() without an encoding decodes with cp1252, which garbled those characters: recipe content hashes stopped matching their ids and `modexai registry --check` reported the index as stale. Pass encoding="utf-8" to every read_text/write_text/open of a text file in src/, scripts/ and tests/. No change on macOS/Linux, where UTF-8 was already the default. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
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
Adds three GitHub Actions workflows:
ci.yml: runs on pushes tomainand on every PR. It runsruff check, thenpytest(simulated backend, so no Ollama is needed) on Python 3.10–3.13 on Ubuntu, plus Python 3.12 on macOS and Windows. It finishes withmodexai registry --check, which fails if the bundled index is out of date.pages.yml: builds the exchange site withscripts/build_site.pyand deploys it to GitHub Pages. It runs on pushes tomainthat touch the web, data or suites folders, the site script orllms.txt, and can also be started by hand.recipe-intake.yml: runs on issues that carry therecipelabel or contain themodexai-recipemarker. It validates the recipe withscripts/intake.py(the issue body is only parsed as JSON and never executed), rebuilds the index, opens arecipe/<id>PR and comments the result back on the issue.Windows fix
The first run of the new Windows job found a real bug. The bundled indexes are written with
ensure_ascii=False, so characters like·in recipe titles are stored as raw UTF-8. On Windows,read_text()without an encoding decodes with cp1252, which garbled those characters. Recipe hashes then stopped matching their IDs, andregistry --checkreported the index as stale. This PR addsencoding="utf-8"to every text-file read and write insrc/,scripts/andtests/. Nothing changes on macOS or Linux, where UTF-8 was already the default.subprocess.run(..., text=True)calls were left alone on purpose. They decode system-tool output, where the locale default is the right choice.Test plan
uv run ruff check .: all checks passeduv run pytest -q: 52 passeduv run modexai registry --check: 25 models, 96 recipes, index is currentrecipelabelpages.ymlcan deploy🤖 Generated with Claude Code