観測
2026-09-09 15:45 JSTにGitHubのopen PRを確認。通常PRは#935 / #936、draftは#891。mainはfetch / pull後 c2390a1。以下はPR本文・差分・CIとローカルコードの読解による整理で、ローカルのビルド・ブラウザ再検証は未実施。
#935: データ非依存の静的出力
[PR #935](https://github.com/digitaldemocracy2030/kouchou-ai/pull/935) HEAD 373c76b9583df8d6a66dc4ba738b7515bd090356 より、従来はレポートごとにNextビルドが必要だった静的出力へ、共通HTMLを一度生成し、配布時に各slugへコピーしてJSONを同梱するshell方式を追加。ブラウザがURLからslugを求めてJSONを読み込む。明示的に有効化した場合のみ使う。
Windows配布などでレポート出力のたびにNodeを必要としない構造へ進む基盤。ただし今回の範囲はviewerで、FastAPI側の配布物生成とstatic-site-builderの退役は未実装。issue-885-node-runtime-next-scope-2026-06-30の後続作業として読む。
GitHub上のClient Tests / E2E / client build / CodeQLは成功。既存レビューで指摘された失敗ファイルURLの表示は最新HEADで修正済み。作者明記の制約は、レポート別title・unlistedのnoindex未対応、basePath付きshellとレポート間遷移のE2E未検証。これらを把握したオプトイン基盤としての評価と、配布機能全体の完成を区別する。
#936: OGPの説明訂正
[PR #936](https://github.com/digitaldemocracy2030/kouchou-ai/pull/936) HEAD 2c42c3008b76399bc8a0077eeeb7dcafabc492ec より、静的export時にOGP画像を生成するという既存ドキュメントを訂正。mainのrename-file.mjsでも、export時にOGPの両経路を除外することを確認した。リンク共有時のプレビュー画像の生成機能を直すPRではなく、既存挙動を正しく説明するdocs-only変更。docs build成功、review required。#935とは別に判断できる。
Open Questions
- 935の実配布への接続時に、title / noindexと配下パス・ページ遷移をどの段階で検証・対応するか。
- 885全体やdraft 891の完成とは別の段階であり、今回2件だけでWindows配布完成と見なさない。
Updates
- 2026-09-09 15:45: ユーザー依頼で2件の内容とCIを確認。PRへの投稿・変更・マージは実施していない。
2026-09-09 15:51 JST — 935のマージ判断
ユーザーの依頼でHEAD 373c76b9583df8d6a66dc4ba738b7515bd090356 を追加検証。結論は「オプトインの静的viewer基盤としてマージ可」。既存表示の変更はReportView / ReportListViewへの抽出が中心で、通常設定ではshell経路を使わない。issue-885-node-runtime-next-scope-2026-06-30の段階的な分割とも整合する。
- PR専用worktreeへlockfileどおりに依存を用意し、viewerのJestは12 suites / 123 tests成功。shellビルドはAPI設定なしで成功。
- 同梱fixtureを既存package-shell.mjsで配置し、Chromium実ブラウザで一覧→詳細→一覧、本文のないレポートのnot-foundを確認。ルート配信の一連の操作でReact 418のpageerrorを1件観測したが表示と操作は成功。原因・既存モードとの差は未特定で、解消済みとはしない。
/review-baseを指定してshellを再ビルドし、配下に配置。詳細の直接表示→一覧へ戻る→詳細のクリックを確認し、こちらはpageerrorなし。- 既存モード全体の再ビルド・全E2Eのローカル再実行はしていない。PRのCI上ではClient Tests / E2E / client build / CodeQL成功。GitHubはreview requiredで通常マージblocked。
マージ後の残課題は、実データでの配布物生成、レポート別title / unlistedのnoindex、今回手動で補った配下パス・遷移のE2E化。OGP欠落は既存exportにもある問題で#935の新規退行ではない。React 418も再現条件を切り分ける候補として残す。マージするかの検討依頼なので、レビュー投稿やマージは実施していない。
2026-09-09 16:14 JST — #935 / 936マージとエラー修正着手
ユーザー指示で原因調査後に両PRをマージした。#935=472b607、#936=23c7821。React 418は再現し、shellビルドのWebpack切替で解消する見通しを確認。修正PR 938と回帰テストの詳細はpr-935-shell-hydration-fix-2026-09-09を参照。
2026-09-09 16:31 JST — 後続作業完了
エラー修正#938もマージ済み(679ee9e、CI全成功・E2E78件成功)。タイトル・検索除外の残課題は#935由来と明記した[Issue #939](https://github.com/digitaldemocracy2030/kouchou-ai/issues/939)へ移した。pr-935-shell-hydration-fix-2026-09-09より