Single-source README integrations and gate roadmap current marker#576
Single-source README integrations and gate roadmap current marker#576leno23 wants to merge 1 commit into
Conversation
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: cb892c4aa7
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| _ROADMAP_CURRENT_RE = re.compile( | ||
| r"^\|\s*\*\*([^|]+?)\*\*\s*\|\s*✅ current(?: \(([^)]+)\))?\s*\|", | ||
| re.MULTILINE, |
There was a problem hiding this comment.
Match dated roadmap rows in the drift guard
The committed README's actual Roadmap row is shaped like | **v0.14.1 — ...** (2026-06-11) | ✅ current ... |, but this regex requires the cell delimiter immediately after the closing **, so it only matches the separate “Recent milestones” row and misses the dated Roadmap table entirely. As a result, a stale or duplicate ✅ current marker in the Roadmap section can drift without readme-version-check failing as long as the top summary table remains in sync.
Useful? React with 👍 / 👎.
dgenio
left a comment
There was a problem hiding this comment.
REQUEST_CHANGES — two quick fixes; the data and table-dedup work itself is clean.
🔴 Blocker — CI is red on test (3.12) (make llms-check). The failure is not the new tests (those pass); it's llms-full.txt drift. That generated file embeds README.md and docs/agent-context/workflows.md verbatim, both edited here, so it's now stale. Run make llms and commit the regenerated llms.txt/llms-full.txt. This is also a stated #531 acceptance criterion ("make ci green").
🟠 Major — the roadmap guard only covers one of the two ✅ current tables (inline on scripts/check_readme_version.py). The regex matches the summary row (L619) but not the dated "Recent milestones" row (L795) — which is the exact table #531 cited as stale evidence. As written, the guard wouldn't catch the bug it was built to prevent. One-line regex relaxation + a dated-row fixture closes it.
🟡 Minor (non-blocking) — leftover precise test count. #531 task 4 asked to reconcile 1100+ vs 1150+. L456 was de-precised ("Broad regression suite") but 1150+ tests passing still sits at L42, mixing a vague claim with a precise one. Worth aligning while here; not a blocker.
What's good: framework table is cleanly single-sourced (mirror + "keep in sync" comment removed), roadmap data is corrected to v0.14.1, CHANGELOG + workflows.md updated, and the new checker logic has passing unit tests (7/7 locally). This overlaps with the existing Codex thread, which raised the same regex gap.
Generated by Claude Code
| _README_COMPARE_RE = re.compile(r"this repo,\s*\[v([0-9][^\]]*)\]") | ||
| # Roadmap status row: ``| **v0.14.1 — ...** | ✅ current (v0.14.1) | ... |``. | ||
| _ROADMAP_CURRENT_RE = re.compile( | ||
| r"^\|\s*\*\*([^|]+?)\*\*\s*\|\s*✅ current(?: \(([^)]+)\))?\s*\|", |
There was a problem hiding this comment.
The guard misses the dated roadmap table — the row #531 actually flagged.
_ROADMAP_CURRENT_RE requires the cell delimiter immediately after the bold close (\*\*\s*\|), so it matches the summary row (| **v0.14.1** | ✅ current ... |, README L619) but not the dated row (| **v0.14.1 — …** (2026-06-11) | ✅ current ... |, L795) — the date between ** and | breaks the match. Verified: findall on the committed README returns only [('v0.14.1', 'v0.14.1')].
Impact: a stale ✅ current in the dated "Recent milestones" table — exactly the staleness cited at README.md:785 in #531 — would still pass CI, so the guard wouldn't catch the bug it was built to prevent.
Suggestion: allow optional content between the bold close and the delimiter, e.g. \*\*[^|]*?\|, and add a fixture with a dated ✅ current row to lock it in.
Generated by Claude Code
Closes #531
Summary
readme-version-checkto fail when roadmapcurrentrows omit or lag the pyproject versionVerification
python3 scripts/check_readme_version.pyuvx --from ruff ruff format --check scripts/check_readme_version.py tests/test_check_readme_version.pyuvx --from ruff ruff check scripts/check_readme_version.py tests/test_check_readme_version.pyuvx --with . --with pytest --with pytest-asyncio python -m pytest tests/test_check_readme_version.py -qtmpdir=$(mktemp -d); ln -s /Users/wuyangfan/.local/bin/python3.11 "$tmpdir/python"; PATH="$tmpdir:$PATH" make readme-version-checkgit diff --check