Add canonical policy dotfiles, harden both ignore files (closes #8) #31

Merged
clawbot merged 2 commits from policy-dotfiles into main 2026-08-09 18:12:07 +02:00
Showing only changes of commit 5d4b6de973 - Show all commits

View File

@@ -147,6 +147,7 @@ style conventions are in separate documents:
``` ```
Key points: Key points:
- The lint stage uses the `golangci/golangci-lint` image directly (it - 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 includes both Go and the linter), so there is no need to install the
linter separately. linter separately.
@@ -280,6 +281,7 @@ style conventions are in separate documents:
- **HTTP/web services must be hardened for production internet exposure before - **HTTP/web services must be hardened for production internet exposure before
tagging 1.0.** This means full compliance with security best practices tagging 1.0.** This means full compliance with security best practices
including, without limitation, all of the following: including, without limitation, all of the following:
- **Security headers** on every response: - **Security headers** on every response:
- `Strict-Transport-Security` (HSTS) with `max-age` of at least one year - `Strict-Transport-Security` (HSTS) with `max-age` of at least one year
and `includeSubDomains`. and `includeSubDomains`.
@@ -338,6 +340,7 @@ style conventions are in separate documents:
still expected. When in doubt, harden. still expected. When in doubt, harden.
- `README.md` is the primary documentation. Required sections: - `README.md` is the primary documentation. Required sections:
- **Description**: First line must include the project name, purpose, - **Description**: First line must include the project name, purpose,
category (web server, SPA, CLI tool, etc.), license, and author. Example: category (web server, SPA, CLI tool, etc.), license, and author. Example:
"µPaaS is an MIT-licensed Go web application by @sneak that receives "µ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 - Database migrations live in `internal/db/migrations/` and must be embedded in
the binary. the binary.
- `000_migration.sql` — contains ONLY the creation of the migrations - `000_migration.sql` — contains ONLY the creation of the migrations
tracking table itself. Nothing else. tracking table itself. Nothing else.
- `001_schema.sql` — the full application schema. - `001_schema.sql` — the full application schema.
@@ -381,6 +385,7 @@ style conventions are in separate documents:
`LICENSE`, `.gitignore`, `.editorconfig`, `REPO_POLICIES.md`, and `LICENSE`, `.gitignore`, `.editorconfig`, `REPO_POLICIES.md`, and
language-specific config). Everything else goes in a subdirectory. Canonical language-specific config). Everything else goes in a subdirectory. Canonical
subdirectory names: subdirectory names:
- `bin/` — executable scripts and tools - `bin/` — executable scripts and tools
- `cmd/` — Go command entrypoints - `cmd/` — Go command entrypoints
- `configs/` — configuration templates and examples - `configs/` — configuration templates and examples