CAC-264: Finish Go package ownership boundaries - #182
Merged
Conversation
added 12 commits
August 7, 2026 16:09
Signed-off-by: Yue Sun <yue.s.sun@oracle.com>
Signed-off-by: Yue Sun <yue.s.sun@oracle.com>
Signed-off-by: Yue Sun <yue.s.sun@oracle.com>
Signed-off-by: Yue Sun <yue.s.sun@oracle.com>
Signed-off-by: Yue Sun <yue.s.sun@oracle.com>
Signed-off-by: Yue Sun <yue.s.sun@oracle.com>
Signed-off-by: Yue Sun <yue.s.sun@oracle.com>
Signed-off-by: Yue Sun <yue.s.sun@oracle.com>
Signed-off-by: Yue Sun <yue.s.sun@oracle.com>
Signed-off-by: Yue Sun <yue.s.sun@oracle.com>
Signed-off-by: Yue Sun <yue.s.sun@oracle.com>
Signed-off-by: Yue Sun <yue.s.sun@oracle.com>
fredericsun
force-pushed
the
cac-264-go-package-ownership-refactor
branch
from
August 7, 2026 23:27
ca76402 to
e6819ab
Compare
Codex reviewFiles reviewed
FindingsBlockingNone. Should-fixNone. NitNone. Per-category coverage
Verdictapprove |
Codecov Report❌ Patch coverage is 📢 Thoughts on this report? Let us know! |
Signed-off-by: Yue Sun <yue.s.sun@oracle.com>
Codex reviewFiles reviewed
FindingsBlockingNone. Should-fix
NitNone. Per-category coverage
Verdictchanges-requested |
Signed-off-by: Yue Sun <yue.s.sun@oracle.com>
Codex reviewFiles reviewed
FindingsBlockingNone. Should-fixNone. NitNone. Per-category coverage
Verdictapprove |
heymrbox
approved these changes
Aug 8, 2026
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.
Summary
Complete the Go package ownership-boundary refactor described in
docs/design/repository-boundaries.md.This PR:
pkg/adapters/runtimeto the supported core adapter interfaces andregistry contracts. Built-in subscriber, kernel-check, and runtime-specific
implementation details are now privately owned.
pkg/server/proto/...togen/inferencecache/v1alpha1./snapshotJSON contract intointernal/controlplaneapi, separate from mutable index domain types.pkg/index→internal/indexpkg/server→internal/serverpkg/adapters/engine→internal/subscriberpkg/cli/doctor→internal/cli/doctorpkg/testing→internal/testutilpkg/version→internal/versionpkg/engineclientas the focused public engine-client boundaryand moves reference-stack canary behavior to
internal/canary.pkg/renderreserved without introducing a speculative public API.for the new package layout.
The protobuf package, service names, field numbers, and wire behavior remain
unchanged. The
/snapshotJSON contract is also preserved, including thedeprecated zero-valued
memoryUsedkey. HTTP routes, gRPC methods, metrics,TLS, authentication, CLI behavior, subscriber behavior, and cache-index
behavior are not intentionally changed.
This does intentionally change several Go import paths and reduce the exposed
Go API surface. No forwarding packages are retained because the project has
not been formally deployed.
Local
make cipassed, including formatting, vet, lint, Prometheus validation,documentation synchronization, race-enabled Go tests, and production binary
builds. Optional golden-vector verification was skipped because the local
Python environment does not have
xxhash.Linked issues
CAC-264
Checklist
Vendor-neutral naming (required — see CONTRIBUTING.md)
oci/oracle/*.oci.com/oraclecloud.comin any API group, CRD group, proto package, gRPC service/package, Kubernetes namespace, image registry, Helm chart, or Go module path.pkg/adapters/.../) — never in core controllers, CRD types, the proto contract, or default config.make install-hooksonce, then it runs on every commit).Quality
Signed-off-by:trailer (git commit --signoff).make reuse-lintpasses (SPDX headers and licensing metadata are complete).make buildandmake testpass locally.make lintclean (gofmt + go vet).make manifests generateproduces no drift (generated code committed)..status, CLI, gRPC/HTTP, install bundle/RBAC, samples)? If so, the install-smoke gate asserts it (see CONTRIBUTING.md).Contracts (only if touching CRDs or proto)
v1alpha1consumers (engines, gateway clients).proto/changed,docs/design/grpc-contract.mdis updated to match (the pre-commit hook enforces this).api/v1alpha1/*_types.go) or the proto contract changed, the documentation is updated to match — the docs site (site/) and/or the design docs (docs/). CI enforces this (make verify-docs-sync); add theno-docs-neededlabel to waive a genuinely doc-exempt change.