ovecc drift
Architecture trend over time: per-metric base→head deltas (coupling, complexity, security, dead code, ownership) and a trend classification. "Is the codebase getting worse?"
Usage: ovecc drift [OPTIONS]
Example
$ ovecc drift
Drift: snapshot:85ee2372… -> snapshot:5ab78093…
Coupling: +14.29%
Trend: worsening
dependencies: 17 -> 22 (5)
external_dependencies: 5 -> 6 (1)
circular_dependencies: 0 -> 1 (1)
coupling_density: 0.23 -> 0.27 (0.03)
boundary_violations: 1 -> 2 (1)
security_findings: 7 -> 13 (6)
max_cyclomatic: 3 -> 24 (21)
high_complexity_functions: 0 -> 1 (1)
unused_exports: 8 -> 10 (2)
Only changed metrics are listed. The full metric catalog is in the metrics reference.
Options
| Option | Effect |
|---|---|
--since <ref> | Compare against the snapshot taken at this Git ref (or a snapshot id) instead of the previous snapshot — e.g. --since main, --since v1.0.0 |
Plus the global options.
Semantics
- The trend classification follows the coupling direction; read the per-metric deltas for the full picture (a big cleanup that deletes a module can tighten coupling density while clearly improving everything else).
security_findingscounts code findings only; OSV advisories are tracked separately asdependency_advisories, so runningaudit --fetchnever reads as a code-quality regression.- Needs at least two snapshots (or a snapshot at the
--sinceref).
Related
- Drift & trends guide
history— one metric across every snapshot