docs: upstream reconciliation triage (fork is 278 behind / 139 ahead of beam-cloud/beta9) - #6
Merged
Merged
Conversation
Adds the analysis backing the upstream sync. Configures nothing and changes no code — this is the input to a merge the owner will perform. Headline: upstream independently built the external-agent system this fork exists to provide (pkg/agent 42 files + cmd/agent vs our 16 + cmd/b9agent), across 43 commits from beam-cloud#1595 onward. Our agent, Tailscale service-discovery workarounds, external pool controller and GPU-type keepalive (fork PR #5) are all superseded. What survives is small and additive: the Ollama/native-MPS inference stack (upstream has zero ollama references), GPU_MPS, Sentry, the agentosaurus k3d/ARM64 manifests, and the SDK dep bumps. Recommends rebuilding on upstream/main rather than merging — a merge lands two rival agent implementations in one Go package, which git surfaces as add/add conflicts on pkg/agent/{agent,state,state_test}.go. Measured: 278 behind / 139 ahead; 18 conflicted files, of which 66 of ~91 hunks are regenerable lockfiles. No build or test was run — no Go toolchain on the analysis host. Co-Authored-By: Claudistrator <savetheplanet@agentosaurus.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Analysis only — no code changes, nothing merged or rebased. This is the
input to a merge @Wingie will perform.
Adds
docs/upstream-reconciliation-2026-08.md.Headline
Upstream independently built the external-agent system this fork exists to provide.
The fork was created because, delivering beta9 for a client, a part "was not
written or pushed from their side." That part was the external/remote worker
agent.
beam-cloud/beta9has since written it — and written more of it than we did.43800352)upstream/main(e13aa4eb)pkg/agent/cmd/b9agent/cmd/agent/withinstall/join/vastpkg/gateway+pkg/networkpkg/agent/transport.go, tsnetpkg/scheduler/pool_external.gopkg/scheduler/pool_agent.gogpu_typebolted onto our HTTP keepalivejoinRequest.GPU/GPUIDs/GPUCount+NormalizeGPUType()pkg/agent/service/)43 upstream commits, from
4850eff8(beam-cloud#1595) through beam-cloud#1663fix keepalives,beam-cloud#1661
improve gpu offerings, beam-cloud#1676clean up gpu assignment logic, beam-cloud#1738vast sidecar.Triage summary
SUPERSEDED (drop): our agent +
cmd/b9agent; GPU-type keepalive propagation(this is fork PR #5 — recommend closing); the Tailscale/external-worker config
surface (
directRedisHost,External*Port,External*Registry,K3S_HOST_IP);pool_external.go(upstream renamed it topool_provider.goand replaced its role);~9 commits of Go/tailscale version churn; 20 MB of committed Go binaries
(
b9agent11.2 MB,bin/agent-go9.1 MB) still tracked despite two commitsclaiming removal.
STILL NEEDED (carry): the Ollama / native-MPS inference stack —
git grep -il ollamaover upstream returns nothing;
GPU_MPS(upstream added 29 GPU types, none Metal);Sentry init; the agentosaurus k3d/ARM64/registry manifests + CI; SDK dep bumps
(
rich<15,websockets<17); the PR #4 security fixes, which mostly guard our code.UNCLEAR — needs your call: (1) is the MPS/Ollama inference stack still a product
requirement? It is the only substantial thing upstream lacks — if it's retired, the
whole fork can be replaced by vanilla upstream + a manifests overlay. (2) Does
upstream's agent cover the client deployment? (3) Should
GPU_MPSgo upstream instead?(4) Does upstream now build multi-arch cleanly (would drop ~10 more commits)?
(5) Close PR #5? (6) OK to regenerate the 14 protobuf client files via
make protocol?Recommendation: rebuild on upstream, don't merge
A merge lands two rival agent implementations in one Go package — git surfaces this
as add/add conflicts on
pkg/agent/{agent,state,state_test}.go. (They share zerotop-level identifiers, so a "keep both" resolution might even compile. That's a trap.)
Measured merge cost: 18 conflicted files, but 66 of ~91 hunks are
go.mod/go.sum/uv.lock— regenerate, don't hand-merge. The remaining ~25 hunksare small; all three
pkg/gateway/gateway.goconflicts are just our inferenceregistry vs upstream's changed signatures. The conflicts are not the hard part.
Full ordered plan, verification commands (from upstream's
Makefile+ci.yml),and rollback are in the doc.
Safety artifacts pushed
fork-pre-upstream-sync-20260818→43800352(current parent submodule pin)upstream-main-snapshot-20260818→ upstreammain, so upstream history isin the fork without configuring a remote (this fork had no
upstreamremote)Caveats
The verification commands in the doc were read from upstream's CI, not executed.
FlowState parent repo;
mainhere was not touched; no containers or the k3scluster were touched.
Init:Errorfor 26 days, so there is no healthybaseline to regress against — worth fixing before the sync so post-merge
failures are attributable.
Co-Authored-By: Claudistrator savetheplanet@agentosaurus.com