iris-rea-recherche: Artefakte (Dateien, Grafiken, Paletten) mit Prüfsumme im Speicher und in kontext.json #378

Open
opened 2026-11-06 19:00:13 +00:00 by alf · 1 comment
Owner

Problem

Was eine Recherche an Dateien erzeugt (extrahierte Grafiken, Paletten, Referenzprogramme, Tabellen), liegt lose im Workspace. kontext.md und kontext.json kennen es nicht, es gibt keine Prüfsummen, und ein Folgeplugin oder eine neue Claude-Code-Session erfährt weder, dass die Dateien existieren, noch zu welchem Befund sie gehören.

Belegt im Lauf „Raiden II“ (Chat-Export 2026-11-06): gfx/ (43 MB: Sprite-, Tile- und Zeichen-Sheets, Paletten), oracle_interleave.cpp, oracle_r2crypt.cpp, ref_*.cpp liegen im Workspace; kontext.md (11,5 KB) nennt sie nur im Fließtext des Chat-Abschlusses.

Warum

Das Plugin ist eine Vorstufe: Sein Ergebnis soll in einer neuen Session oder einem Folgeplugin (Rust-Bau, Dateiformat-Auszug) ohne Raten nutzbar sein. Daten gehören dazu, nicht nur Text.

Umfang

  • Neuer Befehl artefakt add DATEI_ODER_ORDNER --beschreibung TXT [--befund B1 …] [--nachbau N1 …]: Der Pfad liegt im Workspace des Projekts (relativ zum Arbeitsordner), das Plugin merkt sich Größe und SHA-256 (bei Ordnern je Datei, mit Obergrenze). Außerdem artefakt liste, artefakt pruefen (Datei da und unverändert?), artefakt entfernen.
  • kontext.json führt die Artefakte mit Pfad, Größe, SHA-256, Beschreibung und Verweisen; kontext.md bekommt einen kurzen Abschnitt „Artefakte“ (Pfad, Größe, Beschreibung, Befunde).
  • pruefe_speicher und status melden verschwundene oder veränderte Artefakte.
  • Systemprompt-Befehlskarte, SKILL.md und Anleitung nennen den Befehl.

Nicht im Umfang

Die Dateien selbst ins Vault kopieren; ein Folgeplugin, das kontext.json liest.

## Problem Was eine Recherche an Dateien erzeugt (extrahierte Grafiken, Paletten, Referenzprogramme, Tabellen), liegt lose im Workspace. `kontext.md` und `kontext.json` kennen es nicht, es gibt keine Prüfsummen, und ein Folgeplugin oder eine neue Claude-Code-Session erfährt weder, dass die Dateien existieren, noch zu welchem Befund sie gehören. Belegt im Lauf „Raiden II“ (Chat-Export 2026-11-06): `gfx/` (43 MB: Sprite-, Tile- und Zeichen-Sheets, Paletten), `oracle_interleave.cpp`, `oracle_r2crypt.cpp`, `ref_*.cpp` liegen im Workspace; `kontext.md` (11,5 KB) nennt sie nur im Fließtext des Chat-Abschlusses. ## Warum Das Plugin ist eine Vorstufe: Sein Ergebnis soll in einer neuen Session oder einem Folgeplugin (Rust-Bau, Dateiformat-Auszug) ohne Raten nutzbar sein. Daten gehören dazu, nicht nur Text. ## Umfang - Neuer Befehl `artefakt add DATEI_ODER_ORDNER --beschreibung TXT [--befund B1 …] [--nachbau N1 …]`: Der Pfad liegt im Workspace des Projekts (relativ zum Arbeitsordner), das Plugin merkt sich Größe und SHA-256 (bei Ordnern je Datei, mit Obergrenze). Außerdem `artefakt liste`, `artefakt pruefen` (Datei da und unverändert?), `artefakt entfernen`. - `kontext.json` führt die Artefakte mit Pfad, Größe, SHA-256, Beschreibung und Verweisen; `kontext.md` bekommt einen kurzen Abschnitt „Artefakte“ (Pfad, Größe, Beschreibung, Befunde). - `pruefe_speicher` und `status` melden verschwundene oder veränderte Artefakte. - Systemprompt-Befehlskarte, SKILL.md und Anleitung nennen den Befehl. ## Nicht im Umfang Die Dateien selbst ins Vault kopieren; ein Folgeplugin, das `kontext.json` liest.
Author
Owner

