2.7 KiB
2.7 KiB
Validierung: Iterative Grounded Research
Stand: 4. August 2026
Erfolgreich ausgeführt
go test ./internal/research ./internal/config ./internal/model
Damit wurden unter anderem geprüft:
- deutsche und englische SearXNG-Sprachparameter;
- HTML-Haupttextextraktion und Bereinigung;
- Größen- und Mindestinhaltsprüfung;
- SSRF-Schutz für lokale und private Adressen;
- bewusst freigegebene Intranetquelle im Testmodus;
- erkennbare Ablehnung von PDF-Inhalten;
- neue Konfigurationswerte und Grenzvalidierung.
Die gesamte Codebasis wurde mit einem lokalen Validierungsstub für den bereits verwendeten database/sql-Treiber kompiliert:
go test -modfile=/tmp/brainmod/go.mod -run '^$' ./...
go vet -modfile=/tmp/brainmod/go.mod ./...
Zusätzlich wurden die deterministischen Research- und Konsolidierungsregeln ausgeführt:
TestNormalizeKnowledgeBriefOptionalGapDoesNotBlockArticle
TestNormalizeKnowledgeBriefCriticalGapBlocksArticle
TestNormalizeKnowledgeBriefAllowsGroundedConceptArticle
TestHeuristicResearchAssessmentPenalizesSocialAndTrainingPages
TestHeuristicResearchAssessmentUsesEnglishQueryAsFallbackAnchor
TestFilterUsableResearchEvidenceRequiresFetchedRelevantFullText
TestAppendResearchEvidenceMarksWebContentAsUntrusted
TestGapExpectsActionableDistinguishesConceptFromImplementation
TestLoadResearchEvidenceValidatesPortableRecord
TestLoadResearchEvidenceRejectsTraversalAndTampering
TestResearchResultNodeReferencesEvidenceWithoutEmbeddingFullPageInMetadata
TestLoadResearchEvidenceCanReuseInMemoryQueuedRecord
TestFilterKnowledgeBriefReferencesDropsUnsupportedStatements
TestArticleContentToDraftFormatsConceptWithoutInventedSteps
TestArticleContentToDraftKeepsOperationalStepsNumbered
TestNormalizeArticleContentCleansConceptFields
TestArticleQualityContextCarriesArticleType
TestArticleDraftContextCarriesArticleType
Weitere Prüfungen:
node --check internal/web/static/app.js
YAML-Parsing von docker-compose.yml
yaml-Parsing von deployment/docker-compose.full.yml
In dieser Umgebung nicht ausführbar
Die Sandbox konnte modernc.org/sqlite und seine Abhängigkeiten nicht über das Go-Modulnetz laden. Deshalb konnte der vollständige Engine-Integrationstest mit einer echten SQLite-Datenbank hier nicht ausgeführt werden. Der Test ist im Projekt enthalten und simuliert den Ablauf:
kritische Wissenslücke
→ Research-Plan
→ SearXNG-Snippet-Gate
→ Volltextabruf
→ Volltext-Gate
→ Rekonsolidierung mit optionaler Restlücke
→ Artikelgenerierung
→ Qualitätsprüfung
→ Embedding und Quellen-Edges
Auf einem Buildsystem mit normalem Go-Modulzugriff wird er zusammen mit go test ./... ausgeführt.