Mutationstest der Provisionierung: acht Mutationen werden nicht erkannt (Test war vorher wirkungslos) #18
Labels
No labels
herkunft/alpha-feedback
status
blockiert
status
zu-testen
typ
bug
typ
docs
typ
enhancement
typ
feature
typ
idea
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
iris/iris-linux-server#18
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Problem
provision/tools_mutation.pykopierte nurtests/und die beiden Quelldateien in einen temporären Ordner. Die Tests, dietemplates/und das Sandbox-Dockerfile lesen (Embedding-Vorlage, Strata-Vorlagen, Skript-Prüfung), schlugen dort schon vor jeder Mutation fehl. Dadurch galt jede Mutation als „erkannt“, das gemeldete „189 von 189“ sagte nichts aus.Was schon behoben ist (iris-linux-server#17)
Das Werkzeug baut die Ordnerstruktur nach (
provision/{tests,templates},iris-server/hermes/sandbox-image), prüft zuerst, dass die unveränderten Tests grün sind (sonst bricht es ab), und nimmt einen Namensfilter (python3 tools_mutation.py Vorsatz). Ein ungültiges Muster („Strata Skript ausführbar“) ist angepasst, elf neue Mutationen für den Modellwechsel-Vorsatz und das Pluginstrata-modellesind dabei.Ergebnis des ersten ehrlichen Laufs
257 von 266 Mutationen erkannt. Nicht erkannt (Tests zu schwach oder Mutation gleichwertig, jeweils prüfen):
provision.py: Optionen setzen zurückprovision.py: Embedding: Dimensionenpreflight.py: Embedding-Port nicht geprüftprovision.py: Iris-Server baut trotz Cacheprovision.py: Registry-Images werden nicht gezogenprovision.py: Marker-Plugin immer erledigtprovision.py: Whisper-Test aufräumenprovision.py: Env erledigt: LLM prüfen(Der neunte Eintrag, „Strata Skript ausführbar“, war ein ungültiges Muster und ist erledigt.)
Aufgabe
Zu jeder der acht Mutationen entweder einen Test ergänzen, der sie erkennt, oder sie als gleichwertig begründen und streichen. Danach
python3 tools_mutation.pyohne Filter: alle erkannt.PR #25 gemergt: test(provision): acht überlebende Mutationen erkannt, Mutationstest vollständig grün (#18)
Neue Tests in provision/tests: Optionen ohne Wert setzen nichts zurück (store_config), Iris-Server baut
nicht, wenn die Images lokal da sind oder aus der Registry kommen, Vektorlänge 1024 mit wörtlichen
Zahlen (bge-m3), collect_facts fragt alle drei Ports inklusive Embedding, marker_plugin_done nur bei
gelistetem Plugin, Whisper-Test räumt die Sprachdatei weg (FakeSystem merkt sich Löschaufrufe),
videowatch_env_done braucht die LLM-Werte in der .env. tools_mutation.py: 277 von 277 erkannt.
Co-Authored-By: Claude Sonnet 5.5 noreply@anthropic.com
#25
Commits:
Stand 2026-10-16: alle acht Mutationen werden erkannt (PR #25)
Ergebnis:
python3 tools_mutation.pyohne Filter meldet 277 von 277 erkannt (266 vorhandene plus die 11 neuen). Die 246 Unit-Tests laufen durch.Einordnung: Alle acht waren echte Testlücken, keine war gleichwertig, deshalb keine gestrichen. Es ändert sich nur
provision/tests/,provision.pyundpreflight.pysind unberührt.store_configmitextra={"profile": None, ...}lässt gespeicherte Werte stehen, ein neuer Wert ersetzt den altencollect_factsfragt genau 8080, 18094 und 11434; nur 11434 belegt liefert[11434]up -d --no-build, keindocker pulldocker pullfür beide Registry-Namen, danach--no-build; bei Fehlern wird gebautFalseFakeSystemmerkt sich Löschaufrufe (removed), der Test prüft den Pfad/tmp/iris-whisper-test.wavLLM_BASE_URLfalsch oderLLM_MODELfehlt in der.env→FalseEntscheidung zur Dimensions-Mutation: Der Test nutzt bewusst wörtliche Zahlen und nicht
pv.EMBEDDING_DIMENSIONS. Wechselt das Embedding-Modell einmal (bge-m3 liefert 1024), muss der Test zusammen mit der Konstante angepasst werden und fällt nicht unbemerkt weg.Nicht geprüft: Ob die neuen Tests auch dann Mutationen erkennen, die ich nicht kenne, ist offen. Der Mutationstest deckt nur die in
tools_mutation.pyaufgeführten Änderungen ab.Geschlossen auf Wunsch von Alf. Umgesetzt in iris-linux-server PR 25: alle acht Mutationen werden erkannt, tools_mutation.py meldet 277 von 277.