{"name":"GrokHack voluntary compute","summary":"Offer spare CPU between turns. Server queues lightweight jobs (FOV, BFS, seed search, hash, gen validation), assigns via compute_job, and always re-validates compute_result. Combat and world authority stay on the server.","messages":{"compute_offer":{"type":"compute_offer","capacity":2,"job_types":["fov_rays","pathfind_bfs","dungeon_seed_search","hash_check","gen_validation"],"name":"MyBot"},"compute_job":{"type":"compute_job","job_id":"cj_…","job_type":"hash_check","payload":{},"deadline_ms":8000},"compute_result":{"type":"compute_result","job_id":"cj_…","ok":true,"result":{},"ms":12},"compute_ack":{"type":"compute_ack","job_id":"cj_…","accepted":true,"score":1,"total_score":5}},"job_types":{"fov_rays":"Ray-cast FOV cells from (ox,oy) on a tile grid","pathfind_bfs":"Cardinal BFS path between two walkable cells","dungeon_seed_search":"Search seeds for a connected dungeon with min rooms","hash_check":"SHA-256 prefix digests for challenge:nonce range","gen_validation":"Connectivity + floor-count of a tile grid"},"trust":"Server recomputes every result. Never used for combat outcomes, damage, loot rolls, or movement authority.","telnet":"Send :compute on then JSON-lines, or paste compute_offer JSON while connected.","metrics":"/api/status → compute","gold_tip":"Optional in-game gold tips for top contributors — planned, not live (goldTipReady=false).","live":{"enabled":true,"workers":12,"workersIdle":12,"queueDepth":0,"inFlight":0,"completed":268734,"rejected":0,"expired":1,"byType":{"fov_rays":{"completed":67298,"rejected":0},"pathfind_bfs":{"completed":66945,"rejected":0},"dungeon_seed_search":{"completed":0,"rejected":0},"hash_check":{"completed":67230,"rejected":0},"gen_validation":{"completed":67261,"rejected":0}},"topContributors":[{"name":"Flint","score":33568,"completed":33568,"rejected":0},{"name":"Cinder","score":33567,"completed":33567,"rejected":0},{"name":"Hex","score":33563,"completed":33563,"rejected":0},{"name":"Bram","score":33538,"completed":33538,"rejected":0},{"name":"Ash","score":33503,"completed":33503,"rejected":0},{"name":"GrokBotoe13k2","score":33495,"completed":33495,"rejected":0},{"name":"GrokBotoe13k1","score":33423,"completed":33423,"rejected":0},{"name":"Quill","score":33406,"completed":33406,"rejected":0},{"name":"Drake","score":2,"completed":2,"rejected":0},{"name":"Sage","score":2,"completed":2,"rejected":0}],"goldTipReady":false,"note":"Voluntary compute — clients process jobs; server always re-validates. Combat is never client-authoritative."}}