Commit graph

209 commits

Author SHA1 Message Date
Michael Dieringer
c658af6c94
Merge pull request #49 from Curabis/governance/regelsanity
RegelSanity: Retten får jurisdiktion og en foged
2026-07-02 07:16:56 +02:00
Michael Dieringer
e7932e969e Ferencz: Rettens anklager - dokumentation foer drama
Retten fik jurisdiktion (RegelSanity) og en foged (Mode B v11), men
ingen byggede sagen. Benjamin Ferencz besaetter anklagersaedet: han
hvilede Einsatzgruppen-anklagen paa gerningsmaendenes egne rapporter -
beviskaede frem for mavefornemmelse er ikke bare hans mandat, det var
hans metode.

- custom/agents/ferencz.agent.md: case builder for begge sagstyper
  (RegelSanity-divergens og effektivitet). Protokol: record -> standard
  -> beviskaede -> eksculperende evidens -> praecist spoergsmaal -> rest.
  CURABIS-FERENCZ-001..006: citation paa alle claims, moenstre ikke
  personer, ingen adjektiver, insufficient evidence er et gyldigt svar.
- curabis-standard.agent.md: ferencz i URL-tabel, 4c-fetchliste,
  Mode B-tabel og CLAUDE.md-templatens on-demand-liste
- court.agent.md: briefs samles af Ferencz; en brief uden hans
  beviskaede-disciplin returneres foer deliberation

Mandat (Michael): Dokumentation foer drama. Ansvar frem for
undskyldninger. Beviskaede frem for mavefornemmelse. Moral uden hysteri.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-02 07:14:53 +02:00
Michael Dieringer
6b33e10146 RegelSanity: Retten faar jurisdiktion og en foged
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>
2026-07-02 07:09:44 +02:00
Michael Dieringer
7ee858f8b7
Merge pull request #48 from Curabis/setup/stable-release-channel
Hardening: stable-udrulningskanal + Ishikawa v2 (dynamisk regelopslag)
2026-07-02 00:12:43 +02:00
Michael Dieringer
b532b9b38c bcquality.agent.md v2: dynamisk regelopslag i stedet for frossen URL-liste
Den hardcodede Layer 2-liste naevnte 22 af custom-lagets 36 regler -
reviews via Ishikawa saa aldrig de nyeste 14+ (inkl. begge mode-b-regler,
permission-sets-least-privilege og mcp-config-hardcoded-paths), og hver
ny regel kraevede manuel listeredigering i templaten for at faa effekt.

Source-steppet oploeser nu regelsaettet ved review-tid:
1. Maskin-mirror ~/.claude/bcquality-knowledge/custom/ (Claude-sessioner)
2. Fallback: tree-API paa stable + raw-fetch (Copilot/frisk maskine/CI)

Ingen liste at vedligeholde; nye regler er aktive fra foerste promote.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-02 00:07:17 +02:00
Michael Dieringer
3ef2e95af6 Hardening: stable-branch som udrulningskanal - merge til main er ikke laengere deploy
Alle forbrugere laeser nu fra stable i stedet for main:
- curabis-standard.agent.md v10: BASE/AGENTS_BASE + self-heal-URL -> stable
- sync-bcquality-knowledge.ps1: $branch = stable
- machine/CLAUDE.md: auto-update gater paa stable-SHA og fetcher setup fra stable
- templates/bcquality.agent.md + al-triage.agent.md: knowledge-URLer -> stable
  (+ fix af doed reference: branch-merge-to-main-workflow.md var omdoebt til
  feature-branch-must-merge-to-track-branch.md - templaten shippede et 404)
- francis.agent.md + Invoke-CurabisEvidence.ps1: raw-base -> stable
- CONSUMPTION.md: Release channel-sektion med promote-procedure og rationale

Deploy sker herefter kun ved bevidst fast-forward af stable (kun Michael).
Kanal oprettet: stable @ 57b8292, tag v1.0.0.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-02 00:02:44 +02:00
Michael Dieringer
57b8292848
Merge pull request #47 from Curabis/fix/agent-dedup
Dedup: carlin/francis/immanuel har nu een kanonisk placering - custom…
2026-07-01 23:54:23 +02:00
Michael Dieringer
e7a2fac879 Dedup: carlin/francis/immanuel har nu een kanonisk placering - custom/agents/
Francis og Immanuel laa i baade custom/agents/ (v1, forladt siden
2026-06-22) og custom/setup/templates/ (v2/v3, aktivt vedligeholdt og
det setup faktisk hentede fra). Intern drift i selve regelrepoet -
samme sygdom som Mode B-reglerne bekaemper i projekterne.

