Skip to content

Add Cloud Agent development environment - #1

Open
Javiops wants to merge 1 commit into
mainfrom
cursor/setup-dev-environment-1598
Open

Javiops wants to merge 1 commit into
mainfrom
cursor/setup-dev-environment-1598

Conversation

@Javiops

@Javiops Javiops commented Aug 30, 2026

Copy link
Copy Markdown
Owner

Summary

Sets up a reproducible Cloud Agent development environment for the Build Tracker FastAPI app (League of Legends shop-decision tracker). The repository previously had no .cursor/environment.json, README, or setup script.

What's added

  • .cursor/environment.json — declares the environment: ubuntu user, an idempotent install script, a web terminal that serves the app with uvicorn app.main:app --host 0.0.0.0 --port 8000, and exposes port 8000.
  • scripts/cloud-install.sh — idempotent bootstrap that installs the python3-venv system package if missing, creates a .venv, installs requirements.txt (FastAPI, uvicorn, httpx, scikit-learn, torch), and warms the Data Dragon static-data cache.

How to run it

  • App: source .venv/bin/activate && uvicorn app.main:app --host 0.0.0.0 --port 8000 → UI at /, JSON API under /api/*.
  • Logic test: source .venv/bin/activate && python -m scripts.test_visits.

Note on RIOT_API_KEY

The live Sync Faker flow needs a Riot developer key (which expires every 24h). It is intentionally treated as an optional secret rather than baked into the environment; the app runs fully without it and prompts to add one. Copy .env.example to .env and add a key to enable live syncing.

Validation

Check Result
pip install -r requirements.txt (incl. torch) Succeeded
install idempotence Passed (ran twice, no changes)
python -m scripts.test_visits Passed — 4/4 ok (uses live Data Dragon fetch)
Server boot + /api/status ddragon_version: 16.17.1 resolved over the network; GET / → 200
Reconstruction → SQLite → API → UI Verified with seeded synthetic games (demo-only seed, not committed)
Draft environment build bld-20260830-0a6c8517 SUCCEEDED — clean git checkout + cloud-install.sh + full dependency install + Data Dragon warm

UI walkthrough (headless-browser screenshots of the running app)

Match list with live champion icons, and a full game timeline showing every player's shop visits, items bought, and the per-visit board:

Build Tracker landing page
Game timeline detail

Player search ("faker" alias resolves to Hide on bush#KR1) and the filtered header after selecting the player:

Player search
Filtered to selected player

To show artifacts inline, enable in settings.

Open in Web Open in Cursor 

Co-authored-by: Javiops <Javiops@users.noreply.github.com>
@Javiops
Javiops marked this pull request as ready for review August 30, 2026 13:15
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.

2 participants