1package main23// The workbench judges a build along the axes internal/measure defines --4// one yardstick shared with tools/maturity, aligned with the semantic5// conventions the payloads speak, so "how good is this build" means the6// same thing in every room. The workbench keeps the ledgers whole where the7// report prints counts: every matched pair, every held pin with its reason,8// so a page can lay two builds' accounts beside each other and show exactly9// what a policy change moved.1011import "github.com/FelineStateMachine/atlas/internal/measure"1213type build = measure.Build14type mergeAccount = measure.MergeAccount15type featureCounts = measure.FeatureCounts1617func measureBundle(path string) (*build, error) { return measure.MeasureBundle(path) }1819func loadPins(path string, mapSlugs []string) (map[string]map[int64]string, error) {20 return measure.LoadPins(path, mapSlugs)21}2223func percent(part, whole int) string { return measure.Percent(part, whole) }