Skip to content

feat(stovepipe): add request logs for process owned states - #665

Merged
mnoah1 merged 2 commits into
mainfrom
mnoah1/stovepipe-request-history-processing
Sep 9, 2026
Merged

feat(stovepipe): add request logs for process owned states#665
mnoah1 merged 2 commits into
mainfrom
mnoah1/stovepipe-request-history-processing

Conversation

@mnoah1

@mnoah1 mnoah1 commented Sep 2, 2026

Copy link
Copy Markdown
Contributor

Summary

Intent:

  • Retain Process-owned state transitions before dependent work is published or acknowledged.
  • Let redelivery repair missing occurrences from durable Request state.

Changes:

  • Persist processing after its successful CAS and before hook or Build publication.
  • Persist superseded with its outcome reason after transition and on redelivery.
  • Use the canonical Request version after CAS conflicts so stable occurrence IDs remain correct.

Test Plan

  • Run the Process controller, server wiring, and request-log materializer Bazel tests.
  • Run formatting, lint, Gazelle, and module tidy checks.

Revert Plan

  • Revert this PR to stop recording processing and superseded request states.

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:
Intent:
- Retain the admitted request state before dependent Build work begins.
- Let redelivery repair a missing processing occurrence from durable Request state.

Changes:
- Persist processing logs after a successful state transition and on already-processing retries.
- Block hook and Build publication until materialization succeeds.
- Wire the shared request-log materializer into Process and cover transition and retry failures.

Revert Plan:
- Revert this change to stop recording processing-state request-log entries.

---

<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 changed the title feat(stovepipe): record processing request state feat(stovepipe): record process-owned request states Sep 2, 2026
@mnoah1
mnoah1 marked this pull request as ready for review September 2, 2026 22:10
@mnoah1
mnoah1 requested review from a team, behinddwalls and sbalabanov as code owners September 2, 2026 22:10
@mnoah1 mnoah1 changed the title feat(stovepipe): record process-owned request states feat(stovepipe): add request logs for process owned states Sep 2, 2026
@mnoah1
mnoah1 added this pull request to the merge queue Sep 9, 2026
Merged via the queue into main with commit 8dca439 Sep 9, 2026
27 checks passed
mnoah1 added a commit that referenced this pull request Sep 9, 2026
Summary:
This PR builds on #665, which records Process-owned request states.

Intent:
- Retain terminal build outcomes before the request advances to Record.
- Let BuildSignal redelivery repair a missing terminal occurrence from durable state.

Changes:
- Persist succeeded, failed, and cancelled request logs with their build outcome reasons.
- Keep the request CAS and slot release ahead of materialization, and materialization ahead of Record publication.
- Wire the shared materializer into BuildSignal and cover transition and retry failures.

Test Plan:
- Run the BuildSignal controller, server wiring, and request-log materializer Bazel tests.

Revert Plan:
- Revert this change to stop recording BuildSignal terminal outcomes.

---

<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
behinddwalls deleted the mnoah1/stovepipe-request-history-processing branch September 9, 2026 15:00
mnoah1 added a commit that referenced this pull request Sep 9, 2026
Summary:
This PR builds on #665, which records Process-owned request states.

Intent:
- Retain terminal build outcomes before the request advances to Record.
- Let BuildSignal redelivery repair a missing terminal occurrence from durable state.

Changes:
- Persist succeeded, failed, and cancelled request logs with their build outcome reasons.
- Keep the request CAS and slot release ahead of materialization, and materialization ahead of Record publication.
- Wire the shared materializer into BuildSignal and cover transition and retry failures.

Test Plan:
- Run the BuildSignal controller, server wiring, and request-log materializer Bazel tests.

Revert Plan:
- Revert this change to stop recording BuildSignal terminal outcomes.

---

<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 added a commit that referenced this pull request Sep 9, 2026
Summary:
This PR builds on #665, which records Process-owned request states.

Intent:
- Retain terminal build outcomes before the request advances to Record.
- Let BuildSignal redelivery repair a missing terminal occurrence from durable state.

Changes:
- Persist succeeded, failed, and cancelled request logs with their build outcome reasons.
- Keep the request CAS and slot release ahead of materialization, and materialization ahead of Record publication.
- Wire the shared materializer into BuildSignal and cover transition and retry failures.

Test Plan:
- Run the BuildSignal controller, server wiring, and request-log materializer Bazel tests.

Revert Plan:
- Revert this change to stop recording BuildSignal terminal outcomes.

---

<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>
aeonframework pushed a commit to aeonframework/submitqueue that referenced this pull request Sep 10, 2026
…ber#666)

## Summary
This PR builds on uber#665, which records Process-owned request states.

Intent:
- Retain terminal request outcomes and the durable build/fact milestones
that explain them.
- Let queue redelivery repair any missing occurrence before downstream
work continues.

Changes:
- Persist succeeded, failed, and cancelled request states with their
build outcome reasons.
- Record build_triggered, build_finished, and validation_fact_recorded
events with stable identities and bounded metadata.
- Keep each source write ahead of event materialization and
materialization ahead of downstream publication or derived work.
- Wire the shared materializer into Build, BuildSignal, and Record.

## Test Plan
- Run the focused Build, BuildSignal, Record, request-log materializer,
and server wiring Bazel tests.

## Revert Plan
- Revert this change to stop recording terminal outcomes and lifecycle
events.

---

<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>

## Issues
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.

2 participants