All of mesh-build-go's buildstep Go module leaves mesh-catalog for modules/mesh-delivery-sdk: the step run, fetch and release and the regenerate-and-compare step as the package steprun, the CPU share as steprun/buildcpu, the conformance kit as steprun/conformance, the seat generator as seatgen with cmd/seatgen, and cmd/mesh-pack. The three build modules and the builder's and checker's tests import the SDK and keep no copy; the SDK requires nothing of mesh-catalog. Code the build modules share is the delivery domain's SDK, not one module's package. It carries the build-module round's two new files of that package (dropdetected.go 247c422f, storedbuilds.go 904b8aed). Builds: design 47 G §464, §680, §327, §420, §495 Claude-Session: https://claude.ai/code/session_01NcbgfGKaxw984XyAPfLm4h
15 lines
510 B
Go
15 lines
510 B
Go
package steprun
|
|
|
|
import (
|
|
"os"
|
|
|
|
"git.novox.be/novox/mesh-delivery/modules/mesh-delivery-sdk/steprun/buildcpu"
|
|
)
|
|
|
|
// NodeLimits is what one step of a build module is held to (novox/hq ADR 0553 §4): the node's processor share from the
|
|
// word the composer gives the module (buildcpu.ShareWord), divided by the module's own capacity, own, over the machine's
|
|
// processors. Without the word, no thread limit: Threads is 0.
|
|
func NodeLimits(own int) buildcpu.Limits {
|
|
return buildcpu.FromWords(os.Getenv, own)
|
|
}
|