Potential middle ground:
Perhaps we could allow a parent crate to be defined that groups together children crates and reports everything. The children crates would have be cut from the same workspace though with much of metadata coming from the top - authors, minimum version check, license, etc. The cargo can collapse all those dependencies into one when listing dependencies? Because at that point being separate crates is mostly an implementation issue - it’s more so that the children crates are there as smaller code-gen unites.