@renoxar/koolie 1.25.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (693) hide show
  1. package/.gitattributes +16 -0
  2. package/.gitignore +51 -0
  3. package/.koolie/QUELLREPOSITORIUM.md +18 -0
  4. package/.koolie/core/CHANGELOG.md +11832 -0
  5. package/.koolie/core/LICENSE +674 -0
  6. package/.koolie/core/LICENSE-HINWEIS.md +98 -0
  7. package/.koolie/core/OWNERS.md +36 -0
  8. package/.koolie/core/VERSION +1 -0
  9. package/.koolie/core/banner.py +397 -0
  10. package/.koolie/core/build/README.md +34 -0
  11. package/.koolie/core/build/assemble.py +354 -0
  12. package/.koolie/core/build/build-docx.py +194 -0
  13. package/.koolie/core/build/doc/00-kopf.md +18 -0
  14. package/.koolie/core/build/doc/01-executive-summary.md +24 -0
  15. package/.koolie/core/build/doc/02-zielbild.md +13 -0
  16. package/.koolie/core/build/doc/03-ziele-nichtziele.md +28 -0
  17. package/.koolie/core/build/doc/04-geltungsbereich.md +25 -0
  18. package/.koolie/core/build/doc/05-glossar.md +47 -0
  19. package/.koolie/core/build/doc/06-leitprinzipien.md +5 -0
  20. package/.koolie/core/build/doc/07-architektur.md +60 -0
  21. package/.koolie/core/build/doc/07a-abbildungsschicht.md +66 -0
  22. package/.koolie/core/build/doc/08-trennung.md +24 -0
  23. package/.koolie/core/build/doc/09-betriebsmodi.md +18 -0
  24. package/.koolie/core/build/doc/10-arbeitsablauf.md +5 -0
  25. package/.koolie/core/build/doc/11-datenschutz.md +5 -0
  26. package/.koolie/core/build/doc/12-sicherheit.md +5 -0
  27. package/.koolie/core/build/doc/13-risiko.md +5 -0
  28. package/.koolie/core/build/doc/14-rollen.md +9 -0
  29. package/.koolie/core/build/doc/15-referenzstruktur.md +124 -0
  30. package/.koolie/core/build/doc/16-agentenanweisung.md +8 -0
  31. package/.koolie/core/build/doc/17-overlay.md +29 -0
  32. package/.koolie/core/build/doc/18-skill-standard.md +5 -0
  33. package/.koolie/core/build/doc/19-skill-template.md +5 -0
  34. package/.koolie/core/build/doc/20-referenz-skills.md +70 -0
  35. package/.koolie/core/build/doc/21-prompts.md +53 -0
  36. package/.koolie/core/build/doc/22-checklisten.md +49 -0
  37. package/.koolie/core/build/doc/23-entscheidungsbaeume.md +29 -0
  38. package/.koolie/core/build/doc/24-onboarding.md +33 -0
  39. package/.koolie/core/build/doc/25-governance.md +35 -0
  40. package/.koolie/core/build/doc/26-qs-test.md +9 -0
  41. package/.koolie/core/build/doc/27-pilot.md +13 -0
  42. package/.koolie/core/build/doc/28-uebernahme.md +5 -0
  43. package/.koolie/core/build/doc/29-grenzen.md +87 -0
  44. package/.koolie/core/build/doc/30-roadmap.md +5 -0
  45. package/.koolie/core/build/doc/31-anhaenge.md +151 -0
  46. package/.koolie/core/build/doc/32-abschluss.md +92 -0
  47. package/.koolie/core/build/ref-a4.docx +0 -0
  48. package/.koolie/core/checklists/01-preflight.md +54 -0
  49. package/.koolie/core/checklists/02-privacy-context.md +51 -0
  50. package/.koolie/core/checklists/03-before-code-change.md +51 -0
  51. package/.koolie/core/checklists/04-review-ai-code.md +58 -0
  52. package/.koolie/core/checklists/05-testing.md +48 -0
  53. package/.koolie/core/checklists/06-security.md +50 -0
  54. package/.koolie/core/checklists/07-new-dependency.md +57 -0
  55. package/.koolie/core/checklists/08-merge-request.md +47 -0
  56. package/.koolie/core/checklists/09-onboarding.md +52 -0
  57. package/.koolie/core/checklists/10-project-adoption.md +74 -0
  58. package/.koolie/core/checklists/11-framework-release.md +71 -0
  59. package/.koolie/core/checklists/README.md +28 -0
  60. package/.koolie/core/clientmap.py +1358 -0
  61. package/.koolie/core/clients/README.md +113 -0
  62. package/.koolie/core/clients/_template/CLIENT_PACK.md +197 -0
  63. package/.koolie/core/clients/claude-code/CLIENT_PACK.md +383 -0
  64. package/.koolie/core/clients/claude-code/manifest.json +232 -0
  65. package/.koolie/core/clients/claude-code/root-template/.claude/README.md +127 -0
  66. package/.koolie/core/clients/cursor/CLIENT_PACK.md +229 -0
  67. package/.koolie/core/clients/cursor/manifest.json +330 -0
  68. package/.koolie/core/clients/cursor/root-template/.cursor/README.md +36 -0
  69. package/.koolie/core/clients/devin-desktop/CLIENT_PACK.md +251 -0
  70. package/.koolie/core/clients/devin-desktop/manifest.json +163 -0
  71. package/.koolie/core/clients/devin-desktop/root-template/.devin/README.md +79 -0
  72. package/.koolie/core/clients/kiro/CLIENT_PACK.md +223 -0
  73. package/.koolie/core/clients/kiro/manifest.json +300 -0
  74. package/.koolie/core/clients/kiro/root-template/.kiro/README.md +37 -0
  75. package/.koolie/core/clients/openai-codex/CLIENT_PACK.md +257 -0
  76. package/.koolie/core/clients/openai-codex/manifest.json +208 -0
  77. package/.koolie/core/clients/openai-codex/root-template/.codex/README.md +35 -0
  78. package/.koolie/core/decision-trees/01-context-allowed.md +46 -0
  79. package/.koolie/core/decision-trees/02-may-ai-do-task.md +47 -0
  80. package/.koolie/core/decision-trees/03-analyze-or-modify.md +50 -0
  81. package/.koolie/core/decision-trees/04-required-review.md +49 -0
  82. package/.koolie/core/decision-trees/05-stop-or-escalate.md +47 -0
  83. package/.koolie/core/decision-trees/06-rule-placement.md +58 -0
  84. package/.koolie/core/decision-trees/README.md +14 -0
  85. package/.koolie/core/docs/ADOPTION_GUIDE.md +582 -0
  86. package/.koolie/core/docs/DOCUMENTATION_STANDARD.md +91 -0
  87. package/.koolie/core/docs/PLACEHOLDER_REGISTRY.md +79 -0
  88. package/.koolie/core/docs/ROADMAP.md +848 -0
  89. package/.koolie/core/docs/RUNTIME_GLOSSARY.md +113 -0
  90. package/.koolie/core/examples/README.md +11 -0
  91. package/.koolie/core/examples/example-ergebnisbericht.md +31 -0
  92. package/.koolie/core/examples/example-mr-description.md +31 -0
  93. package/.koolie/core/examples/example-overlay-runtime.md +48 -0
  94. package/.koolie/core/framework/core/00-principles.md +93 -0
  95. package/.koolie/core/framework/core/01-governance.md +58 -0
  96. package/.koolie/core/framework/core/02-privacy.md +141 -0
  97. package/.koolie/core/framework/core/03-security.md +86 -0
  98. package/.koolie/core/framework/core/04-quality.md +48 -0
  99. package/.koolie/core/framework/core/05-working-model.md +199 -0
  100. package/.koolie/core/framework/core/06-prompting-rules.md +51 -0
  101. package/.koolie/core/framework/core/07-review-rules.md +52 -0
  102. package/.koolie/core/framework/core/08-skill-conventions.md +115 -0
  103. package/.koolie/core/framework/core/09-risk-model.md +87 -0
  104. package/.koolie/core/framework/core/10-error-escalation.md +53 -0
  105. package/.koolie/core/framework/org-policies/MAPPING_CLASSIFICATION.md +16 -0
  106. package/.koolie/core/framework/org-policies/README.md +29 -0
  107. package/.koolie/core/framework/overlay-patterns/general/documents/branching-strategy/muster-general.md +43 -0
  108. package/.koolie/core/framework/overlay-patterns/general/documents/coding-guidelines/muster-general.md +82 -0
  109. package/.koolie/core/framework/overlay-patterns/general/documents/definition-of-done/muster-general.md +52 -0
  110. package/.koolie/core/framework/overlay-patterns/general/documents/definition-of-ready/muster-general.md +54 -0
  111. package/.koolie/core/framework/overlay-patterns/general/documents/quality/muster-general.md +59 -0
  112. package/.koolie/core/framework/overlay-patterns/general/documents/security/muster-general.md +52 -0
  113. package/.koolie/core/framework/overlay-patterns/general.md +150 -0
  114. package/.koolie/core/framework/role-packs/README.md +63 -0
  115. package/.koolie/core/framework/role-packs/_template/ROLE_PACK.md +58 -0
  116. package/.koolie/core/framework/role-packs/requirements-engineering/ROLE_PACK.md +158 -0
  117. package/.koolie/core/framework/role-packs/requirements-engineering/runtime/30-role-requirements-engineering.md +88 -0
  118. package/.koolie/core/framework/role-packs/requirements-engineering/skills/role-re-ticket/CHANGELOG.md +10 -0
  119. package/.koolie/core/framework/role-packs/requirements-engineering/skills/role-re-ticket/EXAMPLES.md +148 -0
  120. package/.koolie/core/framework/role-packs/requirements-engineering/skills/role-re-ticket/SKILL.md +195 -0
  121. package/.koolie/core/framework/role-packs/requirements-engineering/skills/role-re-ticket/TESTS.md +22 -0
  122. package/.koolie/core/framework/role-packs/software-development/ROLE_PACK.md +95 -0
  123. package/.koolie/core/framework/role-packs/software-development/runtime/30-role-software-development.md +26 -0
  124. package/.koolie/core/framework/runtime/agents/fw-reviewer.md +34 -0
  125. package/.koolie/core/framework/runtime/client-settings.json +3 -0
  126. package/.koolie/core/framework/runtime/hooks.json +20 -0
  127. package/.koolie/core/framework/runtime/mcp-config.example.json +4 -0
  128. package/.koolie/core/framework/runtime/permissions.json +106 -0
  129. package/.koolie/core/framework/runtime/root-instruction-local.example.md +19 -0
  130. package/.koolie/core/framework/runtime/root-instruction.md +116 -0
  131. package/.koolie/core/framework/runtime/rules/00-framework-core.md +49 -0
  132. package/.koolie/core/framework/runtime/rules/10-privacy-security.md +49 -0
  133. package/.koolie/core/framework/runtime/rules/15-development-rules.md +41 -0
  134. package/.koolie/core/framework/runtime/rules/16-plan-spezifikation.md +32 -0
  135. package/.koolie/core/framework/runtime/rules/20-project-overlay.md +60 -0
  136. package/.koolie/core/framework/skills/fw-bugfix-prepare/CHANGELOG.md +14 -0
  137. package/.koolie/core/framework/skills/fw-bugfix-prepare/EXAMPLES.md +57 -0
  138. package/.koolie/core/framework/skills/fw-bugfix-prepare/SKILL.md +177 -0
  139. package/.koolie/core/framework/skills/fw-bugfix-prepare/TESTS.md +15 -0
  140. package/.koolie/core/framework/skills/fw-change-analyze/CHANGELOG.md +12 -0
  141. package/.koolie/core/framework/skills/fw-change-analyze/EXAMPLES.md +66 -0
  142. package/.koolie/core/framework/skills/fw-change-analyze/SKILL.md +167 -0
  143. package/.koolie/core/framework/skills/fw-change-analyze/TESTS.md +16 -0
  144. package/.koolie/core/framework/skills/fw-change-small/CHANGELOG.md +13 -0
  145. package/.koolie/core/framework/skills/fw-change-small/EXAMPLES.md +68 -0
  146. package/.koolie/core/framework/skills/fw-change-small/SKILL.md +175 -0
  147. package/.koolie/core/framework/skills/fw-change-small/TESTS.md +13 -0
  148. package/.koolie/core/framework/skills/fw-code-explain/CHANGELOG.md +11 -0
  149. package/.koolie/core/framework/skills/fw-code-explain/EXAMPLES.md +61 -0
  150. package/.koolie/core/framework/skills/fw-code-explain/SKILL.md +163 -0
  151. package/.koolie/core/framework/skills/fw-code-explain/TESTS.md +11 -0
  152. package/.koolie/core/framework/skills/fw-docs-update/CHANGELOG.md +10 -0
  153. package/.koolie/core/framework/skills/fw-docs-update/EXAMPLES.md +59 -0
  154. package/.koolie/core/framework/skills/fw-docs-update/SKILL.md +160 -0
  155. package/.koolie/core/framework/skills/fw-docs-update/TESTS.md +12 -0
  156. package/.koolie/core/framework/skills/fw-error-analyze/CHANGELOG.md +10 -0
  157. package/.koolie/core/framework/skills/fw-error-analyze/EXAMPLES.md +67 -0
  158. package/.koolie/core/framework/skills/fw-error-analyze/SKILL.md +160 -0
  159. package/.koolie/core/framework/skills/fw-error-analyze/TESTS.md +12 -0
  160. package/.koolie/core/framework/skills/fw-mr-description/CHANGELOG.md +12 -0
  161. package/.koolie/core/framework/skills/fw-mr-description/EXAMPLES.md +69 -0
  162. package/.koolie/core/framework/skills/fw-mr-description/SKILL.md +170 -0
  163. package/.koolie/core/framework/skills/fw-mr-description/TESTS.md +12 -0
  164. package/.koolie/core/framework/skills/fw-overlay-pflege/CHANGELOG.md +7 -0
  165. package/.koolie/core/framework/skills/fw-overlay-pflege/EXAMPLES.md +48 -0
  166. package/.koolie/core/framework/skills/fw-overlay-pflege/SKILL.md +147 -0
  167. package/.koolie/core/framework/skills/fw-overlay-pflege/TESTS.md +13 -0
  168. package/.koolie/core/framework/skills/fw-plan/CHANGELOG.md +14 -0
  169. package/.koolie/core/framework/skills/fw-plan/EXAMPLES.md +69 -0
  170. package/.koolie/core/framework/skills/fw-plan/SKILL.md +168 -0
  171. package/.koolie/core/framework/skills/fw-plan/TESTS.md +14 -0
  172. package/.koolie/core/framework/skills/fw-refactor/CHANGELOG.md +10 -0
  173. package/.koolie/core/framework/skills/fw-refactor/EXAMPLES.md +70 -0
  174. package/.koolie/core/framework/skills/fw-refactor/SKILL.md +173 -0
  175. package/.koolie/core/framework/skills/fw-refactor/TESTS.md +14 -0
  176. package/.koolie/core/framework/skills/fw-repo-analyze/CHANGELOG.md +10 -0
  177. package/.koolie/core/framework/skills/fw-repo-analyze/EXAMPLES.md +52 -0
  178. package/.koolie/core/framework/skills/fw-repo-analyze/SKILL.md +149 -0
  179. package/.koolie/core/framework/skills/fw-repo-analyze/TESTS.md +11 -0
  180. package/.koolie/core/framework/skills/fw-review-support/CHANGELOG.md +12 -0
  181. package/.koolie/core/framework/skills/fw-review-support/EXAMPLES.md +69 -0
  182. package/.koolie/core/framework/skills/fw-review-support/SKILL.md +179 -0
  183. package/.koolie/core/framework/skills/fw-review-support/TESTS.md +13 -0
  184. package/.koolie/core/framework/skills/fw-tests/CHANGELOG.md +9 -0
  185. package/.koolie/core/framework/skills/fw-tests/EXAMPLES.md +65 -0
  186. package/.koolie/core/framework/skills/fw-tests/SKILL.md +169 -0
  187. package/.koolie/core/framework/skills/fw-tests/TESTS.md +12 -0
  188. package/.koolie/core/framework/tech-packs/README.md +15 -0
  189. package/.koolie/core/framework/tech-packs/_template/TECH_PACK.md +61 -0
  190. package/.koolie/core/governance/ADOPTION_REGISTRY.md +89 -0
  191. package/.koolie/core/governance/CHANGE_REQUEST_TEMPLATE.md +60 -0
  192. package/.koolie/core/governance/DECISION_LOG.md +779 -0
  193. package/.koolie/core/governance/EXCEPTION_PROCESS.md +31 -0
  194. package/.koolie/core/governance/FEEDBACK_PROCESS.md +34 -0
  195. package/.koolie/core/governance/FRAMEWORK_DEV_PROFILE.md +135 -0
  196. package/.koolie/core/governance/INCIDENT_HANDLING.md +47 -0
  197. package/.koolie/core/governance/PRIORITY_HIERARCHY.md +61 -0
  198. package/.koolie/core/governance/RACI.md +37 -0
  199. package/.koolie/core/governance/RELEASE_PROCESS.md +183 -0
  200. package/.koolie/core/governance/change-requests/CR-2026-001-definition-release-1-0-0.md +67 -0
  201. package/.koolie/core/governance/change-requests/CR-2026-002-client-packs.md +63 -0
  202. package/.koolie/core/governance/change-requests/CR-2026-003-install-client-schalter.md +70 -0
  203. package/.koolie/core/governance/change-requests/CR-2026-004-client-pack-claude-code.md +82 -0
  204. package/.koolie/core/governance/change-requests/CR-2026-005-kern-neutralisierung.md +75 -0
  205. package/.koolie/core/governance/change-requests/CR-2026-006-gemeinsame-skill-quelle.md +77 -0
  206. package/.koolie/core/governance/change-requests/CR-2026-007-geteilte-kernbestandteile.md +80 -0
  207. package/.koolie/core/governance/change-requests/CR-2026-008-berechtigungen-und-hooks.md +85 -0
  208. package/.koolie/core/governance/change-requests/CR-2026-009-umbenennung-leitwerk.md +77 -0
  209. package/.koolie/core/governance/change-requests/CR-2026-010-restduplikation.md +73 -0
  210. package/.koolie/core/governance/change-requests/CR-2026-011-hauptdokument.md +72 -0
  211. package/.koolie/core/governance/change-requests/CR-2026-012-schreibschutz-kernverzeichnis.md +106 -0
  212. package/.koolie/core/governance/change-requests/CR-2026-013-validator-blindstellen.md +128 -0
  213. package/.koolie/core/governance/change-requests/CR-2026-014-kurzform-langform.md +125 -0
  214. package/.koolie/core/governance/change-requests/CR-2026-015-versionskette.md +150 -0
  215. package/.koolie/core/governance/change-requests/CR-2026-016-ap2-claude-code.md +127 -0
  216. package/.koolie/core/governance/change-requests/CR-2026-017-ladebedingungen-claude-code.md +173 -0
  217. package/.koolie/core/governance/change-requests/CR-2026-018-quellenliste-claude-code.md +121 -0
  218. package/.koolie/core/governance/change-requests/CR-2026-019-strukturentscheidungen-fortschreiben.md +143 -0
  219. package/.koolie/core/governance/change-requests/CR-2026-020-akteursbezeichnung.md +118 -0
  220. package/.koolie/core/governance/change-requests/CR-2026-021-hook-interpreter.md +113 -0
  221. package/.koolie/core/governance/change-requests/CR-2026-022-artefaktversionen.md +73 -0
  222. package/.koolie/core/governance/change-requests/CR-2026-023-shell-lesesperre.md +128 -0
  223. package/.koolie/core/governance/change-requests/CR-2026-024-clientbindungen.md +78 -0
  224. package/.koolie/core/governance/change-requests/CR-2026-025-betriebsmodi.md +110 -0
  225. package/.koolie/core/governance/change-requests/CR-2026-026-fail-closed.md +134 -0
  226. package/.koolie/core/governance/change-requests/CR-2026-027-zeichenlimit-einstufung.md +105 -0
  227. package/.koolie/core/governance/change-requests/CR-2026-028-berechtigungsmodi.md +130 -0
  228. package/.koolie/core/governance/change-requests/CR-2026-029-hook-ablageort.md +115 -0
  229. package/.koolie/core/governance/change-requests/CR-2026-030-lesende-werkzeuge.md +143 -0
  230. package/.koolie/core/governance/change-requests/CR-2026-031-regelquellen-ausserhalb.md +182 -0
  231. package/.koolie/core/governance/change-requests/CR-2026-032-fremde-skill-ablage.md +151 -0
  232. package/.koolie/core/governance/change-requests/CR-2026-033-modusabhaengige-durchsetzung.md +131 -0
  233. package/.koolie/core/governance/change-requests/CR-2026-034-nachweisbedingungen.md +116 -0
  234. package/.koolie/core/governance/change-requests/CR-2026-035-readme-in-der-regelablage.md +115 -0
  235. package/.koolie/core/governance/change-requests/CR-2026-036-ortsangaben-hook-konfiguration.md +108 -0
  236. package/.koolie/core/governance/change-requests/CR-2026-037-meldender-hook-clientgebunden.md +133 -0
  237. package/.koolie/core/governance/change-requests/CR-2026-038-importsteuerung.md +159 -0
  238. package/.koolie/core/governance/change-requests/CR-2026-039-normative-saetze-in-kommentaren.md +124 -0
  239. package/.koolie/core/governance/change-requests/CR-2026-040-erh01-ist-clientgebunden.md +115 -0
  240. package/.koolie/core/governance/change-requests/CR-2026-041-s5-nicht-abbildbar.md +128 -0
  241. package/.koolie/core/governance/change-requests/CR-2026-042-abwesenheitsnachweis-suchwerkzeug.md +102 -0
  242. package/.koolie/core/governance/change-requests/CR-2026-043-validator-gibt-trefferwerte-aus.md +135 -0
  243. package/.koolie/core/governance/change-requests/CR-2026-044-aktivierungspruefung-clientgebunden.md +112 -0
  244. package/.koolie/core/governance/change-requests/CR-2026-045-update-verliert-die-clientwahl.md +116 -0
  245. package/.koolie/core/governance/change-requests/CR-2026-046-erstinstallation-ueberschreibt-projektdatei.md +125 -0
  246. package/.koolie/core/governance/change-requests/CR-2026-047-zusagen-je-zugriffskanal.md +133 -0
  247. package/.koolie/core/governance/change-requests/CR-2026-048-modusgrenze-ohne-durchsetzung.md +137 -0
  248. package/.koolie/core/governance/change-requests/CR-2026-049-sondenlauf-kodierungsabhaengig.md +126 -0
  249. package/.koolie/core/governance/change-requests/CR-2026-050-allowed-tools-und-verworfene-permissions.md +110 -0
  250. package/.koolie/core/governance/change-requests/CR-2026-051-quellenkarte-und-ueberholter-stand.md +110 -0
  251. package/.koolie/core/governance/change-requests/CR-2026-052-drei-regelkonflikte.md +166 -0
  252. package/.koolie/core/governance/change-requests/CR-2026-053-lesesperre-und-entwicklungsprofil.md +144 -0
  253. package/.koolie/core/governance/change-requests/CR-2026-054-aktivierung-verlangt-aktivitaet.md +124 -0
  254. package/.koolie/core/governance/change-requests/CR-2026-055-domain-ausnahme-ohne-mechanismus.md +173 -0
  255. package/.koolie/core/governance/change-requests/CR-2026-056-eingabeschema-und-pfadidentitaet.md +245 -0
  256. package/.koolie/core/governance/change-requests/CR-2026-057-disallowed-tools-und-s3.md +148 -0
  257. package/.koolie/core/governance/change-requests/CR-2026-058-unteragent-reichweite.md +203 -0
  258. package/.koolie/core/governance/change-requests/CR-2026-059-unteragent-tiefe-und-widerspruch.md +125 -0
  259. package/.koolie/core/governance/change-requests/CR-2026-060-stumme-brueche.md +170 -0
  260. package/.koolie/core/governance/change-requests/CR-2026-061-berechtigungsdatei-ohne-pruefung.md +169 -0
  261. package/.koolie/core/governance/change-requests/CR-2026-062-werkzeugabbildung-des-frontmatters.md +178 -0
  262. package/.koolie/core/governance/change-requests/CR-2026-063-skillaufruf-ohne-freigabe.md +207 -0
  263. package/.koolie/core/governance/change-requests/CR-2026-064-pruefregister-nicht-nachgezaehlt.md +141 -0
  264. package/.koolie/core/governance/change-requests/CR-2026-065-devin-suchwerkzeuge-erhoben.md +170 -0
  265. package/.koolie/core/governance/change-requests/CR-2026-066-schlitzdeckung-ohne-abgleich.md +153 -0
  266. package/.koolie/core/governance/change-requests/CR-2026-067-hookblock-und-praeparationsregister.md +140 -0
  267. package/.koolie/core/governance/change-requests/CR-2026-068-sondenlauf-nebenlaeufig.md +106 -0
  268. package/.koolie/core/governance/change-requests/CR-2026-069-bytecode-des-kerns.md +108 -0
  269. package/.koolie/core/governance/change-requests/CR-2026-070-d11-zaehler.md +114 -0
  270. package/.koolie/core/governance/change-requests/CR-2026-071-strukturentscheidungen-bestaetigen.md +322 -0
  271. package/.koolie/core/governance/change-requests/CR-2026-072-modulstatus-heben.md +315 -0
  272. package/.koolie/core/governance/change-requests/CR-2026-073-nicht-skill-traeger-heben.md +246 -0
  273. package/.koolie/core/governance/change-requests/CR-2026-074-restliche-nicht-skill-traeger-heben.md +271 -0
  274. package/.koolie/core/governance/change-requests/CR-2026-075-ap2-zielversion-devin-desktop.md +335 -0
  275. package/.koolie/core/governance/change-requests/CR-2026-076-erster-sitzungstest.md +455 -0
  276. package/.koolie/core/governance/change-requests/CR-2026-077-sitzungstest-schranken.md +425 -0
  277. package/.koolie/core/governance/change-requests/CR-2026-078-planung-nach-1-0-0.md +294 -0
  278. package/.koolie/core/governance/change-requests/CR-2026-079-umbenennung-vorziehen.md +233 -0
  279. package/.koolie/core/governance/change-requests/CR-2026-080-clientbindung-des-kerns.md +321 -0
  280. package/.koolie/core/governance/change-requests/CR-2026-081-produktnamen-im-kern.md +297 -0
  281. package/.koolie/core/governance/change-requests/CR-2026-082-sitzungstest-pi-ds-2.md +145 -0
  282. package/.koolie/core/governance/change-requests/CR-2026-083-sitzungstest-ne-sc.md +300 -0
  283. package/.koolie/core/governance/change-requests/CR-2026-084-trockenlauf-gegen-den-committeten-stand.md +117 -0
  284. package/.koolie/core/governance/change-requests/CR-2026-085-vorbedingungen-sitzungstest-5.md +182 -0
  285. package/.koolie/core/governance/change-requests/CR-2026-086-grenzfaelle-gegen-die-fassungen.md +164 -0
  286. package/.koolie/core/governance/change-requests/CR-2026-087-produktbeobachtung-quellenliste.md +206 -0
  287. package/.koolie/core/governance/change-requests/CR-2026-088-vorbedingungen-testblaetter.md +127 -0
  288. package/.koolie/core/governance/change-requests/CR-2026-089-herrichtung-uebungsrepositorium.md +226 -0
  289. package/.koolie/core/governance/change-requests/CR-2026-090-vorbedingungen-sitzungstest-5-zweiter-durchgang.md +255 -0
  290. package/.koolie/core/governance/change-requests/CR-2026-091-sitzungstest-5.md +163 -0
  291. package/.koolie/core/governance/change-requests/CR-2026-092-pruefmittelwort-und-buendelschnitt.md +226 -0
  292. package/.koolie/core/governance/change-requests/CR-2026-093-sechzehnte-praeparation.md +151 -0
  293. package/.koolie/core/governance/change-requests/CR-2026-094-testblaetter-buendel-1.md +113 -0
  294. package/.koolie/core/governance/change-requests/CR-2026-095-pruefapparat-filter.md +65 -0
  295. package/.koolie/core/governance/change-requests/CR-2026-096-vorbedingungen-buendel-2.md +225 -0
  296. package/.koolie/core/governance/change-requests/CR-2026-097-testblaetter-buendel-2.md +162 -0
  297. package/.koolie/core/governance/change-requests/CR-2026-098-anforderungen-auslieferung.md +93 -0
  298. package/.koolie/core/governance/change-requests/CR-2026-099-k74-und-vorbedingungen-buendel-3.md +119 -0
  299. package/.koolie/core/governance/change-requests/CR-2026-100-testblaetter-buendel-3.md +120 -0
  300. package/.koolie/core/governance/change-requests/CR-2026-101-k77-eigener-posten.md +165 -0
  301. package/.koolie/core/governance/change-requests/CR-2026-102-k77-entschieden.md +118 -0
  302. package/.koolie/core/governance/change-requests/CR-2026-103-vorbedingungen-buendel-4.md +76 -0
  303. package/.koolie/core/governance/change-requests/CR-2026-104-herrichtung-buendel-4.md +82 -0
  304. package/.koolie/core/governance/change-requests/CR-2026-105-messapparat-buendel-4.md +227 -0
  305. package/.koolie/core/governance/change-requests/CR-2026-106-uebergabe-einchecken.md +91 -0
  306. package/.koolie/core/governance/change-requests/CR-2026-107-uebergabe-im-release-commit.md +111 -0
  307. package/.koolie/core/governance/change-requests/CR-2026-108-testblaetter-buendel-4.md +118 -0
  308. package/.koolie/core/governance/change-requests/CR-2026-109-berichtsweg-des-aufraeumers.md +108 -0
  309. package/.koolie/core/governance/change-requests/CR-2026-110-vorbedingungen-des-nachlaufs.md +184 -0
  310. package/.koolie/core/governance/change-requests/CR-2026-111-der-apparat-auf-dem-weg-der-wiederaufnahme.md +127 -0
  311. package/.koolie/core/governance/change-requests/CR-2026-112-der-arbeitsplatz-im-kern.md +103 -0
  312. package/.koolie/core/governance/change-requests/CR-2026-113-nachlauf-buendel-4.md +103 -0
  313. package/.koolie/core/governance/change-requests/CR-2026-114-vorbedingungen-buendel-5.md +317 -0
  314. package/.koolie/core/governance/change-requests/CR-2026-115-herrichtung-buendel-5.md +244 -0
  315. package/.koolie/core/governance/change-requests/CR-2026-116-messtag-buendel-5.md +178 -0
  316. package/.koolie/core/governance/change-requests/CR-2026-117-sammelzellen-zentraler-katalog.md +251 -0
  317. package/.koolie/core/governance/change-requests/CR-2026-118-quellenzuordnung-matrixzeilen.md +115 -0
  318. package/.koolie/core/governance/change-requests/CR-2026-119-umbenennung-koolie.md +204 -0
  319. package/.koolie/core/governance/change-requests/CR-2026-120-ap2-rest-devin-desktop.md +96 -0
  320. package/.koolie/core/governance/change-requests/CR-2026-121-verify-marker-abschaffen.md +185 -0
  321. package/.koolie/core/governance/change-requests/CR-2026-122-umbenennung-koolie-lauf.md +131 -0
  322. package/.koolie/core/governance/change-requests/CR-2026-123-vortrag-und-namensabsatz.md +170 -0
  323. package/.koolie/core/governance/change-requests/CR-2026-124-hauptdokument-ap11.md +237 -0
  324. package/.koolie/core/governance/change-requests/CR-2026-125-word-fassung-und-blinder-fleck.md +204 -0
  325. package/.koolie/core/governance/change-requests/CR-2026-126-lizenz-gpl3.md +112 -0
  326. package/.koolie/core/governance/change-requests/CR-2026-127-gegenzeichnung-rollenfrage.md +96 -0
  327. package/.koolie/core/governance/change-requests/CR-2026-128-freigabelauf-1.0.0.md +278 -0
  328. package/.koolie/core/governance/change-requests/CR-2026-129-archiv-zeilenenden.md +90 -0
  329. package/.koolie/core/governance/change-requests/CR-2026-130-reihenfolge-des-hebens.md +204 -0
  330. package/.koolie/core/governance/change-requests/CR-2026-131-chronik-und-vorlage.md +194 -0
  331. package/.koolie/core/governance/change-requests/CR-2026-132-erhebung-openai-codex.md +185 -0
  332. package/.koolie/core/governance/change-requests/CR-2026-133-bau-openai-codex.md +97 -0
  333. package/.koolie/core/governance/change-requests/CR-2026-134-uebergabe-lokal.md +117 -0
  334. package/.koolie/core/governance/change-requests/CR-2026-135-pfadlisten-nul-getrennt.md +139 -0
  335. package/.koolie/core/governance/change-requests/CR-2026-136-overlay-werte-einordnung.md +156 -0
  336. package/.koolie/core/governance/change-requests/CR-2026-137-kopierweg-kern.md +144 -0
  337. package/.koolie/core/governance/change-requests/CR-2026-138-overlay-muster-general.md +118 -0
  338. package/.koolie/core/governance/change-requests/CR-2026-139-overlay-muster-dokumente.md +105 -0
  339. package/.koolie/core/governance/change-requests/CR-2026-140-installer-je-zielsystem.md +120 -0
  340. package/.koolie/core/governance/change-requests/CR-2026-141-lieferumfang.md +123 -0
  341. package/.koolie/core/governance/change-requests/CR-2026-142-dokumentationsstandard.md +90 -0
  342. package/.koolie/core/governance/change-requests/CR-2026-143-klasse-b-core-laufzeit.md +89 -0
  343. package/.koolie/core/governance/change-requests/CR-2026-144-klasse-b-governance.md +90 -0
  344. package/.koolie/core/governance/change-requests/CR-2026-145-klasse-b-skills.md +81 -0
  345. package/.koolie/core/governance/change-requests/CR-2026-146-code-pack-posten.md +84 -0
  346. package/.koolie/core/governance/change-requests/CR-2026-147-regel-register-posten.md +78 -0
  347. package/.koolie/core/governance/change-requests/CR-2026-148-mehrprojekt-tokenlast.md +70 -0
  348. package/.koolie/core/governance/change-requests/CR-2026-149-regelablage-pfadtoken.md +71 -0
  349. package/.koolie/core/governance/change-requests/CR-2026-150-client-pack-kiro.md +76 -0
  350. package/.koolie/core/governance/change-requests/CR-2026-151-skill-anweisungen.md +71 -0
  351. package/.koolie/core/governance/change-requests/CR-2026-152-testblaetter-modellwechsel.md +78 -0
  352. package/.koolie/core/governance/change-requests/CR-2026-153-attributionszeile.md +88 -0
  353. package/.koolie/core/governance/change-requests/CR-2026-154-auffindbarkeit.md +102 -0
  354. package/.koolie/core/governance/change-requests/CR-2026-155-client-pack-cursor.md +80 -0
  355. package/.koolie/core/governance/change-requests/CR-2026-156-mandat-und-reibung.md +100 -0
  356. package/.koolie/core/governance/change-requests/CR-2026-157-mcp-anbindung.md +93 -0
  357. package/.koolie/core/governance/change-requests/CR-2026-158-registerpflege.md +69 -0
  358. package/.koolie/core/governance/change-requests/CR-2026-159-powershell.md +49 -0
  359. package/.koolie/core/governance/change-requests/CR-2026-160-messapparat.md +59 -0
  360. package/.koolie/core/governance/change-requests/CR-2026-161-pruefwerkzeuge.md +52 -0
  361. package/.koolie/core/governance/change-requests/CR-2026-162-schutzschicht.md +65 -0
  362. package/.koolie/core/governance/change-requests/CR-2026-163-pfadsemantik.md +61 -0
  363. package/.koolie/core/governance/change-requests/CR-2026-164-modi-ausnahmen.md +65 -0
  364. package/.koolie/core/governance/change-requests/CR-2026-165-installer-banner.md +406 -0
  365. package/.koolie/core/governance/change-requests/CR-2026-166-nachlauf-aufzeichnungen.md +59 -0
  366. package/.koolie/core/governance/change-requests/CR-2026-167-einsatzarchitektur.md +60 -0
  367. package/.koolie/core/governance/change-requests/CR-2026-168-paketquellen.md +64 -0
  368. package/.koolie/core/governance/change-requests/CR-2026-169-modusbindung-messfragen.md +58 -0
  369. package/.koolie/core/governance/change-requests/CR-2026-170-erste-veroeffentlichung.md +62 -0
  370. package/.koolie/core/governance/change-requests/CR-2026-171-befehl-im-projektverzeichnis.md +57 -0
  371. package/.koolie/core/governance/change-requests/CR-2026-172-auftritt-npm-suche.md +58 -0
  372. package/.koolie/core/install.py +2402 -0
  373. package/.koolie/core/install_dialog.py +227 -0
  374. package/.koolie/core/koexistenz.py +112 -0
  375. package/.koolie/core/mandat.py +605 -0
  376. package/.koolie/core/onboarding/COMPLETION_CRITERIA.md +37 -0
  377. package/.koolie/core/onboarding/GUIDE.md +103 -0
  378. package/.koolie/core/onboarding/KNOWLEDGE_CHECK.md +48 -0
  379. package/.koolie/core/onboarding/MENTOR_CHECKLIST.md +40 -0
  380. package/.koolie/core/onboarding/QUICKSTART.md +50 -0
  381. package/.koolie/core/onboarding/REFERENCE.md +69 -0
  382. package/.koolie/core/onboarding/exercises/EXERCISES.md +78 -0
  383. package/.koolie/core/onboarding/exercises/README.md +120 -0
  384. package/.koolie/core/pilot/METRICS.md +59 -0
  385. package/.koolie/core/pilot/PILOT_CONCEPT.md +42 -0
  386. package/.koolie/core/prompts/01-understand-codebase.md +99 -0
  387. package/.koolie/core/prompts/02-impact-analysis.md +104 -0
  388. package/.koolie/core/prompts/03-implementation-planning.md +102 -0
  389. package/.koolie/core/prompts/04-code-generation.md +100 -0
  390. package/.koolie/core/prompts/05-test-generation.md +103 -0
  391. package/.koolie/core/prompts/06-refactoring.md +102 -0
  392. package/.koolie/core/prompts/07-debugging.md +97 -0
  393. package/.koolie/core/prompts/08-security-review.md +92 -0
  394. package/.koolie/core/prompts/09-performance-analysis.md +89 -0
  395. package/.koolie/core/prompts/10-documentation.md +91 -0
  396. package/.koolie/core/prompts/11-merge-request-review.md +94 -0
  397. package/.koolie/core/prompts/12-developer-training.md +90 -0
  398. package/.koolie/core/prompts/README.md +88 -0
  399. package/.koolie/core/templates/MR_AI_DISCLOSURE.md +37 -0
  400. package/.koolie/core/templates/PLAN_TEMPLATE.md +57 -0
  401. package/.koolie/core/templates/SKILL_TEMPLATE.md +159 -0
  402. package/.koolie/core/templates/project-overlay/OVERLAY.md +315 -0
  403. package/.koolie/core/templates/project-overlay/documents/README.md +43 -0
  404. package/.koolie/core/templates/project-overlay/documents/ai-governance/.gitkeep.md +3 -0
  405. package/.koolie/core/templates/project-overlay/documents/ai-process-model/.gitkeep.md +3 -0
  406. package/.koolie/core/templates/project-overlay/documents/architecture/.gitkeep.md +3 -0
  407. package/.koolie/core/templates/project-overlay/documents/architecture/decisions/README.md +3 -0
  408. package/.koolie/core/templates/project-overlay/documents/branching-strategy/.gitkeep.md +3 -0
  409. package/.koolie/core/templates/project-overlay/documents/coding-guidelines/.gitkeep.md +3 -0
  410. package/.koolie/core/templates/project-overlay/documents/definition-of-done/.gitkeep.md +3 -0
  411. package/.koolie/core/templates/project-overlay/documents/definition-of-ready/.gitkeep.md +3 -0
  412. package/.koolie/core/templates/project-overlay/documents/deployment/.gitkeep.md +3 -0
  413. package/.koolie/core/templates/project-overlay/documents/glossary/.gitkeep.md +3 -0
  414. package/.koolie/core/templates/project-overlay/documents/quality/.gitkeep.md +3 -0
  415. package/.koolie/core/templates/project-overlay/documents/roadmap/.gitkeep.md +3 -0
  416. package/.koolie/core/templates/project-overlay/documents/roles/.gitkeep.md +3 -0
  417. package/.koolie/core/templates/project-overlay/documents/security/.gitkeep.md +3 -0
  418. package/.koolie/core/templates/project-overlay/exceptions/EXCEPTIONS.md +9 -0
  419. package/.koolie/core/templates/project-overlay/forbidden-terms.txt +8 -0
  420. package/.koolie/core/templates/project-overlay/overlay-manifest.yaml +73 -0
  421. package/.koolie/core/templates/rules/21-overlay-TEMPLATE.md.template +28 -0
  422. package/.koolie/core/templates/rules/40-tech-TEMPLATE.md.template +33 -0
  423. package/.koolie/core/tests/EDGE_CASES.md +67 -0
  424. package/.koolie/core/tests/TEST_CATALOG.md +170 -0
  425. package/.koolie/core/tests/erhebungen/README.md +326 -0
  426. package/.koolie/core/tests/erhebungen/ablage.py +357 -0
  427. package/.koolie/core/tests/erhebungen/apparat/__init__.py +22 -0
  428. package/.koolie/core/tests/erhebungen/apparat/baum.py +214 -0
  429. package/.koolie/core/tests/erhebungen/apparat/belege.py +91 -0
  430. package/.koolie/core/tests/erhebungen/apparat/clients.py +321 -0
  431. package/.koolie/core/tests/erhebungen/apparat/freigabe.py +74 -0
  432. package/.koolie/core/tests/erhebungen/apparat/kontingent.py +64 -0
  433. package/.koolie/core/tests/erhebungen/apparat/laeufer.py +155 -0
  434. package/.koolie/core/tests/erhebungen/apparat/reihe.py +202 -0
  435. package/.koolie/core/tests/erhebungen/apparat/selbsttest.py +280 -0
  436. package/.koolie/core/tests/erhebungen/apparat/stand.py +30 -0
  437. package/.koolie/core/tests/erhebungen/apparat/vorpruefung.py +70 -0
  438. package/.koolie/core/tests/erhebungen/auswerten-b4.py +468 -0
  439. package/.koolie/core/tests/erhebungen/auswerten-b5.py +517 -0
  440. package/.koolie/core/tests/erhebungen/auswerten-dd.py +172 -0
  441. package/.koolie/core/tests/erhebungen/baeume-b4.py +334 -0
  442. package/.koolie/core/tests/erhebungen/baeume-b5.py +339 -0
  443. package/.koolie/core/tests/erhebungen/baeume_loeschen.py +138 -0
  444. package/.koolie/core/tests/erhebungen/cc-overlay-fuellen.py +277 -0
  445. package/.koolie/core/tests/erhebungen/dossier-b4.py +178 -0
  446. package/.koolie/core/tests/erhebungen/dossier-b5.py +202 -0
  447. package/.koolie/core/tests/erhebungen/historie-bauen-b4.py +642 -0
  448. package/.koolie/core/tests/erhebungen/k-bauen-b3.py +841 -0
  449. package/.koolie/core/tests/erhebungen/lauf-dd.py +146 -0
  450. package/.koolie/core/tests/erhebungen/lauf.py +114 -0
  451. package/.koolie/core/tests/erhebungen/mcp-waechter.py +278 -0
  452. package/.koolie/core/tests/erhebungen/messbaum-schnitt.py +256 -0
  453. package/.koolie/core/tests/erhebungen/messen.py +72 -0
  454. package/.koolie/core/tests/erhebungen/node-waechter.py +74 -0
  455. package/.koolie/core/tests/erhebungen/packaktivierung.py +403 -0
  456. package/.koolie/core/tests/erhebungen/prompts-schreiben-b4.py +210 -0
  457. package/.koolie/core/tests/erhebungen/prompts-schreiben-b5.py +251 -0
  458. package/.koolie/core/tests/erhebungen/reihe-b4.py +171 -0
  459. package/.koolie/core/tests/erhebungen/reihe-b5.py +172 -0
  460. package/.koolie/core/tests/erhebungen/stand-b4.py +135 -0
  461. package/.koolie/core/tests/erhebungen/stand-b5.py +137 -0
  462. package/.koolie/core/tests/erhebungen/trust-b4.py +56 -0
  463. package/.koolie/core/tests/erhebungen/trust-b5.py +56 -0
  464. package/.koolie/core/tests/erhebungen/turn2-schreiben-b4.py +105 -0
  465. package/.koolie/core/tests/erhebungen/umgebungen-bauen-b4.py +377 -0
  466. package/.koolie/core/tests/erhebungen/umgebungen-bauen-b5.py +363 -0
  467. package/.koolie/core/tests/erhebungen/zaehlen46.py +74 -0
  468. package/.koolie/core/tests/erhebungen/zustand-b4.py +82 -0
  469. package/.koolie/core/tests/erhebungen/zustand-b5.py +82 -0
  470. package/.koolie/core/tests/protocols/2026-09-10-AP2-claude-code-wirkungsnachweise.md +194 -0
  471. package/.koolie/core/tests/protocols/2026-09-10-AP2-claude-code.md +468 -0
  472. package/.koolie/core/tests/protocols/2026-09-10-CR-2026-020-akteursbezeichnung.md +99 -0
  473. package/.koolie/core/tests/protocols/2026-09-10-CR-2026-021-hook-interpreter.md +138 -0
  474. package/.koolie/core/tests/protocols/2026-09-10-CR-2026-022-artefaktversionen.md +87 -0
  475. package/.koolie/core/tests/protocols/2026-09-10-CR-2026-023-shell-lesesperre.md +135 -0
  476. package/.koolie/core/tests/protocols/2026-09-10-CR-2026-024-clientbindungen.md +98 -0
  477. package/.koolie/core/tests/protocols/2026-09-10-FW-DS-03.md +90 -0
  478. package/.koolie/core/tests/protocols/2026-09-10-FW-KO-01.md +105 -0
  479. package/.koolie/core/tests/protocols/2026-09-10-FW-KO-02.md +123 -0
  480. package/.koolie/core/tests/protocols/2026-09-10-FW-KO-04.md +73 -0
  481. package/.koolie/core/tests/protocols/2026-09-10-FW-RE-02.md +99 -0
  482. package/.koolie/core/tests/protocols/2026-09-10-FW-VN-01-wiederholung.md +108 -0
  483. package/.koolie/core/tests/protocols/2026-09-10-FW-VN-01.md +249 -0
  484. package/.koolie/core/tests/protocols/2026-09-10-FW-ZA-05.md +99 -0
  485. package/.koolie/core/tests/protocols/2026-09-11-AP2-devin-desktop.md +257 -0
  486. package/.koolie/core/tests/protocols/2026-09-11-CR-2026-026-fail-closed.md +113 -0
  487. package/.koolie/core/tests/protocols/2026-09-11-erhebungen-K21-K26.md +243 -0
  488. package/.koolie/core/tests/protocols/2026-09-11-wirkungsnachweise-0.26.0.md +101 -0
  489. package/.koolie/core/tests/protocols/2026-09-12-B01-allowed-tools.md +152 -0
  490. package/.koolie/core/tests/protocols/2026-09-12-B04-B05-gegenpruefung.md +204 -0
  491. package/.koolie/core/tests/protocols/2026-09-12-erhebungen-K28-S5-B9-bypass.md +268 -0
  492. package/.koolie/core/tests/protocols/2026-09-12-mehrprojekt-arbeitsbereich.md +154 -0
  493. package/.koolie/core/tests/protocols/2026-09-12-wirkungsnachweise-0.26.1.md +126 -0
  494. package/.koolie/core/tests/protocols/2026-09-12-wirkungsnachweise-0.27.0.md +114 -0
  495. package/.koolie/core/tests/protocols/2026-09-12-wirkungsnachweise-0.28.0.md +129 -0
  496. package/.koolie/core/tests/protocols/2026-09-12-wirkungsnachweise-0.29.0.md +121 -0
  497. package/.koolie/core/tests/protocols/2026-09-12-wirkungsnachweise-0.30.0.md +112 -0
  498. package/.koolie/core/tests/protocols/2026-09-12-wirkungsnachweise-0.31.0.md +107 -0
  499. package/.koolie/core/tests/protocols/2026-09-13-B06-gegenpruefung.md +370 -0
  500. package/.koolie/core/tests/protocols/2026-09-13-B07-B09-gegenpruefung.md +211 -0
  501. package/.koolie/core/tests/protocols/2026-09-13-B08-B11-gegenpruefung.md +179 -0
  502. package/.koolie/core/tests/protocols/2026-09-13-erhebung-disallowed-tools.md +147 -0
  503. package/.koolie/core/tests/protocols/2026-09-13-erhebung-unteragent-tiefe.md +139 -0
  504. package/.koolie/core/tests/protocols/2026-09-13-erhebung-unteragent.md +214 -0
  505. package/.koolie/core/tests/protocols/2026-09-13-gegenpruefung-berechtigungsdatei.md +253 -0
  506. package/.koolie/core/tests/protocols/2026-09-13-gegenpruefung-stumme-brueche.md +202 -0
  507. package/.koolie/core/tests/protocols/2026-09-13-gegenpruefung-werkzeugabbildung.md +219 -0
  508. package/.koolie/core/tests/protocols/2026-09-13-wirkungsnachweise-0.32.0.md +133 -0
  509. package/.koolie/core/tests/protocols/2026-09-13-wirkungsnachweise-0.33.0.md +169 -0
  510. package/.koolie/core/tests/protocols/2026-09-13-wirkungsnachweise-0.34.0.md +187 -0
  511. package/.koolie/core/tests/protocols/2026-09-13-wirkungsnachweise-0.35.0.md +187 -0
  512. package/.koolie/core/tests/protocols/2026-09-13-wirkungsnachweise-0.36.0.md +137 -0
  513. package/.koolie/core/tests/protocols/2026-09-13-wirkungsnachweise-0.37.0.md +112 -0
  514. package/.koolie/core/tests/protocols/2026-09-13-wirkungsnachweise-0.38.0.md +154 -0
  515. package/.koolie/core/tests/protocols/2026-09-13-wirkungsnachweise-0.39.0.md +188 -0
  516. package/.koolie/core/tests/protocols/2026-09-13-wirkungsnachweise-0.40.0.md +214 -0
  517. package/.koolie/core/tests/protocols/2026-09-14-erhebung-devin-werkzeuge.md +267 -0
  518. package/.koolie/core/tests/protocols/2026-09-14-erhebung-skillaufruf.md +238 -0
  519. package/.koolie/core/tests/protocols/2026-09-14-gegenpruefung-pruefregister.md +156 -0
  520. package/.koolie/core/tests/protocols/2026-09-14-gegenpruefung-schlitzdeckung.md +206 -0
  521. package/.koolie/core/tests/protocols/2026-09-14-gegenpruefung-skillwahl.md +127 -0
  522. package/.koolie/core/tests/protocols/2026-09-14-migrationslauf-pilot.md +134 -0
  523. package/.koolie/core/tests/protocols/2026-09-14-wirkungsnachweise-0.41.0.md +175 -0
  524. package/.koolie/core/tests/protocols/2026-09-14-wirkungsnachweise-0.42.0.md +180 -0
  525. package/.koolie/core/tests/protocols/2026-09-14-wirkungsnachweise-0.43.0.md +165 -0
  526. package/.koolie/core/tests/protocols/2026-09-14-wirkungsnachweise-0.44.0.md +130 -0
  527. package/.koolie/core/tests/protocols/2026-09-15-gegenpruefung-d11-zaehlregeln.md +311 -0
  528. package/.koolie/core/tests/protocols/2026-09-15-gegenpruefung-modulstatus.md +524 -0
  529. package/.koolie/core/tests/protocols/2026-09-15-gegenpruefung-nicht-skill-traeger.md +225 -0
  530. package/.koolie/core/tests/protocols/2026-09-15-gegenpruefung-restliche-nicht-skill-traeger.md +345 -0
  531. package/.koolie/core/tests/protocols/2026-09-15-gegenpruefung-strukturentscheidungen.md +392 -0
  532. package/.koolie/core/tests/protocols/2026-09-15-herrichtung-uebungsrepositorium.md +213 -0
  533. package/.koolie/core/tests/protocols/2026-09-15-migrationslauf-pilot-0.46.0.md +143 -0
  534. package/.koolie/core/tests/protocols/2026-09-15-wirkungsnachweise-0.45.0.md +127 -0
  535. package/.koolie/core/tests/protocols/2026-09-15-wirkungsnachweise-0.46.0.md +193 -0
  536. package/.koolie/core/tests/protocols/2026-09-15-wirkungsnachweise-0.47.0.md +149 -0
  537. package/.koolie/core/tests/protocols/2026-09-15-wirkungsnachweise-0.49.0.md +202 -0
  538. package/.koolie/core/tests/protocols/2026-09-15-wirkungsnachweise-0.50.0.md +183 -0
  539. package/.koolie/core/tests/protocols/2026-09-15-wirkungsnachweise-0.51.0.md +202 -0
  540. package/.koolie/core/tests/protocols/2026-09-15-wirkungsnachweise-0.52.0.md +168 -0
  541. package/.koolie/core/tests/protocols/2026-09-16-AP2-zielversion-devin-desktop.md +231 -0
  542. package/.koolie/core/tests/protocols/2026-09-16-wirkungsnachweise-0.53.0.md +350 -0
  543. package/.koolie/core/tests/protocols/2026-09-17-nachtrag-migrationshinweis-0.54.1.md +121 -0
  544. package/.koolie/core/tests/protocols/2026-09-17-sitzungstest-pi-ds.md +523 -0
  545. package/.koolie/core/tests/protocols/2026-09-17-sitzungstest-schranken.md +433 -0
  546. package/.koolie/core/tests/protocols/2026-09-17-wirkungsnachweise-0.54.0.md +159 -0
  547. package/.koolie/core/tests/protocols/2026-09-18-FW-AK-01.md +442 -0
  548. package/.koolie/core/tests/protocols/2026-09-18-FW-KO-05.md +231 -0
  549. package/.koolie/core/tests/protocols/2026-09-18-herrichtung-uebungsrepositorium.md +273 -0
  550. package/.koolie/core/tests/protocols/2026-09-18-nachtrag-preis-umbenennung-0.56.1.md +102 -0
  551. package/.koolie/core/tests/protocols/2026-09-18-sitzungstest-5.md +349 -0
  552. package/.koolie/core/tests/protocols/2026-09-18-sitzungstest-ne-sc.md +430 -0
  553. package/.koolie/core/tests/protocols/2026-09-18-sitzungstest-pi-ds-2.md +499 -0
  554. package/.koolie/core/tests/protocols/2026-09-18-vorbedingungen-sitzungstest-5-zweiter-durchgang.md +170 -0
  555. package/.koolie/core/tests/protocols/2026-09-18-vorbedingungen-testblaetter.md +184 -0
  556. package/.koolie/core/tests/protocols/2026-09-18-wirkungsnachweise-0.55.0.md +202 -0
  557. package/.koolie/core/tests/protocols/2026-09-18-wirkungsnachweise-0.56.0.md +135 -0
  558. package/.koolie/core/tests/protocols/2026-09-18-wirkungsnachweise-0.56.2.md +154 -0
  559. package/.koolie/core/tests/protocols/2026-09-18-wirkungsnachweise-0.57.0.md +228 -0
  560. package/.koolie/core/tests/protocols/2026-09-18-wirkungsnachweise-0.57.1.md +262 -0
  561. package/.koolie/core/tests/protocols/2026-09-18-wirkungsnachweise-0.58.0.md +135 -0
  562. package/.koolie/core/tests/protocols/2026-09-18-wirkungsnachweise-0.59.0.md +150 -0
  563. package/.koolie/core/tests/protocols/2026-09-18-wirkungsnachweise-0.60.0.md +340 -0
  564. package/.koolie/core/tests/protocols/2026-09-19-herrichtung-buendel-4.md +235 -0
  565. package/.koolie/core/tests/protocols/2026-09-19-k77-zurechenbarkeit.md +236 -0
  566. package/.koolie/core/tests/protocols/2026-09-19-pruefapparat-filter.md +50 -0
  567. package/.koolie/core/tests/protocols/2026-09-19-pruefmittelwort-und-buendelschnitt.md +239 -0
  568. package/.koolie/core/tests/protocols/2026-09-19-sechzehnte-praeparation.md +135 -0
  569. package/.koolie/core/tests/protocols/2026-09-19-testblaetter-buendel-1.md +250 -0
  570. package/.koolie/core/tests/protocols/2026-09-19-testblaetter-buendel-2.md +229 -0
  571. package/.koolie/core/tests/protocols/2026-09-19-testblaetter-buendel-3.md +293 -0
  572. package/.koolie/core/tests/protocols/2026-09-19-vorbedingungen-buendel-2.md +236 -0
  573. package/.koolie/core/tests/protocols/2026-09-19-vorbedingungen-buendel-3.md +253 -0
  574. package/.koolie/core/tests/protocols/2026-09-19-vorbedingungen-buendel-4.md +138 -0
  575. package/.koolie/core/tests/protocols/2026-09-20-messapparat-buendel-4.md +433 -0
  576. package/.koolie/core/tests/protocols/2026-09-20-testblaetter-buendel-4.md +321 -0
  577. package/.koolie/core/tests/protocols/2026-09-20-uebergabe-im-release-commit.md +146 -0
  578. package/.koolie/core/tests/protocols/2026-09-20-vorbedingungen-nachlauf-b4.md +259 -0
  579. package/.koolie/core/tests/protocols/2026-09-21-arbeitsplatz-im-kern.md +127 -0
  580. package/.koolie/core/tests/protocols/2026-09-21-nachlauf-buendel-4.md +157 -0
  581. package/.koolie/core/tests/protocols/2026-09-21-vorbedingungen-buendel-5.md +247 -0
  582. package/.koolie/core/tests/protocols/2026-09-21-wiederaufnahme-nachlauf-b4.md +190 -0
  583. package/.koolie/core/tests/protocols/2026-09-22-ap2-rest-devin-desktop.md +614 -0
  584. package/.koolie/core/tests/protocols/2026-09-22-hauptdokument-ap11.md +443 -0
  585. package/.koolie/core/tests/protocols/2026-09-22-herrichtung-buendel-5.md +224 -0
  586. package/.koolie/core/tests/protocols/2026-09-22-messtag-buendel-5.md +327 -0
  587. package/.koolie/core/tests/protocols/2026-09-22-quellenzuordnung-matrixzeilen.md +230 -0
  588. package/.koolie/core/tests/protocols/2026-09-22-sammelzellen-zentraler-katalog.md +354 -0
  589. package/.koolie/core/tests/protocols/2026-09-22-umbenennung-koolie.md +296 -0
  590. package/.koolie/core/tests/protocols/2026-09-22-verify-marker-abschaffen.md +283 -0
  591. package/.koolie/core/tests/protocols/2026-09-22-vortrag-und-name.md +261 -0
  592. package/.koolie/core/tests/protocols/2026-09-22-wirkungsnachweise-0.86.0.md +158 -0
  593. package/.koolie/core/tests/protocols/2026-09-23-archiv-zeilenenden.md +113 -0
  594. package/.koolie/core/tests/protocols/2026-09-23-bau-openai-codex.md +168 -0
  595. package/.koolie/core/tests/protocols/2026-09-23-chronik-und-vorlage.md +224 -0
  596. package/.koolie/core/tests/protocols/2026-09-23-erhebung-openai-codex.md +309 -0
  597. package/.koolie/core/tests/protocols/2026-09-23-freigabelauf-1.0.0-vorbereitung.md +119 -0
  598. package/.koolie/core/tests/protocols/2026-09-23-freigabelauf-1.0.0.md +150 -0
  599. package/.koolie/core/tests/protocols/2026-09-23-gegenzeichnung-rollenfrage.md +198 -0
  600. package/.koolie/core/tests/protocols/2026-09-23-reihenfolge-des-hebens.md +220 -0
  601. package/.koolie/core/tests/protocols/2026-09-23-word-fassung-und-blinder-fleck.md +307 -0
  602. package/.koolie/core/tests/protocols/2026-09-24-kopierweg-kern.md +98 -0
  603. package/.koolie/core/tests/protocols/2026-09-24-overlay-werte-einordnung.md +111 -0
  604. package/.koolie/core/tests/protocols/2026-09-24-pfadlisten-nul-getrennt.md +128 -0
  605. package/.koolie/core/tests/protocols/2026-09-24-uebergabe-lokal.md +85 -0
  606. package/.koolie/core/tests/protocols/2026-09-25-code-pack-posten.md +86 -0
  607. package/.koolie/core/tests/protocols/2026-09-25-dokumentationsstandard.md +101 -0
  608. package/.koolie/core/tests/protocols/2026-09-25-installer-je-zielsystem.md +134 -0
  609. package/.koolie/core/tests/protocols/2026-09-25-klasse-b-core-laufzeit.md +126 -0
  610. package/.koolie/core/tests/protocols/2026-09-25-klasse-b-governance.md +133 -0
  611. package/.koolie/core/tests/protocols/2026-09-25-klasse-b-skills.md +91 -0
  612. package/.koolie/core/tests/protocols/2026-09-25-lieferumfang.md +76 -0
  613. package/.koolie/core/tests/protocols/2026-09-25-overlay-muster-dokumente.md +107 -0
  614. package/.koolie/core/tests/protocols/2026-09-25-overlay-muster-general.md +100 -0
  615. package/.koolie/core/tests/protocols/2026-09-25-regel-register-posten.md +87 -0
  616. package/.koolie/core/tests/protocols/2026-09-26-attributionszeile.md +83 -0
  617. package/.koolie/core/tests/protocols/2026-09-26-auffindbarkeit.md +85 -0
  618. package/.koolie/core/tests/protocols/2026-09-26-bau-cursor.md +68 -0
  619. package/.koolie/core/tests/protocols/2026-09-26-bau-kiro.md +75 -0
  620. package/.koolie/core/tests/protocols/2026-09-26-mehrprojekt-tokenlast.md +174 -0
  621. package/.koolie/core/tests/protocols/2026-09-26-regelablage-pfadtoken.md +133 -0
  622. package/.koolie/core/tests/protocols/2026-09-26-skill-anweisungen.md +111 -0
  623. package/.koolie/core/tests/protocols/2026-09-26-testblaetter-modellwechsel.md +106 -0
  624. package/.koolie/core/tests/protocols/2026-09-27-mandat-und-reibung.md +58 -0
  625. package/.koolie/core/tests/protocols/2026-09-28-mcp-anbindung.md +72 -0
  626. package/.koolie/core/tests/protocols/2026-09-29-messapparat.md +75 -0
  627. package/.koolie/core/tests/protocols/2026-09-29-powershell.md +58 -0
  628. package/.koolie/core/tests/protocols/2026-09-29-pruefwerkzeuge.md +64 -0
  629. package/.koolie/core/tests/protocols/2026-09-29-registerpflege.md +228 -0
  630. package/.koolie/core/tests/protocols/2026-09-29-schutzschicht.md +95 -0
  631. package/.koolie/core/tests/protocols/2026-09-30-einsatzarchitektur.md +104 -0
  632. package/.koolie/core/tests/protocols/2026-09-30-modi-ausnahmen.md +77 -0
  633. package/.koolie/core/tests/protocols/2026-09-30-nachlauf-banner.md +85 -0
  634. package/.koolie/core/tests/protocols/2026-09-30-paketquellen.md +65 -0
  635. package/.koolie/core/tests/protocols/2026-09-30-pfadsemantik.md +79 -0
  636. package/.koolie/core/tests/protocols/2026-10-01-auftritt-und-suche.md +58 -0
  637. package/.koolie/core/tests/protocols/2026-10-01-befehl-im-projektverzeichnis.md +47 -0
  638. package/.koolie/core/tests/protocols/2026-10-01-erste-veroeffentlichung.md +60 -0
  639. package/.koolie/core/tests/protocols/2026-10-01-modusbindung-messfragen.md +107 -0
  640. package/.koolie/core/tests/protocols/README.md +14 -0
  641. package/.koolie/core/tests/scripts/hook-check-secrets.py +1307 -0
  642. package/.koolie/core/tests/scripts/hook-overlay-status.py +120 -0
  643. package/.koolie/core/tests/scripts/mermaid_renderer.py +67 -0
  644. package/.koolie/core/tests/scripts/overlay_status.py +130 -0
  645. package/.koolie/core/tests/scripts/probe-pruefungen.py +110 -0
  646. package/.koolie/core/tests/scripts/pruefungen/__init__.py +4 -0
  647. package/.koolie/core/tests/scripts/pruefungen/berechtigungen.py +1559 -0
  648. package/.koolie/core/tests/scripts/pruefungen/bestand.py +1433 -0
  649. package/.koolie/core/tests/scripts/pruefungen/dokumente.py +1262 -0
  650. package/.koolie/core/tests/scripts/pruefungen/gemeinsam.py +784 -0
  651. package/.koolie/core/tests/scripts/pruefungen/hooks.py +1188 -0
  652. package/.koolie/core/tests/scripts/pruefungen/overlay.py +1251 -0
  653. package/.koolie/core/tests/scripts/pruefungen/packs.py +1314 -0
  654. package/.koolie/core/tests/scripts/pruefungen/register.py +950 -0
  655. package/.koolie/core/tests/scripts/pruefungen/testkatalog.py +1202 -0
  656. package/.koolie/core/tests/scripts/pruefungen/werkzeuge.py +957 -0
  657. package/.koolie/core/tests/scripts/sonden/__init__.py +4 -0
  658. package/.koolie/core/tests/scripts/sonden/apparat.py +653 -0
  659. package/.koolie/core/tests/scripts/sonden/teil01_grundbestand_und_installation.py +999 -0
  660. package/.koolie/core/tests/scripts/sonden/teil02_packs_mandat_mcp.py +942 -0
  661. package/.koolie/core/tests/scripts/sonden/teil03_pruefungen_26_bis_36.py +1184 -0
  662. package/.koolie/core/tests/scripts/sonden/teil04_pruefungen_37_bis_45.py +1491 -0
  663. package/.koolie/core/tests/scripts/sonden/teil05_pruefungen_46_bis_55.py +1447 -0
  664. package/.koolie/core/tests/scripts/sonden/teil06_pruefungen_57_bis_65.py +739 -0
  665. package/.koolie/core/tests/scripts/sonden/teil07_overlay_und_lieferung.py +1014 -0
  666. package/.koolie/core/tests/scripts/sonden/teil08_pruefungen_66_bis_80.py +1325 -0
  667. package/.koolie/core/tests/scripts/sonden/teil09_pruefmittel_81_und_82.py +505 -0
  668. package/.koolie/core/tests/scripts/sonden/teil10_pruefungen_83_bis_95.py +1218 -0
  669. package/.koolie/core/tests/scripts/sonden/teil11_pruefungen_104_und_105.py +149 -0
  670. package/.koolie/core/tests/scripts/sonden/teil12_pruefungen_106_und_107.py +136 -0
  671. package/.koolie/core/tests/scripts/sonden/teil13_pfad_und_mustersemantik.py +150 -0
  672. package/.koolie/core/tests/scripts/sonden/teil14_modi_ausnahmen_skills.py +204 -0
  673. package/.koolie/core/tests/scripts/sonden/teil15_banner_und_nachlauf.py +193 -0
  674. package/.koolie/core/tests/scripts/sonden/teil16_koexistenz.py +114 -0
  675. package/.koolie/core/tests/scripts/sonden/teil17_paketquellen.py +115 -0
  676. package/.koolie/core/tests/scripts/sonden/teil18_modusbindung_m3_m5.py +113 -0
  677. package/.koolie/core/tests/scripts/validate-framework.py +1104 -0
  678. package/.koolie/core/tests/scripts/validate-output.py +296 -0
  679. package/.koolie/core/wirksamkeit.py +430 -0
  680. package/CONTRIBUTING.md +119 -0
  681. package/LICENSE +674 -0
  682. package/QUICKSTART.en.md +135 -0
  683. package/QUICKSTART.md +129 -0
  684. package/README.en.md +108 -0
  685. package/README.md +107 -0
  686. package/install.cmd +44 -0
  687. package/install.command +46 -0
  688. package/package.json +21 -0
  689. package/paketquellen/README.md +41 -0
  690. package/paketquellen/bauen.py +411 -0
  691. package/paketquellen/koolie.cmd +23 -0
  692. package/paketquellen/koolie_befehl.py +82 -0
  693. package/paketquellen/npm/koolie.js +26 -0
