Major Feature: Box Metadata Integration box_client.py: ✅ Added get_file_metadata() method ✅ Reads 'Ferrero-DAM-Metadata' template from Box files ✅ Extracts 'CreativeX Score' and 'CreativeX URL' fields ✅ Returns dict with score and url a2_to_a3_upload_polling.py: ✅ Calls box.get_file_metadata() before download ✅ Logs Box metadata retrieved ✅ Passes box_metadata to build_mvp_asset_representation() metadata_extractor_mvp.py: ✅ Added box_metadata parameter to build_mvp_asset_representation() ✅ Added _update_creativex_fields() method ✅ Updates FERRERO.FIELD.CREATIVEX LINK with URL from Box ✅ Logs CreativeX Score (tabular field - needs special handling) Flow: 1. File uploaded to Box by agency 2. Agency adds metadata using Ferrero-DAM-Metadata template 3. Script reads CreativeX Score and URL from Box metadata 4. Updates MVP fields with Box metadata values 5. Uploads to DAM with CreativeX data Field Mapping: - Box: 'CreativeX URL' → DAM: FERRERO.FIELD.CREATIVEX LINK - Box: 'CreativeX Score' → DAM: FERRERO.TAB.FIELD.CREATIVEX (logged, needs structure) Next: Test with file that has Box metadata template applied 🤖 Generated with Claude Code Co-Authored-By: Claude <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| __pycache__ | ||
| __init__.py | ||
| box_client.py | ||
| config_loader.py | ||
| dam_client.py | ||
| database.py | ||
| filename_parser.py | ||
| metadata_extractor_mvp.py | ||
| notifier.py | ||