4.1 KiB
Validation – Production Readiness v1.2
Ausgangsdaten
Der reale Testbestand zeigte unter anderem:
- 50/50 Security-Lifecycles sauber abgeschlossen, kausal exakt +50 Nodes / +50 Edges / +50 Vektoren.
- 21.341 Vektoren bei 21.351 vektorberechtigten Nodes: 10 Relation-Research-Nodes ohne Embedding.
- Zwei Staging-Artikel. Ein HAProxy-Artikel war thematisch kohärent; ein Water-Leak-Artikel enthielt acht Quellen aus Water Leak Detection, Triple Extortion und BGP Prefix Filtering.
- Der Water-Leak-Artikel hatte beim Erzeugen acht
synthesized_from- und eineproposes_merge-Edge; ein späterer Staging-Reimport löschte exakt diese neun Runtime-Provenienz-Edges. - Learning-Run-Mutationen wurden durch
graph.updated+ Terminalsnapshot doppelt gezählt.
Diese Befunde wurden als Regressionstests bzw. deterministische Readiness-Invarianten umgesetzt.
Validierung
Die Release-Quellen bleiben auf Go 1.26 und dem echten modernc.org/sqlite. Die lokale Offline-Umgebung stellt nur Go 1.23 bereit; Compile-/Unit-Validierung erfolgt deshalb in einer separaten Kopie mit einem compile-only SQLite-Stub. Der Release-Tree enthält diesen Stub nicht.
Erfolgreich ausgeführt:
- Topic-Guard-Tests für Water Leak / Triple Extortion / BGP.
- Shared-Seed-Test: gemeinsamer generischer Hub darf den Topic-Guard nicht umgehen.
- deterministischer Draft-Coherence-Gate: beobachteter Water-Leak-Mix wird verworfen; ein einzelner Supporting-Outlier in einem HAProxy-Artikel bleibt erlaubt.
- Graph-Test: Legacy-Runtime-Provenienz überlebt Staging-Reimport.
- Graph-Test: echte Artikellöschung cascadiert Runtime-Provenienz und hinterlässt keine dangling Edges.
- Graph-Test: Legacy-Artikelstruktur (
generation_depth,source_node_ids, Fingerprint) bleibt bei Reimport erhalten. - Analysis-Test: parallele Artikel bleiben über native Run-IDs getrennt.
- Analysis-Test: Cluster-Scheduling wird nicht einem offenen Artikelrun zugerechnet.
- Analysis-Test: Learning-Terminalmutationen werden exakt einmal gezählt.
- projektweite Typkompilierung
go test ./... -run '^$'. go vet ./....- vollständige ausführbare Tests für
internal/activity,internal/config,internal/research,internal/ollama,internal/workqueue. - Race Detector für Activity, Article-Run-Rekonstruktion, Learning-Mutationsbilanz und Topic-Guard.
node --checkfüranalysis.js,source-agents.js,app.js.- YAML-Parsing für
docker-compose.yml,deployment/docker-compose.full.yml,deployment/docker-compose.source-agent.yml.
Erwartete Invarianten nach Upgrade
- Readiness
Embedding-Konsistenz: exaktvector_rows == vector_eligible_nodes, nur 768D. - Readiness
Artikel-Provenienz / Topic-Coherence: grün, nachdem bekannte Alt-Mixed-Topic-Entwürfe quarantänisiert wurden. - Ein erfolgreich erzeugter Artikelrun meldet kausal seinen Artikel-Node, seine Provenienz-Edges und sein Artikel-Embedding; keine fremden Parallelmutationen.
- Learning-Bootstrap-Mutationen erscheinen nur einmal in der Workflow-Bilanz.
- Neue Relation-Research-Nodes erhalten sofort ein Embedding; vorhandene Lücken werden durch
embedding.external_repair.completedgeschlossen. article.cluster.startedenthälttopic_guard=strict-v2undtopic_labels.- Parallel laufende Artikel haben unterschiedliche
article-...Run-IDs und genau ein Terminalevent. - Nach Staging-Reimport bleiben
synthesized_from,proposes_*, Generation Depth und Source-IDs erhalten.
Bewusst nicht behauptet
Ein vollständiger Go-Runtime-Test gegen den echten modernc.org/sqlite-Treiber kann in der Offline-Go-1.23-Umgebung weiterhin nicht ausgeführt werden. Der endgültige Runtime-Nachweis erfolgt auf der Zielumgebung mit Go 1.26. Deshalb ist v1.2 ein Release Candidate; Go/No-Go wird anhand des Readiness-Panels und eines neuen Analyseexports entschieden.
- Analysis-Test: unkeyed Artikel-/Inbox-Telemetrie wird nicht mehr per Zeitnähe an einen offenen Workflow gehängt.
- Legacy-Strukturtest: Generation Depth und Fingerprint überleben einen Reimport ohne
ai_thinkim alten Staging-JSON. - finale projektweite Typkompilierung und
go vetnach Grounding-Mutationshärtung erneut erfolgreich.