Move to the released SDK and say ValidationErrors - #226
Merged
Merged
Conversation
The ConfigHub API renamed Unit.ApplyGates to ValidationErrors and ApplyWarnings
to ValidationWarnings. The examples now use the new names.
**The SDK bump is a prerequisite, not a tidy-up.** The rename needs a released
SDK that has the field, and the only one that does is v0.4.12: v0.4.11 predates
it. v0.4.12 also carries the Ref/Resolve rework, so moving to it means adapting
to that at the same time — there is no version that gives one without the other.
ResolveSpace(ctx, c, slug) -> ResolveSpace(ctx, c, ParseRef(slug), ResolveOpts{})
ResolveFilter(ctx, c, id, s) -> ResolveFilter(ctx, c, ParseRef(s), ResolveOpts{Space: id})
and those helpers now return Extended* envelopes, so `sp.SpaceID` became
`sp.Space.SpaceID` and a returned `*Invocation` became `inv.Invocation`. Applied
at the lines the compiler named rather than by substitution — some `sp` in the
same files come from EnsureSpace, which still returns a plain *Space, and a
blanket rewrite broke exactly that.
The npm packages needed the same treatment: `@confighub/api` and
`@confighub/rtk-query` go to ^0.4.6, which is the first release carrying the
field. Several apps had node_modules as old as 0.1.2 — below their own declared
floor — so the lockfiles move too.
`triggers-and-applygates` is left alone throughout: it is the name of a skill,
not a field.
Verified rather than assumed, since a version bump is not proof anything
compiles: all ten Go modules build and vet clean; fleet-ql (298 tests),
configboard (166) and webkit (29) pass; and sec-scanner, rbac-manager,
promoter, cost-estimator and configboard build, which is what typechecks the
rename in the four apps that have no test files at all.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Ge1C6Wm1qR3WUCxEZKPboc
bgrant0607
force-pushed
the
validation-errors-rename
branch
from
September 9, 2026 22:18
9a8f0e0 to
40288fb
Compare
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.
The ConfigHub API renamed
Unit.ApplyGatestoValidationErrorsandApplyWarningstoValidationWarnings. The examples now use the new names.The SDK bump is a prerequisite, not a tidy-up
The rename needs a released SDK that has the field, and the only one that does
is v0.4.12 — v0.4.11 predates it. v0.4.12 also carries the Ref/Resolve
rework, so there is no version that gives one without the other. That migration
is most of this diff:
and those helpers now return
Extended*envelopes, sosp.SpaceIDbecamesp.Space.SpaceIDand a returned*Invocationbecameinv.Invocation.The envelope fixes were applied at the lines the compiler named, not by
substitution: some
spin the same files come fromEnsureSpace, which stillreturns a plain
*Space, and a blanket rewrite broke exactly that inmanagerkit/guardrails/pack.go.On the TypeScript side,
@confighub/apiand@confighub/rtk-querygo to^0.4.6, the first release carrying the field. Several apps hadnode_modulesas old as 0.1.2 — below their own declared
^0.4.4floor — so sevenlockfiles move with them.
triggers-and-applygatesis left alone throughout: it is the name of a skill,not a field.
Verified, not assumed
A version bump is not proof anything compiles, and four of the apps
(
sec-scanner,rbac-manager,promoter,cost-estimator) have no testfiles at all, so
npm testexits 0 there without checking anything. Thosewere built instead, which is what actually typechecks the rename.
go buildandgo vetcleanReviewing this
The migration and the rename are in one commit because they are genuinely
coupled — the rename does not compile without the bump. If it helps, the
mechanical parts are the
go.mod/package.json/lockfile changes and theResolve*call sites; everything else is the terminology.🤖 Generated with Claude Code
https://claude.ai/code/session_01Ge1C6Wm1qR3WUCxEZKPboc