From 5d4b6de973b11c4a9061e8194dff34ab9c81ba90 Mon Sep 17 00:00:00 2001 From: sneak Date: Sun, 9 Aug 2026 16:03:14 +0000 Subject: [PATCH] Reformat REPO_POLICIES.md with the repo's prettier settings The canonical upstream copy is not clean under --tab-width 4 --prose-wrap always: prettier@3.4.2 inserts a blank line before a nested list that directly follows a paragraph, in five places. script/fmt-check covers *.md at the repo root, so make check fails on the byte-identical copy. Split out from the preceding commit so the functional change and the formatting churn stay separately reviewable. The change is whitespace only - five blank lines - and does not alter the rendered document. The canonical copy upstream should be reformatted so future syncs are a straight byte copy again; tracked in TODO.md. --- REPO_POLICIES.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/REPO_POLICIES.md b/REPO_POLICIES.md index 79d2fb7..091caed 100644 --- a/REPO_POLICIES.md +++ b/REPO_POLICIES.md @@ -147,6 +147,7 @@ style conventions are in separate documents: ``` Key points: + - The lint stage uses the `golangci/golangci-lint` image directly (it includes both Go and the linter), so there is no need to install the linter separately. @@ -280,6 +281,7 @@ style conventions are in separate documents: - **HTTP/web services must be hardened for production internet exposure before tagging 1.0.** This means full compliance with security best practices including, without limitation, all of the following: + - **Security headers** on every response: - `Strict-Transport-Security` (HSTS) with `max-age` of at least one year and `includeSubDomains`. @@ -338,6 +340,7 @@ style conventions are in separate documents: still expected. When in doubt, harden. - `README.md` is the primary documentation. Required sections: + - **Description**: First line must include the project name, purpose, category (web server, SPA, CLI tool, etc.), license, and author. Example: "µPaaS is an MIT-licensed Go web application by @sneak that receives @@ -365,6 +368,7 @@ style conventions are in separate documents: - Database migrations live in `internal/db/migrations/` and must be embedded in the binary. + - `000_migration.sql` — contains ONLY the creation of the migrations tracking table itself. Nothing else. - `001_schema.sql` — the full application schema. @@ -381,6 +385,7 @@ style conventions are in separate documents: `LICENSE`, `.gitignore`, `.editorconfig`, `REPO_POLICIES.md`, and language-specific config). Everything else goes in a subdirectory. Canonical subdirectory names: + - `bin/` — executable scripts and tools - `cmd/` — Go command entrypoints - `configs/` — configuration templates and examples