Files
Benjamin Boenisch 414e0f5ec0
All checks were successful
CI / go-lint (push) Has been skipped
CI / python-lint (push) Has been skipped
CI / nodejs-lint (push) Has been skipped
CI / test-go-school (push) Successful in 28s
CI / test-go-edu-search (push) Successful in 27s
CI / test-python-klausur (push) Successful in 1m45s
CI / test-python-agent-core (push) Successful in 16s
CI / test-nodejs-website (push) Successful in 21s
feat: edu-search-service migriert, voice-service/geo-service entfernt
- edu-search-service von breakpilot-pwa nach breakpilot-lehrer kopiert (ohne vendor)
- opensearch + edu-search-service in docker-compose.yml hinzugefuegt
- voice-service aus docker-compose.yml entfernt (jetzt in breakpilot-core)
- geo-service aus docker-compose.yml entfernt (nicht mehr benoetigt)
- CI/CD: edu-search-service zu Gitea Actions und Woodpecker hinzugefuegt
  (Go lint, test mit go mod download, build, SBOM)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-15 18:36:38 +01:00

118 lines
2.8 KiB
YAML

# Trust Score Regeln für Education Search
# Score-Berechnung: Summe aller matchenden Regeln, dann clamp(0, 1)
domain_boosts:
# Bundesebene (höchste Vertrauensstufe)
- match: "*.kmk.org"
add: 0.50
reason: "KMK - Kultusministerkonferenz"
- match: "*.bildungsserver.de"
add: 0.50
reason: "Deutscher Bildungsserver"
- match: "*.bpb.de"
add: 0.45
reason: "Bundeszentrale für politische Bildung"
- match: "*.bmbf.de"
add: 0.50
reason: "BMBF"
- match: "*.iqb.hu-berlin.de"
add: 0.50
reason: "IQB Bildungsstandards"
# Landesministerien
- match: "*.bayern.de"
add: 0.45
reason: "Bayern offiziell"
- match: "*.nrw.de"
add: 0.45
reason: "NRW offiziell"
- match: "*.berlin.de"
add: 0.45
reason: "Berlin offiziell"
- match: "*.sachsen.de"
add: 0.45
reason: "Sachsen offiziell"
- match: "*.niedersachsen.de"
add: 0.45
reason: "Niedersachsen offiziell"
- match: "*.hessen.de"
add: 0.45
reason: "Hessen offiziell"
- match: "*.brandenburg.de"
add: 0.45
reason: "Brandenburg offiziell"
- match: "*.thueringen.de"
add: 0.45
reason: "Thüringen offiziell"
# Bildungsserver der Länder
- match: "*.nibis.de"
add: 0.40
reason: "Niedersachsen Bildungsserver"
- match: "*.learnline.nrw.de"
add: 0.40
reason: "NRW Bildungsserver"
- match: "*.schule-bw.de"
add: 0.40
reason: "BW Bildungsserver"
# Universitäten
- match: "*.uni-*.de"
add: 0.30
reason: "Deutsche Universität"
- match: "*.tu-*.de"
add: 0.30
reason: "Technische Universität"
- match: "*.fh-*.de"
add: 0.25
reason: "Fachhochschule"
# Etablierte Portale
- match: "*.zum.de"
add: 0.25
reason: "ZUM - Zentrale für Unterrichtsmedien"
- match: "*.lehrer-online.de"
add: 0.20
reason: "Lehrer-Online Portal"
- match: "*.4teachers.de"
add: 0.20
reason: "4teachers Portal"
tld_boosts:
- tld: ".gov"
add: 0.40
reason: "Government TLD"
- tld: ".edu"
add: 0.35
reason: "Education TLD"
penalties:
# URL-Muster die Werbung/Tracking andeuten
- if_url_contains: ["utm_", "affiliate", "partner=", "ref="]
add: -0.10
reason: "Tracking/Affiliate Parameter"
# Kommerzielle Signale
- if_url_contains: ["shop", "kaufen", "bestellen", "warenkorb"]
add: -0.20
reason: "E-Commerce Signale"
# SEO-Spam Indikatoren
- if_url_contains: ["gratis-", "kostenlos-download", "sofort-"]
add: -0.15
reason: "SEO-Spam Muster"
# Content-basierte Strafen (werden vom Extractor gesetzt)
content_penalties:
- if_ad_density_gt: 0.20
add: -0.30
reason: "Hoher Werbeanteil"
- if_link_density_gt: 0.40
add: -0.20
reason: "Hohe Link-Dichte (Linkfarm)"
- if_content_length_lt: 200
add: -0.25
reason: "Sehr wenig Content"