Skip to content

Commit c843f0c

Browse files
committed
Update maintainer and agent guidelines to include CITATION.cff and clarify protected files
1 parent fcb6142 commit c843f0c

File tree

3 files changed

+26
-12
lines changed

3 files changed

+26
-12
lines changed

.github/MAINTAINERS.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,12 @@
11
# Maintainer Notes
22

33
## Scope
4+
45
- This is a template repo; keep placeholders like `USERNAME` and `REPO_NAME` intact.
56
- Avoid adding new dependencies unless necessary.
67

78
## Routine Maintenance
9+
810
- Update template guidance and placeholder instructions as needed.
911
- Format and lint before releases or larger edits:
1012
- `npm run format` (or `npm run check` to verify)
@@ -13,6 +15,7 @@
1315
- R: `styler::style_dir(".")` and `lintr::lint_dir(".")`
1416

1517
## Releases
18+
1619
- **Manual releases** (GitHub UI or `gh release create`) trigger `.github/workflows/release-site.yml` on `release: published`.
1720
- The workflow renders the site and uploads `site.tar.gz` to the release.
1821
- Do **not** run production Quarto commands (`quarto render` / `quarto publish gh-pages`) outside CI workflows.

AGENTS.md

Lines changed: 22 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ This template includes placeholders like: `USERNAME`, `REPO_NAME`, `FULLNAME`, `
2828
- **Replace placeholders** in:
2929
- `.github/ISSUE_TEMPLATE/config.yml`
3030
- `_brand.yml`
31+
- `CITATION.cff`
3132
- `CODE_OF_CONDUCT.md`
3233
- `DESCRIPTION`
3334
- `package.json`
@@ -53,6 +54,7 @@ This template includes placeholders like: `USERNAME`, `REPO_NAME`, `FULLNAME`, `
5354

5455
Aligned with _The Turing Way_ advanced structure:
5556

57+
- `.github/` — issue templates, PR templates, and CI workflows
5658
- `analysis/` — notebooks and analysis scripts
5759
- `assets/` — images and media
5860
- `build/` — data build/processing scripts
@@ -64,7 +66,16 @@ Aligned with _The Turing Way_ advanced structure:
6466

6567
Place new files accordingly.
6668

67-
## 6) Dependency Management (Both)
69+
## 6) Protected Files (Both)
70+
71+
Do **not** modify these files directly during agent sessions unless explicitly requested:
72+
73+
- `LICENSE-AGPL.md`, `LICENSE-CCBY.md` — license text should not be altered
74+
- `package-lock.json`, `uv.lock`, `renv.lock` — generated by package managers; modify via commands only
75+
- `.gitattributes`, `.gitignore` — modify only when adding new file types or patterns
76+
- `.github/workflows/*.yml` — CI configurations; changes require careful review
77+
78+
## 7) Dependency Management (Both)
6879

6980
### Node.js (npm)
7081

@@ -88,13 +99,13 @@ Place new files accordingly.
8899

89100
**Note**: The `DESCRIPTION` file documents R development dependencies. The `.Rprofile` configures R options and activates renv.
90101

91-
## 7) Documentation Practices (Both)
102+
## 8) Documentation Practices (Both)
92103

93104
- Prefer `.qmd` for executable, reproducible docs; `.md` for static content.
94105
- Include valid YAML front matter.
95106
- Execute and test code chunks. Keep outputs reproducible.
96107

97-
## 8) Testing and CI (Both)
108+
## 9) Testing and CI (Both)
98109

99110
- `npm run check` for formatting
100111
- `uv run ruff check` for Python linting
@@ -107,22 +118,22 @@ Place new files accordingly.
107118

108119
**Archiving note**: CI artifacts are short-lived and for debugging only. GitHub Pages is a delivery channel. Long-term preservation uses GitHub Releases (site archive) and Zenodo for DOI-backed archival.
109120

110-
## 9) GitHub Features and Security (Project instances)
121+
## 10) GitHub Features and Security (Project instances)
111122

112123
- **Enable GitHub Security Alerts** and Dependabot updates (Repository → Security).
113124
- **Protect `main`**: require PR reviews and disallow force pushes.
114125
- Keep `SECURITY.md` and GitHub security features active.
115126
- Use provided **issue templates**; modify only to improve the template.
116127

117-
## 10) Zenodo Integration and DOI (Project instances)
128+
## 11) Zenodo Integration and DOI (Project instances)
118129

119130
- **Enable Zenodo–GitHub integration** to archive releases and mint DOIs.
120131
- After first release:
121132
- Record your **`ZENODO_RECORD`** and **`DOI`**.
122133
- **Zenodo DOI badge**: replace `GITHUB_REPO_ID` with the numeric repo ID from `https://api.github.com/repos/USERNAME/REPO_NAME` (`id` field). Badge will display your DOI after Zenodo links the release.
123134
- Add the DOI to the README once available.
124135

125-
## 11) Website Publishing with GitHub Pages (Project instances)
136+
## 12) Website Publishing with GitHub Pages (Project instances)
126137

127138
- In repo **Settings → Pages**:
128139
- Source: **Deploy from a branch**
@@ -131,13 +142,13 @@ Place new files accordingly.
131142
- `quarto render`
132143
- `quarto publish gh-pages`
133144

134-
## 12) Brand and UX Polish (Project instances)
145+
## 13) Brand and UX Polish (Project instances)
135146

136147
- Generate favicons (`favicon.ico`, `favicon-16x16.png`, `favicon-32x32.png`, `apple-touch-icon.png`, Android icons) and place at repo root.
137148
- Replace placeholder contact details and short description.
138-
- Remove or resolve `TODO` comments: `grep -r "TODO" .` then address or delete.
149+
- Remove or resolve `TODO` comments: search for `TODO` in the codebase and address or delete each one.
139150

140-
## 13) Commands Recap (Both)
151+
## 14) Commands Recap (Both)
141152

142153
| Command | Purpose |
143154
| ------------------------- | ------------------------------------------------ |
@@ -158,7 +169,7 @@ Place new files accordingly.
158169
| `quarto render` | **Production render** (avoid in agent sessions) |
159170
| `quarto publish gh-pages` | **Production publish** (avoid in agent sessions) |
160171

161-
## 14) Finalization Workflow Checklist (Project instances)
172+
## 15) Finalization Workflow Checklist (Project instances)
162173

163174
Follow `TODO.md`, then:
164175

@@ -175,7 +186,7 @@ Follow `TODO.md`, then:
175186
11. After first release, update `ZENODO_RECORD`, `DOI`, and DOI badge.
176187
12. Verify security alerts and branch protection.
177188

178-
## 15) Verification Steps (Project instances)
189+
## 16) Verification Steps (Project instances)
179190

180191
- `npm run check` passes.
181192
- `uv run ruff check` passes without errors.

TODO.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ Complete the following steps after creating your project from this template to c
1515
- `GITHUB_REPO_ID` → Your GitHub repository ID (e.g., "123456789")
1616
- `ZENODO_RECORD` → Your Zenodo record number (e.g., "1234567") after first release or manually create a Zenodo deposit
1717
- `DOI` → Your DOI after first release (e.g., "10.5281/zenodo.1234567")
18-
- Files to update: `.github/ISSUE_TEMPLATE/config.yml`, `_brand.yml`, `CODE_OF_CONDUCT.md`, `package.json`, `pyproject.toml`, `README.template.md`, and `SECURITY.md`
18+
- Files to update: `.github/ISSUE_TEMPLATE/config.yml`, `_brand.yml`, `CITATION.cff`, `CODE_OF_CONDUCT.md`, `DESCRIPTION`, `package.json`, `pyproject.toml`, `README.template.md`, and `SECURITY.md`
1919
- [ ] **Set Up Zenodo Integration**: Follow the [GitHub guide for Zenodo integration](https://docs.github.com/en/repositories/archiving-a-github-repository/referencing-and-citing-content) to enable automatic archiving and obtain a DOI for your repository.
2020
- [ ] **Set Up Zenodo DOI Badge**: Replace `GITHUB_REPO_ID` with the repository ID from `https://api.github.com/repos/USERNAME/REPO_NAME` (look for the `id` field in the JSON response). The badge will automatically display your Zenodo DOI after the first release.
2121
- [ ] **Add Zenodo DOI to README**: After creating your first release and obtaining a Zenodo DOI, replace `ZENODO_RECORD` in README.md with your actual Zenodo record number (found in your Zenodo deposit URL).

0 commit comments

Comments
 (0)