From 434c6fe8069b1980fb3b27bf37d46f8ac2ff824c Mon Sep 17 00:00:00 2001 From: James Nightingale Date: Sun, 12 Jul 2026 19:33:29 +0100 Subject: [PATCH] chore: single-source the never-rewrite-history policy as a generated block Replace the hand-maintained history-rewrite guidance with the generated repos_sync:history block (byte-identical canonical text from PyAutoMind/policy/never_rewrite_history.md), so the safety policy is single-sourced and drift-checked. The text stays inline; only the manual copy is retired. Part of the ecosystem standardization (spec 4). Co-Authored-By: Claude Opus 4.8 Claude-Session: https://claude.ai/code/session_01KUGujq6jAgU3CExnLkkELe --- AGENTS.md | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/AGENTS.md b/AGENTS.md index 8b64118..28ae82b 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -204,3 +204,29 @@ Load operational references on demand, not every session: [`wiki/core/operations/sandbox.md`](./wiki/core/operations/sandbox.md). - **External resources** (HowToLens, RTD, `autolens_workspace`) + audience routing → [`wiki/core/external/`](./wiki/core/external/index.md), [`skills/_style.md`](./skills/_style.md) "Adaptive depth". + + +## Never rewrite history + +NEVER perform these operations on any repo with a remote: + +- `git init` in a directory already tracked by git +- `rm -rf .git && git init` +- Commit with subject "Initial commit", "Fresh start", "Start fresh", "Reset + for AI workflow", or any equivalent message on a branch with a remote +- `git push --force` to `main` (or any branch tracked as `origin/HEAD`) +- `git filter-repo` / `git filter-branch` on shared branches +- `git rebase -i` rewriting commits already pushed to a shared branch + +If the working tree needs a clean state, the **only** correct sequence is: + + git fetch origin + git reset --hard origin/main + git clean -fd + +This applies equally to humans, local Claude Code, cloud Claude agents, Codex, +and any other agent. The "Initial commit — fresh start for AI workflow" pattern +that appeared independently on origin and local for three workspace repos is +exactly what this rule prevents — it costs ~40 commits of redundant local work +every time it happens. +