Skip to content

feat(zenith-cli,zenith-render): add SVG exports and prepare 0.0.10 - #5

Merged
farhan-syah merged 22 commits into
mainfrom
release/0.0.10-readiness
Oct 8, 2026
Merged

farhan-syah merged 22 commits into
mainfrom
release/0.0.10-readiness

Conversation

@farhan-syah

Copy link
Copy Markdown
Member

Add deterministic SVG exports from editable .zen documents and prepare version 0.0.10. Export reports expose raster fallbacks, resource errors, and actual committed files.

Changes

  • zenith-render/: Add self-contained SVG with outlined text. Preserve PDF compositing, gradients, bitmap glyphs, imported SVG appearance, image crops, alpha, dashes, and glyph strokes.
  • zenith-render/src/pdf/report.rs: Add strict export reports and numeric checks. Preserve legacy Vec<u8> APIs. Check actual raster capture scale, placement, and transforms before allocation.
  • zenith-cli/: Add CLI/MCP SVG rendering, CLI merge/variant SVG, and MCP merge SVG. Separate PNG scale from SVG/PDF fallback resolution. Check MCP render arguments before side effects.
  • zenith-cli/src/output_file/: Protect source inputs and export destinations against collisions. Preserve existing files on replacement errors. Report committed paths, partial rows, and manifest errors.
  • zenith-cli/assets/: Update bundled skills and Claude commands. Make single-file agent rules self-contained. Document forced upgrades and operation-specific MCP document requirements.
  • Cargo.toml, npm metadata, and server.json: Align version 0.0.10 and internal dependency pins. Require Rust 1.95. Update release dependency order and archive checks. Keep the version bump as the final branch commit.

SVG text uses outlines. Raster captures lose text selection, search, and link targets. Protected writes provide no batch rollback or crash durability guarantee.

Checks

All 4,471 workspace tests pass. All six CI jobs pass on 8e4a4c5732602aaa0104f23f1d171a005a8468f5, including Linux, macOS, and Windows.

cargo fmt --all --check
cargo build --workspace --all-features --locked
cargo test --workspace --all-features --locked
cargo clippy --workspace --all-targets --all-features --locked -- -D warnings
RUSTDOCFLAGS='-D warnings' cargo doc --workspace --all-features --locked --no-deps
cargo +1.95.0 check --workspace --all-targets --all-features --locked --target-dir target/msrv-baseline
cargo package --workspace --all-features --locked --allow-dirty --target-dir target/release-readiness
python3 scripts/check-release-packages.py target/release-readiness/package

Twelve release archives and 1,796 bundled assets pass. Packaged plugin installs pass for all twelve agents. Eight default SVG/PDF outputs match published 0.0.9 bytes. npm pack dry-run passes with a temporary cache.

@farhan-syah
farhan-syah merged commit a3bac4c into main Oct 8, 2026
6 checks passed
@farhan-syah
farhan-syah deleted the release/0.0.10-readiness branch October 8, 2026 20:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant