chore: finalize current state and prepare next wordpress-focused roadmap
This commit is contained in:
parent
fee5e76842
commit
ba83b24510
3 changed files with 40 additions and 11 deletions
Binary file not shown.
|
|
@ -13,7 +13,7 @@ Eine modulare News-Pipeline mit klaren Stufen:
|
||||||
2. Inhaltsanalyse und Normalisierung
|
2. Inhaltsanalyse und Normalisierung
|
||||||
3. Rewrite/Anreicherung
|
3. Rewrite/Anreicherung
|
||||||
4. Legal- und Qualitaetschecks
|
4. Legal- und Qualitaetschecks
|
||||||
5. WordPress-Publikation (`pending`)
|
5. WordPress-Publikation (Draft-first, Queue + Retry)
|
||||||
6. Monitoring/Logging
|
6. Monitoring/Logging
|
||||||
|
|
||||||
## Grobe Zeitplanung (ohne Fixtermine)
|
## Grobe Zeitplanung (ohne Fixtermine)
|
||||||
|
|
@ -36,12 +36,14 @@ Eine modulare News-Pipeline mit klaren Stufen:
|
||||||
- Feed-Import mit Duplikaterkennung
|
- Feed-Import mit Duplikaterkennung
|
||||||
- Admin-Login (ein User)
|
- Admin-Login (ein User)
|
||||||
- Manuelle Review vor Publish
|
- Manuelle Review vor Publish
|
||||||
|
- Admin-UI fuer Rechtscheck, Bildauswahl, Relevanzbewertung
|
||||||
|
|
||||||
### Phase 2 - Automation
|
### Phase 2 - Automation
|
||||||
- Job-Queue (asynchron)
|
- Job-Queue (asynchron)
|
||||||
- Regelbasierte Scheduler
|
- Regelbasierte Scheduler
|
||||||
- Retry/Dead-Letter-Handling
|
- Retry/Dead-Letter-Handling
|
||||||
- Robustes Error-Reporting
|
- Robustes Error-Reporting
|
||||||
|
- WordPress-Publisher (Draft) mit Mapping `article_id -> wp_post_id`
|
||||||
|
|
||||||
### Phase 3 - Compliance und Skalierung
|
### Phase 3 - Compliance und Skalierung
|
||||||
- Source-Whitelisting mit Pflichtfeldern
|
- Source-Whitelisting mit Pflichtfeldern
|
||||||
|
|
@ -49,6 +51,28 @@ Eine modulare News-Pipeline mit klaren Stufen:
|
||||||
- Qualitaetsmetriken und Audit-Logs
|
- Qualitaetsmetriken und Audit-Logs
|
||||||
- Optional: Passkey/WebAuthn
|
- Optional: Passkey/WebAuthn
|
||||||
|
|
||||||
|
## Aktueller Stand (Snapshot)
|
||||||
|
- Backend/API + Admin-UI lauffaehig
|
||||||
|
- Feed-Ingestion inkl. Originalartikel-Extraktion (Autor, Pressekontakt, Bilder)
|
||||||
|
- Bildkuration:
|
||||||
|
- automatische Scoring-Reduktion (u. a. Presseportal `story_big` priorisiert)
|
||||||
|
- manuelle Auswahl/Ausblendung im UI
|
||||||
|
- Rechts-/Publish-Gates aktiv:
|
||||||
|
- `legal_checked` Pflicht
|
||||||
|
- Hauptbild-Auswahl Pflicht
|
||||||
|
- Status-Workflow bis `published`
|
||||||
|
- WordPress-Publishing:
|
||||||
|
- Queue + Retry + Job-Historie
|
||||||
|
- Draft-Erstellung/Update erfolgreich getestet
|
||||||
|
- Exporte:
|
||||||
|
- JSON/CSV inkl. Datum/Alter/Relevanz + Attribution/Legal-Felder
|
||||||
|
|
||||||
|
## Naechste Iteration (konkret)
|
||||||
|
1. WordPress `featured_media` Upload aus ausgewaehltem Hauptbild
|
||||||
|
2. Publish-HTML je Artikel verfeinern (strukturierter Body + konsistenter Quellenblock)
|
||||||
|
3. Publisher als periodischen Worker (Timer/Cron/Systemd) auf Hetzner betreiben
|
||||||
|
4. Monitoring/Alerting fuer Queue-Fehler + WP-API Fehlercodes
|
||||||
|
|
||||||
## Architekturprinzipien
|
## Architekturprinzipien
|
||||||
- Idempotente Jobs
|
- Idempotente Jobs
|
||||||
- Trennung von UI, API, Worker
|
- Trennung von UI, API, Worker
|
||||||
|
|
|
||||||
25
docs/TODO.md
25
docs/TODO.md
|
|
@ -1,10 +1,10 @@
|
||||||
# ToDo (Ein-Entwickler Setup)
|
# ToDo (Ein-Entwickler Setup)
|
||||||
|
|
||||||
## Jetzt
|
## Jetzt
|
||||||
- [ ] GitHub Project #3 Felder/Views fuer Neustart vereinheitlichen
|
- [ ] WordPress Beitragsbild-Upload implementieren (`featured_media` aus ausgewaehltem Hauptbild)
|
||||||
- [ ] Alte/obsolet gewordene Issues kennzeichnen (z. B. User-Verwaltung)
|
- [ ] WordPress-HTML-Ausgabe pro Artikel weiter verbessern (sauberes Layout, Quellenblock, Shortcodes falls noetig)
|
||||||
- [ ] Redirect `news.vanityontour.de -> vanityontour.de` aktiv halten
|
- [ ] Publisher Fehlertexte fuer WP-Auth/Media/API in UI klarer darstellen
|
||||||
- [ ] Wiki-Basis fertigstellen und verlinken
|
- [ ] End-to-end Publish Smoke-Test dokumentieren (lokal + Hetzner)
|
||||||
|
|
||||||
## MVP
|
## MVP
|
||||||
- [x] Neues Backend-Skelett (`backend/`) aufsetzen (FastAPI)
|
- [x] Neues Backend-Skelett (`backend/`) aufsetzen (FastAPI)
|
||||||
|
|
@ -12,14 +12,18 @@
|
||||||
- [x] Feed-Ingestion Service bauen (ETag/Last-Modified)
|
- [x] Feed-Ingestion Service bauen (ETag/Last-Modified)
|
||||||
- [x] Duplikaterkennung ueber `source_url`, `guid`, Hash
|
- [x] Duplikaterkennung ueber `source_url`, `guid`, Hash
|
||||||
- [x] Login mit 1 Admin-Account implementieren
|
- [x] Login mit 1 Admin-Account implementieren
|
||||||
- [ ] Artikel-Review-Maske mit Statusworkflow
|
- [x] Artikel-Review-Maske mit Statusworkflow
|
||||||
- [ ] WordPress-Publisher als separaten Service implementieren
|
- [x] WordPress-Publisher als separaten Service implementieren (Queue + Retry + Mapping)
|
||||||
|
- [x] Bildvorschau + manuelle Bildauswahl im Admin-UI
|
||||||
|
- [x] Automatische Bildreduktion/Scoring fuer Presseportal-Quellen
|
||||||
|
- [x] Artikel-Datum + Relevanzscore im UI/Export
|
||||||
|
|
||||||
## Recht/Qualitaet
|
## Recht/Qualitaet
|
||||||
- [ ] Source-Policy in DB + Admin-UI abbilden
|
- [x] Source-Policy in DB + Admin-UI abbilden
|
||||||
- [ ] Pflichtfelder je Quelle erzwingen (Autor, URL, Lizenz, Hinweise)
|
- [x] Pflichtfelder je Quelle erzwingen (Autor, URL, Lizenz, Hinweise)
|
||||||
- [ ] Auto-Block bei fehlender Lizenzinfo
|
- [x] Auto-Block bei fehlender Lizenzinfo
|
||||||
- [ ] Pro Artikel Attribution-Block generieren
|
- [x] Pro Artikel Attribution-Block generieren
|
||||||
|
- [x] Manuelle Rechtsfreigabe als Publish-Gate
|
||||||
|
|
||||||
## Betrieb
|
## Betrieb
|
||||||
- [ ] Systemd-Service(s) fuer API/Worker erstellen
|
- [ ] Systemd-Service(s) fuer API/Worker erstellen
|
||||||
|
|
@ -31,3 +35,4 @@
|
||||||
- [ ] Passkey/WebAuthn evaluieren und optional einfuehren
|
- [ ] Passkey/WebAuthn evaluieren und optional einfuehren
|
||||||
- [ ] Migration auf PostgreSQL bewerten
|
- [ ] Migration auf PostgreSQL bewerten
|
||||||
- [ ] Teilautomatische Freigabe-Regeln definieren
|
- [ ] Teilautomatische Freigabe-Regeln definieren
|
||||||
|
- [ ] KI-Rewrite mit Prompt-Versionierung + Qualitaetsmetriken wieder aktivieren
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue