User reported observing a wrong image returned. Two hardenings:
1. _job_prefix() generates a per-submission filename_prefix
('smartedit_<10hex>', 'smartinpaint_<10hex>', 'smartgen_<10hex>')
so SaveImage outputs from concurrent jobs sit in their own
namespace and ComfyUI's auto-incrementing counter can never
produce filenames that overlap across jobs. With a shared prefix,
if a queued job's history-fetch ever raced past its own SaveImage
record there was a theoretical (if unlikely) path to picking up
another job's _00001_.png. Per-job prefix kills that vector.
2. edit_image now emits the source image's SHA-1 and byte count in a
status event before uploading to ComfyUI. If a future 'wrong
image' report comes in, that hash should match the prior
generation's output — if it doesn't, we know
_extract_attached_image picked up the wrong source rather than
ComfyUI returning the wrong file. Hashlib import is local so the
module's import surface stays clean.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>