[metadata.tvshows.themoviedb.org.python] v2.0.6 - #140
Conversation
MikeSiLVO
commented
Aug 3, 2026
- Show the season regular cast instead of everyone who ever appeared
- Fix episodes listing the whole series cast
- Fewer API calls when scraping a show
|
Decision: NOT APPROVED Issues:
The findings need attention even though Kodiai could not produce safe automatic patches for them. Review Details
|
|
@kodiai re-review based on latest force push |
There was a problem hiding this comment.
Decision: APPROVE
kodiai response
Decision: APPROVE
Issues: none
Evidence:
- The critical deduplication bug identified in the previous review has been fixed in
lib/api/tmdb.py:73. The line now correctly updates both billing and member data together:found[name] = [billing, member], ensuring that when a cast member appears across multiple seasons, the character information matches the season with the best billing order. - Cast handling architecture is sound:
_season_regulars()(lines 61-80) aggregates cast from season-level credits, deduplicates by actor name, keeps the member with lowest billing order, and returns up to 200 cast members sorted by billing. - Fallback mechanism works correctly:
_set_series_cast()(lines 146-153) attempts season regulars first, falls back to_aggregate_cast()(lines 155-167) for shows with no season regulars (episode-credited shows). - API efficiency improvements verified:
_attach_season_data()(lines 169-196) now batches both images and credits together (per_call = _MAX_APPENDS // 2, lines 176-182), reducing total API calls. Initial show fetch removedaggregate_creditsfrom append list (line 127), only fetching it on-demand when season regulars are unavailable. - Cache structure correctly simplified: Module-level cache documentation (line 25) no longer includes
'season_cast'key, matching the removal of per-season cast storage throughout the implementation. - Episode cast handling is correct:
lib/scraper.py:876now only adds guest stars to episode cast, with the comment "Kodi merges show cast into every episode, regulars already there" (line 875). Theseason_castparameter has been properly removed from_populate_episode()signature (line 786) and all call sites (line 299). - Version metadata properly updated:
addon.xmlbumped to 2.0.6 with accurate changelog,changelog.txtprepended with matching release notes describing the three improvements. - No resource leaks, threading issues, or unhandled error paths introduced. All API calls remain wrapped in proper error handling inherited from
_get()method.