DOM.setFileInputFiles is forbidden by Chrome's chrome.debugger API, so upload always fails over the extension relay with an opaque -32000 "Not allowed". Map it to a clear message: file upload needs a --launch/direct-CDP session, and point at the cookies export|set --curl workaround. Note the limit in the core skill upload line too.