Skip to content

Comments

Reorg introduce api package containing Entry interface#401

Open
steiler wants to merge 4 commits intomainfrom
reorgIntroduceAPI
Open

Reorg introduce api package containing Entry interface#401
steiler wants to merge 4 commits intomainfrom
reorgIntroduceAPI

Conversation

@steiler
Copy link
Collaborator

@steiler steiler commented Feb 19, 2026

reorganize the tree package by introducing a new pkg/tree/api surface and a pkg/tree/consts package, then updates the codebase to use those exported interfaces, types, and constants.

  • Adds a dedicated API layer (pkg/tree/api) with Entry, LeafVariants, delete-path types, and non-revertive tracking; introduces pkg/tree/ops helpers (e.g., GetByOwner) and an ops interface.
  • Moves tree constants to pkg/tree/consts and replaces many direct tree.RunningIntentName/RunningValuesPrio/Replace* usages with consts equivalents across datastore, targets, server, and tests.
  • Refactors core tree implementation to use the new API types: method visibility changes (e.g., ShouldDelete, GetOrCreateChilds, ToJsonInternal), LeafVariants accessors, and TreeContext now exposing SchemaClient, ExplicitDeletes, and NonRevertiveInfo.
  • Updates mocks and generated code to reflect new API package paths and added interface methods; adds a new mock for SdcpbPath.
  • Adjusts update/path handling with SdcpbPath() and updates callers, plus broad test updates to match new APIs and constants.

@steiler steiler requested a review from a team as a code owner February 19, 2026 14:24
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.

1 participant