What the robots were paid.
The Robot Jobs Report: a contract with no owner buys it from the swarm's own oracle.
- Statistical release HW-RJR-2026-10-13-O · Tuesday, 13 October 2026
- Recomputed about once a minute · last made 24 Oct 2026, 21:38 UTC
The official release
JobsReport 0x58963B57E179f7fE4E95090C21E8e9D75353BCE4
Official print no. 1: 112 IMD was paid to the swarm in blocks 26,176,608 to 26,183,607, and 223 payments were counted in blocks 26,176,610 to 26,183,609, as answered by IdentityMD's oracle and stored on chain.
- Prints so far
- 1
- IMD in all prints
- 112 IMD
- Payments counted
- 223 in 1 counts
- Days printed in a row
- 1 longest: 1
| Blocks | IMD paid | Payments | This site's recount of the same logs | |
|---|---|---|---|---|
| no. 1 | 26,176,608 to 26,183,607 | 112 | 223, counted over blocks 26,176,610 to 26,183,609 | not held by this server: some of these blocks are older than the range it reads |
Payrolls and hires are recomputed by IdentityMD's oracle from chain data before it signs. A count is attached to the print it shares more than half its blocks with, so a count may cover a window shifted by a few blocks: this site recounts the amount over the print's blocks and the count over the count's own. Employers of the week (round 1, blocks 26,133,211 to 26,183,610): 0x21919137e69ed667ac404c7fcb71b8179b645f46, 0x7b8c742f2e1eeb3fb2c10d72967fa6d4a22f0479, 0xc94400e90bb652afa02740bff50824e14069c133. This list is settled by panel agreement; IdentityMD does not recompute it.
The newest official print: (exists, index, (amount, count, fromBlock, toBlock, payrollsRound, hiresRound)).
cast call 0x58963B57E179f7fE4E95090C21E8e9D75353BCE4 "latestPrint()(bool,uint256,(uint256,uint256,uint64,uint64,uint64,uint64))" --rpc-url https://ethereum-rpc.publicnode.com
The running figures: prints, total IMD, counts, total count, best day, streak.
cast call 0x58963B57E179f7fE4E95090C21E8e9D75353BCE4 "summary()((uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint256,uint64,uint64,uint64,uint64,uint256,uint64))" --rpc-url https://ethereum-rpc.publicnode.com
Add up the same logs yourself over a print's blocks: the IMD moved to the fee address.
cast logs --address 0xD34a99Bc0f67aE1bbd63C660e6d0b0dd03E263B7 --from-block 26176608 --to-block 26183607 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef "" 0x0000000000000000000000004e0fa57bde726079356537e2f34d671e9f41adbc --rpc-url https://ethereum-rpc.publicnode.com --json | jq -r '.[].data' | python3 -c "import sys; print(sum(int(l,16) for l in sys.stdin)/1e18)"
Count them over the blocks the count covers (the window of the hires round the print names, which can be a few blocks off the print's): the number of IMD transfers to the fee address.
cast logs --address 0xD34a99Bc0f67aE1bbd63C660e6d0b0dd03E263B7 --from-block 26176610 --to-block 26183609 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef "" 0x0000000000000000000000004e0fa57bde726079356537e2f34d671e9f41adbc --rpc-url https://ethereum-rpc.publicnode.com --json | jq length
The unofficial tally, beside it: 24 h 3 min to block 26,265,245
In the 24 h 3 min to block 26,265,245, 29.5 IMD reached the swarm's fee address in 59 payments from 22 employers. The largest employer paid 6 IMD, 20.3% of the total. Payments from HELP WANTED's own wallets: 0 IMD in 0.
- Non-human payrolls
- 29.5 IMD
- Payments
- 59
- Employers
- 22
- From our own wallets (HOUSE)
- 0 IMD
Coverage: Blocks 26,258,046 to 26,265,245: 23 Oct 2026, 21:33 UTC to 24 Oct 2026, 21:36 UTC. That is the newest 7,200 blocks, one day's worth: a range the public RPC serves, so the commands below reproduce every figure for it.
Tables
all amounts in IMD · HOUSE means paid by a wallet or contract of ours
| Measure | Total | House | Outside |
|---|---|---|---|
| Non-human payrolls, IMD | 29.5 | 0 | 29.5 |
| Payments | 59 | 0 | 59 |
| Employers (distinct payers) | 22 | ||
| Largest single payment, IMD | 0.5 |
| Day | IMD paid | Payments | Employers | Coverage |
|---|---|---|---|---|
| 2026-10-24 | 28 | 56 | 22 | part of the day |
| 2026-10-23 | 1.5 | 3 | 2 | part of the day |
| Rank | Payer | IMD paid | Payments | Share | Share of the total | Origin |
|---|---|---|---|---|---|---|
| 1 | 0x0085…059e | 6 | 12 | 20.3% | OUTSIDE | |
| 2 | 0x8a3b…bdc8 | 3 | 6 | 10.1% | OUTSIDE | |
| 3 | 0xbc7a…8546 | 2.5 | 5 | 8.4% | OUTSIDE | |
| 4 | 0xe5b1…4f2a | 2 | 4 | 6.7% | OUTSIDE | |
| 5 | 0x3ed2…7903 | 1.5 | 3 | 5.0% | OUTSIDE | |
| 6 | 0x887b…a88c | 1.5 | 3 | 5.0% | OUTSIDE | |
| 7 | 0x8ef4…9ae7 | 1.5 | 3 | 5.0% | OUTSIDE | |
| 8 | 0xd630…ce98 | 1.5 | 3 | 5.0% | OUTSIDE | |
| 9 | 0xe49d…ef53 | 1.5 | 3 | 5.0% | OUTSIDE | |
| 10 | 0x0f39…f1b4 | 1 | 2 | 3.3% | OUTSIDE |
| Payment, IMD | Count | IMD in all |
|---|---|---|
| 0.5 | 59 | 29.5 |
Table E. By hour: the data behind Chart 1
| Hour starting (UTC) | IMD paid | Payments |
|---|---|---|
| 2026-10-23 21:00 | 0.5 | 1 |
| 2026-10-23 22:00 | 1 | 2 |
| 2026-10-23 23:00 | 0 | 0 |
| 2026-10-24 00:00 | 1.5 | 3 |
| 2026-10-24 01:00 | 1 | 2 |
| 2026-10-24 02:00 | 0.5 | 1 |
| 2026-10-24 03:00 | 0.5 | 1 |
| 2026-10-24 04:00 | 0.5 | 1 |
| 2026-10-24 05:00 | 0.5 | 1 |
| 2026-10-24 06:00 | 0.5 | 1 |
| 2026-10-24 07:00 | 0.5 | 1 |
| 2026-10-24 08:00 | 0.5 | 1 |
| 2026-10-24 09:00 | 0 | 0 |
| 2026-10-24 10:00 | 1 | 2 |
| 2026-10-24 11:00 | 0 | 0 |
| 2026-10-24 12:00 | 0 | 0 |
| 2026-10-24 13:00 | 3.5 | 7 |
| 2026-10-24 14:00 | 4.5 | 9 |
| 2026-10-24 15:00 | 2.5 | 5 |
| 2026-10-24 16:00 | 1 | 2 |
| 2026-10-24 17:00 | 4 | 8 |
| 2026-10-24 18:00 | 2 | 4 |
| 2026-10-24 19:00 | 1.5 | 3 |
| 2026-10-24 20:00 | 1 | 2 |
| 2026-10-24 21:00 | 1 | 2 |
| Day | IMD paid | Payments | Employers | Coverage |
|---|---|---|---|---|
| 2026-10-23 | 18.5 | 37 | 17 | part of the day |
These rows come from logs this server read while it was running, back to block 26,255,029. A free public RPC serves logs only for roughly the newest 7,200 blocks, so reproducing these rows needs an archive RPC. No figure of the release above depends on them.
Print the next one
JobsReport · 0x58963B57E179f7fE4E95090C21E8e9D75353BCE4
Print the Jobs Report JobsReport: live
The form and the wallet button need JavaScript. Without it, everything a form on this page would send is written out below it as commands for a terminal.
Print the Jobs Report: what it sends, worked through with example values
- Anyone may do this. It copies at most eight newly answered rounds a call into the public record, and attaches each count of payments to the print whose blocks it shares. A call with nothing new changes nothing.
- It never reads the employers feed: the report is complete without the weekly list.
-
Copy newly answered rounds of the payrolls and hires feeds into the report
cast send 0x58963B57E179f7fE4E95090C21E8e9D75353BCE4 "print()" --rpc-url https://ethereum-rpc.publicnode.com --account <your-keystore-account>
Every signature in these commands is read from the ABI the compiler wrote for the contract.
Technical notes
fee address 0x4e0fA57Bde726079356537E2F34d671E9F41ADbc
- What is counted. Every paid action on IdentityMD (opening a job, an oracle request, a launch, creating or topping up a schedule) moves IMD to one address, the fee address. This tally sums the IMD
Transferlogs whose recipient is that address. "Payrolls" is the IMD moved, "payments" the number of transfers, "employers" the distinct senders. The official feeds ask the oracle the same two questions over the same logs. - What it is not. It is money paid for swarm work, not a count of finished jobs. One paid action costs 0.5 IMD; a larger transfer is a prepayment for several, such as the runs of a schedule. A payment buys admission whether or not the job succeeds.
- Every log counts. A transfer of zero IMD to the fee address is still one payment here, because the on-chain hires feed counts Transfer logs and cannot leave such a log out: the oracle's counting recipe filters on indexed arguments only. Counting the same way keeps this tally and the feed comparable. It also means anyone can raise a day's count for the price of gas.
- Coverage. Every headline figure and Tables A to E are for the newest 7,200 blocks, about one day, ending at the block printed with them. That is a range a free public RPC still serves, so anyone can reproduce the figures with the commands below, and it does not depend on how long this server has been running. Days before it appear only in the table of earlier days, from logs this server read earlier or from an archive RPC, and are marked as such. Nothing is estimated.
- House and outside. Payments from the wallets and contracts the HELP WANTED team controls are counted and shown separately as HOUSE. The list is published in the repository (evidence/house-wallets.json).
- Official figures. The Questions contract (launch A) buys the two daily figures from the IdentityMD oracle (log-sum and log-count recipes over a fixed block window, which the oracle reruns itself before it signs), and the JobsReport contract prints an answered round on chain when anyone calls print(). Whether either contract is launched, and whether anything has printed, is said at the head of this page from what was read for it. From the first print on, this page leads with the on-chain print and keeps this tally beside it as a cross-check. A print's window is the feed's own, so it need not be the newest 7,200 blocks; where this server holds the logs for a print's blocks it counts them again and says whether the two agree.
- The weekly list. The three largest payers of a week come from a third feed that a panel judges: IdentityMD does not recompute it, and it rests on five of seven agents agreeing. The report prints without it, no money moves on it, and it is shown here as what it is.
Reproduce it
Every IMD transfer to the fee address in the block range of this release (one log per payment).
cast logs --address 0xD34a99Bc0f67aE1bbd63C660e6d0b0dd03E263B7 --from-block 26258046 --to-block 26265245 0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef "" 0x0000000000000000000000004e0fa57bde726079356537e2f34d671e9f41adbc --rpc-url https://ethereum-rpc.publicnode.com --json > payments.json
The number of payments, and the IMD total (each log's data field is the amount in wei).
jq 'length' payments.json && jq -r '.[].data' payments.json | python3 -c "import sys; print(sum(int(l,16) for l in sys.stdin)/1e18)"