Author SHA1 Message Date
clawbot f01ca24dc2 REPO_POLICIES: fix the second review's findings on the compaction (#158)
check / check (push) Successful in 18s
Fixes the seven findings of
#159 (comment), with
the wording each one gives.

- Go key points: "whatever files the mount holds".
- `.dockerignore`: "Such a `.dockerignore` is more dangerous than a
  short file with no secret patterns at all".
- Python: "pipenv checked the hashes of the lockfile's packages".
- Python: "In that step" leads only the two bullets about that step.
  The other four sit under "A Python repository's `script/bootstrap`:".
- Entrypoints: "Three more scripts have no required target:".
- Dockerfile: the two ways a stage installs what its image lacks are
  bulleted again, as on `next`.
- Version: the sentence ends at "stage-scoped", then "It has no
  default."
- `TODO.md`: the entry carries the new size, 1,066 lines and 7,812
  words.

Model: fable-5-1
2026-11-06 01:53:49 +00:00
clawbot 2e98be476a REPO_POLICIES: fix the review findings on the compaction (#158)
check / check (push) Successful in 25s
Fixes the findings of the review of
#159.

- CI: "The workflow sets these:", so the four settings bind every
  repo's workflow again.
- node and yarn: a stage that needs no yarn copies no `yarn.lock`
  before it runs `script/bootstrap`, which is what the examples do.
- Dockerfile: names the stage to keep last, the one that ships.
- Version: "Without that check" replaces "Otherwise".
- The lists the review named are bulleted again, with the wording on
  `next`. The submodule examples are in their own sentence, as in both
  checklists.
- `TODO.md`: the entry carries the new size, 1,062 lines and 7,794
  words.

Model: fable-5-1
2026-11-06 01:25:27 +00:00
clawbot 6dcacf673f Compact REPO_POLICIES.md without losing rules (closes #158)
check / check (push) Successful in 16s
The rules now sit under headings, the pinning rule first. Each rule that
was stated in several places is stated once. From 1,145 lines and 8,427
words to 1,012 lines and 7,709 words. Code blocks are unchanged, except
that the Makefile copies of the Go and Python test commands are gone:
the Dockerfile examples carry the same commands.

Both checklists name the `.golangci.yml` section.

Model: fable-5-1
2026-11-06 00:57:30 +00:00
5 changed files with 1043 additions and 1150 deletions

No files matched your search

+7 -5
View File
@@ -21,11 +21,13 @@ fmt-check, and commit.
# Completed Steps
- 2026-11-07: Go code is now formatted with `gofmt` and then `golines -m 77`
(https://git.eeqj.de/sneak/prompts/issues/160). `prompts/REPO_POLICIES.md`
says how `script/fmt`, `script/fmt-check` and `script/bootstrap` do it and
pins `golines`. The Go style guide and both checklists say the same. `lll`
stays at 88, since `golines` leaves long strings and comments as they are.
- 2026-11-06: Compacted `prompts/REPO_POLICIES.md` from 1,145 lines and 8,427
words to 1,066 lines and 7,812 words
(https://git.eeqj.de/sneak/prompts/issues/158). Every rule keeps its meaning.
The rules now sit under headings, the pinning rule first. Each rule that was
stated in several places is stated once. The Makefile copies of the Go and
Python test commands are gone, because the `Dockerfile` examples carry the
same commands. Both checklists name the `.golangci.yml` section.
- 2026-11-06: The pinning rule in `prompts/REPO_POLICIES.md` now opens with its
scope: what we download and install ourselves in scripts and Dockerfiles
(https://git.eeqj.de/sneak/prompts/issues/154). Distribution packages are
+5 -8
View File
@@ -1,16 +1,13 @@
---
title: Code Styleguide — Go
last_modified: 2026-11-07
last_modified: 2026-10-18
---
1. Format Go code with `gofmt` and then `golines -m 77`, through `make fmt`.
Don't commit anything `make fmt` would change. The only exception is when
committing things that aren't yet syntactically valid, which should only
happen pre-v0.0.1 or on a non-`main` branch.
1. Try to hard wrap long lines at 77 characters or less.
1. Hard wrap long lines at 77 characters or less. `golines` does this for code.
Wrap comments and long string literals by hand, since `golines` leaves them
as they are.
1. Don't commit anything that hasn't been `go fmt`'d. The only exception is
when committing things that aren't yet syntactically valid, which should
only happen pre-v0.0.1 or on a non-`main` branch.
1. Even if you are planning to deal with only positive integers, use
`int`/`int64` types instead of `uint`/`uint64` types. This is for
+4 -9
View File
@@ -1,6 +1,6 @@
---
title: Existing Repo Checklist
last_modified: 2026-11-07
last_modified: 2026-11-06
---
Use this checklist when beginning work in a repo that may not yet conform to our
@@ -163,7 +163,7 @@ with your task.
- [ ] Go: `go.mod`, `go.sum`, `.golangci.yml` (fetch from
`https://git.eeqj.de/sneak/prompts/raw/branch/main/.golangci.yml` and,
in the same commit, set the lint phase digest to the one named in the
`.golangci.yml` paragraph of `REPO_POLICIES.md`)
`.golangci.yml` section of `REPO_POLICIES.md`)
- [ ] JS: `package.json`, `yarn.lock`, `.yarnrc.yml`, `.yarn/releases/`,
`.gitattributes`, `.prettierrc`, `.prettierignore` (fetch the last two
from `https://git.eeqj.de/sneak/prompts/raw/branch/main/.prettierrc`
@@ -259,13 +259,8 @@ with your task.
# Formatting
- [ ] Platform-standard formatter is configured (`black`, `prettier`, and for Go
`gofmt` then `golines -m 77`)
- [ ] Default formatter config, except four-space indents (not Go) and the Go
77-column limit
- [ ] Go: `script/bootstrap` installs `golines` with `go install` pinned to a
commit hash; `script/fmt-check` fails when `gofmt` or `golines -m 77`
would change a file
- [ ] 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
+4 -6
View File
@@ -1,6 +1,6 @@
---
title: New Repo Checklist
last_modified: 2026-11-07
last_modified: 2026-11-06
---
Use this checklist when creating a new repository from scratch. Follow the steps
@@ -178,7 +178,7 @@ Template files can be fetched from:
- [ ] Go: `go mod init sneak.berlin/go/<name>`, `.golangci.yml` (fetch from
`https://git.eeqj.de/sneak/prompts/raw/branch/main/.golangci.yml` and,
in the same commit, set the lint phase digest to the one named in the
`.golangci.yml` paragraph of `REPO_POLICIES.md`)
`.golangci.yml` section of `REPO_POLICIES.md`)
- [ ] JS, or any repository that runs prettier through yarn: make the first
`yarn.lock` with the steps below. `script/bootstrap` installs no yarn
until `yarn.lock` exists, so run them with any distribution's node and
@@ -233,11 +233,9 @@ are thin shims calling them. Model scripts:
which writes no image. No lint verdict may come from a host invocation of
the linter.
- [ ] `script/fmt` / `make fmt` — formats code (writes; native, never in a
container). Go code gets `gofmt`, then `golines -m 77`.
container)
- [ ] `script/fmt-check` / `make fmt-check` — checks formatting (read-only;
native). Fails when `gofmt` or `golines -m 77` would change a Go file.
- [ ] Go: `script/bootstrap` installs `golines` with `go install` pinned to a
commit hash
native)
- [ ] `script/check` / `make check` — runs `test`, `lint`, `fmt-check`; must not
modify files
- [ ] `script/projectname` — outputs the project name (used by `script/docker`
+1023 -1122
View File
File diff suppressed because it is too large. Load diff