bring the repo up to repo standards in one PR #1

Open
opened 2026-08-30 13:14:30 +02:00 by clawbot · 2 comments

sneak, 2026-08-30: add dcf to project management and bring it up to standards; one issue and one PR.

Scope (per sneak/prompts REPO_POLICIES.md and the Go styleguide): Makefile with fmt/fmt-check/check/test/lint/build; script/ STRTA entrypoints; canonical .golangci.yml with linting in Docker (Dockerfile.lint); prettier config for markdown (4-space tabs, proseWrap always); go.mod tidy and toolchain current; fix any lint findings; README gains the standard workflow section while keeping its content; rename default branch mastermain. Code stays in pkg/dcf (already conforms — no cmd/ exists and none is added here).

Done: make check green via the repo's own targets, lint clean in Docker, default branch main, one PR reviewed and merged.

sneak, 2026-08-30: add `dcf` to project management and bring it up to standards; one issue and one PR. Scope (per `sneak/prompts` `REPO_POLICIES.md` and the Go styleguide): `Makefile` with `fmt`/`fmt-check`/`check`/`test`/`lint`/`build`; `script/` STRTA entrypoints; canonical `.golangci.yml` with linting in Docker (`Dockerfile.lint`); prettier config for markdown (4-space tabs, proseWrap always); `go.mod` tidy and toolchain current; fix any lint findings; README gains the standard workflow section while keeping its content; rename default branch `master` → `main`. Code stays in `pkg/dcf` (already conforms — no `cmd/` exists and none is added here). Done: `make check` green via the repo's own targets, lint clean in Docker, default branch `main`, one PR reviewed and merged.
Author

Plan:

  • Vendor the org standard tooling byte-identical from sneak/prompts and clawbot/go-template-repo: canonical .golangci.yml, .editorconfig, .prettierrc/.prettierignore, .dockerignore, .gitea/workflows/check.yml, and the full script/ STRTA set (bootstrap setup projectname test lint fmt fmt-check check docker cibuild precommit install-precommit plus the prettier/assert-step-ran/assert-context-complete/repo-source-manifest helpers). Makefile becomes thin shims over those.
  • Lint runs in Docker only, via Dockerfile.lint, with the cache-bust and context-completeness assertions the template uses. Dockerfile gets the lint stage plus a build/test stage; no runtime stage, since this repo is a library with no cmd/.
  • make build currently points at a cmd/dcfinfo that does not exist in the tree, so it cannot succeed. Per the issue ("no cmd/ exists and none is added here") build becomes go build ./....
  • go.mod: tidy (drops the unused lmittmann/tint indirect) and bring the toolchain line current.
  • Fix the lint findings the new config surfaces in pkg/dcf. Two are real: findDCFMountPoints discards the error from findAllMountPoints (a stray unassigned erro is checked instead), and privatePath is assigned twice so the first computation is dead.
  • README keeps all its existing content and is reorganised into the required sections, adding Entrypoints documenting each script/ entrypoint.

One commit, one PR, based on the current default branch.

Plan: - Vendor the org standard tooling byte-identical from `sneak/prompts` and `clawbot/go-template-repo`: canonical `.golangci.yml`, `.editorconfig`, `.prettierrc`/`.prettierignore`, `.dockerignore`, `.gitea/workflows/check.yml`, and the full `script/` STRTA set (`bootstrap` `setup` `projectname` `test` `lint` `fmt` `fmt-check` `check` `docker` `cibuild` `precommit` `install-precommit` plus the `prettier`/`assert-step-ran`/`assert-context-complete`/`repo-source-manifest` helpers). `Makefile` becomes thin shims over those. - Lint runs in Docker only, via `Dockerfile.lint`, with the cache-bust and context-completeness assertions the template uses. `Dockerfile` gets the lint stage plus a build/test stage; no runtime stage, since this repo is a library with no `cmd/`. - `make build` currently points at a `cmd/dcfinfo` that does not exist in the tree, so it cannot succeed. Per the issue ("no `cmd/` exists and none is added here") `build` becomes `go build ./...`. - `go.mod`: tidy (drops the unused `lmittmann/tint` indirect) and bring the toolchain line current. - Fix the lint findings the new config surfaces in `pkg/dcf`. Two are real: `findDCFMountPoints` discards the error from `findAllMountPoints` (a stray unassigned `erro` is checked instead), and `privatePath` is assigned twice so the first computation is dead. - README keeps all its existing content and is reorganised into the required sections, adding **Entrypoints** documenting each `script/` entrypoint. One commit, one PR, based on the current default branch.
Author

PR: #7

Three parts of this issue's done-criteria are not clawbot's to complete, because it has no write access to this repo (push: false, admin: false):

  • Default branch is still master. Creating main and setting default_branch both 403. sneak has to do the rename.
  • The PR comes from a fork (clawbot/dcf), because pushing a branch here is rejected by the pre-receive hook.
  • needs-review could not be applied and the PR could not be assigned. The repo has no labels and creating one 403s; assignee edits are silently dropped.

Granting clawbot write on this repo fixes all three.

PR: https://git.eeqj.de/sneak/dcf/pulls/7 Three parts of this issue's done-criteria are not clawbot's to complete, because it has no write access to this repo (`push: false`, `admin: false`): - **Default branch is still `master`.** Creating `main` and setting `default_branch` both 403. sneak has to do the rename. - **The PR comes from a fork** (`clawbot/dcf`), because pushing a branch here is rejected by the pre-receive hook. - **`needs-review` could not be applied and the PR could not be assigned.** The repo has no labels and creating one 403s; assignee edits are silently dropped. Granting clawbot write on this repo fixes all three.
Sign in to join this conversation.
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: sneak/dcf#1