No description
Find a file
DJP 15eb47fc43 Add CreativeX fields to asset representation if missing from master metadata
Fixes issue where CreativeX score field was not appearing in final upload
because it didn't exist in the master metadata from DAM.

Problem:
- Master metadata from A1→A2 doesn't include CREATIVEX fields (new fields)
- _update_creativex_fields() only UPDATED existing fields
- If field not present, it logged error but didn't add the field
- Result: CREATIVEX score missing from upload, only URL appeared

Solution:
- Check if CREATIVEX Score field exists in mvp_fields
- If NOT found: Create and append field with proper structure
- If found: Update value as before
- Same logic for CREATIVEX URL field

Field Structures Created:

CREATIVEX Score (FERRERO.TAB.FIELD.CREATIVEX):
- Type: MetadataTableField (tabular field)
- Parent: FERRERO.TABULAR.FIELD.PLATFORMRATING
- Data type: INTEGER
- Value structure: {'value': {'value': score}}

CREATIVEX URL (FERRERO.FIELD.CREATIVEX LINK):
- Type: MetadataField (regular field)
- Data type: CHAR
- Value structure: {'value': {'value': url}}

Logging:
- Changed from ERROR to WARNING when field not found
- Logs "adding it now" instead of just error
- Confirms field added with value

Impact:
Both CreativeX fields will now appear in uploads even if master
metadata doesn't have them (common for older campaigns downloaded
before CreativeX integration).

Testing:
Run with --dryrun to verify both CREATIVEX fields in JSON output.

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

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-13 12:44:17 -05:00
Python-Version Add CreativeX fields to asset representation if missing from master metadata 2025-11-13 12:44:17 -05:00
src Add Global campaign search methods and update debug to show both Local and Global 2025-11-03 12:25:28 -05:00
.gitignore Add automated PostgreSQL backup and restore system 2025-11-11 17:30:10 -05:00
43984435_n1izyn3l_config.json Implement proper Box JWT authentication with RSA signing 2025-10-28 14:07:52 -04:00
Box-config.json Implement proper Box JWT authentication with RSA signing 2025-10-28 14:07:52 -04:00
campaign_response.json Initial commit: Ferrero OpenText Content Scaling Application 2025-10-17 14:29:20 -04:00
check_folder_status.php Add Global campaign search methods and update debug to show both Local and Global 2025-11-03 12:25:28 -05:00
clean_workflow.php Initial commit: Ferrero OpenText Content Scaling Application 2025-10-17 14:29:20 -04:00
config.example.json Initial commit: Ferrero OpenText Content Scaling Application 2025-10-17 14:29:20 -04:00
config.php Initial commit: Ferrero OpenText Content Scaling Application 2025-10-17 14:29:20 -04:00
config_v3.php Fix status updates and enhance workflow with proper error handling 2025-10-23 16:43:09 -04:00
Content Scaling Flow V3.postman_collection.json Initial commit: Ferrero OpenText Content Scaling Application 2025-10-17 14:29:20 -04:00
Content Scaling Flow.postman_collection_Oliver(New).json Initial commit: Ferrero OpenText Content Scaling Application 2025-10-17 14:29:20 -04:00
Content Scaling Flow_Oliver.Postman_Collection.json Initial commit: Ferrero OpenText Content Scaling Application 2025-10-17 14:29:20 -04:00
CREATIVEX_SUMMARY.md Move CreativeX configuration to environment variables 2025-11-11 16:22:32 -05:00
DAM_LOOKUPDOMAINS_RAW.json Add Upload from Box workflow - Phase 1 Complete 2025-10-29 15:47:30 -04:00
debug_assets.php Add debug tools: direct asset lookup and delete logging 2025-10-29 17:40:03 -04:00
debug_status.php Fix workflow V3: metadata display and download error handling 2025-10-17 15:13:01 -04:00
ECOMMERCE_ALLOWED_FIELDS.md Add Upload from Box workflow - Phase 1 Complete 2025-10-29 15:47:30 -04:00
EXTRACTION_GUIDE.md Add Global Campaign Reference extraction and storage for A1→A2 workflow 2025-11-04 10:19:50 -05:00
fetch_lookupdomains.php Add Upload from Box workflow - Phase 1 Complete 2025-10-29 15:47:30 -04:00
HANDOFF_NEXT_SESSION.md Add HANDOFF_NEXT_SESSION.md - Complete session handoff document 2025-11-04 12:30:36 -05:00
index.php Initial commit: Ferrero OpenText Content Scaling Application 2025-10-17 14:29:20 -04:00
PROJECT_STATUS.md Initial commit: Ferrero OpenText Content Scaling Application 2025-10-17 14:29:20 -04:00
PROJECT_STATUS_2025-10-24.md Add comprehensive project status report for session preservation 2025-10-24 12:21:37 -04:00
PROJECT_STATUS_2025-10-28.md Add comprehensive session report for October 28, 2025 2025-10-28 17:49:31 -04:00
PROJECT_STATUS_2025-10-29.md Add PROJECT_STATUS_2025-10-29.md - Complete session documentation 2025-10-29 15:12:46 -04:00
PROJECT_STATUS_2025-10-30.md Add PROJECT_STATUS_2025-10-30.md - Complete session summary 2025-10-30 14:47:02 -04:00
PROJECT_STATUS_2025-11-03.md Add PROJECT_STATUS_2025-11-03.md and update README - Complete session documentation 2025-11-03 15:13:59 -05:00
PYTHON_AUTOMATION_PLAN.md Add comprehensive Python automation plan 2025-10-30 16:20:33 -04:00
QUESTIONS_FOR_DAM_IT_TEAM.md Add questions document for DAM IT team re: metadata inheritance 2025-10-30 09:38:04 -04:00
README.md Add PROJECT_STATUS_2025-11-03.md and update README - Complete session documentation 2025-11-03 15:13:59 -05:00
simple_test.php Initial commit: Ferrero OpenText Content Scaling Application 2025-10-17 14:29:20 -04:00
test_asset_detail.php Add download buttons to test page - downloads confirmed working! 2025-10-17 16:35:16 -04:00
test_creativex.php Fix CREATIVEX extraction - detect at category level not field level 2025-10-31 11:29:06 -04:00
test_direct_download.php Add download buttons to test page - downloads confirmed working! 2025-10-17 16:35:16 -04:00
test_filename_parser.php Add Upload from Box workflow - Phase 1 Complete 2025-10-29 15:47:30 -04:00
test_runner.php Initial commit: Ferrero OpenText Content Scaling Application 2025-10-17 14:29:20 -04:00
test_search.php Fix workflow V3: metadata display and download error handling 2025-10-17 15:13:01 -04:00
test_upload.jpg Match AssetUploader to working standalone script approach 2025-10-28 08:48:58 -04:00
test_upload_standalone.php Simplify standalone test - accept token as argument + show token in UI 2025-10-28 08:39:25 -04:00
UPLOAD_FROM_BOX_COMPLETE.md Fix asset name to use clean filename without OMG Job and Tracking ID 2025-10-29 16:36:04 -04:00
UPLOAD_FROM_BOX_PHASE2_COMPLETE.md Add Phase 2 completion documentation 2025-10-29 15:56:46 -04:00
UPLOAD_FROM_BOX_STATUS.md Add Upload from Box workflow - Phase 1 Complete 2025-10-29 15:47:30 -04:00
UPLOAD_TROUBLESHOOTING.md Re-enable master asset fetching + Upload troubleshooting document 2025-10-24 11:24:39 -04:00
workflow.php Initial commit: Ferrero OpenText Content Scaling Application 2025-10-17 14:29:20 -04:00
workflow_v3.php Replace Debug View table with rich metadata display matching Download tab 2025-11-09 14:59:49 -05:00

