prompts/prompts/EXISTING_REPO_CHECKLIST.md
sneak 03bf0b8445
All checks were successful
check / check (push) Successful in 7s
Add authoritative URLs to checklists and copy .golangci.yml
- Add .golangci.yml from upaas as authoritative copy in this repo
- Update REPO_POLICIES.md to reference .golangci.yml by URL
- Add fetch URLs for all template files in both checklists:
  .gitignore, .editorconfig, Makefile, .prettierrc, .prettierignore,
  REPO_POLICIES.md, .golangci.yml, check.yml
2026-02-22 16:52:33 +01:00

3.4 KiB

Existing Repo Checklist

Use this checklist when beginning work in a repo that may not yet conform to our repository policies.

Work on a feature branch. Check each item and fix any gaps before proceeding with your task.

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

  • 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
  • .gitignore is comprehensive (OS, editor, language artifacts, secrets) — fetch from https://git.eeqj.de/sneak/prompts/raw/branch/main/.gitignore if missing
  • .editorconfig exists
  • 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
  • Language-specific config:

Makefile

  • Makefile exists in root — reference the model 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

  • 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

  • Pre-commit hook is installed (make hooks)
  • No secrets in the repo (.env, keys, credentials)
  • No mutable references in Dockerfiles or scripts (tags, @latest) — all pinned by cryptographic hash with version/date comment
  • Using yarn, not npm (JS projects)

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

  • make check passes
  • docker build succeeds
  • Commit and merge fixes before starting your actual task