Skip to content

refactor(contract): split architecture-documentation into vocabulary contract + arc42-authoring skill#577

Open
JensGrote wants to merge 1 commit into
LLM-Coding:mainfrom
JensGrote:feat/split-architecture-documentation-contract
Open

refactor(contract): split architecture-documentation into vocabulary contract + arc42-authoring skill#577
JensGrote wants to merge 1 commit into
LLM-Coding:mainfrom
JensGrote:feat/split-architecture-documentation-contract

Conversation

@JensGrote

@JensGrote JensGrote commented Jun 5, 2026

Copy link
Copy Markdown
Collaborator

refactor(contract): split architecture-documentation into vocabulary contract + arc42-authoring skill

(German version below)

Splits the over-grown architecture-documentation contract (2922 chars) into:

  1. A vocabulary contract (~340 chars) — declares which anchors apply
  2. A procedural skill arc42-authoring/ — carries the how-to

Closes #529. Absorbs crosscutting-concepts into the skill.


Assessment against project taxonomy

Contract/Skill boundary — catalog evidence

Characteristic Contract (vocabulary) Skill (procedure)
Purpose Pin shared vocabulary — always-on On-demand workflow machinery
Structure template field in contracts.json SKILL.md + references/ + prompts/
Invocation Loaded into every session Invoked when the task calls for it
Size norm (observed) Median 450 chars, max 1200 Unbounded (Socratic: full SKILL.md)
Naming Noun-phrase (architecture-documentation) Verb-phrase (arc42-authoring)

Size analysis — the outlier

Contract Size Pattern
architecture-documentation 2922 DECLARES + PRODUCES + CONSTRAINS
socratic-code-theory-recovery 2513 DECLARES + CONSTRAINS (has companion skill)
explaining-teaching 1226 CONSTRAINS + DELEGATES
tdd-hamburg-style 1191 CONSTRAINS + COMPOSES
All others (14) 141–708 DECLARES or CONSTRAINS

architecture-documentation is the only contract >1200 chars that has no companion skill. socratic-code-theory-recovery is similarly long but justified as a condensed reminder of its companion skill — the procedural depth lives in the skill, not the contract alone.

Precedent: "invoke a skill for depth" pattern

The explaining-teaching contract (#573) proves this pattern works:

  • Contract composes vocabulary (Bloom's, 4MAT, Feynman, Socratic)
  • Procedural depth lives in the socratic-code-theory-recovery skill
  • Contract stays at 1226 chars

Consistency with Harness Inventory

The Harness Inventory page (docs/harness-inventory.adoc) separates "what a layer checks" (definition) from "how to deploy it" (procedure). Same lens: contract = the what, skill = the how.


Changes

1. New skill: skill/arc42-authoring/

skill/arc42-authoring/
├── SKILL.md
└── references/
    ├── traceability-rules.md
    ├── chapter-10-quality-scenarios.md
    ├── chapter-11-structure.md
    ├── chapter-8-baseline.md
    ├── adr-risk-wiring.md
    └── scaffolding.md

Content extracted 1:1 from the current architecture-documentation and crosscutting-concepts contracts. No information lost — only relocated.

2. Shrunken contract: architecture-documentation

From 2922 chars → ~340 chars:

Architecture documentation follows arc42. Diagrams are C4 via PlantUML's bundled C4-PlantUML stdlib (!include <C4/...>). Decisions are Nygard ADRs with a 3-point Pugh Matrix (-1/0/+1). Quality requirements are six-part Quality Attribute Scenarios (Bass/Clements/Kazman). For procedural detail — traceability rules, chapter structure, scaffolding — invoke the arc42-authoring skill.

3. Absorbed: crosscutting-concepts

Moved to skill/arc42-authoring/references/chapter-8-baseline.md. The contract entry is removed from contracts.json.

4. Socratic overlap resolution

The socratic-code-theory-recovery skill's references/arc42.md contains a Phase 1 decomposition guide (Q-IDs, when to stop decomposing) — this is specific to the Socratic workflow, not to arc42 authoring. No overlap — both skills coexist without duplication:

Skill arc42 content Purpose
arc42-authoring Traceability rules, chapter structure, scaffolding Producing documentation
socratic-code-theory-recovery Q3 decomposition hints, leaf-vs-branch criteria Recovering documentation from code

Tradeoff acknowledged

The traceability rules move from always-on to on-demand. For architecture work the skill is invoked anyway — no loss. For someone only reading the contract as a reminder, the detail was already too large for always-on context — this is a correction, not a regression (as #529 states).



Deutsche Version

refactor(contract): architecture-documentation in Vokabular-Contract + arc42-authoring-Skill aufteilen

Teilt den überwachsenen architecture-documentation-Contract (2922 Zeichen) auf in:

  1. Einen Vokabular-Contract (~340 Zeichen) — deklariert welche Anchors gelten
  2. Einen prozeduralen Skill arc42-authoring/ — enthält das Wie

Schließt #529. Absorbiert crosscutting-concepts in den Skill.


Bewertung gegen die Projekt-Taxonomie

Contract/Skill-Grenze — Katalog-Evidenz

Eigenschaft Contract (Vokabular) Skill (Prozedur)
Zweck Geteiltes Vokabular pinnen — always-on On-demand Workflow-Maschinerie
Struktur template-Feld in contracts.json SKILL.md + references/ + prompts/
Aufruf In jeder Session geladen Aufgerufen wenn die Aufgabe es erfordert
Größennorm (beobachtet) Median 450 Zeichen, Maximum 1200 Unbegrenzt (Socratic: vollständige SKILL.md)
Benennung Nomen-Phrase (architecture-documentation) Verb-Phrase (arc42-authoring)

Größenanalyse — der Ausreißer

Contract Größe Pattern
architecture-documentation 2922 DECLARES + PRODUCES + CONSTRAINS
socratic-code-theory-recovery 2513 DECLARES + CONSTRAINS (hat Begleit-Skill)
explaining-teaching 1226 CONSTRAINS + DELEGATES
tdd-hamburg-style 1191 CONSTRAINS + COMPOSES
Alle anderen (14) 141–708 DECLARES oder CONSTRAINS

architecture-documentation ist der einzige Contract >1200 Zeichen ohne Begleit-Skill. socratic-code-theory-recovery ist ähnlich lang, aber gerechtfertigt als kondensierte Erinnerung seines Begleit-Skills — die prozedurale Tiefe lebt im Skill, nicht allein im Contract.

Präzedenzfall: „invoke a skill for depth"-Pattern

Der explaining-teaching-Contract (#573) beweist, dass dieses Pattern funktioniert:

  • Contract komponiert Vokabular (Bloom's, 4MAT, Feynman, Socratic)
  • Prozedurale Tiefe lebt im socratic-code-theory-recovery-Skill
  • Contract bleibt bei 1226 Zeichen

Konsistenz mit der Harness Inventory

Die Harness-Inventory-Seite (docs/harness-inventory.adoc) trennt „was eine Schicht prüft" (Definition) von „wie man sie deployt" (Prozedur). Gleiche Linse: Contract = das Was, Skill = das Wie.


Änderungen

1. Neuer Skill: skill/arc42-authoring/

skill/arc42-authoring/
├── SKILL.md
└── references/
    ├── traceability-rules.md
    ├── chapter-10-quality-scenarios.md
    ├── chapter-11-structure.md
    ├── chapter-8-baseline.md
    ├── adr-risk-wiring.md
    └── scaffolding.md

Inhalt 1:1 extrahiert aus den aktuellen Contracts architecture-documentation und crosscutting-concepts. Keine Information geht verloren — nur umgezogen.

2. Eingedampfter Contract: architecture-documentation

Von 2922 Zeichen → ~340 Zeichen:

Architekturdokumentation folgt arc42. Diagramme sind C4 über PlantUMLs gebundelte C4-PlantUML-Stdlib (!include <C4/...>). Entscheidungen sind Nygard-ADRs mit einer 3-Punkte Pugh-Matrix (-1/0/+1). Qualitätsanforderungen sind sechsteilige Quality Attribute Scenarios (Bass/Clements/Kazman). Für prozedurale Details — Traceability-Regeln, Kapitelstruktur, Scaffolding — den arc42-authoring-Skill aufrufen.

3. Absorbiert: crosscutting-concepts

Verschoben nach skill/arc42-authoring/references/chapter-8-baseline.md. Der Contract-Eintrag wird aus contracts.json entfernt.

4. Socratic-Überschneidung aufgelöst

Die references/arc42.md des socratic-code-theory-recovery-Skills enthält einen Phase-1-Dekompositions-Guide (Q-IDs, wann man aufhört zu dekomponieren) — das ist spezifisch für den Socratic-Workflow, nicht für arc42-Authoring. Keine Überschneidung — beide Skills koexistieren ohne Duplikation:

Skill arc42-Inhalt Zweck
arc42-authoring Traceability-Regeln, Kapitelstruktur, Scaffolding Dokumentation produzieren
socratic-code-theory-recovery Q3-Dekompositions-Hints, Leaf-vs-Branch-Kriterien Dokumentation aus Code recovern

Trade-off anerkannt

Die Traceability-Regeln wandern von always-on zu on-demand. Für Architekturarbeit wird der Skill ohnehin aufgerufen — kein Verlust. Für jemanden, der den Contract nur als Erinnerung liest, war das Detail bereits zu umfangreich für always-on-Kontext — dies ist eine Korrektur, keine Regression (wie #529 feststellt).

Summary by CodeRabbit

Documentation

  • Umfassende Richtlinien zur Erstellung und Pflege von arc42-Architektur‑Dokumentationen ergänzt (inkl. Template-Scaffolding und When to use/When NOT to use)
  • Einheitliches Six‑Part‑Format für Quality‑Szenarien sowie Statusmodell eingeführt
  • Struktur für Risiken/Technical Debt mit stabilen IDs, Priorisierung und ADR↔Risk‑Verknüpfungslogik festgelegt
  • Traceability‑Regeln sowie Vorgaben für Crosscutting Concepts, Kapitel‑8/9‑Verweise und Diagrammkonventionen ergänzt
  • Vertragsbaustein‑Templates inhaltlich verkürzt/angepasst

Chores

  • Anchor-/Template‑Felder in öffentlichen Vertragsdaten auf mehrzeilige, eingerückte Darstellung umgestellt

@coderabbitai

coderabbitai Bot commented Jun 5, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yml

Review profile: CHILL

Plan: Pro

Run ID: e35a8a7c-5b5a-4837-9dec-b84ae99f1272

📥 Commits

Reviewing files that changed from the base of the PR and between 3ab1a88 and d0aeea1.

📒 Files selected for processing (8)
  • skill/arc42-authoring/SKILL.md
  • skill/arc42-authoring/references/adr-risk-wiring.md
  • skill/arc42-authoring/references/chapter-10-quality-scenarios.md
  • skill/arc42-authoring/references/chapter-11-structure.md
  • skill/arc42-authoring/references/chapter-8-baseline.md
  • skill/arc42-authoring/references/scaffolding.md
  • skill/arc42-authoring/references/traceability-rules.md
  • website/public/data/contracts.json
✅ Files skipped from review due to trivial changes (3)
  • skill/arc42-authoring/references/traceability-rules.md
  • skill/arc42-authoring/references/scaffolding.md
  • skill/arc42-authoring/references/adr-risk-wiring.md
🚧 Files skipped from review as they are similar to previous changes (2)
  • skill/arc42-authoring/references/chapter-8-baseline.md
  • skill/arc42-authoring/references/chapter-11-structure.md

Walkthrough

Die Änderung ergänzt eine neue arc42-Authoring-Skill mit Referenzdokumenten zu Scaffolding, Kapitel 8/10/11, Traceability und ADR↔Risk-Regeln. Zusätzlich werden mehrere anchors-Arrays in website/public/data/contracts.json umformatiert und der architecture-documentation-Text gekürzt.

Changes

arc42-Authoring-Skill-Definition

Layer / File(s) Summary
Skill, Referenzen und Regeln
skill/arc42-authoring/SKILL.md, skill/arc42-authoring/references/*.md
SKILL.md definiert den Ablauf für arc42-Authoring und verweist auf Referenzen für Scaffolding, Kapitel 8, Kapitel 10, Kapitel 11, ADR↔Risk-Wiring und Traceability.
contracts.json Anchors und Vertragstext
website/public/data/contracts.json
Mehrere anchors-Arrays werden mehrzeilig dargestellt; bei architecture-documentation wird der Template-Text verkürzt, und tdd-hamburg-style erhält die mehrzeilige Form für weitere Felder.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Possibly related issues

  • #529 — Die Änderung verschiebt prozedurale arc42-Dokumentationsregeln in eine Skill und verkürzt den Vertragstext passend zur beschriebenen Aufteilung.
  • #521 — Der verkürzte architecture-documentation-Eintrag in contracts.json passt zur dort beschriebenen Verschiebung hin zu installierbaren Semantic Contracts.

Possibly related PRs

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed Der Titel nennt klar die Aufspaltung von architecture-documentation in Contract und arc42-authoring-Skill.
Linked Issues check ✅ Passed Die Änderungen setzen #529 um: Der Vertrag wurde auf Vokabular reduziert und die arc42-Prozeduren wurden in Skill-Referenzen ausgelagert.
Out of Scope Changes check ✅ Passed Es sind keine erkennbar fachfremden Änderungen enthalten; die Anpassungen beschränken sich auf die geforderte Contract-/Skill-Aufteilung.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Warning

There were issues while running some tools. Please review the errors and either fix the tool's configuration or disable the tool if it's a critical failure.

🔧 markdownlint-cli2 (0.22.1)
skill/arc42-authoring/SKILL.md

markdownlint-cli2 v0.22.1 (markdownlint v0.40.0)
Error: Unable to use configuration file '/coderabbit-0.markdownlint-cli2.jsonc'; ENOENT: no such file or directory, open '/coderabbit-0.markdownlint-cli2.jsonc'
at throwForConfigurationFile (file:///usr/local/lib/node_modules/markdownlint-cli2/markdownlint-cli2.mjs:48:9)
at readOptionsOrConfig (file:///usr/local/lib/node_modules/markdownlint-cli2/markdownlint-cli2.mjs:169:5)
at async main (file:///usr/local/lib/node_modules/markdownlint-cli2/markdownlint-cli2.mjs:927:21)
at async file:///usr/local/lib/node_modules/markdownlint-cli2/markdownlint-cli2-bin.mjs:14:22 {
[cause]: Error: ENOENT: no such file or directory, open '/coderabbit-0.markdownlint-cli2.jsonc'
at async open (node:internal/fs/promises:640:25)
at async Object.readFile (node:internal/fs/promises:1287:14)
at async readOptionsOrConfig (file:///usr/local/lib/node_modules/markdownlint-cli2/markdownlint-cli2.mjs:141:17)
at async main (file:///usr/local/lib/node_modules/markdownlint-cli2/markdownlint-cli2.mjs:927:21)
at async file:///usr/local/lib/node_modules/markdownlint-cli2/markdownlint-cli2-bin.mjs:14:22 {
errno: -2,
code: 'ENOENT',
syscall: 'open',
path: '/coderabbit-0.markdownlint-cli2.jsonc'
}
}

skill/arc42-authoring/references/adr-risk-wiring.md

markdownlint-cli2 v0.22.1 (markdownlint v0.40.0)
Error: Unable to use configuration file '/coderabbit-0.markdownlint-cli2.jsonc'; ENOENT: no such file or directory, open '/coderabbit-0.markdownlint-cli2.jsonc'
at throwForConfigurationFile (file:///usr/local/lib/node_modules/markdownlint-cli2/markdownlint-cli2.mjs:48:9)
at readOptionsOrConfig (file:///usr/local/lib/node_modules/markdownlint-cli2/markdownlint-cli2.mjs:169:5)
at async main (file:///usr/local/lib/node_modules/markdownlint-cli2/markdownlint-cli2.mjs:927:21)
at async file:///usr/local/lib/node_modules/markdownlint-cli2/markdownlint-cli2-bin.mjs:14:22 {
[cause]: Error: ENOENT: no such file or directory, open '/coderabbit-0.markdownlint-cli2.jsonc'
at async open (node:internal/fs/promises:640:25)
at async Object.readFile (node:internal/fs/promises:1287:14)
at async readOptionsOrConfig (file:///usr/local/lib/node_modules/markdownlint-cli2/markdownlint-cli2.mjs:141:17)
at async main (file:///usr/local/lib/node_modules/markdownlint-cli2/markdownlint-cli2.mjs:927:21)
at async file:///usr/local/lib/node_modules/markdownlint-cli2/markdownlint-cli2-bin.mjs:14:22 {
errno: -2,
code: 'ENOENT',
syscall: 'open',
path: '/coderabbit-0.markdownlint-cli2.jsonc'
}
}

skill/arc42-authoring/references/chapter-10-quality-scenarios.md

markdownlint-cli2 v0.22.1 (markdownlint v0.40.0)
Error: Unable to use configuration file '/coderabbit-0.markdownlint-cli2.jsonc'; ENOENT: no such file or directory, open '/coderabbit-0.markdownlint-cli2.jsonc'
at throwForConfigurationFile (file:///usr/local/lib/node_modules/markdownlint-cli2/markdownlint-cli2.mjs:48:9)
at readOptionsOrConfig (file:///usr/local/lib/node_modules/markdownlint-cli2/markdownlint-cli2.mjs:169:5)
at async main (file:///usr/local/lib/node_modules/markdownlint-cli2/markdownlint-cli2.mjs:927:21)
at async file:///usr/local/lib/node_modules/markdownlint-cli2/markdownlint-cli2-bin.mjs:14:22 {
[cause]: Error: ENOENT: no such file or directory, open '/coderabbit-0.markdownlint-cli2.jsonc'
at async open (node:internal/fs/promises:640:25)
at async Object.readFile (node:internal/fs/promises:1287:14)
at async readOptionsOrConfig (file:///usr/local/lib/node_modules/markdownlint-cli2/markdownlint-cli2.mjs:141:17)
at async main (file:///usr/local/lib/node_modules/markdownlint-cli2/markdownlint-cli2.mjs:927:21)
at async file:///usr/local/lib/node_modules/markdownlint-cli2/markdownlint-cli2-bin.mjs:14:22 {
errno: -2,
code: 'ENOENT',
syscall: 'open',
path: '/coderabbit-0.markdownlint-cli2.jsonc'
}
}

  • 4 others

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@JensGrote JensGrote force-pushed the feat/split-architecture-documentation-contract branch from d30c1e2 to ec0d14b Compare June 9, 2026 08:33
@JensGrote JensGrote marked this pull request as ready for review June 9, 2026 08:33
@JensGrote JensGrote changed the title feat(skill): split architecture-documentation contract into vocabulary + arc42-authoring skill refactor(contract): split architecture-documentation into vocabulary contract + arc42-authoring skill Jun 9, 2026

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 2

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@skill/arc42-authoring/references/adr-risk-wiring.md`:
- Line 27: The fenced code block at the top of adr-risk-wiring.md currently
starts with triple backticks only (` ``` `); update that opening fence to
include the language identifier by changing it to "```markdown" so the block
becomes "```markdown" followed by the "# ADR-NNN: <Title>" line to enable syntax
highlighting.

In `@website/public/data/contracts.json`:
- Around line 41-47: Update the two references/catalog.md files to include the
missing anchor entries so they match the anchor IDs listed in contracts.json and
the files in docs/anchors; specifically add entries for "arc42" (if absent),
"adr-according-to-nygard", "bdd-given-when-then", "pugh-matrix", and
"quality-attribute-scenario" (and any other anchor IDs present in
website/public/data/contracts.json but missing from catalog.md), ensuring each
entry uses the same anchor ID string and the same display/title format used for
existing anchors in those catalog.md files so the catalogs stay synchronized
with docs/anchors and contracts.json.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yml

Review profile: CHILL

Plan: Pro

Run ID: 30278b24-ca55-4d67-8bfb-6ebbc02f891b

📥 Commits

Reviewing files that changed from the base of the PR and between 957a67a and ec0d14b.

📒 Files selected for processing (8)
  • skill/arc42-authoring/SKILL.md
  • skill/arc42-authoring/references/adr-risk-wiring.md
  • skill/arc42-authoring/references/chapter-10-quality-scenarios.md
  • skill/arc42-authoring/references/chapter-11-structure.md
  • skill/arc42-authoring/references/chapter-8-baseline.md
  • skill/arc42-authoring/references/scaffolding.md
  • skill/arc42-authoring/references/traceability-rules.md
  • website/public/data/contracts.json


When creating a new ADR, use this template:

```

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Sprachkennung für Code-Block ergänzen.

Der Fenced Code Block sollte eine Sprachkennung haben, um Syntax-Highlighting zu ermöglichen. Fügen Sie markdown nach den öffnenden Backticks hinzu.

📝 Vorgeschlagene Korrektur
-```
+```markdown
 # ADR-NNN: <Title>
🧰 Tools
🪛 markdownlint-cli2 (0.22.1)

[warning] 27-27: Fenced code blocks should have a language specified

(MD040, fenced-code-language)

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@skill/arc42-authoring/references/adr-risk-wiring.md` at line 27, The fenced
code block at the top of adr-risk-wiring.md currently starts with triple
backticks only (` ``` `); update that opening fence to include the language
identifier by changing it to "```markdown" so the block becomes "```markdown"
followed by the "# ADR-NNN: <Title>" line to enable syntax highlighting.

Source: Linters/SAST tools

Comment thread website/public/data/contracts.json
@JensGrote JensGrote force-pushed the feat/split-architecture-documentation-contract branch from ec0d14b to 3ab1a88 Compare June 9, 2026 09:08

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
skill/arc42-authoring/references/chapter-10-quality-scenarios.md (1)

1-29: ⚠️ Potential issue | 🔴 Critical

Pflicht-Check zur Anchor-Synchronisation: erforderliche Dateien/Verzeichnisse fehlen
Der Check kann nicht durchgeführt werden, weil im Repo kein docs/anchors-Verzeichnis gefunden wurde und skill/arc42-authoring/references/catalog.md nicht existiert (stattdessen nur skill/semantic-anchor-translator/references/catalog.md vorhanden). Entsprechend muss die fehlende docs/anchors-Quelle und/oder der fehlende skill/arc42-authoring-Catalog ergänzt bzw. korrigiert werden.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@skill/arc42-authoring/references/chapter-10-quality-scenarios.md` around
lines 1 - 29, Der Pflicht-Check schlägt fehl, weil das Verzeichnis docs/anchors
fehlt und die erwartete Datei skill/arc42-authoring/references/catalog.md nicht
vorhanden ist (stattdessen existiert nur
skill/semantic-anchor-translator/references/catalog.md); behebe dies, indem du
entweder das fehlende docs/anchors-Verzeichnis und die darin benötigten
Anchor-Quellen anlegst oder den Pfad in der Check-Logik/CI so korrigierst, dass
auf die vorhandene skill/semantic-anchor-translator/references/catalog.md
verwiesen wird; stelle sicher, dass die Anchors im richtigen Format und Ort
liegen und passe ggf. alle Referenzen/Configs an, die auf
skill/arc42-authoring/references/catalog.md verweisen.

Source: Coding guidelines

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Outside diff comments:
In `@skill/arc42-authoring/references/chapter-10-quality-scenarios.md`:
- Around line 1-29: Der Pflicht-Check schlägt fehl, weil das Verzeichnis
docs/anchors fehlt und die erwartete Datei
skill/arc42-authoring/references/catalog.md nicht vorhanden ist (stattdessen
existiert nur skill/semantic-anchor-translator/references/catalog.md); behebe
dies, indem du entweder das fehlende docs/anchors-Verzeichnis und die darin
benötigten Anchor-Quellen anlegst oder den Pfad in der Check-Logik/CI so
korrigierst, dass auf die vorhandene
skill/semantic-anchor-translator/references/catalog.md verwiesen wird; stelle
sicher, dass die Anchors im richtigen Format und Ort liegen und passe ggf. alle
Referenzen/Configs an, die auf skill/arc42-authoring/references/catalog.md
verweisen.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yml

Review profile: CHILL

Plan: Pro

Run ID: 7ec70d77-6e35-4a77-b0fe-27a550f46863

📥 Commits

Reviewing files that changed from the base of the PR and between ec0d14b and 3ab1a88.

📒 Files selected for processing (8)
  • skill/arc42-authoring/SKILL.md
  • skill/arc42-authoring/references/adr-risk-wiring.md
  • skill/arc42-authoring/references/chapter-10-quality-scenarios.md
  • skill/arc42-authoring/references/chapter-11-structure.md
  • skill/arc42-authoring/references/chapter-8-baseline.md
  • skill/arc42-authoring/references/scaffolding.md
  • skill/arc42-authoring/references/traceability-rules.md
  • website/public/data/contracts.json
✅ Files skipped from review due to trivial changes (3)
  • skill/arc42-authoring/references/traceability-rules.md
  • skill/arc42-authoring/references/scaffolding.md
  • skill/arc42-authoring/references/chapter-8-baseline.md
🚧 Files skipped from review as they are similar to previous changes (2)
  • skill/arc42-authoring/references/chapter-11-structure.md
  • website/public/data/contracts.json

…+ arc42-authoring skill

Extract procedural content from the over-grown architecture-documentation
contract (2922 chars) into a new arc42-authoring skill. Absorb
crosscutting-concepts contract into the skill as chapter-8-baseline.md.
Shrink architecture-documentation contract to vocabulary only (~385 chars).

Closes LLM-Coding#529
@JensGrote JensGrote force-pushed the feat/split-architecture-documentation-contract branch from 3ab1a88 to d0aeea1 Compare June 25, 2026 09:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Split the over-grown Architecture Documentation contract: vocabulary stays, procedure moves to a skill

1 participant