Ferrero OpenText Content Scaling Workflow

Complete automation system for Ferrero DAM content scaling workflows

Version: 2.0.0
Status: Production Ready
Last Updated: November 3, 2025


📚 START HERE

PROJECT_STATUS_2025-11-03.md ← Complete status report with everything you need to know!


🎯 What This System Does

Automates the complete content scaling workflow:

  1. A1→A2: Download Local Adaptation master assets → Box
  2. A2→A3: Upload agency files from Box → DAM
  3. B1→B2: Download Global Master assets → Box
  4. A5→A6: Handle rework assets

Features: V2 naming, 27-28 MVP metadata fields, Box metadata integration, automated status updates, email notifications, webhook integration.


What's Working

  • PHP web interface (4 workflows)
  • Python automation (3 scripts)
  • Box metadata integration (CreativeX)
  • Full metadata preservation (JSONB)
  • Email notifications (detailed)
  • Log rotation (1 month)
  • All tested and production-ready

🚀 Quick Start

PHP App:

http://localhost:8888/ferrero-opentext/workflow_v3.php

Python Scripts:

cd Python-Version
source venv/bin/activate
python scripts/test_connection.py

📖 Documentation

Essential Reading:

  1. PROJECT_STATUS_2025-11-03.md - Complete status (read this!)
  2. Python-Version/DEPLOYMENT.md - Production deployment
  3. Python-Version/README.md - Python automation guide

All workflows documented with screenshots and examples.


Repository: bitbucket.org:zlalani/ferrero-opentext.git
Latest Commit: b3fbb8b
Status: Production Ready