AtAnyRate/BACKLOG.md
ilia 1a7298f755 Initial commit: EventRate pipeline, fuzzy dedup, Airbnb retries
Wire up Ticketmaster, SeatGeek, Telegram, scoring, Playwright stubs.
Deduplicate events with fuzzy venue/name matching. Retry calendar
updates on transient failures. Backlog tasks marked complete.

Made-with: Cursor
2026-04-04 12:31:53 -04:00

2.6 KiB

Backlog

Epic: Automated Airbnb Event Pricing

Story 1: Event Data Ingestion

As a host, I want to fetch upcoming Toronto events from public APIs so I can identify dates with high accommodation demand.

Task Status Notes
1.1 Integrate Ticketmaster Discovery API Done src/providers/ticketmaster.py, major-venue filter
1.2 Integrate SeatGeek API Done src/providers/seatgeek.py, score threshold
1.3 Normalize events to common model Done NormalizedEvent in src/models.py
1.4 Deduplicate events across providers Done src/dedup.py — date + fuzzy venue + fuzzy name

Story 2: Telegram Notification System

As a host, I want to receive a Telegram message containing the flagged dates so I can review findings before automated pricing kicks in.

Task Status Notes
2.1 Build Telegram bot alerter Done src/notifications/telegram.py (httpx, Bot API)
2.2 Format message with grouped dates Done MarkdownV2, grouped by date

Story 3: Browser Automation (Playwright)

As a host, I want a script to log into Airbnb and change prices on specific dates so I don't have to do it manually.

Task Status Notes
3.1 Handle authentication & session state Done src/airbnb/auth.py, scripts/airbnb_login.py
3.2 Automate calendar UI updates Done src/airbnb/calendar.py (selectors need live verification)
3.3 Add retry/fallback on UI failure Done Retries in update_price; runner skips dates on failure

Story 4: Scoring & Filtering

As a host, I want events scored by likely pricing impact so I only adjust prices for meaningful demand drivers.

Task Status Notes
4.1 Define venue size/type scoring rules Done src/scoring/impact.py (VENUE_CAPACITY)
4.2 Filter by date window (lookahead) Done filter_by_window in src/main.py, lookahead_days in config

Story 5: Orchestration & Deployment

As a developer, I want to orchestrate the pipeline and deploy via Docker on cron.

Task Status Notes
5.1 Main CLI runner with modes Done src/main.py--dry-run, --alerts-only, full
5.2 Dockerfile for Playwright Done Dockerfile (Chromium + deps)
5.3 Cron configuration guide Done See README.md

Future ideas (not scheduled)

  • Eventbrite integration
  • PredictHQ integration (paid, but powerful)
  • Web scraping fallback for niche events
  • Historical price tracking (SQLite)
  • Multi-listing support
  • Smarter pricing model (base + multiplier per event score)
  • Slack/Discord notification channel
  • Dashboard/web UI