STAGE 2: Search Provider Abstraction für NSCT

- SearchProvider-Interface mit abstract.base, NormalizedResult-Modell
- DuckDuckGoProvider: HTTP-basierte Suche ohne API-Keys, Fallback-fähig
- MultiProviderSearch: parallele Suche, URL-Dedup, Provider-Config, Fallback
- POST /search-Endpoint mit normalisierten Ergebnissen, Debug-Mode
- 25 unit tests: NormalizedResult, MultiProviderSearch, DuckDuckGoProvider
- rank ist KEIN truth_score - Dokumentation und Validierung durchgängig
This commit is contained in:
NSCT Agent
2026-08-23 12:16:29 +00:00
parent 9280d69ebf
commit a1ef260520
6 changed files with 1042 additions and 0 deletions

View File

@@ -75,6 +75,10 @@ def create_app() -> FastAPI:
from nsct.api.health import router as health_router
app.include_router(health_router, tags=["system"])
# Mount search router
from nsct.api.search import router as search_router
app.include_router(search_router, tags=["search"])
return app