adobe-ps-scripts-loreal/IMPLEMENTATION-PLAN.md
DJP 4a192a8c97 Initial commit: Adobe Photoshop API text management scripts
Local and cloud-based workflows for extracting and updating
text layers in PSD files via ExtendScript and Adobe PS API.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-02 13:46:52 -05:00

3.7 KiB

Adobe Photoshop API Implementation Plan

This document outlines the implementation plan for fixing the layer ID issue in our Adobe Photoshop API integration.

Problem Statement

Our current implementation of the Adobe Photoshop API for text layer updates:

  • Successfully connects to the API
  • Uploads files to Google Cloud Storage
  • Gets valid presigned URLs
  • Receives 202 Accepted responses from the API
  • Processes complete successfully according to status URLs
  • BUT: Text layer changes don't appear in the output file

The root cause is a mismatch between the layer IDs we use and the internal IDs that Adobe Photoshop API recognizes.

Implementation Plan

Phase 1: ExtendScript Implementation (3 days)

  1. Create a robust ExtendScript for extracting accurate layer IDs from PSD files
  2. Add functionality to map layer names/paths to internal IDs
  3. Test the script on various PSD files to ensure accuracy
  4. Create a Mac-specific implementation using AppleScript to drive Photoshop

Deliverables:

  • extract_internal_ids.jsx: ExtendScript file
  • mac_extract_ids.py: Python wrapper for Mac
  • Documentation for the ID extraction process

Phase 2: JSON Format Update (2 days)

  1. Modify the JSON generation process to include internal layer IDs
  2. Update the JSON schema to accommodate both user-friendly IDs and internal IDs
  3. Create a conversion utility to update existing JSON files
  4. Update documentation for the JSON format

Deliverables:

  • Updated JSON schema
  • update_json_schema.py: Utility to update existing JSON files
  • Updated documentation

Phase 3: API Integration (3 days)

  1. Update the Adobe API integration to use internal layer IDs
  2. Implement a fallback mechanism for when internal IDs are not available
  3. Add more robust error handling and validation
  4. Test the integration with various PSD files

Deliverables:

  • Updated adobe_ps_api.py with internal ID support
  • Enhanced error handling and logging
  • Test suite for validation

Phase 4: Workflow Integration (2 days)

  1. Update the batch processing scripts to use the new approach
  2. Create a unified workflow that works for both local and API processing
  3. Implement a hybrid approach that can fall back to local processing when needed
  4. Update user documentation

Deliverables:

  • Updated batch processing scripts
  • Unified workflow implementation
  • User documentation

Timeline

  • Total Estimated Time: 10 working days
  • Priority: High - This is a critical feature for our workflow
  • Dependencies: Access to Adobe Photoshop on Mac for testing

Success Criteria

The implementation will be considered successful when:

  1. Text layer updates consistently work through the API
  2. The workflow is as automated as possible
  3. There is a fallback mechanism for complex files
  4. Documentation is comprehensive and user-friendly

Risks and Mitigations

Risk Impact Mitigation
Adobe API changes High Monitor Adobe documentation for updates
ExtendScript compatibility issues Medium Test on multiple Photoshop versions
Complex PSD structures Medium Implement fallback to local processing
Performance with large files Low Optimize file handling and implement progress reporting

Long-term Considerations

For future versions, consider:

  1. Caching layer IDs to avoid repeated extraction
  2. Creating a more robust layer mapping system
  3. Implementing direct integration with Adobe Creative Cloud Libraries API
  4. Building a web interface for managing text updates

Next Steps

  1. Approve this implementation plan
  2. Assign resources to each phase
  3. Begin development of ExtendScript implementation
  4. Schedule regular check-ins to monitor progress