From 3c50efab6091cad447452e5d6459e75b3cc00f94 Mon Sep 17 00:00:00 2001 From: Cam Proudlock Date: Sun, 30 Aug 2026 12:50:18 -0400 Subject: [PATCH] Branch model corrections: wilm is an active sibling branch Also stops wj-status offering to promote work that already landed. --- CONTRIBUTING.md | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 654127ef..848e3026 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -153,9 +153,15 @@ Tests are required for: ## Branches: what belongs on main, and what does not -Two branches. `main` is the product every site runs and the publication mirror -exports. `` branches - currently `wj` - hold work that is not ready for -other sites to see. +`main` is the product every site runs and the publication mirror exports. +`` branches hold work that is not ready for other sites to see. There are +two: `wj` here, and `wilm` on the corporate GitHub, where the other site +develops the .NET endpoint agent. + +A site branch is not a fork. Both feed `main`, and the sooner they do it the +cheaper it is. A branch the dev box cannot see is still a branch: `wilm` is not +visible from here because this machine has no GitHub account, which is why +`fetch-wilm-branch.cmd` on the share exists to bring it back for review. **Most work is product.** ADR-015 gives site differences three homes on `main`: a setting with a neutral default, seed data, or a site-namespaced directory @@ -188,10 +194,9 @@ quietly becomes the product. **The failure to watch for is not what you think.** Promoting something site-specific by accident is caught by the ADR-015 gate on the way into `main`. -The real risk is product work sitting on a site branch forever because nobody -decided - which is how the `wilm` branch stopped being a merge and became a -port, costing a MySQL dialect fix, a contract violation and a plugin install to -bring back. +The real risk is product work sitting on a site branch until bringing it back is +a port rather than a merge - one such round trip cost a MySQL dialect fix, a +contract violation and a plugin install. So rebase the site branch on `main` often, and promote as you go rather than in one batch at the end.