docs: update TODO.md Workflow and Status for the next branching model (closes #106)
check / check (push) Failing after 0s

The Workflow section of TODO.md still told contributors to branch from main and merge there. It now describes the current model: one branch per issue cut from next, a PR based on next, an independent reviewer, a squash-merge into next by the manager, and only the owner merging next into main through the milestone PR. The Status paragraph no longer claims work is green on main.

Disclosure: only the wrong lines are touched; reflowing the whole file is left to #100.

Model: opus-4-8 (implementation, review); fable-5-1 (landing message)
This commit was merged in pull request #114.
This commit is contained in:
2026-09-21 19:59:51 +02:00
parent 6f416eac31
commit 4f95cb6a37
+13 -7
View File
@@ -1,21 +1,27 @@
# Workflow # Workflow
* branch (from `main`) * branch per issue from `next`
* do the work in Next Step * do the work in Next Step
* move Next Step to the top of Completed Steps * move Next Step to the top of Completed Steps
* move the top item of Future Steps into Next Step * move the top item of Future Steps into Next Step
* commit (`TODO.md` changes in the same commit as the work) * commit (`TODO.md` changes in the same commit as the work)
* merge to `main` if the branch is not protected, otherwise open a PR * open a PR based on `next`
* an independent reviewer who did not write the change gates it
* the manager squash-merges the PR into `next` once review passes
* `next` stays green and mergeable to `main` at any time; only the owner
merges `next` into `main`, via the single milestone PR
* push * push
# Status # Status
pre-1.0. No git tags exist. Recent work extracted the internal/magic, pre-1.0. No git tags exist. The `1.0.0` milestone is in progress; work
lands on `next`, and `main` receives only the milestone PR that the
owner merges. `next` is at the canonical `golangci-lint` v2.12.2 config
and is green. Recent work extracted the internal/magic,
internal/allowlist, internal/httpfetcher, and internal/signature internal/allowlist, internal/httpfetcher, and internal/signature
packages. The gosec findings from the 2026-07-06 survey are resolved packages. The gosec findings from the 2026-07-06 survey are resolved.
and `make check` is green on main. The disk cache is now size-bounded The disk cache is now size-bounded with LRU eviction
with LRU eviction (`cache_max_bytes`), closing the unbounded disk (`cache_max_bytes`), closing the unbounded disk growth DoS vector.
growth DoS vector.
# Next Step # Next Step