claude-memory/graph/fixes/draftlist-nested-playerteam-id-extraction-bug-83dbeb.md
Cal Corum 34bb613c57 Add 20 retroactive edges and sync pending memory updates
- 20 new high-quality edges across 8 project clusters
- Edge types: BUILDS_ON, RELATED_TO, ALTERNATIVE_TO, REQUIRES
- Updated relation metadata on connected memories
- New episode entries and memory files from recent sessions

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-19 23:34:07 -06:00

1.1 KiB

id type title tags importance confidence created updated relations
83dbebd0-b523-4e4d-9351-b1e4fd81999e fix DraftList nested Player.team_id extraction bug
major-domo
python
fix
draft
pydantic
nested-objects
0.7 0.8 2025-12-11T18:25:14.873571+00:00 2026-02-20T04:32:13.382771+00:00
target type direction strength edge_id
7c146559-79b7-4254-84cf-89aa1bc6750a BUILDS_ON outgoing 0.85 cd4dce12-c777-4c55-8660-f1992ff0f243

Fixed auto-draft failure where player.team_id was None for all DraftList entries. Root cause: Pydantic's default nested object creation calls Player(**data) directly, NOT Player.from_api_data(data). Since Player.from_api_data() extracts team_id from nested team object (line 90), but wasn't being called, player.team_id remained None. Fix: Added DraftList.from_api_data() override that explicitly calls Player.from_api_data() and Team.from_api_data() for nested objects. The check 'player.team_id != config.free_agent_team_id' was evaluating 'None != 547' = True, skipping ALL players. Files: models/draft_list.py (added from_api_data), tests/test_models.py (added regression test).