Repository navigation
Conversation
mnoah1
added this pull request to stack #803
October 7, 2026 17:35
mnoah1
marked this pull request as ready for review
October 7, 2026 17:58
mnoah1
requested review from
a team,
behinddwalls and
sbalabanov
as code owners
October 7, 2026 17:58
mnoah1
force-pushed
the
mnoah1/submitqueue-list-projection-cleanup
branch
2 times, most recently
from
October 7, 2026 18:05
1ce24e4 to
8c85cdc
Compare
mnoah1
force-pushed
the
mnoah1/submitqueue-list-projection-cleanup
branch
from
October 7, 2026 19:46
8c85cdc to
9a574eb
Compare
Tmwakalasya
pushed a commit
to Tmwakalasya/submitqueue
that referenced
this pull request
Oct 7, 2026
…sed lookup table (uber#799) ## Summary First step toward keeping one full request projection in request_summary, with a small time-based lookup instead of duplicating lifecycle data for List. All required response data and receipt time are already captured. ### Changes - Add request_receipt with only (queue, received_at_ms, request_id), its immutable storage contract, and gateway wiring. - Ensure receipt keys after public projection writes, including unchanged/stale-log retries. Keep accepting receipts hidden and surface partial-write failures for existing retry handling. - Keep List reads and the existing queue-summary projection writes in place for a safe cutover. - Add storage, materializer, and integration coverage. ### Migration plan #### Rollout from this PR (CD) CD deploys the additive request_receipt table and gateway receipt-store/materializer changes, with the table available before receipt writes begin. Public request projections populate receipt keys alongside the existing queue-summary projection. List reads remain unchanged. #### Next 1. Next PR will switch List to scan receipt keys and point-read request_summary. Preserve the API, time bounds, ordering, and page tokens; check page latency and retain old projection writes during the rollback window. 2. Once cutover is stable, land last PR in the stack: stop duplicate projection writes, remove RequestQueueSummary and its store/mapper, and retire request_summary_by_queue after the rollback window. ## Test Plan After rollout, confirm newly public requests have matching receipt keys while List continues using the existing projection. ## Revert Plan Revert the writer rollout; List still uses the existing projection. Leave the additive table in place until no writers depend on it. ## API Changes No RPC/proto changes. Gateway storage implementations must provide the new RequestReceiptStore accessor. ## Issue Links LINEAR-CODEM-561 — https://linear.app/uber/issue/CODEM-561/clean-up-duplicate-request-projection-in-submitqueue-code ## Stack 1. @ uber#799 1. uber#800 1. uber#801
behinddwalls
approved these changes
Oct 8, 2026
github-merge-queue
Bot
removed this pull request from the merge queue due to failed status checks
Oct 8, 2026
Summary: Intent: - Complete the receipt-based List migration from #800: keep one authoritative request summary and immutable lookup keys. Changes: - Remove queue-summary writes, the duplicate entity/store, and obsolete tests and mocks. - Idempotently ensure URI mappings before the receipt key, including partial-write retries and stale logs. - Update rollout docs; retain the legacy SQL definition for deployment compatibility. Test Plan: - Deploy after #800 is stable. Rollback must retain the receipt-based reader once duplicate writes stop. - Retire the table in a separate internal schema change after old binaries and the rollback window are gone. UQL DEPRECATED can drop immediately in Vitess; no physical retirement is enabled here. --- <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>
behinddwalls
force-pushed
the
mnoah1/submitqueue-list-projection-cleanup
branch
from
October 8, 2026 03:04
9a574eb to
6bbbb33
Compare
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Intent:
Changes:
Test Plan
Revert Plan
Revert to the receipt-based reader with legacy writes. Restoring the old List reader also requires restoring its writers and reconciling missed data.
Generated by the 🪄 pr-create skill in devexp-agent-marketplace
Issue Links
None — no separate ticket supplied for this stacked follow-up.
Stack