feat: M3 — automatic channel tagging (language + topic system tags)
- Tag and ChannelTag models + migration 0003 (partial unique indexes split system vs per-user tag names) - Offline language detection (py3langid) constrained to a curated language set, with the channel's declared default language as a strong prior - Topic tags mapped from YouTube topicDetails + dominant video category; the generic "Lifestyle" catch-all is intentionally dropped - System (auto) tags are regenerated idempotently and never touch user tags; orphaned system tags are cleaned up - GET /api/tags and admin POST /api/tags/recompute; scheduled autotag job
This commit is contained in:
parent
64b18b3cc1
commit
68dad91e8a
9 changed files with 482 additions and 1 deletions
|
|
@ -15,6 +15,9 @@ once and stored locally, so filtering/searching/sorting are instant and don't bu
|
|||
> - **M2** (ingest core): subscription import, free RSS detection, recent-first + deep backfill
|
||||
> from the uploads playlist, enrichment (duration/stats/category, Shorts & livestream
|
||||
> classification), a shared daily quota guard, and a background scheduler.
|
||||
> - **M3** (auto-tagging): system tags for channel language (offline detection) and topic
|
||||
> (from YouTube topics + dominant category), regenerated automatically; user tags are
|
||||
> never overwritten.
|
||||
|
||||
## Requirements
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue