ferrero-opentext/Python-Version/scripts/shared
DJP 946c580024 Integrate CreativeX database lookup into A2→A3 upload workflow
Replaces Box metadata template with database lookup for CreativeX scores,
adding automatic fallback to default values when scores are missing.

Changes to A2→A3 Script (a2_to_a3_upload_polling.py):
- Removed: box.get_file_metadata() for CreativeX data
- Added: db.get_creativex_score_by_filename() database lookup
- Uses clean filename (stripped of OMG Job + Tracking ID) for lookup
- Implements fallback when score not found:
  - Default score: 0
  - Default URL: https://app.creativex.com/preflight/pretests
- Tracks creativex_found flag for email notifications
- Logs warnings when defaults are used

Email Template Updates (notifier.py):
- Shows " CreativeX Score Added: 85 (from database)" when found
- Shows "⚠️ CreativeX Score: Not found - used default (0)" when missing
- Adds orange warning box when defaults used:
  - Lists default values (Score: 0, placeholder URL)
  - Provides instructions to add score
  - References Box folder 350605024645 and scoring script

Benefits:
- Automatic CreativeX lookup (no manual Box metadata entry)
- Graceful degradation (uploads succeed even without scores)
- Clear notification when scores are missing
- Preserves history (uses latest active version)
- No breaking changes (existing workflow continues to work)

Default Value Strategy:
- Score 0 indicates "not scored" but doesn't block upload
- Placeholder URL is valid CreativeX domain
- Email clearly shows when defaults are used
- Provides actionable instructions for adding scores

Workflow Integration:
1. CreativeX PDFs uploaded to folder 350605024645
2. creativex_scoring_storing.py extracts and stores scores
3. A2→A3 automatically looks up scores by filename
4. Uploads proceed with actual scores OR defaults
5. Email indicates which path was taken

Documentation: A2_A3_CREATIVEX_INTEGRATION.md

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-11 17:02:25 -05:00
..
__pycache__ Update comprehensive README and reorganize documentation files 2025-11-05 10:57:11 -05:00
__init__.py Start Python automation - Foundation components 2025-10-30 16:38:26 -04:00
box_client.py Implement V2 naming convention updates and folder structure support 2025-11-05 18:33:35 -05:00
config_loader.py Add country code mapping system (ISO -> DAM codes) 2025-11-05 19:15:26 -05:00
dam_client.py Implement V2 naming convention updates and folder structure support 2025-11-05 18:33:35 -05:00
database.py Add version tracking and remove .0 decimals from CreativeX scores 2025-11-11 16:55:07 -05:00
filename_parser.py Implement V2 naming convention updates and folder structure support 2025-11-05 18:33:35 -05:00
metadata_extractor_mvp.py Add CreativeX fields to MVP and fix score update logic 2025-11-11 13:54:39 -05:00
notifier.py Integrate CreativeX database lookup into A2→A3 upload workflow 2025-11-11 17:02:25 -05:00