Changelog — February 27, 2026
Studio retouch pricing by category is now live, with multiple hardening fixes for legacy projects, Docker build stability, and API correctness. Five releases shipped today (v1.3.0 → v1.4.2).
✨ New Features
- Studio Retouch Pricing by Category (WEB-219) — Introduced per-category pricing for studio retouching. Pricing is now computed based on the project's
retouchingCategoryfield, enabling finer billing granularity. Legacy projects without this field fall back gracefully to the previous volume-based calculation.#PR-245#PR-250
🐛 Bug Fixes
-
Fallback Retouched Volume for Legacy Projects — Fixed a pricing edge case where legacy projects (missing
retouchingCategory) would not correctly count previously retouched assets in the pricing volume. The web client now includes these assets in the computed total.#PR-251 -
Restore Archived Status Constant in Project Assets Resolver — The
ARCHIVEDstatus constant was accidentally removed from the project assets GraphQL resolver, causing archived assets to be excluded from results. The import has been restored.#PR-252
📦 Dependencies & Infrastructure
-
Docker Build: Workers Package Now Included — The
workerspackage was not being built inside the Docker image, causing runtime failures in containerized deployments. It is now explicitly built as part of the Docker image build process.#PR-249 -
Automatic Prisma Migrations on Container Start — The API container now runs
prisma migrate deployautomatically at startup, removing the need for manual migration steps after deploys.#PR-245#PR-250 -
Deploy Hardening: Prisma Advisory Lock Timeout — Added resilience against Prisma advisory lock timeouts during startup, preventing containers from failing to start in high-concurrency deploy scenarios.
#PR-250 -
API: Runtime Schema Source Enforced — Removed the SDK fallback for Prisma schema resolution; the runtime now strictly uses the correct schema source, improving deploy predictability.
#PR-250
By theodaguier