Documents everything discovered, active or not, same scope as the catalog always
had. Fully regenerated every run -- unlike .env.example, nothing here is
meant to be hand-edited, so there's no "never overwrite" behavior.
contracts is ContractModel's own shape (file root-relative and
POSIX-separated already, per that model's convention) -- there is no
separate root parameter to resolve against, unlike this function's
pre-ADR-0038 signature.
Renders the full docs artifact: header + change summary + table of contents, then the comprehensive catalog, ownership matrix (if used), dependency graph, lifecycle report, and a security review.