- Nyeste indhold (templates-udgaverne) kopieret til custom/agents/,
  templates-dubletterne slettet
- carlin.agent.md flyttet med til custom/agents/ - han er en persona
  som de oevrige der (smiley, weber, columbo), ikke en projekt-template
- curabis-standard.agent.md v9: de tre henter nu fra AGENTS_BASE,
  inkl. Francis-fallback-linjen i CLAUDE.md-templaten
- custom/setup/templates/ indeholder herefter kun projekt-artefakter
  (al-*, algo-settings, bc-mcp, bcquality, cspell, HEARTBEAT)

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-01 23:52:47 +02:00
Michael Dieringer
4989e3ec4b
Merge pull request #46 from Curabis/fix/custom-layer-validation
Custom-laget bestaar nu begge CI-checks: 72 validator-fejl -> 0
2026-07-01 23:49:31 +02:00
Michael Dieringer
dd5637b1db Custom-laget bestaar nu begge CI-checks: 72 validator-fejl -> 0
Normalisering af alle 39 custom knowledge-filer til READ-kontraktens
skema (validate_frontmatter.py + Test-KnowledgeIndex.ps1 begge groenne):

- R01/R02: 28 filer manglede frontmatter eller brugte aeldre skemaer
  (title/category/severity/rule-id m.fl.) - alle har nu praecis de 6
  kraevede noegler; keywords haandskrevet pr. fil da de driver
  worklist-selektionen i INDEX/knowledge-index
- R09: manglende Description-sektion - regel-agtige foersteoverskrifter
  (Core Rule/Rule/Regel/Core Principle) omdoebt, eller sektion indsat
  efter titlen hvor intro-tekst fandtes
- R10: fenced code blocks konverteret til 4-space indrykkede blokke
  i alle filer (indhold uaendret)
- R11: 4 filer over 100 linjer fortaettet redaktionelt uden semantisk
  tab (ai-eval-scores 143->100, git-lifecycle 121->97,
  permission-sets 113->99, test-feature-scenario-tags 105->91)
- R05: AL0197->al0197, add_repo->add-repo; keyword-lister trimmet
  til maks 10

Ingen regler er fjernet eller aendret i betydning - kun form.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-01 23:47:31 +02:00
Michael Dieringer
ec2892f0ab
Merge pull request #45 from Curabis/docs/consumption-plus-edison
Edison op i BCQuality + CONSUMPTION.md: dokumenter aktiv vs. sovende …
2026-07-01 23:32:36 +02:00
Michael Dieringer
66e35855b7 Edison op i BCQuality + CONSUMPTION.md: dokumenter aktiv vs. sovende konsumtion
- custom/agents/edison.agent.md: Edison (BCQuality eval runner) fandtes
  kun lokalt i Jernpladsen, men court.agent.md kraever hans scorecards.
  Nu upstream, saa alle projekter faar ham.
- curabis-standard.agent.md v8: edison tilfoejet til Source URL-tabellen,
  Mode A 4c-fetchlisten, Mode B-tabellen og CLAUDE.md-templatens
  on-demand-liste.
- CONSUMPTION.md: den faktiske konsumtionsmodel. Sessionmodellen
  (maskin-mirror + .github/.agents) er den eneste aktive; Entry-flowet
  (entry.md, READ/DO/WRITE, layer skills, Build-KnowledgeIndex.ps1,
  bcquality.config.yaml) er sovende upstream-arv reserveret til fremtidig
  CI-integration - inkl. de tre deltas der skal lukkes foer aktivering
  (tom custom/skills/, to index-generatorer, ingen lag-praecedens i
  sessionmodellen).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-01 23:31:33 +02:00
