Skip to content

fix(runway): ISS-014 use portable DLQ failures - #679

Draft
sbalabanov wants to merge 1 commit into
mainfrom
sergeyb/fix-iss-014-portable-dlq-failure
Draft

fix(runway): ISS-014 use portable DLQ failures#679
sbalabanov wants to merge 1 commit into
mainfrom
sergeyb/fix-iss-014-portable-dlq-failure

Conversation

@sbalabanov

Copy link
Copy Markdown
Contributor

Summary

Intent:

  • Preserve backend-independent dead-letter failure reasons in Runway responses.
  • Keep legacy metadata and the existing generic reason as compatibility fallbacks.

Changes:

  • Prefer consumer.Delivery.Failure() when constructing a terminal merge result.
  • Add table-driven coverage for portable failures, legacy metadata, default reasons, and published result identity.

Reproduction:

  • A non-MySQL queue backend dead-letters a merge request with Delivery.Failure() set to the provider error but without dlq.last_error metadata.
  • Runway previously returned the generic failure reason; it now publishes the actual recorded failure to the client.

Generated by the 🪄 pr-create skill in devexp-agent-marketplace

Test Plan

AI Verification

Validated at f8d946c on Sep 4 22:21 UTC · 3 files analyzed · 903ms

Validator Status Issues
ios-lint not_applicable 0
web-unit not_applicable 0
web-repocheck not_applicable 0
fix-disclosure not_applicable 0
go-coverage not_applicable 0
go-gazelle not_applicable 0
go-thrift-lint not_applicable 0
java-lint not_applicable 0
web-lint not_applicable 0
merge-conflict not_applicable 0
go-lint not_applicable 0
visual-ios not_applicable 0
go-proto-lint not_applicable 0
android-lint not_applicable 0
android-coverage not_applicable 0
uber-one not_applicable 0
web-typecheck not_applicable 0
arc-unit not_applicable 0
arc-lint not_applicable 0
visual-web not_applicable 0
java-coverage not_applicable 0
ios-test not_applicable 0
web-coverage not_applicable 0
diff-template not_applicable 0
visual-android not_applicable 0
ureview completed 0
custom not_applicable 0

0 issues detected

Skipped validators: claude · EngWiki

Issues

T3-ISS-014

Summary:
Intent:
- Preserve backend-independent dead-letter failure reasons in Runway responses.
- Keep legacy metadata and the existing generic reason as compatibility fallbacks.

Changes:
- Prefer consumer.Delivery.Failure() when constructing a terminal merge result.
- Add table-driven coverage for portable failures, legacy metadata, default reasons, and published result identity.

Reproduction:
- A non-MySQL queue backend dead-letters a merge request with Delivery.Failure() set to the provider error but without dlq.last_error metadata.
- Runway previously returned the generic failure reason; it now publishes the actual recorded failure to the client.

---

<sub>Generated by the 🪄 [pr-create](https://sg.uberinternal.com/code.uber.internal/uber-code/devexp-agent-marketplace/-/blob/claude-code/plugins/dev/uber-dev/skills/pr-create/SKILL.md) skill in devexp-agent-marketplace</sub>
@CLAassistant

Copy link
Copy Markdown

CLA assistant check
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.
You have signed the CLA already but the status is still pending? Let us recheck it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants