Automatisches Einlesen, Umschreiben & Vorbereiten von RSS-Artikeln zur Veröffentlichung
Find a file
Oliver Giertz 4282759b2c
feat(categorize): close rule gaps found on scheduled posts
The first pass only covered published posts, so 137 scheduled ones were
still uncategorised. Seven of them matched no rule at all and exposed
real gaps: the regions Pfalz and Erzgebirge, and the gear nouns in
"Duschzelte", "Outdoor-Messer" and "Outdoor-Stuhl", which the existing
compound keywords could not reach because the noun sits at the end.

Adding those flipped two discount posts ("Lidl Zelt im Angebot", "Aldi
Relax-Stuhl") into the gear category, because the new product keywords
outweighed the weaker "lidl"/"aldi" signals. Both retailers only ever
appear in discount posts here, so they now carry enough weight to
trigger the offer override themselves.

Region keywords are weight 2, not 3: at 3 they outranked an explicit
"Campingplatz" in the title and pulled campsite articles into
"Reiseziele". Bare "pfalz" is weight 1 because it double-counts inside
"rheinland-pfalz".

Scheduled posts now match a rule 136 of 137 times. Ten published posts
change category as a result and were updated in WordPress to keep the
archive and the rules in sync.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-07-31 08:21:46 +02:00
.dedupe Image Dublettenprüfung 2025-08-18 07:36:48 +02:00
.github fix(deploy): correct service name and app path for Hetzner 2026-03-21 09:43:55 +00:00
backend feat(categorize): close rule gaps found on scheduled posts 2026-07-31 08:21:46 +02:00
data Bump version to v1.7.1 2025-08-28 11:18:30 +02:00
docs Use four fixed daily publish slots 2026-07-24 10:38:04 +02:00
internal Grundfunktionen optimiert 2025-08-16 11:13:10 +02:00
logs Bump version to v1.7.1 2025-08-28 11:18:30 +02:00
pages Bump version to v1.6.3 2025-08-18 10:33:27 +02:00
scripts feat: rebuild rss-news backend, admin ui, and legal extraction pipeline 2026-02-18 09:52:36 +01:00
static Bump version to v1.6.3 2025-08-18 10:33:27 +02:00
tools Image Dublettenprüfung 2025-08-18 07:37:32 +02:00
utils Bump version to v1.7.1 2025-08-28 11:18:30 +02:00
.env.example Bump version to v1.7.1 2025-08-28 11:18:30 +02:00
.gitignore chore: gitignore CLAUDE.md instead of CLAUDE_CONTEXT.md 2026-04-20 06:24:34 +00:00
__version__.py Bump version to v1.7.1 2025-08-28 11:18:30 +02:00
AGENTS.md Bump version to v1.7.1 2025-08-28 11:18:30 +02:00
app.py Bump version to v1.7.1 2025-08-28 11:18:30 +02:00
CHANGELOG.md feat: rebuild rss-news backend, admin ui, and legal extraction pipeline 2026-02-18 09:52:36 +01:00
LICENCE Release 1.1.0 2025-07-04 09:48:03 +02:00
main.py Wordpress API Anbindung imprementiert 2025-08-16 13:01:10 +02:00
pytest.ini feat: rebuild rss-news backend, admin ui, and legal extraction pipeline 2026-02-18 09:52:36 +01:00
README.md feat: rebuild rss-news backend, admin ui, and legal extraction pipeline 2026-02-18 09:52:36 +01:00
requirements.txt Update requirements.txt 2025-08-17 17:58:18 +02:00
test_checklist.md 🔖 Release v1.5.0 2025-07-08 10:48:12 +02:00
versioning.py Bump version to v1.6.2 2025-08-16 13:39:10 +02:00

rss-news (Rebuild)

rss-news wird als bestehendes Repository weitergefuehrt und schrittweise zu einer robusten, rechtssicheren News-Pipeline neu aufgebaut.

Aktueller Stand:

  • Alte Streamlit-App wird nicht produktiv genutzt.
  • news.vanityontour.de wird bis zum Go-Live der neuen App auf https://vanityontour.de umgeleitet.
  • Planung, Doku und Wiki werden als Grundlage fuer den Neuaufbau gepflegt.

Ziele

  • RSS-gestuetzte Artikelverarbeitung mit klaren Quellregeln
  • Rechtssichere Nutzung (Quellen, Attribution, Lizenzinformationen)
  • Zuverlaessige Automatisierung auf Hetzner
  • Publikation nach WordPress (IONOS aktuell, spaeter offen)
  • Zugriff nur nach Login (zunaechst User/Password)

Architektur-Richtung (MVP)

  • Backend: Python + FastAPI
  • Jobs: Queue-Worker (z. B. Redis + RQ/Celery)
  • Daten: SQLite fuer MVP, spaeter optional PostgreSQL
  • Auth: Session-Login mit einem Admin-User
  • Publishing: WordPress REST API (Status zunaechst pending)

Details: docs/PROJECT_PLAN.md

Projektsteuerung

  • GitHub Project: https://github.com/users/OliverGiertz/projects/3/views/1
  • Dieses Board ist die zentrale Steuerung fuer ToDos, Bugs, Verbesserungen.
  • Wiki-Struktur liegt unter docs/wiki/.

Dokumentation

  • Projektplan: docs/PROJECT_PLAN.md
  • ToDo-Liste: docs/TODO.md
  • Quell- und Lizenzpolicy: docs/SOURCE_POLICY.md
  • Wiki Home: docs/wiki/Home.md

Lokale Entwicklung (Legacy-Code)

Der vorhandene Legacy-Stand kann weiterhin lokal gestartet werden:

python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
streamlit run app.py

Hinweis: Diese App ist funktional historisch und wird durch die neue Architektur ersetzt.

Deployment-Zielbild

  • Betrieb auf Hetzner
  • Reverse Proxy via CloudPanel/Nginx
  • Produktive Domain: news.vanityontour.de
  • Bis zur Fertigstellung: Redirect auf https://vanityontour.de

Sicherheit

  • Keine Secrets im Repository
  • .env lokal/auf Server, nie committen
  • Auth-Pflicht fuer die neue WebApp
  • spaeter optional: Passkeys/WebAuthn

Rechtlicher Hinweis

Dieses Projekt verarbeitet nur Quellen mit dokumentierter Nutzungsgrundlage. Vor produktiver Nutzung ist eine finale rechtliche Pruefung der ausgewaehlten Feeds notwendig.