@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,93 @@
1
+ # Änderungsantrag `CR-2026-098`
2
+
3
+ | Feld | Inhalt |
4
+ |---|---|
5
+ | Titel | Zwei Anforderungen an die Auslieferung – die Installationsbibliothek und das frameworkeigene Unterverzeichnis |
6
+ | Antragstellende Rolle | `<FRAMEWORK_OWNER>` |
7
+ | Datum | 2026-09-19 |
8
+ | Betroffene Artefakte | `docs/ROADMAP.md` (neuer Posten `1.3.0`, Posten der Umbenennung erweitert), `governance/DECISION_LOG.md` (`K-50` erweitert, `K-75` neu), `CHANGELOG.md`, `VERSION` |
9
+ | Ebene laut Entscheidungsbaum 6 | **Core** – Gegenstand ist der Releaseplan |
10
+ | Art | Planänderung, keine Messung, kein Kontingent |
11
+ | Dringlichkeit | **Regulär, mit einer Frist:** Anforderung 2 gehört in die Umbenennung (`~0.68.0`) und wird danach teurer, nicht billiger |
12
+
13
+ ## 1. Anlass
14
+
15
+ Der Mensch hat am 2026-09-19 zwei Anforderungen an die **Auslieferung** gestellt. Beide
16
+ betreffen nicht, was das Framework sagt, sondern **wie es in ein Zielprojekt kommt** –
17
+ und dafür gab es bisher genau einen Weg: das Repositorium kopieren und von dort
18
+ installieren.
19
+
20
+ ## 2. Anforderung 1 – die Installationsbibliothek (neuer Posten `1.3.0`)
21
+
22
+ **Wortlaut sinngemäß:** Ein Zielprojekt soll das Framework nicht mehr nur als Kopie des
23
+ ganzen Repositoriums bekommen – mit Tests, Änderungsanträgen und Protokollen – und von
24
+ dort aus installieren. Der Weg soll **bleiben**; daneben soll es eine
25
+ **Installationsbibliothek** geben: Der Mensch nennt Projektpfad, Client und Overlay, und
26
+ der Installer legt an beziehungsweise hebt. Zusätzlich soll der **Lieferumfang wählbar**
27
+ sein: alles, oder nur das zur Nutzung Nötige.
28
+
29
+ **Warum das ein eigener Posten ist:** Drei Dinge des heutigen Aufbaus hängen daran, und
30
+ alle drei sind belegt, nicht vermutet.
31
+
32
+ | # | Was daran hängt | Beleg |
33
+ |---|---|---|
34
+ | 1 | **Der Kern liegt im Zielprojekt und wird von dort ausgeführt.** Die Hook-Kommandos der erzeugten Berechtigungsdatei zeigen auf `leitwerk-core/…` im Zielprojekt | Abschnitt 6 der Übergabe: ohne `cp -r leitwerk-core <root>/` zeigen sie ins Leere |
35
+ | 2 | **Das Heben ersetzt das Verzeichnis, nicht einzelne Dateien** (`rm -rf` + `git archive` + `--update`) | der Zehn-Minuten-Ablauf |
36
+ | 3 | **Mehrere Prüfungen laufen gegen den Kern im Zielprojekt** (45, 59) und `--strict-overlay` ist die Abnahme jeder Übernahme | `CR-2026-090`, D-171 |
37
+
38
+ **Wo der Posten hingehört: nach `1.2.0`.** Er ändert den **Übernahmeweg**, und der muß
39
+ gegen den dann geltenden Bestand gebaut werden – also nach der Umbenennung, nach `AP11`,
40
+ nach `1.0.0` und nach den beiden Erweiterungen, die **neue Träger mit Pfaden** anlegen
41
+ (Client Pack `openai-codex` in `1.1.0`, Overlay-Muster in `1.2.0`). Ein Mindestpaket, das
42
+ davor geschnitten wird, schneidet an einem Bestand, den es danach nicht mehr gibt.
43
+
44
+ ## 3. Anforderung 2 – das frameworkeigene Unterverzeichnis (zur Umbenennung)
45
+
46
+ **Wortlaut sinngemäß:** `koolie-core/` und `project-overlay/` sollen im Zielprojekt nicht
47
+ im Wurzelverzeichnis liegen, sondern in einem frameworkspezifischen Unterverzeichnis,
48
+ vorgeschlagen `.koolie/`.
49
+
50
+ **Einzuordnen bei `~0.68.0`, nicht als eigener Posten.** D-127 verschiebt ohnehin
51
+ `leitwerk-core/` nach `koolie-core/` und ändert den Wert von `<CORE_DIR>`. Beides zweimal
52
+ zu tun hieße, jede Fundstelle zweimal anzufassen und jedes übernehmende Projekt zweimal
53
+ zu heben.
54
+
55
+ 🔴 **Und es beantwortet `K-50` faktisch mit ja:** Ein Umzug ist kein Update. `install.py
56
+ --update` schreibt an den alten Ort; ohne einen Migrationspfad bleibt in jedem
57
+ übernehmenden Projekt der alte Baum stehen.
58
+
59
+ ## 4. `K-75` – die offenen Entscheidungen
60
+
61
+ Sie gehören in den Antrag, der die Arbeit auslöst, nicht in den Plan:
62
+
63
+ | # | Frage |
64
+ |---|---|
65
+ | 1 | **Punkt oder kein Punkt?** Die Anforderung nennt beides. Ein Punkt-Verzeichnis ist voreingestellt unsichtbar – für eine **Regelablage, die ein Mensch lesen soll**, ist das eine Entscheidung, keine Schreibweise. Der Bestand kennt beides: `.claude/`, `.devin/` mit Punkt, `project-overlay/` ohne |
66
+ | 2 | **`core/` oder `koolie-core/` darunter?** `.koolie/koolie-core/` doppelt den Namen; `.koolie/core/` ist kürzer, aber ein herausgelöster Pfad `core/…` sagt nicht mehr, wem er gehört – und genau das war der Gegenstand der Clientneutralität (Prüfung 48) |
67
+ | 3 | **Was ist das Mindestpaket?** Eine Datei, die ein Skill **mit Pfad** zitiert, kann nicht weggelassen werden, ohne den Verweis ins Leere zeigen zu lassen – **D-193 an einer neuen Stelle** |
68
+ | 4 | **Womit prüft ein Projekt mit reduziertem Umfang seine Übernahme?** `validate-framework.py` liegt unter `tests/`, und `tests/` wäre das erste, was ein Mindestpaket wegläßt |
69
+ | 5 | **Woher weiß der Installer beim Heben, welche Dateien dem Projekt gehören**, wenn die Quelle nicht mehr im Zielprojekt liegt? |
70
+ | 6 | **Wo steht dann die Herkunftsangabe?** Heute in `leitwerk-core/VERSION` im Ziel; ohne sie kann weder Validator noch Mensch sagen, welcher Stand installiert ist |
71
+ | 7 | **Vertriebsweg:** Python-Paket, Git-Bezug oder Archiv? Eine Annahme über die vorhandene Werkzeugkette wäre eine Annahme (P3) |
72
+
73
+ ## 5. Vorlage zur Entscheidung
74
+
75
+ | # | Frage | Auflösung | Preis |
76
+ |---|---|---|---|
77
+ | **E1** | **Ersetzt die Installationsbibliothek den heutigen Weg?** | **Nein – sie tritt daneben** | Zwei Wege sind zu pflegen und zu prüfen. **Der Gegenpreis wäre größer:** Der heutige Weg ist der einzige, der heute belegt funktioniert, und beide übernehmenden Projekte stehen auf ihm |
78
+ | **E2** | **Eigener Posten oder Teil von `1.2.0`?** | **Eigener Posten `1.3.0`, nach `1.2.0`** | Eine Nummer mehr. **Begründet, nicht bequem:** Der Posten ändert den Übernahmeweg, und `1.1.0` und `1.2.0` legen **neue Träger mit Pfaden** an – ein Mindestpaket, das davor geschnitten wird, schneidet an einem Bestand, den es danach nicht mehr gibt |
79
+ | **E3** | **Wird das Unterverzeichnis ein eigener Posten oder Teil der Umbenennung?** | **Teil der Umbenennung (`~0.68.0`)** | Der Umbenennungsposten wird größer. **Der Gegenpreis ist die doppelte Arbeit:** D-127 verschiebt das Kernverzeichnis ohnehin und ändert `<CORE_DIR>`; wer beides trennt, faßt jede Fundstelle zweimal an und hebt jedes übernehmende Projekt zweimal |
80
+ | **E4** | **Werden die sieben offenen Fragen hier entschieden?** | **Nein – `K-75`** | Ein Klärungspunkt mehr. **Der Grund ist die Trennlinie dieses Projekts:** Der Plan sagt, **was** und **wann**; die Ermessensfragen gehören einzeln vorgelegt, mit Auflösung **und Preis**, in den Antrag, der die Arbeit auslöst |
81
+ | **E5** | **Wird in diesem Release etwas gebaut?** | **Nein – Planänderung ohne Kontingent** | Ein Einschub mehr. **Kriterium 2 bewegt sich nicht**, und das ist richtig so: Eine Anforderung aufzuschreiben ist keine Messung |
82
+
83
+ ## 6. Entscheidung
84
+
85
+ **E1 bis E5 wie vorgelegt entschieden** (`<FRAMEWORK_OWNER>`, 2026-09-19). Kein neuer
86
+ Decision Record – der Plan trägt die Festlegung, `K-75` die offenen Fragen.
87
+
88
+ ## 7. Abnahme
89
+
90
+ - `validate-framework.py`: **0 Fehler, 0 Warnungen** gegen den fertigen Baum.
91
+ - `probe-pruefungen.py` in **beiden** Kodierungsumgebungen (D-49), voller Lauf.
92
+ - 🔴 **Prüfung 53 ist der Wirkungsnachweis dieses Antrags:** Sie rechnet die Kette der
93
+ Releaseplan-Posten nach, und dieser Antrag fügt eine Nummer hinzu.
@@ -0,0 +1,119 @@
1
+ # Änderungsantrag `CR-2026-099`
2
+
3
+ | Feld | Inhalt |
4
+ |---|---|
5
+ | Titel | `K-74` entschieden und die Vorbedingungen von Bündel 3 – die Marke, die keine Ausgabemarke ist, und die Vorbedingung aus einem fremden Strang |
6
+ | Antragstellende Rolle | `<FRAMEWORK_OWNER>` |
7
+ | Datum | 2026-09-19 |
8
+ | Betroffene Artefakte | zehn `framework/skills/*/TESTS.md` (18 Markennennungen, drei Vorbedingungen, zwei Ergebnisvermerke), `docs/RUNTIME_GLOSSARY.md` (neuer Abschnitt, Version `0.3.0` → `0.4.0`), `tests/TEST_CATALOG.md` (Punkt 4, Nachweisspanne), `onboarding/exercises/README.md` (`UEB-18` bis `UEB-20`), `tests/scripts/validate-framework.py` (**Prüfung 64**), `tests/scripts/probe-pruefungen.py` (vier Sonden, drei Gegenproben), `governance/DECISION_LOG.md` (**D-197**, **D-198**, `K-74` erledigt), `docs/ROADMAP.md`, `tests/protocols/2026-09-19-vorbedingungen-buendel-3.md` (neu), `CHANGELOG.md`, `VERSION`; **außerhalb des Repositoriums:** das Übungsrepositorium (`UEB-18` bis `UEB-20`, Mentorenblatt) |
9
+ | Ebene laut Entscheidungsbaum 6 | **Core** – Gegenstand sind Testblätter, Laufzeitglossar und Prüfapparat |
10
+ | Art | Herrichtung vor einem Meßtag, **keine Messung, kein Kontingent** |
11
+ | Dringlichkeit | **Regulär, mit einer Frist:** Beides gehört **vor** Bündel 3 – `K-74` laut Decision Log, die Vorbedingungen nach fünfzehn Durchgängen Erfahrung |
12
+
13
+ ## 1. Anlass
14
+
15
+ Zwei Dinge stehen vor dem Meßtag von Bündel 3, und beide sind im Vorfeld benannt worden:
16
+ `K-74` (die Ausgabemarken) und der Vorbedingungsdurchgang. **Beide haben mehr gefunden,
17
+ als ihr Auftrag erwarten ließ.**
18
+
19
+ ## 2. `K-74` – die Frage, die die Zählung nicht gestellt hatte
20
+
21
+ `K-74` hat am 2026-09-19 gezählt: `[HALT]` und `[RÜCKFRAGE]` stehen mit 145 Fundstellen in
22
+ 54 anweisenden Trägern im Kern und sind in keinem Kernmodul und keinem Glossar erklärt.
23
+ Die Vorlage nannte zwei Auflösungen – die Marken erklären oder die Zellen auf die Form
24
+ abstellen.
25
+
26
+ 🔴 **Die entscheidende Frage war eine dritte, und sie stand in keiner Fassung des
27
+ Klärungspunkts: In WELCHEM Abschnitt steht die Marke?** Ausgezählt über die zwölf Skills:
28
+
29
+ | Marke | Abschnitt 5 (Ausgabeformat) | Abschnitt 6 (Qualitätskriterien) | Abschnitt 2, 3, 7 |
30
+ |---|---|---|---|
31
+ | `[HALT]` | 3 – **nur** `fw-plan`, `fw-bugfix-prepare`, `fw-change-small` | 3 – dieselben drei | 42 |
32
+ | `[RÜCKFRAGE]` | **0** | **0** | 43 |
33
+
34
+ 🔴 **`[RÜCKFRAGE]` ist gar keine Ausgabemarke.** Sie ist durchgehend **Handlungsmarke**:
35
+ `| Kontrollstufe nicht angegeben \| [RÜCKFRAGE] |` heißt *frage zurück*, nicht *schreibe
36
+ die Zeichenfolge*. **`[HALT]` ist beides, je nach Skill** – und wo sie Abnahmekriterium
37
+ ist, sagt Abschnitt 6 *„ist **erkennbar**"*, nicht *„wörtlich"*.
38
+
39
+ 🔴 **Ein gemessener Lauf hatte es vorgeführt, bevor es benannt war.** `sk004n01` (Bündel 2)
40
+ schrieb `[HALT]` – Abschnitt 6 von `fw-plan` verlangt es – und `[RÜCKFRAGE]` **nicht**,
41
+ obwohl er zurückfragte, und zwar genau in der verlangten Form. **Der Lauf hatte in beidem
42
+ recht; die Zelle verlangte trotzdem beides.**
43
+
44
+ **Gemessen über alle dreizehn Blätter: 18 Nennungen in 17 Zellen sind ungedeckt**, zehn
45
+ gedeckt. In Bündel 3 sind **9 von 13** ungedeckt – alle **sechs** Nennungen von `fw-refactor`
46
+ (fünf Zellen, `SK-007-N04` nennt beide Marken), beide von `fw-tests` und eine von
47
+ `fw-change-small`.
48
+
49
+ ⚠️ **Und die Zählung von `K-74` war wieder zu klein.** Nachgezählt gegen den Kern,
50
+ Aufzeichnungen ausgenommen (D-141): `[HALT]` **101** statt 92 Fundstellen, `[RÜCKFRAGE]`
51
+ **54** statt 52 ohne die ASCII-Form. **Wer hier eine Zahl liest, zählt sie nach – auch die
52
+ eigene.**
53
+
54
+ ## 3. Die achtzehn Vorbedingungen – fünfzehn tragen, drei nicht
55
+
56
+ **Zum fünfzehnten Mal in Folge der billigste Befund des Releases**, und alle drei Befunde
57
+ fielen **vor** dem ersten Lauf an.
58
+
59
+ | Zelle | Was fehlte | Abhilfe |
60
+ |---|---|---|
61
+ | `SK-005-P02` | Ein **bestätigter Plan**, der eine Datei nennt, während der Ist-Zustand eine zweite erfordert. **Ein Plan ist ein Artefakt eines LAUFS** – die fünfte Wiederholung nach `UEB-06`, `UEB-07`, `UEB-08`, `UEB-17` (D-192) | `UEB-18` |
62
+ | `SK-005-N03` | Ein Fehlschlag, der **durch** die Änderung entsteht und dessen Ursache **außerhalb** der bestätigten Zieldateiliste liegt. `UEB-08` ist schon im Ausgangsstand rot und trifft den **anderen** Zweig von Arbeitsschritt 9 | `UEB-19` |
63
+ | `SK-006-N01` | Der Sichtbarkeits- oder Konstruktorfall. 🔴 **Im ausführbaren Strang gibt es ihn nicht** – das Testwerkzeug erreicht jedes Verhalten über Modul- und Zeitattrappen, ohne Produktivcode anzufassen | `UEB-20` |
64
+
65
+ 🟢 **Nachgemessen statt übernommen:** Frontend-Suite **51 grün** (nach den Präparationen
66
+ 59), Lint Exit 0, `UEB-06` gibt seinen Wartungshinweis in der Testausgabe aus,
67
+ `bestand.test.ts` führt drei Fälle (`UEB-08` nicht gesetzt). Das Übungsrepositorium steht
68
+ auf Framework **0.70.0**; `0.71.0` und `0.72.0` haben **keinen** der drei Bündel-3-Skills
69
+ angefaßt – **das Heben wird trotzdem Pflicht, weil dieses Release ihre `TESTS.md`
70
+ anfaßt.**
71
+
72
+ ## 4. Der Nachweis, daß `UEB-19` wirkt
73
+
74
+ Eine Präparation, deren Gegenstand erst **durch einen Lauf** entsteht, belegt sich nicht
75
+ durch ihr Dasein (`UEB-06`, dreizehn Releases). Gemessen am 2026-09-19 mit einem
76
+ Wegwerf-Eingriff, der nach der Messung zurückgenommen wurde:
77
+
78
+ ```
79
+ FAIL src/api/mahnung.test.ts > mahnstufe > erinnert am letzten Tag der Erinnerungsfrist noch
80
+ AssertionError: expected 'mahnung' to be 'erinnerung'
81
+ Test Files 1 failed | 9 passed (10)
82
+ Tests 1 failed | 58 passed (59)
83
+ ```
84
+
85
+ **Das Paar ist der Nachweis:** ohne die Verlagerung 59 grün, mit ihr genau eine
86
+ fehlschlagende Zusicherung – und ihre Ursache liegt in `mahnsaetze.ts`, nicht in der
87
+ bestätigten Zieldatei.
88
+
89
+ ## 5. Vorlage zur Entscheidung
90
+
91
+ | # | Frage | Auflösung | Preis |
92
+ |---|---|---|---|
93
+ | **E1** | **Wie wird die Lücke zwischen Zelle und Skill geschlossen – Marke nachziehen oder Zelle auf die Sache abstellen?** | **Die Zelle stellt auf die Sache ab**, die Marke wörtlich nur, wo Abschnitt 5 oder 6 des Skills sie führt. Dazu: beide Marken im Laufzeitglossar erklärt, **Prüfung 64** setzt die Deckung durch | Siebzehn Zellen angefaßt. **Der Gegenpreis wäre größer:** Die Marke in Abschnitt 5 und 6 der neun übrigen Skills nachzuziehen hieße bis zu zwölf `SKILL.md` – und eine Versionsanhebung ist immer eine **Dateizahl mal zwei**; die drei Meßgegenstände von Bündel 3 hätten sich unmittelbar vor der Messung geändert. **Ein Eintrag in einer `TESTS.md` hebt die Skillversion nicht** (D-119) |
94
+ | **E2** | **Warum wird hier die Zelle geändert, wo D-196 genau das verworfen hat?** | **Weil die Lage eine andere ist** | Der Anschein einer Ungleichbehandlung, und deshalb steht die Begründung namentlich hier: Bei D-196 trägt die geladene Schicht die Kennung **gar nicht** – die Erwartung ist unerfüllbar, und eine Regel muß jede **künftige** Zelle mit abdecken. Hier steht die Marke **in** der geladenen Schicht (die `SKILL.md` wird ganz eingefügt, D-187), nur als Anweisung statt als Ausgabe. **Der Widerspruch liegt zwischen Zelle und Skill und ist damit maschinell prüfbar**; der Fall von D-196 ist es nicht |
95
+ | **E3** | **Werden die drei Zellen ohne Gegenstand hergerichtet oder vertagt?** | **Hergerichtet – `UEB-18` bis `UEB-20`** | Drei Präparationen mehr, und `UEB-19` bringt zwei neue Module in den ausführbaren Strang. **Der Gegenpreis der Vertagung ist teurer:** Die drei stünden weiter als `offen`, also als **fahrbar** – genau die Bauform, die `UEB-06` dreizehn und `UEB-07` zwanzig Releases lang getragen hat |
96
+ | **E4** | **Wird `UEB-20` im ausführbaren Strang gebaut?** | **Nein – im Backend-Strang** | Die Präparation ist **nicht durch einen Lauf belegbar** (`K-68`) und belegt sich durch ihr Dasein, wie `UEB-14`. **Der Gegenpreis wäre eine Präparation, die ihren Gegenstand nicht herstellt:** Jede Fassung im ausführbaren Strang wäre über eine Modul- oder Zeitattrappe testbar, **und der Lauf hätte zu Recht widersprochen.** Der Testfall braucht den Lauf ohnehin nicht – sein erwartetes Verhalten ist ein Unterlassen **vor** dem ersten Schreibzugriff, und `fw-tests` führt den Testbefehl erst danach aus |
97
+ | **E5** | **Wird `UEB-19` an `UEB-03` aufgehängt?** | **Nein – ein eigenes Modulpaar** | Zwei Module mehr. **Der Gegenpreis ist D-137:** Die falsche Grenze von `UEB-03` macht die Scope-Falle von `FW-SC-01` aus und darf nicht angefaßt werden; eine zweite Präparation am selben Ort nähme der ersten den Gegenstand |
98
+ | **E6** | **Wird in diesem Release gemessen?** | **Nein – Herrichtung ohne Kontingent; der Meßtag ist `~0.74.0`** | Ein Einschub mehr, und **Kriterium 2 bewegt sich nicht.** Das ist richtig so: Ein Meßbaum entsteht aus dem **committeten** Stand (D-191, 0.59.1). Wer Herrichtung und Messung in ein Release legt, mißt gegen einen Stand, dessen Herrichtung im selben Release liegt |
99
+
100
+ ## 6. Entscheidung
101
+
102
+ **E1 bis E6 wie vorgelegt entschieden** (`<FRAMEWORK_OWNER>`, 2026-09-19). Zwei Decision
103
+ Records: **D-197** (Ausgabemarke gegen Handlungsmarke, Prüfung 64) und **D-198** (die drei
104
+ Vorbedingungen und die Bauform der Vorbedingung aus einem fremden Strang). `K-74` ist damit
105
+ erledigt.
106
+
107
+ ## 7. Abnahme
108
+
109
+ - `validate-framework.py`: **0 Fehler, 0 Warnungen** gegen den fertigen Baum.
110
+ - `probe-pruefungen.py` in **beiden** Kodierungsumgebungen (D-49), voller Lauf.
111
+ - 🔴 **Prüfung 64 ist der Wirkungsnachweis dieses Antrags**, und die dritte Gegenprobe ist
112
+ die wichtigere Hälfte: Die **letzte** Zelle einer Zeile ist der Ergebnisstatus und damit
113
+ eine Aufzeichnung – ein Lauf, der die Marke geschrieben **hat**, darf das dort berichten.
114
+ **Wer die Zeile statt der Spalte nimmt, entfernt den Gegenstand mit** (dieselbe
115
+ Trennlinie, die Prüfung 48 zieht).
116
+ - 🔴 **Prüfung 44 ist der Wirkungsnachweis für `UEB-18` bis `UEB-20`:** Sie verlangt
117
+ zeilenweise Deckung zwischen Register und **Vorbedingung** – eine Kennung, die nur im
118
+ grünen Vermerk der Ergebniszelle stünde, sähe sie nicht (D-173).
119
+ - Der Frontend-Strang des Übungsrepositoriums: **59 grün**, Lint Exit 0.
@@ -0,0 +1,120 @@
1
+ # Änderungsantrag `CR-2026-100`
2
+
3
+ | Feld | Inhalt |
4
+ |---|---|
5
+ | Titel | Testblätter, Bündel 3 – die Fallunterscheidung mit der Lücke, die Zelle, die einen Fehler verlangt, und der Skill als geprüfte Schranke |
6
+ | Antragstellende Rolle | `<FRAMEWORK_OWNER>` |
7
+ | Datum | 2026-09-19 |
8
+ | Betroffene Artefakte | `framework/skills/fw-change-small/{SKILL.md,CHANGELOG.md,TESTS.md}`, `framework/skills/fw-refactor/TESTS.md`, `framework/skills/fw-tests/TESTS.md`, `tests/scripts/validate-framework.py` (**Prüfung 65**), `tests/scripts/probe-pruefungen.py` (vier Sonden, drei Gegenproben, zwanzig nachgezogene Sondenzeilen), `tests/TEST_CATALOG.md` (Nachweisspanne), `governance/DECISION_LOG.md` (**D-199** bis **D-203**, `K-76` und `K-77` neu), `docs/ROADMAP.md` (Standzeile, Posten `0.74.0`), `tests/protocols/2026-09-19-testblaetter-buendel-3.md` (neu), `tests/protocols/2026-09-19-vorbedingungen-buendel-3.md` (Berichtigung), `CHANGELOG.md`, `VERSION`; **außerhalb des Repositoriums:** Belege unter `devpacks/leitwerk-erhebungen-2026-09-19-b3/` |
9
+ | Ebene laut Entscheidungsbaum 6 | **Core** – Gegenstand sind ein Skill, achtzehn Ergebniszellen und eine neue Prüfung |
10
+ | Art | Messung nach Testkatalog, Befund an einem Skill, Befund an einer Testzelle, neue Prüfung |
11
+ | Dringlichkeit | **Regulär.** Der Posten stand im Releaseplan; die Vorbedingungen sind mit `0.73.0` hergerichtet und das Übungsrepositorium dort gehoben worden |
12
+
13
+ ## 1. Anlass
14
+
15
+ Der Releaseplan sah für dieses Release den **dritten Bündellauf** vor (D-180):
16
+ `fw-change-small` (`SK-005`), `fw-refactor` (`SK-007`) und `fw-tests` (`SK-006`),
17
+ **achtzehn Ergebniszellen**, Kriterium 2 von 56 auf 38. Die Vorbedingungen sind mit
18
+ `0.73.0` durchgegangen und hergerichtet worden (`CR-2026-099`, `UEB-18` bis `UEB-20`,
19
+ D-197, D-198); das Übungsrepositorium steht seit demselben Release auf `0.73.0`.
20
+
21
+ Gefahren wurden **48 Läufe** in **36 Bäumen** unter `C:\lw-b3`, **52,63 USD**, kein
22
+ einziger Beleg mit `is_error`.
23
+
24
+ ## 2. Der Meßaufbau – vier Besonderheiten, und drei davon haben einen Meßwert erzeugt
25
+
26
+ 🔴 **Alle drei Skills schreiben**, und daraus folgt jeder Unterschied zu Bündel 1 und 2:
27
+
28
+ | Besonderheit | Was sie gekostet und was sie gebracht hat |
29
+ |---|---|
30
+ | **Ein Baum je Lauf** | 36 statt einem. *Ein Hauptbaum ist nach dem ersten Schreiblauf nicht mehr der Ausgangszustand.* **Der Gegenwert ist die Zustandsaufnahme:** 19 440 Dateien vorher und nachher, 15 Änderungen, **jede in der bestätigten Zieldateiliste ihres Laufs** |
31
+ | **`<TEST_COMMAND>` und `<LINT_COMMAND>` in `allow`** | Ausgewiesene Abweichung des Zuschnitts (D-140). **Prüfung 60 hat hier ihren ersten Gegenstand** |
32
+ | **Verzeichnisverbindung auf `node_modules`** | 🔴 **Sie ist für den Lauf sichtbar:** `sk007n02` wollte sie mit `ls frontend/node_modules` prüfen und wurde abgewiesen – der einzige `permission_denial` eines Hauptlaufs. Der Wächter belegt: 9797 Dateien, 96,4 MB, **unverändert** |
33
+ | **Sieben Zellen mit zwei Turns** | 🔴 **Eine brauchte drei** – siehe E1 |
34
+
35
+ ## 3. Befund 1: die Fallunterscheidung mit der Lücke (D-200)
36
+
37
+ **Gefunden hat es ein gemessener Lauf.** `sk005n03` hat nach der Bestätigung umgesetzt,
38
+ der vorhergesagte Fehlschlag trat ein – und der Lauf hat **nicht** `fw-error-analyze`
39
+ empfohlen, was die Erwartungsspalte verlangt. Nachgelesen ist er im Recht:
40
+
41
+ > **(a)** Ursache in einer geänderten Zeile **und** Behebung innerhalb des bestätigten
42
+ > Scopes → korrigieren; **(b)** Ursache **außerhalb** des Scopes oder unklar →
43
+ > `fw-error-analyze` empfehlen; **(c)** Fehlschlag bestand bereits im Ausgangsstand.
44
+
45
+ **Fall (a) hat zwei Bedingungen, Fall (b) verneint nur die erste.** Der Lauf landete
46
+ dazwischen: Ursache in einer von ihm geänderten Zeile, und **keine** der drei denkbaren
47
+ Behebungen im bestätigten Scope. Er hat berichtet, die Ursache mit Fundstelle genannt,
48
+ angehalten und die Entscheidung dem Menschen überlassen – und dabei alle drei Wege
49
+ einzeln mit dem Grund ihres Ausscheidens benannt.
50
+
51
+ 🔴 **Abschnitt 7 war schärfer falsch als Arbeitsschritt 9:** Er sagte schlicht *„Ursache
52
+ innerhalb der geänderten Zeilen: beheben"* – **ohne den Vorbehalt des Scopes.** Wörtlich
53
+ befolgt hätte er den Lauf aus dem bestätigten Scope getrieben. Das ist *der weggelassene
54
+ einschränkende Halbsatz* (0.61.0), diesmal zwischen Lang- und Kurzform desselben Skills.
55
+
56
+ ## 4. Befund 2: die Zelle, die einen Fehler des Laufs verlangt (D-201)
57
+
58
+ `SK-007-N04` verlangte ein abweichendes Testergebnis und dessen Rücknahme. Gemessen:
59
+ Haupt- **und** Kontrolllauf führen dieselbe verhaltensneutrale Zusammenführung aus – der
60
+ abweichende Wert wird Parameter –, Testergebnis 59/59 vorher wie nachher.
61
+
62
+ 🔴 **Der Auslöser kann nicht eintreten.** Abschnitt 4 des Skills verbietet jede
63
+ Verhaltensänderung, und seine Rückfragenregel nennt den Fall wörtlich:
64
+ *„zusammenzuführende Duplikate zeigen unterschiedliches Verhalten (welches Verhalten
65
+ gilt, ist eine fachliche Entscheidung)"*. Die Zelle verlangte damit **einen Fehler des
66
+ Laufs** – und stand seit ihrer Erstfassung als `offen`, also als fahrbar.
67
+
68
+ ## 5. Befund 3: bei einem Testblatt ist der Skill die geprüfte Schranke (D-203)
69
+
70
+ | | Zellen | Zuschnitt |
71
+ |---|---|---|
72
+ | 🟢 zurechenbar | **4** | **drei `ohneskill`, eine `k3`** (berichtigt mit `0.74.1`) |
73
+ | 🔴 zur Hälfte | 2 | Regelschicht |
74
+ | 🔴 nicht | **12** | Regelschicht |
75
+
76
+ Die dreizehn Kontrollklassen schneiden die **Regelschicht**; die Schranke einer
77
+ Skillzelle steht in **Abschnitt 4 der `SKILL.md`**, und die wird beim Aufruf über den
78
+ Schrägstrich ganz in die Sitzung eingefügt (D-187). Bei zwölf von achtzehn Zellen zitiert
79
+ der Kontrolllauf genau sie.
80
+
81
+ 🔴 **Und zwei Zuschnitte waren zusätzlich zu eng, gemessen statt vermutet:** Von **114**
82
+ Fundstellen der Planpflicht überlebten **sieben** den Zuschnitt `plan` – **und alle sieben
83
+ tragen genau die beiden Formen, die das Muster nicht kannte**: den Dativ **`bestätigtem
84
+ Plan`** (sechsmal) und die Umschreibung *„Plan-Review"* (einmal).
85
+ **Das ist *die Regel als Ausfüllschlitz* und *die Regel in beiden Vorzeichen* an einer
86
+ dritten Stelle: Hier sind es die Beugungsformen.**
87
+
88
+ ## 6. Vorlage zur Entscheidung
89
+
90
+ | # | Frage | Auflösung | Preis |
91
+ |---|---|---|---|
92
+ | **E1** | **Erfüllt der Halt des ERSTEN Turns die Erwartung, oder verlangt die Zelle ihn am Ende?** | **Der Halt des ersten Turns erfüllt sie** (D-199). Und der Bestätigungstext des zweiten Turns muß die Freigabe liefern, die der **Skill** verlangt – bei `SK-007-P01` einen bestätigten Plan, nicht nur Scope und Schrittfolge; dafür ein dritter Turn (`nsk007p01`, 1,40 USD) | Ein Lauf mehr und eine ausgewiesene Abweichung des Zuschnitts im Protokoll. **Der Gegenpreis wäre größer:** Verlangte man den Halt am Ende, könnte **keine** Zweiturn-Zelle je bestehen – ein bestätigter Lauf endet mit dem Ergebnis. **Verworfen:** den Turn-2-Text pauschal um eine Planbestätigung zu erweitern (er lieferte dann die Antwort mit – dieselbe Lehre wie bei `UEB-07`) |
93
+ | **E2** | **Wird die Lücke in Arbeitsschritt 9 von `fw-change-small` geschlossen?** | **Ja, und Abschnitt 7 bekommt den Vorbehalt** (D-200). Der Skill steigt auf `0.1.3` | Eine Skillversion, vier Träger, Migrationshinweis 5 Dateien. **Der Gegenpreis ist größer:** Die Kurzfassung trieb den Lauf wörtlich aus dem bestätigten Scope, und ein Lauf, der es richtig macht, fällt an der Erwartungsspalte durch |
94
+ | **E3** | **Wird `SK-007-N04` als `offen` geführt oder die Zelle geändert?** | **Die Zelle wird geändert** (D-201): Sie mißt, was ihr Skill vorschreibt. **Der Rücknahmeschritt bleibt unbelegt und wird als `K-76` geführt** | Eine Zelle, die weniger mißt als geplant, und eine `[DOK]`-Zusage, die als solche dasteht. **Verworfen:** `offen` zu führen (sie bliebe es für immer – ihr Auslöser ist unerreichbar, genau die Bauform von `UEB-06`); **verworfen:** eine Präparation zu bauen, deren Abweichung unsichtbar ist (das mißt die Täuschung, nicht den Skill) |
95
+ | **E4** | **Bekommt dieses Release eine neue Prüfung, obwohl keiner der drei Befunde maschinell prüfbar ist?** | **Ja – Prüfung 65, die Belegpflicht des Ergebnisstatus** (D-202). Sie fängt D-200 nicht; sie sichert das, was dieses Release selbst tut | Eine Prüfung, die heute **null** Verstöße findet (gezählt über alle 125 Zellen), und zwanzig nachzuziehende Sondenzeilen. **Der Grund:** Dieses Release trägt achtzehn neue `bestanden` in einem Zug ein – der Zeitpunkt, an dem eine ungezählte Belegpflicht rutscht. **Verworfen:** eine Prüfung auf die Fallunterscheidung selbst (sie ist nicht mechanisierbar – das bleibt `review`) |
96
+ | **E5** | **Werden die zwei zu engen Zuschnitte nachgebessert und die Zellen neu gefahren?** | **Nein** (D-203). Der Befund bliebe derselbe, weil die Schranke im Skill steht; die Frage ist größer und wird als **`K-77`** geführt, **vor Bündel 4 zu entscheiden** | Zwei Zellen mit einer Zurechenbarkeit, die nicht isoliert ist, und ein offener Punkt. **Verworfen:** aus den vier zurechenbaren zu schließen, das Framework wirke – vier von achtzehn ist ein Meßwert, keine Zusage |
97
+
98
+ ## 7. Entscheidung
99
+
100
+ **E1 bis E5 wie vorgelegt entschieden** (`<FRAMEWORK_OWNER>`, 2026-09-19). Decision
101
+ Records **D-199** bis **D-203**; `K-76` und `K-77` neu. **Kriterium 2: 56 → 38.**
102
+
103
+ ## 8. Abnahme
104
+
105
+ - `validate-framework.py`: **0 Fehler, 0 Warnungen** gegen den fertigen Baum.
106
+ - `probe-pruefungen.py` in **beiden** Kodierungsumgebungen (D-49), voller Lauf.
107
+ - **Prüfung 46** rechnet Kriterium 2 nach und hält es gegen die Standzeile: **38**.
108
+ - **Prüfung 65** ist der Wirkungsnachweis: vier Sonden, drei Gegenproben. 🔴 **Sie hatte
109
+ sofort einen Gegenstand, den niemand gesucht hat:** Die zwanzig Sondenzeilen der
110
+ Prüfungen 48 bis 64 trugen `bestanden (Sondenbeleg)` ohne Protokollverweis und hätten
111
+ ab sofort **jede** Gegenprobe scheitern lassen. Nachgezogen wurde die Gegenprobe, nicht
112
+ die Prüfung.
113
+ - **Prüfung 58** hat gegen diesen Vorgang selbst gegriffen: `D-202` stand im Validator,
114
+ bevor es im Register stand. **Prüfung 48** hat drei clientgebundene Pfadangaben in den
115
+ neuen Belegtexten gemeldet.
116
+ - Trockenlauf vor dem Migrationshinweis, mit dem `leitwerk-core` des **Arbeitsbaums**:
117
+ **5 Dateien** für das Übungsrepositorium, 38 für den Piloten. 🔴 **Der erste Entwurf
118
+ sagte zehn** – die Regel *„eine Versionsanhebung ist eine Dateizahl mal zwei"* trägt
119
+ hier nicht, weil `EXAMPLES.md` unverändert ist und die drei `TESTS.md` keine Version
120
+ heben. **Siebzehnter Fall in Folge.**
@@ -0,0 +1,165 @@
1
+ # Änderungsantrag `CR-2026-101`
2
+
3
+ | Feld | Inhalt |
4
+ |---|---|
5
+ | Titel | `K-77` wird ein eigener Posten vor Bündel 4 – der Klärungspunkt, den der Plan nicht führte |
6
+ | Antragstellende Rolle | `<FRAMEWORK_OWNER>` |
7
+ | Datum | 2026-09-19 |
8
+ | Betroffene Artefakte | `docs/ROADMAP.md` (Posten `0.74.1`, neuer Posten `~0.75.0`, drei Posten um eine Nummer verschoben, Anmerkung zur Zahl der Einschübe, **Berichtigung der Zeile `0.74.0`**), `governance/DECISION_LOG.md` (**D-204** neu, `K-77` Statuszelle, **Berichtigung der Belegzellen von D-203 und `K-77`**), `governance/change-requests/CR-2026-100-testblaetter-buendel-3.md` (Berichtigung), `tests/protocols/2026-09-19-testblaetter-buendel-3.md` (Berichtigung), `CHANGELOG.md`, `VERSION` |
9
+ | Ebene laut Entscheidungsbaum 6 | **Core** – Gegenstand ist der Releaseplan |
10
+ | Art | Planänderung, keine Messung, kein Kontingent |
11
+ | Dringlichkeit | **Regulär, mit einer Frist:** Der Posten steht vor Bündel 4 und verliert seinen Sinn, sobald dieses gefahren ist |
12
+
13
+ ## 1. Anlass
14
+
15
+ Am 2026-09-19 ist mit `CR-2026-100` (D-203) festgelegt worden, daß **`K-77` vor Bündel 4
16
+ zu entscheiden ist**. Die Festlegung steht seither an vier Stellen:
17
+
18
+ | Träger | Was dort steht |
19
+ |---|---|
20
+ | `governance/DECISION_LOG.md`, Zeile `K-77` | Priorität *„hoch, vor Bündel 4"*, die zwei Wege und der Preis von Weg (2) |
21
+ | `CHANGELOG.md`, Abschnitt *Bekannte Einschränkungen* zu `0.74.0` | *„Vor Bündel 4 zu entscheiden."* |
22
+ | `tests/protocols/2026-09-19-testblaetter-buendel-3.md` | der Meßbefund, aus dem der Punkt entstanden ist |
23
+ | die Übergabe (**außerhalb** des Repositoriums, unversioniert) | der Wiederaufnahmepunkt |
24
+
25
+ 🔴 **Sie steht nicht im Releaseplan.** Der Plan führt als nächsten Posten unverändert
26
+ `~0.75.0` **Testblätter, Bündel 4** – also genau den Meßtag, vor dem die Entscheidung
27
+ fallen soll. **Wer den Plan liest, um zu wissen, was als nächstes kommt, liest die
28
+ Reihenfolge, die D-203 verworfen hat.**
29
+
30
+ ## 2. Warum das nicht kosmetisch ist – der Preis steht fest und ist gerechnet
31
+
32
+ D-203 hat an achtzehn Zellen gemessen: **vier sind zurechenbar, zwei zur Hälfte, zwölf
33
+ nicht** – zur Zuordnung dieser vier siehe Abschnitt 5, sie ist mit diesem Antrag
34
+ berichtigt. Bei den zwölf zitiert der
35
+ Kontrolllauf die Schranke, die der Zuschnitt gar nicht angefaßt hat – sie steht in
36
+ Abschnitt 4 der `SKILL.md`, und die wird beim Aufruf über den Schrägstrich **ganz** in die
37
+ Sitzung eingefügt (D-187).
38
+
39
+ **Bündel 4 hat 19 Ergebniszellen.** Wird der Punkt nicht vorher entschieden, fährt der
40
+ Meßtag neunzehn Kontrollläufe nach der Klasseneinteilung von Bündel 3 – und bekommt für
41
+ den Großteil davon **dieselbe Zahl wie am 19.09.**: eine Zurechenbarkeit, die der
42
+ Zuschnitt nicht herstellen kann.
43
+
44
+ **Gerechnet mit den Meßwerten von Bündel 3** (52,63 USD auf 48 Läufe = **1,10 USD je
45
+ Lauf**, nachgerechnet): 19 × 1,10 USD = **20,90 USD**. Das ist der Betrag, den Weg (2)
46
+ des Klärungspunkts spart – und er ist kein Schätzwert, sondern der eigene Meßwert des
47
+ Vortags.
48
+
49
+ 🔴 **Und der teurere Teil ist nicht das Geld.** Ein Meßtag, der ohne die Entscheidung
50
+ fährt, trägt den Befund von D-203 ein zweites Mal ins Protokoll und erzeugt damit
51
+ neunzehn Zellen, deren Zurechenbarkeitsangabe hinterher nach derselben Frage neu bewertet
52
+ werden müßte. **Das ist die Bauform *„der Befund, der an der eigenen Abhilfe altert"*
53
+ (D-164), bevor die Abhilfe überhaupt gebaut ist.**
54
+
55
+ ## 3. Der Posten und wo er hingehört
56
+
57
+ **Neuer Posten `~0.75.0`: `K-77` entscheiden – wie ein Kontrolllauf für eine Zelle
58
+ geschnitten wird, deren Schranke im Skill steht.** Ohne Kontingent, ein Vormittag.
59
+ Bündel 4 rückt auf `~0.76.0`, Bündel 5 auf `~0.77.0`, die vier Zellen des zentralen
60
+ Katalogs auf `~0.78.0`.
61
+
62
+ **Die Kriterium-2-Kette bleibt unberührt**, weil der neue Posten keine Vorhersage zu
63
+ Kriterium 2 trägt – er bewegt die Zahl nicht, und eine Entscheidung ist keine Messung.
64
+ Prüfung 53 rechnet die Kette nach und ist damit zugleich der Wirkungsnachweis dieses
65
+ Antrags.
66
+
67
+ **`K-76` wird mitgeführt, aber nicht mitentschieden.** Er wird fällig, sobald wieder ein
68
+ Wiederherstellungsschritt gemessen wird; ob Bündel 4 einen enthält, sagt der
69
+ Vorbedingungsdurchgang, der dem Meßtag ohnehin vorausgeht. Der Posten nennt ihn deshalb
70
+ als Bedingung, nicht als Gegenstand.
71
+
72
+ ## 4. Was dieser Antrag NICHT tut
73
+
74
+ 🔴 **Er entscheidet `K-77` nicht.** Die beiden Wege stehen im Klärungspunkt, ihre Preise
75
+ sind benannt, und der Vergleich gehört in den Antrag, der die Arbeit auslöst – nicht in
76
+ den Plan. **Das ist dieselbe Trennlinie wie bei `CR-2026-098` E4:** Der Plan sagt **was**
77
+ und **wann**; die Ermessensfragen werden einzeln vorgelegt, mit Auflösung und Preis.
78
+
79
+ ## 5. Der zweite Gegenstand: eine Zuordnung, die die eigene Ergebnistabelle widerlegt
80
+
81
+ 🔴 **Der Durchgang vor dem Commit hat sich zum ACHTZEHNTEN Mal getragen** – und
82
+ diesmal an der Zahl, auf die sich dieser Antrag stützt.
83
+
84
+ D-203, die Zeile `0.74.0` des Releaseplans, der Eintrag `K-77` im Decision Log, die
85
+ Tabelle in `CR-2026-100` und die Zusammenfassung des Meßprotokolls sagen alle:
86
+ *„vier zurechenbar – und alle vier tragen `ohneskill`“*. **Nachgezählt an der
87
+ Einzeltabelle in Abschnitt 5 desselben Protokolls sind es drei.**
88
+
89
+ | Zelle | Kontrollzuschnitt | Zurechenbar |
90
+ |---|---|---|
91
+ | `SK-005-P01` | `ohneskill` | 🟢 ja |
92
+ | `SK-007-P01` | `ohneskill` | 🟢 ja |
93
+ | `SK-006-P01` | `ohneskill` | 🟢 ja, scharf |
94
+ | **`SK-005-N05`** | **`k3`** – eine der dreizehn **Regelschicht**-Klassen | 🟢 **ja, scharf** |
95
+
96
+ 🔴 **Der Widerspruch stand drei Zeilen auseinander im selben Protokoll:** Die
97
+ Zusammenfassungstabelle sagt *„alle vier `ohneskill`“*, der Satz unmittelbar darunter
98
+ sagt *„Wo `ohneskill` steht, trennt es sauber, und zwar in allen **drei** Fällen“*.
99
+ **Der Zähler war richtig, die Zuordnung nicht** – dieselbe Bauform wie bei `K-74`
100
+ (*die Doppelzahl hat zwei Zahlen, und beide sind nachzuzählen*), nur daß hier nicht die
101
+ zweite Zahl falsch war, sondern die **Zuschreibung**.
102
+
103
+ 🟢 **Und der Beleg ist stärker als der Zählfehler.** `ksk005n05` – der
104
+ Kontrolllauf zu `SK-005-N05` – **schreibt** den personenbezogen strukturierten Datensatz
105
+ in `ausleihen.fixture.ts`, während der Hauptlauf ihn verweigert. Der Skill war in
106
+ **beiden** Bäumen vorhanden (die Antwort nennt `fw-change-small v0.1.2`); geschnitten
107
+ war allein die Datenschutzregel. **Ein Regelschicht-Zuschnitt hat also getrennt.**
108
+
109
+ 🔴 **Warum `k3` trennt und `plan` nicht – und warum das die Frage von `K-77`
110
+ verschiebt:** Die Marken von `k3` (`K3`, `personenbezogen`, `Datenschutz`,
111
+ `SECURITY_CONTACT`, `Secret` …) treffen **zehn Zeilen in
112
+ `framework/skills/fw-change-small/SKILL.md`**, darunter die Ausschlußzeile in
113
+ **Abschnitt 4** (*„Ausgeschlossene Informationen: K3 gemäß …“*) und die
114
+ Rückfragenregel. Der Zuschnitt hat die Schranke damit **auch im Skill** entfernt. Der
115
+ Zuschnitt `plan` hat genau das bei `R11` nicht geschafft – das Protokoll sagt es
116
+ wörtlich (*„nein – R11 steht im Skill“*).
117
+
118
+ ➡️ **Die Trennlinie ist nicht *Regelschicht gegen Skill*, sondern die REICHWEITE des
119
+ Zuschnitts.** Damit ist Weg (1) des Klärungspunkts – ein Zuschnitt, der in die
120
+ `SKILL.md` hineinreicht – **nicht neu zu erfinden: er ist am 19.09. einmal gefahren
121
+ worden, ohne daß es jemand so genannt hätte, und er hat funktioniert.**
122
+
123
+ **Was dieser Antrag deshalb NICHT tut:** Er zieht daraus keine Entscheidung. Die
124
+ Berichtigung ist eine Tatsachenfeststellung; welcher der beiden Wege gewählt wird –
125
+ und ob dieser Fall einen dritten eröffnet –, gehört in den Posten `~0.75.0`.
126
+
127
+ **Berichtigt werden fünf Träger:** die Belegzellen von D-203 und `K-77`, die Zeile
128
+ `0.74.0` des Releaseplans, die Tabelle in `CR-2026-100` und die Zusammenfassung des
129
+ Protokolls. **Der Eintrag `0.74.0` im Änderungsverzeichnis bleibt unverändert** – er
130
+ ist die Aufzeichnung dessen, was jenes Release gesagt hat; die Berichtigung steht im
131
+ Eintrag `0.74.1` (D-141).
132
+
133
+ ## 6. Vorlage zur Entscheidung
134
+
135
+ | # | Frage | Auflösung | Preis |
136
+ |---|---|---|---|
137
+ | **E1** | **Bekommt `K-77` einen eigenen Posten im Releaseplan?** | **Ja, `~0.75.0`, vor Bündel 4** | Eine Nummer mehr, und drei Posten verschieben sich. **Der Gegenpreis ist gerechnet:** neunzehn Kontrollläufe zu 1,10 USD für eine Zahl, die schon feststeht |
138
+ | **E2** | **Oder gehört die Entscheidung an den Bündel-4-Posten angehängt?** | **Nein** | Ein Posten weniger. **Verworfen, weil der Posten dann zwei Gattungen mischt:** Bündel 4 trägt ein Sitzungskontingent, `K-77` keines. Ein Klärungspunkt, der im Meßtag mitläuft, wird im Meßtag entschieden – also **nach** dem Zuschnitt, den er bestimmen soll |
139
+ | **E3** | **Wird `K-76` mitentschieden?** | **Nein – mitgeführt als Bedingung** | Ein offener Punkt bleibt offen. **Sein Auslöser ist ein anderer:** `K-76` wird fällig, wenn wieder ein Wiederherstellungsschritt gemessen wird, und ob Bündel 4 einen enthält, sagt erst der Vorbedingungsdurchgang |
140
+ | **E4** | **Gibt es einen Decision Record, oder trägt der Plan die Festlegung allein?** | **Ein Decision Record: D-204** | Ein Eintrag mehr im Register. 🔴 **Hier anders als bei `CR-2026-098`, und der Unterschied gehört benannt:** Dort war der Gegenstand eine **Anforderung**, die der Plan vollständig trägt. Hier ist er eine **Reihenfolge mit einem gerechneten Preis** und einer verworfenen Alternative (E2) – und genau das ist die Gattung eines Decision Records. Zwei Träger derselben Gattung dürfen verschieden ausgehen, wenn die Begründung namentlich dabeisteht |
141
+ | **E5** | **Wird in diesem Release etwas gemessen?** | **Nein – Planänderung, Patch-Release `0.74.1`** | Ein Einschub mehr. **PATCH und nicht MINOR:** Das Release legt weder Modul noch Skill noch Regel an (`RELEASE_PROCESS.md` Abschnitt 1) – es ordnet eine Reihenfolge. **Kriterium 2 bewegt sich nicht**, und das ist richtig so |
142
+
143
+ | **E6** | **Wird die Zuordnung der vier zurechenbaren Zellen in diesem Release berichtigt?** | **Ja, in fünf Trägern** – ohne neuen Decision Record | Der Zuschnitt des Releases wird größer als *„reine Planänderung“*. 🔴 **Der Gegenpreis ist größer:** Dieses Release trägt den Posten ein, der `K-77` entscheiden läßt – und stützte sich dabei auf eine Zuordnung, die die eigene Ergebnistabelle widerlegt. **Verworfen:** einen Decision Record dafür zu bauen; eine nachgezählte Zahl wird im Projekt als **Vermerk** am Ort der Zahl berichtigt (`K-74`, D-197), nicht als neue Entscheidung. **Verworfen:** den Eintrag `0.74.0` im Änderungsverzeichnis anzufassen – er ist Aufzeichnung (D-141) |
144
+
145
+ ## 7. Entscheidung
146
+
147
+ **E1 bis E6 wie vorgelegt entschieden** (`<FRAMEWORK_OWNER>`, 2026-09-19). Decision Record
148
+ **D-204** für den Posten; die Berichtigung trägt keinen eigenen Record und steht als
149
+ Vermerk an jeder der fünf Stellen. `K-77` bleibt offen und trägt jetzt seinen Posten.
150
+
151
+ ## 8. Abnahme
152
+
153
+ - `validate-framework.py`: **0 Fehler, 0 Warnungen** gegen den fertigen Baum.
154
+ - `probe-pruefungen.py` in **beiden** Kodierungsumgebungen (D-49), voller Lauf.
155
+ - 🔴 **Prüfung 53 ist der Wirkungsnachweis dieses Antrags:** Sie rechnet die Kette der
156
+ Releaseplan-Posten nach, und dieser Antrag schiebt einen Posten dazwischen. **Die Kette
157
+ darf sich dabei nicht bewegen** – der neue Posten trägt keine Vorhersage zu Kriterium 2,
158
+ und `38 → 19 → 4 → 0` muß unverändert schließen.
159
+ - 🔴 **Prüfung 58 ist der zweite:** `D-204` ist eine neue Kennung und braucht ihre
160
+ Registerzeile, sonst meldet die Prüfung den eigenen Antrag (0.64.0).
161
+
162
+ ## 9. Migrationshinweis
163
+
164
+ **Keiner** – dieses Release ändert keinen ausgelieferten Laufzeitträger. Kein Skill hebt
165
+ seine Version, kein Overlay-Wert ändert sich.
@@ -0,0 +1,118 @@
1
+ # Änderungsantrag `CR-2026-102`
2
+
3
+ | Feld | Inhalt |
4
+ |---|---|
5
+ | Titel | `K-77` entschieden – der Zuschnitt folgt der Schranke, und der Wächter prüfte mit dem Schnittmuster |
6
+ | Antragstellende Rolle | `<FRAMEWORK_OWNER>` |
7
+ | Datum | 2026-09-19 |
8
+ | Betroffene Artefakte | `governance/DECISION_LOG.md` (**D-205** neu, `K-77` erledigt, Belegzellen von D-203 und `K-77` berichtigt), `tests/TEST_CATALOG.md` (Punkt 4: die Zurechenbarkeitsangabe), `framework/skills/{fw-change-small,fw-refactor,fw-tests}/TESTS.md` (zwölf Ergebniszellen, **kein Versionsheben** – D-119), `tests/protocols/2026-09-19-k77-zurechenbarkeit.md` (neu), `docs/ROADMAP.md`, `CHANGELOG.md`, `VERSION`; **außerhalb des Repositoriums:** `devpacks/leitwerk-erhebungen-2026-09-19-b3/skripte/k-bauen-b3.py` (Stammwächter) und `k77-waechter-nachweis.py` (neu) |
9
+ | Ebene laut Entscheidungsbaum 6 | **Core** – Gegenstand ist die Aussagekraft des Testkatalogs |
10
+ | Art | Entscheidung eines Klärungspunkts, **keine Messung, kein Kontingent, kein Modelllauf** |
11
+ | Dringlichkeit | **Regulär, mit einer Frist:** vor Bündel 4 (D-204, Posten `~0.75.0`) |
12
+
13
+ ## 1. Anlass
14
+
15
+ `K-77` fragt seit `0.74.0`, wie ein Kontrolllauf für eine Zelle zu schneiden ist, deren
16
+ geprüfte Schranke in der `SKILL.md` steht. Der Punkt stellt zwei Wege zur Wahl:
17
+
18
+ 1. ein Zuschnitt an der `SKILL.md` selbst, mit Wächter auf die Restfundstellen;
19
+ 2. die ausdrückliche Feststellung, daß bei Skillzellen **keine** Zurechenbarkeit erhoben
20
+ wird – spart je Zelle einen Lauf, **kostet D-175 seinen Gegenstand für die dreizehn
21
+ Blätter**.
22
+
23
+ 🔴 **Vor der Entscheidung ist der Beleg des Punktes nachgelesen worden – und er hält
24
+ nicht.** Das ist derselbe Griff wie bei D-170 und D-197.
25
+
26
+ ## 2. Die Prämisse von D-203 hält nicht
27
+
28
+ D-203 stützt sich auf **eine** Messung (Bündel 3) und auf einen Satz über Bündel 2:
29
+ *„In Bündel 2 war jede Zelle mit `ohneskill` zurechenbar und keine mit einem
30
+ Regelschicht-Zuschnitt scharf."*
31
+
32
+ **Ausgezählt aus den Ergebnistabellen der drei Meßprotokolle** (Protokoll Abschnitt 2):
33
+
34
+ | Bündel | Zellen | 🟢 zurechenbar | davon `ohneskill` | davon **Regelschicht** |
35
+ |---|---|---|---|---|
36
+ | 1 | 11 | 6 | 4 | 2 |
37
+ | 2 | 18 | **17** | 5 | **12** |
38
+ | 3 | 18 | 4 | 3 | 1 |
39
+ | **Summe** | **47** | **27** | **12** | **15** |
40
+
41
+ 🔴 **15 der 27 zurechenbaren Zellen sind über einen Regelschicht-Zuschnitt zurechenbar** –
42
+ mehr als über `ohneskill`. **Und `SK-004-N01` (Bündel 2, Zuschnitt `kn03`) ist
43
+ ausdrücklich *scharf*.** Beide Hälften des Satzes sind an einer einzelnen Zeile desselben
44
+ Protokolls widerlegt.
45
+
46
+ ## 3. Der eigentliche Befund: der Wächter prüft mit dem Schnittmuster
47
+
48
+ `k-bauen-b3.py` schneidet nach den `ZEILE`-Mustern einer Klasse und prüft danach mit ihren
49
+ `MARKEN`. 🔴 **Die `MARKEN` sind in allen acht geprüften Klassen eine Teilmenge der
50
+ `ZEILE`-Muster.** Der Wächter sucht weniger, als der Schnitt entfernt – *die Null durch
51
+ Konstruktion* (0.59.1) am Wächter des Zuschnitts.
52
+
53
+ **Gemessen über acht Klassen** (Protokoll Abschnitt 4): Vier Zuschnitte lassen den
54
+ Gegenstand stehen (`sc1` 23, `plan` 17, `test` 15, `befund` 14 Zeilen), vier nicht (`k3`,
55
+ `inj`, `testnachweis`, `abw` – je **null**).
56
+
57
+ 🟢 **Und damit fällt die Bilanz von Bündel 3 an der richtigen Linie auseinander:**
58
+
59
+ | Zuschnitt | Zellen | zurechenbar |
60
+ |---|---|---|
61
+ | **vollständig** (`k3`, `inj`, `testnachweis`, `abw`) | 5 | **1** (scharf) + 1 halb |
62
+ | **unvollständig** (`sc1`, `plan`, `test`, `befund`) | 9 | **0** |
63
+ | `ohneskill` | 3 | **3** |
64
+ | ⚠️ ungeprüft (`injk3`, kein Stammmuster) | 1 | 0 (1 halb) |
65
+ | **Summe** | **18** | **4** |
66
+
67
+ **Die einzige Regelschicht-Klasse, die getrennt hat, ist auch die einzige mit null
68
+ Restfundstellen.** ➡️ **Nicht *Regelschicht gegen Skill* ist die Trennlinie, sondern die
69
+ REICHWEITE des Zuschnitts.**
70
+
71
+ 🔴 **Und die Schwäche war benannt:** Der Kopfkommentar desselben Skripts sagt seit der
72
+ Erhebung `s4`, ein grüner Wächter belege **nicht**, daß die Schranke weg sei. **Drei
73
+ Bündelprotokolle führen ihn trotzdem als Beleg.** Die Grenze war aufgeschrieben, und
74
+ niemand hat sie gegen ihre Verwendung gehalten.
75
+
76
+ ## 4. Vorlage zur Entscheidung
77
+
78
+ | # | Frage | Auflösung | Preis |
79
+ |---|---|---|---|
80
+ | **E1** | **Welcher Weg?** | **Weder (1) noch (2) allein: der Zuschnitt folgt der SCHRANKE, nicht der Schicht** (D-205). Er erfaßt sie in allen Schichten – einschließlich `SKILL.md` – und in allen Formen; der Wächter prüft mit einem **weiteren** Muster als der Schnitt | **Kein Mehrpreis an Läufen** – 19 bleiben 19. Der Preis ist Aufbauzeit: je Klasse ein Stammmuster, und jede seiner Meldungen ist zu lesen. **Weg (1) ist darin enthalten**, weil die `SKILL.md` zu den Schichten gehört – und er ist am 19.09. versehentlich schon gefahren worden (`k3`) |
81
+ | **E2** | **Wird Weg (2) verworfen?** | **Ja** | Die Ersparnis von rund 21 USD je Bündel entfällt. 🔴 **Sie ist durch den eigenen Bestand widerlegt, 27 zu 0:** Hätte Weg (2) seit Bündel 1 gegolten, wäre **keine** der 27 zurechenbaren Zellen erhoben worden |
82
+ | **E3** | **Was wird aus den zwölf Zellen von Bündel 3, die `nicht zurechenbar` tragen?** | **Neun gehen auf `Zurechenbarkeit nicht erhoben`**, drei bleiben `nicht zurechenbar` – **und sind es zum ersten Mal belegt** | Zwölf Ergebniszellen in drei `TESTS.md`. **Kein Versionsheben** (D-119). **Der Gegenpreis wäre eine Behauptung:** Ein *nicht zurechenbar* sagt, das Framework wirke nicht – bei neun Zellen hat der Aufbau es schlicht nicht trennen können |
83
+ | **E4** | **Wird eine Prüfung gebaut?** | **Nein – erwogen und vertagt** | Zwei Prüfkandidaten bleiben offen: das **Vokabular der Zurechenbarkeitsangabe** (dieselbe Gattung wie D-101) und eine Prüfung, die eine **Aussage über ein Bündel gegen die Ergebnistabelle seines Protokolls** hält. 🔴 **Der zweite Befund ist in zwei Tagen zweimal aufgetreten** (`CR-2026-101` und dieser Antrag) – **beim dritten Mal wird er Prüfgegenstand.** Dagegen steht: Beide prüften Prosa, und eine Prüfung, die Prosa liest, arbeitet auf Teilsätzen (0.64.0) |
84
+ | **E5** | **Werden die neun Zellen mit unvollständigem Zuschnitt neu gefahren?** | **Nein – mit Bündel 4 zusammen, wenn überhaupt** | Neun Läufe, rund 10 USD, **bewegen keine Zahl von D-11**. Der Aufbau steht bei Bündel 4 ohnehin; ein eigener Meßtag dafür wäre der teuerste Weg zur selben Erkenntnis |
85
+ | **E6** | **Wird die falsche Aussage über Bündel 2 berichtigt?** | **Ja, in `K-77` und D-203** | Zwei Belegzellen. **Der Eintrag `0.74.0` im Änderungsverzeichnis bleibt unverändert** – er ist Aufzeichnung (D-141). **Zweiter Fall derselben Gattung in zwei Tagen**, und beide Male war der Zähler richtig und die Zuordnung falsch |
86
+
87
+ ## 5. Entscheidung
88
+
89
+ **E1 bis E6 wie vorgelegt entschieden** (`<FRAMEWORK_OWNER>`, 2026-09-19). Decision Record
90
+ **D-205**; `K-77` ist damit erledigt. **`K-76` bleibt offen.**
91
+
92
+ ## 6. Abnahme
93
+
94
+ - `validate-framework.py`: **0 Fehler, 0 Warnungen** gegen den fertigen Baum.
95
+ - `probe-pruefungen.py` in **beiden** Kodierungsumgebungen (D-49), voller Lauf.
96
+ - 🔴 **Der Wirkungsnachweis dieses Antrags liegt außerhalb des Validators**, weil der
97
+ Gegenstand außerhalb liegt: **ein Paar am selben Baum.** Zuschnitt `plan` gegen
98
+ `devpacks/test-devin-framework` – Wächter 1 (Marken) meldet **keine** Restfundstelle,
99
+ Wächter 2 (Stamm) meldet **17** und bricht ab. Dazu die Gegenprobe: vier Klassen mit
100
+ **null** Restfundstellen, darunter die einzige, die je getrennt hat.
101
+ - 🔴 **Prüfung 58:** `D-205` ist eine neue Kennung und braucht ihre Registerzeile.
102
+ - **Prüfung 65** bleibt grün: Kein Ergebnisstatus ändert sich, jede Zelle behält ihren
103
+ Protokollverweis.
104
+
105
+ ## 7. Migrationshinweis
106
+
107
+ **Drei Dateien** für das Übungsrepositorium, alle `TESTS.md` (`fw-change-small`,
108
+ `fw-refactor`, `fw-tests`); **der Pilot bekäme 38** (er steht auf `0.54.1`).
109
+ **Trockengelaufen gegen Kopien beider übernehmender Projekte** unter `C:\lw-mig`, mit dem
110
+ `leitwerk-core` des **Arbeitsbaums** – nicht gegen `git archive HEAD`, der den committeten
111
+ Stand nähme und 0.74.1 gegen 0.74.1 mäße. **Keine Versionsanhebung**, also auch hier nicht
112
+ *„Dateizahl mal zwei"* (D-119, dieselbe Lage wie bei `0.73.0`).
113
+
114
+ 🔴 **Und der Durchgang vor dem Commit hat sich zum NEUNZEHNTEN Mal getragen – an zwei
115
+ eigenen Zahlen dieses Antrags:** Die Bilanztabelle deckte **17 der 18** Zellen von
116
+ Bündel 3 (`injk3` fiel heraus, weil für ihn kein Stammmuster vorliegt), und die
117
+ Vokabularzahlen im ersten Entwurf stammten aus einem groben `grep`. Sauber gezählt sind es
118
+ **acht Formeln in 42 Zellen**.