Skip to content

Commit 45e6a55

Browse files
claudebokelley
authored andcommitted
fix(examples): explicitly pass valid_actions for pending_creatives status
MEDIA_BUY_STATE_MACHINE on main lacks the pending_creatives key (it lands with PR #296). Without explicit valid_actions, media_buy_response() and update_media_buy_response() return valid_actions=[] for pending_creatives buys, blocking the storyboard from discovering that sync_creatives is available. Pass the expected actions list explicitly until #296 merges. https://claude.ai/code/session_01HAP5upax2a7FrcrmgVwTX2
1 parent 0e88d90 commit 45e6a55

1 file changed

Lines changed: 14 additions & 2 deletions

File tree

examples/seller_agent.py

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -237,7 +237,12 @@ async def create_media_buy(self, params: dict[str, Any], context: Any = None) ->
237237
"packages": packages,
238238
"revision": 1,
239239
}
240-
return media_buy_response(mb_id, packages, status=status)
240+
pending_actions = ["sync_creatives", "cancel", "update_budget", "update_dates",
241+
"update_packages", "add_packages"]
242+
return media_buy_response(
243+
mb_id, packages, status=status,
244+
valid_actions=pending_actions if status == "pending_creatives" else None,
245+
)
241246

242247
async def get_media_buys(self, params: dict[str, Any], context: Any = None) -> dict[str, Any]:
243248
requested_ids = params.get("media_buy_ids")
@@ -296,7 +301,14 @@ async def update_media_buy(self, params: dict[str, Any], context: Any = None) ->
296301
return cancel_media_buy_response(mb_id, "buyer")
297302

298303
mb["revision"] = mb.get("revision", 1) + 1
299-
return update_media_buy_response(mb_id, status=mb["status"], revision=mb["revision"])
304+
pending_actions = ["sync_creatives", "cancel", "update_budget", "update_dates",
305+
"update_packages", "add_packages"]
306+
return update_media_buy_response(
307+
mb_id,
308+
status=mb["status"],
309+
revision=mb["revision"],
310+
valid_actions=pending_actions if mb["status"] == "pending_creatives" else None,
311+
)
300312

301313
async def list_creative_formats(
302314
self, params: dict[str, Any], context: Any = None

0 commit comments

Comments
 (0)