Skip to content

feat(stovepipe): add request logs for dlq outcomes - #667

Open
mnoah1 wants to merge 1 commit into
mnoah1/stovepipe-request-history-build-outcomesfrom
mnoah1/stovepipe-request-history-dlq-outcomes
Open

feat(stovepipe): add request logs for dlq outcomes#667
mnoah1 wants to merge 1 commit into
mnoah1/stovepipe-request-history-build-outcomesfrom
mnoah1/stovepipe-request-history-dlq-outcomes

Conversation

@mnoah1

@mnoah1 mnoah1 commented Sep 2, 2026

Copy link
Copy Markdown
Contributor

Summary

This PR builds on #666, which records normal request outcomes and lifecycle events.

Intent:

  • Retain the terminal reason when an exhausted pipeline stage forces a request to fail.
  • Repair a missing failure occurrence when DLQ reconciliation redelivers after the request write.

Changes:

  • Record processing_failed for Process and Build DLQ reconciliation.
  • Record build_polling_exhausted for BuildSignal DLQ reconciliation.
  • Persist the failed request state before its log and preserve all other terminal outcomes.
  • Wire the shared request-log materializer into the three DLQ controllers.

Test Plan

  • Exercise new failure logging, retry repair, write ordering, stage-specific reasons, and server wiring in Bazel tests.

Revert Plan

  • Revert this change to leave DLQ reconciliation state-only.

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

Issues

Stack

  1. feat(stovepipe): add request logs for process owned states #665
  2. feat(stovepipe): add request logs for outcomes and lifecycle events #666
  3. @ feat(stovepipe): add request logs for dlq outcomes #667

Summary:
This PR builds on #666, which records normal request outcomes and lifecycle events.

Intent:
- Retain the terminal reason when an exhausted pipeline stage forces a request to fail.
- Repair a missing failure occurrence when DLQ reconciliation redelivers after the request write.

Changes:
- Record processing_failed for Process and Build DLQ reconciliation.
- Record build_polling_exhausted for BuildSignal DLQ reconciliation.
- Persist the failed request state before its log and preserve all other terminal outcomes.
- Wire the shared request-log materializer into the three DLQ controllers.

Test Plan:
- Exercise new failure logging, retry repair, write ordering, stage-specific reasons, and server wiring in Bazel tests.

Revert Plan:
- Revert this change to leave DLQ reconciliation state-only.

---

<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>
@mnoah1
mnoah1 marked this pull request as ready for review September 2, 2026 22:50
@mnoah1
mnoah1 requested review from a team, behinddwalls and sbalabanov as code owners September 2, 2026 22:50
@mnoah1 mnoah1 changed the title feat(stovepipe): record DLQ request failures feat(stovepipe): add request logs for dlq outcomes Sep 2, 2026
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.

1 participant