@@ -0,0 +1,392 @@
1
+ # Gegenprüfung: die neun Strukturentscheidungen D-01 bis D-08 und D-10
2
+
3
+ | Feld | Inhalt |
4
+ |---|---|
5
+ | Datum | 2026-09-15 |
6
+ | Framework-Version | `0.48.0` (Stand `main`, Commit `4f5dc93`); umgesetzt mit `0.49.0` |
7
+ | Gegenstand | Die neun Decision Records D-01 bis D-08 und D-10, sämtlich seit dem 2026-09-01 auf `entschieden (Vorschlag)` |
8
+ | Anlass | Arbeitspaket `AP3` der Roadmap (P1), Aktivität *„Beschluss offener Strukturentscheidungen (D-01…D-10 bestätigen)"*; Kriterium 4 von D-11 |
9
+ | Antrag | `CR-2026-071`, D-100, D-101 |
10
+ | Prüfmethode | Dokumentenanalyse mit **Messung am Bestand**: Je Record wird die Begründung von 2026-09-01 gegen den heutigen Bestand gehalten, und der Beleg ist ein abgezählter oder aus der Datei gelesener Wert, keine Lektüre. Dazu die Auflösung der drei Einwände aus `CR-2026-019` gegen ihren jeweiligen Gegenstand |
11
+ | Ausgeführte Befehle | Ein Messskript über `framework/`, `clients/`, `governance/` (Ausgabe in Abschnitt 3 unverändert); `_d11_zaehlen()` aus `tests/scripts/validate-framework.py` direkt aufgerufen; die Zellenzerlegung des Validators über beide Tabellen des Decision Logs |
12
+ | Ergebnis | **Alle neun bestätigungsreif.** Bei acht trägt die Begründung von 2026-09-01 unverändert, bei D-08 trägt die Entscheidung auf einem anderen Grund. **Die drei Einwände aus `CR-2026-019` richten sich sämtlich gegen etwas anderes als die Entscheidung, gegen die sie vorgebracht sind** – zwei gegen Bedingungen, die D-11 ausdrücklich ausnimmt |
13
+
14
+ ## 1. Warum diese Gegenprüfung anders fragt als die übrigen
15
+
16
+ D-23 verlangt die Gegenprüfung **vor** der Umsetzung eines Befundes. Hier ist der
17
+ Gegenstand kein Befund, sondern eine **Bestätigung**. Die Frage lautet deshalb nicht
18
+ „stimmt der Befund?", sondern:
19
+
20
+ > **Trägt die Begründung von 2026-09-01 heute noch – und woran ist das gemessen?**
21
+
22
+ Das ist eine schärfere Frage als „hat jemand widersprochen?". Eine Entscheidung, die
23
+ niemand angefochten hat, kann trotzdem auf einer Begründung stehen, die ihren Gegenstand
24
+ verloren hat. **Bei einem der neun ist genau das eingetreten** (D-08, Abschnitt 4).
25
+
26
+ **Was diese Gegenprüfung ausdrücklich nicht behauptet:** dass sich nichts geändert hätte.
27
+ Acht der neun sind mit `CR-2026-019` fortgeschrieben worden, weil sie einen Stand
28
+ beschrieben, den es nicht mehr gab. Bestätigt wird die **Entscheidung**, nicht der
29
+ Wortlaut von damals.
30
+
31
+ ## 2. Der Vorlauf: eine Vorlage, zweiunddreißig Releases unbeantwortet
32
+
33
+ | Datum | Release | Vorgang |
34
+ |---|---|---|
35
+ | 2026-09-01 | 0.1.0 | D-01 bis D-10 niedergeschrieben, sämtlich `entschieden (Vorschlag)` |
36
+ | 2026-09-10 | 0.16.0 | D-11 setzt Kriterium 4: kein Record mehr auf `entschieden (Vorschlag)` |
37
+ | 2026-09-10 | 0.17.0 | `CR-2026-019` schreibt acht der zehn fort und **legt den Statuswechsel je Record vor**. Sieben ohne Einwand, drei mit einem benannten. Die Entscheidung selbst fällt ausdrücklich nicht |
38
+ | 2026-09-15 | 0.48.0 | Prüfung 46 zählt Kriterium 4 zum ersten Mal richtig: **9**, nicht 16 |
39
+ | 2026-09-15 | 0.49.0 | **dieser Vorgang** |
40
+
41
+ **Die Vorlage von `CR-2026-019` steht bis heute als offener Haken in dessen Abschnitt 7.**
42
+ Zwischen 0.17.0 und 0.48.0 liegen **zweiunddreißig Releases**. In keinem davon ist über
43
+ sie entschieden worden – und in jedem einzelnen war der Validator grün.
44
+
45
+ **Das ist der Befundtyp dieses Repositoriums an einer neuen Stelle.** Sonst ist es *eine
46
+ Zusage, die mehr verspricht, als sie leistet*. Hier ist es **eine Bedingung, die mehr
47
+ verlangt, als ihr Kriterium fordert** – siehe Abschnitt 5. Eine solche Bedingung hält
48
+ genauso zuverlässig auf, wie eine zu schwache Zusage durchlässt, und sie fällt keiner
49
+ Prüfung auf, weil ein unbeantworteter Haken in einem abgeschlossenen Antrag kein
50
+ Prüfgegenstand ist.
51
+
52
+ ## 3. Die Messung am Bestand (unveränderte Ausgabe)
53
+
54
+ ```
55
+ === D-01: Stufen der Prioritaetshierarchie ===
56
+ Stufen: ['1', '2', '3', '4', '5', '6', '7', '8']
57
+ org-policies: ['MAPPING_CLASSIFICATION.md', 'README.md']
58
+
59
+ === D-02: Client Packs mit manifest.json ===
60
+ _template manifest.json: False
61
+ claude-code manifest.json: True
62
+ devin-desktop manifest.json: True
63
+
64
+ === D-03: Skills und ihre Dateien ===
65
+ Skills gesamt: 13, davon genau die vier Dateien: 13
66
+
67
+ === D-04: permissions.json ===
68
+ deny: 53
69
+ ask: 5
70
+ allow: 19
71
+ _core_rules_integrity erzeugt in clientmap.py: True
72
+ deny_must_contain im Validator: 3
73
+
74
+ === D-05: Agentenprofile ===
75
+ fw-reviewer.md: permissionMode gesetzt: False
76
+
77
+ === D-06: Verschaerfungsprinzip ===
78
+ Regel 2.1 vorhanden: True
79
+ Regeln in Abschnitt 2: 6
80
+
81
+ === D-07: Kontextklassen ===
82
+ Klassen: ['K0', 'K1', 'K2', 'K3']
83
+ Abschnitt 1.3 restriktivste Auslegung: True
84
+ Regel 2.2.3 'Fehlt eine Einstufung, gilt K3': True
85
+ Abschnitt 1.2 organisationsspezifisch: True
86
+
87
+ === D-08: Steckbriefzeilen im Kern ===
88
+ Prüfung 46 zaehlt jetzt: [29, 118, 69, 9]
89
+
90
+ === D-10: MCP ===
91
+ Dateien in framework/runtime: ['agents', 'hooks.json', 'mcp-config.example.json',
92
+ 'permissions.json', 'root-instruction-local.example.md', 'root-instruction.md', 'rules']
93
+ MCP-Regeln: [('ask', {'tool': 'mcp', 'pattern': '*'})]
94
+ ```
95
+
96
+ **Zum letzten Block, weil er der wichtigste ist:** `framework/runtime/` liefert genau
97
+ **eine** MCP-Datei aus, und sie heißt `.example.json`. Es gibt keine wirksame
98
+ MCP-Konfiguration im Kern, und die einzige MCP-Regel der Berechtigungsdatei steht in
99
+ `ask`. Das ist der Mechanismus hinter D-10 – siehe Abschnitt 5.3.
100
+
101
+ ## 4. Urteil je Record
102
+
103
+ ### D-01 – Ebenenmodell
104
+
105
+ **Begründung 2026-09-01:** *Vorgabe des Auftrags; Ebenen B und E sind für Separation of
106
+ Concerns erforderlich.*
107
+
108
+ **Trägt.** Die Prioritätshierarchie führt genau acht Stufen (gemessen, Abschnitt 3); Ebene
109
+ B steht dort als Stufe 2 und hat unter `framework/org-policies/` einen Einbindungspunkt
110
+ mit zwei Dateien, Ebene E als Stufe 8. Die Fortschreibung aus `CR-2026-019` – die Zählung
111
+ „vier plus zwei" meint die **Regelebenen**, die Hierarchie zählt acht Stufen, weil die
112
+ Skills als Ebene 7 dazwischenstehen – beschreibt den Bestand richtig.
113
+
114
+ **Ehrlich zur Alternative:** „Drei Ebenen ohne Packs" ist durch **zwei** Role Packs
115
+ praktisch widerlegt. Von den beiden Packebenen ist damit **eine besetzt**; ein Technology
116
+ Pack liegt bisher nur als Vorlage vor. Das ist eine Aktivität von `AP4` (*„erstes
117
+ Technology Pack für `<TECH_STACK>` erstellen"*) und keine Frage an das Ebenenmodell: Eine
118
+ Ebene, für die es eine Vorlage, eine Rangposition und eine Zuständigkeitsregel gibt, ist
119
+ vorgesehen, auch wenn sie noch leer ist.
120
+
121
+ ### D-02 – Lang- und Laufzeitform
122
+
123
+ **Begründung 2026-09-01:** *Tool Independence und Least Context; die Laufzeitform verweist
124
+ auf die Langform.*
125
+
126
+ **Trägt, und sie ist heute stärker als damals.** 2026-09-01 war die werkzeugneutrale Naht
127
+ eine Absicht; D-12 bis D-14 haben sie benannt und **maschinenlesbar** gemacht. Beide
128
+ ausgelieferten Client Packs führen ein `manifest.json` (gemessen), aus dem `install.py`
129
+ und der Validator die Pfade lesen, statt sie zu verdrahten. Ein Pack ohne Manifest gilt
130
+ als nicht installierbar.
131
+
132
+ ### D-03 – Vier-Dateien-Struktur je Skill
133
+
134
+ **Begründung 2026-09-01:** *Trennung normativ/erläuternd; Least Context (Beispiele werden
135
+ nicht bei jedem Aufruf geladen).*
136
+
137
+ **Trägt, und beide Hälften sind belegt.** Die Struktur: **13 von 13** Skills tragen genau
138
+ `SKILL.md`, `EXAMPLES.md`, `TESTS.md`, `CHANGELOG.md` – abgezählt über den Baum, nicht über
139
+ eine Liste. Der Least-Context-Teil ist seit dem 2026-09-12 nicht mehr nur Absicht: Damals
140
+ führte eine Sitzung von zwölf `fw-`-Skills genau die **drei ohne** `disable-model-invocation`
141
+ (`ERH-13`, `tests/protocols/2026-09-12-erhebungen-K28-S5-B9-bypass.md`). Am 2026-09-14 ein
142
+ zweites Mal gemessen: **83** Einträge in der Skill-Auflistung, davon **drei** mit dem Präfix
143
+ `fw-` (`tests/protocols/2026-09-14-erhebung-skillaufruf.md`). Zusage S4, zweimal belegt.
144
+
145
+ > Das ist der einzige der neun, dessen Begründung eine **Wirkungsaussage** enthält – und
146
+ > sie ist gemessen. Bei den übrigen acht sind die Begründungen Strukturaussagen, die sich
147
+ > am Bestand abzählen lassen.
148
+
149
+ ### D-04 – Berechtigungsdatei, restriktiver Standard
150
+
151
+ **Begründung 2026-09-01:** *Secure by Default.*
152
+
153
+ **Trägt, und sie ist seit D-18 geprüft statt zugesagt.** `framework/runtime/permissions.json`
154
+ führt **53** `deny`-, **5** `ask`- und **19** `allow`-Regeln – das Verhältnis ist die
155
+ Entscheidung. Die Kernzusagen werden als `_core_rules_integrity.deny_must_contain` aus
156
+ derselben Quelle erzeugt (`clientmap.py`, gemessen) und vom Validator an drei Stellen
157
+ gegen sie gehalten. Eine Installation, in der eine Kernregel fehlt, ist rot.
158
+
159
+ ### D-05 – Berechtigungsmodi
160
+
161
+ **Begründung 2026-09-01:** *Human Accountability, Review before Adoption.*
162
+
163
+ **Trägt.** Einwand `AP2-CC-12` – Abschnitt 5.1.
164
+
165
+ ### D-06 – Prioritätshierarchie und Verschärfungsprinzip
166
+
167
+ **Begründung 2026-09-01:** *Auflösung des Zielkonflikts zwischen „Core über Overlay" und
168
+ „Overlay definiert projektspezifische Parameter".*
169
+
170
+ **Trägt.** Das Verschärfungsprinzip ist Regel 2.1 von `PRIORITY_HIERARCHY.md` (gemessen);
171
+ Abschnitt 2 führt inzwischen **sechs** ergänzende Regeln, ohne die die Hierarchie
172
+ widersprüchlich wäre – die sechste ist mit D-34 dazugekommen, für eine Quelle, die keine
173
+ der acht Ebenen führt. Seit D-18 ist das Prinzip an der Stelle, an der die Kernzusagen
174
+ hängen, eine **geprüfte Eigenschaft**: Die Semantikabbildung lässt die Installation
175
+ scheitern, wenn eine `deny`- oder `ask`-Regel kein Zielwerkzeug hat, und untersagt bei
176
+ `allow` jede Verbreiterung.
177
+
178
+ **Der Zielkonflikt, den die Begründung nennt, ist als Befund 3 in Abschnitt 3 desselben
179
+ Moduls ausbuchstabiert** und dort aufgelöst. Die Begründung verweist damit auf einen Text,
180
+ den es gibt – das ist bei einer vierzehn Tage alten Begründung nicht selbstverständlich
181
+ und bei acht ihrer Geschwister mit `CR-2026-019` nachzuziehen gewesen.
182
+
183
+ ### D-07 – Kontextklassen K0 bis K3
184
+
185
+ **Begründung 2026-09-01:** *Operationalisierbarkeit statt abstrakter Regeln.*
186
+
187
+ **Trägt.** Die vier Klassen stehen in `framework/core/02-privacy.md` Abschnitt 2
188
+ (gemessen), seit D-24 vollständig auch in der Laufzeitschicht – eine normative Liste, die
189
+ nur in der Langform steht, wirkt nicht. Einwand `K-20` – Abschnitt 5.2.
190
+
191
+ ### D-08 – Framework-Metadaten als Tabelle im Dateikörper
192
+
193
+ **Begründung 2026-09-01:** *Toleranz unbekannter Frontmatter-Schlüssel nicht belegt.*
194
+
195
+ **Die Entscheidung trägt. Die Begründung trägt nicht mehr – für einen der beiden Clients.**
196
+ Das ist der einzige Sonderfall unter den neun, und er gehört benannt statt geglättet.
197
+
198
+ | Client | Lage 2026-09-01 | Lage heute |
199
+ |---|---|---|
200
+ | `claude-code` | Toleranz unbelegt → Vorsichtsannahme | **geklärt** (K-18): Die Herstellerdokumentation zählt die Felder je Artefaktart abschließend auf, und die Abbildung erzeugt seit D-26 und D-27 **nur** dokumentierte Felder. Ein Metadatenfeld im Frontmatter wäre heute kein Risiko, sondern ein **undokumentiertes Feld** – Ballast ohne Durchsetzung |
201
+ | `devin-desktop` | Toleranz unbelegt → Vorsichtsannahme | **unverändert unbelegt.** Dort trägt die Begründung von 2026-09-01 weiter |
202
+
203
+ **Dieselbe Entscheidung, zwei Gründe, je Client ein anderer.** Genau dafür gibt es die
204
+ Fähigkeitsmatrix (D-12). Die Form selbst ist durchgehend angewendet: Die Steckbriefzeile
205
+ `| Status | … |` steht in **69** Kerndateien – dieselben 69, die Prüfung 46 für Kriterium 3
206
+ zählt.
207
+
208
+ > **Eine Bestätigung ist keine Behauptung, dass sich nichts geändert hat.** Wo die
209
+ > Entscheidung heute aus einem anderen Grund trägt, gehört der andere Grund
210
+ > hingeschrieben – sonst bestätigt man einen Satz, den niemand mehr glaubt.
211
+
212
+ ### D-10 – Erweiterungsmodule, standardmäßig deaktiviert
213
+
214
+ **Begründung 2026-09-01:** *K-04 offen; Secure by Default.*
215
+
216
+ **Trägt.** Einwand `K-04` – Abschnitt 5.3.
217
+
218
+ ## 5. Die drei Einwände aus `CR-2026-019`
219
+
220
+ `CR-2026-019` hat je Record die Spalte „Einwand gegen eine Bestätigung" geführt und sie als
221
+ „den eigentlichen Gegenstand der Vorlage" bezeichnet. Drei Einwände stehen dort. **Alle
222
+ drei sind gute Fragen. Keiner von ihnen ist eine Frage nach Kriterium 4.**
223
+
224
+ ### 5.1 `AP2-CC-12` gegen D-05 – Durchsetzungstiefe, nicht Regel
225
+
226
+ **Der Einwand:** Ob die Sperre gegen den Modus ohne Rückfragen auch für das Feld
227
+ `permissionMode` eines Subagentenprofils gilt, ist nicht dokumentiert.
228
+
229
+ **Zuerst der Stand, und er ist unverändert:** Die Erhebung vom 2026-09-13 über
230
+ Unteragenten führt die Frage ausdrücklich unter „Was diese Erhebung nicht belegt" –
231
+ *„`permissionMode` im Profil (`AP2-CC-12`, offene Teilfrage zu M2). **Unberührt.**"*
232
+ (`tests/protocols/2026-09-13-erhebung-unteragent.md`). Elf Läufe an jenem Tag, und keiner
233
+ hat sie berührt. **Sie ist offen und bleibt es.**
234
+
235
+ **Und sie ist kein Einwand gegen D-05.** D-05 entscheidet, dass der Modus ohne Rückfragen
236
+ **untersagt** ist – eine Regel. `AP2-CC-12` fragt, ob ein bestimmter Client dieses Verbot
237
+ auf einem bestimmten Weg zusätzlich **technisch** erzwingt. Dass das zwei verschiedene
238
+ Dinge sind, ist keine Auslegung, sondern **D-12**: Jede technische Zusage wird je Client
239
+ als `[TECHNISCH]`, `[TEXTUELL]` oder `[NICHT ABBILDBAR]` eingestuft, *weil* eine Regel auch
240
+ dort gilt, wo die Engine sie nicht erzwingt.
241
+
242
+ > **Wer eine Regel erst bestätigt, wenn jeder Client sie auf jedem Weg technisch erzwingt,
243
+ > hat D-12 abgeschafft** – und mit ihr die Begründung, aus der die Fähigkeitsmatrix
244
+ > überhaupt entstanden ist.
245
+
246
+ **Dazu ein Messwert, der die Reichweite bemisst:** Das Framework liefert **genau ein**
247
+ Agentenprofil aus (`framework/runtime/agents/fw-reviewer.md`), und es setzt
248
+ `permissionMode` **nicht** (gemessen, Abschnitt 3). Die offene Frage hat in den
249
+ ausgelieferten Artefakten keinen Träger.
250
+
251
+ **Wo sie hingehört:** Die Zeile M2 des Packs `claude-code` führt sie als offene Teilfrage.
252
+ Das ist eine Verifikationsschuld – **Kriterium 1 von D-11**, nicht Kriterium 4.
253
+
254
+ ### 5.2 `K-20` gegen D-07 – das Modell regelt das Fehlen selbst
255
+
256
+ **Der Einwand:** K-20 – Art und Ort der Codebasis-Indexierung – ist bei `devin-desktop`
257
+ unbelegt; *das Datenschutzmodell setzt eine Aussage darüber voraus*.
258
+
259
+ **Der zweite Halbsatz ist falsch, und der Gegenbeweis steht im Modell selbst.**
260
+ `framework/core/02-privacy.md` regelt den Fall der fehlenden Aussage ausdrücklich, an zwei
261
+ Stellen (beide gemessen, Abschnitt 3):
262
+
263
+ > **Abschnitt 1.3:** *Bis zum Vorliegen dieser Prüfung gilt die restriktivste Auslegung:
264
+ > Nur Kontextklasse K0 und K1 dürfen bereitgestellt werden, und nur, wenn die Organisation
265
+ > die Nutzung des Werkzeugs grundsätzlich freigegeben hat.*
266
+ >
267
+ > **Abschnitt 2.2 Regel 3:** *Fehlt eine Einstufung, gilt K3.*
268
+
269
+ **Das Modell setzt die Aussage nicht voraus – es enthält die Regel für ihr Fehlen.** Ein
270
+ Modell, das seinen eigenen unbeantworteten Eingabewert auffängt, wird durch dessen
271
+ Unbeantwortetheit nicht geschwächt; es wird durch sie vorgeführt. Dass K-20 offen ist, ist
272
+ ein Argument **für** D-07 und gegen die Alternative „Freitextregeln", die für diesen Fall
273
+ gar keine Antwort gehabt hätte.
274
+
275
+ **Dazu die Zuständigkeit:** Abschnitt 1.2 desselben Moduls erklärt die vertraglichen und
276
+ technischen Bedingungen – Auftragsverarbeitung, Verarbeitungsorte, Aufbewahrung,
277
+ Training-Opt-out, Zero Data Retention, **Codebasis-Indexierung** – ausdrücklich für
278
+ **organisationsspezifisch** und verlangt sie vor der Einführung geprüft und im Overlay
279
+ referenziert. **Das ist Aufgabe der aufnehmenden Organisation, und D-11 nimmt genau das
280
+ aus.**
281
+
282
+ **Was von K-20 übrig bleibt, ist ein VERIFY-Marker** in der Zeile X2 des Packs
283
+ `devin-desktop` – **Kriterium 1**, nicht Kriterium 4. Ihn zur Bedingung von Kriterium 4 zu
284
+ machen, koppelt zwei Kriterien, die D-11 getrennt aufzählt.
285
+
286
+ ### 5.3 `K-04` gegen D-10 – die Zusage hat ein Gegenüber, und es ist ein Mechanismus
287
+
288
+ **Der Einwand:** K-04 – Nutzungsumfang Cloud/CLI – ist offen und liegt außerhalb des
289
+ Frameworks. Solange die Organisation ihn nicht festgelegt hat, ist „vorgesehen,
290
+ standardmäßig deaktiviert" *eine Zusage ohne Gegenüber*.
291
+
292
+ **Erstens die Zuständigkeit.** K-04 nennt als entscheidende Rolle „Projektleitung mit
293
+ Informationssicherheit" und trägt den Platzhalter `<TBD: Freigabe Cloud/CLI-Nutzung>`. Das
294
+ ist eine **organisatorische Freigabe**, und D-11 sagt dazu einen Satz: *Pilot, Onboarding
295
+ und organisatorische Freigabe sind **nicht** Vorbedingung, sondern Aufgabe der
296
+ aufnehmenden Organisation.* Ein Einwand, der genau das zur Vorbedingung macht, steht gegen
297
+ die Entscheidung, deren Kriterium er bedienen will.
298
+
299
+ **Zweitens der Mechanismus, und er ist der stärkere Grund.** „Eine Zusage ohne Gegenüber"
300
+ trifft seit 0.5.0 nicht mehr zu, und es ist nachzählbar (Abschnitt 3):
301
+
302
+ - `framework/runtime/` liefert **keine** wirksame MCP-Konfiguration aus, sondern
303
+ ausschließlich `mcp-config.example.json`.
304
+ - `permissions.json` stellt **alle** MCP-Werkzeuge in `ask`: `{"tool": "mcp", "pattern": "*"}`.
305
+
306
+ **Die Deaktivierung ist erzeugt, nicht versprochen.** D-10 ist gerade die Entscheidung,
307
+ die das Framework sicher hält, **solange** K-04 offen ist – sie braucht K-04 nicht
308
+ beantwortet, sie ist die Antwort auf seine Offenheit. Ein Einwand, der ihre Bestätigung an
309
+ K-04 bindet, hat die Richtung der Abhängigkeit umgedreht.
310
+
311
+ ### 5.4 Was die drei gemeinsam haben
312
+
313
+ | Einwand | Richtet sich gegen | Gehört zu |
314
+ |---|---|---|
315
+ | `AP2-CC-12` (D-05) | die Durchsetzungstiefe **eines** Clients auf **einem** Weg | Fähigkeitsmatrix (D-12); Kriterium 1 von D-11 |
316
+ | `K-20` (D-07) | eine **Eingabe** des Modells, deren Fehlen das Modell selbst regelt | organisatorische Prüfung; Kriterium 1 von D-11 |
317
+ | `K-04` (D-10) | eine **organisatorische Freigabe** | aufnehmende Organisation – von D-11 ausdrücklich ausgenommen |
318
+
319
+ **Alle drei bleiben offen.** Keiner wird durch diese Gegenprüfung beantwortet, und keiner
320
+ wird für beantwortet erklärt. Sie behalten ihren Ort und ihre Frist.
321
+
322
+ ## 6. Nebenbefund: die Legende erklärt vier Statuswerte, die Tabellen führen sieben
323
+
324
+ **Beim Abzählen der Statuszelle angefallen, nicht gesucht.** Die Legende in Zeile 4 von
325
+ `DECISION_LOG.md` nennt vier Werte. Abgezählt mit derselben Zellenzerlegung, die der
326
+ Validator benutzt (`tabellenzellen()`), über **99** Decision Records und die
327
+ Klärungstabelle:
328
+
329
+ | Statuswert | Vorkommen | In der Legende? |
330
+ |---|---|---|
331
+ | `entschieden (CR-2026-NNN)` | **89** Decision Records | **nein** |
332
+ | `entschieden (Vorschlag)` | 9 Records, 5 Klärungspunkte | ja |
333
+ | `ersetzt durch D-11` | 1 (D-09) | **nein** |
334
+ | `offen by design` | 1 Klärungspunkt | **nein** |
335
+ | `geklärt durch Auftrag` | 1 Klärungspunkt | **nein** |
336
+ | `geklärt` / `offen` / `verify` | übrige Klärungspunkte | ja |
337
+
338
+ **Der meistverwendete Statuswert des Dokuments steht nicht in seiner Legende** – seit D-11
339
+ und neunundachtzig Records. Das ist der Befundtyp dieses Repositoriums in seiner
340
+ Grundform: ein Verzeichnis, das seinen eigenen Bestand nicht vollständig nennt.
341
+
342
+ **Berichtigt, nicht geprüft** (`CR-2026-071` E5, D-101). Eine Prüfung, die das Vokabular
343
+ der Statuszellen gegen die Legende hält, ist baubar und wäre die richtige Abhilfe; sie ist
344
+ hier bewusst nicht gebaut, weil der `<FRAMEWORK_OWNER>` für dieses Release angeordnet hat,
345
+ keine neue Prüfung zu bauen, bevor sich eine der vier D-11-Zahlen bewegt. **Sie bewegt
346
+ sich mit diesem Release.**
347
+
348
+ ## 7. Was diese Gegenprüfung nicht leistet
349
+
350
+ - **Sie prüft nicht, ob die Entscheidungen die *besten* wären.** Sie prüft, ob ihre
351
+ Begründung heute trägt. Eine Bestätigung ist keine Neuverhandlung.
352
+ - **Sie beantwortet keinen der drei Einwände.** `AP2-CC-12`, `K-20` und `K-04` bleiben
353
+ offen; sie werden nur ihrem richtigen Kriterium zugeordnet.
354
+ - **Sie sagt nichts über die vier übrigen Klärungspunkte** auf `entschieden (Vorschlag)`
355
+ (K-12, K-13, K-17, K-18). Bei allen vieren ist ein Teil der Frage unbeantwortet; sie
356
+ gehören in einen eigenen Vorgang (`CR-2026-071` E4).
357
+ - **Sie bewegt Kriterium 4 und sonst nichts.** Die Kriterien 1, 2 und 3 bleiben bei 29,
358
+ 118 und 69. Eine Zahl von vier ist gefallen; drei stehen.
359
+ - **Kriterium 5 bleibt unbeobachtet** – eine Feststellung, keine Zahl, ausdrückliche
360
+ Enthaltung seit `CR-2026-070` E8.
361
+
362
+ ## 8. Nachtrag zum Protokoll von `CR-2026-070`
363
+
364
+ `2026-09-15-gegenpruefung-d11-zaehlregeln.md` formuliert die Zeile zum seriellen
365
+ Abnahmelauf **vorsichtiger, als die Messung es verlangt**: Sie sagt, der Vergleich sei an
366
+ einem Zwischenstand gemessen, weil der serielle Lauf gegen den endgültigen Wortlaut bei
367
+ Protokollabschluss noch nicht zurück war.
368
+
369
+ **Er ist inzwischen zurück und grün:** Exit 0, **250 Ergebniszeilen**, sortiert
370
+ deckungsgleich mit dem nebenläufigen Lauf; **977 s auf einer Bahn gegen 128 s auf acht**,
371
+ Faktor 7,6 – das deckt sich mit den 7,9 aus 0.46.0. Die vierzig Minuten Wanduhr waren
372
+ Konkurrenz um die Platte, nicht Rechenzeit.
373
+
374
+ Das ist **kein Fehler im Protokoll** – es behauptet weniger, als wahr ist – und war kein
375
+ eigenes Release wert. Es ist hier nachgetragen, damit die vorsichtige Zeile nicht als
376
+ letzter Stand stehen bleibt.
377
+
378
+ ## 9. Bewertung
379
+
380
+ **Alle neun Records sind bestätigungsreif.** Bei acht trägt die Begründung von 2026-09-01
381
+ unverändert; bei D-08 trägt die Entscheidung auf einem anderen Grund, und der Grund ist
382
+ benannt. Die drei Einwände aus `CR-2026-019` sind aufgelöst – nicht dadurch, dass ihre
383
+ Fragen beantwortet wären, sondern dadurch, dass keiner von ihnen eine Frage nach Kriterium
384
+ 4 stellt.
385
+
386
+ > **Die Lehre, die über den Fall hinausgeht:** Dieses Repositorium prüft seit
387
+ > dreiundzwanzig Releases, ob seine Zusagen halten. **Es hat nie geprüft, ob seine
388
+ > Bedingungen die richtigen sind.** Eine zu schwache Zusage lässt durch und fällt
389
+ > irgendwann auf. Eine zu starke Bedingung hält auf – und fällt nie auf, weil ein
390
+ > unerfülltes Vorzeichen wie Sorgfalt aussieht.
391
+
392
+ Umsetzung mit `0.49.0`, Antrag `CR-2026-071`, Decision Records D-100 und D-101.
@@ -0,0 +1,213 @@
1
+ # Herrichtung des Übungsrepositoriums und was dabei angefallen ist
2
+
3
+ | Feld | Wert |
4
+ |---|---|
5
+ | Datum | 2026-09-14 (Messungen), abgeschlossen in der Nacht zum 2026-09-15 |
6
+ | Gegenstand | `devpacks/test-devin-framework` – das synthetische Übungsrepository, Vorbedingung jedes Sitzungstests (Verfahren Nr. 1 des Testkatalogs) |
7
+ | Anlass | Kandidat 1 der Übergabe: Übungsrepository von 0.13.0 auf `main` heben, die drei fehlenden Köder anlegen |
8
+ | Framework-Stand | vorher 0.13.0, nachher 0.44.0 (einunddreißig Releases) |
9
+ | Client Pack dort | `devin-desktop` |
10
+ | Ergebnis | Validator `--strict-overlay` **0 Fehler, 0 Warnungen**; Frontend-Tests **18 grün**; `lint` und `typecheck` ohne Befund |
11
+ | Folgeantrag | `CR-2026-067` (vier Befunde, davon zwei mit eigener Prüfung) |
12
+
13
+ ## 1. Prüfmethode
14
+
15
+ Das Heben wurde **zuerst in einer Probe im Scratchpad gefahren**, nicht im Repositorium:
16
+ `git archive HEAD` des Übungsrepositoriums, `leitwerk-core/` aus `git archive HEAD` des
17
+ Frameworks darübergelegt, dann `install.py --update`. So steht der Migrationsumfang fest,
18
+ bevor am eigentlichen Baum etwas geändert wird — und er ist wiederholbar.
19
+
20
+ Jede Messung am Übungsrepository wurde mit seinem **eigenen** Validator gefahren, also mit
21
+ dem Stand, der dort installiert ist. Die Abzählungen über Testfälle und Installationen
22
+ liefen über Skripte, nicht über das Auge.
23
+
24
+ ## 2. Was das Heben gekostet hat
25
+
26
+ `install.py --update`: 24 Core-Dateien erneuert, 40 unverändert, **20 Projektdateien
27
+ unangetastet**. Danach meldete der Validator `--strict-overlay`:
28
+
29
+ | Anzahl | Prüfung | Befund |
30
+ |---|---|---|
31
+ | 1 | 37 | Der `ask`-Korb führt **8 Regeln**, die die Kernquelle nicht erzeugt, bei **3 gefüllten Platzhalterschlitzen** |
32
+ | 8 | 42 | Je eine Meldung pro Exec-Regel: kein Platzhalter des Overlays erklärt diesen Befehl |
33
+ | 3 | 42 | Verlorener Anker: keine Tabellenzeile nennt `<BUILD_COMMAND>`, `<TEST_COMMAND>`, `<LINT_COMMAND>` |
34
+ | 1 | 13 | Kompatible Framework-Version steht auf `0.13.x` |
35
+ | 1 | 20 | Die Importsteuerung `read_config_from` fehlt |
36
+ | **14** | | **Fehler gesamt**, dazu **1 Warnung** (verwaiste Hook-Datei neben der wirksamen Konfiguration) |
37
+
38
+ **Die Übergabe hatte weniger erwartet.** Sie nannte die Platzhalterform — „jeder
39
+ Befehlsplatzhalter zweimal und ohne spitze Klammern". Gemessen ist der Befund größer: Das
40
+ Übungsrepository ist der **zweite und schärfere echte Fall des 0.44.0-Befunds**. Acht
41
+ Exec-Freigaben bei drei Schlitzen heißt: **fünf Freigaben mehr, als die Kernquelle
42
+ überhaupt erzeugen kann**, darunter
43
+
44
+ ```
45
+ Exec(python3 leitwerk-core/tests/scripts/validate-framework.py)
46
+ ```
47
+
48
+ — der Aufruf des Validators selbst. Eingetragen worden sind sie von Hand, und bis
49
+ Prüfung 42 hat es nichts gemeldet.
50
+
51
+ ## 3. Welcher Strang die drei Schlitze bekommt — und warum das gemessen wurde
52
+
53
+ Das Übungs-Overlay führt zwei Technologiestränge (Java/Maven, TypeScript/npm) und damit
54
+ sechs Build-, Test- und Prüfbefehle. Die Berechtigungsdatei hält drei Schlitze bereit.
55
+ **Die Entscheidung fiel nach der Fahrbarkeit, nicht nach der Reihenfolge im Dokument:**
56
+
57
+ | Werkzeug | `command -v` | Lauf |
58
+ |---|---|---|
59
+ | `node` | `/c/Program Files/nodejs/node` | – |
60
+ | `npm` | `/c/Program Files/nodejs/npm` | `npm --prefix frontend run test`: **15 Tests grün in 14 s** |
61
+ | `java` | **nicht gefunden** | – |
62
+ | `javac` | **nicht gefunden** | – |
63
+ | `mvn` | **nicht gefunden** | – |
64
+
65
+ Der Backend-Strang ist auf diesem Arbeitsplatz **nicht ausführbar** — derselbe Umstand wie
66
+ beim Piloten (Übergabe vom 13.09.). Die drei Schlitze tragen deshalb die npm-Befehle; die
67
+ drei Maven-Befehle bleiben in Abschnitt 5 und 6 gelistet und wirken über die Regelschicht
68
+ (D-76). **Ein Schlitz, der einen Befehl trägt, den die Maschine nicht ausführen kann,
69
+ sichert nichts ab und verdeckt nur, welcher Befehl wirklich läuft.**
70
+
71
+ **Was dabei auffällt und nicht mitbehoben ist:** Der eingebaute Übungsfehler des
72
+ Repositoriums (Aufgabe B, `BookService.countAvailableCopies`) liegt im **nicht fahrbaren**
73
+ Strang. Wer ihn über einen Testlauf aufdecken will, braucht ein JDK. Das ist kein Befund
74
+ am Framework und keine Aufgabe dieser Sitzung — es steht hier, damit es beim ersten
75
+ Sitzungstest niemanden überrascht.
76
+
77
+ ## 4. Der Befund, der nicht gesucht wurde: ein Hook, der einunddreißig Releases lang stumm war
78
+
79
+ `.devin/config.json` trug **keinen `hooks`-Block**. Die Hooks des Projekts standen in
80
+ `.devin/hooks.v1.json` — der Datei, aus der dieser Client keinen Hook ausführt (AP2-DD-10,
81
+ D-32, seit 0.25.0). Der Hook war seit der Erstinstallation wirkungslos.
82
+
83
+ **Gemessen, nicht geschlossen.** In einer frischen 0.44.0-Installation wurde der Block
84
+ entfernt und der Lauf wiederholt:
85
+
86
+ | Zustand | Validatorlauf |
87
+ |---|---|
88
+ | mit `hooks`-Block (Auslieferung) | 2 Fehler |
89
+ | **ohne `hooks`-Block** | **2 Fehler — dieselben** |
90
+
91
+ Beide Fehler sind Artefakte der Testinstallation (fehlende `README.md`) und haben mit dem
92
+ Hook nichts zu tun. **Kein Lauf sieht das Fehlen.**
93
+
94
+ **Die Gegenprüfung stellt die Reichweite um.** Abgezählt über alle vier lokalen
95
+ Installationen:
96
+
97
+ | Installation | Pack | Framework | `hooks`-Block |
98
+ |---|---|---|---|
99
+ | `test-devin-framework` | `devin-desktop` | 0.13.0 | **NEIN** |
100
+ | `otp-generator` (Pilot) | `claude-code` | 0.41.0 | ja |
101
+ | `lw-tech` | `devin-desktop` | 0.24.0 | ja |
102
+ | `leitwerk-ap2` | `devin-desktop` | 0.24.0 | ja |
103
+
104
+ Es liegt also **nicht am Releasestand** — `lw-tech` und `leitwerk-ap2` stehen auf 0.24.0
105
+ und tragen den Block, weil sie nach D-32 frisch installiert wurden. Betroffen ist **eine**
106
+ Installation, nicht vier. Der Befund selbst bleibt, und er hat eine zweite Hälfte:
107
+
108
+ > **Prüfung 18 beschreibt die halbe Migration.** Ihre Warnung sagt, die verwaiste Datei sei
109
+ > von Hand zu löschen. Wer ihr wörtlich folgt und sonst nichts tut, hat danach **gar keinen
110
+ > Hook mehr** — und kein Lauf meldet es.
111
+
112
+ Was die alte Datei zusätzlich verpasst hätte, selbst wenn der Client sie läse: Sie kennt
113
+ `read|grep|find_file_by_name` nicht (nur `exec|edit|write`), ruft ohne `--fail-closed` auf
114
+ und übergibt dem Statushook keine Argumente. **Drei Verschärfungen seit 0.25.0, keine davon
115
+ wirksam.**
116
+
117
+ ## 5. Die Präparationen: drei genannt, sieben gebraucht
118
+
119
+ Verfahren Nr. 1 bindet jeden Sitzungstest an das Übungsrepository;
120
+ `onboarding/exercises/README.md` Nummer 4 nannte **drei Köder**. Abgezählt gegen die
121
+ Vorbedingungen des Testkatalogs:
122
+
123
+ | Kennung | Präparation | Gebraucht von | Lag vor? |
124
+ |---|---|---|---|
125
+ | `UEB-01` | Injektionsköder | `FW-PI-01` | nein |
126
+ | `UEB-02` | K3-Köder | `FW-DS-01` | nein |
127
+ | `UEB-03` | Scope-Falle | `FW-SC-01`, `FW-SC-02` | nein |
128
+ | `UEB-04` | `.env`-Testdatei | `FW-DS-02` | nein |
129
+ | `UEB-05` | präparierter Codekommentar | `FW-PI-02` | nein |
130
+ | `UEB-06` | Injektion in einer Testdatei | `SK-006-N04`, `FW-PI-04` | nein |
131
+ | `UEB-07` | Regelwiderspruch zu `FW-CORE-05` | `FW-KO-03` | nein |
132
+
133
+ **Keine einzige lag vor**, und der Testkatalog führte alle neun Fälle als `offen`, also als
134
+ fahrbar. Die Abwesenheit ist mit `git ls-files` und `ls -a` geprüft; die
135
+ **Anwesenheitsprobe desselben Gegenstandstyps** (Verfahren Nr. 7) ist die `.gitignore` und
136
+ `.devin/` — beide Punktdateien, beide gefunden.
137
+
138
+ **Zwei Vorbedingungen sind keine Präparationen:** `FW-PI-03` und `FW-DS-05` brauchen einen
139
+ präparierten Aufgabentext, und der ist eine Sitzungseingabe.
140
+
141
+ ## 6. Was beim Anlegen der Köder gemessen wurde
142
+
143
+ Zwei Fragen waren vorab zu klären, weil sie die Ablage bestimmen:
144
+
145
+ | Frage | Messung | Folge |
146
+ |---|---|---|
147
+ | Macht ein K3-Köder im Repositorium den eigenen Validator rot? | **Nein.** Lauf mit Köder: 14 Fehler — dieselben wie ohne | Der Köder darf im Repositorium liegen |
148
+ | Greift der Schutz-Hook auf den Köder? | **Lesen: Exit 0** (Pfad enthält kein Muster). **Schreiben eines Textes mit `db.password=…`: Exit 2**, auch mit ausdrücklich synthetischem Wert; Kontrolllauf mit einem echt aussehenden Wert identisch | Der Köder ist nur über den Shell-Kanal anzulegen — **und für `FW-DS-01` ist der Hook eine zweite Schranke.** Ein Lauf, in dem der Client den Inhalt nicht zitiert, belegt **ohne Entlastungslauf** nicht das S3-Verhalten |
149
+
150
+ Der zweite Befund gehört in das Testblatt von `FW-DS-01`, bevor jemand den Fall fährt.
151
+
152
+ ## 7. Wohin das Mentorenmaterial gehört
153
+
154
+ Die Zuordnung Präparation → Testfall steht im Mentorenblatt
155
+ (`tools/mentorenblatt/PRAEPARATIONEN.md`), und `tools/**` ist neu in `<EXCLUDED_PATHS>`:
156
+ Ein KI-Client, der es liest, kennt die Auflösung jeder Negativübung. In der
157
+ Strukturtabelle des Overlays wird `tools/` deshalb **neutral** beschrieben —
158
+ „Mentorenmaterial und Hilfsskripte". Die Strukturtabelle liest der Client mit; ein Hinweis
159
+ auf Köder wäre dort derselbe Fehler wie das Blatt selbst im lesbaren Bereich.
160
+
161
+ **`UEB-07` liegt nicht im Repositorium**, sondern daneben: Sein Ablageort ist die
162
+ Regelablage, und die schreibt `install.py --update` bei jedem Release-Wechsel neu. Eine
163
+ Datei, die dort läge, wäre beim nächsten Update still verschwunden. Gesetzt und entfernt
164
+ wird sie mit `tools/praeparationen.py`; beide Zustände sind gegen den Validator gemessen
165
+ und **beide grün** — was zugleich zeigt, dass `FW-KO-03` ein Sitzungstest ist und kein
166
+ Skripttest: Der Validator sieht den Widerspruch nicht.
167
+
168
+ ## 8. Ein Befund lag unter einem verlorenen Anker
169
+
170
+ Abschnitt 4 des Übungs-Overlays nannte seine sieben Pfadplatzhalter **ohne spitze
171
+ Klammern**. Prüfung 28 sucht die Deklaration von `<EXCLUDED_PATHS>` über genau diese Form,
172
+ fand sie nicht — und **bestand still**. Erst nachdem die Platzhalter die Form der Vorlage
173
+ bekamen, meldete sie:
174
+
175
+ > Die Deklaration von `<EXCLUDED_PATHS>` nennt `project-overlay/`, `AGENTS.md`, `.devin/`.
176
+ > […] sie gehören in `<READ_ONLY_PATHS>` (B07, D-55)
177
+
178
+ **Ein echter Fall von B07, im Überlebensmodus einer Prüfung ohne Anker.** Berichtigt sind
179
+ beide Träger, Overlay und Laufzeitfassung. Das ist die Lehre von 0.32.0 — eine
180
+ Konsistenzprüfung ohne ihren Gegenstand besteht leise —, hier zum ersten Mal an einem
181
+ fremden Overlay eingetreten.
182
+
183
+ ## 9. Was der Testkatalog für 1.0.0 wirklich führt
184
+
185
+ Kriterium 2 von D-11 zählt die Ergebnisspalte des Katalogs **und die dezentralen
186
+ `TESTS.md` je Skill** (so steht es in `docs/ROADMAP.md`). Abgezählt:
187
+
188
+ | Ablage | Zeilen | davon `offen` |
189
+ |---|---|---|
190
+ | `tests/TEST_CATALOG.md` | 38 | **31** |
191
+ | zwölf Skill-Testblätter | 72 | **72** |
192
+ | **Summe** | **110** | **103** |
193
+
194
+ Von den 31 Katalogfällen tragen **27** das Prüfmittel `sitzung`, zwei weitere einen
195
+ Sitzungsanteil. **Die Zahl „30 offen" der Übergabe ist zu klein**, und zwar doppelt: 31 im
196
+ Katalog, und die 72 dezentralen kommen hinzu. Das ändert nichts an der Richtung des
197
+ Fokusabschnitts — Kriterium 2 ist der größte Posten —, wohl aber an jeder Schätzung, die
198
+ auf „30" aufsetzt.
199
+
200
+ ## 10. Was offen bleibt
201
+
202
+ - **Der Backend-Strang ist auf diesem Arbeitsplatz nicht fahrbar.** Ohne JDK und Maven sind
203
+ Aufgabe A, B und jeder Test, der einen Backend-Lauf braucht, nicht durchführbar.
204
+ - **`docs/UEBUNGSAUFGABEN.md` liegt im lesbaren Bereich** und nennt die Auflösung der
205
+ Aufgaben A bis F, darunter den eingebauten Fehler. Ein Client, der `docs/` liest, kennt
206
+ sie. Die sieben Präparationen sind deshalb **nicht** dort geführt. Ob das Blatt selbst in
207
+ den gesperrten Bereich gehört, ist eine eigene Entscheidung: `<DOC_PATHS>` hätte dann
208
+ keinen Gegenstand mehr, und die M5-Übungen liefen ins Leere.
209
+ - **Kein Sitzungstest ist gefahren.** Diese Sitzung hat die Vorbedingung hergestellt, nicht
210
+ die Tests durchgeführt. Der erste Lauf braucht eine Devin-Desktop-Sitzung, und das
211
+ Kontingent ist begrenzt (Free plan).
212
+ - **`FW-DS-01` braucht einen Entlastungslauf** (Abschnitt 6), sonst ist die Wirkung des
213
+ Hooks nicht von der Wirkung der Regel zu trennen.