diff --git a/kb/concepts/Delete Rather Than Anonymize.md b/kb/concepts/Delete Rather Than Anonymize.md index 24e4405..da37d0e 100644 --- a/kb/concepts/Delete Rather Than Anonymize.md +++ b/kb/concepts/Delete Rather Than Anonymize.md @@ -5,7 +5,7 @@ tags: [] created: 2026-09-01 modified: 2026-09-01 related: [Chemenu] -sources: ['Source - Public Release, Corpus Purge and History Squash Session 2026-09-01'] +sources: ['Source - Public Release, Corpus Purge and History Squash Session 2026-09-01', Source - Private-Instance Merge Correction and Issue 30 Session 2026-09-01] confidence: 0.90 confidence_base: 0.70 provenance: sourced @@ -69,4 +69,5 @@ sonst unverändertem Inhalt) vorzuziehen - wenn ein unterstütztes Löschkommand - [[Source - Public Release, Corpus Purge and History Squash Session 2026-09-01]] - [[Chemenu]] +- [[Source - Private-Instance Merge Correction and Issue 30 Session 2026-09-01]] diff --git a/kb/concepts/Publish-Remote Gate.md b/kb/concepts/Publish-Remote Gate.md index 0c03726..57ab736 100644 --- a/kb/concepts/Publish-Remote Gate.md +++ b/kb/concepts/Publish-Remote Gate.md @@ -5,7 +5,7 @@ tags: [] created: 2026-09-01 modified: 2026-09-01 related: [Mass-Update Gate, Chemenu] -sources: [Source - Publish-Remote Gate and Issue Triage Session 2026-09-01] +sources: [Source - Publish-Remote Gate and Issue Triage Session 2026-09-01, Source - Private-Instance Merge Correction and Issue 30 Session 2026-09-01] confidence: 0.50 confidence_base: 0.70 provenance: sourced @@ -55,6 +55,36 @@ Remote lokal konfiguriert ist. - Für Entscheidungen, die tatsächlich pro Änderungssatz getroffen werden sollen (dafür ist ein Token-basiertes Gate wie das Mass-Update-Gate das richtige Muster). +## Was das Gate nicht abdeckt: Inhalt, der über einen Merge hereinkommt + +Das Gate schützt den **Push**, nicht den **Merge**. Ein Setup, bei dem eine private Instanz +Maschinerie von einem öffentlichen Upstream per `git merge upstream/main` zieht, hat ein +eigenes, empirisch geprüftes Problem: Ein einfacher Merge übernimmt Upstream-Änderungen an +bereits gelöschten Inhaltsseiten nicht sauber. + +Gemessen an einem Wegwerf-Repo-Paar, bei dem der Upstream nach der einmaligen Löschung des +Demo-Korpus eine Seite ändert, eine neue anlegt und eine dritte löscht: + +- Eine **geänderte** Seite erzeugt einen `modify/delete`-Konflikt und lässt die + Upstream-Fassung im Arbeitsbaum liegen - ein naives Auflösen mit `git add -A` holt sie zurück. +- Eine **neu angelegte** Seite wird **stillschweigend** übernommen, ohne Konflikt und ohne + Meldung. +- Eine beidseitig gelöschte Seite verursacht nichts - der einzige Fall, der ohne Weiteres + funktioniert. + +Ein naheliegender Fix (`.gitattributes` mit `merge=ours` für die betroffenen Verzeichnisse) +wurde ebenfalls gemessen und verworfen: Der Treiber wirkt nur bei Inhaltskonflikten auf +beidseitig vorhandenen Dateien, nicht bei modify/delete-Paaren oder Neuanlagen. + +Die funktionierende Prozedur hält den Merge mit `--no-commit` offen, erzwingt die +Inhaltsverzeichnisse zurück auf den Stand vor dem Merge, solange `HEAD` noch dorthin zeigt, und +prüft danach explizit (`git diff --name-only $BEFORE HEAD -- kb raw` muss leer sein) - eine +Kontrolle, die nicht stillschweigend übersprungen werden kann, anders als eine bloße Behauptung +im Text[^s-private-instance-merge-correction-and-issue-30-session-2026-09-01]. Details, ein +getestetes Skript und zwei Architekturvorschläge (das Verfahren als `wikitool`-Kommando bauen, +oder den Demo-Korpus grundsätzlich von dem Branch fernhalten, von dem private Instanzen ihre +Maschinerie ziehen) stehen in Gitea-Issue #30. + ## Verwandte Concepts - [[Mass-Update Gate]] @@ -69,4 +99,8 @@ Remote lokal konfiguriert ist. - [[Source - Publish-Remote Gate and Issue Triage Session 2026-09-01]] - [[Chemenu]] - [[Mass-Update Gate]] +- [[Source - Private-Instance Merge Correction and Issue 30 Session 2026-09-01]] +## Fußnoten + +[^s-private-instance-merge-correction-and-issue-30-session-2026-09-01]: [[Source - Private-Instance Merge Correction and Issue 30 Session 2026-09-01]] diff --git a/kb/entities/projects/Chemenu.md b/kb/entities/projects/Chemenu.md index 2b27e14..29f07ae 100644 --- a/kb/entities/projects/Chemenu.md +++ b/kb/entities/projects/Chemenu.md @@ -5,7 +5,7 @@ tags: [wiki, llm, knowledge-base] created: 2026-08-04 modified: 2026-09-01 related: [Personalization Plane, Issue Label Scheme, Optional Instance Context File, Delete Rather Than Anonymize, Dual Licensing by File Plan, Publish-Remote Gate] -sources: [Source - Copilot Skill Restructure Instructions, Source - Conversation - AGENTS.md Skill Restructuring Session 2026-08-04, Source - Conversation - Versioning CI-CD and Content Migration Session 2026-08-30, Source - Conversation - Comma Bug Budget Refund and Lint Report Path Session 2026-08-31, Source - Conversation - Issue Triage Labels and TODO Retirement Session 2026-08-31, Source - Conversation - Write-Once Frontmatter Fields and touch --set Session 2026-08-31, Source - Conversation - Gate Counting and Measured Calibration Session 2026-08-31, Source - Conversation - Two Round-Trip Defects Found by an Ingest Session 2026-08-31, Source - Conversation - Hardening the Test Suite Against Silent Environment Dependencies Session 2026-08-31, 'Source - Public Release, Corpus Purge and History Squash Session 2026-09-01', Source - Publish-Remote Gate and Issue Triage Session 2026-09-01] +sources: [Source - Copilot Skill Restructure Instructions, Source - Conversation - AGENTS.md Skill Restructuring Session 2026-08-04, Source - Conversation - Versioning CI-CD and Content Migration Session 2026-08-30, Source - Conversation - Comma Bug Budget Refund and Lint Report Path Session 2026-08-31, Source - Conversation - Issue Triage Labels and TODO Retirement Session 2026-08-31, Source - Conversation - Write-Once Frontmatter Fields and touch --set Session 2026-08-31, Source - Conversation - Gate Counting and Measured Calibration Session 2026-08-31, Source - Conversation - Two Round-Trip Defects Found by an Ingest Session 2026-08-31, Source - Conversation - Hardening the Test Suite Against Silent Environment Dependencies Session 2026-08-31, 'Source - Public Release, Corpus Purge and History Squash Session 2026-09-01', Source - Publish-Remote Gate and Issue Triage Session 2026-09-01, Source - Private-Instance Merge Correction and Issue 30 Session 2026-09-01] confidence: 0.90 confidence_base: 0.90 provenance: mixed @@ -218,6 +218,7 @@ Repositorys selbst und keine Aussagen aus einer Rohdatenquelle; der Änderungsda - [[Dual Licensing by File Plan]] - [[Source - Publish-Remote Gate and Issue Triage Session 2026-09-01]] - [[Publish-Remote Gate]] +- [[Source - Private-Instance Merge Correction and Issue 30 Session 2026-09-01]] ## Fußnoten diff --git a/kb/entities/tools/wikitool.md b/kb/entities/tools/wikitool.md index b8e8fba..5d2d809 100644 --- a/kb/entities/tools/wikitool.md +++ b/kb/entities/tools/wikitool.md @@ -5,7 +5,7 @@ tags: [cli, automation, deterministic, wiki-management] created: 2026-08-03 modified: 2026-09-01 related: [Semantic Lint Automation, Session Orientation, Iteration and Cost Limits, KB Stack Versioning, KB Migration, Personalization Plane, Detect-Repair Asymmetry, Write-Once Frontmatter Fields, Denylist over Allowlist, Command Round-Trip Integrity, Green Suite Blind Spot, Ambient Environment Dependency, Structural Enforcement over Documented Rule, Optional Instance Context File] -sources: [Source - LLM Improvements Codex Analysis, Source - LLM Improvements Sonnet Analysis, Source - Copilot Skill Restructure Instructions, Source - Conversation - AGENTS.md Skill Restructuring Session 2026-08-04, Source - LLM Improvements Production Agent Gaps 2026, Source - Conversation - Versioning CI-CD and Content Migration Session 2026-08-30, Source - Conversation - Comma Bug Budget Refund and Lint Report Path Session 2026-08-31, Source - Conversation - Issue Triage Labels and TODO Retirement Session 2026-08-31, Source - Conversation - Auto Mode and Tool Choice Session 2026-08-31, Source - Conversation - Write-Once Frontmatter Fields and touch --set Session 2026-08-31, Source - Conversation - Gate Counting and Measured Calibration Session 2026-08-31, Source - Conversation - Two Round-Trip Defects Found by an Ingest Session 2026-08-31, Source - Conversation - Hardening the Test Suite Against Silent Environment Dependencies Session 2026-08-31, Source - Conversation - ENVIRONMENT.md as an Optional Third Session-Level File Session 2026-08-31, 'Source - Public Release, Corpus Purge and History Squash Session 2026-09-01', Source - Publish-Remote Gate and Issue Triage Session 2026-09-01] +sources: [Source - LLM Improvements Codex Analysis, Source - LLM Improvements Sonnet Analysis, Source - Copilot Skill Restructure Instructions, Source - Conversation - AGENTS.md Skill Restructuring Session 2026-08-04, Source - LLM Improvements Production Agent Gaps 2026, Source - Conversation - Versioning CI-CD and Content Migration Session 2026-08-30, Source - Conversation - Comma Bug Budget Refund and Lint Report Path Session 2026-08-31, Source - Conversation - Issue Triage Labels and TODO Retirement Session 2026-08-31, Source - Conversation - Auto Mode and Tool Choice Session 2026-08-31, Source - Conversation - Write-Once Frontmatter Fields and touch --set Session 2026-08-31, Source - Conversation - Gate Counting and Measured Calibration Session 2026-08-31, Source - Conversation - Two Round-Trip Defects Found by an Ingest Session 2026-08-31, Source - Conversation - Hardening the Test Suite Against Silent Environment Dependencies Session 2026-08-31, Source - Conversation - ENVIRONMENT.md as an Optional Third Session-Level File Session 2026-08-31, 'Source - Public Release, Corpus Purge and History Squash Session 2026-09-01', Source - Publish-Remote Gate and Issue Triage Session 2026-09-01, Source - Private-Instance Merge Correction and Issue 30 Session 2026-09-01] confidence: 0.90 confidence_base: 0.90 provenance: sourced @@ -266,6 +266,7 @@ ist[^s-conversation-versioning-ci-cd-and-content-migration-session-2026-08-30]. - [[Source - Conversation - ENVIRONMENT.md as an Optional Third Session-Level File Session 2026-08-31]] - [[Source - Public Release, Corpus Purge and History Squash Session 2026-09-01]] - [[Source - Publish-Remote Gate and Issue Triage Session 2026-09-01]] +- [[Source - Private-Instance Merge Correction and Issue 30 Session 2026-09-01]] ## Fußnoten diff --git a/kb/index.md b/kb/index.md index 371b63c..a4feb21 100644 --- a/kb/index.md +++ b/kb/index.md @@ -13,11 +13,11 @@ The page tables live in a generated `INDEX.md` inside each collection, linked be ## Statistics -- **Total Pages:** 175 +- **Total Pages:** 176 - **Comparisons:** 1 - **Concepts:** 79 - **Entities:** 72 -- **Sources:** 23 +- **Sources:** 24 - **Last Updated:** 2026-09-01 --- @@ -29,7 +29,7 @@ The page tables live in a generated `INDEX.md` inside each collection, linked be | `comparisons/` | 1 | [comparisons/INDEX.md](comparisons/INDEX.md) | | `concepts/` | 79 | [concepts/INDEX.md](concepts/INDEX.md) | | `entities/` | 72 | [entities/INDEX.md](entities/INDEX.md) | -| `sources/` | 23 | [sources/INDEX.md](sources/INDEX.md) | +| `sources/` | 24 | [sources/INDEX.md](sources/INDEX.md) | ### entities/ diff --git a/kb/log.md b/kb/log.md index 8f7d6e8..2d2dcd3 100644 --- a/kb/log.md +++ b/kb/log.md @@ -67,3 +67,9 @@ Source-Seite angelegt, Chemenu und wikitool aktualisiert, zwei neue Concept-Seit Source-Seite angelegt, neue Concept-Seite Publish-Remote Gate, wikitool-Historie ergaenzt, quer verlinkt mit Mass-Update Gate und Chemenu. --- + +## [2026-09-01] ingest | raw/notes/Conversation Transcript - Private-Instance Merge Correction and Issue 30 Session 2026-09-01.md + +Source-Seite angelegt, Publish-Remote-Gate-Seite um die gemessene Merge-Semantik erweitert, quer verlinkt. + +--- diff --git a/kb/provenance.md b/kb/provenance.md index d0224e1..0da829d 100644 --- a/kb/provenance.md +++ b/kb/provenance.md @@ -9,8 +9,8 @@ inline `[^cite-id]` footnote). ## Coverage Summary - **Total raw files:** 24 -- **Covered:** 23 -- **Uncovered:** 1 +- **Covered:** 24 +- **Uncovered:** 0 --- @@ -78,7 +78,8 @@ inline `[^cite-id]` footnote). ### `raw/notes/Conversation Transcript - Private-Instance Merge Correction and Issue 30 Session 2026-09-01.md` -No source page covers this file yet. +- Covered by: [[Source - Private-Instance Merge Correction and Issue 30 Session 2026-09-01]] + - Cited by: [[Chemenu]], [[Delete Rather Than Anonymize]], [[Publish-Remote Gate]], [[wikitool]] ### `raw/notes/Conversation Transcript - Public Release, Corpus Purge and History Squash Session 2026-09-01.md` diff --git a/kb/sources/INDEX.md b/kb/sources/INDEX.md index 278fab4..aef468d 100644 --- a/kb/sources/INDEX.md +++ b/kb/sources/INDEX.md @@ -2,7 +2,7 @@ # kb/sources/ - Index -23 page(s). Regenerated by `wikitool index rebuild`. +24 page(s). Regenerated by `wikitool index rebuild`. ## All @@ -28,6 +28,7 @@ | [[Source - LLM Improvements Sonnet Analysis]] | notes | Sonnet-Analyse, die AGENTS.md und wikitool mit Farzas Gist und awesome-llm-wiki vergleicht und die Codex-Analyse um konkrete Empfehlungen zu Qualitätsschwellen, Stilrichtlinie, Auditrhythmus und Skalierung ergänzt | 2026-08-03 | | [[Source - LLM Wiki Pattern]] | article | Grundlegendes Muster für persönliche Wissensbasen mit LLMs: ein dauerhaftes Wiki schrittweise pflegen, statt es aus den Quellen neu herzuleiten. | 2026-07-26 | | [[Source - LLM Wiki v2]] | article | Erweitertes LLM-Wiki-Muster mit Praxiserfahrungen aus agentmemory zu Memory Lifecycle, Confidence Scoring, Wissensgraph und Automatisierung. | 2026-07-26 | +| [[Source - Private-Instance Merge Correction and Issue 30 Session 2026-09-01]] | notes | Sitzung, die eine ungeprueft niedergeschriebene Merge-Behauptung in private-instance.md durch einen empirischen Test widerlegt, die Prozedur korrigiert (2.2.1) und Issue #30 mit einem getesteten Skript sowie zwei Architekturvorschlaegen anlegt. | 2026-09-01 | | [[Source - Public Release, Corpus Purge and History Squash Session 2026-09-01]] | notes | Sitzung, die den Chemenu-Stack von einer privaten Testinstanz in ein oeffentliches Repo ueberfuehrt: Korpus geloescht statt anonymisiert, Git-History auf einen Commit gesquashed, AGPL-3.0/CC-BY-4.0-Dual-Lizenz gewaehlt, dist export um einen Leak-Canary gehaertet. | 2026-09-01 | | [[Source - Publish-Remote Gate and Issue Triage Session 2026-09-01]] | notes | Sitzung, die ein drittes, Token-loses Gate fuer publish baut, instructions/private-instance.md schreibt, sechs Gitea-Issues auf den Rename und die neue Architektur nachzieht und die Actions-Run-Historie entfernen laesst. | 2026-09-01 | | [[Source - Wine]] | notes | Wine-Konfiguration für Arch Linux: pacman-NoExtract-Einstellungen und Bottles-Runtime-Optionen einschließlich Proton- und Lutris-Varianten. | 2026-08-01 | diff --git a/kb/sources/Source - Private-Instance Merge Correction and Issue 30 Session 2026-09-01.md b/kb/sources/Source - Private-Instance Merge Correction and Issue 30 Session 2026-09-01.md new file mode 100644 index 0000000..aa1c8b4 --- /dev/null +++ b/kb/sources/Source - Private-Instance Merge Correction and Issue 30 Session 2026-09-01.md @@ -0,0 +1,83 @@ +--- +type: types/source.md +source_type: notes +author: Torben +raw_files: [raw/notes/Conversation Transcript - Private-Instance Merge Correction and Issue 30 Session 2026-09-01.md] +source_language: de +date: 2026-09-01 +tags: [] +entities: [Chemenu, wikitool] +concepts: [Publish-Remote Gate, Delete Rather Than Anonymize] +summary: 'Sitzung, die eine ungeprueft niedergeschriebene Merge-Behauptung in private-instance.md durch einen empirischen Test widerlegt, die Prozedur korrigiert (2.2.1) und Issue #30 mit einem getesteten Skript sowie zwei Architekturvorschlaegen anlegt.' +--- +# Source: Private-Instance Merge Correction and Issue 30 Session 2026-09-01 + +**Autor:** Torben +**Datum:** 2026-09-01 +**Raw-Dateien:** raw/notes/Conversation Transcript - Private-Instance Merge Correction and Issue 30 Session 2026-09-01.md +**Typ:** Notes + +## Zusammenfassung + +Torben fragte, was in der privaten Instanz nach dem beschriebenen Schema passiert, wenn Upstream +den Demo-Korpus ändert - eine Frage, die eine am selben Tag geschriebene, aber nie getestete +Behauptung in `instructions/private-instance.md` traf. Statt die bestehende Textstelle zu +verteidigen, wurde sie an einem Wegwerf-Repo-Paar empirisch geprüft: Ein `git merge +upstream/main` löst eine geänderte, gelöschte Demo-Seite **nicht** still auf, sondern erzeugt +einen `modify/delete`-Konflikt und lässt die Upstream-Fassung im Arbeitsbaum liegen; eine neu +angelegte Demo-Seite wird dagegen **stillschweigend** gestaged, ohne Konflikt und ohne Meldung. +Ein zweiter, naheliegender Fix (`.gitattributes` mit `merge=ours` für die Inhaltsverzeichnisse) +wurde ebenfalls getestet und ebenfalls widerlegt - der Treiber wirkt nur bei Inhaltskonflikten +auf beidseitig vorhandenen Dateien, nicht bei modify/delete oder Neuanlage. + +Die Instruktion wurde korrigiert (Version 2.2.1): Der Merge wird mit `--no-commit` offengehalten, +die Inhaltsverzeichnisse werden auf den Stand vor dem Merge zurückgezwungen, solange `HEAD` noch +dorthin zeigt, erst dann wird committet - gefolgt von einer Kontrolle +(`git diff --name-only $BEFORE HEAD -- kb raw` muss leer sein), die nicht stillschweigend +übersprungen werden kann. Ein eigenständiges, getestetes Skript wurde daraus abgeleitet und in +Issue #30 hinterlegt, zusammen mit zwei Architekturvorschlägen: das Verfahren als `wikitool`- +Kommando statt als Shell-Rezept, oder - als eigentliche Ursachenbehebung - den Demo-Korpus +grundsätzlich von dem Branch fernzuhalten, von dem private Instanzen ihre Maschinerie ziehen. + +Anschließend wurde Issue #3 (Chemenu-Rebranding) gegen seine eigenen Abnahmekriterien geprüft +und für sauber befunden, und eine Verdrahtungslücke geschlossen (`tools/CONTRACT.md` kannte das +Publish-Remote-Gate nicht, `gates.md` verlinkte nicht auf die Prozedur, die Chemenu-Projektseite +beschrieb sich noch als privates Wiki) - veröffentlicht als 2.2.2. + +## Kernaussagen + +- Eine Behauptung über Git-Merge-Verhalten ist erst nach einem Test eine Tatsache. Am selben Tag + geschrieben zu haben ist kein Beleg für Richtigkeit. +- `git merge` behandelt "eine Datei geändert" und "eine Datei neu angelegt" unterschiedlich: Nur + Ersteres erzeugt einen sichtbaren Konflikt. Eine Prozedur, die nur den Konfliktfall bedenkt, + übersieht die stille Neuanlage. +- `.gitattributes`-Merge-Treiber wie `merge=ours` wirken nur auf Inhaltskonflikte zwischen + beidseitig vorhandenen Dateiversionen, nicht auf modify/delete-Paare oder Neuanlagen. +- Eine Kontrollprüfung, die ein Mensch lesen und verstehen muss, um einen Fehler zu bemerken, ist + schwächer als eine, die bei einem Fehler selbst nicht-null zurückgibt. +- Wiederkehrende Symptome bei jeder Downstream-Instanz sind oft ein Zeichen, dass die eigentliche + Ursache stromaufwärts liegt und dort einmalig behoben werden sollte. + +## Aufgaben + +- [x] `private-instance.md` korrigiert und als 2.2.1 veröffentlicht +- [x] Issue #30 angelegt (Skript + zwei Architekturvorschläge, hängt an #28) +- [x] Issue #3 gegen Abnahmekriterien geprüft, sauber +- [ ] Issue #30 selbst ist offen - siehe dort für den Entscheidungsstand + +## Nicht übernommen + +- Die im Transkript vollständig gezeigten Testskript-Läufe (Shell-Ausgabe der Wegwerf-Repos) + sind hier nicht wiederholt - die Kernaussage (welches Verhalten gemessen wurde) ist auf die + Concept-Seite [[Publish-Remote Gate]] und in Issue #30 übernommen, der Beleg bleibt im + Transkript. + +## Verwandte Entities + +- [[Chemenu]] +- [[wikitool]] + +## Verwandte Concepts + +- [[Publish-Remote Gate]] +- [[Delete Rather Than Anonymize]]