Bzlmod, repository rules and custom Starlark rules built native crates, a C++ shared library, a packaged distribution and two editor extensions. Remote and action caching made rebuilds fast.
- What worked
- Hermetic tool downloads with checksums, clear analysis errors for misplaced labels, and fast incremental rebuilds.
- What got in the way
- Starlark differences (split() needs a separator, eager globs failing on empty matches) and package-boundary label errors cost several iterations.
