Skip to content

docs: replace PROVENANCE.md with CSwFP.yaml and slim DEVIATIONS.md - #32

Merged
arademaker merged 3 commits into
mainfrom
docs/provenance-check
Sep 26, 2026
Merged

arademaker merged 3 commits into
mainfrom
docs/provenance-check

Conversation

@arademaker

@arademaker arademaker commented Sep 26, 2026 •

Copy link
Copy Markdown
Member

PROVENANCE.md and DEVIATIONS.md had grown long, kept a history of past decisions, and had drifted from the book. This replaces them with a record of the current state only.

  • CSwFP.yaml (new, replaces PROVENANCE.md):
    • exercises: every exercise of CSwFP/1–6 (102), with the CSwL exercise it became or the reason it was not ported;
    • original: CSwL exercises with no CSwFP counterpart;
    • depends: exercises whose solution another one uses;
    • sections: where each CSwFP section went, and why when not obvious.
  • DEVIATIONS.md: only the chapter order, the Mathlib/CSLib reuse decisions and the design decisions inside chapters, as they stand now. History lives in git.
  • The rules DEVIATIONS.md used to state move to STYLE-CODE.md (nothing is used before it is presented, its loosening and the IntroCS exception) and STYLE-WRITING.md (technical consequence vs editorial preference, keeping the original's structure).
  • scripts/check-cswfp.py (needs PyYAML) replaces check-provenance.sh. It checks the inventory against the :::exercise blocks, and that no prose outside :::dev cites CSwFP, a page, a section or an exercise number.
  • SeaBattle.lean: drop a mention of an earlier version of the chapter.
  • IntroCS.lean: simplify the possibilities exercise.

The script currently reports six exercises that exist only on feat/english-chapter (#29), and 14 CSwFP exercises marked TODO, which are decisions still to be made and not failures.

Closes #31. Refs #6: the criterion now lives in STYLE-WRITING.md and the mechanical check is scripted; the reading pass over the prose is still to do.

AI-usage disclosure: the inventory, the script and the text were drafted with the assistance of Claude Opus 5.5 (Anthropic, September 2026, via Claude Code). The author reviewed the changes and takes full responsibility for the final content.

Copilot AI lite review requested due to automatic review settings September 26, 2026 20:55

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Copilot review overview

🟢 Approval recommended

No unresolved review comments were identified.

Review effort: Lite
Findings: None

What changed in this PR

Replaces the manually maintained provenance exercise count with an executable consistency check and documents its use.

Changes:

  • Adds scripts/check-provenance.sh.
  • Updates PROVENANCE.md with the provenance invariant.
  • Documents the checker in CONTRIBUTING.md.
File Description
scripts/​check-provenance.sh Checks exercise and provenance ID consistency.
PROVENANCE.md Replaces the dated count with the invariant.
CONTRIBUTING.md Adds contributor guidance for running the checker.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

@arademaker arademaker changed the title docs(provenance): replace the dated exercise count with a check script docs: replace PROVENANCE.md with CSwFP.yaml and slim DEVIATIONS.md Sep 26, 2026
The count of exercises and the list of known exceptions had to be
edited by hand for every new exercise, and had drifted. State only the
invariant, and add `scripts/check-provenance.sh`, which checks it.
Mention the script in CONTRIBUTING.md.

--
AI-usage disclosure: the script and the text were drafted with the
assistance of Claude Opus 5.5 (Anthropic, September 2026, via Claude
Code). The author reviewed the changes and takes full responsibility
for the final content.
List every CSwFP/1–6 exercise with the CSwL exercise it became or the
reason it was not ported, and map every CSwFP section to where it went.
Keep in DEVIATIONS.md only the design decisions, as they stand now.
Move the rules it stated into STYLE-CODE.md and STYLE-WRITING.md.
Replace check-provenance.sh with check-cswfp.py, which also checks
that the prose does not cite CSwFP.

Closes #31
Refs #6

--
AI-usage disclosure: the inventory, the script and the text were
drafted with the assistance of Claude Opus 5.5 (Anthropic, September
2026, via Claude Code). The author reviewed the changes and takes full
responsibility for the final content.
@arademaker
arademaker force-pushed the docs/provenance-check branch from 9a9742a to 9f8bab7 Compare September 26, 2026 22:32
@arademaker
arademaker merged commit 8f23a2e into main Sep 26, 2026
1 check passed
@arademaker
arademaker deleted the docs/provenance-check branch September 27, 2026 18:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

PROVENANCE.md is out of sync with the exercises

2 participants