Skip to content

feat(review): deterministic review-effort/complexity estimator (1-5 band + minutes) #2151

Description

@JSONbored

Pure estimator turning files-touched, added-line count, file-type mix, and hunk spread into a 1-5 complexity band plus a minutes estimate — the deterministic core of #1955. No AI, no wiring; estimator module + tests only so downstream display/ROI slices stay small.

Deliverables

  • New pure module (e.g. src/review/effort-score.ts) estimateReviewEffort(files): {band: 1|2|3|4|5, minutes: number}
  • Reuse src/review/review-diff.ts addedLineCount + diffFilePriority and src/signals/path-matchers for the type mix; count hunks via the existing hunk-splitting approach
  • Documented, monotonic banding thresholds (bigger/more-scattered diff → higher band)
  • Tests: tiny→band1, large multi-file→band5, each threshold boundary (both sides), zero-file guard

References

  • src/review/review-diff.ts:16
  • src/review/review-diff.ts:25
  • src/review/review-diff.ts:33
  • part of #1955

Part of #1955.


size: S · held for later release (gittensor:feature once activated)

Metadata

Metadata

Assignees

No one assigned

    Labels

    gittensor:featureGittensor-scored feature linked to a feature issue — scores a 0.25x multiplier.

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions