概要
Web UI からアップロードしたカスタムテンプレート(.pptx)を選択・確定しても、
実際の PPTX 生成ではそのテンプレートが使われず、ビルトインの
blank-dark.pptx にフォールバックしてしまいます。
エラーも警告も一切出ないため、ユーザーは「テンプレートを選んだのに反映されない」
という形でしか気づけません。
影響範囲
- AWS 環境(Layer 3 / Layer 4、
mcp-server 経由の生成)で発生します。
- ローカルモード(
mcp-local)は別ロジックのため影響を受けません。
再現手順
- Web UI の
/templates ページで独自の .pptx をアップロードする
- Art Direction フェーズでそのユーザーテンプレートを選択し、確定する
(deck.json に "template": "<name>.pptx" が書き込まれる)
- 生成(
generate_pptx)を実行する
- → 生成された PPTX がアップロードしたテンプレートではなく
blank-dark.pptx のデザイン(テーマカラー・フォント・レイアウト)になる
期待される挙動
選択・確定したユーザーテンプレートのデザインが、生成される PPTX に反映されること。
実際の挙動
ユーザーテンプレートが無視され、警告もなく blank-dark.pptx にフォールバックする。
根本原因(調査結果)
PPTX 生成時のテンプレート解決ロジックが ビルトインテンプレートのみ を
検索対象にしており、ユーザーアップロードテンプレートを検索していません。
- 該当箇所:
mcp-server/tools/generate.py の _prepare_workspace()
storage.list_templates()(ビルトインのみを列挙)としか照合しておらず、
ユーザーテンプレートを列挙する list_user_templates(user_id) が呼ばれていない
- ユーザーテンプレートは
pptx_bucket の user-templates/{user_id}/ にあるが、
ダウンロードが resource_bucket 固定の download_file() のみになっている
- 解決失敗時にログ・警告が一切なく、サイレントにフォールバックする
なお、テンプレートの「一覧表示」と「解析(Art Direction)」は user_id 対応済みで、
「生成時のテンプレート解決」だけが対応漏れになっているため、
「選べているように見えるのに生成に反映されない」という分かりにくい症状になっています。
関連機能
- カスタムテンプレートのアップロード機能(
/templates)
- Art Direction でのテンプレート選択・確定
generate_pptx(PPTX 生成)
概要
Web UI からアップロードしたカスタムテンプレート(
.pptx)を選択・確定しても、実際の PPTX 生成ではそのテンプレートが使われず、ビルトインの
blank-dark.pptxにフォールバックしてしまいます。エラーも警告も一切出ないため、ユーザーは「テンプレートを選んだのに反映されない」
という形でしか気づけません。
影響範囲
mcp-server経由の生成)で発生します。mcp-local)は別ロジックのため影響を受けません。再現手順
/templatesページで独自の.pptxをアップロードする(
deck.jsonに"template": "<name>.pptx"が書き込まれる)generate_pptx)を実行するblank-dark.pptxのデザイン(テーマカラー・フォント・レイアウト)になる期待される挙動
選択・確定したユーザーテンプレートのデザインが、生成される PPTX に反映されること。
実際の挙動
ユーザーテンプレートが無視され、警告もなく
blank-dark.pptxにフォールバックする。根本原因(調査結果)
PPTX 生成時のテンプレート解決ロジックが ビルトインテンプレートのみ を
検索対象にしており、ユーザーアップロードテンプレートを検索していません。
mcp-server/tools/generate.pyの_prepare_workspace()storage.list_templates()(ビルトインのみを列挙)としか照合しておらず、ユーザーテンプレートを列挙する
list_user_templates(user_id)が呼ばれていないpptx_bucketのuser-templates/{user_id}/にあるが、ダウンロードが
resource_bucket固定のdownload_file()のみになっているなお、テンプレートの「一覧表示」と「解析(Art Direction)」は user_id 対応済みで、
「生成時のテンプレート解決」だけが対応漏れになっているため、
「選べているように見えるのに生成に反映されない」という分かりにくい症状になっています。
関連機能
/templates)generate_pptx(PPTX 生成)