From 7159a66a600eb5727c3b043329ac36edbd92af8b Mon Sep 17 00:00:00 2001 From: Hare Date: Mon, 11 May 2026 22:49:50 +0900 Subject: [PATCH] review: workflow crate extraction --- tickets/workflow-crate-extraction.md | 5 ++++ tickets/workflow-crate-extraction.review.md | 29 +++++++++++++++++++++ 2 files changed, 34 insertions(+) create mode 100644 tickets/workflow-crate-extraction.review.md diff --git a/tickets/workflow-crate-extraction.md b/tickets/workflow-crate-extraction.md index ea360f53..45e0b49b 100644 --- a/tickets/workflow-crate-extraction.md +++ b/tickets/workflow-crate-extraction.md @@ -66,3 +66,8 @@ memory crate のドメインは「decisions / requests / summary / knowledge / s - 直前: `tickets/workflow-directory-layout.md`(git log) - 後続: `tickets/internal-worker-workflow.md` - 関連: `docs/plan/workflow.md` + +## レビュー状態 + +- `7db4146 refactor: extract workflow crate` を review 済み。結果は `tickets/workflow-crate-extraction.review.md`。 +- 判断: approve / merge 可。 diff --git a/tickets/workflow-crate-extraction.review.md b/tickets/workflow-crate-extraction.review.md new file mode 100644 index 00000000..3573a6ba --- /dev/null +++ b/tickets/workflow-crate-extraction.review.md @@ -0,0 +1,29 @@ +# Review: Workflow crate extraction + +## 対象 + +- Ticket: `tickets/workflow-crate-extraction.md` +- Branch: `workflow-crate-extraction` +- Reviewed commit: `7db4146 refactor: extract workflow crate` + +## 確認内容 + +- `crates/workflow/` が workspace member として追加され、Workflow loader / registry / frontmatter schema / Skill ingestion / human-edit linter / workflow scope deny helper を持つ。 +- `WorkflowRecord`, `WorkflowRegistry`, `WorkflowSource`, `WorkflowLoadError`, `ResidentWorkflowEntry`, `ShadowedSkill`, `WorkflowFrontmatter`, `SkillRecord`, `load_workflows`, `load_skills_from_dir` は `workflow` crate から export される。 +- workflow crate は memory crate へは `WorkspaceLayout` のためだけに依存している。Workflow 用 slug / lint error / frontmatter split は workflow crate 側に持ち、memory crate の workflow-specific API へ依存していない。 +- memory crate から `workflow.rs`, `skill.rs`, `schema/workflow.rs` と re-export が削除されている。 +- memory linter から `lint_workflow` が削除され、human-edit workflow linter は `workflow::WorkflowLinter` に移っている。 +- memory scope deny は memory / knowledge のみを表明し、workflow crate が `.insomnia/workflow/` の deny を表明する。Pod 起動時に両方を合成している。 +- pod 側の Workflow registry / resident workflow / Skill ingestion / system prompt rendering / workflow resolver は `workflow_crate` を直接 import する形に更新されている。 +- ticket 範囲外の Workflow schema 変更、resolver 機能変更、bundled default Workflow、reasoning / prune 変更は入っていない。 + +## 検証 + +- `cargo test -p workflow -p memory -p pod` passed +- `cargo fmt --check` failed due existing unrelated rustfmt diffs in `llm-worker`, `session-store`, and `tui`; this ticket's changed files were formatted directly with `rustfmt --edition 2024`. + +## 判断 + +Approve. + +Workflow domain code is now isolated in `crates/workflow/`, memory no longer re-exports or owns Workflow / Skill modules, and scope deny composition is explicit between memory and workflow. The remaining dependency on memory is limited to `WorkspaceLayout`, matching the ticket's allowed design point.