Primary sync: replace PersistenceActor JSON file with SwiftData + CloudKit - Add SavedCardModel (@Model class) and PersistenceController (ModelContainer with .automatic CloudKit, fallback to local). BackgroundPersistenceActor (@ModelActor) handles all DB I/O off the main thread. - One-time migration imports user_collection.json into SwiftData and renames the original file to prevent re-import. - Inject modelContainer into SwiftUI environment in IYmtgApp. Image storage: Documents/UserContent/ subfolder (blueprint requirement) - ImageManager.dir now targets iCloud Documents/UserContent/ (or local equiv). - migrateImagesToUserContent() moves existing JPGs to the new subfolder on first launch; called during the SwiftData migration. Firebase: demoted to optional manual backup (metadata only, no images) - Remove all automatic CloudEngine.save/delete/batchUpdatePrices calls from CollectionViewModel mutations. - Add backupAllToFirebase() for user-triggered metadata sync. - Add isFirebaseBackupEnabled to AppConfig (default false). - Add Cloud Backup section in Library settings with iCloud vs Firebase explanation and "Backup Metadata to Firebase Now" button. Also: full modular refactor (Data/, Features/, Services/ directories) and README updated with CloudKit setup steps and revised release checklist. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2.0 KiB
2.0 KiB
AI Blueprint
This document outlines the architecture and plan for development tasks. It is intended to be used by the development team to guide implementation.
Instructions for the Architect AI
- Understand the Goal: Your primary role is to understand the user's request and create a detailed, step-by-step plan for another AI (Claude) to execute. You do not write code.
- Analyze the codebase: Use the available tools to explore the existing files and understand the current state of the project.
- Create a Plan: Based on the user's request and your analysis, create a comprehensive plan. This plan should be broken down into clear, actionable steps. Each step should include:
- A description of the task.
- The specific files to be modified.
- The high-level changes required.
- Update this Blueprint: Overwrite this
ai_blueprint.mdfile with the generated plan. - Include README and Commit Steps: The plan must always include steps for:
- Updating the
README.mdif the changes affect the project's description, setup, or usage. - Creating a Git commit with a descriptive message to save the changes.
- Updating the
- Delegate Implementation: After creating the plan, your job is complete. Another AI will take over to implement the plan.
Development Plan
Note to the Architect AI: Replace this section with the actual plan for the user's request.
1. Analyze Existing Code
- File:
[Path to relevant file] - Description: Briefly describe the purpose of the file and the area to be modified.
2. Implement Changes
- File:
[Path to file to be created or modified] - Description: Detail the changes to be made. For new files, describe the file's purpose and structure.
3. Update Documentation
- File:
README.md - Description: Update the README to reflect the new changes, features, or bug fixes.
4. Commit Changes
- Action: Create a Git commit.
- Commit Message:
feat: [A brief, descriptive message of the changes]