Skip to content

feat(stovepipe): add start controller for the change ingress flow#229

Draft
mnoah1 wants to merge 1 commit into
mnoah1/lift-core-consumerfrom
mnoah1/stovepipe-start-controller
Draft

feat(stovepipe): add start controller for the change ingress flow#229
mnoah1 wants to merge 1 commit into
mnoah1/lift-core-consumerfrom
mnoah1/stovepipe-start-controller

Conversation

@mnoah1

@mnoah1 mnoah1 commented Jun 9, 2026

Copy link
Copy Markdown
Contributor

Stovepipe gateway -> start -> validate skeleton:

  • ChangeEvent: single-commit, source-agnostic ingress payload ({"uri": "git://owner/repo/branch/revision"}) published to the start topic by the webhook/poller.
  • start controller deserializes the ChangeEvent, derives the owner/repo partition key so a repo's commits stay ordered, and publishes a thin ChangeURI reference to the validate topic (publish-only until validate lands).
  • stovepipe/entity/git parses git:// commit identities into a ChangeID, domain-scoped like submitqueue's github/phabricator ChangeID parsers.

Deferred to follow-up PRs once their consumers exist: orchestrator commit storage, the gateway status/log sinks, and lifting the cross-domain change identity into the shared entity package (a SubmitQueue refactor unrelated to this flow).

Why?

What?

Test Plan

Issue

Stovepipe gateway -> start -> validate skeleton:
- ChangeEvent: single-commit, source-agnostic ingress payload
  ({"uri": "git://owner/repo/branch/revision"}) published to the start topic
  by the webhook/poller.
- start controller deserializes the ChangeEvent, derives the owner/repo
  partition key so a repo's commits stay ordered, and publishes a thin
  ChangeURI reference to the validate topic (publish-only until validate lands).
- stovepipe/entity/git parses git:// commit identities into a ChangeID,
  domain-scoped like submitqueue's github/phabricator ChangeID parsers.

Deferred to follow-up PRs once their consumers exist: orchestrator commit
storage, the gateway status/log sinks, and lifting the cross-domain change
identity into the shared entity package (a SubmitQueue refactor unrelated to
this flow).
@mnoah1 mnoah1 force-pushed the mnoah1/stovepipe-start-controller branch from 424e438 to 5ca558a Compare June 9, 2026 21:58
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