PR #380 gemergt: feat(iris-rea-recherche): Artefakte mit Prüfsumme im Speicher, Kontextpaket und kontext.json (iris/iris-plugins#378)
http://docker:3000/iris/iris-plugins/pulls/380

Commits:

  • feat(iris-rea-recherche): Artefakte mit Prüfsumme im Speicher, Kontextpaket und kontext.json (iris/iris-plugins#378)

Stand: umgesetzt, Version 0.4.0 veröffentlicht (Registry nach dem Pull: Paket 0.4.0).

Geändert:

  • Neues Skript rea_artefakt.py (add, liste, pruefen, aktualisieren, entfernen; zusätzlich zum Issue aktualisieren, damit eine gewollt neu erzeugte Datei den Eintrag nicht unbrauchbar macht, der alte Stand bleibt im Verlauf). Ein Artefakt ist eine Datei oder ein Ordner im Arbeitsordner des Chats (Pfad relativ gespeichert, auch nach Auflösen von Symlinks im Workspace; nicht der Arbeitsordner selbst, nicht ziel/). Gespeichert: Größe und SHA-256, bei einem Ordner je Datei und eine Gesamtprüfsumme, höchstens 2000 Dateien, Symlinks und .DS_Store bleiben draußen. Bezüge zu Befunden und Nachbauten werden geprüft.
  • Speicher: neue Liste artefakte (IDs A1 …), liste --art artefakte, zeige, speicher.md; status nennt die Zahl; die Phasenregel wie bei Befunden (erst nach der Aufnahme).
  • Zustand: billig (Dateiliste und Größen) bei jedem status und jedem pruefen von rea_speicher.py (Abweichung artefakt), teuer (SHA-256 aller Dateien) nur bei rea_artefakt.py pruefen.
  • Kontextpaket: Abschnitt „Artefakte“ (Pfad, Größe, Prüfsumme, Beschreibung, Befunde, Zustand bei Abweichung), in die Kürzungsstufen aufgenommen; kontext.json führt artefakte (Pfad, Art, Größe, SHA-256, Anzahl Dateien, Bezüge, Zustand) und projektordner.
  • Systemprompt-Befehlskarte, SKILL.md, Anleitung und Store-Beschreibung nennen den Befehl.

Geprüft: 365 Tests grün (2 übersprungen), davon 28 neue (tests/test_rea_artefakt.py: Aufnehmen, Pfadgrenzen, Symlink-Flucht, Doppelte, Bezüge, Ordner, Obergrenze, Zustand billig/tief, Speicher/Status, Ansichten, Kontext, kontext.json, Kommandozeile). 15 Gegenproben (Regel ausgebaut → Tests rot): Pfadgrenze, Zielkopie, Doppelte, Symlinks, Dateizahl, tiefe Prüfung (Datei und Ordner), neue Datei im Ordner, Verlauf beim Aktualisieren, Meldung beim Laden, Rest im Kontext, Dateianzahl im JSON, Zustandsmarke im Kontext, Zähler im Status, Befehlskarte. Durchlauf mit dem entpackten Paket (python3 -I): Ordner aufgenommen, Pfad außerhalb abgelehnt, Kontextpaket und kontext.json stimmen, geänderte Datei wird gemeldet. --dry-run, Veröffentlichung.

Nicht geprüft: Verhalten des Agenten im echten Chat (ob er rea_artefakt.py add von selbst nutzt); sehr große Ordner (Laufzeit von pruefen bei Gigabytes); Installation von 0.4.0 über die Mac-GUI; Raiden-Projekt (die 43 MB in gfx/ sind nicht aufgenommen). Gleiche Größe bei anderem Inhalt erkennt nur rea_artefakt.py pruefen, nicht status (bewusst).

Offen: ein Folgeplugin, das kontext.json liest.

PR #380 gemergt: feat(iris-rea-recherche): Artefakte mit Prüfsumme im Speicher, Kontextpaket und kontext.json (iris/iris-plugins#378) http://docker:3000/iris/iris-plugins/pulls/380 Commits: - feat(iris-rea-recherche): Artefakte mit Prüfsumme im Speicher, Kontextpaket und kontext.json (iris/iris-plugins#378) --- **Stand: umgesetzt, Version 0.4.0 veröffentlicht (Registry nach dem Pull: Paket 0.4.0).** **Geändert:** - Neues Skript `rea_artefakt.py` (`add`, `liste`, `pruefen`, `aktualisieren`, `entfernen`; zusätzlich zum Issue `aktualisieren`, damit eine gewollt neu erzeugte Datei den Eintrag nicht unbrauchbar macht, der alte Stand bleibt im Verlauf). Ein Artefakt ist eine Datei oder ein Ordner im Arbeitsordner des Chats (Pfad relativ gespeichert, auch nach Auflösen von Symlinks im Workspace; nicht der Arbeitsordner selbst, nicht `ziel/`). Gespeichert: Größe und SHA-256, bei einem Ordner je Datei und eine Gesamtprüfsumme, höchstens 2000 Dateien, Symlinks und `.DS_Store` bleiben draußen. Bezüge zu Befunden und Nachbauten werden geprüft. - Speicher: neue Liste `artefakte` (IDs `A1` …), `liste --art artefakte`, `zeige`, `speicher.md`; `status` nennt die Zahl; die Phasenregel wie bei Befunden (erst nach der Aufnahme). - Zustand: billig (Dateiliste und Größen) bei jedem `status` und jedem `pruefen` von `rea_speicher.py` (Abweichung `artefakt`), teuer (SHA-256 aller Dateien) nur bei `rea_artefakt.py pruefen`. - Kontextpaket: Abschnitt „Artefakte“ (Pfad, Größe, Prüfsumme, Beschreibung, Befunde, Zustand bei Abweichung), in die Kürzungsstufen aufgenommen; `kontext.json` führt `artefakte` (Pfad, Art, Größe, SHA-256, Anzahl Dateien, Bezüge, Zustand) und `projektordner`. - Systemprompt-Befehlskarte, SKILL.md, Anleitung und Store-Beschreibung nennen den Befehl. **Geprüft:** 365 Tests grün (2 übersprungen), davon 28 neue (`tests/test_rea_artefakt.py`: Aufnehmen, Pfadgrenzen, Symlink-Flucht, Doppelte, Bezüge, Ordner, Obergrenze, Zustand billig/tief, Speicher/Status, Ansichten, Kontext, `kontext.json`, Kommandozeile). 15 Gegenproben (Regel ausgebaut → Tests rot): Pfadgrenze, Zielkopie, Doppelte, Symlinks, Dateizahl, tiefe Prüfung (Datei und Ordner), neue Datei im Ordner, Verlauf beim Aktualisieren, Meldung beim Laden, Rest im Kontext, Dateianzahl im JSON, Zustandsmarke im Kontext, Zähler im Status, Befehlskarte. Durchlauf mit dem entpackten Paket (`python3 -I`): Ordner aufgenommen, Pfad außerhalb abgelehnt, Kontextpaket und `kontext.json` stimmen, geänderte Datei wird gemeldet. `--dry-run`, Veröffentlichung. **Nicht geprüft:** Verhalten des Agenten im echten Chat (ob er `rea_artefakt.py add` von selbst nutzt); sehr große Ordner (Laufzeit von `pruefen` bei Gigabytes); Installation von 0.4.0 über die Mac-GUI; Raiden-Projekt (die 43 MB in `gfx/` sind nicht aufgenommen). Gleiche Größe bei anderem Inhalt erkennt nur `rea_artefakt.py pruefen`, nicht `status` (bewusst). **Offen:** ein Folgeplugin, das `kontext.json` liest.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
iris/iris-plugins#378
No description provided.