v0.7.3-enhance
Pre-release
Pre-release
Summary
v0.7.3 introduces incremental "append mode" for AI design generation — when the user
asks the AI to add content to an existing canvas, the planner now detects append intent and
reuses the current content root instead of redrawing from scratch. Also ships local OS
font support via the Local Font Access API with vector rendering, a design.md-driven
background/sidebar theming pipeline, and a handful of editor, CLI, and cross-platform
fixes.
Changes
AI / design generation
feat(ai): append-mode detection beforegenerate_designdispatch —
detectAppendIntentparses continue/append prompts against the active pagefeat(ai): sub-agent preamble describes existing sibling sections so added nodes
integrate seamlesslyfeat(ai): planner reuses existing content-root in append mode instead of creating a new
root framefeat(ai):applyAppendContextToPlanhelper wires context into the orchestrator planfeat(types):AppendContext+SubTask.existingSectionLabelsfeat(ai): design.md-driven background + sidebar color pipeline; auto-derives neutral
page background when design.md has no explicit background rolefix(ai): stop white section bands on dark-themed pagesdocs(ai): horizontal scroll card-row pattern taught to the generation phase;
overflow.mdexample fleshed out
Fonts
feat(renderer): enable local OS fonts with vector rendering via the Local Font Access
API; includes permission handling (prompt/granted/denied/unavailable),
canvas-width heuristic for unknown local fonts, and blob-based registration into CanvasKit
(#110)
Editor
fix(canvas): render synchronously on resize to prevent a one-frame white flash when
RightPanelmounts on the first selection after idlefeat(editor):Cmd/Ctrl+Vnow pastes into the selected container (if it can hold
children) or immediately after the selected node as a sibling, falling back to the root
when nothing is selected
CLI / cross-platform
fix(mcp): on Windows, run the Codex CLI throughexecSyncso PATHEXT resolves
.cmd/.exe/.ps1shims (works around Node 18.20/20.12execFileSyncEINVAL from
CVE-2024-27980)
Code hygiene
style: apply oxfmt formatting drift across web, renderer, and AI modulesstyle(lint): clear 22 oxlint warnings (useless spread fallbacks, useless spread into
arrays, control-char regex →\P{ASCII}, unused catch params / imports, unnecessary
escapes,new Array(n).fill) — repo now lints with 0 warnings, 0 errorschore: ignore.omx/build artifact directory
Related Issues
- Merges #110 (local OS fonts with vector rendering and permission handling)
Type
-
feat— New feature -
fix— Bug fix -
refactor— Code refactoring (no behavior change) -
docs— Documentation
Checklist
-
npx tsc --noEmitpasses -
bun --bun run testpasses — 1515 tests inapps/web+ 47 inpackages/pen-mcp,
all green - No unrelated changes included
- Commit messages follow Conventional Commits
-
bun run lint— 0 warnings, 0 errors (added as a bonus of this rollup)
What's Changed
- Enable local OS fonts with vector rendering and proper permission handling by @1MochaChan1 in #110
New Contributors
- @1MochaChan1 made their first contribution in #110
Full Changelog: v0.7.2...v0.7.3