16 KiB
Where PhotoCraft falls short of Photoshop
Last reviewed: 2026-10-10 · Last updated: 2026-10-11 · Change: minor (G8: Character panel OpenType buttons landed, TYPE-218-5 stays partial; G8: triple-, quadruple- and five-click type selection landed, TYPE-218-8 done; Czech UI localization evidence added to G13; G14: D5100 crop and Camera Raw tuning validation) · Target: Adobe Photoshop 2026
Every known shortfall against Photoshop 2026 (27.11.0), one entry each, ranked by user impact
on the way to beta. This is the work list agents pick from: take the highest-ranked entry that
nobody is working on, and when you close part of one, update its evidence and estimate here and
the matching parity doc. Numbers come from target-app-parity.md;
checklist ids (TOOL-…, FILE-…, UI-…) are rows in scorecard.md; #n are
GitHub issues.
No gap blocks alpha: the alpha gate passes. "Blocks beta" marks what stands between alpha and beta.
Hours are Opus 5.5 agent-hours, one agent working sequentially, including tests. Human marks what an agent can't finish alone.
Summary
| # | Gap | Kind | Impact | Estimate | Parity doc |
|---|---|---|---|---|---|
| G1 | PSD fidelity and Photoshop acceptance | file format | blocks beta | 150–250 h | file-format-parity |
| G2 | Interactive performance | performance | blocks beta | 200–350 h | scorecard |
| G3 | User-reported bug backlog | stability, UI | blocks beta | 250–400 h | target-app-parity |
| G4 | Brush feel | UI / painting | high | 100–180 h | brush-parity |
| G5 | Transform, handles and modifiers | UI | high | 60–110 h | ui-parity |
| G6 | Missing tools (12) | features | high | 60–100 h | ui-parity |
| G7 | Workspaces shown as parameter dialogs | features | high | 80–140 h | target-app-parity |
| G8 | Type depth | features | high | 120–200 h | target-app-parity |
| G9 | Panels, preferences and workspace | UI | medium-high | 150–250 h | ui-parity |
| G10 | Missing and partial file formats | file format | medium | 120–220 h | file-format-parity |
| G11 | Actions and scripting | ecosystem | medium | 120–200 h | target-app-parity |
| G12 | Pen tablets and display hardware | hardware | medium | 80–150 h | hardware-parity |
| G13 | Languages: Hindi, Arabic, Vietnamese, RTL, engine messages | localization | medium | 80–140 h + human | localization-parity |
| G14 | Camera Raw depth | features, formats | medium | 120–200 h | file-format-parity |
| G15 | AI and generative features | AI | medium (high for some users) | 300–600 h + human | target-app-parity |
| G16 | Plug-in compatibility (.8BF, UXP) | ecosystem | medium | 250–450 h + human | target-app-parity |
| G17 | Platforms and distribution | platforms | low-medium | 30–60 h + human | scorecard |
Feature gaps
G1. PSD fidelity and Photoshop acceptance
- Missing: PSDs we write are not always accepted by Photoshop, and Photoshop-authored files don't always render as Photoshop renders them.
- Evidence: corpus floors (
crates/io/tests/corpus.rs, scorecard): Photoshop-authored oracles 133/256 (52%), io corpus 146/170 (86%), psd-tools 236/309 (76%); round trips ~100% within the corpus. Smart-filter re-render matches 5/30. User reports: a PSD with text layers re-saved unmodified would not reopen (#2374, closed 2026-10-10), Photoshop 26.6 cannot reopen our files (#1281), "PSD not opening in Photoshop" (#2469), a CS2-era smart object unavailable (#2465), PSB smart object blank (#1764), perspective placed layers flattened (#579), PSB > 4 GB fails on Windows (#375). No test opens our exports in a third-party editor (FILE-216-4). - Impact: PSD is the format professionals exchange. Beta requires it to be reliable.
- Estimate: 150–250 h. Human: opening exports in Photoshop on the owner's Mac (or a scripted check there) is the only real oracle.
G6. Missing tools
- Missing (4 of 68): Color Replacement (engine command exists), Art
History Brush, Add Anchor Point, Delete Anchor Point. Convert Point landed (#3204). Freeform
Pen and Curvature Pen landed (#1054); Color Sampler landed (#1046,
view.colorSamplers.*); Horizontal and Vertical Type Mask landed (#1055,type.createSelection); Perspective Crop landed (#1043,image.perspectiveCrop); Frame landed (#2914). - Evidence:
Toolenum (crates/ui-egui/src/state.rs) against the 67<tool>entries of Photoshop'sDefault Keyboard Shortcuts.kysplus Remove, Triangle and Curvature Pen. - Impact: users look for them by name and shortcut; several are daily tools for designers.
- Estimate: 60–100 h (2–9 h each, per the calibration).
G7. Workspaces shown as parameter dialogs
- Missing: Select and Mask workspace layout (TOOL-214-1, Refine Hair #2671; its view modes preview live since #1754, Refine Edge Brush #2972); Content-Aware Fill workspace with a paintable sampling area (TOOL-214-15); Vanishing Point plane editor (TOOL-214-14); Content-Aware Scale through the transform box (TOOL-214-7); Content-Aware Move's Transform On Drop (TOOL-213-4).
- Evidence: scorecard rows above, all partial or missing.
- Impact: these are the tools retouchers and compositors use daily; a slider dialog is not a substitute.
- Estimate: 80–140 h.
G8. Type depth
- Missing: type on a path (TYPE-218-1), paragraph direction UI (TYPE-218-2), complex-script fallback fonts and golden tests (TYPE-218-3), OpenType Numerals and Stylistic Sets submenus (TYPE-218-5; the Character panel buttons landed 2026-10-11, #3752), live Warp Text preview (TYPE-218-7, #2689), "rasterize and continue" for distort/perspective on type (TYPE-218-9), text free transform (#2630). Done since the re-measure: manual and optical kerning with PSD round trip (TYPE-218-6, #206), variable-font axes (TYPE-218-4, #2985).
- Evidence: scorecard Type: 3 done, 2 partial, 4 missing. 2026-10-11: 2/3/4/5 clicks select word, line, paragraph and all text, with tests (TYPE-218-8, #3493). The Type tool froze the app for 60 s on one macOS machine (#2518).
- Estimate: 120–200 h.
G11. Actions and scripting
- Missing: document-independent action recording (AUTO-219-1), a full Actions panel with step toggles and .atn import (AUTO-219-2), replay tests (AUTO-219-4), Batch recursion and naming (AUTO-219-5), ExtendScript/UXP compatibility.
- Ahead of Photoshop: CLI, MCP and the JSON control channel drive every command.
- Estimate: 120–200 h. Human: whether to support a JavaScript scripting dialect at all (AGENTS.md forbids JS in the app).
G14. Camera Raw depth
- Missing: CR3 (detected, unsupported), compressed RAF, lossy DNG (FILE-215-11), .xmp sidecars, masking and calibration in the Camera Raw dialog, per-camera colour for non-DNG cameras, lens profiles.
- Evidence:
crates/raw/src/lib.rs:219(CR3), scorecard FILE-215-11/12, #50. - Progress (2026-10-11): on the embedded-JPEG rendering work in #2135, Camera Raw tuning retains the fitted look and applies user gains afterwards. Three D5100 NEFs establish a guarded 4928 × 3264 image area. This is an estimated rendering, not a measured D5100 colour calibration; validation.
- Estimate: 120–200 h.
G15. AI and generative features
- Missing: Generative Fill and Expand, Generative Upscale, Neural Filters, Sky Replacement, Super Zoom, ML Select Subject/Sky. There is no ML runtime (AUTO-219-7). Classical substitutes exist (GrabCut/max-flow selection, Remove tool by non-local patch completion).
- Evidence: Photoshop's
Required/UXPships the Neural Filters gallery and its.kyshas a Neural Filters taskspace; users ask for local models (#2313, #1996, #2682). - Estimate: 300–600 h. Human: owner decision #41 (model licences, local vs remote).
G16. Plug-in compatibility
- Missing: hosting Photoshop .8BF filters (#2647), UXP panels, CEP. PhotoCraft has its own
sandboxed WebAssembly plug-in ABI v1 (
docs/plugins.md), but ABI v2 (panels, progress, other layers) is missing (AUTO-219-6). - Estimate: 250–450 h. Human: .8BF needs native code under the isolated-
unsaferule.
UI / UX gaps
G3. User-reported bug backlog
- Missing: fixes for 579 open issues (2026-10-10), filed mostly by 0.5/0.6 users. By title: ~150 UI/panels/menus/shortcuts, 94 file/format, 87 layers, 54 painting, 54 selection, 46 type, 41 performance, 34 transform/move, 25 Linux/Wayland, 24 Windows, 20 macOS.
- Impact: each is a place where a Photoshop user hits something different from what they expect; together they are why ready-for-real-work is ~45% while breadth is ~76%.
- Estimate: 250–400 h (many overlap with other gaps; count each fix once).
G4. Brush feel
- Missing: lag with big brushes (#2619, #1994) and under the cursor (#2566, #1343); jumpy pressure on Windows (#2046) and tap sensitivity (#1933); stair-stepped line weights (#1776), interpolation and smoothing problems (#2138), edge falloff (#2149), pixelated cursor vs Photoshop (#1433), brush rotation not driven by pen rotation (#1301); live preview only for Brush and Eraser (TOOL-213-7); no image file as a brush tip (TOOL-213-12); per-control pressure curves (TOOL-213-11); 4 of Photoshop's symmetry modes.
- Detail:
brush-parity.md. - Estimate: 100–180 h. Human: checking feel on real tablets.
G5. Transform, handles and modifiers
- Missing: right-click menu during Free Transform (TOOL-214-5); commit/cancel buttons in the options bar (#2442); H/V skew fields and the full interpolation list; transform keeps layer order and blend mode in its preview (#2439); Hand tool interrupting a transform (#2302); blend mode/opacity edits during a transform (#1384); locked layers refused before the drag (#2585); ⌘-drag temporary Move without box or snapping (#2681), Auto-Select box follows the previous layer (#2666); ⌘-arrow layer nudge (#2474); path-point nudge; polygonal lasso Shift angles (#2352); autoscroll at the edge while selecting (#2231); hold-a-key spring-loaded tools (#2672); double-click Zoom tool to 100% (#2508); wheel and pinch behaviour (#2485, #2463, #1989); toolbar press-and-hold flyouts (#2301); tool-key memory in a group (#2608).
- Detail:
ui-parity.md. - Estimate: 60–110 h.
G9. Panels, preferences and workspace
- Missing: 46 of 149 preferences do nothing (scorecard prefs audit); panel groups can't float or tear off into OS windows (UI-217-5, #1828, #1213, #2305); Color panel lacks wheel and slider modes (UI-217-17, #2569); UI scale presets (UI-217-9, #2492); more themes (UI-217-11, #2661); Stamp Visible (UI-217-22); layer clipboard (UI-217-23, #2670); tool-specific context menus beyond brushes, selections and Pen (context-menu-parity.md); Libraries, Comments, Contextual Task Bar panels.
- Estimate: 150–250 h.
G2. Interactive performance
- Measured progress (2026-10-10): Tilt-Shift's existing per-level halo/copy optimization measures 1.07–1.49× faster across nine local 24 MP cases, with exact finite output bits. The filtered proxy improves for medium/large blur; its default small blur and the 36 MP saturated-field gain are inconclusive. Method and full ranges. Native GUI latency remains unmeasured; no scorecard budget or parity percentage is changed by this work.
- Missing: 22 of 25 budgeted scenarios are over budget (baseline 2026-10-05, a heavily loaded machine): layer move with styles 321 ms p50 against 25 ms, opacity change 276 ms against 20 ms, paste 12 MP 1.2 s against 100 ms, layer move on 15000×10000 16-bit 2.7 s, Content-Aware Scale 24 MP 954 s against 3 s, Select Subject 559 ms against 100 ms; the 150-layer nudge crashes the GPU compositor (P12); a 50 MP PSB with feathered masks redraws in ~10 s (#2377); menus slow with thousands of layers (#2460); old machines lag (#2687).
- Estimate: 200–350 h. Serial in places (compositor architecture).
File-format gaps
G10. Missing and partial file formats
- Missing: JPEG Options dialog (FILE-215-19), Photoshop PDF read and write and multi-page PDF (FILE-215-10, #2541), AVIF read (#463) and default-build AVIF write, JPEG XL, JPEG 2000 (#1047), DPX/Cineon (#1049), DICOM, EPS/DCS, PCX, Pixar, IFF, WBMP, MPO/JPS, PICT, Scitex CT, Photoshop Raw; layered TIFF extra alpha channels (FILE-215-7); spot plates (FILE-215-17); .atn, .asl, .shc, .csh presets (FILE-215-15); TGA/PNG alpha channels on open (#2225); C2PA (#1050).
- Detail:
file-format-parity.md. - Estimate: 120–220 h.
Hardware gaps
G12. Pen tablets and display hardware
- Missing: tilt and rotation on Windows (pressure only, via WM_POINTER; no WinTab); native Wayland tablet-v2 (#79; the pen does not click on GNOME 50, #2622, KDE #2297); eraser end on flipped Wacom pens (#2285); HDR/EDR output (Photoshop has "Precise Color Management for HDR Display"); monitor profile detection off macOS and live profile changes; Touch Bar (macOS Intel only, low value); 3D mice.
- Detail:
hardware-parity.md. - Estimate: 80–150 h. Human: tablets and HDR displays to test on.
Localization gaps
G13. Hindi, Arabic, Vietnamese, RTL and engine messages
- Missing: catalogs for Hindi, Arabic and Vietnamese (3 of the 12 key languages); right-to- left UI layout; Devanagari/Thai/Khmer fallback fonts; engine error and status messages in English in every language; browser-locale detection and CJK fonts on the web; Japanese IME on Windows (#590); installed Japanese fonts missing from the font list (#2330); Arabic layer names as tofu (#1408, #1693).
- Evidence (2026-10-11): Czech dynamic UI wrappers, hardware labels and composed messages translate at display sites; engine errors remain English. This does not close G13.
- Detail:
localization-parity.md. - Estimate: 80–140 h. Human: native-speaker review of every catalog (none is recorded).
Platform gaps
G17. Platforms and distribution
- Missing: Windows code signing (material not obtained), Windows ARM64 (DIST-220-2), in-app update check (DIST-220-1, #2650, #2375), in-app bug report (DIST-220-3), Flathub (#173), starting without a GPU adapter (#2519, #2412), Windows 7 (#2310, out of scope), Intel Macs with OpenCore (#1859).
- Estimate: 30–60 h. Human: signing certificates.
Revision history
| Date | Change | Summary |
|---|---|---|
| 2026-10-11 | minor | D5100 image area and Camera Raw tuning validation; G14 remains open |
| 2026-10-11 | minor | G13: Czech dynamic UI text localized; engine messages and native review remain open |
| 2026-10-11 | minor | G8: triple/quadruple/five-click type selection done (TYPE-218-8, #3493); Type evidence recounted |
| 2026-10-11 | minor | G8: Character panel OpenType buttons landed (TYPE-218-5, #3752); Numerals and Stylistic Sets submenus still missing |
| 2026-10-10 | minor | G2: recorded Tilt-Shift computation/filtered-proxy measurements and limits; gap and estimate remain open |
| 2026-10-10 | minor | Checked against the alpha gate (no alpha blockers); #2374 marked closed |
| 2026-10-10 | major | First version, from the full re-measure against Photoshop 2026 27.11.0 and the open issues |