mirror of
https://github.com/microsoft/BCQuality.git
synced 2026-10-06 23:26:55 +01:00
Michaels observation: udviklere tilfoejer agenter lokalt i enkelt-repos (Edison opstod saadan) - og repoer maa ikke opfoere sig forskelligt. Francis (Bacon) observerer og Immanuel (Kant) universaliserer, men ingen haandhaevede ensartethed paa tvaers af portefoeljen. Tre byggesten: - Ny regel repo-local-agents-must-be-universalized-or-removed: lokale agenter/kvalitetsregler har to fremtider - universaliseres via Francis/Immanuel/Michael eller fjernes. Aldrig tavs beholdelse. Domaeneviden hoerer i projectmemory/docs; kvalitetsstandarder i BCQuality eller ingen steder. - Mode B v11: reconciliation kigger nu BEGGE veje - ekstra filer i .github/.agents (ikke i template-tabellen) flages med a/b-valg: universaliser eller fjern. Det var fogeden, der manglede: Edison laa uopdaget lokalt, fordi Mode B kun tjekkede manglende filer. - court.agent.md v2: to sagstyper. Effektivitets-sager kraever Edison- scorecards som hidtil; RegelSanity-sager (lokal divergens) kraever kun filen, gabet den udfylder, og spoergsmaalet universel-eller-ud. Disposition: UNIVERSALIZE eller REMOVE. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
71 lines
3.1 KiB
Markdown
71 lines
3.1 KiB
Markdown
---
|
|
bc-version: [all]
|
|
domain: architecture
|
|
keywords: [agents, repo-local, divergence, regelsanity, court, governance, universalization]
|
|
technologies: [al]
|
|
countries: [w1]
|
|
application-area: [all]
|
|
---
|
|
|
|
# Repo-local agents and rules must be universalized or removed
|
|
|
|
## Description
|
|
|
|
CURABIS repos must behave identically. A developer who adds an agent or a
|
|
quality rule directly to one repo's `.github/.agents/` (instead of proposing
|
|
it for BCQuality) creates silent divergence: that repo reviews, routes, or
|
|
behaves differently from every other repo, and the improvement — if it is one
|
|
— never reaches the rest of the portfolio.
|
|
|
|
This happened in practice: `edison.agent.md` was created locally in one repo.
|
|
It was invisible to all other repos for weeks, while `court.agent.md`
|
|
(deployed everywhere) declared a hard dependency on Edison's scorecards — a
|
|
dependency no other repo could satisfy. The agent was good; the placement
|
|
made it a liability.
|
|
|
|
Repo-specific agents and quality rules do not produce better quality. They
|
|
produce N repos with N behaviours. Domain-specific knowledge (business rules,
|
|
scope, customer context) belongs in `projectmemory/` and `docs/specs/` —
|
|
process and quality standards belong in BCQuality, or nowhere.
|
|
|
|
## Rule
|
|
|
|
Any agent file or quality/process rule found in a repo that is not part of
|
|
the BCQuality-deployed set has exactly two futures, and silence is not one
|
|
of them:
|
|
|
|
1. **Universalize** — route it through the governance pipeline: Francis files
|
|
the observation, Immanuel universalizes, Michael merges to BCQuality, the
|
|
next stable promote deploys it to every repo. If the addition raises a
|
|
portfolio-level question (overlap with existing agents, structural change),
|
|
the Court hears it as a RegelSanity case — no Edison scorecards required
|
|
for divergence cases; the file itself and the question "universal or out?"
|
|
suffice.
|
|
2. **Remove** — if it does not generalize, it does not belong in the repo.
|
|
|
|
Detection is Mode B's job: reconciliation must flag files present in
|
|
`.github/.agents/` that are NOT in the setup template list — extras, not just
|
|
missing files.
|
|
|
|
## What NOT to do
|
|
|
|
- Do not keep a locally added agent because it is useful — usefulness is the
|
|
argument FOR universalizing it, not for keeping it private
|
|
- Do not delete a local agent without the routing step; it may be the best
|
|
idea in the portfolio (Edison was)
|
|
- Do not put quality or process rules in a project's CLAUDE.md or
|
|
projectmemory/ to avoid the governance pipeline
|
|
- Do not treat this as bureaucracy — one promote deploys to every repo;
|
|
universalizing is cheaper than maintaining a private fork of the standard
|
|
|
|
## Signal to watch for
|
|
|
|
During Mode B or at session start: a file in `.github/.agents/` whose name
|
|
does not appear in the setup template table in `curabis-standard.agent.md`.
|
|
|
|
## Message to developer
|
|
|
|
When a repo-local agent or rule is found, tell the developer: this repo
|
|
carries a local agent/rule that no other CURABIS repo has; per RegelSanity it
|
|
must either be proposed for BCQuality (offer to route it to Francis and
|
|
Immanuel now) or removed — and ask which of the two they want.
|