ComfyUI/tests-unit/app_test
Deep Mehta 74cfcaa318 feat(server): per-prompt metadata envelope on websocket events
Replaces the workflow_id-on-every-event approach (#13684, reverted in
#13901) with a generic metadata envelope captured at submission and
injected at the server-side send chokepoint.

- POST /prompt accepts an opaque ``extra_data.metadata`` dict (falls
  back to synthesizing ``{"workflow_id": <id>}`` from
  ``extra_pnginfo.workflow.id`` so existing frontends keep working).
- ``PromptServer`` owns a ``prompt_id -> metadata`` map populated at
  submission, drained when the prompt finishes. ``send_sync`` injects
  the envelope into any outbound payload that carries a ``prompt_id``,
  including the ``(preview_image, metadata_dict)`` tuple used by
  ``PREVIEW_IMAGE_WITH_METADATA``. WS reconnect path carries it too.
- Pure helpers live in ``app/prompt_metadata.py`` so the execution
  layer never depends on workflow concepts and the helpers can be
  unit-tested without torch.

Execution layer (``execution.py``, ``comfy_execution/*``) and the jobs
API are unchanged. Backward compatible: existing fields and shapes are
preserved, only an additional ``metadata`` field is attached when
present.
2026-05-14 20:47:00 -07:00
..
__init__.py Add FrontendManager to manage non-default front-end impl (#3897) 2024-07-16 11:26:11 -04:00
custom_node_manager_test.py [i18n] Add /i18n endpoint to provide all custom node translations (#6558) 2025-01-22 17:15:45 -05:00
frontend_manager_test.py Generalize frontend version warning to all comfy* requirements.txt entries (#13875) 2026-05-14 16:13:30 -07:00
model_manager_test.py Support preview images embedded in safetensors metadata (#6119) 2024-12-19 14:01:56 -08:00
node_replace_manager_test.py fix: make NodeReplaceManager.register() idempotent (#13596) 2026-05-07 19:21:12 -07:00
test_migrations.py feat(assets): align local API with cloud spec (#12863) 2026-03-16 12:34:04 -07:00
test_prompt_metadata.py feat(server): per-prompt metadata envelope on websocket events 2026-05-14 20:47:00 -07:00
user_manager_system_user_test.py feat(security): add System User protection with __ prefix (#10966) 2025-11-28 21:28:42 -05:00