@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.
- package/.gitattributes +16 -0
- package/.gitignore +51 -0
- package/.koolie/QUELLREPOSITORIUM.md +18 -0
- package/.koolie/core/CHANGELOG.md +11832 -0
- package/.koolie/core/LICENSE +674 -0
- package/.koolie/core/LICENSE-HINWEIS.md +98 -0
- package/.koolie/core/OWNERS.md +36 -0
- package/.koolie/core/VERSION +1 -0
- package/.koolie/core/banner.py +397 -0
- package/.koolie/core/build/README.md +34 -0
- package/.koolie/core/build/assemble.py +354 -0
- package/.koolie/core/build/build-docx.py +194 -0
- package/.koolie/core/build/doc/00-kopf.md +18 -0
- package/.koolie/core/build/doc/01-executive-summary.md +24 -0
- package/.koolie/core/build/doc/02-zielbild.md +13 -0
- package/.koolie/core/build/doc/03-ziele-nichtziele.md +28 -0
- package/.koolie/core/build/doc/04-geltungsbereich.md +25 -0
- package/.koolie/core/build/doc/05-glossar.md +47 -0
- package/.koolie/core/build/doc/06-leitprinzipien.md +5 -0
- package/.koolie/core/build/doc/07-architektur.md +60 -0
- package/.koolie/core/build/doc/07a-abbildungsschicht.md +66 -0
- package/.koolie/core/build/doc/08-trennung.md +24 -0
- package/.koolie/core/build/doc/09-betriebsmodi.md +18 -0
- package/.koolie/core/build/doc/10-arbeitsablauf.md +5 -0
- package/.koolie/core/build/doc/11-datenschutz.md +5 -0
- package/.koolie/core/build/doc/12-sicherheit.md +5 -0
- package/.koolie/core/build/doc/13-risiko.md +5 -0
- package/.koolie/core/build/doc/14-rollen.md +9 -0
- package/.koolie/core/build/doc/15-referenzstruktur.md +124 -0
- package/.koolie/core/build/doc/16-agentenanweisung.md +8 -0
- package/.koolie/core/build/doc/17-overlay.md +29 -0
- package/.koolie/core/build/doc/18-skill-standard.md +5 -0
- package/.koolie/core/build/doc/19-skill-template.md +5 -0
- package/.koolie/core/build/doc/20-referenz-skills.md +70 -0
- package/.koolie/core/build/doc/21-prompts.md +53 -0
- package/.koolie/core/build/doc/22-checklisten.md +49 -0
- package/.koolie/core/build/doc/23-entscheidungsbaeume.md +29 -0
- package/.koolie/core/build/doc/24-onboarding.md +33 -0
- package/.koolie/core/build/doc/25-governance.md +35 -0
- package/.koolie/core/build/doc/26-qs-test.md +9 -0
- package/.koolie/core/build/doc/27-pilot.md +13 -0
- package/.koolie/core/build/doc/28-uebernahme.md +5 -0
- package/.koolie/core/build/doc/29-grenzen.md +87 -0
- package/.koolie/core/build/doc/30-roadmap.md +5 -0
- package/.koolie/core/build/doc/31-anhaenge.md +151 -0
- package/.koolie/core/build/doc/32-abschluss.md +92 -0
- package/.koolie/core/build/ref-a4.docx +0 -0
- package/.koolie/core/checklists/01-preflight.md +54 -0
- package/.koolie/core/checklists/02-privacy-context.md +51 -0
- package/.koolie/core/checklists/03-before-code-change.md +51 -0
- package/.koolie/core/checklists/04-review-ai-code.md +58 -0
- package/.koolie/core/checklists/05-testing.md +48 -0
- package/.koolie/core/checklists/06-security.md +50 -0
- package/.koolie/core/checklists/07-new-dependency.md +57 -0
- package/.koolie/core/checklists/08-merge-request.md +47 -0
- package/.koolie/core/checklists/09-onboarding.md +52 -0
- package/.koolie/core/checklists/10-project-adoption.md +74 -0
- package/.koolie/core/checklists/11-framework-release.md +71 -0
- package/.koolie/core/checklists/README.md +28 -0
- package/.koolie/core/clientmap.py +1358 -0
- package/.koolie/core/clients/README.md +113 -0
- package/.koolie/core/clients/_template/CLIENT_PACK.md +197 -0
- package/.koolie/core/clients/claude-code/CLIENT_PACK.md +383 -0
- package/.koolie/core/clients/claude-code/manifest.json +232 -0
- package/.koolie/core/clients/claude-code/root-template/.claude/README.md +127 -0
- package/.koolie/core/clients/cursor/CLIENT_PACK.md +229 -0
- package/.koolie/core/clients/cursor/manifest.json +330 -0
- package/.koolie/core/clients/cursor/root-template/.cursor/README.md +36 -0
- package/.koolie/core/clients/devin-desktop/CLIENT_PACK.md +251 -0
- package/.koolie/core/clients/devin-desktop/manifest.json +163 -0
- package/.koolie/core/clients/devin-desktop/root-template/.devin/README.md +79 -0
- package/.koolie/core/clients/kiro/CLIENT_PACK.md +223 -0
- package/.koolie/core/clients/kiro/manifest.json +300 -0
- package/.koolie/core/clients/kiro/root-template/.kiro/README.md +37 -0
- package/.koolie/core/clients/openai-codex/CLIENT_PACK.md +257 -0
- package/.koolie/core/clients/openai-codex/manifest.json +208 -0
- package/.koolie/core/clients/openai-codex/root-template/.codex/README.md +35 -0
- package/.koolie/core/decision-trees/01-context-allowed.md +46 -0
- package/.koolie/core/decision-trees/02-may-ai-do-task.md +47 -0
- package/.koolie/core/decision-trees/03-analyze-or-modify.md +50 -0
- package/.koolie/core/decision-trees/04-required-review.md +49 -0
- package/.koolie/core/decision-trees/05-stop-or-escalate.md +47 -0
- package/.koolie/core/decision-trees/06-rule-placement.md +58 -0
- package/.koolie/core/decision-trees/README.md +14 -0
- package/.koolie/core/docs/ADOPTION_GUIDE.md +582 -0
- package/.koolie/core/docs/DOCUMENTATION_STANDARD.md +91 -0
- package/.koolie/core/docs/PLACEHOLDER_REGISTRY.md +79 -0
- package/.koolie/core/docs/ROADMAP.md +848 -0
- package/.koolie/core/docs/RUNTIME_GLOSSARY.md +113 -0
- package/.koolie/core/examples/README.md +11 -0
- package/.koolie/core/examples/example-ergebnisbericht.md +31 -0
- package/.koolie/core/examples/example-mr-description.md +31 -0
- package/.koolie/core/examples/example-overlay-runtime.md +48 -0
- package/.koolie/core/framework/core/00-principles.md +93 -0
- package/.koolie/core/framework/core/01-governance.md +58 -0
- package/.koolie/core/framework/core/02-privacy.md +141 -0
- package/.koolie/core/framework/core/03-security.md +86 -0
- package/.koolie/core/framework/core/04-quality.md +48 -0
- package/.koolie/core/framework/core/05-working-model.md +199 -0
- package/.koolie/core/framework/core/06-prompting-rules.md +51 -0
- package/.koolie/core/framework/core/07-review-rules.md +52 -0
- package/.koolie/core/framework/core/08-skill-conventions.md +115 -0
- package/.koolie/core/framework/core/09-risk-model.md +87 -0
- package/.koolie/core/framework/core/10-error-escalation.md +53 -0
- package/.koolie/core/framework/org-policies/MAPPING_CLASSIFICATION.md +16 -0
- package/.koolie/core/framework/org-policies/README.md +29 -0
- package/.koolie/core/framework/overlay-patterns/general/documents/branching-strategy/muster-general.md +43 -0
- package/.koolie/core/framework/overlay-patterns/general/documents/coding-guidelines/muster-general.md +82 -0
- package/.koolie/core/framework/overlay-patterns/general/documents/definition-of-done/muster-general.md +52 -0
- package/.koolie/core/framework/overlay-patterns/general/documents/definition-of-ready/muster-general.md +54 -0
- package/.koolie/core/framework/overlay-patterns/general/documents/quality/muster-general.md +59 -0
- package/.koolie/core/framework/overlay-patterns/general/documents/security/muster-general.md +52 -0
- package/.koolie/core/framework/overlay-patterns/general.md +150 -0
- package/.koolie/core/framework/role-packs/README.md +63 -0
- package/.koolie/core/framework/role-packs/_template/ROLE_PACK.md +58 -0
- package/.koolie/core/framework/role-packs/requirements-engineering/ROLE_PACK.md +158 -0
- package/.koolie/core/framework/role-packs/requirements-engineering/runtime/30-role-requirements-engineering.md +88 -0
- package/.koolie/core/framework/role-packs/requirements-engineering/skills/role-re-ticket/CHANGELOG.md +10 -0
- package/.koolie/core/framework/role-packs/requirements-engineering/skills/role-re-ticket/EXAMPLES.md +148 -0
- package/.koolie/core/framework/role-packs/requirements-engineering/skills/role-re-ticket/SKILL.md +195 -0
- package/.koolie/core/framework/role-packs/requirements-engineering/skills/role-re-ticket/TESTS.md +22 -0
- package/.koolie/core/framework/role-packs/software-development/ROLE_PACK.md +95 -0
- package/.koolie/core/framework/role-packs/software-development/runtime/30-role-software-development.md +26 -0
- package/.koolie/core/framework/runtime/agents/fw-reviewer.md +34 -0
- package/.koolie/core/framework/runtime/client-settings.json +3 -0
- package/.koolie/core/framework/runtime/hooks.json +20 -0
- package/.koolie/core/framework/runtime/mcp-config.example.json +4 -0
- package/.koolie/core/framework/runtime/permissions.json +106 -0
- package/.koolie/core/framework/runtime/root-instruction-local.example.md +19 -0
- package/.koolie/core/framework/runtime/root-instruction.md +116 -0
- package/.koolie/core/framework/runtime/rules/00-framework-core.md +49 -0
- package/.koolie/core/framework/runtime/rules/10-privacy-security.md +49 -0
- package/.koolie/core/framework/runtime/rules/15-development-rules.md +41 -0
- package/.koolie/core/framework/runtime/rules/16-plan-spezifikation.md +32 -0
- package/.koolie/core/framework/runtime/rules/20-project-overlay.md +60 -0
- package/.koolie/core/framework/skills/fw-bugfix-prepare/CHANGELOG.md +14 -0
- package/.koolie/core/framework/skills/fw-bugfix-prepare/EXAMPLES.md +57 -0
- package/.koolie/core/framework/skills/fw-bugfix-prepare/SKILL.md +177 -0
- package/.koolie/core/framework/skills/fw-bugfix-prepare/TESTS.md +15 -0
- package/.koolie/core/framework/skills/fw-change-analyze/CHANGELOG.md +12 -0
- package/.koolie/core/framework/skills/fw-change-analyze/EXAMPLES.md +66 -0
- package/.koolie/core/framework/skills/fw-change-analyze/SKILL.md +167 -0
- package/.koolie/core/framework/skills/fw-change-analyze/TESTS.md +16 -0
- package/.koolie/core/framework/skills/fw-change-small/CHANGELOG.md +13 -0
- package/.koolie/core/framework/skills/fw-change-small/EXAMPLES.md +68 -0
- package/.koolie/core/framework/skills/fw-change-small/SKILL.md +175 -0
- package/.koolie/core/framework/skills/fw-change-small/TESTS.md +13 -0
- package/.koolie/core/framework/skills/fw-code-explain/CHANGELOG.md +11 -0
- package/.koolie/core/framework/skills/fw-code-explain/EXAMPLES.md +61 -0
- package/.koolie/core/framework/skills/fw-code-explain/SKILL.md +163 -0
- package/.koolie/core/framework/skills/fw-code-explain/TESTS.md +11 -0
- package/.koolie/core/framework/skills/fw-docs-update/CHANGELOG.md +10 -0
- package/.koolie/core/framework/skills/fw-docs-update/EXAMPLES.md +59 -0
- package/.koolie/core/framework/skills/fw-docs-update/SKILL.md +160 -0
- package/.koolie/core/framework/skills/fw-docs-update/TESTS.md +12 -0
- package/.koolie/core/framework/skills/fw-error-analyze/CHANGELOG.md +10 -0
- package/.koolie/core/framework/skills/fw-error-analyze/EXAMPLES.md +67 -0
- package/.koolie/core/framework/skills/fw-error-analyze/SKILL.md +160 -0
- package/.koolie/core/framework/skills/fw-error-analyze/TESTS.md +12 -0
- package/.koolie/core/framework/skills/fw-mr-description/CHANGELOG.md +12 -0
- package/.koolie/core/framework/skills/fw-mr-description/EXAMPLES.md +69 -0
- package/.koolie/core/framework/skills/fw-mr-description/SKILL.md +170 -0
- package/.koolie/core/framework/skills/fw-mr-description/TESTS.md +12 -0
- package/.koolie/core/framework/skills/fw-overlay-pflege/CHANGELOG.md +7 -0
- package/.koolie/core/framework/skills/fw-overlay-pflege/EXAMPLES.md +48 -0
- package/.koolie/core/framework/skills/fw-overlay-pflege/SKILL.md +147 -0
- package/.koolie/core/framework/skills/fw-overlay-pflege/TESTS.md +13 -0
- package/.koolie/core/framework/skills/fw-plan/CHANGELOG.md +14 -0
- package/.koolie/core/framework/skills/fw-plan/EXAMPLES.md +69 -0
- package/.koolie/core/framework/skills/fw-plan/SKILL.md +168 -0
- package/.koolie/core/framework/skills/fw-plan/TESTS.md +14 -0
- package/.koolie/core/framework/skills/fw-refactor/CHANGELOG.md +10 -0
- package/.koolie/core/framework/skills/fw-refactor/EXAMPLES.md +70 -0
- package/.koolie/core/framework/skills/fw-refactor/SKILL.md +173 -0
- package/.koolie/core/framework/skills/fw-refactor/TESTS.md +14 -0
- package/.koolie/core/framework/skills/fw-repo-analyze/CHANGELOG.md +10 -0
- package/.koolie/core/framework/skills/fw-repo-analyze/EXAMPLES.md +52 -0
- package/.koolie/core/framework/skills/fw-repo-analyze/SKILL.md +149 -0
- package/.koolie/core/framework/skills/fw-repo-analyze/TESTS.md +11 -0
- package/.koolie/core/framework/skills/fw-review-support/CHANGELOG.md +12 -0
- package/.koolie/core/framework/skills/fw-review-support/EXAMPLES.md +69 -0
- package/.koolie/core/framework/skills/fw-review-support/SKILL.md +179 -0
- package/.koolie/core/framework/skills/fw-review-support/TESTS.md +13 -0
- package/.koolie/core/framework/skills/fw-tests/CHANGELOG.md +9 -0
- package/.koolie/core/framework/skills/fw-tests/EXAMPLES.md +65 -0
- package/.koolie/core/framework/skills/fw-tests/SKILL.md +169 -0
- package/.koolie/core/framework/skills/fw-tests/TESTS.md +12 -0
- package/.koolie/core/framework/tech-packs/README.md +15 -0
- package/.koolie/core/framework/tech-packs/_template/TECH_PACK.md +61 -0
- package/.koolie/core/governance/ADOPTION_REGISTRY.md +89 -0
- package/.koolie/core/governance/CHANGE_REQUEST_TEMPLATE.md +60 -0
- package/.koolie/core/governance/DECISION_LOG.md +779 -0
- package/.koolie/core/governance/EXCEPTION_PROCESS.md +31 -0
- package/.koolie/core/governance/FEEDBACK_PROCESS.md +34 -0
- package/.koolie/core/governance/FRAMEWORK_DEV_PROFILE.md +135 -0
- package/.koolie/core/governance/INCIDENT_HANDLING.md +47 -0
- package/.koolie/core/governance/PRIORITY_HIERARCHY.md +61 -0
- package/.koolie/core/governance/RACI.md +37 -0
- package/.koolie/core/governance/RELEASE_PROCESS.md +183 -0
- package/.koolie/core/governance/change-requests/CR-2026-001-definition-release-1-0-0.md +67 -0
- package/.koolie/core/governance/change-requests/CR-2026-002-client-packs.md +63 -0
- package/.koolie/core/governance/change-requests/CR-2026-003-install-client-schalter.md +70 -0
- package/.koolie/core/governance/change-requests/CR-2026-004-client-pack-claude-code.md +82 -0
- package/.koolie/core/governance/change-requests/CR-2026-005-kern-neutralisierung.md +75 -0
- package/.koolie/core/governance/change-requests/CR-2026-006-gemeinsame-skill-quelle.md +77 -0
- package/.koolie/core/governance/change-requests/CR-2026-007-geteilte-kernbestandteile.md +80 -0
- package/.koolie/core/governance/change-requests/CR-2026-008-berechtigungen-und-hooks.md +85 -0
- package/.koolie/core/governance/change-requests/CR-2026-009-umbenennung-leitwerk.md +77 -0
- package/.koolie/core/governance/change-requests/CR-2026-010-restduplikation.md +73 -0
- package/.koolie/core/governance/change-requests/CR-2026-011-hauptdokument.md +72 -0
- package/.koolie/core/governance/change-requests/CR-2026-012-schreibschutz-kernverzeichnis.md +106 -0
- package/.koolie/core/governance/change-requests/CR-2026-013-validator-blindstellen.md +128 -0
- package/.koolie/core/governance/change-requests/CR-2026-014-kurzform-langform.md +125 -0
- package/.koolie/core/governance/change-requests/CR-2026-015-versionskette.md +150 -0
- package/.koolie/core/governance/change-requests/CR-2026-016-ap2-claude-code.md +127 -0
- package/.koolie/core/governance/change-requests/CR-2026-017-ladebedingungen-claude-code.md +173 -0
- package/.koolie/core/governance/change-requests/CR-2026-018-quellenliste-claude-code.md +121 -0
- package/.koolie/core/governance/change-requests/CR-2026-019-strukturentscheidungen-fortschreiben.md +143 -0
- package/.koolie/core/governance/change-requests/CR-2026-020-akteursbezeichnung.md +118 -0
- package/.koolie/core/governance/change-requests/CR-2026-021-hook-interpreter.md +113 -0
- package/.koolie/core/governance/change-requests/CR-2026-022-artefaktversionen.md +73 -0
- package/.koolie/core/governance/change-requests/CR-2026-023-shell-lesesperre.md +128 -0
- package/.koolie/core/governance/change-requests/CR-2026-024-clientbindungen.md +78 -0
- package/.koolie/core/governance/change-requests/CR-2026-025-betriebsmodi.md +110 -0
- package/.koolie/core/governance/change-requests/CR-2026-026-fail-closed.md +134 -0
- package/.koolie/core/governance/change-requests/CR-2026-027-zeichenlimit-einstufung.md +105 -0
- package/.koolie/core/governance/change-requests/CR-2026-028-berechtigungsmodi.md +130 -0
- package/.koolie/core/governance/change-requests/CR-2026-029-hook-ablageort.md +115 -0
- package/.koolie/core/governance/change-requests/CR-2026-030-lesende-werkzeuge.md +143 -0
- package/.koolie/core/governance/change-requests/CR-2026-031-regelquellen-ausserhalb.md +182 -0
- package/.koolie/core/governance/change-requests/CR-2026-032-fremde-skill-ablage.md +151 -0
- package/.koolie/core/governance/change-requests/CR-2026-033-modusabhaengige-durchsetzung.md +131 -0
- package/.koolie/core/governance/change-requests/CR-2026-034-nachweisbedingungen.md +116 -0
- package/.koolie/core/governance/change-requests/CR-2026-035-readme-in-der-regelablage.md +115 -0
- package/.koolie/core/governance/change-requests/CR-2026-036-ortsangaben-hook-konfiguration.md +108 -0
- package/.koolie/core/governance/change-requests/CR-2026-037-meldender-hook-clientgebunden.md +133 -0
- package/.koolie/core/governance/change-requests/CR-2026-038-importsteuerung.md +159 -0
- package/.koolie/core/governance/change-requests/CR-2026-039-normative-saetze-in-kommentaren.md +124 -0
- package/.koolie/core/governance/change-requests/CR-2026-040-erh01-ist-clientgebunden.md +115 -0
- package/.koolie/core/governance/change-requests/CR-2026-041-s5-nicht-abbildbar.md +128 -0
- package/.koolie/core/governance/change-requests/CR-2026-042-abwesenheitsnachweis-suchwerkzeug.md +102 -0
- package/.koolie/core/governance/change-requests/CR-2026-043-validator-gibt-trefferwerte-aus.md +135 -0
- package/.koolie/core/governance/change-requests/CR-2026-044-aktivierungspruefung-clientgebunden.md +112 -0
- package/.koolie/core/governance/change-requests/CR-2026-045-update-verliert-die-clientwahl.md +116 -0
- package/.koolie/core/governance/change-requests/CR-2026-046-erstinstallation-ueberschreibt-projektdatei.md +125 -0
- package/.koolie/core/governance/change-requests/CR-2026-047-zusagen-je-zugriffskanal.md +133 -0
- package/.koolie/core/governance/change-requests/CR-2026-048-modusgrenze-ohne-durchsetzung.md +137 -0
- package/.koolie/core/governance/change-requests/CR-2026-049-sondenlauf-kodierungsabhaengig.md +126 -0
- package/.koolie/core/governance/change-requests/CR-2026-050-allowed-tools-und-verworfene-permissions.md +110 -0
- package/.koolie/core/governance/change-requests/CR-2026-051-quellenkarte-und-ueberholter-stand.md +110 -0
- package/.koolie/core/governance/change-requests/CR-2026-052-drei-regelkonflikte.md +166 -0
- package/.koolie/core/governance/change-requests/CR-2026-053-lesesperre-und-entwicklungsprofil.md +144 -0
- package/.koolie/core/governance/change-requests/CR-2026-054-aktivierung-verlangt-aktivitaet.md +124 -0
- package/.koolie/core/governance/change-requests/CR-2026-055-domain-ausnahme-ohne-mechanismus.md +173 -0
- package/.koolie/core/governance/change-requests/CR-2026-056-eingabeschema-und-pfadidentitaet.md +245 -0
- package/.koolie/core/governance/change-requests/CR-2026-057-disallowed-tools-und-s3.md +148 -0
- package/.koolie/core/governance/change-requests/CR-2026-058-unteragent-reichweite.md +203 -0
- package/.koolie/core/governance/change-requests/CR-2026-059-unteragent-tiefe-und-widerspruch.md +125 -0
- package/.koolie/core/governance/change-requests/CR-2026-060-stumme-brueche.md +170 -0
- package/.koolie/core/governance/change-requests/CR-2026-061-berechtigungsdatei-ohne-pruefung.md +169 -0
- package/.koolie/core/governance/change-requests/CR-2026-062-werkzeugabbildung-des-frontmatters.md +178 -0
- package/.koolie/core/governance/change-requests/CR-2026-063-skillaufruf-ohne-freigabe.md +207 -0
- package/.koolie/core/governance/change-requests/CR-2026-064-pruefregister-nicht-nachgezaehlt.md +141 -0
- package/.koolie/core/governance/change-requests/CR-2026-065-devin-suchwerkzeuge-erhoben.md +170 -0
- package/.koolie/core/governance/change-requests/CR-2026-066-schlitzdeckung-ohne-abgleich.md +153 -0
- package/.koolie/core/governance/change-requests/CR-2026-067-hookblock-und-praeparationsregister.md +140 -0
- package/.koolie/core/governance/change-requests/CR-2026-068-sondenlauf-nebenlaeufig.md +106 -0
- package/.koolie/core/governance/change-requests/CR-2026-069-bytecode-des-kerns.md +108 -0
- package/.koolie/core/governance/change-requests/CR-2026-070-d11-zaehler.md +114 -0
- package/.koolie/core/governance/change-requests/CR-2026-071-strukturentscheidungen-bestaetigen.md +322 -0
- package/.koolie/core/governance/change-requests/CR-2026-072-modulstatus-heben.md +315 -0
- package/.koolie/core/governance/change-requests/CR-2026-073-nicht-skill-traeger-heben.md +246 -0
- package/.koolie/core/governance/change-requests/CR-2026-074-restliche-nicht-skill-traeger-heben.md +271 -0
- package/.koolie/core/governance/change-requests/CR-2026-075-ap2-zielversion-devin-desktop.md +335 -0
- package/.koolie/core/governance/change-requests/CR-2026-076-erster-sitzungstest.md +455 -0
- package/.koolie/core/governance/change-requests/CR-2026-077-sitzungstest-schranken.md +425 -0
- package/.koolie/core/governance/change-requests/CR-2026-078-planung-nach-1-0-0.md +294 -0
- package/.koolie/core/governance/change-requests/CR-2026-079-umbenennung-vorziehen.md +233 -0
- package/.koolie/core/governance/change-requests/CR-2026-080-clientbindung-des-kerns.md +321 -0
- package/.koolie/core/governance/change-requests/CR-2026-081-produktnamen-im-kern.md +297 -0
- package/.koolie/core/governance/change-requests/CR-2026-082-sitzungstest-pi-ds-2.md +145 -0
- package/.koolie/core/governance/change-requests/CR-2026-083-sitzungstest-ne-sc.md +300 -0
- package/.koolie/core/governance/change-requests/CR-2026-084-trockenlauf-gegen-den-committeten-stand.md +117 -0
- package/.koolie/core/governance/change-requests/CR-2026-085-vorbedingungen-sitzungstest-5.md +182 -0
- package/.koolie/core/governance/change-requests/CR-2026-086-grenzfaelle-gegen-die-fassungen.md +164 -0
- package/.koolie/core/governance/change-requests/CR-2026-087-produktbeobachtung-quellenliste.md +206 -0
- package/.koolie/core/governance/change-requests/CR-2026-088-vorbedingungen-testblaetter.md +127 -0
- package/.koolie/core/governance/change-requests/CR-2026-089-herrichtung-uebungsrepositorium.md +226 -0
- package/.koolie/core/governance/change-requests/CR-2026-090-vorbedingungen-sitzungstest-5-zweiter-durchgang.md +255 -0
- package/.koolie/core/governance/change-requests/CR-2026-091-sitzungstest-5.md +163 -0
- package/.koolie/core/governance/change-requests/CR-2026-092-pruefmittelwort-und-buendelschnitt.md +226 -0
- package/.koolie/core/governance/change-requests/CR-2026-093-sechzehnte-praeparation.md +151 -0
- package/.koolie/core/governance/change-requests/CR-2026-094-testblaetter-buendel-1.md +113 -0
- package/.koolie/core/governance/change-requests/CR-2026-095-pruefapparat-filter.md +65 -0
- package/.koolie/core/governance/change-requests/CR-2026-096-vorbedingungen-buendel-2.md +225 -0
- package/.koolie/core/governance/change-requests/CR-2026-097-testblaetter-buendel-2.md +162 -0
- package/.koolie/core/governance/change-requests/CR-2026-098-anforderungen-auslieferung.md +93 -0
- package/.koolie/core/governance/change-requests/CR-2026-099-k74-und-vorbedingungen-buendel-3.md +119 -0
- package/.koolie/core/governance/change-requests/CR-2026-100-testblaetter-buendel-3.md +120 -0
- package/.koolie/core/governance/change-requests/CR-2026-101-k77-eigener-posten.md +165 -0
- package/.koolie/core/governance/change-requests/CR-2026-102-k77-entschieden.md +118 -0
- package/.koolie/core/governance/change-requests/CR-2026-103-vorbedingungen-buendel-4.md +76 -0
- package/.koolie/core/governance/change-requests/CR-2026-104-herrichtung-buendel-4.md +82 -0
- package/.koolie/core/governance/change-requests/CR-2026-105-messapparat-buendel-4.md +227 -0
- package/.koolie/core/governance/change-requests/CR-2026-106-uebergabe-einchecken.md +91 -0
- package/.koolie/core/governance/change-requests/CR-2026-107-uebergabe-im-release-commit.md +111 -0
- package/.koolie/core/governance/change-requests/CR-2026-108-testblaetter-buendel-4.md +118 -0
- package/.koolie/core/governance/change-requests/CR-2026-109-berichtsweg-des-aufraeumers.md +108 -0
- package/.koolie/core/governance/change-requests/CR-2026-110-vorbedingungen-des-nachlaufs.md +184 -0
- package/.koolie/core/governance/change-requests/CR-2026-111-der-apparat-auf-dem-weg-der-wiederaufnahme.md +127 -0
- package/.koolie/core/governance/change-requests/CR-2026-112-der-arbeitsplatz-im-kern.md +103 -0
- package/.koolie/core/governance/change-requests/CR-2026-113-nachlauf-buendel-4.md +103 -0
- package/.koolie/core/governance/change-requests/CR-2026-114-vorbedingungen-buendel-5.md +317 -0
- package/.koolie/core/governance/change-requests/CR-2026-115-herrichtung-buendel-5.md +244 -0
- package/.koolie/core/governance/change-requests/CR-2026-116-messtag-buendel-5.md +178 -0
- package/.koolie/core/governance/change-requests/CR-2026-117-sammelzellen-zentraler-katalog.md +251 -0
- package/.koolie/core/governance/change-requests/CR-2026-118-quellenzuordnung-matrixzeilen.md +115 -0
- package/.koolie/core/governance/change-requests/CR-2026-119-umbenennung-koolie.md +204 -0
- package/.koolie/core/governance/change-requests/CR-2026-120-ap2-rest-devin-desktop.md +96 -0
- package/.koolie/core/governance/change-requests/CR-2026-121-verify-marker-abschaffen.md +185 -0
- package/.koolie/core/governance/change-requests/CR-2026-122-umbenennung-koolie-lauf.md +131 -0
- package/.koolie/core/governance/change-requests/CR-2026-123-vortrag-und-namensabsatz.md +170 -0
- package/.koolie/core/governance/change-requests/CR-2026-124-hauptdokument-ap11.md +237 -0
- package/.koolie/core/governance/change-requests/CR-2026-125-word-fassung-und-blinder-fleck.md +204 -0
- package/.koolie/core/governance/change-requests/CR-2026-126-lizenz-gpl3.md +112 -0
- package/.koolie/core/governance/change-requests/CR-2026-127-gegenzeichnung-rollenfrage.md +96 -0
- package/.koolie/core/governance/change-requests/CR-2026-128-freigabelauf-1.0.0.md +278 -0
- package/.koolie/core/governance/change-requests/CR-2026-129-archiv-zeilenenden.md +90 -0
- package/.koolie/core/governance/change-requests/CR-2026-130-reihenfolge-des-hebens.md +204 -0
- package/.koolie/core/governance/change-requests/CR-2026-131-chronik-und-vorlage.md +194 -0
- package/.koolie/core/governance/change-requests/CR-2026-132-erhebung-openai-codex.md +185 -0
- package/.koolie/core/governance/change-requests/CR-2026-133-bau-openai-codex.md +97 -0
- package/.koolie/core/governance/change-requests/CR-2026-134-uebergabe-lokal.md +117 -0
- package/.koolie/core/governance/change-requests/CR-2026-135-pfadlisten-nul-getrennt.md +139 -0
- package/.koolie/core/governance/change-requests/CR-2026-136-overlay-werte-einordnung.md +156 -0
- package/.koolie/core/governance/change-requests/CR-2026-137-kopierweg-kern.md +144 -0
- package/.koolie/core/governance/change-requests/CR-2026-138-overlay-muster-general.md +118 -0
- package/.koolie/core/governance/change-requests/CR-2026-139-overlay-muster-dokumente.md +105 -0
- package/.koolie/core/governance/change-requests/CR-2026-140-installer-je-zielsystem.md +120 -0
- package/.koolie/core/governance/change-requests/CR-2026-141-lieferumfang.md +123 -0
- package/.koolie/core/governance/change-requests/CR-2026-142-dokumentationsstandard.md +90 -0
- package/.koolie/core/governance/change-requests/CR-2026-143-klasse-b-core-laufzeit.md +89 -0
- package/.koolie/core/governance/change-requests/CR-2026-144-klasse-b-governance.md +90 -0
- package/.koolie/core/governance/change-requests/CR-2026-145-klasse-b-skills.md +81 -0
- package/.koolie/core/governance/change-requests/CR-2026-146-code-pack-posten.md +84 -0
- package/.koolie/core/governance/change-requests/CR-2026-147-regel-register-posten.md +78 -0
- package/.koolie/core/governance/change-requests/CR-2026-148-mehrprojekt-tokenlast.md +70 -0
- package/.koolie/core/governance/change-requests/CR-2026-149-regelablage-pfadtoken.md +71 -0
- package/.koolie/core/governance/change-requests/CR-2026-150-client-pack-kiro.md +76 -0
- package/.koolie/core/governance/change-requests/CR-2026-151-skill-anweisungen.md +71 -0
- package/.koolie/core/governance/change-requests/CR-2026-152-testblaetter-modellwechsel.md +78 -0
- package/.koolie/core/governance/change-requests/CR-2026-153-attributionszeile.md +88 -0
- package/.koolie/core/governance/change-requests/CR-2026-154-auffindbarkeit.md +102 -0
- package/.koolie/core/governance/change-requests/CR-2026-155-client-pack-cursor.md +80 -0
- package/.koolie/core/governance/change-requests/CR-2026-156-mandat-und-reibung.md +100 -0
- package/.koolie/core/governance/change-requests/CR-2026-157-mcp-anbindung.md +93 -0
- package/.koolie/core/governance/change-requests/CR-2026-158-registerpflege.md +69 -0
- package/.koolie/core/governance/change-requests/CR-2026-159-powershell.md +49 -0
- package/.koolie/core/governance/change-requests/CR-2026-160-messapparat.md +59 -0
- package/.koolie/core/governance/change-requests/CR-2026-161-pruefwerkzeuge.md +52 -0
- package/.koolie/core/governance/change-requests/CR-2026-162-schutzschicht.md +65 -0
- package/.koolie/core/governance/change-requests/CR-2026-163-pfadsemantik.md +61 -0
- package/.koolie/core/governance/change-requests/CR-2026-164-modi-ausnahmen.md +65 -0
- package/.koolie/core/governance/change-requests/CR-2026-165-installer-banner.md +406 -0
- package/.koolie/core/governance/change-requests/CR-2026-166-nachlauf-aufzeichnungen.md +59 -0
- package/.koolie/core/governance/change-requests/CR-2026-167-einsatzarchitektur.md +60 -0
- package/.koolie/core/governance/change-requests/CR-2026-168-paketquellen.md +64 -0
- package/.koolie/core/governance/change-requests/CR-2026-169-modusbindung-messfragen.md +58 -0
- package/.koolie/core/governance/change-requests/CR-2026-170-erste-veroeffentlichung.md +62 -0
- package/.koolie/core/governance/change-requests/CR-2026-171-befehl-im-projektverzeichnis.md +57 -0
- package/.koolie/core/governance/change-requests/CR-2026-172-auftritt-npm-suche.md +58 -0
- package/.koolie/core/install.py +2402 -0
- package/.koolie/core/install_dialog.py +227 -0
- package/.koolie/core/koexistenz.py +112 -0
- package/.koolie/core/mandat.py +605 -0
- package/.koolie/core/onboarding/COMPLETION_CRITERIA.md +37 -0
- package/.koolie/core/onboarding/GUIDE.md +103 -0
- package/.koolie/core/onboarding/KNOWLEDGE_CHECK.md +48 -0
- package/.koolie/core/onboarding/MENTOR_CHECKLIST.md +40 -0
- package/.koolie/core/onboarding/QUICKSTART.md +50 -0
- package/.koolie/core/onboarding/REFERENCE.md +69 -0
- package/.koolie/core/onboarding/exercises/EXERCISES.md +78 -0
- package/.koolie/core/onboarding/exercises/README.md +120 -0
- package/.koolie/core/pilot/METRICS.md +59 -0
- package/.koolie/core/pilot/PILOT_CONCEPT.md +42 -0
- package/.koolie/core/prompts/01-understand-codebase.md +99 -0
- package/.koolie/core/prompts/02-impact-analysis.md +104 -0
- package/.koolie/core/prompts/03-implementation-planning.md +102 -0
- package/.koolie/core/prompts/04-code-generation.md +100 -0
- package/.koolie/core/prompts/05-test-generation.md +103 -0
- package/.koolie/core/prompts/06-refactoring.md +102 -0
- package/.koolie/core/prompts/07-debugging.md +97 -0
- package/.koolie/core/prompts/08-security-review.md +92 -0
- package/.koolie/core/prompts/09-performance-analysis.md +89 -0
- package/.koolie/core/prompts/10-documentation.md +91 -0
- package/.koolie/core/prompts/11-merge-request-review.md +94 -0
- package/.koolie/core/prompts/12-developer-training.md +90 -0
- package/.koolie/core/prompts/README.md +88 -0
- package/.koolie/core/templates/MR_AI_DISCLOSURE.md +37 -0
- package/.koolie/core/templates/PLAN_TEMPLATE.md +57 -0
- package/.koolie/core/templates/SKILL_TEMPLATE.md +159 -0
- package/.koolie/core/templates/project-overlay/OVERLAY.md +315 -0
- package/.koolie/core/templates/project-overlay/documents/README.md +43 -0
- package/.koolie/core/templates/project-overlay/documents/ai-governance/.gitkeep.md +3 -0
- package/.koolie/core/templates/project-overlay/documents/ai-process-model/.gitkeep.md +3 -0
- package/.koolie/core/templates/project-overlay/documents/architecture/.gitkeep.md +3 -0
- package/.koolie/core/templates/project-overlay/documents/architecture/decisions/README.md +3 -0
- package/.koolie/core/templates/project-overlay/documents/branching-strategy/.gitkeep.md +3 -0
- package/.koolie/core/templates/project-overlay/documents/coding-guidelines/.gitkeep.md +3 -0
- package/.koolie/core/templates/project-overlay/documents/definition-of-done/.gitkeep.md +3 -0
- package/.koolie/core/templates/project-overlay/documents/definition-of-ready/.gitkeep.md +3 -0
- package/.koolie/core/templates/project-overlay/documents/deployment/.gitkeep.md +3 -0
- package/.koolie/core/templates/project-overlay/documents/glossary/.gitkeep.md +3 -0
- package/.koolie/core/templates/project-overlay/documents/quality/.gitkeep.md +3 -0
- package/.koolie/core/templates/project-overlay/documents/roadmap/.gitkeep.md +3 -0
- package/.koolie/core/templates/project-overlay/documents/roles/.gitkeep.md +3 -0
- package/.koolie/core/templates/project-overlay/documents/security/.gitkeep.md +3 -0
- package/.koolie/core/templates/project-overlay/exceptions/EXCEPTIONS.md +9 -0
- package/.koolie/core/templates/project-overlay/forbidden-terms.txt +8 -0
- package/.koolie/core/templates/project-overlay/overlay-manifest.yaml +73 -0
- package/.koolie/core/templates/rules/21-overlay-TEMPLATE.md.template +28 -0
- package/.koolie/core/templates/rules/40-tech-TEMPLATE.md.template +33 -0
- package/.koolie/core/tests/EDGE_CASES.md +67 -0
- package/.koolie/core/tests/TEST_CATALOG.md +170 -0
- package/.koolie/core/tests/erhebungen/README.md +326 -0
- package/.koolie/core/tests/erhebungen/ablage.py +357 -0
- package/.koolie/core/tests/erhebungen/apparat/__init__.py +22 -0
- package/.koolie/core/tests/erhebungen/apparat/baum.py +214 -0
- package/.koolie/core/tests/erhebungen/apparat/belege.py +91 -0
- package/.koolie/core/tests/erhebungen/apparat/clients.py +321 -0
- package/.koolie/core/tests/erhebungen/apparat/freigabe.py +74 -0
- package/.koolie/core/tests/erhebungen/apparat/kontingent.py +64 -0
- package/.koolie/core/tests/erhebungen/apparat/laeufer.py +155 -0
- package/.koolie/core/tests/erhebungen/apparat/reihe.py +202 -0
- package/.koolie/core/tests/erhebungen/apparat/selbsttest.py +280 -0
- package/.koolie/core/tests/erhebungen/apparat/stand.py +30 -0
- package/.koolie/core/tests/erhebungen/apparat/vorpruefung.py +70 -0
- package/.koolie/core/tests/erhebungen/auswerten-b4.py +468 -0
- package/.koolie/core/tests/erhebungen/auswerten-b5.py +517 -0
- package/.koolie/core/tests/erhebungen/auswerten-dd.py +172 -0
- package/.koolie/core/tests/erhebungen/baeume-b4.py +334 -0
- package/.koolie/core/tests/erhebungen/baeume-b5.py +339 -0
- package/.koolie/core/tests/erhebungen/baeume_loeschen.py +138 -0
- package/.koolie/core/tests/erhebungen/cc-overlay-fuellen.py +277 -0
- package/.koolie/core/tests/erhebungen/dossier-b4.py +178 -0
- package/.koolie/core/tests/erhebungen/dossier-b5.py +202 -0
- package/.koolie/core/tests/erhebungen/historie-bauen-b4.py +642 -0
- package/.koolie/core/tests/erhebungen/k-bauen-b3.py +841 -0
- package/.koolie/core/tests/erhebungen/lauf-dd.py +146 -0
- package/.koolie/core/tests/erhebungen/lauf.py +114 -0
- package/.koolie/core/tests/erhebungen/mcp-waechter.py +278 -0
- package/.koolie/core/tests/erhebungen/messbaum-schnitt.py +256 -0
- package/.koolie/core/tests/erhebungen/messen.py +72 -0
- package/.koolie/core/tests/erhebungen/node-waechter.py +74 -0
- package/.koolie/core/tests/erhebungen/packaktivierung.py +403 -0
- package/.koolie/core/tests/erhebungen/prompts-schreiben-b4.py +210 -0
- package/.koolie/core/tests/erhebungen/prompts-schreiben-b5.py +251 -0
- package/.koolie/core/tests/erhebungen/reihe-b4.py +171 -0
- package/.koolie/core/tests/erhebungen/reihe-b5.py +172 -0
- package/.koolie/core/tests/erhebungen/stand-b4.py +135 -0
- package/.koolie/core/tests/erhebungen/stand-b5.py +137 -0
- package/.koolie/core/tests/erhebungen/trust-b4.py +56 -0
- package/.koolie/core/tests/erhebungen/trust-b5.py +56 -0
- package/.koolie/core/tests/erhebungen/turn2-schreiben-b4.py +105 -0
- package/.koolie/core/tests/erhebungen/umgebungen-bauen-b4.py +377 -0
- package/.koolie/core/tests/erhebungen/umgebungen-bauen-b5.py +363 -0
- package/.koolie/core/tests/erhebungen/zaehlen46.py +74 -0
- package/.koolie/core/tests/erhebungen/zustand-b4.py +82 -0
- package/.koolie/core/tests/erhebungen/zustand-b5.py +82 -0
- package/.koolie/core/tests/protocols/2026-09-10-AP2-claude-code-wirkungsnachweise.md +194 -0
- package/.koolie/core/tests/protocols/2026-09-10-AP2-claude-code.md +468 -0
- package/.koolie/core/tests/protocols/2026-09-10-CR-2026-020-akteursbezeichnung.md +99 -0
- package/.koolie/core/tests/protocols/2026-09-10-CR-2026-021-hook-interpreter.md +138 -0
- package/.koolie/core/tests/protocols/2026-09-10-CR-2026-022-artefaktversionen.md +87 -0
- package/.koolie/core/tests/protocols/2026-09-10-CR-2026-023-shell-lesesperre.md +135 -0
- package/.koolie/core/tests/protocols/2026-09-10-CR-2026-024-clientbindungen.md +98 -0
- package/.koolie/core/tests/protocols/2026-09-10-FW-DS-03.md +90 -0
- package/.koolie/core/tests/protocols/2026-09-10-FW-KO-01.md +105 -0
- package/.koolie/core/tests/protocols/2026-09-10-FW-KO-02.md +123 -0
- package/.koolie/core/tests/protocols/2026-09-10-FW-KO-04.md +73 -0
- package/.koolie/core/tests/protocols/2026-09-10-FW-RE-02.md +99 -0
- package/.koolie/core/tests/protocols/2026-09-10-FW-VN-01-wiederholung.md +108 -0
- package/.koolie/core/tests/protocols/2026-09-10-FW-VN-01.md +249 -0
- package/.koolie/core/tests/protocols/2026-09-10-FW-ZA-05.md +99 -0
- package/.koolie/core/tests/protocols/2026-09-11-AP2-devin-desktop.md +257 -0
- package/.koolie/core/tests/protocols/2026-09-11-CR-2026-026-fail-closed.md +113 -0
- package/.koolie/core/tests/protocols/2026-09-11-erhebungen-K21-K26.md +243 -0
- package/.koolie/core/tests/protocols/2026-09-11-wirkungsnachweise-0.26.0.md +101 -0
- package/.koolie/core/tests/protocols/2026-09-12-B01-allowed-tools.md +152 -0
- package/.koolie/core/tests/protocols/2026-09-12-B04-B05-gegenpruefung.md +204 -0
- package/.koolie/core/tests/protocols/2026-09-12-erhebungen-K28-S5-B9-bypass.md +268 -0
- package/.koolie/core/tests/protocols/2026-09-12-mehrprojekt-arbeitsbereich.md +154 -0
- package/.koolie/core/tests/protocols/2026-09-12-wirkungsnachweise-0.26.1.md +126 -0
- package/.koolie/core/tests/protocols/2026-09-12-wirkungsnachweise-0.27.0.md +114 -0
- package/.koolie/core/tests/protocols/2026-09-12-wirkungsnachweise-0.28.0.md +129 -0
- package/.koolie/core/tests/protocols/2026-09-12-wirkungsnachweise-0.29.0.md +121 -0
- package/.koolie/core/tests/protocols/2026-09-12-wirkungsnachweise-0.30.0.md +112 -0
- package/.koolie/core/tests/protocols/2026-09-12-wirkungsnachweise-0.31.0.md +107 -0
- package/.koolie/core/tests/protocols/2026-09-13-B06-gegenpruefung.md +370 -0
- package/.koolie/core/tests/protocols/2026-09-13-B07-B09-gegenpruefung.md +211 -0
- package/.koolie/core/tests/protocols/2026-09-13-B08-B11-gegenpruefung.md +179 -0
- package/.koolie/core/tests/protocols/2026-09-13-erhebung-disallowed-tools.md +147 -0
- package/.koolie/core/tests/protocols/2026-09-13-erhebung-unteragent-tiefe.md +139 -0
- package/.koolie/core/tests/protocols/2026-09-13-erhebung-unteragent.md +214 -0
- package/.koolie/core/tests/protocols/2026-09-13-gegenpruefung-berechtigungsdatei.md +253 -0
- package/.koolie/core/tests/protocols/2026-09-13-gegenpruefung-stumme-brueche.md +202 -0
- package/.koolie/core/tests/protocols/2026-09-13-gegenpruefung-werkzeugabbildung.md +219 -0
- package/.koolie/core/tests/protocols/2026-09-13-wirkungsnachweise-0.32.0.md +133 -0
- package/.koolie/core/tests/protocols/2026-09-13-wirkungsnachweise-0.33.0.md +169 -0
- package/.koolie/core/tests/protocols/2026-09-13-wirkungsnachweise-0.34.0.md +187 -0
- package/.koolie/core/tests/protocols/2026-09-13-wirkungsnachweise-0.35.0.md +187 -0
- package/.koolie/core/tests/protocols/2026-09-13-wirkungsnachweise-0.36.0.md +137 -0
- package/.koolie/core/tests/protocols/2026-09-13-wirkungsnachweise-0.37.0.md +112 -0
- package/.koolie/core/tests/protocols/2026-09-13-wirkungsnachweise-0.38.0.md +154 -0
- package/.koolie/core/tests/protocols/2026-09-13-wirkungsnachweise-0.39.0.md +188 -0
- package/.koolie/core/tests/protocols/2026-09-13-wirkungsnachweise-0.40.0.md +214 -0
- package/.koolie/core/tests/protocols/2026-09-14-erhebung-devin-werkzeuge.md +267 -0
- package/.koolie/core/tests/protocols/2026-09-14-erhebung-skillaufruf.md +238 -0
- package/.koolie/core/tests/protocols/2026-09-14-gegenpruefung-pruefregister.md +156 -0
- package/.koolie/core/tests/protocols/2026-09-14-gegenpruefung-schlitzdeckung.md +206 -0
- package/.koolie/core/tests/protocols/2026-09-14-gegenpruefung-skillwahl.md +127 -0
- package/.koolie/core/tests/protocols/2026-09-14-migrationslauf-pilot.md +134 -0
- package/.koolie/core/tests/protocols/2026-09-14-wirkungsnachweise-0.41.0.md +175 -0
- package/.koolie/core/tests/protocols/2026-09-14-wirkungsnachweise-0.42.0.md +180 -0
- package/.koolie/core/tests/protocols/2026-09-14-wirkungsnachweise-0.43.0.md +165 -0
- package/.koolie/core/tests/protocols/2026-09-14-wirkungsnachweise-0.44.0.md +130 -0
- package/.koolie/core/tests/protocols/2026-09-15-gegenpruefung-d11-zaehlregeln.md +311 -0
- package/.koolie/core/tests/protocols/2026-09-15-gegenpruefung-modulstatus.md +524 -0
- package/.koolie/core/tests/protocols/2026-09-15-gegenpruefung-nicht-skill-traeger.md +225 -0
- package/.koolie/core/tests/protocols/2026-09-15-gegenpruefung-restliche-nicht-skill-traeger.md +345 -0
- package/.koolie/core/tests/protocols/2026-09-15-gegenpruefung-strukturentscheidungen.md +392 -0
- package/.koolie/core/tests/protocols/2026-09-15-herrichtung-uebungsrepositorium.md +213 -0
- package/.koolie/core/tests/protocols/2026-09-15-migrationslauf-pilot-0.46.0.md +143 -0
- package/.koolie/core/tests/protocols/2026-09-15-wirkungsnachweise-0.45.0.md +127 -0
- package/.koolie/core/tests/protocols/2026-09-15-wirkungsnachweise-0.46.0.md +193 -0
- package/.koolie/core/tests/protocols/2026-09-15-wirkungsnachweise-0.47.0.md +149 -0
- package/.koolie/core/tests/protocols/2026-09-15-wirkungsnachweise-0.49.0.md +202 -0
- package/.koolie/core/tests/protocols/2026-09-15-wirkungsnachweise-0.50.0.md +183 -0
- package/.koolie/core/tests/protocols/2026-09-15-wirkungsnachweise-0.51.0.md +202 -0
- package/.koolie/core/tests/protocols/2026-09-15-wirkungsnachweise-0.52.0.md +168 -0
- package/.koolie/core/tests/protocols/2026-09-16-AP2-zielversion-devin-desktop.md +231 -0
- package/.koolie/core/tests/protocols/2026-09-16-wirkungsnachweise-0.53.0.md +350 -0
- package/.koolie/core/tests/protocols/2026-09-17-nachtrag-migrationshinweis-0.54.1.md +121 -0
- package/.koolie/core/tests/protocols/2026-09-17-sitzungstest-pi-ds.md +523 -0
- package/.koolie/core/tests/protocols/2026-09-17-sitzungstest-schranken.md +433 -0
- package/.koolie/core/tests/protocols/2026-09-17-wirkungsnachweise-0.54.0.md +159 -0
- package/.koolie/core/tests/protocols/2026-09-18-FW-AK-01.md +442 -0
- package/.koolie/core/tests/protocols/2026-09-18-FW-KO-05.md +231 -0
- package/.koolie/core/tests/protocols/2026-09-18-herrichtung-uebungsrepositorium.md +273 -0
- package/.koolie/core/tests/protocols/2026-09-18-nachtrag-preis-umbenennung-0.56.1.md +102 -0
- package/.koolie/core/tests/protocols/2026-09-18-sitzungstest-5.md +349 -0
- package/.koolie/core/tests/protocols/2026-09-18-sitzungstest-ne-sc.md +430 -0
- package/.koolie/core/tests/protocols/2026-09-18-sitzungstest-pi-ds-2.md +499 -0
- package/.koolie/core/tests/protocols/2026-09-18-vorbedingungen-sitzungstest-5-zweiter-durchgang.md +170 -0
- package/.koolie/core/tests/protocols/2026-09-18-vorbedingungen-testblaetter.md +184 -0
- package/.koolie/core/tests/protocols/2026-09-18-wirkungsnachweise-0.55.0.md +202 -0
- package/.koolie/core/tests/protocols/2026-09-18-wirkungsnachweise-0.56.0.md +135 -0
- package/.koolie/core/tests/protocols/2026-09-18-wirkungsnachweise-0.56.2.md +154 -0
- package/.koolie/core/tests/protocols/2026-09-18-wirkungsnachweise-0.57.0.md +228 -0
- package/.koolie/core/tests/protocols/2026-09-18-wirkungsnachweise-0.57.1.md +262 -0
- package/.koolie/core/tests/protocols/2026-09-18-wirkungsnachweise-0.58.0.md +135 -0
- package/.koolie/core/tests/protocols/2026-09-18-wirkungsnachweise-0.59.0.md +150 -0
- package/.koolie/core/tests/protocols/2026-09-18-wirkungsnachweise-0.60.0.md +340 -0
- package/.koolie/core/tests/protocols/2026-09-19-herrichtung-buendel-4.md +235 -0
- package/.koolie/core/tests/protocols/2026-09-19-k77-zurechenbarkeit.md +236 -0
- package/.koolie/core/tests/protocols/2026-09-19-pruefapparat-filter.md +50 -0
- package/.koolie/core/tests/protocols/2026-09-19-pruefmittelwort-und-buendelschnitt.md +239 -0
- package/.koolie/core/tests/protocols/2026-09-19-sechzehnte-praeparation.md +135 -0
- package/.koolie/core/tests/protocols/2026-09-19-testblaetter-buendel-1.md +250 -0
- package/.koolie/core/tests/protocols/2026-09-19-testblaetter-buendel-2.md +229 -0
- package/.koolie/core/tests/protocols/2026-09-19-testblaetter-buendel-3.md +293 -0
- package/.koolie/core/tests/protocols/2026-09-19-vorbedingungen-buendel-2.md +236 -0
- package/.koolie/core/tests/protocols/2026-09-19-vorbedingungen-buendel-3.md +253 -0
- package/.koolie/core/tests/protocols/2026-09-19-vorbedingungen-buendel-4.md +138 -0
- package/.koolie/core/tests/protocols/2026-09-20-messapparat-buendel-4.md +433 -0
- package/.koolie/core/tests/protocols/2026-09-20-testblaetter-buendel-4.md +321 -0
- package/.koolie/core/tests/protocols/2026-09-20-uebergabe-im-release-commit.md +146 -0
- package/.koolie/core/tests/protocols/2026-09-20-vorbedingungen-nachlauf-b4.md +259 -0
- package/.koolie/core/tests/protocols/2026-09-21-arbeitsplatz-im-kern.md +127 -0
- package/.koolie/core/tests/protocols/2026-09-21-nachlauf-buendel-4.md +157 -0
- package/.koolie/core/tests/protocols/2026-09-21-vorbedingungen-buendel-5.md +247 -0
- package/.koolie/core/tests/protocols/2026-09-21-wiederaufnahme-nachlauf-b4.md +190 -0
- package/.koolie/core/tests/protocols/2026-09-22-ap2-rest-devin-desktop.md +614 -0
- package/.koolie/core/tests/protocols/2026-09-22-hauptdokument-ap11.md +443 -0
- package/.koolie/core/tests/protocols/2026-09-22-herrichtung-buendel-5.md +224 -0
- package/.koolie/core/tests/protocols/2026-09-22-messtag-buendel-5.md +327 -0
- package/.koolie/core/tests/protocols/2026-09-22-quellenzuordnung-matrixzeilen.md +230 -0
- package/.koolie/core/tests/protocols/2026-09-22-sammelzellen-zentraler-katalog.md +354 -0
- package/.koolie/core/tests/protocols/2026-09-22-umbenennung-koolie.md +296 -0
- package/.koolie/core/tests/protocols/2026-09-22-verify-marker-abschaffen.md +283 -0
- package/.koolie/core/tests/protocols/2026-09-22-vortrag-und-name.md +261 -0
- package/.koolie/core/tests/protocols/2026-09-22-wirkungsnachweise-0.86.0.md +158 -0
- package/.koolie/core/tests/protocols/2026-09-23-archiv-zeilenenden.md +113 -0
- package/.koolie/core/tests/protocols/2026-09-23-bau-openai-codex.md +168 -0
- package/.koolie/core/tests/protocols/2026-09-23-chronik-und-vorlage.md +224 -0
- package/.koolie/core/tests/protocols/2026-09-23-erhebung-openai-codex.md +309 -0
- package/.koolie/core/tests/protocols/2026-09-23-freigabelauf-1.0.0-vorbereitung.md +119 -0
- package/.koolie/core/tests/protocols/2026-09-23-freigabelauf-1.0.0.md +150 -0
- package/.koolie/core/tests/protocols/2026-09-23-gegenzeichnung-rollenfrage.md +198 -0
- package/.koolie/core/tests/protocols/2026-09-23-reihenfolge-des-hebens.md +220 -0
- package/.koolie/core/tests/protocols/2026-09-23-word-fassung-und-blinder-fleck.md +307 -0
- package/.koolie/core/tests/protocols/2026-09-24-kopierweg-kern.md +98 -0
- package/.koolie/core/tests/protocols/2026-09-24-overlay-werte-einordnung.md +111 -0
- package/.koolie/core/tests/protocols/2026-09-24-pfadlisten-nul-getrennt.md +128 -0
- package/.koolie/core/tests/protocols/2026-09-24-uebergabe-lokal.md +85 -0
- package/.koolie/core/tests/protocols/2026-09-25-code-pack-posten.md +86 -0
- package/.koolie/core/tests/protocols/2026-09-25-dokumentationsstandard.md +101 -0
- package/.koolie/core/tests/protocols/2026-09-25-installer-je-zielsystem.md +134 -0
- package/.koolie/core/tests/protocols/2026-09-25-klasse-b-core-laufzeit.md +126 -0
- package/.koolie/core/tests/protocols/2026-09-25-klasse-b-governance.md +133 -0
- package/.koolie/core/tests/protocols/2026-09-25-klasse-b-skills.md +91 -0
- package/.koolie/core/tests/protocols/2026-09-25-lieferumfang.md +76 -0
- package/.koolie/core/tests/protocols/2026-09-25-overlay-muster-dokumente.md +107 -0
- package/.koolie/core/tests/protocols/2026-09-25-overlay-muster-general.md +100 -0
- package/.koolie/core/tests/protocols/2026-09-25-regel-register-posten.md +87 -0
- package/.koolie/core/tests/protocols/2026-09-26-attributionszeile.md +83 -0
- package/.koolie/core/tests/protocols/2026-09-26-auffindbarkeit.md +85 -0
- package/.koolie/core/tests/protocols/2026-09-26-bau-cursor.md +68 -0
- package/.koolie/core/tests/protocols/2026-09-26-bau-kiro.md +75 -0
- package/.koolie/core/tests/protocols/2026-09-26-mehrprojekt-tokenlast.md +174 -0
- package/.koolie/core/tests/protocols/2026-09-26-regelablage-pfadtoken.md +133 -0
- package/.koolie/core/tests/protocols/2026-09-26-skill-anweisungen.md +111 -0
- package/.koolie/core/tests/protocols/2026-09-26-testblaetter-modellwechsel.md +106 -0
- package/.koolie/core/tests/protocols/2026-09-27-mandat-und-reibung.md +58 -0
- package/.koolie/core/tests/protocols/2026-09-28-mcp-anbindung.md +72 -0
- package/.koolie/core/tests/protocols/2026-09-29-messapparat.md +75 -0
- package/.koolie/core/tests/protocols/2026-09-29-powershell.md +58 -0
- package/.koolie/core/tests/protocols/2026-09-29-pruefwerkzeuge.md +64 -0
- package/.koolie/core/tests/protocols/2026-09-29-registerpflege.md +228 -0
- package/.koolie/core/tests/protocols/2026-09-29-schutzschicht.md +95 -0
- package/.koolie/core/tests/protocols/2026-09-30-einsatzarchitektur.md +104 -0
- package/.koolie/core/tests/protocols/2026-09-30-modi-ausnahmen.md +77 -0
- package/.koolie/core/tests/protocols/2026-09-30-nachlauf-banner.md +85 -0
- package/.koolie/core/tests/protocols/2026-09-30-paketquellen.md +65 -0
- package/.koolie/core/tests/protocols/2026-09-30-pfadsemantik.md +79 -0
- package/.koolie/core/tests/protocols/2026-10-01-auftritt-und-suche.md +58 -0
- package/.koolie/core/tests/protocols/2026-10-01-befehl-im-projektverzeichnis.md +47 -0
- package/.koolie/core/tests/protocols/2026-10-01-erste-veroeffentlichung.md +60 -0
- package/.koolie/core/tests/protocols/2026-10-01-modusbindung-messfragen.md +107 -0
- package/.koolie/core/tests/protocols/README.md +14 -0
- package/.koolie/core/tests/scripts/hook-check-secrets.py +1307 -0
- package/.koolie/core/tests/scripts/hook-overlay-status.py +120 -0
- package/.koolie/core/tests/scripts/mermaid_renderer.py +67 -0
- package/.koolie/core/tests/scripts/overlay_status.py +130 -0
- package/.koolie/core/tests/scripts/probe-pruefungen.py +110 -0
- package/.koolie/core/tests/scripts/pruefungen/__init__.py +4 -0
- package/.koolie/core/tests/scripts/pruefungen/berechtigungen.py +1559 -0
- package/.koolie/core/tests/scripts/pruefungen/bestand.py +1433 -0
- package/.koolie/core/tests/scripts/pruefungen/dokumente.py +1262 -0
- package/.koolie/core/tests/scripts/pruefungen/gemeinsam.py +784 -0
- package/.koolie/core/tests/scripts/pruefungen/hooks.py +1188 -0
- package/.koolie/core/tests/scripts/pruefungen/overlay.py +1251 -0
- package/.koolie/core/tests/scripts/pruefungen/packs.py +1314 -0
- package/.koolie/core/tests/scripts/pruefungen/register.py +950 -0
- package/.koolie/core/tests/scripts/pruefungen/testkatalog.py +1202 -0
- package/.koolie/core/tests/scripts/pruefungen/werkzeuge.py +957 -0
- package/.koolie/core/tests/scripts/sonden/__init__.py +4 -0
- package/.koolie/core/tests/scripts/sonden/apparat.py +653 -0
- package/.koolie/core/tests/scripts/sonden/teil01_grundbestand_und_installation.py +999 -0
- package/.koolie/core/tests/scripts/sonden/teil02_packs_mandat_mcp.py +942 -0
- package/.koolie/core/tests/scripts/sonden/teil03_pruefungen_26_bis_36.py +1184 -0
- package/.koolie/core/tests/scripts/sonden/teil04_pruefungen_37_bis_45.py +1491 -0
- package/.koolie/core/tests/scripts/sonden/teil05_pruefungen_46_bis_55.py +1447 -0
- package/.koolie/core/tests/scripts/sonden/teil06_pruefungen_57_bis_65.py +739 -0
- package/.koolie/core/tests/scripts/sonden/teil07_overlay_und_lieferung.py +1014 -0
- package/.koolie/core/tests/scripts/sonden/teil08_pruefungen_66_bis_80.py +1325 -0
- package/.koolie/core/tests/scripts/sonden/teil09_pruefmittel_81_und_82.py +505 -0
- package/.koolie/core/tests/scripts/sonden/teil10_pruefungen_83_bis_95.py +1218 -0
- package/.koolie/core/tests/scripts/sonden/teil11_pruefungen_104_und_105.py +149 -0
- package/.koolie/core/tests/scripts/sonden/teil12_pruefungen_106_und_107.py +136 -0
- package/.koolie/core/tests/scripts/sonden/teil13_pfad_und_mustersemantik.py +150 -0
- package/.koolie/core/tests/scripts/sonden/teil14_modi_ausnahmen_skills.py +204 -0
- package/.koolie/core/tests/scripts/sonden/teil15_banner_und_nachlauf.py +193 -0
- package/.koolie/core/tests/scripts/sonden/teil16_koexistenz.py +114 -0
- package/.koolie/core/tests/scripts/sonden/teil17_paketquellen.py +115 -0
- package/.koolie/core/tests/scripts/sonden/teil18_modusbindung_m3_m5.py +113 -0
- package/.koolie/core/tests/scripts/validate-framework.py +1104 -0
- package/.koolie/core/tests/scripts/validate-output.py +296 -0
- package/.koolie/core/wirksamkeit.py +430 -0
- package/CONTRIBUTING.md +119 -0
- package/LICENSE +674 -0
- package/QUICKSTART.en.md +135 -0
- package/QUICKSTART.md +129 -0
- package/README.en.md +108 -0
- package/README.md +107 -0
- package/install.cmd +44 -0
- package/install.command +46 -0
- package/package.json +21 -0
- package/paketquellen/README.md +41 -0
- package/paketquellen/bauen.py +411 -0
- package/paketquellen/koolie.cmd +23 -0
- package/paketquellen/koolie_befehl.py +82 -0
- package/paketquellen/npm/koolie.js +26 -0
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
# Änderungsantrag `CR-2026-137`
|
|
2
|
+
|
|
3
|
+
| Feld | Inhalt |
|
|
4
|
+
|---|---|
|
|
5
|
+
| Titel | Der Kopierweg des Kerns – und das Archiv, aus dem er als sicher galt |
|
|
6
|
+
| Antragstellende Rolle | `<FRAMEWORK_OWNER>` |
|
|
7
|
+
| Datum | 2026-09-24 |
|
|
8
|
+
| Betroffene Artefakte | `README.md` (Wurzel, Warnsatz am Kopierbefehl); `docs/ADOPTION_GUIDE.md` `0.4.6` (Warnsatz in Abschnitt 2 Schritt 2, Abschnitt 3 Schritt 2, Abschnitt 4); `.koolie/QUELLREPOSITORIUM.md` (Absatz *„Sie wandert nicht in ein Projekt“*); `install.py` (neu `traegt_quellrepo_kennzeichen()` und die Auskunft am Ende des Laufs); `tests/scripts/probe-pruefungen.py` (Bündel `sonden_kennzeichen_im_projekt` **neu**: Sonde `D354`, Gegenprobe `D354a`); `governance/DECISION_LOG.md` (**D-354**); `governance/ADOPTION_REGISTRY.md`; `build/doc/00-kopf.md`, `26-qs-test.md`; `VERSION`, `CHANGELOG.md`, `docs/ROADMAP.md` |
|
|
9
|
+
| Ebene laut Entscheidungsbaum 6 | **Core** – Übernahmeanleitung und Installationswerkzeug |
|
|
10
|
+
| Art | **Korrektur.** Patch-Release nach `RELEASE_PROCESS.md` Abschnitt 1: kein Overlay-Feld berührt, keine neue Regel, **keine neue Prüfung** – eine Auskunft (Bauform von D-349) mit zwei Sondeneinheiten |
|
|
11
|
+
| Dringlichkeit | Regulär; zwei Fragen des Owners vom 2026-09-24 zu `.koolie/QUELLREPOSITORIUM.md` |
|
|
12
|
+
| Status | 🟢 **entschieden am 2026-09-24** (E1 bis E3), umgesetzt mit `1.4.4` |
|
|
13
|
+
|
|
14
|
+
---
|
|
15
|
+
|
|
16
|
+
## 1. Anlaß
|
|
17
|
+
|
|
18
|
+
Der Owner hat am 2026-09-24 zwei Fragen zum Kennzeichen des Quellrepositoriums gestellt
|
|
19
|
+
(D-351):
|
|
20
|
+
|
|
21
|
+
- **(a)** Braucht die Übernahmeanleitung einen Warnsatz, daß nur `.koolie/core/` und nie
|
|
22
|
+
ganz `.koolie/` kopiert wird?
|
|
23
|
+
- **(b)** Soll `install.py` melden, wenn es im Ziel `.koolie/QUELLREPOSITORIUM.md` findet?
|
|
24
|
+
|
|
25
|
+
Beide Anleitungen nennen seit `1.4.1` den richtigen Befehl (`cp -r .koolie/core
|
|
26
|
+
<projekt>/.koolie/`). Ob ein Leser, der das Verzeichnis `.koolie/` vor sich sieht, es
|
|
27
|
+
**ganz** kopiert, sagt keine von beiden.
|
|
28
|
+
|
|
29
|
+
## 2. Die Gegenprüfung
|
|
30
|
+
|
|
31
|
+
### 2.1 🔴 Die Annahme der Vorbereitung war falsch: Auch das Release-Archiv trägt das Kennzeichen
|
|
32
|
+
|
|
33
|
+
Die Vorbereitung ging davon aus, eine Kopie von ganz `.koolie/` sei nur aus dem
|
|
34
|
+
**Arbeitsbaum** gefährlich – dort liegt neben dem Kern das eigene, nicht versionierte
|
|
35
|
+
Overlay des Frameworks (`.koolie/project-overlay/`, `.gitignore` Zeile 36) –, aus dem
|
|
36
|
+
Release-Archiv dagegen harmlos. **Gemessen:**
|
|
37
|
+
|
|
38
|
+
| Quelle | `.koolie/QUELLREPOSITORIUM.md` | `.koolie/project-overlay/` |
|
|
39
|
+
|---|---|---|
|
|
40
|
+
| Release-Archiv `koolie-1.4.3.tar.gz` | 🔴 **enthalten** – die Datei ist versioniert, `git archive` nimmt sie mit | nicht enthalten |
|
|
41
|
+
| Arbeitsbaum des Frameworks | enthalten | 🔴 **enthalten**, 18 Dateien |
|
|
42
|
+
|
|
43
|
+
➡️ **Keine der beiden Quellen ist für eine Kopie von ganz `.koolie/` sicher.** Die
|
|
44
|
+
Anleitung, die nur aus einer Quelle harmlos wäre, gibt es nicht – beide sind eine Falle.
|
|
45
|
+
|
|
46
|
+
### 2.2 Was das Kennzeichen in einem Projekt bewirkt
|
|
47
|
+
|
|
48
|
+
Wegwerf-Installation: leeres Repositorium, Kern aus dem Arbeitsbaum über `git ls-files`
|
|
49
|
+
(der Weg aus `RELEASE_PROCESS.md` 4.1 Schritt 2), `install.py --client claude-code`,
|
|
50
|
+
committet, `__pycache__/` ignoriert. Validator ohne `--strict-overlay`:
|
|
51
|
+
|
|
52
|
+
| Lauf | Ergebnis | Was meldet |
|
|
53
|
+
|---|---|---|
|
|
54
|
+
| A – ohne Kennzeichen | **0 Fehler, 0 Warnungen** | – |
|
|
55
|
+
| B – Kennzeichen kopiert, nicht verfolgt | 🔴 **1 Fehler** | Prüfung 79: `LICENSE: fehlt` in der Projektwurzel |
|
|
56
|
+
| C – Kennzeichen committet | 🔴 **80 Fehler** | Prüfung 79 wie in B, dazu Prüfung 81 an **79** Projektträgern (Zeilenenden gegen die Mehrheit aller versionierten Träger) |
|
|
57
|
+
|
|
58
|
+
🔴 **Keine der Meldungen nennt die Ursache.** Wer `LICENSE: fehlt` liest, legt eine
|
|
59
|
+
Lizenz in die Projektwurzel – und hat danach ein Projekt, das dauerhaft als
|
|
60
|
+
Framework-Repositorium geprüft wird. Die Prüfungen 75 und 78 melden in dieser
|
|
61
|
+
Installation nichts, laufen aber ebenfalls im falschen Zweig.
|
|
62
|
+
|
|
63
|
+
`install.py` meldet heute **nichts**: Die Datei kommt in keiner Zeile des Werkzeugs vor.
|
|
64
|
+
|
|
65
|
+
### 2.3 🔴 Was die Kopie aus dem Arbeitsbaum beim Heben bewirkt
|
|
66
|
+
|
|
67
|
+
Dieselbe Installation, in `OVERLAY.md` eine Projektmarke angehängt und committet; dann
|
|
68
|
+
`cp -r <framework>/.koolie .` und `install.py --update`:
|
|
69
|
+
|
|
70
|
+
| Messung | Ergebnis |
|
|
71
|
+
|---|---|
|
|
72
|
+
| Projektmarke in `OVERLAY.md` | 🔴 **weg** – `OVERLAY.md` und `overlay-manifest.yaml` sind die des Frameworks |
|
|
73
|
+
| `install.py --update` | Exit 0; das Overlay steht in der Liste *„Projektdateien unberührt gelassen“* |
|
|
74
|
+
| Kennzeichen | liegt unverfolgt im Projekt |
|
|
75
|
+
|
|
76
|
+
➡️ ***Ein Werkzeug, das einen Pfad nie schreibt, kann nicht melden, was ein anderer
|
|
77
|
+
Schritt dort geschrieben hat.*** Die Aussage *„`install.py` überschreibt
|
|
78
|
+
`.koolie/project-overlay/` nie“* im Übernahmeleitfaden (Abschnitt 4) ist wahr – und
|
|
79
|
+
genau deshalb beruhigt sie an der falschen Stelle: Überschrieben hat der Kopierbefehl
|
|
80
|
+
davor. Das ist die *Zusage, die mehr verspricht als ihr Mechanismus hält*, an einem
|
|
81
|
+
Satz, der für sich richtig ist.
|
|
82
|
+
|
|
83
|
+
### 2.4 Warum ein Abbruch nicht baubar ist
|
|
84
|
+
|
|
85
|
+
Das Framework-Repositorium erzeugt seine eigenen Wurzeldateien mit `install.py`
|
|
86
|
+
(`.gitignore`: *„Im Framework-Repository sind die Wurzelbestandteile Erzeugnisse“*) und
|
|
87
|
+
trägt das Kennzeichen. Gesucht nach einem Merkmal, das beide Fälle trennt:
|
|
88
|
+
|
|
89
|
+
| Merkmal | trennt? |
|
|
90
|
+
|---|---|
|
|
91
|
+
| Kennzeichen vorhanden | nein – beide |
|
|
92
|
+
| git verfolgt das Kennzeichen | 🔴 **nein** – ein Projekt, das die Kopie committet hat, sieht genauso aus; und gerade dort meldet Prüfung 81 am meisten |
|
|
93
|
+
| Lage von `install.py` | nein – in beiden `<root>/.koolie/core/install.py` |
|
|
94
|
+
|
|
95
|
+
---
|
|
96
|
+
|
|
97
|
+
## 3. Vorlage zur Entscheidung
|
|
98
|
+
|
|
99
|
+
| # | Frage | Wege und ihre Preise |
|
|
100
|
+
|---|---|---|
|
|
101
|
+
| **E1** | **Warnsatz an den Kopierbefehlen?** | **Ja, an allen drei Stellen des Übernahmeleitfadens und in der Wurzel-README:** Neuaufnahme (Abschnitt 2 Schritt 2), Aktualisierung (Abschnitt 3 Schritt 2 – dort steht kein Befehl, aber *„ersetzen“*), mehrere Repositories (Abschnitt 4, dort mit der Einschränkung des Satzes über `install.py`). Der Satz nennt **beide** Quellen und **beide** Folgen. Dazu der Absatz *„Sie wandert nicht in ein Projekt“* im Kennzeichen selbst. ⚠️ **Preis:** Ein Warnsatz erreicht nur, wer liest – deshalb E2 |
|
|
102
|
+
| **E2** | **Auskunft oder Abbruch in `install.py`?** | **Auskunft** (Bauform von D-349): am Ende jedes Laufs mit Erstinstallation oder `--update`, solange das Kennzeichen im Ziel liegt; Exit-Code unverändert. Der Text nennt **beide** Fälle – Projekt (Datei entfernen, Overlay prüfen, weil eine Kopie aus dem Arbeitsbaum es ersetzt hat) und Framework-Repositorium (nichts zu tun). **Verworfen: Abbruch** – er träfe das Framework-Repositorium selbst, und kein Merkmal trennt die Fälle (2.4). **Verworfen: Auskunft nur bei unverfolgtem Kennzeichen** – sie schwiege in dem Projekt, das die Kopie schon committet hat. **Verworfen: das Kennzeichen per `export-ignore` aus dem Archiv nehmen** – es änderte den Archivinhalt gegen `git ls-tree` der Marke und hülfe beim Arbeitsbaum nicht. ⚠️ **Preis:** Im Framework-Repositorium steht die Auskunft bei jedem Lauf; ihr Text sagt, daß dort nichts zu tun ist |
|
|
103
|
+
| **E3** | **Wirkungsnachweis** | **Bündel `sonden_kennzeichen_im_projekt`** an einer echten Installation: Sonde `D354` (Kennzeichen liegt → Hinweis, Exit 0, **und Prüfung 79 verlangt die Lizenz**) und Gegenprobe `D354a` (ohne Kennzeichen → kein Hinweis, keine Lizenzmeldung). 🔴 **Die Sonde hält zwei Stellen gegeneinander:** `install.py` und der Validator führen den Pfad des Kennzeichens je für sich; wandert eine der beiden Konstanten, fällt sie. **Gegen den Vorstand fällt `D354`** |
|
|
104
|
+
|
|
105
|
+
**Nicht vorgelegt, benannt:** Die Meldungen der Prüfungen 79 und 81 nennen die Ursache
|
|
106
|
+
weiterhin nicht. Sie könnten es – ein Zusatz *„geprüft als Quellrepositorium“* –, aber
|
|
107
|
+
das ist ein Eingriff in vier Prüfungen für einen Fall, den jetzt zwei Stellen vorher
|
|
108
|
+
abfangen. Ein bereits überschriebenes Overlay erkennt **keine** Stelle; dafür gibt es
|
|
109
|
+
die Versionierung des Projekts.
|
|
110
|
+
|
|
111
|
+
**Verworfen im Gespräch (Vorschlag des Owners, begründet abgelehnt):** das Kennzeichen
|
|
112
|
+
in die Wurzel neben `README.md` legen, damit man ganz `.koolie/` kopieren kann. Es löst
|
|
113
|
+
das Overlay-Problem nicht, und der Gewinn wäre eine Zeile – `mkdir -p` steht in beiden
|
|
114
|
+
Anleitungen schon.
|
|
115
|
+
|
|
116
|
+
> **Empfehlung der Vorbereitung:** E1 bis E3 wie vorgelegt. Keine neue Prüfung – die
|
|
117
|
+
> Auskunft bleibt eine Auskunft (D-349), und der Validator behält seinen Gegenstand.
|
|
118
|
+
|
|
119
|
+
---
|
|
120
|
+
|
|
121
|
+
## 4. Umsetzung
|
|
122
|
+
|
|
123
|
+
1. `README.md` und `docs/ADOPTION_GUIDE.md` (`0.4.5` → `0.4.6`): Warnsatz an den drei
|
|
124
|
+
Stellen; Abschnitt 4 schränkt den Satz über `install.py` ein.
|
|
125
|
+
2. `.koolie/QUELLREPOSITORIUM.md`: Wer ganz `.koolie/` kopiert, nimmt es mit – auch aus
|
|
126
|
+
dem Archiv.
|
|
127
|
+
3. `install.py`: Konstante `QUELLREPO_KENNZEICHEN`, Funktion
|
|
128
|
+
`traegt_quellrepo_kennzeichen()`, Auskunft hinter der aus D-349.
|
|
129
|
+
4. `probe-pruefungen.py`: Bündel `sonden_kennzeichen_im_projekt` hinter dem Bündel zu
|
|
130
|
+
D-349.
|
|
131
|
+
5. `DECISION_LOG.md`: **D-354**.
|
|
132
|
+
6. `VERSION` `1.4.4`, Changelog, Roadmap, Dokumentkopf, Kapitel 26; beide übernehmenden
|
|
133
|
+
Projekte auf `1.4.4` gehoben und dort committet; Hauptdokument und Word-Fassung für
|
|
134
|
+
alle drei Packs gebaut.
|
|
135
|
+
|
|
136
|
+
## 5. Abnahme
|
|
137
|
+
|
|
138
|
+
Steht im Protokoll `tests/protocols/2026-09-24-kopierweg-kern.md`.
|
|
139
|
+
|
|
140
|
+
## 6. Entscheidung
|
|
141
|
+
|
|
142
|
+
**E1 bis E3 wie vorgelegt entschieden** (`<FRAMEWORK_OWNER>`, 2026-09-24; der Owner hat
|
|
143
|
+
vorab erklärt, den Empfehlungen der Vorbereitung zu folgen). Decision Record **D-354**.
|
|
144
|
+
Alle vier zählbaren Kriterien von D-11 bleiben **0**; kein Overlay-Feld berührt.
|
|
@@ -0,0 +1,118 @@
|
|
|
1
|
+
# Änderungsantrag `CR-2026-138`
|
|
2
|
+
|
|
3
|
+
| Feld | Inhalt |
|
|
4
|
+
|---|---|
|
|
5
|
+
| Titel | Das Overlay-Muster „General Development“ – und die Prüfung, die von fünf Pfadwerten einen sah |
|
|
6
|
+
| Antragstellende Rolle | `<FRAMEWORK_OWNER>` |
|
|
7
|
+
| Datum | 2026-09-25 |
|
|
8
|
+
| Betroffene Artefakte | `framework/overlay-patterns/general.md` (neu); `install.py` (`--overlay`, Füllschritt); `framework/runtime/permissions.json` (Schlitz `<READ_ONLY_PATHS>`); `tests/scripts/validate-framework.py` (**Prüfung 89**, Prüfung 59 formatgebunden); `tests/scripts/probe-pruefungen.py` (zwei Bündel); `clients/openai-codex/CLIENT_PACK.md` Abschnitt 5; `templates/project-overlay/OVERLAY.md` Abschnitt 4; `docs/ADOPTION_GUIDE.md`, `README.md`; `docs/ROADMAP.md`; `governance/DECISION_LOG.md` (**D-355** bis **D-358**, `K-69`); `governance/ADOPTION_REGISTRY.md`; `tests/TEST_CATALOG.md`; `build/doc/00-kopf.md`, `26-qs-test.md`; `VERSION`, `CHANGELOG.md` |
|
|
9
|
+
| Ebene laut Entscheidungsbaum 6 | **Core** – Auslieferbestand, Installationswerkzeug, Prüfapparat |
|
|
10
|
+
| Art | **MINOR** nach `RELEASE_PROCESS.md` Abschnitt 1: neue Funktion (`--overlay`), neue Prüfung, neuer Schlitz der Kernquelle; kein bestehendes Overlay-Feld geändert |
|
|
11
|
+
| Dringlichkeit | Posten `1.5.0` des Releaseplans (D-126, D-341, D-353) |
|
|
12
|
+
| Status | 🟢 **entschieden am 2026-09-25** (E1 bis E9), umgesetzt mit `1.5.0` |
|
|
13
|
+
|
|
14
|
+
---
|
|
15
|
+
|
|
16
|
+
## 1. Anlaß
|
|
17
|
+
|
|
18
|
+
Der Posten `1.5.0`: das optionale Projekt-Overlay *General Development*, gewählt über
|
|
19
|
+
`--overlay general` (D-126), mit dem Umfang aus D-353 – Füllschritt bei der
|
|
20
|
+
Erstinstallation, Wertabgleich aus `K-69`, die Frage nach `<READ_ONLY_PATHS>` in der
|
|
21
|
+
Kernquelle. **Offen waren seit D-126** vier Voraussetzungen: welche Felder das Muster
|
|
22
|
+
füllen darf, wer Owner ist, die Bauform und die Grenze zur Aktivierungsreife (D-57).
|
|
23
|
+
|
|
24
|
+
## 2. Die Gegenprüfung
|
|
25
|
+
|
|
26
|
+
### 2.1 Welche Werte ein Muster ohne Kenntnis des Projekts sicher angeben kann
|
|
27
|
+
|
|
28
|
+
Die Kernquelle der Berechtigungen trägt drei Pfadschlitze, alle im `deny`-Korb:
|
|
29
|
+
`<EXCLUDED_PATHS>` (Lesen und Schreiben), `<CI_CONFIG_PATHS>` und
|
|
30
|
+
`<QUALITY_GATE_CONFIG_PATHS>` (Schreiben). **Jeder Wert dort verschärft.** Ein Wert, der
|
|
31
|
+
auf ein Projekt nicht paßt, sperrt eine Datei, die es dort nicht gibt. Die übrigen
|
|
32
|
+
Pfadplatzhalter – `<ALLOWED_PATHS>`, `<TEST_PATHS>`, `<DOC_PATHS>` – **geben frei**, und
|
|
33
|
+
die Befehlsschlitze stehen im `ask`-Korb; ein Fehlgriff dort wäre eine Lockerung.
|
|
34
|
+
➡️ *Die Grenze ist keine Auswahl nach Geschmack, sondern eine Richtung.*
|
|
35
|
+
|
|
36
|
+
### 2.2 🔴 Prüfung 59 übersprang ihren dritten Gegenstand bei `openai-codex` still
|
|
37
|
+
|
|
38
|
+
Gemessen am 2026-09-25 an einer Wegwerf-Installation von `openai-codex`:
|
|
39
|
+
`<EXCLUDED_PATHS>` in `OVERLAY.md` und Laufzeitfassung auf `deploy/**` gesetzt, die
|
|
40
|
+
Berechtigungsdatei unverändert. `--strict-overlay` meldete **nichts** zu diesem Wert.
|
|
41
|
+
|
|
42
|
+
| Befund | Beleg |
|
|
43
|
+
|---|---|
|
|
44
|
+
| `.codex/config.toml` führt keinen Eintrag für `<EXCLUDED_PATHS>` und keinen für `deploy/**` | `grep` auf die Datei |
|
|
45
|
+
| Gegenstand (c) von Prüfung 59 ruft `json.loads` auf und kehrt bei `JSONDecodeError` zurück – *„check_config hat das bereits gemeldet“*, was für TOML nicht stimmt | Quelltext |
|
|
46
|
+
| Prüfung 59 steht **nicht** in `FORMATGEBUNDENE_PRUEFUNGEN`, und Prüfung 87 hält diese Liste gegen das Pack, **nicht gegen den Code** | Quelltext |
|
|
47
|
+
|
|
48
|
+
➡️ **Die Bauform *„zwei Stellen, die einander decken“* (0.57.0):** Die Liste war
|
|
49
|
+
vollständig in Bezug auf die Prüfungen, die sich auf sie berufen – und genau diese hier
|
|
50
|
+
tat es nicht.
|
|
51
|
+
|
|
52
|
+
### 2.3 Die vier übrigen Pfadplatzhalter in beiden Projekten
|
|
53
|
+
|
|
54
|
+
| | Pilot (`claude-code`) | Übungsrepositorium (`devin-desktop`) |
|
|
55
|
+
|---|---|---|
|
|
56
|
+
| Quelle: alle vier in der dreispaltigen Zeile von Abschnitt 4 | ja | ja |
|
|
57
|
+
| Laufzeitfassung **nennt** die Platzhalter | **ja, alle vier** | 🔴 **keinen der vier** – nur die Werte (*„Erlaubte Pfade: `backend/src/**`, …“*) |
|
|
58
|
+
| Schreibweise für „kein Wert“ | `nicht vorhanden` (Quelle), `keine` (Laufzeitfassung) für `<DOC_PATHS>` | – |
|
|
59
|
+
| Schreibsperre der Nur-Lese-Pfade im `deny`-Korb | von Hand, 2 Einträge | von Hand, 2 Einträge |
|
|
60
|
+
|
|
61
|
+
➡️ **Die Ersetzung statt der Bindung (D-160) stand im Übungsrepositorium an vier Stellen**,
|
|
62
|
+
seit dessen Laufzeitfassung besteht. Keine Prüfung konnte sie sehen, weil keine die vier
|
|
63
|
+
Platzhalter las.
|
|
64
|
+
|
|
65
|
+
### 2.4 Der Füllschritt an Wegwerf-Installationen aller drei Packs
|
|
66
|
+
|
|
67
|
+
| Pack | Berechtigungsdatei | Laufzeitfassung | `OVERLAY.md` |
|
|
68
|
+
|---|---|---|---|
|
|
69
|
+
| `claude-code` | alle Werte als `Read(…)`/`Edit(…)`; kein Schlitz der drei mehr wörtlich | Wert hinter `(<EXCLUDED_PATHS>)` | drei Wertzeilen, Vermerk im Änderungsverlauf |
|
|
70
|
+
| `devin-desktop` | dito mit `Read`/`Write` | dito | dito |
|
|
71
|
+
| `openai-codex` | 🔴 **nur ein Teil kommt an:** Teilbäume (`.github/workflows/**` → `":workspace/.github/workflows" = "read"`) und einzelne Dateinamen; Namensmuster mit `*` nicht | dito | dito |
|
|
72
|
+
|
|
73
|
+
⚠️ **Die erste Fassung der Musterdatei behauptete für `openai-codex`, die Globwerte
|
|
74
|
+
erreichten die Datei gar nicht.** Die Messung hat sie berichtigt, bevor sie ausgeliefert
|
|
75
|
+
wurde.
|
|
76
|
+
|
|
77
|
+
## 3. Vorlage zur Entscheidung
|
|
78
|
+
|
|
79
|
+
| # | Frage | Wege und ihre Preise |
|
|
80
|
+
|---|---|---|
|
|
81
|
+
| **E1** | **Welche Felder darf das Muster füllen?** | **Nur die drei Pfadplatzhalter im `deny`-Korb** (2.1). Die Grenze steht **im Werkzeug**: `install.py` nimmt keinen anderen Platzhalter an und bricht vor dem ersten Schreibvorgang ab. **Verworfen:** freigebende Pfade, Befehle, Rollen, Status. ⚠️ **Preis:** Das Muster füllt wenig – drei von rund vierzig Platzhaltern |
|
|
82
|
+
| **E2** | **Bauform: Varianten oder Kopien?** | **Eine Wertedatei, die nur die Abweichung trägt.** `install.py` schreibt die eine Vorlage und füllt aus derselben Tabelle alle drei Träger. **Verworfen:** *n* vollständige Kopien – ein zweites Register. ⚠️ **Preis:** Der Füllschritt hängt an der Form der Wertzeilen und bricht ab, wenn ein Anker fehlt |
|
|
83
|
+
| **E3** | **Wer ist Owner?** | **`<FRAMEWORK_OWNER>`**; das Muster ist ein Modulträger mit Steckbrief, Status `pilot` – `entwurf` höbe Kriterium 3 von D-11 auf 1. Es liegt unter `framework/overlay-patterns/`, **nicht** unter `templates/`, weil Prüfung 47 dort einen Ausfüllschlitz im Status verlangt |
|
|
84
|
+
| **E4** | **Grenze zur Aktivierungsreife (D-57)?** | Ein Overlay aus dem Muster **besteht** `--check-overlay-ready` **nicht** – die organisatorischen Pflichtwerte bleiben offen. Eine Sonde hält es fest |
|
|
85
|
+
| **E5** | **`<READ_ONLY_PATHS>` in der Kernquelle?** | **Ja, als Schlitz ohne Kernzusage.** Wirkt nur bei neuen Installationen; beide Projekte führen die Sperre schon von Hand (2.3). **Verworfen:** `core: true` – verlangte die Freigabe durch `<SECURITY_CONTACT>` für jedes Pack, das es nicht abbildet |
|
|
86
|
+
| **E6** | **Wie wird `K-69` geprüft?** | **Prüfung 89**, dieselben drei Gegenstände wie 59, gleicher Schweregrad; ein Overlay, das anders bindet, bekommt eine eigene Meldung; „kein Wert“ in beiden gemessenen Schreibweisen ist die leere Menge. ⚠️ **Preis:** Das Übungsrepositorium muß beim Heben seine Laufzeitfassung umschreiben (2.3) |
|
|
87
|
+
| **E7** | **Füllschritt je Client Pack?** | Laufzeitfassung und `OVERLAY.md` bei allen drei; die Berechtigungsdatei, soweit das Pack den Wert abbildet – bei `openai-codex` mit der benannten Lücke (2.4) |
|
|
88
|
+
| **E8** | **Einstufung?** | **MINOR, ohne Kontingent** – gemessen an Wegwerf-Installationen, nicht mit Sitzungsläufen |
|
|
89
|
+
| **E9** | **Prüfung 59 (c) formatgebunden** (2.2, im Bau gefunden) | **In `FORMATGEBUNDENE_PRUEFUNGEN` aufnehmen**, wie (c) von Prüfung 89, und in Abschnitt 5 des Packs nennen. **Verworfen:** (c) für TOML nachbauen – die Pfadrechteschicht kennt keine Musterform (D-346). ⚠️ **Preis:** Die Lücke bleibt, sie ist nur erklärt |
|
|
90
|
+
|
|
91
|
+
> **Empfehlung der Vorbereitung:** E1 bis E9 wie vorgelegt.
|
|
92
|
+
|
|
93
|
+
---
|
|
94
|
+
|
|
95
|
+
## 4. Umsetzung
|
|
96
|
+
|
|
97
|
+
1. `framework/overlay-patterns/general.md` neu; `install.py` mit `--overlay`, Füllschritt,
|
|
98
|
+
Vorlauf und vier Abbruchfällen.
|
|
99
|
+
2. `permissions.json`: Schlitz `write <READ_ONLY_PATHS>`.
|
|
100
|
+
3. Validator: Prüfung 89, `FORMATGEBUNDENE_PRUEFUNGEN` um 59 und 89; Register im
|
|
101
|
+
Kopfkommentar.
|
|
102
|
+
4. Sondenbündel `sonden_overlay_pfadabgleich` und `sonden_overlay_muster`.
|
|
103
|
+
5. Overlay-Vorlage Abschnitt 4, Leitfaden, README, Codex-Pack Abschnitt 5, Roadmap (mit
|
|
104
|
+
eigenem Planabschnitt für `1.6.0`), Decision Log, Bestandsliste, Katalog, Kopf,
|
|
105
|
+
Kapitel 26, `VERSION`, Changelog.
|
|
106
|
+
6. Beide Projekte heben; im Übungsrepositorium die vier Zeilen der Laufzeitfassung auf
|
|
107
|
+
die Bindung umstellen.
|
|
108
|
+
|
|
109
|
+
## 5. Abnahme
|
|
110
|
+
|
|
111
|
+
Steht im Protokoll `tests/protocols/2026-09-25-overlay-muster-general.md`.
|
|
112
|
+
|
|
113
|
+
## 6. Entscheidung
|
|
114
|
+
|
|
115
|
+
**E1 bis E9 wie vorgelegt entschieden** (`<FRAMEWORK_OWNER>`, 2026-09-25; E1 bis E8 vor dem
|
|
116
|
+
Bau vorgelegt und mit *„wie empfohlen“* beantwortet, E9 im Bau gefunden – der Owner hat
|
|
117
|
+
vorab erklärt, den Empfehlungen der Vorbereitung zu folgen). Decision Records **D-355**
|
|
118
|
+
bis **D-358**; `K-69` beantwortet. Alle vier zählbaren Kriterien von D-11 bleiben **0**.
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
# Änderungsantrag `CR-2026-139`
|
|
2
|
+
|
|
3
|
+
| Feld | Inhalt |
|
|
4
|
+
|---|---|
|
|
5
|
+
| Titel | Best Practices im Overlay-Muster „General“ – und das Register, das auf nichts zeigen durfte |
|
|
6
|
+
| Antragstellende Rolle | `<FRAMEWORK_OWNER>` |
|
|
7
|
+
| Datum | 2026-09-25 |
|
|
8
|
+
| Betroffene Artefakte | `framework/overlay-patterns/general.md` (`0.2.0`); `framework/overlay-patterns/general/documents/` (sechs Dokumente, neu); `install.py` (Dokumente, Manifest, Abbruchfälle); `tests/scripts/validate-framework.py` (Prüfung 8); `tests/scripts/probe-pruefungen.py` (Sonden `8a`, `8b`, `M359` bis `M359c`); `tests/TEST_CATALOG.md`; `docs/ADOPTION_GUIDE.md`, `README.md`; `docs/ROADMAP.md`; `governance/DECISION_LOG.md` (**D-359** bis **D-361**); `governance/ADOPTION_REGISTRY.md`; `build/doc/00-kopf.md`, `26-qs-test.md`; `VERSION`, `CHANGELOG.md` |
|
|
9
|
+
| Ebene laut Entscheidungsbaum 6 | **Core** – Auslieferbestand, Installationswerkzeug, Prüfapparat |
|
|
10
|
+
| Art | **MINOR** nach `RELEASE_PROCESS.md` Abschnitt 1: neuer Auslieferbestand und erweiterte Prüfung; kein bestehendes Overlay-Feld geändert |
|
|
11
|
+
| Dringlichkeit | Auftrag des Owners vom 2026-09-25, **vor** dem Installer |
|
|
12
|
+
| Status | 🟢 **entschieden am 2026-09-25** (E1 bis E10), umgesetzt mit `1.6.0` |
|
|
13
|
+
|
|
14
|
+
---
|
|
15
|
+
|
|
16
|
+
## 1. Anlaß
|
|
17
|
+
|
|
18
|
+
Der `<FRAMEWORK_OWNER>` hat am 2026-09-25 beauftragt, daß das Muster `general`
|
|
19
|
+
**allgemeingültige Best Practices der Softwareentwicklung** für die Bereiche des Overlays
|
|
20
|
+
mitliefert – Coding Guidelines, Definition of Ready, Definition of Done und so weiter –,
|
|
21
|
+
**nur, was auf jedes Softwareprojekt paßt**. `1.5.0` hat das nicht getan: Das Muster füllt
|
|
22
|
+
drei sperrende Pfadplatzhalter und sonst nichts (D-355).
|
|
23
|
+
|
|
24
|
+
## 2. Die Gegenprüfung
|
|
25
|
+
|
|
26
|
+
### 2.1 Was der Kern schon regelt
|
|
27
|
+
|
|
28
|
+
Der Kern führt für KI-unterstützte Arbeit bereits eine normative Definition of Done
|
|
29
|
+
(`04-quality.md` Abschnitt 3), Anforderungen an Änderungen (Q1 bis Q8), Review-Prüfpunkte
|
|
30
|
+
(`07-review-rules.md`, RV1 bis RV12) und die Checklisten 03 (vor der Änderung), 05 (Tests),
|
|
31
|
+
06 (Sicherheit), 07 (neue Abhängigkeiten) und 08 (Merge Request). **Ein Musterdokument,
|
|
32
|
+
das davon etwas wiederholt, wäre ein zweites Register.**
|
|
33
|
+
|
|
34
|
+
🔴 **Ein Widerspruch, gefunden bevor geschrieben wurde:** Die *Pfadfinderregel* in ihrer
|
|
35
|
+
üblichen Form – *„Code sauberer hinterlassen, als man ihn vorfand“* – widerspricht **Q1**
|
|
36
|
+
(ein Ziel je Änderung) und **RV1** (Scope-Treue). Sie gehört zu den verbreitetsten Clean-
|
|
37
|
+
Code-Regeln und paßt trotzdem nicht in dieses Framework, jedenfalls nicht ungekürzt.
|
|
38
|
+
|
|
39
|
+
### 2.2 Was die Dokumentablage der Vorlage anbietet
|
|
40
|
+
|
|
41
|
+
`templates/project-overlay/documents/` führt dreizehn Typen; das Manifest kennt dieselben
|
|
42
|
+
und `other`. Sieben davon beschreiben das Projekt (`architecture`, `roadmap`, `deployment`,
|
|
43
|
+
`roles`, `glossary`) oder werden vom Kern getragen (`ai-governance`, `ai-process-model`).
|
|
44
|
+
**Sechs bleiben, die ein allgemeines Dokument tragen können.**
|
|
45
|
+
|
|
46
|
+
### 2.3 🔴 Prüfung 8 prüft nicht, ob ein registriertes Dokument existiert
|
|
47
|
+
|
|
48
|
+
`check_manifest` prüft Kopfschlüssel, Pflichtfelder und Aufzählungswerte – **nicht, ob
|
|
49
|
+
unter `path` etwas liegt**. Ein Manifest, dessen Einträge auf nichts zeigen, besteht.
|
|
50
|
+
Gezählt am 2026-09-25: Beide übernehmenden Projekte führen nur existierende Pfade (Pilot
|
|
51
|
+
14, Übungsrepositorium 7 Einträge). **Prüfung 8 hatte keine einzige Sonde.**
|
|
52
|
+
|
|
53
|
+
### 2.4 Der Status eines Dokuments und Kriterium 3
|
|
54
|
+
|
|
55
|
+
Ein Steckbrief mit Status `entwurf` in einem Kernträger hebt Kriterium 3 von D-11
|
|
56
|
+
(Prüfung 46, 47). Die Dokumente tragen deshalb **keinen** Steckbrief; der Status
|
|
57
|
+
`entwurf` steht im **Manifest des Projekts**, wo er den Lebenszyklus des Projektdokuments
|
|
58
|
+
beschreibt. Modulträger bleibt das Muster.
|
|
59
|
+
|
|
60
|
+
## 3. Vorlage zur Entscheidung
|
|
61
|
+
|
|
62
|
+
| # | Frage | Wege und ihre Preise |
|
|
63
|
+
|---|---|---|
|
|
64
|
+
| **E1** | **Ort** | **Registrierte Dokumente unter `documents/<typ>/`**, im Muster mitgeliefert, im Manifest eingetragen. **Verworfen:** Text in `OVERLAY.md` Abschnitt 9 bis 12 – bei jedem Projekt mit eigenen Dokumenten ein zweites Register |
|
|
65
|
+
| **E2** | **Grenze zum Kern** | **Nur ergänzen und verweisen, nichts wiederholen** (2.1); jedes Dokument sagt in einem eigenen Abschnitt, wo die Grenze liegt; bei Widerspruch gilt der Kern. Die Pfadfinderregel nur eingeschränkt |
|
|
66
|
+
| **E3** | **Inhaltliche Grenze** | **Nur allgemein anerkannte, werkzeug- und sprachneutrale Praktiken**; keine Schwellenwerte, keine Werkzeugnamen, keine Vorgaben, die Vorgehensmodell, Teamgröße oder Plattform voraussetzen. D-355 wird fortgeschrieben, nicht aufgehoben. ⚠️ **Preis:** Keine Maschine prüft, ob ein Satz auf jedes Projekt paßt |
|
|
67
|
+
| **E4** | **Status** | Kontextklasse K1, im Manifest `entwurf`, **Vorschlagsvermerk im Kopf jedes Dokuments**; kein eigener Steckbrief (2.4). Das Overlay bleibt nicht aktivierungsreif |
|
|
68
|
+
| **E5** | **Laden** | **`on-demand`**; die K1-Liste der Laufzeitfassung bleibt offen. ⚠️ **Preis:** Bis der Overlay Owner freigibt, wirken die Dokumente nicht auf den Client. **Verworfen:** `summary`/`rule` – sofort wirksam mit ungeprüftem Inhalt, dazu weitere Träger je Pack |
|
|
69
|
+
| **E6** | **Beispiele der Manifestvorlage** | **Ersetzen**, nicht ergänzen – drei Einträge mit Ausfüllschlitz neben sechs echten wären ein Register mit Einträgen, die auf nichts zeigen |
|
|
70
|
+
| **E7** | **Auswahl der Typen** | **Sechs:** `coding-guidelines`, `definition-of-ready`, `definition-of-done`, `quality`, `security`, `branching-strategy` (2.2) |
|
|
71
|
+
| **E8** | **Weitere Platzhalter, Bestandsprojekte** | **Keine weiteren Platzhalter** (`<PROJECT_RULES_PATH>`, DoR/DoD-Pfade bleiben offen). **Kein Modus für Bestandsprojekte** (D-126); der Leitfaden beschreibt die Übernahme von Hand |
|
|
72
|
+
| **E9** | **Release** | **MINOR `1.6.0`**, ohne Kontingent; der Installer rückt auf **`1.7.0`** – er bietet `--overlay` an und soll das vollständige Muster ausliefern. ⚠️ **Preis:** die dritte Verschiebung des Installers (D-339, D-341) |
|
|
73
|
+
| **E10** | **Prüfbarkeit** (im Zuge der Vorbereitung gefunden, 2.3) | **Sonden `M359` bis `M359c`** an echten Erstinstallationen, und **Prüfung 8 prüft die Existenz von `path` und – bei `load: rule` – `rule_file`**, außer der Pfad trägt einen Ausfüllschlitz. **Verworfen:** eine eigene Prüfung für die Musterablage – `install.py` hält Ablage und Beschreibung ohnehin gegeneinander und bricht ab |
|
|
74
|
+
|
|
75
|
+
> **Empfehlung der Vorbereitung:** E1 bis E10 wie vorgelegt.
|
|
76
|
+
|
|
77
|
+
---
|
|
78
|
+
|
|
79
|
+
## 4. Umsetzung
|
|
80
|
+
|
|
81
|
+
1. Sechs Dokumente unter `framework/overlay-patterns/general/documents/<typ>/muster-general.md`.
|
|
82
|
+
2. `general.md` auf `0.2.0`: Abschnitt *„Die Dokumente“* mit Grenze, Tabelle der Typen und
|
|
83
|
+
dem, was bewußt fehlt.
|
|
84
|
+
3. `install.py`: `muster_dokumente()`, `muster_manifest()`, Schreiben der Dokumente bei der
|
|
85
|
+
Erstinstallation, Vermerk im Änderungsverlauf, Hinweis am Ende des Laufs, Abbruch bei
|
|
86
|
+
vorhandenen Dokumenten.
|
|
87
|
+
4. Validator: Prüfung 8 um die Existenz erweitert; Sondenmenge um Prüfung 8.
|
|
88
|
+
5. Sonden `8a`, `8b`, Gegenprobe `8a`; im Bündel `sonden_overlay_muster` die Sonden `M359`
|
|
89
|
+
bis `M359b` und die Gegenprobe `M359c`.
|
|
90
|
+
6. Leitfaden (Abschnitt 2 und 3), README, Roadmap, Decision Log, Bestandsliste, Katalog,
|
|
91
|
+
Kopf, Kapitel 26, `VERSION`, Changelog.
|
|
92
|
+
7. Beide Projekte heben; das Muster erreicht sie nicht.
|
|
93
|
+
|
|
94
|
+
## 5. Abnahme
|
|
95
|
+
|
|
96
|
+
Steht im Protokoll `tests/protocols/2026-09-25-overlay-muster-dokumente.md`.
|
|
97
|
+
|
|
98
|
+
## 6. Entscheidung
|
|
99
|
+
|
|
100
|
+
**E1 bis E10 wie vorgelegt entschieden** (`<FRAMEWORK_OWNER>`, 2026-09-25; E1 bis E9 vor dem
|
|
101
|
+
Bau vorgelegt und mit *„Machen wir es“* angenommen. Von E10 war die Sonde vorgelegt und der
|
|
102
|
+
Befund an Prüfung 8 benannt; die Erweiterung der Prüfung selbst ist im Bau entschieden worden –
|
|
103
|
+
der Owner hat vorab erklärt, den Empfehlungen der Vorbereitung zu folgen).
|
|
104
|
+
Decision Records **D-359** bis **D-361**. Alle vier zählbaren Kriterien von D-11 bleiben
|
|
105
|
+
**0**.
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
# Änderungsantrag `CR-2026-140`
|
|
2
|
+
|
|
3
|
+
| Feld | Inhalt |
|
|
4
|
+
|---|---|
|
|
5
|
+
| Titel | Der Installer je Zielsystem – und die Prüfung, die ohne PyYAML Fehler erfand |
|
|
6
|
+
| Antragstellende Rolle | `<FRAMEWORK_OWNER>` |
|
|
7
|
+
| Datum | 2026-09-25 |
|
|
8
|
+
| Betroffene Artefakte | `install.cmd`, `install.command` (neu, Wurzel); `install_dialog.py` (neu); `install.py` (`--target`, `PYTHON_MINDEST`); `tests/scripts/validate-framework.py` (Prüfung 33, `TEXT_EXT`); `tests/scripts/probe-pruefungen.py` (Bündel `sonden_kopierweg`, `sonden_ohne_pyyaml`, Sonden `6s`); `docs/ADOPTION_GUIDE.md`, `README.md`; `governance/RELEASE_PROCESS.md` (Schritt 2); `docs/ROADMAP.md`; `governance/DECISION_LOG.md` (**D-362** bis **D-366**); `governance/ADOPTION_REGISTRY.md`; `build/doc/00-kopf.md`, `15-referenzstruktur.md`, `26-qs-test.md`; `VERSION`, `CHANGELOG.md` |
|
|
9
|
+
| Ebene laut Entscheidungsbaum 6 | **Core** – Installationswerkzeug, Auslieferbestand, Prüfapparat |
|
|
10
|
+
| Art | **MINOR** nach `RELEASE_PROCESS.md` Abschnitt 1: neuer Übernahmeweg neben dem bisherigen, erweiterte Prüfung; kein Overlay-Feld geändert |
|
|
11
|
+
| Dringlichkeit | Vorgabe des Owners vom 2026-09-25; Ziel-Release `1.7.0` nach D-361 |
|
|
12
|
+
| Status | 🟢 **entschieden am 2026-09-25** (E1 bis E11), umgesetzt mit `1.7.0` |
|
|
13
|
+
|
|
14
|
+
---
|
|
15
|
+
|
|
16
|
+
## 1. Anlaß
|
|
17
|
+
|
|
18
|
+
Ein Zielprojekt bekam das Framework bis `1.6.0` über einen Handgriff: den Kern aus Archiv
|
|
19
|
+
oder Klon ins Projekt kopieren, dann `install.py` dort aufrufen (`CR-2026-098`, `K-75`).
|
|
20
|
+
Der `<FRAMEWORK_OWNER>` hat am 2026-09-25 vorgegeben: **ein Installer je Zielsystem, im
|
|
21
|
+
Fokus Windows und macOS**; wer Linux oder ein anderes Unix nutzt, bleibt beim bisherigen
|
|
22
|
+
Weg. Der Posten war dreimal gerückt (D-339, D-341, D-361).
|
|
23
|
+
|
|
24
|
+
## 2. Die Gegenprüfung
|
|
25
|
+
|
|
26
|
+
### 2.1 Woran der Handweg zweimal gebrochen ist
|
|
27
|
+
|
|
28
|
+
Wer ganz `.koolie/` kopiert, nimmt das Kennzeichen des Quellrepositoriums und aus einem
|
|
29
|
+
Klon dessen Overlay mit (D-354); wer mit `git archive HEAD` hebt, liefert den Stand von
|
|
30
|
+
vorhin (D-333). **Beides sind Fehler des Handgriffs, nicht des Werkzeugs** – ein Werkzeug,
|
|
31
|
+
das nur den Kern kopiert, kann sie nicht machen.
|
|
32
|
+
|
|
33
|
+
### 2.2 Was der Zielrechner mitbringen muß
|
|
34
|
+
|
|
35
|
+
`install.py`, der Validator und die Hooks sind Python. Die Hooks laufen in jeder Sitzung;
|
|
36
|
+
**ein Installer ohne Python-Voraussetzung verschöbe die Frage in die erste Sitzung.**
|
|
37
|
+
Gemessen am 2026-09-25 mit Python 3.8.20 neben 3.14: Installationen aller drei Packs
|
|
38
|
+
byteweise gleich, der Validator mit PyYAML zeilengleich, alle 41 Python-Träger
|
|
39
|
+
kompilieren. 3.7 war auf dem Meßplatz nicht beschaffbar.
|
|
40
|
+
|
|
41
|
+
### 2.3 Die Startbedingungen der beiden Systeme
|
|
42
|
+
|
|
43
|
+
| System | Befund | Folge |
|
|
44
|
+
|---|---|---|
|
|
45
|
+
| Windows | `Get-ExecutionPolicy -List`: `LocalMachine AllSigned`, `CurrentUser RemoteSigned` – ein heruntergeladenes `.ps1` startet per Doppelklick nicht | Starter als `.cmd` |
|
|
46
|
+
| Windows | `WindowsApps\python.exe` liegt im Suchpfad und startet ohne installiertes Python kein Python | Versionsprobe statt Namensprobe; `clientmap.python_interpreter()` kennt die Falle schon |
|
|
47
|
+
| Windows | Das Archiv liefert mit ausdrücklicher Zeilenendeform LF (D-328); `cmd.exe` findet Sprungmarken in LF-Dateien nicht zuverlässig | Starter ohne Sprungmarke, Sonde `T365` |
|
|
48
|
+
| macOS | Ein `.command` öffnet sich per Doppelklick im Terminal, **wenn** es ausführbar ist; kein Träger des Repositoriums trug `100755` | Modus gesetzt, Sonde `T365` |
|
|
49
|
+
| macOS | `/usr/bin/python3` ist ohne Command Line Tools ein Platzhalter | Versionsprobe |
|
|
50
|
+
|
|
51
|
+
### 2.4 🔴 Prüfung 33 erfand ohne PyYAML Fehler
|
|
52
|
+
|
|
53
|
+
Beim Messen der Mindestversion: Ohne PyYAML meldete der Validator an **jeder**
|
|
54
|
+
`claude-code`-Installation neun Skills mit leerem `disallowed-tools` – Prüfung 33 las aus
|
|
55
|
+
dem Rohtext des Frontmatters mit `.get()` nichts. Die Warnung dazu sagte, die Prüfungen
|
|
56
|
+
4, 5 und 8 liefen *„eingeschränkt“*; Prüfung 33 nannte sie nicht, und sie lief nicht
|
|
57
|
+
eingeschränkt, sondern falsch. **Das trifft den Installer:** Der Starter installiert kein
|
|
58
|
+
PyYAML nach.
|
|
59
|
+
|
|
60
|
+
### 2.5 🔴 Die Starter lagen außerhalb des Prüfapparats
|
|
61
|
+
|
|
62
|
+
`TEXT_EXT` führte weder `.cmd` noch `.command`. Nach der Aufnahme meldete die
|
|
63
|
+
Inhaltsprüfung in beiden Startern sofort eine URL außerhalb der Allowlist.
|
|
64
|
+
|
|
65
|
+
### 2.6 Der Lieferumfang
|
|
66
|
+
|
|
67
|
+
Die Roadmap nannte einen **wählbaren Lieferumfang** (*„alles oder nur das zur Nutzung
|
|
68
|
+
Nötige“*). Gemessen: Hooks und Validator liegen unter `tests/scripts/`. Der naheliegende
|
|
69
|
+
Schnitt *„ohne `tests/`“* bräche jede Installation.
|
|
70
|
+
|
|
71
|
+
## 3. Vorlage zur Entscheidung
|
|
72
|
+
|
|
73
|
+
Vorgelegt am 2026-09-25 als Fragen (a) bis (j), angenommen mit *„a – i passt“*.
|
|
74
|
+
|
|
75
|
+
| # | Frage | Wege und ihre Preise |
|
|
76
|
+
|---|---|---|
|
|
77
|
+
| **E1** | **Python voraussetzen?** (a) | **Ja, dünne Starter je System**, eine Installationslogik. **Verworfen:** eigenständige Programme – Bau je System, Signatur und Notarisierung, und die Hooks brauchten trotzdem Python |
|
|
78
|
+
| **E2** | **Mindestversion** (b) | **Messen, nicht setzen:** 3.8 (2.2). ⚠️ **Preis:** unter Windows gemessen, auf macOS übertragen |
|
|
79
|
+
| **E3** | **Starter unter Windows** (c) | **`install.cmd`** (2.3); unter macOS **`install.command`** |
|
|
80
|
+
| **E4** | **Ort der Kopierlogik** (d) | **`install.py --target`**; die Starter suchen nur Python |
|
|
81
|
+
| **E5** | **Bedienung** (e) | **Die Starter fragen**, `install.py` bleibt parametergesteuert. Die Fragen stehen in `install_dialog.py`, nicht in den Starterdateien – zwei Shell-Dialekte wären zwei Dialoge |
|
|
82
|
+
| **E6** | **Heben** (f) | **Derselbe Starter hebt**, wenn im Projekt ein Kern liegt (`--target --update`); `RELEASE_PROCESS.md` Schritt 2 nennt den Befehl |
|
|
83
|
+
| **E7** | **Prüfbarkeit der Starter** (aus der Umsetzung, 2.3 und 2.5) | **`TEXT_EXT` um `.cmd`, `.command`**; Sonde `T365` für Sprungmarke und Modus, `T363` für die Mindestversion an drei Stellen |
|
|
84
|
+
| **E8** | **Nachinstallieren** (h) | **Nein** – weder Python noch PyYAML; der Starter nennt den Weg und hält an |
|
|
85
|
+
| **E9** | **Ablage** (i) | **Wurzel des Archivs** |
|
|
86
|
+
| **E10** | **Prüfung 33 ohne PyYAML** (aus der Messung, 2.4) | **Zeilenweiser Rückfall** für das einzeilige Feld. **Verworfen:** aussetzen – das schaltete die Prüfung gegen B01 genau auf den Zielrechnern ab |
|
|
87
|
+
| **E11** | **Lieferumfang** (g) | **Nicht in `1.7.0`**, eigener Posten `1.8.0` (2.6) |
|
|
88
|
+
| (j) | **Abnahme auf macOS** | ⚠️ **Offen.** Geprüft unter Git Bash und Linux (`dash`); die Abnahme auf macOS liegt beim Owner |
|
|
89
|
+
|
|
90
|
+
> **Empfehlung der Vorbereitung:** E1 bis E11 wie vorgelegt.
|
|
91
|
+
|
|
92
|
+
---
|
|
93
|
+
|
|
94
|
+
## 4. Umsetzung
|
|
95
|
+
|
|
96
|
+
1. `install.py`: `--target <projekt>` (nur mit `--update`, `--client`, `--overlay`,
|
|
97
|
+
`--dry-run`), `quelle_kerndateien()` (Klon: `git ls-files`, nur wenn die Klonwurzel die
|
|
98
|
+
Quellwurzel ist; sonst Verzeichnis ohne `__pycache__` und `build/out`), Kopie über
|
|
99
|
+
`core.koolie-neu`, Tausch über `core.koolie-alt`, Aufruf des kopierten `install.py`,
|
|
100
|
+
Rückbau bei dessen Scheitern; `PYTHON_MINDEST` und Prüfung beim Start.
|
|
101
|
+
2. `install_dialog.py`: Projektverzeichnis (hineingezogener Pfad), bei vorhandenem Kern
|
|
102
|
+
Heben, sonst Client und Muster; Befehl zeigen, bestätigen, ausführen; `q` bricht ab.
|
|
103
|
+
3. `install.cmd`, `install.command` in der Wurzel; `install.command` mit `100755`.
|
|
104
|
+
4. Validator: `_flaches_feld()` für Prüfung 33; `TEXT_EXT` um `.cmd`, `.command`.
|
|
105
|
+
5. Sonden: Bündel `sonden_kopierweg` (`T362` bis `T362h`, `T363`, `T365`), Bündel
|
|
106
|
+
`sonden_ohne_pyyaml` (`S364`, `S364a`), Sonden `6s` an beiden Startern.
|
|
107
|
+
6. Leitfaden, README, Schritt 2 des Release-Prozesses, Roadmap, Decision Log,
|
|
108
|
+
Bestandsliste, Kopf, Kapitel 15 und 26, `VERSION`, Changelog.
|
|
109
|
+
7. Beide Projekte heben – **zum ersten Mal mit `--target --update`**.
|
|
110
|
+
|
|
111
|
+
## 5. Abnahme
|
|
112
|
+
|
|
113
|
+
Steht im Protokoll `tests/protocols/2026-09-25-installer-je-zielsystem.md`.
|
|
114
|
+
|
|
115
|
+
## 6. Entscheidung
|
|
116
|
+
|
|
117
|
+
**E1 bis E11 wie vorgelegt entschieden** (`<FRAMEWORK_OWNER>`, 2026-09-25; (a) bis (i) vor
|
|
118
|
+
dem Bau vorgelegt und angenommen, E7 und E10 aus der Umsetzung – der Owner hat vorab
|
|
119
|
+
erklärt, den Empfehlungen der Vorbereitung zu folgen). (j) bleibt offen. Decision Records
|
|
120
|
+
**D-362** bis **D-366**. Alle vier zählbaren Kriterien von D-11 bleiben **0**.
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
# Änderungsantrag `CR-2026-141`
|
|
2
|
+
|
|
3
|
+
| Feld | Inhalt |
|
|
4
|
+
|---|---|
|
|
5
|
+
| Titel | Der wählbare Lieferumfang – und die Liste, die sich nicht ableiten ließ |
|
|
6
|
+
| Antragstellende Rolle | `<FRAMEWORK_OWNER>` |
|
|
7
|
+
| Datum | 2026-09-25 |
|
|
8
|
+
| Betroffene Artefakte | `clientmap.py` (`NACHWEIS_ABLAGEN`, `lieferumfang()`); `install.py` (`--lieferumfang`, `LIEFERUMFANG`, Pfadgrenze); `install_dialog.py`; `tests/scripts/validate-framework.py` (**Prüfung 90**, `HINWEIS`, Prüfungen 12, 76, 77, 80); `tests/scripts/probe-pruefungen.py` (Bündel `sonden_lieferumfang`, Sonden `90`, `90a`, `T362`); `tests/TEST_CATALOG.md`; `docs/ADOPTION_GUIDE.md`, `README.md`; `governance/RELEASE_PROCESS.md` (Schritte 5 und 6); `docs/ROADMAP.md`; `governance/DECISION_LOG.md` (**D-367** bis **D-370**, `K-75`, `K-122`); `governance/ADOPTION_REGISTRY.md`; `build/doc/00-kopf.md`, `15-referenzstruktur.md`, `26-qs-test.md`, `31-anhaenge.md`; `VERSION`, `CHANGELOG.md` |
|
|
9
|
+
| Ebene laut Entscheidungsbaum 6 | **Core** – Installationswerkzeug, Auslieferbestand, Prüfapparat |
|
|
10
|
+
| Art | **MINOR** nach `RELEASE_PROCESS.md` Abschnitt 1: neue Wahl beim Übernehmen, neue Prüfung, neue Ausgabeform; der Standard bleibt der bisherige Umfang, kein Overlay-Feld geändert |
|
|
11
|
+
| Dringlichkeit | Posten `1.8.0` nach D-366 |
|
|
12
|
+
| Status | 🟢 **entschieden am 2026-09-25** (E1 bis E10), umgesetzt mit `1.8.0` |
|
|
13
|
+
|
|
14
|
+
---
|
|
15
|
+
|
|
16
|
+
## 1. Anlaß
|
|
17
|
+
|
|
18
|
+
`K-75` fragt seit `0.72.0`, was ins **Mindestpaket** gehört und womit ein Projekt mit
|
|
19
|
+
reduziertem Umfang seine Übernahme prüft. `1.7.0` hat den Lieferumfang aus dem Posten des
|
|
20
|
+
Installers gelöst (D-366): Hooks und Validator liegen unter `tests/scripts/`, der Schnitt
|
|
21
|
+
*„ohne `tests/`“* bräche jede Installation, und **die Liste gehört abgeleitet, nicht
|
|
22
|
+
aufgezählt** – sonst fehlt nach dem ersten neuen Träger einer.
|
|
23
|
+
|
|
24
|
+
## 2. Die Gegenprüfung
|
|
25
|
+
|
|
26
|
+
Gemessen am 2026-09-25 an sechs frischen Installationen (drei Packs, je ohne und mit
|
|
27
|
+
Muster `general`), außerhalb des Repositoriums.
|
|
28
|
+
|
|
29
|
+
### 2.1 🔴 Die Lesespur taugt nicht
|
|
30
|
+
|
|
31
|
+
Jede Datei, die Installer und Validator im Projekt öffnen, protokolliert über einen
|
|
32
|
+
Audit-Hook: **549 von 549** Kerndateien. Der Validator prüft Inhalte über den ganzen Baum.
|
|
33
|
+
*Was gelesen wird, ist nicht, was nötig ist.*
|
|
34
|
+
|
|
35
|
+
### 2.2 🔴 Die Verweishülle taugt nicht
|
|
36
|
+
|
|
37
|
+
Transitiv über die Verweisauswertung von Prüfung 12 (Markdown-Links und Framework-Pfade in
|
|
38
|
+
Backticks), ausgehend von den installierten Trägern: mit Verzeichnisverweisen **548 von
|
|
39
|
+
548**. Ohne Verzeichnisverweise bleiben **39 Protokolle, 5 Anträge und 6 Träger aus
|
|
40
|
+
`build/`** in der Hülle – und es fallen **die Skillquellen, die Laufzeitschicht und
|
|
41
|
+
`templates/project-overlay/`** heraus, ohne die `install.py --update` nicht läuft. Zu groß
|
|
42
|
+
und zu klein zugleich.
|
|
43
|
+
|
|
44
|
+
### 2.3 🟢 Der Validator ist das Orakel
|
|
45
|
+
|
|
46
|
+
Aus einer Kopie der Installation die vier Ablagen der Nachweisschicht entfernt –
|
|
47
|
+
`governance/change-requests`, `tests/protocols`, `tests/erhebungen`, `build`, zusammen
|
|
48
|
+
**350 von 550 Dateien, rund 47 % der Bytes** – und die Validatorausgabe gegen die volle
|
|
49
|
+
Installation gehalten. **In allen drei Packs gleich:**
|
|
50
|
+
|
|
51
|
+
| Neu gegenüber voll | Anzahl | Woher |
|
|
52
|
+
|---|---|---|
|
|
53
|
+
| *„Pfadangabe existiert nicht“*, Ziel `tests/protocols/` | **70** (33 verschiedene Ziele) | `TEST_CATALOG` 22, Skillquellen 17, installierte Skills 14, `framework/core` 5, `EDGE_CASES` 4, übrige 8 |
|
|
54
|
+
| Prüfung ohne Gegenstand | **3** | 76 (`tests/erhebungen/ablage.py`), 77 (`build/doc/00-kopf.md`), 80 (`tests/protocols/`) |
|
|
55
|
+
| sonst | **0** | – |
|
|
56
|
+
|
|
57
|
+
Die 70 Verweise sind **Herkunftsangaben**: Die Aussage des verweisenden Trägers steht ohne
|
|
58
|
+
die Datei. Sonst hängt kein Werkzeug an der Nachweisschicht.
|
|
59
|
+
|
|
60
|
+
### 2.4 Nebenbefund: die Windows-Pfadgrenze
|
|
61
|
+
|
|
62
|
+
Die erste Messung legte die Projekte im Ablagebereich der Sitzung an. `--target` brach beim
|
|
63
|
+
Kopieren ab: `…\core.koolie-neu\framework\role-packs\requirements-engineering\runtime\30-role-requirements-engineering.md`
|
|
64
|
+
riß die Grenze von 259 Zeichen. Der Rückbau hielt, **die Meldung fragte, ob eine Datei
|
|
65
|
+
geöffnet sei.** Längster Kernpfad 102 Zeichen; ab 146 Zeichen Projektpfad scheitert es.
|
|
66
|
+
|
|
67
|
+
### 2.5 Nebenbefund: der Dateimodus des Archivs
|
|
68
|
+
|
|
69
|
+
Beim Nachzählen von `koolie-1.7.0.tar.gz`: `install.command` mit `0775`, jede Datei `0664` –
|
|
70
|
+
gits Voreinstellung `tar.umask=0002`. Mit `-c tar.umask=022`: `0755` und `0644`, zweimal
|
|
71
|
+
bytegleich. Das Archiv ist vor der Veröffentlichung so neu erzeugt worden.
|
|
72
|
+
|
|
73
|
+
## 3. Vorlage zur Entscheidung
|
|
74
|
+
|
|
75
|
+
Vorgelegt am 2026-09-25 als Fragen (a) bis (j), angenommen mit *„Passt“*.
|
|
76
|
+
|
|
77
|
+
| # | Frage | Wege und ihre Preise |
|
|
78
|
+
|---|---|---|
|
|
79
|
+
| **E1** | **Wie wird die Liste abgeleitet?** (a) | **Umgekehrt: aufgezählt ist die Nachweisschicht, geschlossen nach Ablageort, an einer Stelle** (`clientmap.NACHWEIS_ABLAGEN`); `nutzung` ist der Kern ohne sie. Ob die Nutzung auskommt, entscheidet der Validator (2.3), gehalten von einer Sonde. **Verworfen:** Lesespur (2.1), Verweishülle (2.2), Kennzeichnung je Datei – dieselbe Aufzählung, verteilt über 550 Träger |
|
|
80
|
+
| **E2** | **Die 70 Verweise** (b) | **Herkunftsangaben:** In einer reduzierten Installation meldet Prüfung 12 sie nicht, sondern zählt sie in einer `HINWEIS`-Zeile; im Quellrepositorium bleibt sie streng. **Verworfen:** auf Kennungen umschreiben – 70 Eingriffe in Belege; zitierte Protokolle mitliefern – wieder eine Liste |
|
|
81
|
+
| **E3** | **Die Prüfungen 76, 77 und 80** (c) | **Prüfen nur das Gelieferte, mit je einer `HINWEIS`-Zeile.** Still übersprungen wäre die Bauform, die `1.4.0` abgestellt hat (D-346). Dazu die **Ausgabeform `HINWEIS`**, die weder Fehler noch Warnung ist; eine volle Installation trägt keine |
|
|
82
|
+
| **E4** | **Wo steht die Wahl?** (d) | **`.koolie/core/LIEFERUMFANG`** neben `VERSION`, geschrieben bei jedem `--target`; ohne Datei gilt `voll`. Das Heben übernimmt sie, gewechselt wird nur ausdrücklich; eine reduzierte Quelle liefert keinen vollen Kern. **Prüfung 90** hält die Angabe gegen den Bestand. **Verworfen:** die Wahl am Zustand erkennen – täuschbar |
|
|
83
|
+
| **E5** | **Standard und Bedienung** (e), (f) | **`voll` bleibt Standard**; `--lieferumfang voll` oder `nutzung`, **nur mit `--target`**; der Dialog fragt bei der Erstinstallation, beim Heben nennt er den bisherigen Umfang |
|
|
84
|
+
| **E6** | **Große Einzelträger** (g) | **Nicht in `1.8.0`** – `CHANGELOG.md`, `DECISION_LOG.md`, `ROADMAP.md`, Sondenskript, zusammen rund 26 % der Bytes, wären eine Aufzählung einzelner Dateien. Offen als **`K-122`** |
|
|
85
|
+
| **E7** | **Archive** (h) | **Eines, voll.** Reduziert wird beim Installieren |
|
|
86
|
+
| **E8** | **Pfadgrenze** (i) | **Vorprüfung in `install.py`** gegen das längere Zwischenverzeichnis, mit Pfad, Länge und Überschuß; Sonde `T368` |
|
|
87
|
+
| **E9** | **Dateimodus des Archivs** (j) | **`-c tar.umask=022` in Schritt 5**, der Modus als Gegenstand von Schritt 6 |
|
|
88
|
+
| **E10** | **Qualitätssicherungsrelease** (Frage des Owners während des Baus) | **`1.9.0`, direkt nach `1.8.0`:** Nach `1.8.0` ist kein grundsätzlicher Posten geplant; `K-67` hat kein Ziel-Release. Beginnt mit einem Vorbedingungsdurchgang, der Dokumentliste und Kriterien festlegt |
|
|
89
|
+
|
|
90
|
+
> **Empfehlung der Vorbereitung:** E1 bis E10 wie vorgelegt.
|
|
91
|
+
|
|
92
|
+
---
|
|
93
|
+
|
|
94
|
+
## 4. Umsetzung
|
|
95
|
+
|
|
96
|
+
1. `clientmap.py`: `LIEFERUMFANG_DATEI`, `LIEFERUMFAENGE`, `NACHWEIS_ABLAGEN`,
|
|
97
|
+
`ist_nachweis()`, `lieferumfang()`.
|
|
98
|
+
2. `install.py`: `--lieferumfang` (nur mit `--target`), Umfang aus Angabe, bisheriger Datei
|
|
99
|
+
oder `voll`; Filter der Nachweisschicht; `LIEFERUMFANG` ins Zwischenverzeichnis;
|
|
100
|
+
Verweigerung bei reduzierter Quelle; Zeile *„Umfang:“* samt Wechsel; Vorprüfung der
|
|
101
|
+
Pfadgrenze (`PFAD_GRENZE_DATEI`, `PFAD_GRENZE_VERZEICHNIS`).
|
|
102
|
+
3. `install_dialog.py`: Frage nach dem Umfang bei der Erstinstallation.
|
|
103
|
+
4. Validator: `HINWEISE`/`hinweis()`, `reduziert()`, `nicht_geliefert()`; Prüfung 12
|
|
104
|
+
(Herkunftsangaben), 76, 77, 80 (nur Geliefertes); **Prüfung 90**; `LIEFERUMFANG` als
|
|
105
|
+
Verweisziel im Quellrepositorium; Register und Sondenmenge bis 90.
|
|
106
|
+
5. Sonden: Bündel `sonden_lieferumfang` (`L367` bis `L367e`, `90b`, `90c`, `T368`), Sonden
|
|
107
|
+
`90`, `90a`; `T362` erwartet `LIEFERUMFANG`, `T362g` die neue Frage.
|
|
108
|
+
6. Leitfaden, README, Release-Prozess (Schritte 5 und 6, dazu die Schrittnummern einer
|
|
109
|
+
Begründung berichtigt), Roadmap (Standüberschrift, `1.8.0`, Planabschnitt `1.9.0`),
|
|
110
|
+
Decision Log, Bestandsliste, Kapitel 00, 15, 26, 31, `VERSION`, Changelog.
|
|
111
|
+
7. Beide Projekte heben – mit `--target --update`, **voll** wie bisher.
|
|
112
|
+
|
|
113
|
+
## 5. Abnahme
|
|
114
|
+
|
|
115
|
+
Steht im Protokoll `tests/protocols/2026-09-25-lieferumfang.md`.
|
|
116
|
+
|
|
117
|
+
## 6. Entscheidung
|
|
118
|
+
|
|
119
|
+
**E1 bis E10 wie vorgelegt entschieden** (`<FRAMEWORK_OWNER>`, 2026-09-25; (a) bis (j) vor
|
|
120
|
+
dem Bau vorgelegt und angenommen, E10 als Frage des Owners während des Baus – der Owner
|
|
121
|
+
hat vorab erklärt, den Empfehlungen der Vorbereitung zu folgen). Decision Records
|
|
122
|
+
**D-367** bis **D-370**; `K-75` beantwortet, `K-122` neu. Alle vier zählbaren Kriterien
|
|
123
|
+
von D-11 bleiben **0**.
|