Stage 2 完遂 — WorkFlowy → Vault Phase 1 移行完了
Status¶
completed (2026-05-22)
Context¶
Stage 1 系列(2026-05-18 〜 2026-05-22)で KUDO-Vault の健全化フェーズが完遂し、Vault canonical 化 + scan/batch インフラ層が永続化された。続く Stage 2 は kudo-triple-store-write v1.0 #migration-roadmap に従い、WorkFlowy 単独運用(Phase 0)から dual-write + Vault 優先化(Phase 1) へ移行する作業:
- 新規 ADR / insight 蓄積は Vault が第一選択
- 案件別ダイジェストの書込先を WorkFlowy → Vault
logs/に切替(dual-write 期間中は WorkFlowy 並行書込継続) - 状態再構成プロトコルの優先順位を Phase 1 仕様に更新
- Cowork 夜間バッチの prompt を dual-write 対応版に書き換え
着手前に Code が 環境マトリクス実機検証 を実施した結果、Stage 2-A / 2-B / 2-C / 2-E が Cowork 専用 MCP に依存することを発見(Watchlist Entry #20 起点)。Cowork ハンドオフ + Code 並行 の分担で進行。
Decision¶
Stage 2 系列を WorkFlowy → Vault Phase 1 移行完了 として正式クローズ。dual-write 期間(2026-05-22〜)を開始。Phase 2(WorkFlowy 完全廃止)判定は dual-write 期間 1-2 週間後の運用観察を経て実施。
Stage 2-A サマリ:WorkFlowy 過去ダイジェスト一括取込¶
実行:Cowork セッション
対象:WorkFlowy「過去生成ログ」(ID 54f53941-7c30-350f-1845-6e5a536ad348)配下の全ダイジェストノード
結果:19 件 を Vault logs/2026/04/ + logs/2026/05/ に複製完了
- 4 月分:11 件(
2026-04-20-project-digest.md〜2026-04-28-project-digest.md) - 5 月分(Run now 以前):8 件(
2026-05-07-cowork-log.md〜2026-05-18-cowork-log.md) - WorkFlowy 側は無変更(複製のみ・読み取り操作)
- 取込スクリプト
workflowy_to_vault_logs.pyv1.0 を Cowork が起草、Code が Stage 2-F-1 で~/.claude/scripts/に移設(再実行可能)
Code commit: 830834d
Stage 2-B サマリ:scheduled-tasks dry-run draft¶
実行:Cowork セッション
dry-run 配置:~/working/_claude_workspace_global/handoffs/scheduled-tasks-phase1-rewrite-dry-run.md
- 初期抽出時 20 件 が WorkFlowy 関連と判定 → Cowork 精査後 2 件 に絞り込み(daily-chat-digest-2330 / daily-chat-digest-0800-backup)
weekly-review-sunday-2100は type が daily-digest 系統でないため対象外(01-Projects/経路で別 Stage 扱い)- Chat 承認の上で本番反映へ
Stage 2-C サマリ:scheduled-tasks 本番反映¶
実行:Cowork セッション(Chat 承認後) 対象:2 件(daily-chat-digest-2330 / daily-chat-digest-0800-backup) 改訂:v2.1 → v2.2(dual-write 追加・完全 additive)
- ADR:
memory/decisions/2026-05-22-stage-2-scheduled-tasks-rewrite.md配置 - 旧 prompt verbatim を ADR 末尾に保存(rollback 可能性確保)
- Vault 書込は obsidian MCP(vault_write)依存 — 夜間バッチに obsidian 未接続時の Step 5.5/7.5 空振りリスクは Stage 2-E で検証
Code commit: fc1e7d5
Stage 2-D サマリ:スキル 3 件改訂(Code 担当)¶
| # | スキル | 改訂 | commit |
|---|---|---|---|
| 1 | kudo-workflowy-double-save | v3.3 → v3.4 | c5d35d3 |
| 2 | kudo-project-state-recovery | v1.5 → v1.6 | 350ebf0 |
| 3 | kudo-triple-store-write | v1.0 → v1.1 | 700dd3c |
主要変更:
- v3.4:§3 読込先優先順位を Phase 1 仕様に更新(Vault logs/ を優先度 2 昇格・WorkFlowy 優先度 3 降格)、§3-x dual-write 運用節新設
- v1.6:§1 状態再構成の優先順位を 8 段階に再構成、§6 失敗パターン記録に「Phase 1 dual-read リスク」追加
- v1.1:§3 migration-roadmap の Phase 0 完了表記 + Phase 1 進行中 + サブタスク実装状態テーブル新規
加えて、Stage 2-D-2 として logs/ フォルダ構造 + logs/README.md 配置(commit be0e000)。
Stage 2-E サマリ:Run now 即時検証成功¶
実行:Cowork セッション(2026-05-22 夜・scheduled tasks の Run now 機能経由)
結果:dual-write 両系統(WorkFlowy + Vault logs/)の実機書込み動作確認 成功
2026-05-22-cowork-log.mdが Vaultlogs/2026/05/に正常書込(frontmatter:project: Coworkログ/source: cowork-batch/related_workflowy_node: da3ff3ba-...)- WorkFlowy「過去生成ログ」配下にも同日付ダイジェストノードが書込(dual-write 並行動作確認)
- 高密度商談日(ライフネット / スニダン / 三重衝突)+ Stage 2 Phase 1 移行完遂が verbatim で記録
Code commit: 05bbd17
Stage 2-F サマリ:Code 担当残件完遂(本 Stage)¶
| # | タスク | commit |
|---|---|---|
| 2-F-1 | workflowy_to_vault_logs.py を ~/.claude/scripts/ に移設 + chmod +x |
(~/.claude/scripts/ は git 外・移設のみ) |
| 2-F-2 | Vault git commit + push(3 分割) | 830834d / fc1e7d5 / 05bbd17 |
| 2-F-3 | kudo-cowork-code-handoff-protocol v1.13 → v1.14 + §0 環境マトリクス検証チェックリスト追加 | 26501ad |
| 2-F-4 | 本 ADR 配置 | (本 commit) |
| 2-F-5 | 個人設定 v5.3 ドラフト配置 | ~/working/_claude_workspace_global/handoffs/personal-settings-v5.3-draft.md |
| 2-F-6 | 最終総括報告配置 | ~/working/_claude_workspace_global/reports/stage2-complete-2026-05-22.md |
認知ズレ Entry #20 永続化との連動¶
Stage 2 着手時、Watchlist Entry #20 を永続化(commit 0595626):
- 主題:Chat 指示書設計時の環境非対称性見落とし
- 規範:複数 Stage 跨ぎの指示書を書く際、各タスクが必要とする MCP を明示し、§16-3 環境マトリクスで事前検証する
- 昇華:Cowork のメタ提案(request_cowork_directory 到達性検証 / アプリ内部パス回避)を統合し、本日 Stage 2-F-3 で kudo-cowork-code-handoff-protocol v1.14 §0 として構造化
これにより、Entry #20 個別事案 → §0 着手前検証プロトコルの組織的予防策へと進化した。今後の全 Stage 指示書は §0 4 項目チェックリストの完了を前提とする。
dual-write 期間中の運用方針¶
| 項目 | 内容 |
|---|---|
| 期間 | 2026-05-22 〜 暫定 1-2 週間(工藤氏判断で延長可) |
| 書込先 | WorkFlowy「過去生成ログ」+ Vault logs/YYYY/MM/ 両方 |
| 整合性チェック | 週次月曜朝(scan_dual_write_integrity.py 候補・未実装) |
| rollback 基準 | 1 週で 3 件以上の不整合検出 → Phase 1 → Phase 0 戻し |
| Phase 2 移行判定基準 | kudo-workflowy-double-save v3.4 §3-x 参照(4 週連続不整合 0 + Vault 書込頻度同等以上 + 工藤氏 WorkFlowy 閲覧ほぼなし) |
翌日以降の要対応案件(Phase 1 移行とは独立)¶
Stage 2-E 期間中に Cowork が発見した scheduled-tasks 系統のメンテ事案:
- morning-briefing-0500 連続失敗:本体タスクが連続失敗状態。バックアップが起動して救済している。Code 側で恒久改修が必要(別 Stage 候補)
- daily-todo-alert(16:30)WF ノード未検出問題:検索ロジック改修候補(別 Stage 候補)
これらは Phase 1 dual-write 移行とは独立した課題で、Stage 1-E で別 Stage 化した「Tier A 規律 / P3 段階解消」と合わせ、Stage 2 完遂後の 保守対応キュー として記録。
Phase 2 移行判断の基準(再掲)¶
kudo-workflowy-double-save v3.4§3-x を一次ソースとして以下のすべてを満たした時点で Phase 2 移行 ADR 起票:
- 4 週連続で WorkFlowy ⇔ Vault
logs/不整合 0 件 - Vault
logs/への書込頻度が WorkFlowy と同等以上 - Vault
_MOC.mdへの AI/Code 書込が定常化 - 工藤氏が WorkFlowy アプリを能動的に開く頻度が「ほぼなし」状態
Phase 2 で kudo-workflowy-double-save が deprecated 化、kudo-project-state-recovery v1.7 で優先度 3(WorkFlowy)が削除される予定。
累計 commit(Stage 2 系列・Code + Cowork 横断)¶
| Stage | 担当 | commit 数 |
|---|---|---|
| Stage 2-A | Cowork | 1 件(Vault 取込 19 件は 1 commit に集約・Code 2-F-2 で commit) |
| Stage 2-B | Cowork | 0 件(dry-run draft は handoffs/ 配置のみ) |
| Stage 2-C | Cowork | 1 件(scheduled-tasks 反映の ADR・Code 2-F-2 で commit) |
| Stage 2-D | Code | 4 件(skill 3 件改訂 + logs/ 構造) |
| Stage 2-E | Cowork | 1 件(Run now 検証ログ・Code 2-F-2 で commit) |
| Stage 2-F | Code | 5 件(F-2 内 3 件 + F-3 + F-4 + 後続 F-5/F-6) |
| 累計 | Stage 2 のみ | 約 12 件(Stage 1 累計 70 + Stage 2 = 約 82 件) |
Stage 2 完遂。Vault が WorkFlowy と並走する dual-write 期間が開始。Phase 2 移行判断に向けて、1-2 週間の運用観察フェーズに入る。