submitqueue/

directory
v0.3.0-20260716025418-... Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 16, 2026 License: Apache-2.0

README

SubmitQueue

SubmitQueue service layout:

  • gateway/ — Gateway service: entry point for land requests (Ping, Land, Cancel RPCs).
  • orchestrator/ — Orchestrator service: coordinates the land pipeline (batch, score, build, merge, conclude, ...).
  • extension/ — SubmitQueue-specific extension implementations (storage, counter, changestore, mergechecker, pusher, scorer, conflict, queueconfig, buildrunner, ...).
  • entity/ — SubmitQueue-specific domain entities.
  • core/ — Infrastructure shared across SubmitQueue's own services (gateway and orchestrator): the queue consumer framework and the request lifecycle. The SubmitQueue-scoped analogue of the repo-level core/.

Cross-domain building blocks live outside this directory: shared entities in entity/, shared extensions in extension/, and cross-domain infrastructure in the top-level core/.

Directories

Path Synopsis
Package core groups infrastructure shared across SubmitQueue's own services (gateway and orchestrator) — the SubmitQueue-scoped analogue of the repo-level core/.
Package core groups infrastructure shared across SubmitQueue's own services (gateway and orchestrator) — the SubmitQueue-scoped analogue of the repo-level core/.
changeset
Package changeset resolves batch identity into the changes a batch contains.
Package changeset resolves batch identity into the changes a batch contains.
changeset/fake
Package fake provides an in-memory changeset.Resolver for tests and examples.
Package fake provides an in-memory changeset.Resolver for tests and examples.
changeset/mock
Package mock is a generated GoMock package.
Package mock is a generated GoMock package.
fakemarker
Package fakemarker holds the shared "sq-fake=<token>" change-URI marker convention used by the extension fakes to inject failures from a request payload.
Package fakemarker holds the shared "sq-fake=<token>" change-URI marker convention used by the extension fakes to inject failures from a request payload.
topickey
Package topickey defines SubmitQueue pipeline stage identifiers.
Package topickey defines SubmitQueue pipeline stage identifiers.
extension
buildrunner/buildkite
Package buildkite implements buildrunner.BuildRunner backed by the Buildkite CI platform.
Package buildkite implements buildrunner.BuildRunner backed by the Buildkite CI platform.
buildrunner/fake
Package fake provides a buildrunner.BuildRunner whose outcome is driven by the triggered changes.
Package fake provides a buildrunner.BuildRunner whose outcome is driven by the triggered changes.
buildrunner/githubactions
Package githubactions implements buildrunner.BuildRunner backed by GitHub Actions workflow_dispatch.
Package githubactions implements buildrunner.BuildRunner backed by GitHub Actions workflow_dispatch.
buildrunner/mock
Package mock is a generated GoMock package.
Package mock is a generated GoMock package.
changeprovider/fake
Package fake provides a changeprovider.ChangeProvider whose outcome is driven by the input change.
Package fake provides a changeprovider.ChangeProvider whose outcome is driven by the input change.
changeprovider/mock
Package mock is a generated GoMock package.
Package mock is a generated GoMock package.
changeprovider/routing
Package routing provides a ChangeProvider that dispatches URIs to downstream change providers based on the URI's change type.
Package routing provides a ChangeProvider that dispatches URIs to downstream change providers based on the URI's change type.
conflict/all
Package all provides a conflict.Analyzer that pessimistically reports a conflict against every in-flight batch.
Package all provides a conflict.Analyzer that pessimistically reports a conflict against every in-flight batch.
conflict/fake
Package fake provides a conflict.Analyzer that decorates an existing analyzer: it delegates to the wrapped implementation for the happy path, but injects an error when a caller-supplied predicate matches.
Package fake provides a conflict.Analyzer that decorates an existing analyzer: it delegates to the wrapped implementation for the happy path, but injects an error when a caller-supplied predicate matches.
conflict/fileoverlap
Package fileoverlap provides a conflict.Analyzer that reports a conflict between two batches when they change one or more of the same files.
Package fileoverlap provides a conflict.Analyzer that reports a conflict between two batches when they change one or more of the same files.
conflict/mock
Package mock is a generated GoMock package.
Package mock is a generated GoMock package.
conflict/none
Package none provides a conflict.Analyzer that never reports a conflict.
Package none provides a conflict.Analyzer that never reports a conflict.
mergechecker/fake
Package fake provides a mergechecker.MergeChecker whose outcome is driven by the input change.
Package fake provides a mergechecker.MergeChecker whose outcome is driven by the input change.
mergechecker/mock
Package mock is a generated GoMock package.
Package mock is a generated GoMock package.
pusher/fake
Package fake provides a pusher.Pusher whose outcome is driven by the input changes.
Package fake provides a pusher.Pusher whose outcome is driven by the input changes.
pusher/git
Package git is a simple Pusher implementation backed by a local git checkout.
Package git is a simple Pusher implementation backed by a local git checkout.
pusher/mock
Package mock is a generated GoMock package.
Package mock is a generated GoMock package.
queueconfig/mock
Package mock is a generated GoMock package.
Package mock is a generated GoMock package.
queueconfig/yaml
Package yaml provides a YAML-file-backed implementation of queueconfig.Store.
Package yaml provides a YAML-file-backed implementation of queueconfig.Store.
scorer/fake
Package fake provides a scorer.Scorer that decorates an existing scorer: it delegates to the wrapped implementation for the happy path, but injects an error when a change URI carries a failure marker of the form "sq-fake=<token>":
Package fake provides a scorer.Scorer that decorates an existing scorer: it delegates to the wrapped implementation for the happy path, but injects an error when a change URI carries a failure marker of the form "sq-fake=<token>":
scorer/mock
Package mock is a generated GoMock package.
Package mock is a generated GoMock package.
speculation/dependencylimit/fake
Package fake provides a programmable dependencylimit.DependencyLimit for tests and examples.
Package fake provides a programmable dependencylimit.DependencyLimit for tests and examples.
speculation/dependencylimit/mock
Package mock is a generated GoMock package.
Package mock is a generated GoMock package.
speculation/dependencylimit/static
Package static provides a dependencylimit.DependencyLimit that always returns a fixed, construction-time value.
Package static provides a dependencylimit.DependencyLimit that always returns a fixed, construction-time value.
speculation/enumerator/chain
Package chain provides an enumerator.Enumerator that enumerates a batch as exactly one path, built directly on top of the full ordered chain of its active dependencies.
Package chain provides an enumerator.Enumerator that enumerates a batch as exactly one path, built directly on top of the full ordered chain of its active dependencies.
speculation/enumerator/fake
Package fake provides a programmable in-memory enumerator.Enumerator for tests and examples.
Package fake provides a programmable in-memory enumerator.Enumerator for tests and examples.
speculation/enumerator/mock
Package mock is a generated GoMock package.
Package mock is a generated GoMock package.
speculation/pathscorer/fake
Package fake provides a programmable pathscorer.Scorer for tests and examples.
Package fake provides a programmable pathscorer.Scorer for tests and examples.
speculation/pathscorer/mock
Package mock is a generated GoMock package.
Package mock is a generated GoMock package.
speculation/pathscorer/probability
Package probability provides a pathscorer.Scorer that scores each path as the probability that exactly that path's assumption holds: every base dependency lands and every non-base dependency of the head does not.
Package probability provides a pathscorer.Scorer that scores each path as the probability that exactly that path's assumption holds: every base dependency lands and every non-base dependency of the head does not.
speculation/prioritizationlimit/fake
Package fake provides a programmable prioritizationlimit.PrioritizationLimit for tests and examples.
Package fake provides a programmable prioritizationlimit.PrioritizationLimit for tests and examples.
speculation/prioritizationlimit/mock
Package mock is a generated GoMock package.
Package mock is a generated GoMock package.
speculation/prioritizationlimit/static
Package static provides a prioritizationlimit.PrioritizationLimit that always returns a fixed, construction-time value.
Package static provides a prioritizationlimit.PrioritizationLimit that always returns a fixed, construction-time value.
speculation/prioritizer/fake
Package fake provides a programmable prioritizer.Prioritizer for tests and examples.
Package fake provides a programmable prioritizer.Prioritizer for tests and examples.
speculation/prioritizer/mock
Package mock is a generated GoMock package.
Package mock is a generated GoMock package.
speculation/prioritizer/sticky
Package sticky provides a prioritizer.Prioritizer implementing sticky build slots: a running path keeps its slot until it resolves, and only the budget left over is handed out to pending candidates.
Package sticky provides a prioritizer.Prioritizer implementing sticky build slots: a running path keeps its slot until it resolves, and only the budget left over is handed out to pending candidates.
speculation/selectionlimit/fake
Package fake provides a programmable selectionlimit.SelectionLimit for tests and examples.
Package fake provides a programmable selectionlimit.SelectionLimit for tests and examples.
speculation/selectionlimit/mock
Package mock is a generated GoMock package.
Package mock is a generated GoMock package.
speculation/selector/all
Package all provides a selector.Selector that promotes every Candidate path in a batch's speculation tree — maximum parallelism, maximum build cost.
Package all provides a selector.Selector that promotes every Candidate path in a batch's speculation tree — maximum parallelism, maximum build cost.
speculation/selector/fake
Package fake provides a programmable selector.Selector for tests and examples.
Package fake provides a programmable selector.Selector for tests and examples.
speculation/selector/mock
Package mock is a generated GoMock package.
Package mock is a generated GoMock package.
storage/mock
Package mock is a generated GoMock package.
Package mock is a generated GoMock package.
validator/fake
Package fake provides a validator.Validator that always passes and a validator.Factory that returns it.
Package fake provides a validator.Validator that always passes and a validator.Factory that returns it.
validator/mock
Package mock is a generated GoMock package.
Package mock is a generated GoMock package.
gateway
orchestrator
controller/buildsignal
Package buildsignal implements the build poll loop.
Package buildsignal implements the build poll loop.
controller/cancel
Package cancel implements the orchestrator-side cancel controller.
Package cancel implements the orchestrator-side cancel controller.
controller/dlq
Package dlq contains controllers that consume messages from per-topic dead-letter queues and reconcile the affected request and batch entities into a terminal failed state.
Package dlq contains controllers that consume messages from per-topic dead-letter queues and reconcile the affected request and batch entities into a terminal failed state.
controller/merge
Package merge implements the trigger stage for the asynchronous merge.
Package merge implements the trigger stage for the asynchronous merge.
controller/mergeconflictsignal
Package mergeconflictsignal consumes merge-conflict check results from runway's signal queue, correlates them to the request by the echoed id, and either advances the request to the batch stage (mergeable) or fails it (conflicted).
Package mergeconflictsignal consumes merge-conflict check results from runway's signal queue, correlates them to the request by the echoed id, and either advances the request to the batch stage (mergeable) or fails it (conflicted).
controller/mergesignal
Package mergesignal consumes merge results from runway's merge-signal queue, correlates them to the batch by the echoed id, and transitions the batch to a terminal state — Succeeded when runway merged the batch, Failed when it could not — then fans the batch out to conclude (so member requests pick up the outcome) and speculate (so dependents can re-plan).
Package mergesignal consumes merge results from runway's merge-signal queue, correlates them to the batch by the echoed id, and transitions the batch to a terminal state — Succeeded when runway merged the batch, Failed when it could not — then fans the batch out to conclude (so member requests pick up the outcome) and speculate (so dependents can re-plan).
controller/prioritize
Package prioritize implements the queue-wide reconcile stage that rations a shared build budget across every in-flight batch of a queue.
Package prioritize implements the queue-wide reconcile stage that rations a shared build budget across every in-flight batch of a queue.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL