diff --git a/.github/instructions/r-and-config.instructions.md b/.github/instructions/r-and-config.instructions.md index 3dd00e1cc..36731b59b 100644 --- a/.github/instructions/r-and-config.instructions.md +++ b/.github/instructions/r-and-config.instructions.md @@ -16,10 +16,8 @@ description: "Use when editing R source, Quarto configuration, or GitHub workflo - Run `Rscript -e 'spelling::spell_check_package()'` before finishing changes to `.R` or config files. Fix only errors you introduced, and add legitimate technical terms to `inst/WORDLIST` rather than disabling the check. -- This is a template: every dependency added here lands in every downstream - book, so do not add a new R package or Quarto extension without a clear - reason. Align workflow and render changes with the existing CI patterns - instead of inventing parallel setup. +- Align workflow and render changes with the existing CI patterns instead of + inventing parallel setup. - Do not edit generated files (`README.md` is built from `README.Rmd`; `_site/`, `_freeze/`, and `.quarto/` are build outputs). diff --git a/.github/prompts/quarto-review.prompt.md b/.github/prompts/quarto-review.prompt.md index c8069eb14..cd2b7ce25 100644 --- a/.github/prompts/quarto-review.prompt.md +++ b/.github/prompts/quarto-review.prompt.md @@ -24,12 +24,10 @@ Review checklist: chunk and referenced with inline R. 5. Citations and attribution are present where adapted content or factual claims appear, and only sources in `references.bib` are used. -6. No new R package or Quarto extension is added without a clear reason (this is - a template --- every dependency lands in every downstream book). -7. No generated files are edited (`README.md` from `README.Rmd`; `_site/`, +6. No generated files are edited (`README.md` from `README.Rmd`; `_site/`, `_freeze/`, `.quarto/`), and spell/link-check failures are fixed at the source (wordlist or content), not suppressed. -8. The author ran the required local validation: +7. The author ran the required local validation: - render of the touched page - `lintr` - `spelling::spell_check_package()` diff --git a/.github/workflows/claude-code-review.yml b/.github/workflows/claude-code-review.yml index ecab6cb5e..d7ec9da6f 100644 --- a/.github/workflows/claude-code-review.yml +++ b/.github/workflows/claude-code-review.yml @@ -58,9 +58,8 @@ jobs: # "non-human actor". allowed-bots: 'github-actions[bot],claude' prompt-addendum: | - In addition to the standard checks above, this is the qwt Quarto - website template -- small, prose-heavy, and re-used as a template - for downstream books -- so also prioritize: + In addition to the standard checks above, this is a small, + prose-heavy Quarto website, so also prioritize: 1. **Quarto / prose correctness** - `.qmd` syntax: chunk options use `#|` directives, fenced @@ -72,15 +71,13 @@ jobs: 2. **R code** - Conforms to `.lintr.R` settings (snake_case, line length, etc.). - - No new package dependencies without justification -- every - dependency added here lands in every downstream book. 3. **Build hygiene** - No accidental commits of `_site/`, `_freeze/`, or `.quarto/`. - `README.md` is generated; edits should go to `README.Rmd`. - Bibliography entries in `references.bib` are well-formed BibTeX. - 4. **CI / template impact** + 4. **CI impact** - Workflow changes don't break the `copilot-setup-steps.yml` contract or the publish/preview pipelines. - Spell-check / link-check failures are fixed at the source diff --git a/.github/workflows/copilot-setup-steps.yml b/.github/workflows/copilot-setup-steps.yml index e61915dc0..5761014d9 100644 --- a/.github/workflows/copilot-setup-steps.yml +++ b/.github/workflows/copilot-setup-steps.yml @@ -54,7 +54,7 @@ jobs: id: check_label # Pass the expression result through env (GitHub-recommended) rather # than interpolating it directly into the shell, to avoid the - # expression-injection anti-pattern in code that downstream books copy. + # expression-injection anti-pattern. env: EVENT_NAME: ${{ github.event_name }} LABELS_CONTAIN_SKIP: ${{ contains(github.event.pull_request.labels.*.name, 'skip-cp-setup') }} diff --git a/CLAUDE.md b/CLAUDE.md index 6a1b6b50f..a7b4a3328 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -4,7 +4,7 @@ Project guidance for Claude Code (CLI, IDE, and the GitHub Action). The same con ## Project context -`mds` holds the mathematics that the Morrison-Lab data science courses assume: notation, algebra, calculus, linear algebra and vector calculus, as [Quarto](https://quarto.org/) fragments. It renders on its own as a website, and course sites include it as a git submodule, so a fragment's path and its `#id` anchors are an interface: renaming either breaks every host site. The scaffolding came from the UCD-SERG `qwt` template. +`mds` holds the mathematics that the Morrison-Lab data science courses assume: notation, algebra, calculus, linear algebra and vector calculus, as [Quarto](https://quarto.org/) fragments. It renders on its own as a website, and course sites such as `mlds` link to its pages by URL, so a page's path and its `#id` anchors are an interface: renaming either breaks those links. The scaffolding came from the UCD-SERG `qwt` template. Authoritative style guide: [UCD-SERG Lab Manual](https://ucd-serg.github.io/lab-manual/) (source: ). @@ -80,6 +80,5 @@ rme will drop those appendices and point readers here ## Things to avoid -- Adding new top-level dependencies (R packages, Quarto extensions) without a clear reason; this is a template, so every dependency lands in every downstream book. - Reformatting unrelated files. - Inventing URLs or citations --- only use sources actually present in `references.bib` or explicitly provided.