Michael Dieringer
624f56203e
Merge pull request #44 from Curabis/setup/machine-mirror-v7
Setup v7: BCQuality knowledge-mirror er maskin-lokal, ikke repo-lokal
2026-07-01 23:14:07 +02:00
Michael Dieringer
41c6187c4f Setup v7: BCQuality knowledge-mirror er maskin-lokal, ikke repo-lokal
- 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>
2026-07-01 23:08:50 +02:00
Michael Dieringer
4ee1af5d12
Merge pull request #43 from Curabis/setup/bcquality-knowledge-sync
[Setup] Deploy BCQuality knowledge sync mechanism to every CURABIS project
2026-07-01 14:40:34 +02:00
Michael Dieringer
080df3b3be Deploy bcquality-knowledge sync-mekanisme via CURABIS Standard setup 2026-07-01 14:39:32 +02:00
Michael Dieringer
7b4d144c24 Tilføj sync-bcquality-knowledge.ps1 til setup-artefakter 2026-07-01 14:39:20 +02:00
Michael Dieringer
33e6e6a4c6
Merge pull request #42 from Curabis/rule/bcquality-unconsumed-layers-must-be-declared
[BCQuality] Unconsumed BCQuality layers must be declared
2026-07-01 13:58:48 +02:00
Michael Dieringer
ed7dabf07d Foreslå regel: Unconsumed BCQuality layers must be declared 2026-07-01 13:58:07 +02:00
Michael Dieringer
16678b9bd4
Merge pull request #41 from Curabis/fix/mode-b-template-table-incomplete
[BCQuality] Fix ufuldstaendig template-liste i Mode A/Mode B
2026-07-01 13:36:18 +02:00
Michael Dieringer
905bc32a94 Fix: Mode B og Mode A template-liste var ufuldstaendig 2026-07-01 13:35:32 +02:00
Michael Dieringer
b078eb5027
Merge pull request #40 from Curabis/rule/mode-b-reconciliation-must-be-per-repository-not-global-sha-gated
[BCQuality] Mode B-reconciliation skal spores pr. repository
2026-07-01 12:27:11 +02:00
Michael Dieringer
fb7c93efe7 Foreslå regel: Mode B-reconciliation skal spores pr. repository, ikke globalt 2026-07-01 12:25:16 +02:00
Michael Dieringer
393d5b2f38
Merge pull request #39 from Curabis/rule/mode-b-update-must-reconcile-full-template-list
[BCQuality] Mode B update må reconcile den fulde template-liste
2026-07-01 12:15:13 +02:00
Michael Dieringer
80d9a9063a Foreslå regel: Mode B update må reconcile den fulde template-liste 2026-07-01 12:07:53 +02:00
Michael Dieringer
7e72d11447
Merge pull request #38 from Curabis/fix/setup-script-mcp-config-must-not-hardcode-paths
Fix setup script to follow mcp-config-must-not-hardcode-developer-paths
2026-07-01 09:55:50 +02:00
Michael Dieringer
50e60a6513 Fix setup script to follow mcp-config-must-not-hardcode-developer-paths
Mode A generated .mcp.json with a literal C:\Users\<USERNAME>\... bridge
path and an absolute find-altool.ps1 path; Mode B validated against that
same hardcoded form, so it would have "corrected" a compliant env-var
path back to a broken one. Both now use ${USERPROFILE} and
${CLAUDE_PROJECT_DIR:-.} per the rule merged in #37.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-07-01 09:54:41 +02:00
Michael Dieringer
fed213fab1
Merge pull request #37 from Curabis/rule/mcp-config-must-not-hardcode-developer-paths
[BCQuality] Shared MCP configuration must not hardcode developer-specific paths
2026-07-01 09:39:00 +02:00
Michael Dieringer
36ee61f811 Foreslaa regel: Shared MCP configuration must not hardcode developer-specific paths 2026-07-01 09:36:12 +02:00
Michael Dieringer
7074277d93
Merge pull request #36 from Curabis/rule/curabis-app-sources-must-be-checked-first
[BCQuality] CURABIS-egne app-kilder skal tjekkes foer symbol-inspection
2026-06-30 21:06:44 +02:00
Michael Dieringer
0d41a1aa7e Foreslå regel: CURABIS-egne app-kilder skal tjekkes før symbol-inspection 2026-06-30 21:05:33 +02:00
Michael Dieringer
8254a95d09
Merge pull request #35 from Curabis/rule/write-shebang-integrity
[BCQuality] Shebang-integritet ved deploy af script-filer (CURABIS-MCP-SHEBANG-001)
2026-06-29 15:58:01 +02:00
Michael Dieringer
6a8065e080 Foreslå regel: Shebang-integritet ved deploy af script-filer 2026-06-29 15:56:39 +02:00
Michael Dieringer
33d1926f53
Merge pull request #34 from Curabis/knowledge/bc-mcp-scope-tasks-to-repo
Knowledge/bc mcp scope tasks to repo
2026-06-28 23:02:42 +02:00
Michael Dieringer
c6642306d6 [Agent] Merge main + add Carlin - always-active bullshit detector
Resolves merge conflicts between branch and main.
Carlin added to: source URLs, CLAUDE.md template (after Smiley), agent deploy list.
All agents from main preserved. Carlin is agent 14.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-28 23:01:48 +02:00
Michael Dieringer
6765df474d [Agent] Add George Carlin - always-active bullshit detector
Deploys carlin.agent.md to all CURABIS projects via curabis-standard.
Carlin surfaces with one dry observation when complexity, vague requirements,
or feature creep earns it. Named after the CURABIS Kick-off 2026 Lego duck
exercise.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-28 22:57:08 +02:00
Michael Dieringer
be0eb23e7a
Merge pull request #32 from Curabis/rule/feature-branch-must-merge-to-track-branch
[BCQuality] Ny regel: Feature branches must merge to track branch
2026-06-28 13:56:35 +02:00
Michael Dieringer
618078b589
Merge pull request #33 from Curabis/rule/eval-task-boundaries
[BCQuality] Sharpening: Eval ved task-grænser (baseline + final)
2026-06-28 13:54:52 +02:00
Michael Dieringer
f3fbd88a5f
Merge pull request #31 from Curabis/rule/git-lifecycle-claude-sync
[BCQuality] CURABIS-BCMCP-008: Track branch + Claude-driven sync
2026-06-28 13:54:02 +02:00
Michael Dieringer
5cc6ac31be Sharpening: Eval skal køres ved task-grænser (baseline + final) 2026-06-28 13:50:41 +02:00
Michael Dieringer
66c7ef565d Ny regel: Feature branches must merge to declared track branch 2026-06-28 13:50:21 +02:00
Michael Dieringer
7fedcece6d Sharpening: Track branch concept + Claude-driven sync (CURABIS-BCMCP-008) 2026-06-28 13:50:04 +02:00
Michael Dieringer
6097fe2c60
Merge branch 'microsoft:main' into main 2026-06-28 11:51:16 +02:00
Michael Dieringer
d011cbcdd8
Merge pull request #30 from Curabis/rule/mcp-bridge-encoding
[BCQuality] CURABIS-MCP-003 MCP bridge JS-filer uden UTF-8 BOM
2026-06-28 11:47:36 +02:00
Michael Dieringer
9b4fb4ce45 Foresla regel: MCP bridge JS-filer uden UTF-8 BOM 2026-06-28 11:46:47 +02:00
Michael Dieringer
579d28b193
Merge pull request #29 from Curabis/rule/sharpen-new-file-requires-vscode-refresh-mcp
[BCQuality] Skaerp new-file-requires-vscode-refresh med MCP cross-project
2026-06-26 15:49:59 +02:00
Michael Dieringer
cbe9a704b0
Merge pull request #28 from Curabis/rule/al-build-output-must-not-pollute-project-root
[BCQuality] AL build-output must not pollute project root
2026-06-26 15:49:33 +02:00
Michael Dieringer
03e8071a07 Skaerp regel: new-file-requires-vscode-refresh — tilfoej MCP cross-project symbol resolution 2026-06-26 15:48:39 +02:00
Michael Dieringer
bbe2117aad Foreslag regel: AL build-output must not pollute project root 2026-06-26 15:47:48 +02:00
Michael Dieringer
46f8ded318
Merge pull request #27 from Curabis/rule/mcp-server-must-be-verified-at-session-start
[BCQuality] MCP server availability must be verified at session start
2026-06-26 13:38:02 +02:00