Principal direction (2026-08-06, relayed during Goal swift-institute/.github#358): public/package API should carry Institute typed values (typed identifiers, digests, names) rather than bare String/Int atomics where a canonical owner type exists (e.g. hex digests, SHAs, repository identifiers). Today nothing fires. A precise rule needs a mapping from concept → owner type (compose the capability records rather than hard-coding); a first increment could flag suspicious parameter names (sha, digest, repository) typed as bare String in public API. Known offender surface to seed fixtures: the Goal #358 programme packages (swift-institute/.github Tools/InstituteCI, Tools/InstituteCIControl) carry bare-String coordinates; their typing sweep is follow-up on the Goal. Filed by session 7697e9db.
Principal direction (2026-08-06, relayed during Goal swift-institute/.github#358): public/package API should carry Institute typed values (typed identifiers, digests, names) rather than bare
String/Intatomics where a canonical owner type exists (e.g. hex digests, SHAs, repository identifiers). Today nothing fires. A precise rule needs a mapping from concept → owner type (compose the capability records rather than hard-coding); a first increment could flag suspicious parameter names (sha,digest,repository) typed as bare String in public API. Known offender surface to seed fixtures: the Goal #358 programme packages (swift-institute/.github Tools/InstituteCI, Tools/InstituteCIControl) carry bare-String coordinates; their typing sweep is follow-up on the Goal. Filed by session 7697e9db.