openpencil/crates
Fini 5d015ee570 feat(orchestrator): op-orchestrator crate — S3a design orchestrator
New crate restoring the design orchestrator (TS orchestrator.ts
phases 1-4, single-screen sequential) that the Rust migration
dropped. Pure crate — no winit/casement/agent dependency.

- types.rs: DocSink + LlmClient traits, CallRequest/LlmChunk/
  Progress/RunSummary and friends
- intent.rs: classify_intent (design vs chat)
- plan.rs: OrchestratorPlan parse + heuristic fallback
- parse.rs: LLM output -> canonical PenNode trees
- plan_normalize.rs: single-screen plan normalization
- variables.rs: plan-derived $color-* seed/snapshot/rollback
- prompt.rs: planning + sub-agent prompt assembly via op-ai-skills
- scaffold.rs: single-screen canvas scaffold (InsertSubtree)
- subagent.rs: sequential sub-agent execution
- cleanup.rs: descendant_count + run_cleanup_passes (reusable for S3b)
- run.rs: Orchestrator::run() — 4-phase spine, spec §6 error/abort/
  zero-content semantics
- test_support.rs: VecDocSink + ScriptedLlm test stubs

NOT verified locally: op-orchestrator depends on op-editor-core,
which does not currently build — vendor/jian is pinned to unpushed
commit 80121906 (see prior commit). Unit tests written throughout;
they run once the jian build is restored.

S3a Plan B + Plan C (orchestrator modules).
2026-05-22 22:56:11 +08:00
..
op-acp style: clear clippy lints for the workspace -D warnings gate 2026-05-17 23:12:16 +08:00
op-ai feat(ai): chat image attachments + per-provider thinking/effort 2026-05-17 22:44:28 +08:00
op-ai-skills style: clear clippy lints for the workspace -D warnings gate 2026-05-17 23:12:16 +08:00
op-app refactor(rust): add op-app composition-root crate 2026-05-16 23:57:03 +08:00
op-cli feat: close six TS-parity gaps in the Rust shell 2026-05-17 13:03:11 +08:00
op-codegen feat(editor): add Design-MD panel and complete i18n coverage 2026-05-19 22:29:22 +08:00
op-editor-core feat(editor): EditorCommand::InsertSubtree — nested PenNode subtree insert 2026-05-22 22:56:10 +08:00
op-editor-ui feat(editor): EditorCommand::InsertSubtree — nested PenNode subtree insert 2026-05-22 22:56:10 +08:00
op-figma feat(editor): add Design-MD panel and complete i18n coverage 2026-05-19 22:29:22 +08:00
op-git feat(editor): EditorCommand::InsertSubtree — nested PenNode subtree insert 2026-05-22 22:56:10 +08:00
op-host-desktop feat(editor): EditorCommand::InsertSubtree — nested PenNode subtree insert 2026-05-22 22:56:10 +08:00
op-host-native feat(editor): EditorCommand::InsertSubtree — nested PenNode subtree insert 2026-05-22 22:56:10 +08:00
op-host-web feat(editor): EditorCommand::InsertSubtree — nested PenNode subtree insert 2026-05-22 22:56:10 +08:00
op-i18n feat(editor): EditorCommand::InsertSubtree — nested PenNode subtree insert 2026-05-22 22:56:10 +08:00
op-mcp feat(editor): EditorCommand::InsertSubtree — nested PenNode subtree insert 2026-05-22 22:56:10 +08:00
op-opmerge feat(editor): EditorCommand::InsertSubtree — nested PenNode subtree insert 2026-05-22 22:56:10 +08:00
op-orchestrator feat(orchestrator): op-orchestrator crate — S3a design orchestrator 2026-05-22 22:56:11 +08:00
op-pen-loader feat(editor): EditorCommand::InsertSubtree — nested PenNode subtree insert 2026-05-22 22:56:10 +08:00
wasm-libc-shim fix: clear clippy -D warnings across the workspace 2026-05-17 01:26:29 +08:00
CLAUDE.md docs: fix stale i18n + renderer paths flagged by Codex review 2026-05-16 15:45:54 +08:00