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
Tighten doctor re-sync types: ReapplyOutcome enum and shared pack resolution #425
Two small type/duplication issues introduced or carried forward in #421:
ScopeReapplier.reapplyScope returns a Bool.true covers both "blocked because a configured pack cannot be produced" and "no packs to refresh". doctor --fix reads it as blocked, the tests call it blocked, and mcs update discards it via @discardableResult. The meaning lives only in the doc comment.
"Resolve identifiers or collect the unresolved" is written twice, in BootstrapCommand.runSync (declared packs) and ConfiguratorSupport.additivePackSet (configured extras). Both build a pack list plus an unresolved list, then report and throw.
Proposed fix
Return enum ReapplyOutcome { case applied, skipped } (or split skipped into blocked / nothingToDo if a caller needs it) so every call site reads clearly.
Add one helper on TechPackRegistry, e.g. packs(for ids:) -> (packs: [any TechPack], unresolved: [String]), and use it at both sites.
Activity