{"root_cid":"bafybeidgwywhtypevie34xi3rdqv4zs7mbj6ae3ayure572ew2wum3x4tu","model":"openai/gpt-5.4-mini","analyzed_at":"2026-05-02T22:54:00.919Z","result":{"schema_version":1,"category":"Finance","category_confidence":0.94,"summary":"HashLuck is a wallet-connected lottery dapp that reads contract state and shows winnings and entrance fees.","signals":["analysis-context.json: latest_probe reports `title: \"React App\"`, `manifest_url`, and `ipfs_path` for a mounted SPA.","root/manifest.json: `short_name` is `HashLuck` and `name` is `HashLuck App`.","root/static/js/main.8d88e5eb.js: renders `Your Lottery Results` and `Checking your results...`.","root/static/js/main.8d88e5eb.js: references `entranceFees(first: 1, where: { id: \"entrance-fee\" })` and `pendingFunds` / `hasUnclaimedWinnings`.","root/static/js/main.8d88e5eb.js: passes `connectWalletGuarded`, `disconnectWallet`, and `onWinningsClick` into the UI.","root/index.html: loads a local CRA bundle from `./static/js/main.8d88e5eb.js` only."],"quality":{"tier":"good","score":0.74,"is_substantive":true,"is_redirect_only":false,"is_placeholder":false,"rationale":"This is a functioning React lottery app with wallet flows and contract-backed state, though it still has a generic CRA shell and bundled output."},"security":{"risk":"low","risk_score":0.03,"threat_type":"none","safe_to_list":true,"findings":[]},"files_reviewed":["analysis-context.json","ipfs-app-analysis-system.md","root/index.html","root/manifest.json","root/asset-manifest.json","root/static/js/main.8d88e5eb.js"]}}
