fix(media): decode remote URL fallback filenames#84108
Conversation
|
Codex review: passed. Workflow note: Future ClawSweeper reviews update this same comment in place. How this review workflow works
Summary Reproducibility: yes. Source inspection plus a Node check on current main show the URL path basename remains PR rating What the crustacean ranks mean
Shiny media proof means a screenshot, video, or linked artifact directly shows the changed behavior. Runtime, network, CSP, and security claims still need visible diagnostics. PR egg Rarity: 🥚 common. What is this egg doing here?
Real behavior proof Next step before merge Security Review detailsBest possible solution: Land the narrow fallback-filename decode fix with its regression coverage once the exact PR head passes the normal automerge checks. Do we have a high-confidence way to reproduce the issue? Yes. Source inspection plus a Node check on current main show the URL path basename remains Is this the best way to solve the issue? Yes. Decoding only the selected fallback basename preserves existing filename precedence, avoids treating decoded separators as path traversal, and keeps malformed escape handling non-throwing. Label justifications:
What I checked:
Likely related people:
Codex review notes: model gpt-5.5, reasoning high; reviewed against e2c8e7c8ae65. |
|
🦞✅ Source: What merged:
Automerge notes:
The automerge loop is complete. Automerge progress:
|
Summary: - This replacement PR decodes valid percent escapes in remote media URL fallback basenames, replaces decoded s ... scores, preserves malformed escapes, adds `saveRemoteMedia` regression coverage, and updates the changelog. - Reproducibility: yes. Source inspection plus a Node check on current main show the URL path basename remains `My%20Report.pdf`, and the linked source PR supplies after-fix runtime proof through `saveRemoteMedia`. Automerge notes: - PR branch already contained follow-up commit before automerge: fix(media): decode remote URL fallback filenames Validation: - ClawSweeper review passed for head 8cbac43f9bbd38ebf072c48ee5376d9cbec6e0e8. - Required merge gates passed before the squash merge. Prepared head SHA: 8cbac43f9bbd38ebf072c48ee5376d9cbec6e0e8 Review: openclaw/openclaw#84108 (comment) Co-authored-by: Jayesh Betala <jayesh.betala7@gmail.com> Co-authored-by: clawsweeper <274271284+clawsweeper[bot]@users.noreply.github.com> Co-authored-by: clawsweeper[bot] <274271284+clawsweeper[bot]@users.noreply.github.com> Approved-by: takhoffman Co-authored-by: takhoffman <781889+takhoffman@users.noreply.github.com>
Summary: - This replacement PR decodes valid percent escapes in remote media URL fallback basenames, replaces decoded s ... scores, preserves malformed escapes, adds `saveRemoteMedia` regression coverage, and updates the changelog. - Reproducibility: yes. Source inspection plus a Node check on current main show the URL path basename remains `My%20Report.pdf`, and the linked source PR supplies after-fix runtime proof through `saveRemoteMedia`. Automerge notes: - PR branch already contained follow-up commit before automerge: fix(media): decode remote URL fallback filenames Validation: - ClawSweeper review passed for head 8cbac43f9bbd38ebf072c48ee5376d9cbec6e0e8. - Required merge gates passed before the squash merge. Prepared head SHA: 8cbac43f9bbd38ebf072c48ee5376d9cbec6e0e8 Review: openclaw/openclaw#84108 (comment) Co-authored-by: Jayesh Betala <jayesh.betala7@gmail.com> Co-authored-by: clawsweeper <274271284+clawsweeper[bot]@users.noreply.github.com> Co-authored-by: clawsweeper[bot] <274271284+clawsweeper[bot]@users.noreply.github.com> Approved-by: takhoffman Co-authored-by: takhoffman <781889+takhoffman@users.noreply.github.com>
Summary: - This replacement PR decodes valid percent escapes in remote media URL fallback basenames, replaces decoded s ... scores, preserves malformed escapes, adds `saveRemoteMedia` regression coverage, and updates the changelog. - Reproducibility: yes. Source inspection plus a Node check on current main show the URL path basename remains `My%20Report.pdf`, and the linked source PR supplies after-fix runtime proof through `saveRemoteMedia`. Automerge notes: - PR branch already contained follow-up commit before automerge: fix(media): decode remote URL fallback filenames Validation: - ClawSweeper review passed for head 8cbac43. - Required merge gates passed before the squash merge. Prepared head SHA: 8cbac43 Review: openclaw#84108 (comment) Co-authored-by: Jayesh Betala <jayesh.betala7@gmail.com> Co-authored-by: clawsweeper <274271284+clawsweeper[bot]@users.noreply.github.com> Co-authored-by: clawsweeper[bot] <274271284+clawsweeper[bot]@users.noreply.github.com> Approved-by: takhoffman Co-authored-by: takhoffman <781889+takhoffman@users.noreply.github.com>
Summary: - This replacement PR decodes valid percent escapes in remote media URL fallback basenames, replaces decoded s ... scores, preserves malformed escapes, adds `saveRemoteMedia` regression coverage, and updates the changelog. - Reproducibility: yes. Source inspection plus a Node check on current main show the URL path basename remains `My%20Report.pdf`, and the linked source PR supplies after-fix runtime proof through `saveRemoteMedia`. Automerge notes: - PR branch already contained follow-up commit before automerge: fix(media): decode remote URL fallback filenames Validation: - ClawSweeper review passed for head 8cbac43. - Required merge gates passed before the squash merge. Prepared head SHA: 8cbac43 Review: openclaw#84108 (comment) Co-authored-by: Jayesh Betala <jayesh.betala7@gmail.com> Co-authored-by: clawsweeper <274271284+clawsweeper[bot]@users.noreply.github.com> Co-authored-by: clawsweeper[bot] <274271284+clawsweeper[bot]@users.noreply.github.com> Approved-by: takhoffman Co-authored-by: takhoffman <781889+takhoffman@users.noreply.github.com>
Summary: - This replacement PR decodes valid percent escapes in remote media URL fallback basenames, replaces decoded s ... scores, preserves malformed escapes, adds `saveRemoteMedia` regression coverage, and updates the changelog. - Reproducibility: yes. Source inspection plus a Node check on current main show the URL path basename remains `My%20Report.pdf`, and the linked source PR supplies after-fix runtime proof through `saveRemoteMedia`. Automerge notes: - PR branch already contained follow-up commit before automerge: fix(media): decode remote URL fallback filenames Validation: - ClawSweeper review passed for head 8cbac43. - Required merge gates passed before the squash merge. Prepared head SHA: 8cbac43 Review: openclaw#84108 (comment) Co-authored-by: Jayesh Betala <jayesh.betala7@gmail.com> Co-authored-by: clawsweeper <274271284+clawsweeper[bot]@users.noreply.github.com> Co-authored-by: clawsweeper[bot] <274271284+clawsweeper[bot]@users.noreply.github.com> Approved-by: takhoffman Co-authored-by: takhoffman <781889+takhoffman@users.noreply.github.com>
Summary: - This replacement PR decodes valid percent escapes in remote media URL fallback basenames, replaces decoded s ... scores, preserves malformed escapes, adds `saveRemoteMedia` regression coverage, and updates the changelog. - Reproducibility: yes. Source inspection plus a Node check on current main show the URL path basename remains `My%20Report.pdf`, and the linked source PR supplies after-fix runtime proof through `saveRemoteMedia`. Automerge notes: - PR branch already contained follow-up commit before automerge: fix(media): decode remote URL fallback filenames Validation: - ClawSweeper review passed for head 8cbac43. - Required merge gates passed before the squash merge. Prepared head SHA: 8cbac43 Review: openclaw#84108 (comment) Co-authored-by: Jayesh Betala <jayesh.betala7@gmail.com> Co-authored-by: clawsweeper <274271284+clawsweeper[bot]@users.noreply.github.com> Co-authored-by: clawsweeper[bot] <274271284+clawsweeper[bot]@users.noreply.github.com> Approved-by: takhoffman Co-authored-by: takhoffman <781889+takhoffman@users.noreply.github.com>
Summary: - This replacement PR decodes valid percent escapes in remote media URL fallback basenames, replaces decoded s ... scores, preserves malformed escapes, adds `saveRemoteMedia` regression coverage, and updates the changelog. - Reproducibility: yes. Source inspection plus a Node check on current main show the URL path basename remains `My%20Report.pdf`, and the linked source PR supplies after-fix runtime proof through `saveRemoteMedia`. Automerge notes: - PR branch already contained follow-up commit before automerge: fix(media): decode remote URL fallback filenames Validation: - ClawSweeper review passed for head 8cbac43. - Required merge gates passed before the squash merge. Prepared head SHA: 8cbac43 Review: openclaw#84108 (comment) Co-authored-by: Jayesh Betala <jayesh.betala7@gmail.com> Co-authored-by: clawsweeper <274271284+clawsweeper[bot]@users.noreply.github.com> Co-authored-by: clawsweeper[bot] <274271284+clawsweeper[bot]@users.noreply.github.com> Approved-by: takhoffman Co-authored-by: takhoffman <781889+takhoffman@users.noreply.github.com>
Summary: - This replacement PR decodes valid percent escapes in remote media URL fallback basenames, replaces decoded s ... scores, preserves malformed escapes, adds `saveRemoteMedia` regression coverage, and updates the changelog. - Reproducibility: yes. Source inspection plus a Node check on current main show the URL path basename remains `My%20Report.pdf`, and the linked source PR supplies after-fix runtime proof through `saveRemoteMedia`. Automerge notes: - PR branch already contained follow-up commit before automerge: fix(media): decode remote URL fallback filenames Validation: - ClawSweeper review passed for head 8cbac43. - Required merge gates passed before the squash merge. Prepared head SHA: 8cbac43 Review: openclaw#84108 (comment) Co-authored-by: Jayesh Betala <jayesh.betala7@gmail.com> Co-authored-by: clawsweeper <274271284+clawsweeper[bot]@users.noreply.github.com> Co-authored-by: clawsweeper[bot] <274271284+clawsweeper[bot]@users.noreply.github.com> Approved-by: takhoffman Co-authored-by: takhoffman <781889+takhoffman@users.noreply.github.com>
Summary: - This replacement PR decodes valid percent escapes in remote media URL fallback basenames, replaces decoded s ... scores, preserves malformed escapes, adds `saveRemoteMedia` regression coverage, and updates the changelog. - Reproducibility: yes. Source inspection plus a Node check on current main show the URL path basename remains `My%20Report.pdf`, and the linked source PR supplies after-fix runtime proof through `saveRemoteMedia`. Automerge notes: - PR branch already contained follow-up commit before automerge: fix(media): decode remote URL fallback filenames Validation: - ClawSweeper review passed for head 8cbac43. - Required merge gates passed before the squash merge. Prepared head SHA: 8cbac43 Review: openclaw#84108 (comment) Co-authored-by: Jayesh Betala <jayesh.betala7@gmail.com> Co-authored-by: clawsweeper <274271284+clawsweeper[bot]@users.noreply.github.com> Co-authored-by: clawsweeper[bot] <274271284+clawsweeper[bot]@users.noreply.github.com> Approved-by: takhoffman Co-authored-by: takhoffman <781889+takhoffman@users.noreply.github.com>
Summary: - This replacement PR decodes valid percent escapes in remote media URL fallback basenames, replaces decoded s ... scores, preserves malformed escapes, adds `saveRemoteMedia` regression coverage, and updates the changelog. - Reproducibility: yes. Source inspection plus a Node check on current main show the URL path basename remains `My%20Report.pdf`, and the linked source PR supplies after-fix runtime proof through `saveRemoteMedia`. Automerge notes: - PR branch already contained follow-up commit before automerge: fix(media): decode remote URL fallback filenames Validation: - ClawSweeper review passed for head 8cbac43. - Required merge gates passed before the squash merge. Prepared head SHA: 8cbac43 Review: openclaw#84108 (comment) Co-authored-by: Jayesh Betala <jayesh.betala7@gmail.com> Co-authored-by: clawsweeper <274271284+clawsweeper[bot]@users.noreply.github.com> Co-authored-by: clawsweeper[bot] <274271284+clawsweeper[bot]@users.noreply.github.com> Approved-by: takhoffman Co-authored-by: takhoffman <781889+takhoffman@users.noreply.github.com>
Summary: - This replacement PR decodes valid percent escapes in remote media URL fallback basenames, replaces decoded s ... scores, preserves malformed escapes, adds `saveRemoteMedia` regression coverage, and updates the changelog. - Reproducibility: yes. Source inspection plus a Node check on current main show the URL path basename remains `My%20Report.pdf`, and the linked source PR supplies after-fix runtime proof through `saveRemoteMedia`. Automerge notes: - PR branch already contained follow-up commit before automerge: fix(media): decode remote URL fallback filenames Validation: - ClawSweeper review passed for head 8cbac43. - Required merge gates passed before the squash merge. Prepared head SHA: 8cbac43 Review: openclaw#84108 (comment) Co-authored-by: Jayesh Betala <jayesh.betala7@gmail.com> Co-authored-by: clawsweeper <274271284+clawsweeper[bot]@users.noreply.github.com> Co-authored-by: clawsweeper[bot] <274271284+clawsweeper[bot]@users.noreply.github.com> Approved-by: takhoffman Co-authored-by: takhoffman <781889+takhoffman@users.noreply.github.com>
Summary: - This replacement PR decodes valid percent escapes in remote media URL fallback basenames, replaces decoded s ... scores, preserves malformed escapes, adds `saveRemoteMedia` regression coverage, and updates the changelog. - Reproducibility: yes. Source inspection plus a Node check on current main show the URL path basename remains `My%20Report.pdf`, and the linked source PR supplies after-fix runtime proof through `saveRemoteMedia`. Automerge notes: - PR branch already contained follow-up commit before automerge: fix(media): decode remote URL fallback filenames Validation: - ClawSweeper review passed for head 8cbac43. - Required merge gates passed before the squash merge. Prepared head SHA: 8cbac43 Review: openclaw#84108 (comment) Co-authored-by: Jayesh Betala <jayesh.betala7@gmail.com> Co-authored-by: clawsweeper <274271284+clawsweeper[bot]@users.noreply.github.com> Co-authored-by: clawsweeper[bot] <274271284+clawsweeper[bot]@users.noreply.github.com> Approved-by: takhoffman Co-authored-by: takhoffman <781889+takhoffman@users.noreply.github.com>
Summary: - This replacement PR decodes valid percent escapes in remote media URL fallback basenames, replaces decoded s ... scores, preserves malformed escapes, adds `saveRemoteMedia` regression coverage, and updates the changelog. - Reproducibility: yes. Source inspection plus a Node check on current main show the URL path basename remains `My%20Report.pdf`, and the linked source PR supplies after-fix runtime proof through `saveRemoteMedia`. Automerge notes: - PR branch already contained follow-up commit before automerge: fix(media): decode remote URL fallback filenames Validation: - ClawSweeper review passed for head 8cbac43. - Required merge gates passed before the squash merge. Prepared head SHA: 8cbac43 Review: openclaw#84108 (comment) Co-authored-by: Jayesh Betala <jayesh.betala7@gmail.com> Co-authored-by: clawsweeper <274271284+clawsweeper[bot]@users.noreply.github.com> Co-authored-by: clawsweeper[bot] <274271284+clawsweeper[bot]@users.noreply.github.com> Approved-by: takhoffman Co-authored-by: takhoffman <781889+takhoffman@users.noreply.github.com>
Makes #84052 merge-ready for the ClawSweeper automerge loop.
The edit pass should inspect the live PR diff, review comments, and failing checks; rebase if needed; keep the contributor branch credited; and stop only when validation is green or an external blocker is proven.
Known failing checks:
ClawSweeper 🐠 replacement reef notes:
Inherited issue-closing references from the source PR:
Fixes #84050
Co-author credit kept:
fish notes: model gpt-5.5, reasoning high; reviewed against 8cbac43.