Add Quarto review prompt, skip-cp-setup label, and render QA guidance - #81
Conversation
…idance Bundles four AI-config improvements surveyed from sibling repos: - .github/prompts/quarto-review.prompt.md — a reusable Copilot review prompt (Quarto-first checklist, severity-ordered output). From rme/bcs. - copilot-setup-steps.yml — a `skip-cp-setup` PR label that short-circuits the heavy install (checkout only) for metadata/workflow-only PRs, with labeled/unlabeled triggers and pull-requests: read. From rpt. - copilot-instructions.md — a "Quality Assurance / Testing Renders" section (render, check _site/ output, review preview, fix before requesting review). From qbt, adapted docs/ -> _site/. - CLAUDE.md — render only the touched page while iterating, not the whole site (the /render command is for the full build). Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
Claude finished @d-morrison's task in 3m 30s —— View job PR #81 Review — Add Quarto review prompt, skip-cp-setup label, and render QA guidance
|
There was a problem hiding this comment.
Pull request overview
This PR adds AI/configuration documentation and workflow improvements to support Quarto-first reviews and faster Copilot agent setup when full R/Quarto installation isn’t needed.
Changes:
- Add a reusable Quarto-focused PR review prompt under
.github/prompts/. - Add a
skip-cp-setupPR-label gate to short-circuit heavy install steps incopilot-setup-steps.yml. - Add render QA guidance to
.github/copilot-instructions.mdand single-page render iteration guidance toCLAUDE.md.
Reviewed changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated 3 comments.
| File | Description |
|---|---|
CLAUDE.md |
Adds guidance to render only the touched page during iteration and reserve full renders for /render / full validation. |
.github/workflows/copilot-setup-steps.yml |
Adds label-based gating to skip heavy setup steps and expands PR event triggers/permissions. |
.github/prompts/quarto-review.prompt.md |
Introduces a Quarto-first PR review prompt/checklist and output format guidance. |
.github/copilot-instructions.md |
Adds a “Quality Assurance / Testing Renders” section describing local render checks and preview verification. |
- quarto-review.prompt.md: convert checklist item 8's three comma-separated validation steps to a bullet list, per the repo's own bullet-list rule. - copilot-setup-steps.yml: pass the event name and label-contains expression through env vars in the skip check rather than interpolating them into the shell, the GitHub-recommended pattern against expression injection. (The `paths:` filter does not block the skip-cp-setup label: Copilot invokes copilot-setup-steps directly when provisioning its environment, independent of the `on:` triggers, so the label is honored there.) Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
Claude finished @d-morrison's task in 1m 54s —— View job PR #81 Review — Add Quarto review prompt, skip-cp-setup label, and render QA guidance
What changed since the last reviewTwo of the previously flagged issues were fixed in this push:
Remaining issuesMedium — This is the same issue from the previous review — it was not addressed. The pull_request:
types: [opened, synchronize, reopened, labeled, unlabeled]
paths:
- .github/workflows/copilot-setup-steps.ymlBecause The fix is the same as before — split the push and pull_request triggers: on:
workflow_dispatch:
push:
paths:
- .github/workflows/copilot-setup-steps.yml
pull_request:
types: [opened, synchronize, reopened, labeled, unlabeled]
# no paths filter — label applies to any PRMinor — This was flagged by Copilot and remains unaddressed. The final line reads:
That directory does not exist in this repo. An agent following this prompt will look for it and find nothing, which is harmless — but slightly confusing, and the phrasing implies the directory should be there. Adding "if present" (or removing the clause entirely, since there's nothing there) would be cleaner: Base the review on [copilot-instructions.md](../copilot-instructions.md) and
[CLAUDE.md](../../CLAUDE.md), plus any path-scoped rules under
`.github/instructions/` (if present) that apply to the changed files.Clarification on the Copilot "blank line" findingCopilot flagged the nested sub-bullets under "Check the rendered output" in Summary
|
|
On the |
- copilot-setup-steps.yml: document that the workflow has two independent invocation paths — Copilot's agent provisioning runs the job directly (not via `on:`, so `paths:` does not affect it; the skip-cp-setup label applies there) vs. the `on:`-triggered validation CI runs (paths-gated to this file). This explains why the paths filter is correct and pre-empts the recurring "paths blocks the label" misreading. - quarto-review.prompt.md: qualify the `.github/instructions/` reference with "(if present)" since that directory may not exist in a fresh template copy. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
|
Claude finished @d-morrison's task in 1m 59s —— View job PR #81 Re-review — Add Quarto review prompt, skip-cp-setup label, and render QA guidance
What changed since the last reviewAll three previously open items are now resolved:
Fresh pass — no new issues
Clean. The dual-invocation comment block is clear and accurate. All
Clean. Item 8 nested bullets are correct. Relative paths (
Clean. The QA / Testing Renders section is well-formed. Blank line before the top-level list at line 86 ✅. Nested sub-bullets under "Check the rendered output" have no blank line before them — correct; a blank line there would break the nesting in CommonMark. Copilot's earlier finding on this was a false positive.
Clean. The expanded Local preview bullet accurately describes per-file rendering for iteration and correctly distinguishes it from the SummaryNo findings. The PR is clean and ready to merge. |
|
|
Claude finished @d-morrison's task in 1m 10s —— View job PR #81 Re-review — Add Quarto review prompt, skip-cp-setup label, and render QA guidance
What changed since the last reviewThree commits on this branch (
Fresh pass — no new issues
Clean. The comment block is clear and technically accurate. All six heavy steps (
Clean. Scope, checklist, and output-format sections are well-calibrated for this template repo. Relative paths (
Clean. Blank line before the top-level bullet list at the section start ✅. Nested sub-bullets under "Check the rendered output" correctly have no blank line before them (a blank line there would break CommonMark nesting). No issues.
Clean. The single-line change correctly distinguishes per-file rendering for iteration from the SummaryNo findings. The PR is clean and ready to merge. |
Summary
Bundles four AI-config improvements surveyed from your sibling Quarto/R repos (#3/#4/#6/#7 from the cross-repo survey).
.github/prompts/quarto-review.prompt.md(from rme/bcs) — a reusable Copilot review prompt: Quarto-first checklist (links to source.qmd, cross-refs,code-fold, no hard-coded computed values, citations, no new template-wide deps, validation) with severity-ordered output and an explicit "no findings" statement.copilot-setup-steps.ymlskip-cp-setuplabel (from rpt) — a PR label that short-circuits the heavy install (checkout only) for metadata- or workflow-only PRs. Addslabeled/unlabeledtriggers so toggling re-runs, andpull-requests: readto read labels.copilot-instructions.md"Quality Assurance / Testing Renders" (from qbt) — instructs the agent to render, verify_site/output, review the PR preview, and fix rendering issues before requesting review (adapteddocs/→_site/).CLAUDE.mdrender-only-touched note (rme preflight discipline) — render just the touched page while iterating;/renderremains the full build.Notes
main(copilot-instructions.md,CLAUDE.md) so this PR is independent of the path-scoped-instructions PR; it mentions.github/instructions/in prose without a hard link.Test plan
skip-cp-setuplabel to a workflow-only PR → confirm the setup job runs checkout only and skips the install steps; remove the label → confirm full setup re-runs.quarto-review.prompt.mdis offered as a Copilot prompt and produces a severity-ordered review.🤖 Generated with Claude Code