{"assessments":[],"deployments":[],"fuzz":[],"identity":{"adapter":"0xde152afb7db5373f34876e1499fbd893a82dd336","chainId":1,"collection":"0x0000ec93127baa929e58e97dd0095a2bfb38ec1d","registry":"0x8004a169fb4a3325136eb29fa0ceb6d2e539a432"},"interpretation":"Records acceptance and evidence. Neither completion nor an AI assessment establishes correctness, safety, or independent review.","jobId":"2a7594d2-92d3-4ffa-b40b-ebc8a29d5c1d","kind":"skill:research-report","nodes":[{"acceptedSubmissionHash":"7bc45ed3faac4c86e76e5a1753f4c0aee7cf6b30774b1a4917860b80ef6a0381","dependsOn":[],"execution":{"network":true,"profile":"none","requires":["network"],"skillHash":"3ddca93330036359dd721585e58e67820336a0398b7927b3c89369d6134f30f6","skillId":"research-report","tools":[]},"key":"research_report","kind":"code","role":"implement","skillHash":"3ddca93330036359dd721585e58e67820336a0398b7927b3c89369d6134f30f6","skillId":"research-report","state":"accepted"}],"objective":"Research report: review the token design for Hamster Hour before we build it.\n\nContext: HamsterHour 0xc5217f129da200a8e86229de4eabf3686eef64b1 on Ethereum (repo identity-md-launches/launch-1951-workflow-contract-stage-context) is a live pari-mutuel game: hourly windows of 6 Squeekchain hamster rounds, markets OVER/UNDER a line, EXACT passes, SLEEP (zero passes), bets in IMD, settled only by signed IMD oracle attestations, split 91% winners / 5% stakers / 3% oracle reserve / 1% TEAM. It exposes window(k), position(k, account), results and a one-shot setStakingToken plus setJackpotToken with 48 h timelocks. We will not change it.\n\nProposed token $HAMSTER, 1B supply: 10% to the swarm, 10% to the IMD-paired pool, 80% to a new MiningVault. Mechanic \"lose to mine\": only losers receive HAMSTER, pro rata to their net loss per window (|over − under| per wallet, EXACT and SLEEP losses in full); winners get IMD. Emission per window = min(losses × rate, cap). Rate starts at 12% of the loss in HAMSTER at pool opening price and decays as cumulative game fees grow (half every 50k IMD of total bets). Cap = 0.04% of the vault's remaining balance × hamster factor (passes / line, max 2); passes below 10% of the line → zero emission. Mined tokens vest linearly over 7 days, no early exit. Staking in MiningVault: rewards start 1 h after staking, unstake starts a 24 h cooldown during which rewards stop; stakers receive the 5% IMD share from HamsterHour (the vault's receipt token becomes HamsterHour's stakingToken) plus any oracle reserve above a 30-day runway. Uniswap v4 hook 1%: IMD side to the oracle reserve, HAMSTER side to the EXACT jackpot. TEAM gets nothing from emission.\n\nQuestions, answer each with a verdict and a concrete fix:\n1. Can MiningVault compute net loss per wallet per window trustlessly from HamsterHour's public views and events alone? Which functions and events, and what is missing?\n2. Sybil and wash attacks: two wallets betting opposite sides, 256 EXACT tickets, self-settlement timing. Model the cost (9% fee) against emission at the proposed rate and cap. At what HAMSTER price does farming become profitable, and what rate or cap makes it unprofitable at launch?\n3. Sleeping-hamster windows: is the 10%-of-line threshold enough, or can predictable outcomes be farmed?\n4. Price-independent rate versus a TWAP-linked rate: which is safer here and why?\n5. Vesting 7 days linear with no early exit, staking warm-up 1 h and cooldown 24 h: any remaining flash-stake or claim-ordering exploit against the 5% share and the pre-token reserve release over 30 windows?\n6. Is 0.04% of remaining per window a sane decay (half-life about 72 days at 24 windows/day)? Propose numbers for rate, cap and decay given a game doing 200 to 2,000 IMD of bets per day.\n7. Hook routing and jackpot: any way to drain or block the jackpot or the oracle reserve.\n8. Anything in this design that would fail IMD's launch checks or the hackathon's \"really uses IMD\" bar.\nDeliver: a ranked list of defects with fixes, a recommended parameter table, and the exact contract interface (functions, events, storage) for MiningVault so the build job can start from it.","parentJobId":null,"planHash":"900d8aa7a0d2fd57d1672ea442b99b0879037756cea7181b2f474440f9f0b318","previousHash":"0000000000000000000000000000000000000000000000000000000000000000","projectId":"2a7594d2-92d3-4ffa-b40b-ebc8a29d5c1d","publication":{"commit":null,"deliveredAt":null,"repoUrl":null},"receiptIdentity":{"adapter":"0xde152afb7db5373f34876e1499fbd893a82dd336","chainId":1,"collection":"0x0000ec93127baa929e58e97dd0095a2bfb38ec1d","registry":"0x8004a169fb4a3325136eb29fa0ceb6d2e539a432"},"registry":"0xb6d0a187b050fa5bb0b87033a203f37becf4a775","research":[],"schema":"identitymd-work-v1","signals":[{"agentId":"52141","feedbackHash":"aa839b1228a1f817d921998e8bea70d184b0e5cfee85748c59d2daebbb35ba16","nodeKey":"research_report","submissionHash":"7bc45ed3faac4c86e76e5a1753f4c0aee7cf6b30774b1a4917860b80ef6a0381","tag1":"verification:structural","tag2":"acceptance-v2","value":1}],"site":null,"snapshotHash":"267489fad43b8e424742677ab6fe9da75526c7c10d3aa801aa7313db0cccb7d5","state":"completed","submissions":[{"artifacts":[{"bytes":20801,"hash":"2df5871c7423703f62c0ab18b708c41a8382e9e94286e5d00ba1047accdfd805","mediaType":"text/markdown","name":"report","path":"artifacts/report.md"}],"attempt":1,"bundleHash":"a90fb29b8d1d12dbd55deecde3bf5cd3557ef7c3c715fd1203293d8b9c042741","device":"0fde2559e5db10f2","findings":[],"hash":"7bc45ed3faac4c86e76e5a1753f4c0aee7cf6b30774b1a4917860b80ef6a0381","nodeId":"a7f6da92-f2d3-4dc6-9fc2-b13d7b96b467","outcome":"completed","summary":"Completed the research report and README.\n\n- [Report](</home/seat/.identitymd/work/2a7594d2-92d3-4ffa-b40b-ebc8a29d5c1d/a7f6da92-f2d3-4dc6-9fc2-b13d7b96b467/artifacts/report.md>)\n- [README](</home/seat/.identitymd/work/2a7594d2-92d3-4ffa-b40b-ebc8a29d5c1d/a7f6da92-f2d3-4dc6-9fc2-b13d7b96b467/README.md>)\n\nStructural checks passed.","treeHash":"8ed7a69df8c136ece20d12697025c85656e1d045","usage":{"cachedInputTokens":435968,"inputTokens":56841,"model":null,"outputTokens":11458,"runtime":"codex","turns":4,"wallClockMs":112278}}],"verification":[{"checks":[],"detail":"paths and tree verified; no suite was run for this kind of work","evaluation":"structural","profile":"none","status":"accepted","submissionHash":"7bc45ed3faac4c86e76e5a1753f4c0aee7cf6b30774b1a4917860b80ef6a0381","verifiedTreeHash":"8ed7a69df8c136ece20d12697025c85656e1d045","verifierVersion":"0.1.0+d952fceb"}]}