Skip to content

Pests & weeds: reverts spawn cosmetic aphids (#23) - #26

Merged
rwrife merged 1 commit into
mainfrom
issue-23-pests-weeds
Jul 15, 2026
Merged

rwrife merged 1 commit into
mainfrom
issue-23-pests-weeds

Conversation

@rwrife

@rwrife rwrife commented Jul 14, 2026

Copy link
Copy Markdown
Owner

Closes #23

Introduces gentle negative signals: revert commits spawn cosmetic pests (aphids/weeds) on the plant that you clear by returning to a healthy commit cadence. Purely visual + moral — never lowers stage, streak, or health.

What changed

  • internal/gitstat: Activity gains a Reverts int window aggregate. Reverts are detected purely from the conventional Revert "…" commit subject (added %s to the log pretty-format) — no commit content/diffs read (honors PLAN.md §9). Fixture-covered, including prose "revert" false-positive rejection and out-of-window exclusion.
  • internal/plant: pestsFor maps Reverts → a bounded Pests int (clamped to MaxPests = 3), pure and unit-tested. Never touches Stage/Streak/Health. Clears after a clean healthy commit today (real work, not just more reverts).
  • internal/render: draws pests as % glyphs overlaid on the foliage, with a caption hint. Overlaid on raw art before the color pass so ANSI stays intact; degrades cleanly under --no-color/NO_COLOR/piped output.
  • cmd: --no-pests flag disables the overlay entirely (visual-only opt-out).
  • README: new "Pests & weeds" section + roadmap entry.

Acceptance criteria

  • gitstat.Activity.Reverts parsed from git log, fixture tests
  • internal/plant bounded Pests, pure + unit-tested, never lowers Stage/Streak
  • internal/render draws pest glyphs, degrades under --no-color
  • Pests clear after a clean healthy commit (transition tested)
  • --no-pests flag
  • README documents spawn + clear
  • go build ./... and go test ./... pass

Manually verified end-to-end against a repo with revert commits (pests appear, cap at 3, clear on clean commit, --no-pests suppresses).

@rwrife
rwrife merged commit 85b024a into main Jul 15, 2026
1 check passed
@rwrife
rwrife deleted the issue-23-pests-weeds branch July 15, 2026 22:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[feature] Pests & weeds — reverts/force-pushes spawn aphids to clear

1 participant