Port the pen-ai-skills diagnostics layer to a new pure Rust crate `op-design-lint`: 14 design-lint detectors, the detect_all aggregator, apply_fixes / detect_and_fix, and golden parity tests against the TS oracle. Wire it into op-mcp as the read-only debug_validation_report tool, gated by OPENPENCIL_DEBUG_TOOLS=1. Detectors: empty_paths, unexpected_rotation, excessive_frame_effects, invisible_containers, text_explicit_heights, text_effect, text_corner_radius, text_stroke, text_bg_contrast, edge_section_padding, stacked_horizontal_padding, sibling_inconsistencies (+ check_consistency), detect_all. Also includes: node_util shared helpers + pen-core color/visibility ports, node_mut field accessors, set_property issue->node mutation dispatch, golden fixture corpus + TS dump script, structural-parity test, a CI golden-drift guard, and the gitignore fix so the fixture docs/ dir is tracked. This branch's per-commit history was squashed: the original 28 commits carried fabricated timestamps and could not be honestly reconstructed, so the work is recorded as a single commit at its real completion time.
18 lines
505 B
TOML
18 lines
505 B
TOML
[package]
|
|
name = "op-mcp"
|
|
version.workspace = true
|
|
edition.workspace = true
|
|
rust-version.workspace = true
|
|
license.workspace = true
|
|
description = "OpenPencil MCP server — JSON-RPC tool registry over op-editor-core EditorState / EditorCommand"
|
|
|
|
[lib]
|
|
name = "op_mcp"
|
|
path = "src/lib.rs"
|
|
|
|
[dependencies]
|
|
jian-ops-schema = { path = "../../vendor/jian/crates/jian-ops-schema" }
|
|
op-design-lint = { path = "../op-design-lint" }
|
|
op-editor-core = { path = "../op-editor-core" }
|
|
serde_json = { workspace = true }
|