f6c24e42af
Oracle's <promise>VERIFIED</promise> arrives as a tool_result part from the task() tool call, not as a text part. Both detectCompletionInSessionMessages and collectAssistantText only scanned type=text parts, missing the verification signal entirely. This caused ulw loops to fail verification even when Oracle successfully emitted VERIFIED. Include tool_result parts in promise detection alongside text parts. Exclude tool_use parts to avoid false positives from instructional text.