Skip to content

chore(submitqueue): remove dead pusher extension - #457

Draft
behinddwalls wants to merge 1 commit into
mainfrom
preetam/remove-dead-pusher
Draft

chore(submitqueue): remove dead pusher extension#457
behinddwalls wants to merge 1 commit into
mainfrom
preetam/remove-dead-pusher

Conversation

@behinddwalls

@behinddwalls behinddwalls commented Jul 29, 2026

Copy link
Copy Markdown
Collaborator

Summary

Why?

The pusher extension is dead code. Merge execution moved to Runway, where the pluggable contract is runway/extension/merger — a Runway-owned interface that takes a MergeRequest off the queue rather than SubmitQueue entity.Batch values. Nothing in the tree imports submitqueue/extension/pusher any more: the only remaining references were the package's own files and the mocks target in the Makefile.

Removing it now keeps a second, divergent merge contract from drifting alongside the live one.

What?

Deletes the whole submitqueue/extension/pusher tree — the Pusher/Factory contract, the git-backed implementation, the fake, and the generated mock.

Drops ./submitqueue/extension/pusher/... from the go generate invocation in the mocks Makefile target. Left in place it would point make mocks at a path that no longer exists.

Drops the stale pusher mention from the changeset package docs, which listed it as an example of a decision/action extension resolving content through a Resolver.

Test Plan

make gazelle — no BUILD churn beyond the deleted packages
make fmt
make test — 77/77 pass
grep -rn "extension/pusher" over the tree returns nothing

Stack

  1. @ chore(submitqueue): remove dead pusher extension #457
  2. feat(runway): classify invalid merge requests as terminal #458
  3. feat(runway): dlq reconciler for merge topics #459
  4. feat(runway): git-backed merger with REBASE #460
  5. feat(runway): git merger SQUASH_REBASE and MERGE #461
  6. feat(runway): git merger PROMOTE #462
  7. feat(runway): wire the git merger into the server #463

## Summary

### Why?

The `pusher` extension is dead code. Merge execution moved to Runway, where the pluggable contract is `runway/extension/merger` — a Runway-owned interface that takes a `MergeRequest` off the queue rather than SubmitQueue `entity.Batch` values. Nothing in the tree imports `submitqueue/extension/pusher` any more: the only remaining references were the package's own files and the `mocks` target in the Makefile.

Removing it now keeps a second, divergent merge contract from drifting alongside the live one.

### What?

Deletes the whole `submitqueue/extension/pusher` tree — the `Pusher`/`Factory` contract, the git-backed implementation, the fake, and the generated mock.

Drops `./submitqueue/extension/pusher/...` from the `go generate` invocation in the `mocks` Makefile target. Left in place it would point `make mocks` at a path that no longer exists.

Drops the stale `pusher` mention from the `changeset` package docs, which listed it as an example of a decision/action extension resolving content through a `Resolver`.

## Test Plan

✅ `make gazelle` — no BUILD churn beyond the deleted packages
✅ `make fmt`
✅ `make test` — 77/77 pass
✅ `grep -rn "extension/pusher"` over the tree returns nothing
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant