Skip to content

refactor(gateway): publish via TopicRegistry; align orchestrator topic names with keys#150

Merged
behinddwalls merged 1 commit into
mainfrom
preetam/fix-land-api
May 7, 2026
Merged

refactor(gateway): publish via TopicRegistry; align orchestrator topic names with keys#150
behinddwalls merged 1 commit into
mainfrom
preetam/fix-land-api

Conversation

@behinddwalls
Copy link
Copy Markdown
Collaborator

@behinddwalls behinddwalls commented May 6, 2026

Summary

Make the gateway Land controller resolve its publish target through
consumer.TopicRegistry instead of taking a Publisher and topic-name string
directly. The destination is hardcoded to consumer.TopicKeyStart, mirroring
how orchestrator/controller/start hardcodes TopicKeyValidate as its publish
destination. The gateway never subscribes, so it does not need a topicKey
field on the struct.

In example/server/orchestrator, rename TopicKeyStart's topic name "request"
to "start" and consumer group "orchestrator-request" to "orchestrator-start"
so every stage's topic and consumer-group names match its TopicKey, matching
the convention already used by validate, batch, score, etc.

In example/server/gateway, build a publish-only TopicRegistry containing a
single entry for TopicKeyStart and pass it to NewLandController.

Test Plan

bazel build, bazel test

Issues

Stack

  1. @ refactor(gateway): publish via TopicRegistry; align orchestrator topic names with keys #150
  2. add change store extension for per-URI request claims #152
  3. duplicate detection via change store #144

…c names with keys

Make the gateway Land controller resolve its publish target through
consumer.TopicRegistry instead of taking a Publisher and topic-name string
directly. The destination is hardcoded to consumer.TopicKeyStart, mirroring
how orchestrator/controller/start hardcodes TopicKeyValidate as its publish
destination. The gateway never subscribes, so it does not need a topicKey
field on the struct.

In example/server/orchestrator, rename TopicKeyStart's topic name "request"
to "start" and consumer group "orchestrator-request" to "orchestrator-start"
so every stage's topic and consumer-group names match its TopicKey, matching
the convention already used by validate, batch, score, etc.

In example/server/gateway, build a publish-only TopicRegistry containing a
single entry for TopicKeyStart and pass it to NewLandController.
@behinddwalls behinddwalls marked this pull request as ready for review May 6, 2026 05:44
@behinddwalls behinddwalls requested review from a team and sbalabanov as code owners May 6, 2026 05:44
@behinddwalls behinddwalls added this pull request to the merge queue May 7, 2026
Merged via the queue into main with commit 7123378 May 7, 2026
13 checks passed
@github-actions github-actions Bot deleted the preetam/fix-land-api branch May 7, 2026 22:36
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