@@ -81,6 +81,24 @@ Control (report < 0.85) → Human review required
81813 . No hardcoded secrets — use env vars with ` ${VAR:-} ` defaults.
82824 . Fix scripts must be idempotent (safe to run multiple times).
83835 . Confidence thresholds gate all automated actions.
84+ 6 . ** ` bots/<name>/ ` directories are THIN ADAPTERS, not homes for standalone
85+ products.** Never vendor an entire external project (its own Cargo
86+ workspace, analyzers, containers, deployment, docs) into a bot slot, and
87+ never let a bot crate add a ` path ` dependency that escapes the repo. If a
88+ capability deserves its own project, build it in its own repository and
89+ depend on it externally. See [ ` bots/README.adoc ` ] ( ../bots/README.adoc ) .
90+ - ** Disambiguation:** ` sustainabot ` (this fleet's eco/econ slot, kept as
91+ ` BotId::Sustainabot ` ) is ** not** ` OikosBot ` and ** not** ` oikos ` . A misfiled
92+ full copy of OikosBot once lived in ` bots/sustainabot/ ` ; it was extracted to
93+ ` hyperpolymath/oikosbot ` and the slot reset to a placeholder. ` oikos ` is a
94+ separate DSL (` hyperpolymath/oikos-economics-accounting-dsl ` ).
95+ 7 . ** Mark intentional mass-deletions.** The Repo Integrity Guard
96+ (` .github/workflows/repo-integrity-guard.yml ` ) fails any change that deletes
97+ more than ` MAX_DELETIONS ` (50) tracked files vs. base — it exists because
98+ ` main ` was once silently gutted from 1777 files to 2. For a * deliberate*
99+ large removal, include the literal marker ` [mass-delete-ok] ` in a commit
100+ message in the range, ** or** in the PR title/body. Never weaken the guard or
101+ trim its critical-file list just to get a change through.
84102
85103## Repo health
86104
0 commit comments