You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Closure: the design record states the sealed contract #630
The 3.5.x per-provider design docs drop any language describing the resource as a struct; each records the sealed shape.
4-resource-management.md records what the seal buys: the resource model's guarantees — claims are true when made, identity is the catalog key, a string is a key never a constructor, the graph carries complete intent — now rest on the compiler rather than on convention, because a resource cannot be produced outside its provider.
Superseded by #647. Re-filed after phase-1 investigation changed the feature's shape — see the rewritten plan.
Three things moved:
This issue's enabling fact was false.pkg/op/provider/<p>/gen is a distinct package from the provider (same package name, different import path), so a gen file can never name an unexported type. Ruling 4 (2026-08-24) gives the URI fragment to the interface instead of the struct, which makes the gen files correct as-is.
The work splits in two parts, so the goal is actually reached: part 1 seals the eight single-resource providers, part 2 converts file's four variants. The original left file a permanent exception in a new direction.
Phases regroup by risk rather than footprint — the four Unpacker implementers share one silent failure mode and are proved together.
Activity
David-Noble-at-work commentedon Aug 24, 2026
Superseded by #647. Re-filed after phase-1 investigation changed the feature's shape — see the rewritten plan.
Three things moved:
pkg/op/provider/<p>/genis a distinct package from the provider (same package name, different import path), so a gen file can never name an unexported type. Ruling 4 (2026-08-24) gives the URI fragment to the interface instead of the struct, which makes the gen files correct as-is.file's four variants. The original leftfilea permanent exception in a new direction.Unpackerimplementers share one silent failure mode and are proved together.New tasks: #641 #642 #643 #644 #645 #646 #647.