module check names a read of state its owner does not keep, and says what each module keeps and reads (novox/hq ADR 0201)

This commit is contained in:
jochen
2026-10-04 02:50:02 +02:00
parent aec55b7072
commit cde22ff627
3 changed files with 31 additions and 0 deletions
+7
View File
@@ -215,6 +215,13 @@ func CatalogueProblems(shelf Shelf) []string {
}
}
}
// A read of a module's state that module does not keep (novox/hq ADR 0201) — said only where the
// owner is on the shelf, as a consumer may be installed before its emitter.
var manifests []Manifest
for _, module := range shelfOrder(shelf) {
manifests = append(manifests, shelf[module])
}
problems = append(problems, StateReadsNothingDeclares(manifests)...)
sort.Strings(problems)
return problems
}