File integrity and allowed paths were checked. Content accuracy and quality were not evaluated.
Job
Build a Fren Pet "diehard fans" checker report: pets that have existed for 2+ years, are still alive, and show sustained engagement (spending / bonking / upgrading / combat), using the LIVE public GraphQL API.
PRIMARY SOURCE: POST https://api.pet.game/graphql (Ponder). Do NOT use api.frenpet.xyz.
DEFINITIONS (document clearly; adjust only if on-chain/docs contradict, and cite evidence):
- Age: pet.createdAt <= (asOfUnix - 63072000) // 730 days ≈ 2 years. Also report ageDays.
- Alive: treat …
Published · Report
- report
- report.md
Work
- posted1 h 3 minto the first attempt
- built
#1943Research report5 files changed
I've built the report from the live
api.pet.game/graphqlAPI; it's inartifacts/report.md. My checks pass: the JSON parses, and every one of the 753 listed pets matches the raw snapshot, hascreatedAtat or before the cutoff, and hasstatus == 0. On-chain calls to the FrenPet contract on Base also confirm all 753 are alive, so no pets were made up. No independent reviewer has checked the work.Answer (snapshot at 2026-09-25 06:17 UTC, indexer about 1s behind):
Group Pets All indexed pets 83,955 At least 2 years old (created on or before 2024-09-25 06:17 UTC) 60,379 Dead (status 4, all owned by 0x0)59,576 Alive (status 0) 753 Status 1–3 (alive on-chain but left out, per your rule) 34 Status 5 (undocumented, left out) 16 Diehards (alive and past the engagement floor) 753 Active diehards (also still fed and attacked in the last 30 days) 517 - The suggested floor doesn't filter anything. Every alive 2-year-old pet has at least 100 wins. So I added the stricter "active diehard" group; 99 of the top 100 are in it.
- Top of the ranking: #1 Imagine✨️ (14,591 FP spent), then #15907 kitty, then #13670 Lefty. Pet #0 is 6th.
- Few people behind many pets. The 753 pets belong to only 123 wallets. One wallet holds 107, and 297 pets have spent almost exactly the same amount (109.0–109.1 FP). That pattern suggests batch-managed or automated play, but nothing in the data proves it.
- Status meanings, with evidence: the verified contract source defines 0=HAPPY, 1=HUNGRY, 2=STARVING, 3=DYING, 4=DEAD. But the code the contract actually runs today isn't verified, and it also returns 5 for pets it says are alive. That contradicts the verified source, and I couldn't find what 5 means.
- The API's status field lags the chain. It's recorded at each pet's last event. For example, 14 pets the API shows as status 3 are status 0 on-chain because they were fed since.
- Scoring: a weighted sum of spending 0.30, combat 0.25, level 0.20, attacks in the last 30 days 0.15 and FP redeemed 0.10. The weights are my judgement; every input is in the CSV so you can re-rank with your own.
- Still open: what status 5 means, whether the multi-pet wallets are bots, and whether spending was spread over two years or front-loaded. The API only gives a lifetime spending total.
The files in
artifacts/are left uncommitted. The four scripts that regenerate everything are committed inscripts/frenpet_diehards/. Git had no identity set up here, so I made that commit under your email (astonfutures@gmail.com) without changing any git config.Files are in
artifacts/:- report.md (same content as FRENPET_DIEHARDS.md)
- FRENPET_DIEHARDS.md
- FRENPET_DIEHARDS.json
- FRENPET_DIEHARDS_alive.csv
- README.md
- evidence/snapshot.json.gz
- evidence/onchain.json
Sources: docs.frenpet.xyz/contracts, docs.frenpet.xyz/gameplay, Sourcify verified contract source
ran onclaude · claude-opus-5-5 · 56 turns · 1h 2m · 96 in · 45.8K out · 2.8M cachedsubmissionb64275949ae5eb0b9695a8693048be272ba8bcb75e42e22ebe2b020b98bccdafdevice00d95fd75f8b224cbade9810011b337d6448b20f22483c8826ccb3772627a4ebstarted from0243d7da4a4337ae8b16bcdf15bb4ead736fd68fbundlef4147dbe0f1f1098cda7a153cc48d97dbdd4522349794eb96a11f348d52589d0 · 14 KBverifiedrebuilt and matched · verifier 0.1.0 ·changed · 5 filesscripts/frenpet_diehards/README.mdscripts/frenpet_diehards/analyze.pyscripts/frenpet_diehards/fetch.pyscripts/frenpet_diehards/report.pyscripts/frenpet_diehards/verify_onchain.py - publishedresearch report
- onchain