mirror of
https://github.com/microsoft/BCQuality.git
synced 2026-10-05 22:56:55 +01:00
- curabis-standard.agent.md v6 -> v7: mirror deployes til ~/.claude/bcquality-knowledge/ (delt af alle repoer paa maskinen) i stedet for .github/.agents/bcquality-knowledge/ i hvert repo - CLAUDE.md-templaten peger paa maskin-mirroren via %USERPROFILE% (aldrig literal udviklersti) og faar self-heal-instruktion - Mode B: v6-aera-oprydning (fjern committet repo-mirror, gitignore stien, foreslaa CLAUDE.md-migrering) + genkend hardcodede udviklerstier og raa-URL-lister som foraeldede CLAUDE.md-former - sync-bcquality-knowledge.ps1: fast destination $env:USERPROFILE \.claude\bcquality-knowledge i stedet for $PSScriptRoot-relativ (det var dobbelttydigheden der skabte repo-mirrors) - Ny regel: bcquality-knowledge-must-mirror-to-machine-not-repo - Setup-artefakter skal fetches som raa bytes (Invoke-WebRequest -OutFile) - aldrig via strengindhold, som dobbelt-encoder UTF-8 Begrundelse: udviklere skifter repo mange gange dagligt; N repo- mirrors er permanent ude af sync, een maskin-mirror kraever een sync pr. upstream-aendring. CI/cloud-agenter henter selv reglerne via .github/bcquality.config.yaml. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
68 lines
3.1 KiB
Markdown
68 lines
3.1 KiB
Markdown
---
|
|
bc-version: [all]
|
|
domain: architecture
|
|
keywords: [bcquality, knowledge-mirror, machine-local, repo-hygiene, sync, curabis-standard, claude-md]
|
|
technologies: [al]
|
|
countries: [w1]
|
|
application-area: [all]
|
|
---
|
|
|
|
## Description
|
|
|
|
The three-layer BCQuality knowledge mirror (custom/community/microsoft +
|
|
INDEX.md) can technically live in two places: inside each project repository
|
|
(`.github/.agents/bcquality-knowledge/`, setup v6) or once per developer
|
|
machine (`~/.claude/bcquality-knowledge/`, setup v7+). CURABIS developers
|
|
switch between many repositories every day. With per-repo mirrors, every repo
|
|
carries its own copy that goes stale on its own schedule — N repos are
|
|
permanently out of sync with each other and with upstream, every re-sync
|
|
pollutes the project's git history with hundreds of files of upstream rule
|
|
churn, and a review can be judged by whichever rule vintage that particular
|
|
repo happens to carry.
|
|
|
|
## Rule
|
|
|
|
The BCQuality knowledge mirror is machine-local, never repo-local. It lives at
|
|
`~/.claude/bcquality-knowledge/` on each developer's machine, populated by
|
|
`~/.claude/sync-bcquality-knowledge.ps1`, and is shared by every CURABIS repo
|
|
on that machine. One sync per machine per upstream change covers all repos.
|
|
|
|
Project CLAUDE.md files point at the machine mirror using
|
|
`~/.claude/...` / `%USERPROFILE%` — never a literal `C:\Users\<name>\...`
|
|
path — and include the self-heal instruction (if the mirror or sync script is
|
|
missing, fetch the script as raw bytes from BCQuality and run it) so a fresh
|
|
clone works on a fresh machine.
|
|
|
|
CI and cloud agents have no developer machine: they fetch the rules themselves
|
|
via `.github/bcquality.config.yaml` (repo + ref + enabled-layers) — not from a
|
|
committed mirror.
|
|
|
|
## What NOT to do
|
|
|
|
- Do not commit `.github/.agents/bcquality-knowledge/` (or any knowledge
|
|
mirror) into a project repository
|
|
- Do not point a project CLAUDE.md at one developer's literal profile path
|
|
(`C:\Users\mid\...`) — that breaks every other developer on the project
|
|
- Do not deploy `sync-bcquality-knowledge.ps1` into `.github/.agents/` — its
|
|
destination follows the script's own location, which is what created
|
|
repo-local mirrors in the first place
|
|
- Do not assume "the repo builds, so the rules are current" — mirror freshness
|
|
is a machine concern, gated by the machine's BCQuality version marker
|
|
|
|
## Signal to watch for
|
|
|
|
At session start or during Mode B, any of these means the project predates
|
|
setup v7 and needs the Mode B v6-era cleanup (remove the repo mirror,
|
|
gitignore the path, repoint CLAUDE.md at the machine mirror):
|
|
|
|
- `.github/.agents/bcquality-knowledge/` exists in the repository
|
|
- CLAUDE.md contains a literal developer profile path (`C:\Users\<name>\.claude\...`)
|
|
- CLAUDE.md points its BCQuality section at `.github/.agents/bcquality-knowledge/`
|
|
|
|
## Message to developer
|
|
|
|
When a repo-local mirror or hardcoded mirror path is found, tell the developer
|
|
before continuing: this repo uses an obsolete BCQuality mirror model
|
|
(repo-local mirror and/or hardcoded developer path in CLAUDE.md); the standard
|
|
is the machine-local mirror in `~/.claude/bcquality-knowledge/`; offer to run
|
|
"Opdater CURABIS Standard fra BCQuality" to migrate now.
|