Roadmap: milestones and what's next
Last reviewed: 2026-10-10 · Last updated: 2026-10-24 · Change: minor (docs catch-up: duplicate G11 and G2 focus lines merged; the Effect Gallery is in (#2883), its thumbnails and in-dialog preview remain; estimates unchanged; previously: M10/G5: symbol libraries in library panels (Basic Shapes generated in code, User Defined, Other Library…, Save Symbols; click adds, drag places); previously:; M2/G1: a double-click on the Line Segment, Arc, Rectangular Grid or Polar Grid tool opens its Tool Options, whose OK sets the next drag's and click's options (#2691, in part); estimates unchanged; status-bar pointer readout follow-up; scores and hours unchanged; Simplify of part of a path: with anchors or segments of a path direct-selected, Object › Path › Simplify (slider, Auto-Simplify and dialog) refits only each run of selected segments between its end anchors and leaves the rest of the path exactly as it was, M6; estimates unchanged; Simplify: Object › Path › Simplify opens its slider at the Auto-Simplify level for the selection, previewing that result, instead of at 1 pt; partial-path simplify remains missing; G2: the Effect Gallery shipped (#2883): Effect › Effect Gallery… browses the Artistic, Brush Strokes, Distort, Sketch, Stylize and Texture filters, edits each filter's settings, builds an ordered stack (add, reorder, hide, remove) with a live canvas preview, and OK applies it as separate appearance effects in one undo step; remaining: filter thumbnails and a preview area inside the dialog; G2 estimate 4–6 → 1–2 h; Raster effects 82% → 85% (power-user view 49% → 52%), estimated, a modest move because the named missing dialog landed without thumbnails or an in-dialog preview; previously:; Tangent and straight-segment perpendicular snapping use saved Smart Guides Geometric Guides preferences and Control bar quick access (#2537); no View submenu; G2: Effect › Sketch › Conté Crayon (Foreground Level, Background Level, Texture, Scaling, Relief, Light Direction, Invert; a black crayon in the dark areas and a white one in the light areas on textured mid-grey paper; ranges and defaults unverified Stylo choices); measured Photoshop-style filters 57/57, the Effect Gallery remains (4–6 h); Recolor Artwork Edit chips scroll within the available screen height (#3416); small palettes retain their tab height; scores and estimates unchanged; #3515: recent-font groups in font pickers; Blend panel Type and Ramp control step easing with a separate color Shift (#2539); Blend Options retains spacing and orientation; polynomial curves are original approximation; M14: panels dock into any dock group or the icon column by dragging (UI.6), workspaces keep their layout changes (UI.7), dock groups collapse to their tabs by a double-click (UI.8); estimates unchanged; Shape Builder Gap Detection shares Live Paint’s spatial gap finder and temporary merge bridges (#2526); Custom is capped at 72 pt in the existing options dialog; Recolor model selection is available through the engine and MCP only (#2520); the dialog retains its existing controls; 3D: original Standard, Diffuse, Top Left and Right lighting presets; command access, effective-setting recognition and preview/history; scores and estimates unchanged; Polygon and Star exact-size placement remembers the chosen count for later drags and dialog openings; Cancel preserves the previous count; M12 duplicate milestone rows consolidated without losing distinct details; scores and estimates unchanged; live-trace bounds note placed under Image Trace rather than Graphs; Live trace result bounds and selection highlights exclude the retained bitmap except in source-image views; M3.57: CSS swatch libraries retain fractional gradient stop positions; scores and hours unchanged; G2: Effect › Artistic › Smudge Stick, Sponge and Watercolor; Sketch › Bas Relief, Charcoal, Photocopy and Stamp, #2533; Photoshop filters 45/57, 12 remaining (8–14 h); interactive Mirror Repeat axis; bounding-box handles take priority over the axis body while the center and end handles retain their move and rotation actions; status-readout sample widths cached by language, document unit and pixels per point; status messages and readouts use stable responsive allocations sized for localized labels and ordinary coordinates; DXF circular cubic paths export as native CIRCLE/ARC with R12 weighted strokes kept as POLYLINE and closing-chord safeguards (#1299); cached canvas dimensions match the renderer limit before cache-key creation, view construction and worker submission; cached canvas reprojection preserves scale during resize, rotation and DPI changes; interactive Mirror Repeat axis; bounding-box handles take priority over the axis body while the center and end handles retain their move and rotation actions; 3D lighting: one to ten colored lights, smooth colored Inflate, legacy white-light appearance preserved; surface batching and restored seam minimum; scores and estimates unchanged; Blend spine Anchor Point conversions, selection/stacking priority and Shift regression coverage (#2544); scores and hours unchanged; Image Trace: Auto Color keeps rare but distinct colours; Image Trace: large images trace with a warning; anchor limit raised to 8,000,000; Image Trace: Raster::new returns an error for a buffer of the wrong length; M12 graph pruning and junction merging measured; M12 exact crop EDT and Guo–Hall thinning measured; M12 centre-lines baseline measured; scores and hours unchanged; Image Trace: a higher Paths never gives fewer segments on collapsed loops; Image Trace: the notch rule reads only its own piece; Image Trace: an edge's sub-pixel shift is the same from either side; Image Trace: a simpler contour walk with no precomputed direction table; transparency grid visibility saved in native documents, #1968; EPS editing data: legacy mesh corners, vector opacity masks and compound member paint retained; raster page comparison filters minification without relaxing limits; scores and hours unchanged; correction: M12's Image Trace quick presets leave the panel as it was, the Image Trace button opens it; batch exporting, #1935; G2: Effect › Sketch › Halftone Pattern; Photoshop filters 45/57, 12 remaining (8–14 h); Warp Options controls verified by focused checks and original-image review; estimates unchanged; existing-guide Escape cancellation validated 2026-10-14; scores and hours unchanged; open-path anchor Delete keeps surviving runs separate; estimates unchanged; PDF.R1: shared PDF reader with windowed content scanning and explicit incomplete-content errors; scores and estimates unchanged; PDF.W1: guarded shared PDF writer; output behavior, scores and estimates unchanged; Artboard tab-switch follow-up historically validated on
a0671777; scores and hours unchanged; Artboard clean active-tab close/Delete follow-up validated 2026-10-15; later 2026-10-14 merges: per-corner radius, #1682; Width Point Edit from the Width tool, #1814, #1630; guides, #1782, #1836; anchor X/Y/W/H, #1824; toolbar and All Tools, #1751; macOS save sheets, #1855; rendering caches, #1667–#1792; untrusted files, #1852, #1862–#1873; failed-save dialog, #1685; Dim Images, #1683; estimates unchanged; M12 row: Image Trace's enhanced presets; verified PngSuite downloads, #1729; synthetic control-input budgets, #1709; 2026-10-14 merges: anchor Align and Distribute, #1636; Direct Selection and Delete fixes, #1674, #1666, #1743; Expand on repeats, #1756; file and input hardening, #1776–#1783, #1786, #1807; MCP limits and envelope, #1727, #1728; Image Trace #1647, #1657; estimates unchanged; later 2026-10-13 merges: SVG import, #1565, #1596, #1568, #1601; Warp Arc, #1578; Pathfinder strokes, #1570; saves, #1620 in part; OpenType features, #1607; intersect Smart Guides, #1602 in part; estimates unchanged; TIFF is available in Export for Screens and Asset Export with shared format settings; scores and hours unchanged; G1/M11: Artboard deletion and history selection normalization; history regressions and full workspace CI pass; scores and hours unchanged; Character styles retain explicit Auto leading, propagate resets and preserve local leading overrides; scores and hours unchanged; Width Point Edit: Shift-double-click enables adjoining adjustment; plain double-click keeps it off; scores and hours unchanged; per-corner radius fields with a link toggle, split from #1594; control transport deadlines, #1726; M12 row: Image Trace's presets and options as they are now; Polish interface, #1498; compact native saves, #1492; PDF and EPS paste as vector art, #1499; import fixes, #1528, #1530, #1531, #1544, #1551, #1553; guide objects, #1534; Join after Average, #1533; Keyboard Shortcuts, #1539; estimates unchanged; Direct Selection anchor precedence, #1508; dialog slider rails, #1483; template layers in Outline view, #1486; type that does not fit its frame is reported, #1471; 3D on outlined type, #1481; print-size images, #1517; French catalog, #1511; estimates unchanged; Split Into Grid options, #1462; Transform Objects and Reflect's angle, #1448 and #1460; Pathfinder on a group, #1450; unknown parameter keys refused, #1442; grayscale TIFFs with alpha, #1466 in part; estimates unchanged; M9: Extrude & Bevel, Inflate and Rotate;.aicompound path paint, #1410, overprint on import, #1388, text-only PDF parts, #1387; Transform dialogs preview, #1412, and transforms of direct-selected anchors, #1408; strokes wider than their shape, #1396; estimates unchanged;.aiediting-data follow-ups, #1390, #1391, #1392; dialog keyboard focus, #1367 and #1395; symbol instance redraw cache, #1386; font rescan, #1376; estimates unchanged; gradient shapes import as paths, #1304; white constant alpha masks, #1286 in part; Live Corners widget click, #1239; custom ruler origin, #1212; M11: Artboard object clicks create a fitted artboard (#1227); estimate unchanged; Pathfinder single-result source names and SVG IDs retained, #1293; DXF control-point SPLINE closure read, #1299 follow-up; desktop print transport adopts craft-print, Windows 7 fallback retained, scores unchanged; Czech render-site localization follow-up; scores and estimates unchanged; Document Setup: Edit Artboards closes the modal after applying valid settings; pointer-click regressions; scores and hours unchanged; Artboards: Escape exits editing; an active drag cancels first; shortcut-routing regression; scores and hours unchanged; M6: Simplify preview/counts and valid topology selection (#1272); estimates unchanged; G2: Film Grain added; Photoshop effects 45/57; 28 filters remain; M14: RPM runtime metadata (#1275); estimates unchanged; M5: squared-distance texture redraws (#1257); clean-machine/platform drag measurements still pending; estimates unchanged; M2: Curvature point display improved (#1236, in part); estimates unchanged; M7: full-name font matching (#1258); Windows font-service QA pending; estimates unchanged; M1: no-op anchor Align keeps Undo, Redo and saved state (#1180 follow-up); estimates unchanged; M14: dedicated Eyedropper cursor (#1269); estimates unchanged; M3: Eyedropper reads visible locked and outside-isolation sources (#1251); estimates unchanged; M2: Direct Selection segment picks and Delete (#1278); estimates unchanged; M3: adding paint to an unpainted zero-width stroke restores 1 pt (#1253); estimates unchanged; M12: graph designs, graph data, Graph Type and label options; M14: native macOS save Format menu, #866; M6: compound appearance and member fill-rule fixes, #1197; estimates unchanged; M9: PDF raster-effect cap warnings; G11: #893 fixed, #937 open; M7: accurate character controls after scaling, #1034; estimates unchanged; MCPadd_textexposes the existingverticaloption for point, area and path type; horizontal remains the default; scores and hours unchanged; Vertical fullwidth question and exclamation marks keep their nominal glyph upright when the font has no vertical alternate; scores and hours unchanged.; M2: Curvature curve geometry, #1236 in part; Width-point finite-arithmetic follow-up validated; scores and hours unchanged; Image Trace adjustment discovery; legacy.aiof version 7 saved, #868; estimates unchanged; Revolve: automatic smooth shading and default-on Cap with continuous rims; PDF.R1: shared PDF reader with windowed content scanning and explicit incomplete-content errors; scores and estimates unchanged; PDF.W1: guarded shared PDF writer; output behavior, scores and estimates unchanged; later 2026-10-14 merges: per-corner radius, #1682; Width Point Edit from the Width tool, #1814, #1630; guides, #1782, #1836; anchor X/Y/W/H, #1824; toolbar and All Tools, #1751; macOS save sheets, #1855; rendering caches, #1667–#1792; untrusted files, #1852, #1862–#1873; failed-save dialog, #1685; Dim Images, #1683; estimates unchanged; M12 row: Image Trace's enhanced presets; verified PngSuite downloads, #1729; synthetic control-input budgets, #1709; 2026-10-14 merges: anchor Align and Distribute, #1636; Direct Selection and Delete fixes, #1674, #1666, #1743; Expand on repeats, #1756; file and input hardening, #1776–#1783, #1786, #1807; MCP limits and envelope, #1727, #1728; Image Trace #1647, #1657; estimates unchanged; later 2026-10-13 merges: SVG import, #1565, #1596, #1568, #1601; Warp Arc, #1578; Pathfinder strokes, #1570; saves, #1620 in part; OpenType features, #1607; intersect Smart Guides, #1602 in part; estimates unchanged; TIFF is available in Export for Screens and Asset Export with shared format settings; scores and hours unchanged; G1/M11: Artboard deletion and history selection normalization; history regressions and full workspace CI pass; scores and hours unchanged; Character styles retain explicit Auto leading, propagate resets and preserve local leading overrides; scores and hours unchanged; Width Point Edit: Shift-double-click enables adjoining adjustment; plain double-click keeps it off; scores and hours unchanged; per-corner radius fields with a link toggle, split from #1594; control transport deadlines, #1726; M12 row: Image Trace's presets and options as they are now; Polish interface, #1498; compact native saves, #1492; PDF and EPS paste as vector art, #1499; import fixes, #1528, #1530, #1531, #1544, #1551, #1553; guide objects, #1534; Join after Average, #1533; Keyboard Shortcuts, #1539; estimates unchanged; Direct Selection anchor precedence, #1508; dialog slider rails, #1483; template layers in Outline view, #1486; type that does not fit its frame is reported, #1471; 3D on outlined type, #1481; print-size images, #1517; French catalog, #1511; estimates unchanged; Split Into Grid options, #1462; Transform Objects and Reflect's angle, #1448 and #1460; Pathfinder on a group, #1450; unknown parameter keys refused, #1442; grayscale TIFFs with alpha, #1466 in part; estimates unchanged; M9: Extrude & Bevel, Inflate and Rotate;.aicompound path paint, #1410, overprint on import, #1388, text-only PDF parts, #1387; Transform dialogs preview, #1412, and transforms of direct-selected anchors, #1408; strokes wider than their shape, #1396; estimates unchanged;.aiediting-data follow-ups, #1390, #1391, #1392; dialog keyboard focus, #1367 and #1395; symbol instance redraw cache, #1386; font rescan, #1376; estimates unchanged; gradient shapes import as paths, #1304; white constant alpha masks, #1286 in part; Live Corners widget click, #1239; custom ruler origin, #1212; M11: Artboard object clicks create a fitted artboard (#1227); estimate unchanged; Pathfinder single-result source names and SVG IDs retained, #1293; DXF control-point SPLINE closure read, #1299 follow-up; desktop print transport adopts craft-print, Windows 7 fallback retained, scores unchanged; Czech render-site localization follow-up; scores and estimates unchanged; Document Setup: Edit Artboards closes the modal after applying valid settings; pointer-click regressions; scores and hours unchanged; Artboards: Escape exits editing; an active drag cancels first; shortcut-routing regression; scores and hours unchanged; M6: Simplify preview/counts and valid topology selection (#1272); estimates unchanged; G2: Film Grain added; Photoshop effects 45/57; 28 filters remain; M14: RPM runtime metadata (#1275); estimates unchanged; M5: squared-distance texture redraws (#1257); clean-machine/platform drag measurements still pending; estimates unchanged; M2: Curvature point display improved (#1236, in part); estimates unchanged; M7: full-name font matching (#1258); Windows font-service QA pending; estimates unchanged; M1: no-op anchor Align keeps Undo, Redo and saved state (#1180 follow-up); estimates unchanged; M14: dedicated Eyedropper cursor (#1269); estimates unchanged; M3: Eyedropper reads visible locked and outside-isolation sources (#1251); estimates unchanged; M2: Direct Selection segment picks and Delete (#1278); estimates unchanged; M3: adding paint to an unpainted zero-width stroke restores 1 pt (#1253); estimates unchanged; M12: graph designs, graph data, Graph Type and label options; M14: native macOS save Format menu, #866; M6: compound appearance and member fill-rule fixes, #1197; estimates unchanged; M9: PDF raster-effect cap warnings; G11: #893 fixed, #937 open; M7: accurate character controls after scaling, #1034; estimates unchanged) · Target: Adobe Illustrator 2026 (30.x; G11: bezier drag previews no longer stall, #834; Transform effect options, #885; G11 and Current focus: #937's reproduced case fixed, Shape Builder lines cut art past 4,096 segments; Artboard Options honors Scale Artwork with Artboard for preset, orientation and typed-size changes; both Fits keep artwork stationary; scores and estimates unchanged; G2: the Effect Gallery shipped (#2883): Effect › Effect Gallery… browses the Artistic, Brush Strokes, Distort, Sketch, Stylize and Texture filters, edits each filter's settings, builds an ordered stack (add, reorder, hide, remove) with a live canvas preview, and OK applies it as separate appearance effects in one undo step; remaining: filter thumbnails and a preview area inside the dialog; G2 estimate 4–6 → 1–2 h; Raster effects 82% → 85% (power-user view 49% → 52%), estimated, a modest move because the named missing dialog landed without thumbnails or an in-dialog preview; previously:; Tangent and straight-segment perpendicular snapping use saved Smart Guides Geometric Guides preferences and Control bar quick access (#2537); no View submenu; G2: Effect › Sketch › Conté Crayon (Foreground Level, Background Level, Texture, Scaling, Relief, Light Direction, Invert; a black crayon in the dark areas and a white one in the light areas on textured mid-grey paper; ranges and defaults unverified Stylo choices); measured Photoshop-style filters 57/57, the Effect Gallery remains (4–6 h); Recolor Artwork Edit chips scroll within the available screen height (#3416); small palettes retain their tab height; scores and estimates unchanged; #3515: recent-font groups in font pickers; Blend panel Type and Ramp control step easing with a separate color Shift (#2539); Blend Options retains spacing and orientation; polynomial curves are original approximation; M14: panels dock into any dock group or the icon column by dragging (UI.6), workspaces keep their layout changes (UI.7), dock groups collapse to their tabs by a double-click (UI.8); estimates unchanged; Shape Builder Gap Detection shares Live Paint’s spatial gap finder and temporary merge bridges (#2526); Custom is capped at 72 pt in the existing options dialog; Recolor model selection is available through the engine and MCP only (#2520); the dialog retains its existing controls; 3D: original Standard, Diffuse, Top Left and Right lighting presets; command access, effective-setting recognition and preview/history; scores and estimates unchanged; Polygon and Star exact-size placement remembers the chosen count for later drags and dialog openings; Cancel preserves the previous count; M12 duplicate milestone rows consolidated without losing distinct details; scores and estimates unchanged; live-trace bounds note placed under Image Trace rather than Graphs; Live trace result bounds and selection highlights exclude the retained bitmap except in source-image views; M3.57: CSS swatch libraries retain fractional gradient stop positions; scores and hours unchanged; G2: Effect › Artistic › Smudge Stick, Sponge and Watercolor; Sketch › Bas Relief, Charcoal, Photocopy and Stamp, #2533; Photoshop filters 45/57, 12 remaining (8–14 h); interactive Mirror Repeat axis; bounding-box handles take priority over the axis body while the center and end handles retain their move and rotation actions; status-readout sample widths cached by language, document unit and pixels per point; status messages and readouts use stable responsive allocations sized for localized labels and ordinary coordinates; DXF circular cubic paths export as native CIRCLE/ARC with R12 weighted strokes kept as POLYLINE and closing-chord safeguards (#1299); cached canvas dimensions match the renderer limit before cache-key creation, view construction and worker submission; cached canvas reprojection preserves scale during resize, rotation and DPI changes; interactive Mirror Repeat axis; bounding-box handles take priority over the axis body while the center and end handles retain their move and rotation actions; 3D lighting: one to ten colored lights, smooth colored Inflate, legacy white-light appearance preserved; surface batching and restored seam minimum; scores and estimates unchanged; Blend spine Anchor Point conversions, selection/stacking priority and Shift regression coverage (#2544); scores and hours unchanged; Image Trace: Auto Color keeps rare but distinct colours; Image Trace: large images trace with a warning; anchor limit raised to 8,000,000; Image Trace: Raster::new returns an error for a buffer of the wrong length; M12 graph pruning and junction merging measured; M12 exact crop EDT and Guo–Hall thinning measured; M12 centre-lines baseline measured; scores and hours unchanged; Image Trace: a higher Paths never gives fewer segments on collapsed loops; Image Trace: the notch rule reads only its own piece; Image Trace: an edge's sub-pixel shift is the same from either side; Image Trace: a simpler contour walk with no precomputed direction table; transparency grid visibility saved in native documents, #1968; EPS editing data: legacy mesh corners, vector opacity masks and compound member paint retained; raster page comparison filters minification without relaxing limits; scores and hours unchanged; correction: M12's Image Trace quick presets leave the panel as it was, the Image Trace button opens it; batch exporting, #1935; G2: Effect › Sketch › Halftone Pattern; Photoshop filters 45/57, 12 remaining (8–14 h); Warp Options controls verified by focused checks and original-image review; estimates unchanged; existing-guide Escape cancellation validated 2026-10-14; scores and hours unchanged; open-path anchor Delete keeps surviving runs separate; estimates unchanged; PDF.R1: shared PDF reader with windowed content scanning and explicit incomplete-content errors; scores and estimates unchanged; PDF.W1: guarded shared PDF writer; output behavior, scores and estimates unchanged; Artboard tab-switch follow-up historically validated ona0671777; scores and hours unchanged; Artboard clean active-tab close/Delete follow-up validated 2026-10-15; later 2026-10-14 merges: per-corner radius, #1682; Width Point Edit from the Width tool, #1814, #1630; guides, #1782, #1836; anchor X/Y/W/H, #1824; toolbar and All Tools, #1751; macOS save sheets, #1855; rendering caches, #1667–#1792; untrusted files, #1852, #1862–#1873; failed-save dialog, #1685; Dim Images, #1683; estimates unchanged; M12 row: Image Trace's enhanced presets; verified PngSuite downloads, #1729; synthetic control-input budgets, #1709; 2026-10-14 merges: anchor Align and Distribute, #1636; Direct Selection and Delete fixes, #1674, #1666, #1743; Expand on repeats, #1756; file and input hardening, #1776–#1783, #1786, #1807; MCP limits and envelope, #1727, #1728; Image Trace #1647, #1657; estimates unchanged; later 2026-10-13 merges: SVG import, #1565, #1596, #1568, #1601; Warp Arc, #1578; Pathfinder strokes, #1570; saves, #1620 in part; OpenType features, #1607; intersect Smart Guides, #1602 in part; estimates unchanged; TIFF is available in Export for Screens and Asset Export with shared format settings; scores and hours unchanged; G1/M11: Artboard deletion and history selection normalization; history regressions and full workspace CI pass; scores and hours unchanged; Character styles retain explicit Auto leading, propagate resets and preserve local leading overrides; scores and hours unchanged; Width Point Edit: Shift-double-click enables adjoining adjustment; plain double-click keeps it off; scores and hours unchanged; per-corner radius fields with a link toggle, split from #1594; control transport deadlines, #1726; M12 row: Image Trace's presets and options as they are now; Polish interface, #1498; compact native saves, #1492; PDF and EPS paste as vector art, #1499; import fixes, #1528, #1530, #1531, #1544, #1551, #1553; guide objects, #1534; Join after Average, #1533; Keyboard Shortcuts, #1539; estimates unchanged; Direct Selection anchor precedence, #1508; dialog slider rails, #1483; template layers in Outline view, #1486; type that does not fit its frame is reported, #1471; 3D on outlined type, #1481; print-size images, #1517; French catalog, #1511; estimates unchanged; Split Into Grid options, #1462; Transform Objects and Reflect's angle, #1448 and #1460; Pathfinder on a group, #1450; unknown parameter keys refused, #1442; grayscale TIFFs with alpha, #1466 in part; estimates unchanged; M9: Extrude & Bevel, Inflate and Rotate;.aicompound path paint, #1410, overprint on import, #1388, text-only PDF parts, #1387; Transform dialogs preview, #1412, and transforms of direct-selected anchors, #1408; strokes wider than their shape, #1396; estimates unchanged;.aiediting-data follow-ups, #1390, #1391, #1392; dialog keyboard focus, #1367 and #1395; symbol instance redraw cache, #1386; font rescan, #1376; estimates unchanged; gradient shapes import as paths, #1304; white constant alpha masks, #1286 in part; Live Corners widget click, #1239; custom ruler origin, #1212; M11: Artboard object clicks create a fitted artboard (#1227); estimate unchanged; Pathfinder single-result source names and SVG IDs retained, #1293; DXF control-point SPLINE closure read, #1299 follow-up; desktop print transport adopts craft-print, Windows 7 fallback retained, scores unchanged; Czech render-site localization follow-up; scores and estimates unchanged; Document Setup: Edit Artboards closes the modal after applying valid settings; pointer-click regressions; scores and hours unchanged; Artboards: Escape exits editing; an active drag cancels first; shortcut-routing regression; scores and hours unchanged; M6: Simplify preview/counts and valid topology selection (#1272); estimates unchanged; G2: Film Grain added; Photoshop effects 45/57; 28 filters remain; M14: RPM runtime metadata (#1275); estimates unchanged; M5: squared-distance texture redraws (#1257); clean-machine/platform drag measurements still pending; estimates unchanged; M2: Curvature point display improved (#1236, in part); estimates unchanged; M7: full-name font matching (#1258); Windows font-service QA pending; estimates unchanged; M1: no-op anchor Align keeps Undo, Redo and saved state (#1180 follow-up); estimates unchanged; M14: dedicated Eyedropper cursor (#1269); estimates unchanged; M3: Eyedropper reads visible locked and outside-isolation sources (#1251); estimates unchanged; M2: Direct Selection segment picks and Delete (#1278); estimates unchanged; M3: adding paint to an unpainted zero-width stroke restores 1 pt (#1253); estimates unchanged; M12: graph designs, graph data, Graph Type and label options; M14: native macOS save Format menu, #866; M6: compound appearance and member fill-rule fixes, #1197; estimates unchanged; M9: PDF raster-effect cap warnings; G11: #893 fixed, #937 open; M7: accurate character controls after scaling, #1034; estimates unchanged; MCPadd_textexposes the existingverticaloption for point, area and path type; horizontal remains the default; scores and hours unchanged; Vertical fullwidth question and exclamation marks keep their nominal glyph upright when the font has no vertical alternate; scores and hours unchanged.; M2: Curvature curve geometry, #1236 in part; Width-point finite-arithmetic follow-up validated; scores and hours unchanged; Image Trace adjustment discovery; legacy.aiof version 7 saved, #868; estimates unchanged; Revolve: automatic smooth shading and default-on Cap with continuous rims; PDF.R1: shared PDF reader with windowed content scanning and explicit incomplete-content errors; scores and estimates unchanged; PDF.W1: guarded shared PDF writer; output behavior, scores and estimates unchanged; later 2026-10-14 merges: per-corner radius, #1682; Width Point Edit from the Width tool, #1814, #1630; guides, #1782, #1836; anchor X/Y/W/H, #1824; toolbar and All Tools, #1751; macOS save sheets, #1855; rendering caches, #1667–#1792; untrusted files, #1852, #1862–#1873; failed-save dialog, #1685; Dim Images, #1683; estimates unchanged; M12 row: Image Trace's enhanced presets; verified PngSuite downloads, #1729; synthetic control-input budgets, #1709; 2026-10-14 merges: anchor Align and Distribute, #1636; Direct Selection and Delete fixes, #1674, #1666, #1743; Expand on repeats, #1756; file and input hardening, #1776–#1783, #1786, #1807; MCP limits and envelope, #1727, #1728; Image Trace #1647, #1657; estimates unchanged; later 2026-10-13 merges: SVG import, #1565, #1596, #1568, #1601; Warp Arc, #1578; Pathfinder strokes, #1570; saves, #1620 in part; OpenType features, #1607; intersect Smart Guides, #1602 in part; estimates unchanged; TIFF is available in Export for Screens and Asset Export with shared format settings; scores and hours unchanged; G1/M11: Artboard deletion and history selection normalization; history regressions and full workspace CI pass; scores and hours unchanged; Character styles retain explicit Auto leading, propagate resets and preserve local leading overrides; scores and hours unchanged; Width Point Edit: Shift-double-click enables adjoining adjustment; plain double-click keeps it off; scores and hours unchanged; per-corner radius fields with a link toggle, split from #1594; control transport deadlines, #1726; M12 row: Image Trace's presets and options as they are now; Polish interface, #1498; compact native saves, #1492; PDF and EPS paste as vector art, #1499; import fixes, #1528, #1530, #1531, #1544, #1551, #1553; guide objects, #1534; Join after Average, #1533; Keyboard Shortcuts, #1539; estimates unchanged; Direct Selection anchor precedence, #1508; dialog slider rails, #1483; template layers in Outline view, #1486; type that does not fit its frame is reported, #1471; 3D on outlined type, #1481; print-size images, #1517; French catalog, #1511; estimates unchanged; Split Into Grid options, #1462; Transform Objects and Reflect's angle, #1448 and #1460; Pathfinder on a group, #1450; unknown parameter keys refused, #1442; grayscale TIFFs with alpha, #1466 in part; estimates unchanged; M9: Extrude & Bevel, Inflate and Rotate;.aicompound path paint, #1410, overprint on import, #1388, text-only PDF parts, #1387; Transform dialogs preview, #1412, and transforms of direct-selected anchors, #1408; strokes wider than their shape, #1396; estimates unchanged;.aiediting-data follow-ups, #1390, #1391, #1392; dialog keyboard focus, #1367 and #1395; symbol instance redraw cache, #1386; font rescan, #1376; estimates unchanged; gradient shapes import as paths, #1304; white constant alpha masks, #1286 in part; Live Corners widget click, #1239; custom ruler origin, #1212; M11: Artboard object clicks create a fitted artboard (#1227); estimate unchanged; Pathfinder single-result source names and SVG IDs retained, #1293; DXF control-point SPLINE closure read, #1299 follow-up; desktop print transport adopts craft-print, Windows 7 fallback retained, scores unchanged; Czech render-site localization follow-up; scores and estimates unchanged; Document Setup: Edit Artboards closes the modal after applying valid settings; pointer-click regressions; scores and hours unchanged; Artboards: Escape exits editing; an active drag cancels first; shortcut-routing regression; scores and hours unchanged; M6: Simplify preview/counts and valid topology selection (#1272); estimates unchanged; G2: Film Grain added; Photoshop effects 45/57; 28 filters remain; M14: RPM runtime metadata (#1275); estimates unchanged; M5: squared-distance texture redraws (#1257); clean-machine/platform drag measurements still pending; estimates unchanged; M2: Curvature point display improved (#1236, in part); estimates unchanged; M7: full-name font matching (#1258); Windows font-service QA pending; estimates unchanged; M1: no-op anchor Align keeps Undo, Redo and saved state (#1180 follow-up); estimates unchanged; M14: dedicated Eyedropper cursor (#1269); estimates unchanged; M3: Eyedropper reads visible locked and outside-isolation sources (#1251); estimates unchanged; M2: Direct Selection segment picks and Delete (#1278); estimates unchanged; M3: adding paint to an unpainted zero-width stroke restores 1 pt (#1253); estimates unchanged; M12: graph designs, graph data, Graph Type and label options; M14: native macOS save Format menu, #866; M6: compound appearance and member fill-rule fixes, #1197; estimates unchanged; M9: PDF raster-effect cap warnings; G11: #893 fixed, #937 open; M7: accurate character controls after scaling, #1034; estimates unchanged) · Target: Adobe Illustrator 2026 (30.x; G12 and M14: Constrain Angle acts for the arrow keys, Shift drags and new objects, #394; hanging punctuation: Glyph Scaling leaves the hung marks at their width, Standard burasagari counts a hung line start as room, G4; M7: a paragraph's Auto Leading also drives the Character panel's Leading, the Alt+↑/↓ leading nudge and Fill with Placeholder Text; estimates unchanged; G11: bezier drag previews no longer stall, #834; Transform effect options, #885; G11 and Current focus: #937's reproduced case fixed, Shape Builder lines cut art past 4,096 segments; Artboard Options honors Scale Artwork with Artboard for preset, orientation and typed-size changes; both Fits keep artwork stationary; scores and estimates unchanged; G2: the Effect Gallery shipped (#2883): Effect › Effect Gallery… browses the Artistic, Brush Strokes, Distort, Sketch, Stylize and Texture filters, edits each filter's settings, builds an ordered stack (add, reorder, hide, remove) with a live canvas preview, and OK applies it as separate appearance effects in one undo step; remaining: filter thumbnails and a preview area inside the dialog; G2 estimate 4–6 → 1–2 h; Raster effects 82% → 85% (power-user view 49% → 52%), estimated, a modest move because the named missing dialog landed without thumbnails or an in-dialog preview; previously:; Tangent and straight-segment perpendicular snapping use saved Smart Guides Geometric Guides preferences and Control bar quick access (#2537); no View submenu; G2: Effect › Sketch › Conté Crayon (Foreground Level, Background Level, Texture, Scaling, Relief, Light Direction, Invert; a black crayon in the dark areas and a white one in the light areas on textured mid-grey paper; ranges and defaults unverified Stylo choices); measured Photoshop-style filters 57/57, the Effect Gallery remains (4–6 h); Recolor Artwork Edit chips scroll within the available screen height (#3416); small palettes retain their tab height; scores and estimates unchanged; #3515: recent-font groups in font pickers; Blend panel Type and Ramp control step easing with a separate color Shift (#2539); Blend Options retains spacing and orientation; polynomial curves are original approximation; M14: panels dock into any dock group or the icon column by dragging (UI.6), workspaces keep their layout changes (UI.7), dock groups collapse to their tabs by a double-click (UI.8); estimates unchanged; Shape Builder Gap Detection shares Live Paint’s spatial gap finder and temporary merge bridges (#2526); Custom is capped at 72 pt in the existing options dialog; Recolor model selection is available through the engine and MCP only (#2520); the dialog retains its existing controls; 3D: original Standard, Diffuse, Top Left and Right lighting presets; command access, effective-setting recognition and preview/history; scores and estimates unchanged; Polygon and Star exact-size placement remembers the chosen count for later drags and dialog openings; Cancel preserves the previous count; M12 duplicate milestone rows consolidated without losing distinct details; scores and estimates unchanged; live-trace bounds note placed under Image Trace rather than Graphs; Live trace result bounds and selection highlights exclude the retained bitmap except in source-image views; M3.57: CSS swatch libraries retain fractional gradient stop positions; scores and hours unchanged; G2: Effect › Artistic › Smudge Stick, Sponge and Watercolor; Sketch › Bas Relief, Charcoal, Photocopy and Stamp, #2533; Photoshop filters 45/57, 12 remaining (8–14 h); interactive Mirror Repeat axis; bounding-box handles take priority over the axis body while the center and end handles retain their move and rotation actions; status-readout sample widths cached by language, document unit and pixels per point; status messages and readouts use stable responsive allocations sized for localized labels and ordinary coordinates; DXF circular cubic paths export as native CIRCLE/ARC with R12 weighted strokes kept as POLYLINE and closing-chord safeguards (#1299); cached canvas dimensions match the renderer limit before cache-key creation, view construction and worker submission; cached canvas reprojection preserves scale during resize, rotation and DPI changes; interactive Mirror Repeat axis; bounding-box handles take priority over the axis body while the center and end handles retain their move and rotation actions; 3D lighting: one to ten colored lights, smooth colored Inflate, legacy white-light appearance preserved; surface batching and restored seam minimum; scores and estimates unchanged; Blend spine Anchor Point conversions, selection/stacking priority and Shift regression coverage (#2544); scores and hours unchanged; Image Trace: Auto Color keeps rare but distinct colours; Image Trace: large images trace with a warning; anchor limit raised to 8,000,000; Image Trace: Raster::new returns an error for a buffer of the wrong length; M12 graph pruning and junction merging measured; M12 exact crop EDT and Guo–Hall thinning measured; M12 centre-lines baseline measured; scores and hours unchanged; Image Trace: a higher Paths never gives fewer segments on collapsed loops; Image Trace: the notch rule reads only its own piece; Image Trace: an edge's sub-pixel shift is the same from either side; Image Trace: a simpler contour walk with no precomputed direction table; transparency grid visibility saved in native documents, #1968; EPS editing data: legacy mesh corners, vector opacity masks and compound member paint retained; raster page comparison filters minification without relaxing limits; scores and hours unchanged; correction: M12's Image Trace quick presets leave the panel as it was, the Image Trace button opens it; batch exporting, #1935; G2: Effect › Sketch › Halftone Pattern; Photoshop filters 45/57, 12 remaining (8–14 h); Warp Options controls verified by focused checks and original-image review; estimates unchanged; existing-guide Escape cancellation validated 2026-10-14; scores and hours unchanged; open-path anchor Delete keeps surviving runs separate; estimates unchanged; PDF.R1: shared PDF reader with windowed content scanning and explicit incomplete-content errors; scores and estimates unchanged; PDF.W1: guarded shared PDF writer; output behavior, scores and estimates unchanged; Artboard tab-switch follow-up historically validated ona0671777; scores and hours unchanged; Artboard clean active-tab close/Delete follow-up validated 2026-10-15; later 2026-10-14 merges: per-corner radius, #1682; Width Point Edit from the Width tool, #1814, #1630; guides, #1782, #1836; anchor X/Y/W/H, #1824; toolbar and All Tools, #1751; macOS save sheets, #1855; rendering caches, #1667–#1792; untrusted files, #1852, #1862–#1873; failed-save dialog, #1685; Dim Images, #1683; estimates unchanged; M12 row: Image Trace's enhanced presets; verified PngSuite downloads, #1729; synthetic control-input budgets, #1709; 2026-10-14 merges: anchor Align and Distribute, #1636; Direct Selection and Delete fixes, #1674, #1666, #1743; Expand on repeats, #1756; file and input hardening, #1776–#1783, #1786, #1807; MCP limits and envelope, #1727, #1728; Image Trace #1647, #1657; estimates unchanged; later 2026-10-13 merges: SVG import, #1565, #1596, #1568, #1601; Warp Arc, #1578; Pathfinder strokes, #1570; saves, #1620 in part; OpenType features, #1607; intersect Smart Guides, #1602 in part; estimates unchanged; TIFF is available in Export for Screens and Asset Export with shared format settings; scores and hours unchanged; G1/M11: Artboard deletion and history selection normalization; history regressions and full workspace CI pass; scores and hours unchanged; Character styles retain explicit Auto leading, propagate resets and preserve local leading overrides; scores and hours unchanged; Width Point Edit: Shift-double-click enables adjoining adjustment; plain double-click keeps it off; scores and hours unchanged; per-corner radius fields with a link toggle, split from #1594; control transport deadlines, #1726; M12 row: Image Trace's presets and options as they are now; Polish interface, #1498; compact native saves, #1492; PDF and EPS paste as vector art, #1499; import fixes, #1528, #1530, #1531, #1544, #1551, #1553; guide objects, #1534; Join after Average, #1533; Keyboard Shortcuts, #1539; estimates unchanged; Direct Selection anchor precedence, #1508; dialog slider rails, #1483; template layers in Outline view, #1486; type that does not fit its frame is reported, #1471; 3D on outlined type, #1481; print-size images, #1517; French catalog, #1511; estimates unchanged; Split Into Grid options, #1462; Transform Objects and Reflect's angle, #1448 and #1460; Pathfinder on a group, #1450; unknown parameter keys refused, #1442; grayscale TIFFs with alpha, #1466 in part; estimates unchanged; M9: Extrude & Bevel, Inflate and Rotate;.aicompound path paint, #1410, overprint on import, #1388, text-only PDF parts, #1387; Transform dialogs preview, #1412, and transforms of direct-selected anchors, #1408; strokes wider than their shape, #1396; estimates unchanged;.aiediting-data follow-ups, #1390, #1391, #1392; dialog keyboard focus, #1367 and #1395; symbol instance redraw cache, #1386; font rescan, #1376; estimates unchanged; gradient shapes import as paths, #1304; white constant alpha masks, #1286 in part; Live Corners widget click, #1239; custom ruler origin, #1212; M11: Artboard object clicks create a fitted artboard (#1227); estimate unchanged; Pathfinder single-result source names and SVG IDs retained, #1293; DXF control-point SPLINE closure read, #1299 follow-up; desktop print transport adopts craft-print, Windows 7 fallback retained, scores unchanged; Czech render-site localization follow-up; scores and estimates unchanged; Document Setup: Edit Artboards closes the modal after applying valid settings; pointer-click regressions; scores and hours unchanged; Artboards: Escape exits editing; an active drag cancels first; shortcut-routing regression; scores and hours unchanged; M6: Simplify preview/counts and valid topology selection (#1272); estimates unchanged; G2: Film Grain added; Photoshop effects 45/57; 28 filters remain; M14: RPM runtime metadata (#1275); estimates unchanged; M5: squared-distance texture redraws (#1257); clean-machine/platform drag measurements still pending; estimates unchanged; M2: Curvature point display improved (#1236, in part); estimates unchanged; M7: full-name font matching (#1258); Windows font-service QA pending; estimates unchanged; M1: no-op anchor Align keeps Undo, Redo and saved state (#1180 follow-up); estimates unchanged; M14: dedicated Eyedropper cursor (#1269); estimates unchanged; M3: Eyedropper reads visible locked and outside-isolation sources (#1251); estimates unchanged; M2: Direct Selection segment picks and Delete (#1278); estimates unchanged; M3: adding paint to an unpainted zero-width stroke restores 1 pt (#1253); estimates unchanged; M12: graph designs, graph data, Graph Type and label options; M14: native macOS save Format menu, #866; M6: compound appearance and member fill-rule fixes, #1197; estimates unchanged; M9: PDF raster-effect cap warnings; G11: #893 fixed, #937 open; M7: accurate character controls after scaling, #1034; estimates unchanged; MCPadd_textexposes the existingverticaloption for point, area and path type; horizontal remains the default; scores and hours unchanged; Vertical fullwidth question and exclamation marks keep their nominal glyph upright when the font has no vertical alternate; scores and hours unchanged.; M2: Curvature curve geometry, #1236 in part; Width-point finite-arithmetic follow-up validated; scores and hours unchanged; Image Trace adjustment discovery; legacy.aiof version 7 saved, #868; estimates unchanged; Revolve: automatic smooth shading and default-on Cap with continuous rims; PDF.R1: shared PDF reader with windowed content scanning and explicit incomplete-content errors; scores and estimates unchanged; PDF.W1: guarded shared PDF writer; output behavior, scores and estimates unchanged; later 2026-10-14 merges: per-corner radius, #1682; Width Point Edit from the Width tool, #1814, #1630; guides, #1782, #1836; anchor X/Y/W/H, #1824; toolbar and All Tools, #1751; macOS save sheets, #1855; rendering caches, #1667–#1792; untrusted files, #1852, #1862–#1873; failed-save dialog, #1685; Dim Images, #1683; estimates unchanged; M12 row: Image Trace's enhanced presets; verified PngSuite downloads, #1729; synthetic control-input budgets, #1709; 2026-10-14 merges: anchor Align and Distribute, #1636; Direct Selection and Delete fixes, #1674, #1666, #1743; Expand on repeats, #1756; file and input hardening, #1776–#1783, #1786, #1807; MCP limits and envelope, #1727, #1728; Image Trace #1647, #1657; estimates unchanged; later 2026-10-13 merges: SVG import, #1565, #1596, #1568, #1601; Warp Arc, #1578; Pathfinder strokes, #1570; saves, #1620 in part; OpenType features, #1607; intersect Smart Guides, #1602 in part; estimates unchanged; TIFF is available in Export for Screens and Asset Export with shared format settings; scores and hours unchanged; G1/M11: Artboard deletion and history selection normalization; history regressions and full workspace CI pass; scores and hours unchanged; Character styles retain explicit Auto leading, propagate resets and preserve local leading overrides; scores and hours unchanged; Width Point Edit: Shift-double-click enables adjoining adjustment; plain double-click keeps it off; scores and hours unchanged; per-corner radius fields with a link toggle, split from #1594; control transport deadlines, #1726; M12 row: Image Trace's presets and options as they are now; Polish interface, #1498; compact native saves, #1492; PDF and EPS paste as vector art, #1499; import fixes, #1528, #1530, #1531, #1544, #1551, #1553; guide objects, #1534; Join after Average, #1533; Keyboard Shortcuts, #1539; estimates unchanged; Direct Selection anchor precedence, #1508; dialog slider rails, #1483; template layers in Outline view, #1486; type that does not fit its frame is reported, #1471; 3D on outlined type, #1481; print-size images, #1517; French catalog, #1511; estimates unchanged; Split Into Grid options, #1462; Transform Objects and Reflect's angle, #1448 and #1460; Pathfinder on a group, #1450; unknown parameter keys refused, #1442; grayscale TIFFs with alpha, #1466 in part; estimates unchanged; M9: Extrude & Bevel, Inflate and Rotate;.aicompound path paint, #1410, overprint on import, #1388, text-only PDF parts, #1387; Transform dialogs preview, #1412, and transforms of direct-selected anchors, #1408; strokes wider than their shape, #1396; estimates unchanged;.aiediting-data follow-ups, #1390, #1391, #1392; dialog keyboard focus, #1367 and #1395; symbol instance redraw cache, #1386; font rescan, #1376; estimates unchanged; gradient shapes import as paths, #1304; white constant alpha masks, #1286 in part; Live Corners widget click, #1239; custom ruler origin, #1212; M11: Artboard object clicks create a fitted artboard (#1227); estimate unchanged; Pathfinder single-result source names and SVG IDs retained, #1293; DXF control-point SPLINE closure read, #1299 follow-up; desktop print transport adopts craft-print, Windows 7 fallback retained, scores unchanged; Czech render-site localization follow-up; scores and estimates unchanged; Document Setup: Edit Artboards closes the modal after applying valid settings; pointer-click regressions; scores and hours unchanged; Artboards: Escape exits editing; an active drag cancels first; shortcut-routing regression; scores and hours unchanged; M6: Simplify preview/counts and valid topology selection (#1272); estimates unchanged; G2: Film Grain added; Photoshop effects 45/57; 28 filters remain; M14: RPM runtime metadata (#1275); estimates unchanged; M5: squared-distance texture redraws (#1257); clean-machine/platform drag measurements still pending; estimates unchanged; M2: Curvature point display improved (#1236, in part); estimates unchanged; M7: full-name font matching (#1258); Windows font-service QA pending; estimates unchanged; M1: no-op anchor Align keeps Undo, Redo and saved state (#1180 follow-up); estimates unchanged; M14: dedicated Eyedropper cursor (#1269); estimates unchanged; M3: Eyedropper reads visible locked and outside-isolation sources (#1251); estimates unchanged; M2: Direct Selection segment picks and Delete (#1278); estimates unchanged; M3: adding paint to an unpainted zero-width stroke restores 1 pt (#1253); estimates unchanged; M12: graph designs, graph data, Graph Type and label options; M14: native macOS save Format menu, #866; M6: compound appearance and member fill-rule fixes, #1197; estimates unchanged; M9: PDF raster-effect cap warnings; G11: #893 fixed, #937 open; M7: accurate character controls after scaling, #1034; estimates unchanged) · Target: Adobe Illustrator 2026 (30.x)
Feature submission evidence
Feature evidence last updated: 2026-10-22.
The shared assessment status line and revision history are current upstream; this dated section records the submission's feature evidence and revisions without rescoring upstream or claiming a new combined build or runtime measurement.
Current-main conflict reconciliation retains upstream and feature behavior; scores and estimates unchanged
Superseded 2026-10-20 behavior, retained as history: Artboard Options shares existing presets and orientation controls and can fit artwork without moving it; artwork fitting uses the original target artboard and revision-scoped bounds caches
Artboard Options puts Fit to Artwork Bounds and Fit to Selected Art in the Preset menu. Artwork bounds cover all drawn document art, including other artboards and off-board art; selection bounds may span artboards. Fit changes only the active artboard and keeps artwork stationary, including position-only fitting with Move Artwork enabled. Existing Background Color and presets remain available; scores and estimates unchanged.
Artboard Options forwards the active Artboard tool's Scale Artwork with Artboard option for ordinary resizing. Fit to Artwork Bounds and Fit to Selected Art explicitly leave artwork stationary. Dialog regression coverage checks preset/orientation/typed-size intent with scaling on and off, draft cancellation, one-step Undo/Redo, and fitting while Move Artwork and Scale Artwork are enabled. This is a narrow follow-up to #3277; no parity score or estimate is reassessed.
Feature revisions
| Date | Change | Summary |
|---|---|---|
| 2026-10-22 | minor | Reconcile upstream documentation after review F-3; preserve every dated revision and the original scaleArt runtime evidence without repeating completed jobs. |
| 2026-10-22 | minor | Reconcile upstream documentation after review F-2; preserve every dated revision and the original scaleArt runtime evidence without repeating completed jobs. |
| 2026-10-22 | minor | Reconcile subsequent upstream progress updates without changing the runtime or repeating completed evidence; retain every dated upstream and feature revision. |
| 2026-10-22 | minor | Resynchronize newer upstream progress documentation using the same owned source/build cache; preserve every feature revision and the original scaleArt runtime evidence. |
| 2026-10-22 | minor | Retain the latest upstream shared assessment and complete revision history after newer documentation landed; scaleArt runtime and its original evidence remain unchanged. |
| 2026-10-22 | minor | Correct the scaleArt follow-up evidence description to match current upstream shared status and revision history; runtime, evidence, scores and estimates unchanged. |
| 2026-10-22 | minor | Artboard Options honors Scale Artwork with Artboard for preset, orientation and typed-size changes; both Fits keep artwork stationary; scores and estimates unchanged. |
| 2026-10-21 | minor | Correct current global-all-art and document/revision cache descriptions; mark target-scoped fitting as superseded 2026-10-20 history. Runtime, tests, scores and estimates unchanged. |
| 2026-10-21 | minor | Artboard Options puts Fit to Artwork Bounds and Fit to Selected Art in the Preset menu. Artwork bounds cover all drawn document art, including other artboards and off-board art; selection bounds may span artboards. Fit changes only the active artboard and keeps artwork stationary, including position-only fitting with Move Artwork enabled. Existing Background Color and presets remain available; scores and estimates unchanged. |
| 2026-10-21 | minor | Reconcile feature status and revision evidence in a dated section; retain shared baseline metadata for independent upstream updates. Scores and estimates are not reassessed. |
| 2026-10-21 | minor | Reconcile this feature with current main, preserving both sets of behavior and progress evidence; scores and estimates unchanged. |
| 2026-10-20 | minor | Review follow-up: artwork fitting uses the original target artboard and revision-scoped bounds caches; focused regression evidence and behavior documentation updated; scores and hours unchanged. |
| 2026-10-20 | minor | Artboard Options shares existing presets and orientation controls and can fit artwork without moving it; scores and hours unchanged. |
Forward-looking plan. Where Stylo stands is in ROADMAP.md and target-app-parity.md; the ranked work
list is gaps.md. Hours are Opus 5.5 agent
wall-clock hours, one agent. There is no
cargo xtask scorecard or cargo xtask parity in
this repo yet (the clean-room rule rules out a menu dump of Illustrator
as an oracle; a checklist built from Illustrator's public menu
documentation would be allowed).
Alpha gate
The core-workflow gate from craftrules' progress-docs standard: what
a typical professional does with Illustrator every day, checked end to
end on the main platform (macOS) with save and reopen in the native
.stylo format (lossless, property-tested round trips in
crates/format/tests/prop_format.rs). Checked 2026-10-10
from the code, tests and open issues; no workflow fails, so Stylo passes
and stays alpha.
| Core workflow | Works end to end? | Evidence | Hours to pass |
|---|---|---|---|
| 2026-10-14 | minor | M12: tiny fitted contours retain islands and holes after Noise; source-generated regressions; defaults and estimates unchanged | |
| 2026-10-12 | minor | Desktop PDF spooler shared through craft-print; exact physical sizes, composed copies and Windows 7 fallback retained. Scores and remaining gaps unchanged. | |
| Draw and edit paths precisely: Pen, Curvature, Direct Selection on anchors and handles, smart guides and snapping, Pathfinder | yes | crates/tools/src/pen.rs, direct.rs,
guides.rs and their tests; 10 exact Pathfinder booleans; ui-parity.md. Shape Builder regions on art of
thousands of segments fixed (#937's reproduced case; unconfirmed on the
reporter's file), Pathfinder covers the same results |
0 |
| Paint and style: fills and strokes, global and spot swatches, gradients, Appearance, transparency, graphic styles | yes | M3 done (92 tasks); area scores 92–97% in target-app-parity.md | 0 |
| Set type: point and area type, Character and Paragraph styles, threading, outlines | yes | type core 80%; styles, threading, Create Outlines and font matching tested (type-parity.md); justification options missing (not blocking) | 0 |
| Organise layers and artboards and export assets (Export for Screens, SVG, PNG, PDF per artboard) | yes | Layers panel rework, Artboards panel and tool, Export for Screens and Asset Export done; Art Optimized supersample closes ghost borders (#983 / #1037) | 0 |
| Print production: CMYK and spot colour, bleed and marks, PDF/X out, separations preview | yes | PDF/X-1a/3/4, presets, marks and bleed, ICC output intent, Separations Preview, Print with PostScript output | 0 |
Exchange files with Illustrator users: open their
.ai/EPS/PDF, hand back a file they can open |
partial (doesn't block alpha) | .ai, EPS and PDF open as editable art, but real files
can get the wrong layer structure (#951) and lose guides (#779); Save As
.ai is PDF-compatible, which Illustrator opens without its
own editing data (#868), or legacy version 7, which keeps layers, groups
and type as text, one artboard per file, and waits for users' testing.
EPS legacy mesh corners, vector opacity masks and raster print-page
comparison now preserve editable art under synthetic regressions. This
is the beta main-format gap (gaps.md G9) |
10–20 (for beta) |
Current focus
- Interaction-fidelity pass (G1) by tool, from ui-parity.md: Pen and Curvature, Direct Selection, smart guides and snapping first. 60–90 h, parallel by tool.
.aifiles from real users (G9): layer structure (#951), guides (#779). 10–20 h.- Launch and stability (G10): the Windows and Linux start-up reports. 20–35 h.
- Core-tool bugs (G11): SVG units reverting to points (#864) and a Transform effect in a fill's or stroke's own effects (#885). Shape Builder regions (#937), Asset Export ghost borders (#983 / #1037) and the stalling bezier drag preview (#834) are fixed. 8–15 h.
- Raster effects (G2) alongside: the Effect Gallery's filter thumbnails and in-dialog preview area (the gallery and every Photoshop-style filter are in), 1–2 h.
Next
- Then: advanced type (G4) and the Illustrator 2026
additions (G13), then 3D (G3), each with a plan in
plan/before coding. - Alongside: close the 28 stubbed menu items; run
stylo-cli perfon an idle machine and fix any budget missed (G15). - Beta: G1, G9, G10, G11, G12, the corpus part of G8, type core, macOS pen pressure and the perf budgets (~170–270 h one agent, ~50–80 h with 4–6 agents).
- 1.0: feature parity plus the fidelity pass, hardening and packaging for all three desktop OSes and the web.
Milestones
| # | Milestone | Status | Est. remaining, one agent (h) |
|---|---|---|---|
| M0 | Skeleton + vertical slice | ✅ done | — |
| M1 | Selection, transform, layers, MCP (common command tools, strict keys, session resources and version-aware result hints) | ✅ mostly done (document-tab artwork drag with lossless resource transfer and one target Undo; malformed MCP app replies discard the connection without replay, #1761; bounded control socket waits and connection-slot recovery, #1726; bounded synthetic control input, #1709; no-op anchor Align keeps Undo, Redo and saved state (#1180 follow-up); transform reference point snaps to anchors/centres; rotated objects keep a rotated bounding box and their angle; Free Transform, Scale and Reflect along a rotated box pending) | 4–6 |
| M2 | Drawing tools + smart guides | ✅ mostly done (Polygon/Star exact-size count persistence, with repeated-drag, tool-switch and Cancel regression coverage; Curvature point markers without direction handles (#1236, in part); Direct Selection segment click/Delete preserves neighboring edges, #1278; Flare, Reshape, Live Corners widget dragging and per-corner radii and kinds landed, on any path's corners; Shaper rough-shape recognition and orientation steps, the remaining Pen modifier nuances; Shaper Groups with editable sources and separate fill/stroke edits landed; custom ruler origin with drag preview, active-artboard reset, relative X/Y fields and native round-trip (#1212); construction widget/refinements pending); Tangent and straight-segment perpendicular snapping use saved Smart Guides Geometric Guides preferences and Control bar quick access (#2537); no View submenu | 12–18 |
| M3 | Paint & appearance (swatches, color, gradient, stroke, appearance, transparency, styles) | ✅ done (M3.7–M3.98): swatches, groups, libraries, tints, Lab spots and Registration; Eyedropper styles highlighted text only (atomic transparency rejection); Eyedropper reads visible locked and outside-isolation sources (#1251); Color Picker, Color panel, Color Guide, Color Themes, Edit Colors and Recolor Artwork (screen-bounded Edit chip list, #3416); gradients that follow every transform, the annotator, linked stops, freeform gradients, focal points, gradients on strokes and Expand; visible strokes when paint is added to inherited None/zero-width art (#1253); stroke geometry, arrowheads, dashes fitted to corners, stroke on type, width profiles and the Width tool (Shift-double-click enables adjoining adjustment in Width Point Edit; finite-arithmetic follow-up regressions and full CI passed (Validation evidence)), Scale Strokes and preview bounds; Appearance targeting, container appearance, target circles, Expand Appearance; knockout, isolation, blend accuracy, CMYK blending, overprint, Attributes, masks and clipping, Flatten Transparency; graphic styles, links and libraries; CSS library export preserves fractional linear and radial gradient stop positions. Left: freeform and mixed spot/process gradients export as stops or process colours to SVG/PDF; confirm the Scale Strokes & Effects default; Recolor model selection is available through the engine and MCP only (#2520); the dialog retains its existing controls | 4–8 |
| M2 | Drawing tools + smart guides | ✅ mostly done (Curvature point markers without direction handles (#1236, in part); Direct Selection segment click/Delete preserves neighboring edges, #1278; Flare, Reshape, Live Corners widget dragging and per-corner radii and kinds landed, on any path's corners; Shaper rough-shape recognition and orientation steps, the remaining Pen modifier nuances; Shaper Groups with editable sources and separate fill/stroke edits landed; custom ruler origin with drag preview, active-artboard reset, relative X/Y fields and native round-trip (#1212); construction widget/refinements pending) | 12–18 |
| M4 | Files (native, SVG, PDF, raster, Export for Screens, clipboard interop) | ✅ done (M4.14–M4.98 on 2026-10-05): Save As/Save a
Copy/Revert/templates, Data Recovery and background save, SVG import and
export fidelity (units, text, symbols, filters, SVGZ, Preserve Editing,
SVG Options), shared guarded PDF writer and windowed reader (pdf-backend.md), PDF import (colours, layers,
masks, editable text, security) and export (presets, marks, bleed, ICC
and output intent, raster effects, subset fonts, PDF/X-1a, X-3 and X-4,
PDF layers, overprint, page thumbnails, fast web view, PDF 1.3), Place
and Links, Package, EPS and DXF in and out (EPS legacy mesh corners,
vector opacity masks and raster page comparison verified; closed SPLINE
flags round-trip and circular paths export as native CIRCLE/ARC, #1299),
EMF/WMF, TIFF/BMP/Targa/PSD/GIF/PNG-8 export, Print and print presets,
slices, Save for Web, TIFF in Export for Screens and Asset Export,
clipboard flavours, File Info; AF.1–AF.4 add Affinity import (native
layers, artboards, vectors, text and images from Affinity 1–3 files; the
embedded preview only as a warned fallback; AF.4 expands current
.af fixtures and every-board round-trip validation). Left:
DWG (use DXF), PSD placement as layers, overprint read back from PDF,
Affinity export, polish |
3–6 (existing scope; Affinity export unestimated) |
| M3 | Paint & appearance (swatches, color, gradient, stroke, appearance, transparency, styles) | ✅ done (M3.7–M3.98): swatches, groups, libraries, tints, Lab spots and Registration; Eyedropper styles highlighted text only (atomic transparency rejection); Eyedropper reads visible locked and outside-isolation sources (#1251); Color Picker, Color panel, Color Guide, Color Themes, Edit Colors and Recolor Artwork (screen-bounded Edit chip list, #3416); gradients that follow every transform, the annotator, linked stops, freeform gradients, focal points, gradients on strokes and Expand; visible strokes when paint is added to inherited None/zero-width art (#1253); stroke geometry, arrowheads, dashes fitted to corners, stroke on type, width profiles and the Width tool (Shift-double-click enables adjoining adjustment in Width Point Edit), Scale Strokes and preview bounds; Appearance targeting, container appearance, target circles, Expand Appearance; knockout, isolation, blend accuracy, CMYK blending, overprint, Attributes, masks and clipping, Flatten Transparency; graphic styles, links and libraries; CSS library export preserves fractional linear and radial gradient stop positions. Left: freeform and mixed spot/process gradients export as stops or process colours to SVG/PDF; confirm the Scale Strokes & Effects default | 4–8 |
| M5 | Performance | 🟡 background render + caches + MT done;
stylo-cli bench and stylo-cli perf (budget
suite); file format v2 opens 3× faster (50k paths: 722 → 244 ms); raster
effects (glows, shadows, blur, feather) no longer force the whole frame
single-threaded (filtered offscreen per effect, verified equal to the
single-threaded reference); Craquelure/Mosaic Tiles/Stained Glass
distance searches optimized with pixel-invariance checks and the
texture_drag_perf probe (#1257); effect-heavy demos need a
clean-machine benchmark; dirty-region rendering, GPU backend spike
pending |
15–25 |
| M6 | Path operations (Pathfinder, Shape Builder, offset…) | ✅ mostly done (single-result Pathfinder names and SVG IDs retained (#1293); Divide open-cutting-path geometry, appearance and history verified (#1307; existing segment cap remains); Simplify preview/counts and rewritten-path component selection verified (#1272; the slider opens at the Auto-Simplify level; a Direct Selection part of a path simplifies on its own); Compound appearance and member fill-rule edits verified (#1197); Boolean precision on almost-horizontal edges fixed and the property tests made deterministic; Shape Builder gap detection, large-offset bug open); Shape Builder Gap Detection shares Live Paint’s spatial gap finder and temporary merge bridges (#2526); Custom is capped at 72 pt in the existing options dialog | 3–6 |
| M7 | Type (point/area/path, editing, styles, OpenType, threading, glyphs) | 🟡 Hanging punctuation keeps its published amounts under Glyph
Scaling, and Standard burasagari counts a hung line start as room;
Fullwidth ! / ? keep an upright fallback in
vertical type; Document-point character controls after object/group
scaling (#1034; optional font-size preservation remains separate),
Character/Paragraph Styles (explicit Auto-leading resets and local
leading overrides), per-paragraph paragraph attributes, mixed paragraph
alignment indication (headless regressions, full integration CI and
visual review pass), Area Type Options (with Width/Height, Auto Size and
Shrink Text to Fit; overflow reported to agents and vertical Align),
type areas resized by their handles and reshaped with Direct Selection,
threaded text, Fit Headline, Glyphs, OpenType panel, Find Font,
installed system fonts in every font menu (fonts registered with Windows
outside its font folders, the XDG and Flatpak host font folders on
Linux, and fonts installed while the app runs, listed when it comes back
to the front; searchable; the Character and Properties menus show each
family's sample of the selected text, preview it live under the pointer
or ↑/↓, show recently applied families first (#3515), filter by script
and kind, list a family's styles, and star favourites; the Glyphs panel
and Find Font's Replace With use the same menu without the live preview)
and found by name on open/import (full-name aliases and Missing Fonts
searches verified, #1258; Windows font-service QA pending), variable
fonts' named instances as styles, CJK names in the UI, input methods
(marked text in place, candidate window at the caret; Japanese IME),
Text Wrap (offset, invert, both sides of an object; follows edits), Type
on a Path effects and Options with draggable start/centre/end brackets
(slide, flip), tab stops + Tabs panel (Above Text floats it over the
selected text, its ruler at the canvas zoom so stops line up with the
columns, #729), inline symbols in text (beyond parity), Hebrew/Arabic
bidirectional text, Paragraph Direction, Every-line/Single-line Composer
per object (ragged text too) done; tab leaders, spell check, vertical
type pending |
45–60 |
| M7 | Type (point/area/path, editing, styles, OpenType, threading, glyphs) | 🟡 Fullwidth ! / ? keep an upright
fallback in vertical type; Hyphenation… and Justification… per paragraph
(#2310, #2755), Auto Leading also driving the Character panel's Leading,
the Alt+↑/↓ leading nudge and Fill with Placeholder Text; Document-point
character controls after object/group scaling (#1034; optional font-size
preservation remains separate), Character/Paragraph Styles (explicit
Auto-leading resets and local leading overrides), per-paragraph
paragraph attributes, mixed paragraph alignment indication (headless
regressions, full integration CI and visual review pass), Area Type
Options (with Width/Height, Auto Size and Shrink Text to Fit; overflow
reported to agents and vertical Align), type areas resized by their
handles and reshaped with Direct Selection, threaded text, Fit Headline,
Glyphs, OpenType panel, Find Font, installed system fonts in every font
menu (fonts registered with Windows outside its font folders, the XDG
and Flatpak host font folders on Linux, and fonts installed while the
app runs, listed when it comes back to the front; searchable; the
Character and Properties menus show each family's sample of the selected
text, preview it live under the pointer or ↑/↓, filter by script and
kind, list a family's styles, and star favourites; the Glyphs panel and
Find Font's Replace With use the same menu without the live preview) and
found by name on open/import (full-name aliases and Missing Fonts
searches verified, #1258; Windows font-service QA pending), variable
fonts' named instances as styles, CJK names in the UI, input methods
(marked text in place, candidate window at the caret; Japanese IME),
Text Wrap (offset, invert, both sides of an object; follows edits), Type
on a Path effects and Options with draggable start/centre/end brackets
(slide, flip), tab stops + Tabs panel (Above Text floats it over the
selected text, its ruler at the canvas zoom so stops line up with the
columns, #729), inline symbols in text (beyond parity), Hebrew/Arabic
bidirectional text, Paragraph Direction, Every-line/Single-line Composer
per object (ragged text too) done; tab leaders, spell check, vertical
type pending |
45–60 |
| M7 | Type (point/area/path, editing, styles, OpenType, threading, glyphs) | 🟡 Fullwidth ! / ? keep an upright
fallback in vertical type; Document-point character controls after
object/group scaling (#1034; optional font-size preservation remains
separate), Character/Paragraph Styles (explicit Auto-leading resets and
local leading overrides), per-paragraph paragraph attributes, mixed
paragraph alignment indication (headless regressions, full integration
CI and visual review pass), Area Type Options (with Width/Height, Auto
Size and Shrink Text to Fit; overflow reported to agents and vertical
Align), type areas resized by their handles and reshaped with Direct
Selection, threaded text, Fit Headline, Glyphs, OpenType panel, Find
Font, installed system fonts in every font menu (fonts registered with
Windows outside its font folders, the XDG and Flatpak host font folders
on Linux, and fonts installed while the app runs, listed when it comes
back to the front; searchable; the Character and Properties menus show
each family's sample of the selected text, preview it live under the
pointer or ↑/↓, show recently applied families first (#3515), filter by
script and kind, list a family's styles, and star favourites; the Glyphs
panel and Find Font's Replace With use the same menu without the live
preview) and found by name on open/import (full-name aliases and Missing
Fonts searches verified, #1258; Windows font-service QA pending),
variable fonts' named instances as styles, CJK names in the UI, input
methods (marked text in place, candidate window at the caret; Japanese
IME), Text Wrap (offset, invert, both sides of an object; follows
edits), Type on a Path effects and Options with draggable
start/centre/end brackets (slide, flip), tab stops + Tabs panel (Above
Text floats it over the selected text, its ruler at the canvas zoom so
stops line up with the columns, #729), inline symbols in text (beyond
parity), Hebrew/Arabic bidirectional text, Paragraph Direction,
Every-line/Single-line Composer per object (ragged text too) done; tab
leaders, spell check, vertical type pending |
45–60 |
| M8 | Transform & distort (Puppet Warp, Liquify tools, Envelopes, Blends, Perspective Grid) | ✅ done (M8.1–M8.20 on 2026-10-06, fidelity pass): Liquify Tool Options with one shared brush, pen pressure, hold-to-apply, a safe scope and incremental strokes; tool options that last; Puppet Warp rotation, multi-select, Control bar and a rest-shape session that follows Undo; Width tool on compound paths; Envelope dialogs with preview, Reset with Warp/Mesh, full Envelope Options, type/images/symbols/appearance/gradients/patterns distorted on canvas and in every export, warps that keep their frame, Edit Contents, mesh handles and Control bar; Blend Options, anchor-targeted Blend tool, editable spine, keys picked on the canvas, faithful interpolation and knockout; Anchor Point spine conversion/handle editing and selection priority (#2544), with #2425 Shift reshape preserved; Perspective Grid with Define Grid, presets, lock/snap/rulers, widgets, the 1–4 plane switch, movable planes, Perspective Selection scale/copy/perpendicular/Transform Again, and type and symbols truly projected with Edit Text. Left: Anti-Alias and Preserve Shape output, warp-envelope point editing, brush interpolation in blends, Free Transform/Scale/Reflect along a rotated box | 2–4 |
| M9 | Live effects (+ 3D & Materials) | 🟡 2D effects done incl. Effect → Pathfinder, Color Adjustments and Document Raster Effects Settings; PDF export warns when the pixel cap lowers raster-effect resolution; Artistic › Colored Pencil, Cutout, Dry Brush, Film Grain, Fresco, Neon Glow, Paint Daubs, Palette Knife, Poster Edges, Rough Pastels, Smudge Stick, Sponge, Underpainting and Watercolor and Sketch › Halftone Pattern, Bas Relief, Charcoal, Conté Crayon, Photocopy, Stamp, Torn Edges and Water Paper done (57/57 Photoshop filters); Revolve with automatic smooth vector shading, default-on circular caps and continuous rims, Extrude & Bevel, Inflate and Rotate with one to ten colored directional lights and four original lighting presets; SVG Filters, remaining raster effects and 3D materials and shadows pending | 81–130 |
| M10 | Brushes, symbols, patterns, Repeat | 🟡 pattern swatches (5 tile types, Pattern Options, editing mode,
SVG <pattern>/PDF export) and live Repeat
(radial/grid/mirror) done; interactive selected mirror axis implemented
(focused and native checks passed; full CI blocked by an unrelated text
test); symbol libraries done (Window › Symbol Libraries, a generated
Basic Shapes library, User Defined, Other Library…, Save Symbols);
brushes/symbols in progress |
23–37 |
| M11 | Artboards & views (selected-set deletion shared by Artboards menu, trash and Properties, retaining artboard 1 when all are selected; Artboard deletion keys keep the first of an all-selected set and protect artwork; history prunes invalid indices while preserving valid multiselection (history tests and full workspace CI pass); click-to-fit objects with the Artboard tool (#1227), artboard escape routing and document setup modal handoff done; artboard panel/tool with Move Artwork for X/Y fields and Artboard Options, Trim View, middle-button pan, print tiling and the status bar's artboard navigator with synchronized Artboard tool selection done; multiple windows, presentation polish) (cached canvas reprojection preserves scale during resize, rotation and DPI changes; regression-tested and contributor-confirmed 2026-10-19; estimates unchanged) (cached canvas dimensions match the renderer limit before cache-key creation, view construction and worker submission; regression-tested; estimates unchanged) | 🟡; Artboard Options shares existing presets and orientation controls and can fit artwork without moving it; artwork fitting includes all drawn document art across artboards and off-board; artwork bounds are cached by active document and revision, and selection uses the shared bounds cache across artboards | 15–25 |
| M10 | Brushes, symbols, patterns, Repeat | 🟡 pattern swatches (5 tile types, Pattern Options, editing mode,
SVG <pattern>/PDF export) and live Repeat
(radial/grid/mirror) done; interactive selected mirror axis implemented
(focused and native checks passed; full CI blocked by an unrelated text
test); brushes/symbols in progress |
23–37 |
| M11 | Artboards & views (selected-set deletion shared by Artboards menu, trash and Properties, retaining artboard 1 when all are selected; Artboard deletion keys keep the first of an all-selected set and protect artwork; history prunes invalid indices while preserving valid multiselection (history tests and full workspace CI pass); click-to-fit objects with the Artboard tool (#1227), artboard escape routing and document setup modal handoff done; artboard panel/tool with Move Artwork for X/Y fields and Artboard Options, Trim View, middle-button pan, print tiling and the status bar's artboard navigator with synchronized Artboard tool selection done; multiple windows, presentation polish) (cached canvas reprojection preserves scale during resize, rotation and DPI changes; regression-tested and contributor-confirmed 2026-10-19; estimates unchanged) (cached canvas dimensions match the renderer limit before cache-key creation, view construction and worker submission; regression-tested; estimates unchanged); status-bar pointer coordinates follow the active ruler origin and General units | 🟡; Artboard Options shares existing presets and orientation controls and can fit artwork without moving it; artwork fitting includes all drawn document art across artboards and off-board; artwork bounds are cached by active document and revision, and selection uses the shared bounds cache across artboards | 15–25 |
| M12 | Advanced color & art (CMYK/ICC, separations, Gradient Mesh, Live Paint, Image Trace, Graphs) | 🟡 Gradient Mesh, Live Paint, Image Trace (junction-returning pieces
retain their positioned boundaries; a simpler contour walk with
identical output; an edge's sub-pixel shift is the same from either
side; notches read only their own piece; collapsed loops keep few
segments; large images trace with a warning; Auto Color keeps rare
distinct colours; quick presets trace at once and the Image Trace button
opens the adjustment controls; Properties reopens them; tiny fitted
contours retain islands and holes; Create Strokes: exact crop EDT,
Guo–Hall thinning and maximal-disc graph simplification; 15 presets, the
14 documented ones each with an enhanced version; Ignore Color, Shapes,
Auto Grouping and Gradients options; measured in
image-trace-quality.md; closed outlines retain their
interior after straightening; the Flat Logo mode places edges to a
fraction of a pixel, restores sharp corners, snaps lines and circles,
and refuses gradients; live trace result bounds and selection highlights
exclude the retained bitmap except in source-image views), Recolor
Artwork, colour management (ICC, soft proofing, separations preview),
Graphs (all 9 tools, Graph Data/Type, group-selected series colours
persist through regenerate/save/open) done; Graph Design and Marker
designs, Transpose and Switch x/y, | label line breaks, the
pie options, drop shadows, the legend across the top, overlapping
widths, First Row/Column in Front, filled lines, kept label formatting
and the Graph Data worksheet done; graph Column designs pending |
6–10 |
| M13 | Automation (Actions ✅ record/playback, persisted; variables, scripting, batch) | 🟡 MCP add_text exposes existing vertical point, area
and path type; broader scripting and batch work remains |
18–27 |
| M13 | Automation (Actions ✅ record/playback, persisted; variables, scripting, batch) | 🟡 | 18–27 |
| M14 | 1.0 polish (preferences, shortcut editor, workspaces, accessibility, packaging for all OSes) (status messages and readouts use stable responsive allocations sized for localized labels and ordinary coordinates; sample widths cached by language/unit/DPI; regression-tested and contributor-confirmed 2026-10-19; estimates unchanged) | 🟡 Dock groups collapse to their tabs by a double-click on a tab
(UI.8); Preferences › General › Constrain Angle acts for the arrow keys,
Shift drags and new objects (#394, 2026-10-21); numeric-field pointer
selection and focus regression-tested (#1326, in part; short movements
still select all); RPM runtime capabilities and glibc floor checked
(#1275; real-distro install/start-up pending), Eyedropper cursor with
precise-setting checks (#1269), Preferences, shortcut editor (chords
with Shift and a punctuation key fire as typed; other apps' text
shortcut sets imported), workspaces (each keeps its layout changes until
Reset DisplayDocTitle for
viewers and accessibility checkers (#3646); accessibility and broader
Windows/Linux packaging/QA pending |
18–28 |
| — | Interaction fidelity pass (every tool's modifiers, Properties panel per context, isolation, nuance; width-point creation and adjoining adjustment regression-tested; dialog layout reviewed) | ⬜ (new ruler-guide Alt orientation implemented; existing-guide Escape cancellation regression-tested; broader pass remains) | 60–90 |
| — | Hardening at scale (big-file corpus, fuzzing, cross-platform + browser QA) | 🟡 PngSuite integrity and bounded fetching verified (#1729); real-world corpus/manual QA remain | 50–80 |
| M14 follow-up | Color Picker layout (#2008) | ✅ Compact controls, centered header, stacked actions, aligned fields and screen sampling; narrow windows scroll vertically | Included above |
| Total to full parity (one agent; from target-app-parity.md) | ~360–590 |
Milestone estimates predate the 2026-10-10 re-measure for M1–M14; the area table in target-app-parity.md is authoritative when they disagree.
Progress log before the progress-docs standard
The ROADMAP's "last updated" line as of 2026-10-10, kept as the record of what landed up to then:
After placed documents (File › Place of a .stylo file,
linked), M4.14–M4.98, M8.1–M8.20, M14.4–M14.7, the MCP prompts, resource
templates, completions and logging, the 2026-10-07 issue fixes, the
Layers panel rework and the 2026-10-08 community contributions: Pen and
shape-tool modifiers, path editing, Layers, Artboards, Swatches/Brushes
and dialogs, Japanese composition and PDF text, Hebrew/Arabic type,
interface languages (Spanish among them), the font menu, saved
selections, MCP and EPS, the missing-font export warning (#319), open
paths in the Shape Builder (#374), PDF/.ai import keeping
strokes live and hidden and nested layers (#372), per-corner Live
Corners (#381), SVG type opening at the size it draws at (#396), the
Wayland clipboard with copied-file paste (#398), ruler guides that can
be selected, moved and deleted (#414), two batches of Preferences
options that were stored but unused (#394), skeleton reads with
document.find for large documents over MCP (#416) and
anchors dragged with Direct Selection snapping to points, segments and
smart guides, clipped SVG layers opening as clipping layers (#420),
PDF/.ai layers read on pages of tens of millions of
operators (#419), Document Color Mode putting RGB greys on the black
plate on request and converting pattern tiles (#421) and movable dialogs
with Offset Path's Joins dropdown (#423) and numeric fields scrubbed by
dragging their label (#400), stroke weight presets in the stroke unit
(#426), the Appearance panel's Opacity popup (#430), type on a path
brackets, flip and Type on a Path Options that keep the type in place
(#429), Layers rows dragged with a ghost and dropped on the trash or New
Layer (#435), tool flyouts opening on a right or corner press (#436),
tool flyouts torn off into floating toolbars (#437), the Shape Builder's
erase mode deleting edges too (#439), installed fonts registered outside
the font folders and fonts installed while the app runs listed in the
font menus (#443), alike circular corners on rectangles that aren't
square (#442), tool cursors as OS cursors so the pointer no longer
trails over the canvas (#444), artboards copied and pasted with their
art (#446), guides dragged out of the rulers snapping to the art's side
midpoints and the artboards, artboard guides (#451), the toolbar's
double arrow and Window › Toolbars › Double Column switching between one
and two columns in any window height (#455), the Smart Guides display
options and Snapping Tolerance (#394), Font Size and Leading combo boxes
with preset lists in the Character and Properties panels and the Control
bar (#458), screenshots pasted from the clipboard on macOS, Windows and
the web (#457), the Properties panel's Fill and Stroke matching the
Control bar's, Illustrator's Window menu panel keys (Shift+F7 for
Align…) and Alt-wheel zoom whatever the wheel preference (Discord
feedback), the point/area type widget (Discord feedback), groups in
legacy Illustrator .ai files (Discord feedback), a rotating desktop log
file (#465), image controls in the Control bar and Properties panel:
Image Trace with its presets, Mask, Crop Image, Embed/Unembed, and an
Image Trace object's preset, Expand and Release (Discord feedback), the
Pen working as the Anchor Point tool with Alt held over a selected
path's handles and anchors, and anchor buttons that convert, connect and
cut paths at the selected anchors (Discord feedback), Japanese hanging
punctuation (burasagari, #463), Escape leaving Presentation Mode with no
screen mode saved across restarts, documents dropped on the desktop app
opening as tabs of their own and a note that an .ai file's
art off its artboards isn't in the part read (#472), Add/Delete Anchor
Point tool icons drawn from the Pen tool's (#479), EPS import running
more of PostScript Level 3 (patterns, Type 3 fonts, mesh shadings,
masked images, VM and resource probes), and a preview that stands in
saying why (Discord feedback, #466, #469, #474), chords with modifiers
recorded in Edit › Keyboard Shortcuts (#487), Type Object Selection by
Path Only (#394), Anti-aliased Artwork (#394), Show Pixel Grid (#394),
pen and touch taps pressed and lifted within one frame clicking where
they tapped and the Linux/Wayland pen-tablet workaround (#491),
bounding-box resizes landing on the other objects' anchors and centres
with labels, and the Rotate, Scale, Shear and Reflect tools snapping
their drags (#482), Shift-drag marquees that toggle the objects or
anchors they reach and a Lasso whose Alt subtraction keeps the rest of
the selection (#483), the mouse wheel stepping the focused numeric
field, the dialogs' and preferences' drag values made such fields
(#485), Show The Home Screen When No Documents Are Open (#394), Numbers
Without Units Are Points (#394), Auto-Collapse Iconic Panels (#394), the
Contextual Task Bar moved by its handle and its More Options menu
pinning and resetting its position, a designed macOS DMG window (#493),
panels, panel groups and the Tools panel undocking into floating panels
that move, stack and dock again (#495), the 0.5.0 startup crash on
dual-GPU Linux desktops under Wayland fixed: the desktop's own GPU by
default and a restart on the next GPU when one can't show the window
(#502), path editing while drawing: Cmd/Ctrl with the Pen borrowing
Direct Selection and drawing on afterwards, Pen+Alt reshaping segments,
handles of a whole selected path dragging, and handle drags no longer
re-gathering snap targets every move (#494), the Control bar's and
Properties panel's Convert buttons for a path selected as a whole with
Direct Selection, the Pen and the anchor tools (#504), the Pen closing a
path dragged out of its first anchor every time, without flicker (#501),
the Paste menu checking the system clipboard on a background thread on
Linux so an X11 clipboard owner that never answers no longer freezes the
window (#510), PDF/.ai import keeping a type object's
outline stroke on the type, wrapped lines as area type, barcode digits
in place and layers in the file's stacking order (#508), the Italian
interface (#514), EPS images with several data sources read in turn
(#498), restore undoing dictionary changes in EPS import
(part of #505), the macOS menu bar laid out as a Mac app's (the Stylo
menu with Settings, Language and Appearance, the system's Hide, Services
and Window items; owner's request), Object › Image Trace › Make tracing
with the Default preset instead of asking for a preset's name (#543),
the rulers' unit menu (#528), Live Corners on stars, polygons and pen
paths (#511), the drawing tools snapping to Smart Guides as the
Selection tool does, with Construction Guides (#506), the in-window
menus' Select All, Cut, Copy and Paste acting on the text field they
were opened from (#516), Windows rendering through DX12 before Vulkan
(#545), Image Trace tracing colour layers in parallel and refusing
traces too large for memory, with the canvas outlining huge selections
by their bounds (#525), SVGs of chosen artboards holding only the art
over each artboard (#550), the font menu scrolling only its list, under
a search field and filters that stay put (#555), a click on an object of
a selection making it the key object that Align aligns to and Distribute
Spacing spaces from, drawn with a thicker outline (#541), Shape Builder
merges taken from the planar map itself, so merged regions leave no
inner edge, hairline gap or spur in their outline (#569),
.ai written by the exports and the CLI
(--export, convert) as Save As writes it
(#526), SVG round trips keeping hidden objects and data-*
attributes (#522), the gradient stop popover staying open after the
click that opens it from the Gradient panel (#577), standard ligatures
kept under small tracking and dropped only past about −8% / +22% of a
word space or when the character asks for them (#583), the Color panel
keeping its height as warnings come and go so a drag on its spectrum no
longer flickers near white (#578), fonts that font services such as
Adobe Fonts load on Windows, listed through DirectWrite (#579),
.ai files writing their layers and sublayers as PDF layers,
hidden ones with their art, and PDF layers nested in layers importing as
sublayers (#372), file dialogs on Linux shown off the UI thread so the
compositor no longer finds the window not responding, and parented to
the window on Linux and Windows (#592), anchors and handle ends picked
from 2 px past their drawn size before the segments through them (#593),
an image copied in a browser pasting as the picture, not its address
(#597), the Free Transform widget with Constrain, Free Transform,
Perspective Distort and Free Distort (#598), touch gestures: a
two-finger tap undoes and a three-finger tap redoes (#585), the font
menus' live preview staying on the text instead of flickering on and off
every frame (#563), Edit Artboards showing the active artboard in the
Properties panel with New Artboard, Delete Artboard and Exit (#530), the
same DirectWrite fonts in stylo-cli and its MCP server
(#579), SVG layers keeping their names when wrapped and sublayers
round-tripping through SVG (#372), a Layers panel that lays out only the
rows in view and keeps a document's open rows in its file (#638), a
panel dropped on the dock lights up the icon column it goes back to and
pops out of its icon (#649), Image Trace's View modes and an Advanced
section that stays as it was left (part of #641), Image Trace's Palette:
Limited, Full Tone, Automatic and Document Library (part of #641), Image
Trace's Create Strokes: line art traced as stroked centre lines (part of
#641), a dual-GPU Mac falling back to its other GPU when one fails to
start (#651), two fingers dragged on a touch screen panning the canvas
(part of #449), the Home screen's Recent Files and a double-clicked New
Document preset creating the document (part of #663), quitting no longer
crashing on Macs with a Touch Bar (#661), Animated Zoom, Large Tabs,
Scale Cursor Proportional to UI and anti-aliased bitmaps in Pixel
Preview acting (part of #394), Smart Guides › Spacing Guides (part of
#394), Edit Artboards' Properties choosing an artboard's size preset and
flipping it between portrait and landscape (#671), Preferences › Type ›
Additional Fonts Folder loading the fonts of a folder you choose (#683),
Canvas Color's light, medium and dark grey (part of #663), a document
tab's close box after its title on Windows and Linux, before it on macOS
(part of #673), Rearrange All Artboards' layouts (a grid by row or by
column, one row, one column) and right-to-left order, one click away in
the Properties and Artboards panels (#681), User Interface › Show Tool
Group Labels and Cmd+, opening Settings on the Mac (part of #663), the
Windows taskbar and Alt+Tab showing Stylo's icon, a click with a
selection tool making its artboard the active one, and Paste in Place,
in Front and in Back pasting onto the active artboard (#693),
Photoshop-style raster effects on a pixel-filter pipeline: Effect › Blur
› Radial Blur and Smart Blur, Effect › Sharpen › Unsharp Mask (part of
gap 2), the Properties panel's number fields all one width (#696), the
rotate cursor drawn as a curved double arrow (#701), the Templates
folder in the desktop's own documents folder, made when missing (#703),
PDF and .ai glyphs whose ToUnicode names no character (U+FFFD) taking
their character from the embedded font or keeping their outlines, with a
warning (#708), Illustrator EPS and .ai files opening from
their editing data with their colours, gradients, transparency, images,
names and every artboard (part of #637), .ai files saved
without PDF compatibility opening from their editing data (part of
#637), guides left out of raster exports and Fit to Artwork Bounds,
hidden art left out of Fit to Artwork Bounds, Illustrator files compared
with their page object by object, and editingData: false
opening only what the page prints (#735), art reaching past a PDF's page
clipped to its crop box (#675), Package collecting what placed documents
link to (#777), area type, threaded type and type on a path made whole
from Illustrator files' text documents (part of #637), the missing-fonts
dialog with Find Fonts and a folder search (#792), Effect › Stylize ›
Glowing Edges (#765), Offset Path's Joins and Zig Zag's Points as
dropdowns and Relative/Absolute as radio buttons in the effect dialogs
(#828), the control channel's app.quit reporting a pending
save prompt (#830), blurred type that stays put while the view moves
(#755), Windows starting on Direct3D 12 and loading no Vulkan driver
unless asked (#806), the Artboard tool naming its artboard once (#824),
Save for Web taking typed pixel sizes (#839), rulers ticked over their
whole length in a rotated view (#826), the gradient stop popover opening
beside the art (#862) and recent colours recolouring the selected stop
(#835), every align button following Align To (#789), the Properties
panel's Paragraph section with all seven alignments and Hyphenate
(#775), isolation mode dimming and locking the art around the isolated
group (#833), color books (.acb) opening as swatch
libraries (#831), files that can't be opened reported in a dialog
(#861), run and command_batch steps using
earlier steps' results (#785), ruler guides pulling drawn points with
Smart Guides on and Smart Guides labelling centres and anchors on hover
(#812), shadows and glows keeping their blend modes in PDF (#827) and
.ai import skipping layer checks that can't succeed (#758),
the Curvature tool editing any selected path (#798), raster exports
composited in floating point so translucent edges over opaque art stay
opaque (#787), Calligraphic and Bristle Brush Options with pen-pressure
Calligraphic brushes (part of #852), a polygon's Polygon Properties in
the Properties and Transform panels, Flare Tool Options that last and
more tools opening their options on a double-click (part of #812), MCP
file access confined with --automation-read-root /
--automation-write-root (#832), the Transform effect's dialog with the
reference point, Random, sliders and an angle dial, and its Transform
Objects, Transform Patterns and Scale Strokes & Effects options
(#885), artboard X/Y edits in the Properties and Transform panels and
Artboard Options taking their art along with Move Artwork with Artboard
(#922), Effect › Pixelate's Color Halftone, Crystallize, Mezzotint and
Pointillize (part of gap 2), linked files changed while the app was in
the background following Update Links when its window comes back to the
front (#925), the Tabs panel's Leader and Align On fields keeping what
is typed until Enter (#924), the Properties panel's Gradient section
with the gradient's type and a freeform gradient's Draw (Points or
Lines) while the Gradient tool is active (#921), PSD and PSB files
opened and placed, linked or embedded, as their merged image (#918),
Direct Selection and Group Selection marquees selecting the type, images
and other objects without anchors that they touch (#927), PDF and
.ai glyphs that no mapping names found by their outline in
the installed font, so their text stays one type object (#811), Effect ›
Video's De-Interlace and NTSC Colors (part of gap 2), the Libraries
panel's search, groups and library export/import (#926), Live Corner
widgets on every selected path, dragged together (#938), Scatter, Art
and Pattern Brush Options with Colorization and Scatter values on pen
pressure (part of gap 5), artboard names fitting their artboard's width
on screen when zoomed out (#949), Effect › Texture's Craquelure, Grain,
Mosaic Tiles, Patchwork, Stained Glass and Texturizer (part of gap 2),
Inner Glow's Center/Edge Source as a dropdown (#962), the macOS window
buttons centred on the app bar (#968), a compact 32-point app bar
starting at File (File › Exit quits) with a search icon, and User
Interface › System Title Bar on Windows and Linux (#969), the German
interface (#934), Graph Type's value axis on the left, right or both
sides with separate scales (#971), Graph Type's tick marks per axis,
category tick marks and value-axis label prefixes and suffixes (#974),
Effect › Distort's Diffuse Glow, Glass and Ocean Ripple (part of gap 2),
Variables (data merge): text and visibility variables, data sets and the
Variables panel (#761), a window whose first frame never reaches the
screen starting again on the next graphics processor (#964), Shape
Builder merges across a grid of lines leaving no seam inside the merged
shape (#893)).
M3 follow-up (#1968): native saves retain the per-document transparency grid setting; save/open regression covers both states, older files and SVG. Scores and estimates unchanged.
Highlighted-text Eyedropper (2026-10-21)
Type/Eyedropper switches preserve highlighted characters; sampling
changes only their enabled font/paint attributes. Enabled non-neutral
source or target object transparency is refused atomically; disable
Transparency to preserve object transparency while sampling the range.
tests_eyedropper.rs covers ranges, Unicode, history and
transparency; tool tests cover brush-key sampling coexistence. Scores
and estimates unchanged. See development.md.
Drag artwork between document tabs (2026-10-22)
Selection drags activate another visible document tab after 400 ms,
then copy editable artwork on canvas release with the original grab
point. Source and clipboard preservation, resource rendering, swatch
conflicts, cancellation, rotated/zoomed views and target Undo/Redo have
regression coverage (tests_document_drag,
tests_clipboard). Overflow-menu and cross-window drag
remain separate. Scores and hours unchanged. Behavior
and command details.
Revision history
| Date | Change | Summary |
|---|---|---|
| 2026-10-24 | minor | Docs catch-up: Current focus's three G11 lines merged into one (#864 and #885 remain; #937, #983/#1037 and #834 fixed) and its two stale G2 lines (filters left, the Effect Gallery to build) removed; G2 stays the gallery's thumbnails and in-dialog preview, 1–2 h. Estimates unchanged. |
| 2026-10-23 | minor | M10/G5: symbol libraries (Window › Symbol Libraries, the Symbols panel's Symbol Libraries Menu, Save Symbols, Other Library…); estimates unchanged |
| 2026-10-23 | minor | M2/G1: a double-click on the Line Segment, Arc, Rectangular Grid or Polar Grid tool opens its Tool Options (#2691, in part); estimates unchanged |
| 2026-10-23 | minor | G12 and M14: General › Constrain Angle acts for the arrow keys, Shift drags and new objects (#394); estimates unchanged |
| 2026-10-23 | minor | M7/G4: Glyph Scaling leaves hung punctuation at its width and Standard burasagari counts a hung line start as room; paragraph-level hanging tests. Scores and hours unchanged. |
| 2026-10-20 | minor | M7: a paragraph's Auto Leading also drives the Character panel's Leading, the leading nudge and Fill with Placeholder Text; estimates unchanged |
| 2026-10-22 | minor | #834 (bezier drag preview stalled after the pointer re-entered the window, and missed the move in the release's frame) fixed; G11 keeps its 8–15 h |
| 2026-10-22 | minor | The Transform effect has Transform Objects, Transform Patterns and Scale Strokes & Effects (#885). |
| 2026-10-18 | minor | #937's reproduced case fixed (Shape Builder lines cut art past 4,096 segments); G11 keeps 8–15 h until confirmed on the reporter's file |
| 2026-10-23 | minor | M6: Simplify of part of a path: with anchors or segments of a path direct-selected, Object › Path › Simplify (slider, Auto-Simplify and dialog) refits only each run of selected segments between its end anchors; estimates unchanged |
| 2026-10-23 | minor | M6: Simplify: Object › Path › Simplify opens its slider at the Auto-Simplify level for the selection, previewing that result, instead of at 1 pt; partial-path simplify remains missing; estimates unchanged |
| 2026-10-22 | minor | G2: the Effect Gallery shipped (#2883): Effect › Effect Gallery… browses the Artistic, Brush Strokes, Distort, Sketch, Stylize and Texture filters, edits each filter's settings, builds an ordered stack (add, reorder, hide, remove) with a live canvas preview, and OK applies it as separate appearance effects in one undo step; remaining: filter thumbnails and a preview area inside the dialog; G2 estimate 4–6 → 1–2 h; Raster effects 82% → 85% (power-user view 49% → 52%), estimated, a modest move because the named missing dialog landed without thumbnails or an in-dialog preview. |
| 2026-10-22 | minor | G2: Effect › Sketch › Conté Crayon (Foreground Level, Background Level, Texture, Scaling, Relief, Light Direction, Invert; a black crayon in the dark areas and a white one in the light areas on textured mid-grey paper; ranges and defaults unverified Stylo choices); measured Photoshop-style filters 57/57, the Effect Gallery remains (4–6 h). |
| 2026-10-22 | minor | Recolor Artwork Edit chips scroll within the available screen height (#3416); small palettes retain their tab height; scores and estimates unchanged. |
| 2026-10-22 | minor | Artboard Options honors Scale Artwork with Artboard for preset, orientation and typed-size changes; both Fits keep artwork stationary; scores and estimates unchanged. |
| 2026-10-22 | minor | G2: the Effect Gallery shipped (#2883): Effect › Effect Gallery… browses the Artistic, Brush Strokes, Distort, Sketch, Stylize and Texture filters, edits each filter's settings, builds an ordered stack (add, reorder, hide, remove) with a live canvas preview, and OK applies it as separate appearance effects in one undo step; remaining: filter thumbnails and a preview area inside the dialog; G2 estimate 4–6 → 1–2 h; Raster effects 82% → 85% (power-user view 49% → 52%), estimated, a modest move because the named missing dialog landed without thumbnails or an in-dialog preview. |
| 2026-10-22 | minor | G2: Effect › Sketch › Conté Crayon (Foreground Level, Background Level, Texture, Scaling, Relief, Light Direction, Invert; a black crayon in the dark areas and a white one in the light areas on textured mid-grey paper; ranges and defaults unverified Stylo choices); measured Photoshop-style filters 57/57, the Effect Gallery remains (4–6 h). |
| 2026-10-22 | minor | Font pickers list recently applied families first (#3515), using the existing recent-font limit; search, filters, previews and keyboard selection share the same rows. Scores and estimates unchanged. |
| 2026-10-21 | minor | Blend panel Type and Ramp control step easing with a separate color Shift (#2539); Blend Options retains spacing and orientation; polynomial curves are original approximation. Scores and estimates unchanged. |
| 2026-10-21 | minor | M14: workspaces keep the layout changes made in them across switches
and restarts until Reset |
| 2026-10-21 | minor | M14: panels dock by dragging into any dock group (tabs or a top/bottom split) or the icon column; dock tabs close from their context menu (UI.6); estimates unchanged |
| 2026-10-21 | minor | M14: a double-click on a dock tab collapses its group to its tabs and expands it again (UI.8); estimates unchanged |
| 2026-10-20 | minor | M14: workspaces keep the layout changes made in them across switches
and restarts until Reset |
| 2026-10-21 | minor | M3: highlighted-text Eyedropper sampling preserves ranges and rejects unsupported source/target transparency atomically; regression-tested; scores and estimates unchanged. |
| 2026-10-21 | minor | Shape Builder Gap Detection shares Live Paint’s spatial gap finder and temporary merge bridges (#2526); Custom is capped at 72 pt in the existing options dialog. Scores and estimates unchanged. |
| 2026-10-21 | minor | Recolor model selection is available through the engine and MCP only (#2520); the dialog retains its existing controls. Scores and estimates unchanged. |
| 2026-10-21 | minor | Tangent and straight-segment perpendicular snapping use saved Smart Guides Geometric Guides preferences and Control bar quick access (#2537); no View submenu; Recolor model selection is available through the engine and MCP only (#2520); the dialog retains its existing controls. Scores and estimates unchanged. |
| 2026-10-21 | minor | 3D: original Standard, Diffuse, Top Left and Right lighting presets; command access, effective-setting recognition and preview/history; scores and estimates unchanged |
| 2026-10-20 | minor | Polygon and Star exact-size placement remembers the chosen count for later drags and dialog openings; Cancel preserves the previous count; existing opening gestures retained; scores and hours unchanged. |
| 2026-10-20 | minor | M12: consolidated three duplicate milestone rows into one, retaining distinct Image Trace and Graphs details and the quick-preset wording correction; status, scores and 6–10 h estimate unchanged. |
| 2026-10-20 | minor | Move the live-trace bounds/highlights note into the Image Trace milestone description and restore the Graphs label-formatting code span; implementation, scores and hours unchanged. |
| 2026-10-20 | minor | Live trace result bounds and selection highlights exclude the retained bitmap except in source-image views; scores and hours unchanged. |
| 2026-10-20 | minor | M3.57: CSS swatch libraries preserve fractional stop positions in linear and radial gradients; synthetic color-crate regression. Scores and hours unchanged. |
| 2026-10-19 | minor | Cache status-readout sample widths per UI, language, document unit and pixels per point; regressions check reuse across live frames and refresh after display-setting changes. Scores and estimates unchanged. |
| 2026-10-19 | minor | Status messages and readouts use stable responsive allocations sized for localized labels and ordinary coordinates. Contributor original-file acceptance confirmed; scores and estimates unchanged. |
| 2026-10-18 | minor | M4/DXF #1299: circular cubic paths export as native CIRCLE/ARC where stroke semantics permit; R12 weighted strokes retain POLYLINE width and closed partial arcs with an implicit closing chord are not promoted to CIRCLE. Scores and hours unchanged. |
| 2026-10-19 | minor | Cached canvas dimensions match the renderer limit before cache-key creation, view construction and worker submission. Regression coverage; scores and estimates unchanged. |
| 2026-10-19 | minor | Cached canvas reprojection preserves scale during resize, rotation and DPI changes. Contributor original-file acceptance confirmed; scores and estimates unchanged. |
| 2026-10-19 | minor | Color Picker layout (#2008): compact controls, centered header, stacked actions and aligned inputs; screen-reader channel values, current shared button names and styling, screen sampler and model-by-model Tab order retained. Narrow windows scroll vertically; scores and hours unchanged. |
| 2026-10-18 | minor | M4: PDF Place and clipboard paste preserve live text by default; explicit outlines on Place remain available. Synthetic regressions; estimates unchanged. |
| 2026-10-18 | minor | Mirror Repeat shows its axis when selected (#2877): drag the line or center handle to move it, drag an end handle to rotate it (Shift: 45°), Escape cancels and each drag is one undo step. Engine and headless canvas gesture regressions passed; native move, rotation and Escape screenshots reviewed. Formatting, Clippy, WASM and repository checks passed; the undo label reuses translated Repeat Options. (#2877) Scores and hours unchanged. |
| 2026-10-18 | minor | Selected Mirror Repeat bounding-box handles take priority over the axis line; a Top-handle regression confirms the default repeat scales vertically, while center and end handles retain their move and rotation behavior. Headline scores and estimates unchanged. |
| 2026-10-18 | minor | Status-bar pointer X/Y follows the active global/artboard ruler origin and General units; three painted-text regressions cover origins, mode/artboard/reset/unit changes and read-only state; scores and hours unchanged. |
| 2026-10-17 | minor | Blend spine Anchor Point conversions, selection/stacking priority and Shift regression coverage (#2544); scores and hours unchanged. Windows native canvas checks and screenshots reviewed in PR #2643. |
| 2026-10-17 | minor | Image Trace: Auto Color keeps rare but distinct colours drawn as regions of their own (stems, highlights, near-white on pale backgrounds), at most six, protected from mixed-colour merging and Noise: every key colour on 66 of 66 flat test logos (was 39); scans unchanged. Scores and hours unchanged. |
| 2026-10-17 | minor | Image Trace: images over 1500 px on a side trace normally with a warning that they are slower (as the public documentation describes), images over 64 MP say they were scaled down, and the memory guard is 8,000,000 anchors (2,000,000 on the web) instead of 2,000,000, measured at about 90 bytes an anchor. Scores and hours unchanged. |
| 2026-10-17 | minor | Image Trace: Raster::new returns an error for RGBA
bytes of the wrong length instead of failing an assertion, and
Raster::pixel reads nothing past the raster; no behaviour
change for valid images. Scores and hours unchanged. |
| 2026-10-17 | minor | M12: maximal-disc pruning and junction merging, measured in the centre-lines class; whole-blob selection, scores and hours unchanged. |
| 2026-10-17 | minor | M12: exact per-blob distances and Guo–Hall thinning preserve more stroke ends in the centre-lines class; whole-blob selection, scores and hours unchanged. |
| 2026-10-17 | minor | M12: code-drawn centre-line scenes and metrics added to the ignored
quality harness; current Create Strokes baseline in
image-trace-quality.md. Tests only; scores, missing
features and estimates unchanged. |
| 2026-10-16 | minor | Image Trace: a loop or junction-returning piece whose fit collapsed to one cubic keeps the fewest segments that hold its area and course instead of every positioned point, so a higher Paths no longer gives fewer segments on code-drawn noisy images (six falling runs to none; one fall with another cause remains). Scores and hours unchanged. |
| 2026-10-16 | minor | Image Trace: a notch corner is cut only when the straight edges beside it lie in the shared piece, so both regions of the piece get the same points (code-drawn noisy colour images: 93 uncovered sample points to 0). Scores and hours unchanged. |
| 2026-10-16 | minor | Image Trace: a crack's sub-pixel shift is the mean of the readings from its two sides, exactly antisymmetric, so abutting regions get the same points on thin slivers (a code-drawn noisy ripple went from 482–1,228 uncovered sample points per trace to 0). Scores and hours unchanged. |
| 2026-10-16 | minor | Image Trace: the contour walk works out each turn from the pixels as it goes instead of following a precomputed table of per-corner directions; identical loops on all 65,536 4 × 4 masks and 400 seeded masks, and no slower (whole 1 MP traces 1–5% faster). Scores and hours unchanged. |
| 2026-10-16 | minor | Native documents restore transparency grid visibility (#1968); save/open regression covers on/off, old files and SVG; scores and hours unchanged (estimated) |
| 2026-10-16 | minor | EPS editing data: legacy mesh corners, vector opacity masks and compound member paint retained; raster page comparison filters minification without relaxing limits; scores and hours unchanged. Synthetic EPS/parser/minification regressions; user EPS/SVG/JPG kept local. |
| 2026-10-16 | minor | Correction to M12: quick Image Trace presets trace at once; the Image Trace button opens the adjustment controls (https://helpx.adobe.com/illustrator/using/image-trace-results-optimization.html). Wording only; status unchanged. |
| 2026-10-16 | minor | Batch exporting in Export for Screens (#1935): a file name pattern (document and item names, a counter, the date), folders per format, item or both, Layers and Selection tabs with thumbnails, EPS, AI and Stylo rows, a PDF row with printer's marks, and export presets (built-in Logo Package and Print-Ready PDF, saved ones); scores and hours unchanged (estimated) |
| 2026-10-15 | minor | Image Trace retains nonzero positioned boundaries when a fixed-end
returning piece has fewer than two fitted cubics. Source-generated tests
check survival, winding, shared-edge reversal and Noise controls; see
image-trace-quality.md. Scores and hours unchanged. |
| 2026-10-16 | minor | G2: Effect › Artistic › Smudge Stick, Sponge and Watercolor (original approximations with their documented options); measured Photoshop filters 36/57 with Cutout, Neon Glow and Poster Edges, 21 remaining (19–31 h). |
| 2026-10-16 | minor | G2: Effect › Sketch › Bas Relief, Charcoal, Photocopy and Stamp (#2527); measured Photoshop filters 37/57 with Cutout, Neon Glow and Poster Edges, 20 remaining (18–30 h). |
| 2026-10-16 | minor | G2: Effect › Sketch › Halftone Pattern (Size, Contrast, Pattern Type Circle, Dot or Line; black ink on white paper, Size in points at any Document Raster Effects resolution); measured Photoshop filters 30/57, 27 remaining (22–38 h). |
| 2026-10-17 | minor | Colored Inflate: shared membrane normals and smooth RGB vector ramps replace flat polygon bands; channel groups are batched per solid-fill surface. White-light Inflate retains its original polygons, paint composition and seam joins; the 0.05 seam minimum is restored. Scores and hour estimates unchanged. |
| 2026-10-16 | minor | 3D lighting: one to ten directional lights, a selectable light list, Add Light and Delete Light, independent settings and artboard gestures; ambient applied once and smooth RGB vector export; scores and hour estimates unchanged |
| 2026-10-16 | minor | 3D lighting: opaque RGB Color for the shared directional light, with neutral ambient, preview/reset controls and smooth vector Revolve shading; scores and hour estimates unchanged |
| 2026-10-14 | minor | Effect > Warp: style, orientation and percent controls; focused checks passed and original captures reviewed; scores and hours unchanged |
| 2026-10-14 | minor | G11: open-path anchor Delete removes adjoining segments without bridging the gap; explicit Remove Anchors keeps its reconnect/refit behavior. Scores and hours unchanged. |
| 2026-10-14 | minor | MCP add_text exposes the existing vertical
option for point, area and path type; horizontal remains the default;
scores and hours unchanged. |
| 2026-10-14 | minor | Vertical fullwidth question and exclamation marks keep their nominal glyph upright when the font has no vertical alternate; scores and hours unchanged. |
| 2026-10-14 | minor | M2: Curvature curve geometry: each three points follow the circle through them, curved open ends (#1236, in part); estimates unchanged |
| 2026-10-14 | minor | Quick Image Trace presets reveal the adjustment panel with Advanced open; Properties reopens it. Sliders keep their preset row until release so the re-trace is committed. UI regressions added; scores and remaining estimates unchanged. |
| 2026-10-14 | minor | Revolve: automatic smooth vector shading, default-on Cap with continuous curved rims, and bounded seam joins; angular cut sides remain open. Scores and hour estimates unchanged at this rounding |
| 2026-10-14 | minor | Corner Radius has a link button in Properties and Transform:
unlinked, a live rectangle shows a radius field for each corner (#1682);
With the Width tool, double-clicking a stroke opens Width Point Edit to
create a width point there, and Shift-double-click on a width point
opens it with Adjust Adjoining Width Points ticked (#1814, #1630);
Holding Alt while dragging a guide out of a ruler switches it between
horizontal and vertical (#1782), and a marquee with the Selection or
Direct Selection tool also selects the unlocked ruler guides it crosses
(#1836); The Transform panel's, Properties panel's and Control bar's
X/Y/W/H show and edit only the anchor points selected with Direct
Selection (#1839, fixes #1824); With Snap to Grid on, anchors and
objects snap to the grid even when Snap to Pixel is also ticked (#1840;
#1816 waits for the reporter); Artboards are deleted the same way from
the Artboards panel, its menu, Properties and Delete/Backspace (#1631);
The toolbar shows no group labels by default (a preference brings them
back) and runs on in one or two columns; the All Tools drawer lists the
tools by flyout group with their shortcuts, has a menu (Reset, Basic,
Advanced) and a Show section for the Fill/Stroke, Coloring, Draw Mode
and Screen Mode controls (#1751); An action clicked in the Actions panel
stays selected, so Play Current Selection and Delete Selection act on it
(#1853, part of #1629); Redo during a drag keeps the drag as a step
(#1856, #1719); Preferences are written as soon as OK is pressed (#1857;
#1747 waits for the reporter); Preferences › Appearance of Black ›
Printing / Exporting and Units › Identify Objects By act (#1750, #1809);
The paragraph alignment buttons show none selected for paragraphs with
different alignments (#1784); redefining a character style to Auto
leading updates the text that uses it and keeps local overrides (#1633);
New and Redefine Character Style take the format of the selected text
range, also while typing (#1634); Type inside symbols, pattern tiles,
graph designs and opacity masks gets its layout bounds back when a
native file opens, so warped type in a symbol looks the same after save
and reopen (#1833, #1738); Editing, renaming, deleting or merging a
global swatch reaches the art of opacity masks (#1830, #1735); macOS:
Save As, Save a Copy and the first Save show their sheet again; the
sheet's Format menu (#866, reopened) is withdrawn until it can be set
before the sheet opens (#1855); Rendering: copies, symbol instances and
repeats that share an appearance keep their stroke outlines between
frames (#1667); the canvas no longer reads its whole picture back for
each non-isolated group that blends (#1687); envelopes, blends, repeats
and meshes redraw when a pattern, symbol, font or colour setting they
show changes (#1688); Outline view draws from geometry kept between
frames (#1689); CMYK documents with transparency compose their ink
planes on several threads (#1755); an edit re-flows a threaded story
only when it changes one of the story's frames (#1792); opening a file
reads its linked files and lays out its type on the opening thread
(#1767); Instances of imported symbols are measured, selected, aligned,
culled and exported by their art instead of a 20 pt square (#1744);
Export for Screens and the Asset Export panel offer TIFF (#1632); SVG
import looks style rules up by id, class and type (#1690), applies
:not() selectors (#1799, #1557), no longer stalls on
stacked descendant selectors over deep nesting (#1834, #1703) and reads
linked files within the automation roots again (#1870); DXF export
writes the VPORT view direction once (#1789); Untrusted files: nesting
is capped at 32 objects in SVG, PDF, EPS and native files and symbols or
patterns that use themselves open without the offending instance or
paint (#1852); deeply nested PDF and .ai data, page trees
holding themselves and functions or colour spaces built on themselves
(#1871), decompression bombs and impossible predictor parameters (#1873,
#1700, #1701), brushes that draw themselves (#1872) and hostile EPS,
Affinity and native data (#1863: #1715, #1714, #1704, #1699) no longer
crash or exhaust the app; the save fallback keeps the old file until the
new one is in (#1695); Files whose ids sit at their largest value, a
failed command.batch, control requests that timed out and
images too large as RGBA for the Eyedropper are handled (#1862: #1718,
#1697, #1725, #1717); Effects: wide shadows and glows at high zoom stay
within the raster budget, stacked Transform effects are bounded, 3D
keeps the area a nonzero compound path fills, pattern tiles redraw when
the art they show changes, and a template layer dims its images by Dim
Images (#1864: #1706, #1705, #1724, #1723, #1683); A failed save or
export is reported in a dialog that names the file and stays until
closed (#1865, #1685); a browser download that can't start fails the
save (#1693); a file that finishes opening waits while a dialog is open
(#1694); krilla's text shaping is no longer built in (#1874, #1730); the
CI gate compiles the web app for wasm (#1875); milestone rows and
estimates unchanged |
| 2026-10-14 | minor | M12 row: each documented Image Trace preset has an enhanced version (#1847) |
| 2026-10-14 | minor | Existing-guide Escape cancellation: eight app-input regressions, the Direct Selection Escape control and current full CI passed; scores and hours unchanged. |
| 2026-10-15 | minor | Artboard tool: closing a clean active tab restores the displayed board before Properties Delete. Nine targeted checks passed; three original close-route captures reviewed; scores and hours unchanged. |
| 2026-10-14 | minor | Artboard tab changes align the tool with the displayed board;
same-tab multiselection and Move/Scale Artwork options preserved. Three
tab regressions and historical full CI on a0671777 passed;
scores and hours unchanged. |
| 2026-10-14 | minor | Width-point finite-arithmetic follow-up: atomicity, history and native round-trip regressions and current full CI passed; scores and hours unchanged. |
| 2026-10-13 | minor | Pinned PngSuite HTTPS files verified by SHA-256 before publication; bounded downloads replace archive extraction (#1729). Scores and hours unchanged. |
| 2026-10-13 | minor | Bounded synthetic control input (#1709): counts and queued events validated before mutation; control-channel bursts yield between frames. Scores and hours unchanged. |
| 2026-10-14 | minor | Align and Distribute act on the anchor points selected with Direct
Selection: the points of one path align to each other, not to the
artboard, and Distribute spaces them (#1641, fixes #1636; aligning to a
key anchor is still missing); Delete removes every selected anchor of a
closed path (it used to remove the wrong ones), removes objects selected
whole along with the selected anchors of others, and keeps the remainder
selected so a second Delete removes it (#1674); In isolation mode Direct
Selection and Group Selection pick only inside the isolated object
(#1666); Escape cancels a Direct Selection drag (#1803, #1743); Escape
while typing ends the edit, keeps the type selected and switches to the
Selection tool (#1802, #1686, #1656); A filled Pencil path keeps a
stroke of None (#1804, part of #1679); With the Pen, a press that moves
under 3 screen pixels is a click (a corner without handles), and a
Precise Cursors command toggles the existing preference and can take a
shortcut (#1663); The [ and ] keys reach the Blob Brush, the Eraser and
the Symbolism tools in the app (#1734, part of #1661); In the Pathfinder
panel a group selected alone counts its nested shapes, so an expanded
stroked object keeps the Shape Modes enabled (#1642, #1635); Object ›
Expand turns radial, grid and mirror repeats into groups of their
instances (#1765, #1756); Select › Same matches type on its characters'
fill and stroke (#1746, #1737); Fields commit what was typed when you
click away or move to another field, as Enter does; Escape still
discards it (#1787); Up and Down move through the command search results
and Enter runs the highlighted one (#1798, #1757); Slider rails show on
Medium Dark (#1808, #1662); On Windows the custom title bar's window
stays truly borderless, so the pointer lines up with what is drawn on
systems where the hidden caption offset it (#1791, #1758; awaiting the
reporter's confirmation); Tool cursors are painted into the window on
Wayland (#1652; not run on Linux, #1645 stays open until confirmed);
Roughen with Smooth keeps turn-backs smooth instead of making cusps that
draw as spikes (#1646, #1643); Scribble draws one zig-zag per region,
with no lines across holes and notches; convex shapes are unchanged
(#1651, #1648); EPS import: a stitched shading keeps its hard colour
changes (#1654, #1653); WMF/EMF import refuses an oversized embedded PNG
or JPEG from its header, before any pixels are decoded (#1776); PDF open
no longer takes exponential time on a crafted name tree with shared
nodes when it looks for the editing data (#1781); The size limits on a
native file's embedded data also apply to files read from memory, not
only streamed ones (#1783); Saving over a private file on Unix no longer
leaves a readable temporary copy beside it while the file is written
(#1778); An Export for Screens suffix can no longer place files outside
the export folder (#1777); Package refuses a folder where it would
overwrite the open document or one of its linked files (#1786); ruzstd
0.9.1 fixes a decompression bomb (RUSTSEC-2026-0344) reachable from
EPS/.ai and Affinity import (#1807); File Info dates are
stamped only after a save succeeds, so a failed save no longer changes
them (#1774); Linked files that change during a drag are updated after
the drag instead of being missed (#1773); Scatter graph data near the
largest number is refused with a message instead of hanging the app
(#1780); One very long Liquify stroke segment can no longer create an
unbounded number of dabs (#1779); A drag whose last preview failed is no
longer recorded as a committed command in the journal that actions and
scripts read (#1775); Tests: text import fuzzing no longer searches
installed fonts (#1785); Tests: render tests that add fonts no longer
race the frame cache tests (#1795); text.create,
text.createInPath and the MCP add_text tool
take justify, so point type can be centred on or end at its
point (#1752, #1748); MCP limits: 16 MiB lines, 64-message batches,
256-step command_batch with 8 MiB of kept results and 256
MiB control replies (#1764, fixes #1727); MCP requires the JSON-RPC 2.0
envelope and matches control replies by id, and an app refusal without
an id reports the app's reason (#1768, fixes #1728); The MCP server
reconnects to the app before a call when the connection was closed or
holds stray bytes, after an app restart or an idle expiry (#1739); Image
Trace, measured in image-trace-quality.md: snap Curves To
Lines moves no end of a line by more than 1.6 px, so long lines a degree
or two off stay as the image has them (#1647: Technical Drawing's
largest distance 4.21 px to 1.46); flat Logo takes the tones a scan's
uneven paper makes of one colour for one colour (#1657: on scans 470
paths and 21 px off to 8.5 paths and 0.09 px); milestone rows and
estimates unchanged |
| 2026-10-14 | minor | Malformed JSON app replies drop the MCP connection without replay and report uncertain completion (#1761); upstream notification and id-less refusal behavior preserved; scores and estimates unchanged. |
| 2026-10-13 | minor | SVGs that move objects with a CSS transform
(translate(100px, 0), rotate(45deg)) or style
type with the font shorthand import as drawn (#1565); SVG
symbols whose shapes use percentage lengths import at the size and place
they are drawn, the percentages being of the symbol's
viewBox (#1596); Inkscape's flowed text
(flowRoot) opens as area type in its rectangle, a paragraph
per flowPara, instead of being dropped, and a region that
can't be read is left out with a warning (#1569, fixes #1568); The
warning for an unsupported SVG filter names the filter, its primitives
and the object, and says the object is drawn without it (#1599, fixes
#1598); The pages of an Inkscape multi-page SVG become artboards, named
by their labels (#1603, fixes #1601); SVG export with CSS classes or
style entities stays fast in documents with many distinct styles
(#1567); PDF and .ai import: evenly letter-spaced or
tightened type on a path keeps its length along the path instead of
closing up to the font's advances (#1586), and type on a path whose
stroke is written glyph by glyph comes in as one text object with its
stroke, not one object per glyph (#1585); The ICC profiles embedded in
JPEG, TIFF and PSD exports have every tag on a 4-byte boundary (ICC.1
§7.1.2), so strict readers accept them (#1589, fixes #1584); GIF, PNG-8
and other indexed exports find each pixel's palette colour through an
index instead of a scan, with identical output (#1576); Saving to a
network drive on macOS falls back to a plain fsync when the share
refuses a full flush (#1625, part of #1620; not confirmed on a real
share), and a save still succeeds when a folder refuses the temporary
file, the rename over the document or copying permissions: the content
is written elsewhere first and copied in, and a failed copy keeps the
temporary file and names it (#1649, part of #1620); A document opened by
a relative path finds its relatively linked images, and
stylo-cli convert lists what reading the input left out as
importWarnings (#1606, fixes #1604); A zero-length subpath
draws its round cap as a dot and its projecting cap as a square, so dots
in imported .ai and SVG files show (#1619, fixes #1613);
Pathfinder's Trim, Merge and Crop remove the objects' strokes, and Merge
joins same-fill objects whatever their strokes were, as the public
Pathfinder page describes (#1572, fixes #1570); Offset Path with an
inset larger than the shapes says the offset leaves nothing, instead of
asking to select paths (#1591, fixes #1590); The Symbols panel's New
Symbol opens Symbol Options to name the symbol first, and Alt-click
skips it (#1566, fixes #1560); Tool flyouts are as wide as their longest
translated name and shortcut need, so names no longer run into shortcuts
in Spanish and other languages (#1650, fixes #1616); Smart Guides: a
point drawn with the Pen or a shape tool, and an anchor dragged with
Direct Selection, snaps to where paths and ruler guides cross, labelled
"intersect" (#1658, part of #1602; a moved selection's own anchors
don't); The Transform panel shows a selected ruler guide's X or Y, and
typing a value moves it (#1659, part of #1597). This is not established
by the documentation we could find: the public help pages on guides,
rulers and the Transform, Control and Properties panels (read again on
2026-10-14) describe selecting and dragging unlocked guides and the
panels' X and Y for a selection, not a guide's position in a panel, and
the one public statement of it is a user's community
answer, which is not documentation. It is kept as a convenience
pending the owner's decision, with no parity claim and nothing counted
towards a score; Select Behind (Ctrl/Cmd-click) tests each object once,
so a deep stack of overlapping objects no longer slows it; same objects
in the same order (#1571); Commands that take ids run on
the objects given with nothing selected, over MCP, the control channel
and the CLI too (#1577, fixes #1575); Zig Zag spaces its ridges evenly
along each segment, so lines and curves get a regular wave in Corner and
Smooth (#1558); Warp › Arc (the effect and Envelope › Make with Warp)
bends in the object's real proportions: a circular arc with concentric
edges and no fold-over at 100%, so Arc on art that isn't square draws
differently from before (#1581, fixes #1578); effect.apply
and effect.setParams give an error for a misspelt or
wrongly typed effect parameter instead of running the effect with its
default (#1623, #1592); Area type in a non-rectangular shape moves a
word too wide for the top lines down to the first line that holds it
instead of breaking it (#1617, fixes #1615); Stylistic sets (ss01–ss20),
stylistic and titling alternates, proportional and lining figures, and
superscript and subscript glyphs can be turned on as OpenType features
of a character style (text.setStyle {features}), and the
OpenType panel keeps them (#1611, fixes #1607); The Polish translator
confirmed the Polish rows the maintainers had added after the catalog
was written (#1614); milestone rows and estimates unchanged |
| 2026-10-13 | minor | PDF.R1: editable PDF import uses the shared pinned reader; layer and overprint scans preserve state across content windows and reject known incomplete input. Synthetic streaming, decoder-limit and dependency-source regressions added; scores and hours unchanged. |
| 2026-10-13 | minor | PDF.W1: PDF export and print composition use the shared guarded writer; drawing, colour policy and editable import stay app-owned. Metadata regression coverage and immutable dependency checks added; scores and hours unchanged. |
| 2026-10-13 | minor | G1/M11: Artboard panel deletion, protected deletion keys and navigator/tool synchronization before and after deletion; history normalization preserves valid multiselection; history regressions and full workspace CI pass; scores and hours unchanged |
| 2026-10-13 | minor | M7: mixed paragraph alignment indication implemented; headless regressions, full integration CI and visual review pass; other mixed paragraph fields, scores and hours unchanged |
| 2026-10-13 | minor | Interaction fidelity: Alt swaps a new ruler guide's orientation during creation; preview, snapping, release, cancellation and Undo/Redo have event regressions. Scores and hours unchanged (estimated). |
| 2026-10-13 | minor | G1: create width points through Width Point Edit with optional adjoining adjustment; command/pointer/history regressions and full CI passed; dialog layout reviewed; scores and hours unchanged |
| 2026-10-13 | minor | Corner Radius: a link toggle behind the field in the Properties and
Transform panels; off, a live rectangle shows a radius field for each
corner (Top Left, Top Right, Bottom Right, Bottom Left), each setting
its own corner (singleCornerRadius preference); split from
#1594; score unchanged (estimated) |
| 2026-10-13 | minor | Control transport deadlines (#1726): idle and partial clients and blocked replies release connection slots; parity scores and estimates unchanged. |
| 2026-10-13 | minor | M12 row: Image Trace has 15 presets and the Ignore Color, Shapes,
Auto Grouping and Gradients options (#1574, #1609, #1618, #1627); its
speed figure, measured before these, is dropped for the measurements in
image-trace-quality.md |
| 2026-10-13 | minor | The interface is available in Polish (pl): menus,
panels, dialogs and messages, with one/few/many plurals; AI-drafted,
native review pending (#1498); Native documents with a lot of path data
(traced or generated art, in layers, symbols or patterns) are saved as
compact JSON, about a fifth of the size; small documents stay
pretty-printed (#1492); Paste takes a PDF or EPS another app copied as
editable vector art: from the macOS pasteboard (with SVG), EPS on
Windows beside PDF, and .eps files copied in a file
manager, with the new command clipboard.importEps (#1538,
fixes #1499); Opening or placing a file with an image too large to
decode says so, and the Links panel shows it on the row (#1540, part of
#1479); a multi-artboard .ai with notes beside its
artboards opens from its editing data, a page's art past its artboard no
longer lying over the page before it (#1528); a .ai
gradient whose stops are listed upwards keeps each midpoint on the stop
that starts its part of the ramp (#1530); SVG text on a path follows
basic shapes (circle, ellipse, rect, line, polyline, polygon) as their
SVG 2 equivalent paths (#1531, fixes #1527); PDFs whose alpha soft masks
are drawn as images import with the mask instead of empty art (#1551);
EPS and PostScript type set in Type 42 (TrueType) fonts imports at its
size instead of 1000 times too large (#1553); PDF and EPS import keep a
clipping path whose bounding box covers the page but whose shape doesn't
(#1544, fixes #1542); Make Compound Path on a group (such as outlined
type) keeps the paint of its backmost path instead of drawing nothing,
and compound paths joined into one keep their holes (#1537); a round
corner next to a curved side curves smoothly instead of sticking out of
the shape and the Smooth tool smooths only the stretch of path under the
drag (#1547, fixes #1512); Join merges the selected anchor points that
lie on one another, as after Average, into one anchor (#1582, fixes
#1533); Lock Guides also locks the objects made into guides: they can't
be selected, moved or deleted (#1543); they are drawn in the guide
colour and style of Preferences, and a dragged selection snaps to ruler
guides with Smart Guides on (#1583, fixes #1534); Edit › Keyboard
Shortcuts lists Edit › Duplicate and the other commands that are in no
menu but run without parameters (panel-menu commands such as Break Link
to Symbol), so they can be given shortcuts (#1549, #1580, fixes #1539);
Raster effects (blur, shadow, glow, grain) drawn after a pattern, radial
or freeform gradient fill export at their place and size (#1541, fixes
#1536); the font scan on Linux also reads the folders fontconfig's
configuration lists, such as TeX fonts under
/usr/share/texmf/fonts (#1548, fixes #1529; not verified on
Linux); estimates unchanged |
| 2026-10-13 | minor | Direct Selection takes the selected object's anchor where anchors of
overlapping objects coincide (#1508); commands and MCP
add_text report area type that does not fit its frame
(#1471), a tab stop in the Tabs panel drags from where the press landed
(#1458); M9: 3D and Materials on outlined type and other shapes of many
small curves (#1481), Twist 0° to 360° (#1524), twisted walls keep their
faces (#1525); print-size images draw, export and crop (#1517),
stylo-cli perf reports load and memory on Windows (#1502);
sliders in dialogs show their rail (#1483), a template layer stays in
Preview in Outline view (#1486), French catalog complete again (#1511),
a Hungarian message in the informal address (#1474);
graph.setData's CSV keeps each value exactly (#1485);
estimates unchanged |
| 2026-10-12 | minor | Width Point Edit: Shift-double-click enables adjoining adjustment; plain double-click keeps it off; scores and hours unchanged |
| 2026-10-12 | minor | Exchange with Illustrator users: Save As .ai › Version:
Legacy (version 7) keeps layers, groups and type as text, one artboard
per file (#868); estimate unchanged until users test it |
| 2026-10-13 | minor | M6: Split Into Grid has its documented options (#1462), the
Pathfinder panel works on a group selected alone (#1450); M2: Transform
Objects in the Transform dialogs and Transform Each, Reflect across an
angle (#1448, #1460); M4: grayscale TIFFs with an alpha channel or extra
channels place (#1466 in part), strokes kept apart from a faded or
masked fill on PDF and .ai import (#1434), SVG knockout
groups without masks (#1435); M7: Fit Headline in a frame one line tall
(#1444), frames beyond a billion points hold no text (#1451); M13:
commands refuse a parameter key they don't take (#1442); M5: edits and
Alt-drags of thousands of objects (#1429 in part); M14: a focused field
follows its value (#1457), selected text in value fields is readable
(#1465 in part), a window surface past 8192 px no longer closes the app
(#1459 in part); estimates unchanged |
| 2026-10-12 | minor | TIFF is available in Export for Screens and Asset Export with shared format settings; scores and hours unchanged |
| 2026-10-12 | minor | Character styles retain explicit Auto leading, propagate resets and preserve local leading overrides; scores and hours unchanged |
| 2026-10-12 | minor | M9: Extrude & Bevel, Inflate and Rotate (initial 3D types, three-d.md) |
| 2026-10-12 | minor | M4: a .ai compound path takes its last path's paint
(#1410), PDF and .ai import keep overprint (#1388), a
.ai whose PDF part draws only text opens from it (#1387);
M2: the Transform dialogs preview and step with the arrow keys (#1412),
the transform tools and commands act on direct-selected anchors (#1408),
the bounding box hides during a corner drag (#1229); M5: a stroke wider
than its closed shape paints solid on the canvas (#1396); estimates
unchanged |
| 2026-10-12 | minor | M4: .ai editing data follow-ups to #1264 (gradient
stops #1390, type placement #1391, short area-type frames #1392) and PDF
bleed with editing data (#1379); M14: dialogs take the keyboard focus on
every open (#1367, #1395); M5: symbol instance art kept between frames
(#1386); M7: characters no font had are looked for again after a font
rescan (#1376); estimates unchanged |
| 2026-10-12 | minor | M4: gradient-filled shapes from a PDF or .ai open as
paths (#1304); constant alpha soft masks export white (#1286, in part);
M2: a Direct Selection click on a Live Corners widget selects its corner
(#1239); estimates unchanged |
| 2026-10-12 | minor | M2: custom ruler origin (#1212), with drag preview, active-artboard reset, relative X/Y and native round-trip; remaining ruler modes and estimates unchanged |
| 2026-10-12 | minor | M11: Artboard object clicks create a fitted artboard (#1227); estimate unchanged |
| 2026-10-12 | minor | Pathfinder single-result booleans preserve source names and SVG IDs (#1293); paint-order, grouped/compound sources, unchanged geometry/appearance and Undo/Redo regression tests; scores and estimates unchanged |
| 2026-10-12 | minor | DXF reads control-point SPLINE closure (#1299 follow-up after #1320); open curves stay open and curves retained; rational/non-rational import and export versions regression-tested; scores/hours unchanged |
| 2026-10-11 | minor | Czech render-site follow-up: file-dialog filters, diagnostics, preset numbering, contributor tooltips/plurals, gradient grammar and contextual printer mark styles; estimates unchanged |
| 2026-10-12 | minor | Document Setup: Edit Artboards closes the modal after applying valid settings; pointer-click regressions; scores and hours unchanged |
| 2026-10-12 | minor | Artboards: Escape exits editing; an active drag cancels first; shortcut-routing regression; scores and hours unchanged |
| 2026-10-12 | minor | M6: Simplify preview/counts and valid selection after topology changes (#1272); auto/slider/advanced UI remains open; estimates unchanged |
| 2026-10-12 | minor | G2: Artistic › Film Grain added with live controls and raster exports; measured Photoshop filters 29/57, 28 remaining (23–39 h). |
| 2026-10-12 | minor | M14: RPM runtime dependencies use shared-library capabilities and glibc 2.35 (#1275); metadata verified, distro QA pending; estimates unchanged |
| 2026-10-12 | minor | M5: squared-distance texture redraws (#1257); clean-machine/platform drag measurements still pending; estimates unchanged |
| 2026-10-12 | minor | M2: Curvature point display improved (#1236, in part); existing-path interpolation unchanged; estimates unchanged |
| 2026-10-12 | minor | M7: full-name font matching and Missing Fonts searches (#1258); Windows font-service QA pending; estimates unchanged |
| 2026-10-12 | minor | M1: repeated or rounding-only anchor Align preserves Undo, Redo and saved state (#1180 follow-up); estimate unchanged |
| 2026-10-12 | minor | M14: Eyedropper cursor distinguished from its precise crosshair (#1269); estimates unchanged |
| 2026-10-12 | minor | M3: Eyedropper reads visible locked and outside-isolation sources (#1251); estimates unchanged |
| 2026-10-12 | minor | M2: independent segment selection/display and geometry-preserving Delete (#1278); estimates unchanged |
| 2026-10-12 | minor | M3: adding paint to an unpainted zero-width stroke restores 1 pt (#1253); estimates unchanged |
| 2026-10-11 | minor | M12: the Graph Data worksheet. Scores/hours unchanged. |
| 2026-10-11 | minor | M12: graph label formatting kept through regeneration. Scores/hours unchanged. |
| 2026-10-11 | minor | M12: Graph Type's widths past 100%, First Row/Column in Front, Draw Filled Lines. Scores/hours unchanged. |
| 2026-10-11 | minor | M12: Graph Type's Add Drop Shadow and Add Legend Across Top. Scores/hours unchanged. |
| 2026-10-11 | minor | M12: Graph Data's Transpose and Switch x/y, ` |
| 2026-10-11 | minor | M12: Object › Graph › Design… and Marker… (graph designs, marker designs); column designs remain. Scores/hours unchanged. |
| 2026-10-12 | minor | M14: native macOS save Format menu (#866); filename regression tests, actual SVG save and PDF selection/cancel verified; estimates unchanged |
| 2026-10-12 | minor | M6: compound paths inherit the backmost appearance; selected members read and change the compound fill rule (#1197); estimates unchanged |
| 2026-10-12 | minor | M6: Divide accepts open cutting paths (#1307), preserving filled-face appearance and Undo; the existing segment cap remains; estimates unchanged |
| 2026-10-12 | minor | M14: numeric-field focus and text-drag selection regression-tested (#1326, in part); estimates unchanged; short movements below the click threshold remain open |
| 2026-10-11 | minor | M9: PDF raster-effect resolution-cap warnings verified with real capped/uncapped exports; scores and hours unchanged |
| 2026-10-11 | minor | #893 (Shape Builder seams on grids of lines) fixed; G11 keeps #937 and its 8–15 h |
| 2026-10-10 | minor | M7: document-point character sizes, leading and baseline shift, and resettable horizontal stretching after object/group scaling (#1034). Optional group font-size preservation remains separate; scores/hours unchanged. |
| 2026-10-10 | minor | M9 row from main: initial Revolve |
| 2026-10-10 | minor | Added the Alpha gate table (core-workflow gate): all six workflows
work end to end, .ai exchange partial but not blocking;
stage stays alpha |
| 2026-10-10 | major | Created from ROADMAP.md's milestone table and "Where we're going"; added Current focus and the beta list |
Tab-drag status (2026-10-22): updated from upstream, including the Turkish catalog and all three tab-drag translations requested in #3479; Selection-tool reset regression-checked and clipboard evidence scoped to internal state; drag lifecycle, insertion and regression contracts documented; behavior, scores and estimates unchanged.
| Date | Change | Tab-drag history |
|---|---|---|
| 2026-10-22 | minor | Verify Selection-tool reset after tab activation, drop and cancellation; narrow clipboard evidence to the tested internal clipboard and correct documentation grammar; behavior, scores and estimates unchanged. |
| 2026-10-22 | minor | Merge current main and complete the Turkish tab-drag labels and validation messages requested by the maintainer; all 24 catalogs covered; scores and estimates unchanged. |
| 2026-10-22 | minor | Tab-drag follow-up: reconcile upstream progress updates and document drag lifecycle, insertion behavior and regression contracts; behavior, scores and estimates unchanged. |
| 2026-10-22 | minor | Artwork dragged with Selection switches visible document tabs after a 400 ms hover, then copies editable artwork on canvas release; source and clipboard stay intact; scores and hours unchanged |