Files
windmill_workflow/docs/flow-manage/11_引き継ぎ_alexa_speak_API反映後にUIドロップダウンが変わらない件.md
Akira 0f6a2caa41 引き継ぎ用ドキュメントを作成しました。
今回の件は最初から再現可能な形で記録済みです。

新規作成: 11_引き継ぎ_alexa_speak_API反映後にUIドロップダウンが変わらない件.md
追記更新: 10_マスタードキュメント_Windmillフロー管理_API一本化編.md
記載内容は以下を含みます。

事象概要(API反映済みなのにUIが入力欄のまま)
当日の時系列
確認済み事実(hash・schemaキー)
想定原因
再現時の標準対応手順(API確認 -> UI再読込 -> Edit -> Deploy)
今後の引き継ぎ時チェックポイント
必要ならこのままコミット用メッセージ案も作ります。
2026-03-04 02:00:13 +09:00

3.5 KiB
Raw Blame History

引き継ぎ - u/admin/alexa_speak API反映後にUIドロップダウンが変わらない件

作成日: 2026-03-04
対象: windmill.keinafarm.net / workspace admins
対象スクリプト: u/admin/alexa_speak
目的: 別端末から同じ事象に遭遇しても、原因切り分けと復旧をすぐ実施できるようにする


1. 事象の概要

u/admin/alexa_speak を Windmill APIcreate-script)で更新した直後、

  • Scriptタブ上のコードは更新済み
  • schema 上も devicedynselect-device
  • しかし Inputフォームは Device がテキスト入力のまま(ドロップダウンにならない)

という状態になった。


2. 当日の時系列(要点)

  1. 既存スクリプトを取得し、ローカル scripts/alexa_speak.tsDynamic Select実装ありをAPIで反映
  2. サーバー再取得で content 一致を確認(更新自体は成功)
  3. UIを開くと Device が入力欄のままで、ドロップダウン化されていない
  4. schema.deviceformat: dynselect-device, originalType: DynSelect_device に更新して再反映
  5. それでも UI は直ちには変わらず
  6. Windmill UIで Edit に入り、Deploy を1回実施
  7. 直後にドロップダウン表示へ反映

3. 確認できた事実

  • API反映は成功しているhash更新
    • 中間: a6010687183a199d
    • 最終: 318d78f45a084e32
  • 最終状態では以下がAPIで確認済み
    • schema.properties.device.format = "dynselect-device"
    • schema.properties.device.originalType = "DynSelect_device"
  • UI反映は API反映だけでは即時にならず、Edit -> Deploy 後に反映された

4. 想定される原因

Windmill CE 側で、API経由更新時にフォームUIメタ情報入力ウィジェット解決の再計算または再適用が即時反映されないケースがある。

実務上は「API更新後にUIで1回Deploy」が回避策として有効。


5. 再現時の標準対応手順Runbook

5.1 APIでスクリプト更新

cd /home/akira/develop/windmill_workflow
./wm-api.sh get-script u/admin/alexa_speak > /tmp/remote_alexa_speak.json
# parent_hash を含む payload を作成して create-script
./wm-api.sh create-script /tmp/alexa_speak_push.json

5.2 APIで反映確認

./wm-api.sh get-script u/admin/alexa_speak

確認ポイント:

  • hash が更新されている
  • content が想定コードになっている
  • schema.properties.device.formatdynselect-device
  • schema.properties.device.originalTypeDynSelect_device

5.3 UI反映されない場合

  1. u/admin/alexa_speak を最新リビジョンで開く
  2. ハードリロード(Ctrl + Shift + R
  3. 変化がなければ Edit -> Deploy を1回実施
  4. Inputフォームの Device がドロップダウン化されたことを確認

6. 補足(今回の最終状態)

  • スクリプト: u/admin/alexa_speak
  • 期待UI:
    • Device: ドロップダウンdynselect
    • Text: テキスト入力
  • 前提:
    • alexa_api コンテナが稼働
    • http://alexa_api:3500/devices が取得可能

7. 引き継ぎメモ

  • 「API反映成功」と「UIフォーム反映成功」は同時とは限らない
  • 引き継ぎ時は、必ず以下をセットで確認する
    1. APIレスポンスの hashschema
    2. UI表示必要なら Edit -> Deploy