Appearance
Wiki MVP 振り返り
Notion 作業記録 → VitePress Wiki の概念実証(MVP)を完了した時点での振り返りです。
実績サマリー
| 指標 | 数値 |
|---|---|
| 総記事数 | 183 ファイル(10 カテゴリ) |
| 画像アセット | 4,002 ファイル(Git LFS / 1.35 GB) |
| ビルド時間 | 約 19 秒 |
| デプロイ(CI 全体) | 約 2 分 |
| LKG カテゴリ再構成 | 39 記事 → 15 記事 |
| コミット数 | 6 |
評価:うまくいった点
1. 技術選定
| 選択 | 理由 | 結果 |
|---|---|---|
| VitePress | Markdown ベースで開発者親和性が高い | ビルド 19 秒、サイドバー自動生成が便利 |
| Cloudflare Pages | 無料、Private リポジトリ対応、CDN 高速 | デプロイ安定、表示速度良好 |
| GitHub Actions | push で自動デプロイ | 設定 1 ファイルで完結 |
| Git LFS | 4,000 枚の画像を通常 Git で管理不可 | 問題なく動作 |
2. AI による記事再構成の有効性
LKG カテゴリで実証:
- 39 本の日次作業ログ → 15 本のテーマ別技術記事に統合
- 散在していた知見が 1 箇所にまとまり、検索性・可読性が大幅向上
- AI 補完セクションで背景知識を補い、初学者にも理解しやすい構成に
- 原文の技術的知見(コード、設定値、ベンチマーク結果)は保持
3. 運用コスト
- ホスティング費用:0 円(Cloudflare Pages 無料枠)
- ドメイン費用:0 円(
xseeds-wiki.pages.dev) - CI/CD 費用:0 円(GitHub Actions 無料枠)
懸念点・リスク
🔴 高リスク
1. 残り 9 カテゴリが未整理
再構成したのは LKG(1/10 カテゴリ)のみです。残り 168 記事は Notion エクスポートのまま(日次ログ形式)で、Wiki としての品質にばらつきがあります。
対応案: カテゴリごとに優先度をつけて段階的に整理。記事数の多い ar-vr(62 件)、projects(44 件)から着手すると効果が大きいです。
2. AI 補完内容の正確性が未検証
AI が追加した技術補足(:::tip AI補完)は、事実確認を経ていません。SDK バージョン、API 仕様、ベストプラクティスなどに誤りが含まれる可能性があります。
対応案: 各記事の原著者がレビューする運用を設ける。frontmatter に reviewed: false フラグを追加し、レビュー済みかどうかを管理します。
3. Notion との同期パイプラインが未構築
現状、Notion → Wiki の同期は完全手動です。Notion 側で記事が更新されても Wiki には反映されません。
対応案:
- 短期: 必要に応じて Claude Code で手動変換(現在の運用)
- 中期: Notion API + GitHub Actions で定期同期
- 長期: Notion Integration Token + Anthropic API で自動 PR 生成
🟡 中リスク
4. Git LFS の容量制限
GitHub の Git LFS 無料枠は 1 GB ストレージ / 1 GB 帯域(月) です。現在 1.35 GB で既に超過しています。CI のビルドのたびに LFS 帯域を消費します。
対応案:
- GitHub の Data Pack($5/月で 50 GB)を購入
- 画像を外部ストレージ(Cloudflare R2 等)に移行
- 画像を WebP に変換してサイズ削減
5. 検索品質
VitePress のローカル検索(miniSearch)は日本語の形態素解析に対応していません。「キルト画像」で検索しても「キルト」単体ではヒットしない場合があります。
対応案:
- Algolia DocSearch(無料 OSS プログラム)の導入
- pagefind(Rust 製、日本語対応あり)への切り替え
6. ignoreDeadLinks: true が有効
config.mts で ignoreDeadLinks: true が設定されており、リンク切れがビルドエラーにならないです。ファイル削除時にリンク切れが気づかれず残る可能性があります。
対応案: 再構成が全カテゴリ完了したら ignoreDeadLinks: false に戻し、CI でリンク切れを検出します。
🟢 低リスク
7. frontmatter の一貫性
LKG の 14 記事中 4 記事で ai_enhanced フィールドが欠落しています。記事によって frontmatter のスキーマが統一されていないです。
対応案: frontmatter のスキーマを定義し、lint スクリプトで検証。
8. アクセス制御
Cloudflare Pages はデフォルトで公開です。社内情報を含む場合、Cloudflare Access で認証を追加する必要があります。
対応案: Cloudflare Access(無料枠 50 ユーザー)でメール認証を設定。
次のアクション(推奨優先順位)
| 優先度 | アクション | 工数目安 |
|---|---|---|
| ★★★ | 残り 9 カテゴリの再構成 | 各カテゴリ 1〜2 時間 |
| ★★★ | AI 補完内容のレビュー体制構築 | 0.5 時間 |
| ★★☆ | Git LFS 容量対策 | 1 時間 |
| ★★☆ | Cloudflare Access でアクセス制限 | 0.5 時間 |
| ★☆☆ | 日本語検索の改善 | 2 時間 |
| ★☆☆ | Notion 同期パイプライン構築 | 3〜4 時間 |
| ★☆☆ | frontmatter lint 導入 | 1 時間 |
総評
MVP として「Notion の作業記録を Wiki 化して共有できる」ことは十分に実証できました。VitePress + Cloudflare Pages の組み合わせは、コスト・速度・運用負荷のバランスが良く、本格運用に耐えうる構成です。
最大の課題は 「誰がいつ更新するのか」 という運用面です。技術的な仕組みは整っているため、チーム内で更新フローを合意し、習慣化できるかが成否を分けます。