Commit Graph

9 Commits

Author SHA1 Message Date
thibaud-leclere
f291df0fcf feat: add ActorRepository::findOneRandomInWatchedFilms()
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-01 23:01:57 +02:00
thibaud-leclere
67571e8b33 feat: add AwardTypeRepository::findWithMinActors()
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-01 22:58:52 +02:00
thibaud-leclere
5fbac8359f feat: add AwardRepository::findOneRandomByActorAndTypes() 2026-04-01 22:58:04 +02:00
thibaud-leclere
295bb16ab7 fix: reduce false positives in award detection
Filter SPARQL query to only return entertainment awards (film, TV,
music, theater) and add a canonical award map to normalize variants
(e.g. all Oscar/Academy Award → "Oscar", all Golden Globe → "Golden
Globe"). Non-entertainment awards (orders, medals, honorary degrees)
are excluded both at SPARQL level and via PHP keyword filter.

Also restart messenger container on cache:clear to avoid stale DI
container errors.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-01 21:12:28 +02:00
thibaud-leclere
116d7b409e perf: batch Wikidata SPARQL queries per film instead of per actor
Use a VALUES clause to fetch awards for all actors of a film in a
single SPARQL request, reducing Wikidata API calls from ~20 per film
to 1 and avoiding idle timeout errors from rate limiting.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-01 20:37:13 +02:00
thibaud-leclere
087b063f1f chore: reorganizing 2026-04-01 19:24:04 +02:00
thibaud-leclere
fb13a8819d feat: use DB awards instead of live Wikidata calls for hint generation
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-01 14:29:36 +02:00
thibaud-leclere
8aa33ccefc feat: add AwardImporter service with tests
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-04-01 14:27:15 +02:00
thibaud-leclere
d4a3d32e0a init 2026-01-13 13:59:05 +01:00