- Move title and last_modified to YAML front matter (all policy docs) - Make all document sections H1, subsections H2 - Update version rule to reference front matter format - Fix "our" → "your" typo in Go styleguide - Fix Python styleguide numbering (2. → 1.) - Fix README: "flat collection" → accurate description, remove stale TODO - Remove Makefile items from code styleguides (repo stuff, not code), add note linking to Repository Policies - Change zerolog → slog in Go styleguide - Fix JS styleguide npm reference: both work, but use make targets - Drop .json from healthcheck path, add JSON content-type requirement - Add Author/License to Go HTTP Server Conventions - Convert hyperlinks to backtick URLs in checklists for consistency - Add version/front matter to both checklists
This commit is contained in:
@@ -1,63 +1,66 @@
|
||||
# Existing Repo Checklist
|
||||
---
|
||||
title: Existing Repo Checklist
|
||||
last_modified: 2026-02-22
|
||||
---
|
||||
|
||||
Use this checklist when beginning work in a repo that may not yet conform to our
|
||||
[repository policies](https://git.eeqj.de/sneak/prompts/raw/branch/main/prompts/REPO_POLICIES.md).
|
||||
repository policies
|
||||
(`https://git.eeqj.de/sneak/prompts/raw/branch/main/prompts/REPO_POLICIES.md`).
|
||||
|
||||
Work on a feature branch. Check each item and fix any gaps before proceeding
|
||||
with your task.
|
||||
|
||||
## Formatting (do this first)
|
||||
# Formatting (do this first)
|
||||
|
||||
- [ ] If the repo has never been formatted to our standards, run `make fmt` and
|
||||
commit the result as a standalone branch/commit/PR before any other
|
||||
changes. Formatting diffs can be large and should not be mixed with
|
||||
functional changes.
|
||||
|
||||
## Required Files
|
||||
# Required Files
|
||||
|
||||
- [ ] `README.md` exists with all required sections (Description, Getting
|
||||
Started, Rationale, Design, TODO, License, Author)
|
||||
- [ ] `LICENSE` file exists and matches the README
|
||||
- [ ] `REPO_POLICIES.md` exists and version date is current with the
|
||||
[authoritative source](https://git.eeqj.de/sneak/prompts/raw/branch/main/prompts/REPO_POLICIES.md)
|
||||
- [ ] `REPO_POLICIES.md` exists and version date is current — fetch from
|
||||
`https://git.eeqj.de/sneak/prompts/raw/branch/main/prompts/REPO_POLICIES.md`
|
||||
- [ ] `.gitignore` is comprehensive (OS, editor, language artifacts, secrets) —
|
||||
fetch from `https://git.eeqj.de/sneak/prompts/raw/branch/main/.gitignore`
|
||||
if missing
|
||||
- [ ] [`.editorconfig`](https://git.eeqj.de/sneak/prompts/raw/branch/main/.editorconfig)
|
||||
exists
|
||||
- [ ] `.editorconfig` exists — fetch from
|
||||
`https://git.eeqj.de/sneak/prompts/raw/branch/main/.editorconfig`
|
||||
- [ ] `Dockerfile` and `.dockerignore` exist; Dockerfile runs `make check` as a
|
||||
build step
|
||||
- [ ] Gitea Actions workflow in `.gitea/workflows/` runs `docker build .` on
|
||||
push — reference
|
||||
[check.yml](https://git.eeqj.de/sneak/prompts/raw/branch/main/.gitea/workflows/check.yml)
|
||||
`https://git.eeqj.de/sneak/prompts/raw/branch/main/.gitea/workflows/check.yml`
|
||||
- [ ] Language-specific config:
|
||||
- [ ] Go: `go.mod`, `go.sum`,
|
||||
[`.golangci.yml`](https://git.eeqj.de/sneak/prompts/raw/branch/main/.golangci.yml)
|
||||
- [ ] JS: `package.json`, `yarn.lock`,
|
||||
[`.prettierrc`](https://git.eeqj.de/sneak/prompts/raw/branch/main/.prettierrc),
|
||||
[`.prettierignore`](https://git.eeqj.de/sneak/prompts/raw/branch/main/.prettierignore)
|
||||
- [ ] Go: `go.mod`, `go.sum`, `.golangci.yml` (fetch from
|
||||
`https://git.eeqj.de/sneak/prompts/raw/branch/main/.golangci.yml`)
|
||||
- [ ] JS: `package.json`, `yarn.lock`, `.prettierrc`, `.prettierignore`
|
||||
(fetch from
|
||||
`https://git.eeqj.de/sneak/prompts/raw/branch/main/.prettierrc` and
|
||||
`https://git.eeqj.de/sneak/prompts/raw/branch/main/.prettierignore`)
|
||||
- [ ] Python: `pyproject.toml`
|
||||
- [ ] Docs/writing:
|
||||
[`.prettierrc`](https://git.eeqj.de/sneak/prompts/raw/branch/main/.prettierrc),
|
||||
[`.prettierignore`](https://git.eeqj.de/sneak/prompts/raw/branch/main/.prettierignore)
|
||||
- [ ] Docs/writing: `.prettierrc`, `.prettierignore` (same URLs as above)
|
||||
|
||||
## Makefile
|
||||
# Makefile
|
||||
|
||||
- [ ] `Makefile` exists in root — reference the
|
||||
[model Makefile](https://git.eeqj.de/sneak/prompts/raw/branch/main/Makefile)
|
||||
- [ ] `Makefile` exists in root — reference
|
||||
`https://git.eeqj.de/sneak/prompts/raw/branch/main/Makefile`
|
||||
- [ ] Has targets: `test`, `lint`, `fmt`, `fmt-check`, `check`, `docker`,
|
||||
`hooks`
|
||||
- [ ] `make check` does not modify any files in the repo
|
||||
- [ ] `make test` has a 30-second timeout
|
||||
- [ ] `make check` passes on current branch
|
||||
|
||||
## Formatting
|
||||
# Formatting
|
||||
|
||||
- [ ] Platform-standard formatter is configured (`black`, `prettier`, `go fmt`)
|
||||
- [ ] Default formatter config, only exception: four-space indents (except Go)
|
||||
- [ ] All files pass `make fmt-check`
|
||||
|
||||
## Git Hygiene
|
||||
# Git Hygiene
|
||||
|
||||
- [ ] Pre-commit hook is installed (`make hooks`)
|
||||
- [ ] No secrets in the repo (`.env`, keys, credentials)
|
||||
@@ -65,14 +68,14 @@ with your task.
|
||||
pinned by cryptographic hash with version/date comment
|
||||
- [ ] Using `yarn`, not `npm` (JS projects)
|
||||
|
||||
## Directory Structure
|
||||
# Directory Structure
|
||||
|
||||
- [ ] No unnecessary files in repo root
|
||||
- [ ] Files organized into canonical subdirectories (`bin/`, `cmd/`, `docs/`,
|
||||
`internal/`, `static/`, etc.)
|
||||
- [ ] Go migrations in `internal/db/migrations/` and embedded in binary
|
||||
|
||||
## Final
|
||||
# Final
|
||||
|
||||
- [ ] `make check` passes
|
||||
- [ ] `docker build` succeeds
|
||||
|
||||
Reference in New Issue
Block a user