Move internalbridge under internal/ so it is truly unimportable · Entire

Move internalbridge under internal/ so it is truly unimportable

994971a→main·

Soph·1mo ago·6 files·+3 added/-3 removed

internalbridge lived at the module root, so despite its name it was a public, importable package: external callers could construct an internalbridge.Config via SyncConfig/ProbeConfig and call Run/Probe directly, skipping the stable API's Validate() entirely. The stable types are aliases into it (type RefKind = internalbridge.RefKind ...), which also froze it into the v1 surface.

Move it to internal/internalbridge. The Go internal-package rule now bars any out-of-module importer (compiler-enforced), closing the Validate() bypass, while the root-package type aliases keep resolving for external users (an alias to an internal type stays usable through the alias). Package name is unchanged, so only the three in-module import paths move; no call sites change.

Co-Authored-By: Claude Opus 4.8 (1M context) noreply@anthropic.com

Changes

6

6 unmodified lines

7
8
9
10
10
11
12
13

6 unmodified lines

"net/http"

"entire.io/entire/git-sync/internal/validation"
    "entire.io/entire/git-sync/internalbridge"
    "entire.io/entire/git-sync/internal/internalbridge"
// Options configures a Client. It is intentionally small in the first public cut.

Mclient.go+1/-1

1

No patch available.

Rinternal/internalbridge/config.go

1

No patch available.

Rinternal/internalbridge/model.go

1

No patch available.

Rinternal/internalbridge/model_test.go

3 unmodified lines
4
5
6
7
7
8
9
10

3 unmodified lines

"context"
    "errors"

"entire.io/entire/git-sync/internalbridge"
    "entire.io/entire/git-sync/internal/internalbridge"
// ProtocolMode controls source-side protocol negotiation.

Mtypes.go+1/-1

9 unmodified lines

10
11
12
13
13
14
15
16

9 unmodified lines

"entire.io/entire/git-sync"
    "entire.io/entire/git-sync/internal/syncer"
    "entire.io/entire/git-sync/internal/validation"
    "entire.io/entire/git-sync/internalbridge"
    "entire.io/entire/git-sync/internal/internalbridge"

const DefaultMaterializedMaxObjects = syncer.DefaultMaterializedMaxObjects

Munstable/client.go+1/-1