maniator / maniator/verticopolis
[Bug]: [P3] Recycling demand/fill gauges flap during the lunch census dip
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 5
- Forks
- 1
- PR merge metrics
- No merged PRs in 30d
Description
Imported from the engineering backlog (
_bmad-output/implementation-artifacts/backlog.md, storyrecycling-census-flap).
Priority P3 (do-first order) | Severity: low | Status: idea | Epic: gameplay-feel | Type: bug | Recorded: 2026-07-12
What happened?
Party decision 2026-07-12 (PR #184 takeover review, from Sally's UX pass). recyclingDemandMet() and recyclingFill() read totalPopulation(), which now swells with live venue customers, so a tower within a knife's edge of exactly 2,500-per-center can flip the 4-star recycling gate at the lunch peak and re-arm the edge-triggered "Garbage is piling up" bulletin daily. Fix candidates: base the recycling gate and nudge on a non-transient census (baseline without customersIn), a daily-peak smoothed value, or debounce the bulletin across a day. Also consider Sally's stats-overview footnote ("Population varies through the day as customers visit venues") which preempts the general "is my POP broken?" question after a star is minted at a lunch peak.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by locating recyclingDemandMet(), recyclingFill(), totalPopulation(), and the edge-triggered "Garbage is piling up" bulletin logic. Compare how customersIn affects the recycling gate and nudge during the lunch census dip, then review the listed smoothing, baseline, or debounce candidates. Done means the gauges and bulletin no longer flap across the daily population variation, with the stats-overview footnote handled if that approach is chosen.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- game-dev
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100