OK. I'll just point out that if the repo contains a set of related packages, then normally you'd only put a go.mod at the top level.
For an example of this in action, see the "testify" group of packages:
The subdirectories are separate packages. For example I can do
import (
)
...
assert.NotEqual(t, 1, 2)
require.True(t, true)
However, you'll see there's no go.mod in the package directories. They are anchored to the go.mod at the root.