ytti/oxidized · error · RuntimeError
Slack file upload failed
Error message
Slack file upload failed
What it means
Error "Slack file upload failed" thrown in ytti/oxidized.
Source
Thrown at lib/oxidized/hook/slackdiff.rb:34
upload_dest = client.files_getUploadURLExternal(filename: "change",
length: content.length,
snippet_type: "diff")
file_uri = URI.parse(upload_dest[:upload_url])
proxy_uri = URI.parse(proxy) if proxy
proxy_address = proxy_uri ? proxy_uri.host : :ENV
proxy_port = proxy_uri&.port
proxy_user = proxy_uri&.user
proxy_pass = proxy_uri&.password
http = Net::HTTP.new(file_uri.host, file_uri.port, proxy_address, proxy_port, proxy_user, proxy_pass)
http.use_ssl = true
request = Net::HTTP::Post.new(file_uri.request_uri, { Host: file_uri.host })
request.body = content
response = http.request(request)
raise 'Slack file upload failed' unless response.is_a? Net::HTTPSuccess
files = [{
id: upload_dest[:file_id],
title: title
}]
begin
client.files_completeUploadExternal(channel_id: channel,
files: files.to_json)
rescue Slack::Web::Api::Errors::NotInChannel
logger.info "Not in specified channel, attempting to join"
client.conversations_join(channel: channel)
client.files_completeUploadExternal(channel_id: channel,
files: files.to_json)
end
end
def run_hook(ctx)
return unless ctx.nodeView on GitHub (pinned to 687ed4262d)
When it happens
Trigger: Thrown at lib/oxidized/hook/slackdiff.rb:34 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of ytti/oxidized@687ed4262d (2026-08-23).
Data as JSON: /api/errors/469788cd4f12454b.
Report an issue: GitHub.