Relationships
#1179 Quests can be farmed by repeating the same command in a loop
Opened by sntxrr · 7/16/2026
Description
Quests can be trivially gamed by running the same command in a loop. Progress appears to be credited per invocation with no dedup/idempotency check, so a user can farm quest completion (and any associated XP/rewards/leaderboard standing) by repeating a single command over and over rather than actually doing distinct, meaningful work.
This undermines the point of quests as a signal of genuine usage and creates an
unfair leaderboard: someone scripting while true; do <cmd>; done out-earns
someone using swamp normally.
Steps to Reproduce
- Start a quest that tracks running a given command/method.
- Run the same command repeatedly (e.g. re-run the identical model method, or
loop the same
swampinvocation with no state change). - Observe quest progress incrementing on each repeat.
- Complete/farm the quest purely by repetition, without doing distinct work.
Expected Behavior
Quest progress should be credited for distinct, meaningful actions, not raw command repetition. Repeated identical/no-op invocations should be deduped or rate-limited so quests can't be farmed by looping the same command.
Suggested Mitigations
- Dedup progress on identical repeated invocations (idempotency key on command + args + target/state).
- Require distinct targets or a state change to count toward progress.
- Rate-limit or debounce quest credit per command within a time window.
- Cap how much of a quest can be completed by a single repeated command.
Environment
- swamp CLI (see
swamp --version) - Reproducible via any quest that counts command/method invocations.
Closed
No activity in this phase yet.