--- # nuzlocke-tracker-sij8 title: Add gift clause rule status: completed type: feature priority: normal created_at: 2026-02-20T19:56:10Z updated_at: 2026-02-20T20:55:23Z parent: nuzlocke-tracker-49xj --- Add a new giftClause boolean rule: in-game gift Pokemon are free and do not count against the area's encounter limit. When enabled, a location with a gift allows both the gift encounter and a regular encounter, in any order. ## Checklist - [x] Add giftClause to NuzlockeRules interface and DEFAULT_RULES (default: false) - [x] Add RuleDefinition entry with core category - [x] Add origin column to Encounter model + alembic migration - [x] Add origin to EncounterResponse schema and frontend Encounter type - [x] Persist origin when creating encounters (frontend sends, backend stores) - [x] Backend: gift-origin encounters bypass route-lock check (skip_route_lock) - [x] Backend: existing gift encounters excluded from route-lock query - [x] Frontend: split encounterByRoute into regular and gift maps - [x] Frontend: routes with only gift encounters remain clickable for new encounters - [x] Frontend: gift encounters displayed on route cards with (gift) label - [x] Frontend: route filtering accounts for gift encounters