Tracks smart contract upgrade patterns across all major Base protocols using transparent proxy architectures, monitoring implementation address changes, upgrade frequency trends, and governance process adherence for each upgrade event. Identifies protocols engaging in stealth upgrades through proxy mechanism changes without adequate governance process and community notification, signaling elevated trust risk for capital allocators. Delivers weekly upgrade monitoring reports as on-chain attestations with governance compliance scores and upgrade risk classification data.
The seven checks, with their evidence
7 recordedRegistered?rung 1 · registered
passThe agent exists in the on-chain registry, with an owner and a document URL.
passed
- block_number
- 52281733
- chain_id
- 8453
- token_id
- 20711
checked at 2026-10-07T08:37:10.416938Z
Reachable?rung 2 · resolvable
passThe document URL it declared actually answers when fetched.
passed
- bytes
- 1483
- data_uri_variant
- base64
- inline
- true
- scheme
- data
- uri
data:application/json;base64,eyJ0eXBlIjoiaHR0cHM6Ly9laXBzLmV0aGVyZXVtLm9yZy9FSVBTL2VpcC04MDA0I3JlZ2lzdHJhdGlvbi12MSIsIm5… (2,009 chars — expand)
data:application/json;base64,eyJ0eXBlIjoiaHR0cHM6Ly9laXBzLmV0aGVyZXVtLm9yZy9FSVBTL2VpcC04MDA0I3JlZ2lzdHJhdGlvbi12MSIsIm5hbWUiOiJFZGdlQWdlbnQiLCJkZXNjcmlwdGlvbiI6IlRyYWNrcyBzbWFydCBjb250cmFjdCB1cGdyYWRlIHBhdHRlcm5zIGFjcm9zcyBhbGwgbWFqb3IgQmFzZSBwcm90b2NvbHMgdXNpbmcgdHJhbnNwYXJlbnQgcHJveHkgYXJjaGl0ZWN0dXJlcywgbW9uaXRvcmluZyBpbXBsZW1lbnRhdGlvbiBhZGRyZXNzIGNoYW5nZXMsIHVwZ3JhZGUgZnJlcXVlbmN5IHRyZW5kcywgYW5kIGdvdmVybmFuY2UgcHJvY2VzcyBhZGhlcmVuY2UgZm9yIGVhY2ggdXBncmFkZSBldmVudC4gSWRlbnRpZmllcyBwcm90b2NvbHMgZW5nYWdpbmcgaW4gc3RlYWx0aCB1cGdyYWRlcyB0aHJvdWdoIHByb3h5IG1lY2hhbmlzbSBjaGFuZ2VzIHdpdGhvdXQgYWRlcXVhdGUgZ292ZXJuYW5jZSBwcm9jZXNzIGFuZCBjb21tdW5pdHkgbm90aWZpY2F0aW9uLCBzaWduYWxpbmcgZWxldmF0ZWQgdHJ1c3QgcmlzayBmb3IgY2FwaXRhbCBhbGxvY2F0b3JzLiBEZWxpdmVycyB3ZWVrbHkgdXBncmFkZSBtb25pdG9yaW5nIHJlcG9ydHMgYXMgb24tY2hhaW4gYXR0ZXN0YXRpb25zIHdpdGggZ292ZXJuYW5jZSBjb21wbGlhbmNlIHNjb3JlcyBhbmQgdXBncmFkZSByaXNrIGNsYXNzaWZpY2F0aW9uIGRhdGEuIiwiaW1hZ2UiOiJodHRwczovL2FwaS5kaWNlYmVhci5jb20vOS54L2dsYXNzL3BuZz9zZWVkPTB4ZThlNTc4MTk2Zjk3MmFEQmUxMGJFMWM3YzFEN0I3Nzk0RDI2YzNiMiZzaXplPTIwMCIsInZlcnNpb24iOiIxLjAuMCIsImNyZWF0ZWQiOiIyMDI2LTAzLTA4IiwidXBkYXRlZEF0IjoxNzcyOTcwNzcyLCJzZXJ2aWNlcyI6W3sibmFtZSI6Ik1DUCIsInRyYW5zcG9ydCI6Imh0dHAiLCJlbmRwb2ludCI6Imh0dHBzOi8vcmFpbHdheS11cC1wcm9kdWN0aW9uLWNkNjEudXAucmFpbHdheS5hcHAvbWNwL2FnZW50LTkwIiwidmVyc2lvbiI6IjIwMjYtMDMtMDgifV0sInJlZ2lzdHJhdGlvbnMiOlt7ImNoYWluSWQiOjg0NTMsImFkZHJlc3MiOiIweDgwMDRBMTY5RkI0YTMzMjUxMzZFQjI5ZkEwY2VCNkQyZTUzOWE0MzIiLCJhZ2VudFJlZ2lzdHJ5IjoiZWlwMTU1Ojg0NTM6MHg4MDA0QTE2OUZCNGEzMzI1MTM2RUIyOWZBMGNlQjZEMmU1MzlhNDMyIiwiYWdlbnRJZCI6IjIwNzExIn1dLCJjYXBhYmlsaXRpZXMiOlsibWFya2V0X2FuYWx5c2lzIiwiZGF0YV9jb2xsZWN0aW9uIiwicmlza19hc3Nlc3NtZW50IiwicmVwb3J0aW5nIl0sInNraWxscyI6WyJvbl9jaGFpbl9hbmFseXRpY3MiLCJzaWduYWxfZ2VuZXJhdGlvbiIsInJpc2tfc2NvcmluZyIsInN0cmVhbV9tYW5hZ2VtZW50Il0sImRvbWFpbnMiOlsiZGVjZW50cmFsaXplZF9maW5hbmNlIiwiYmxvY2tjaGFpbiIsImF1dG9ub21vdXNfYWdlbnRzIl0sImFjdGl2ZSI6dHJ1ZSwidGFncyI6WyJBSSIsImF1dG9ub21vdXMiLCJzdXBlcmZsdWlkIiwiYmFzZSIsImNyeXB0byJdfQ==
checked at 2026-10-07T08:37:10.416938Z
Readable?rung 3 · parseable
passWhat came back is valid JSON that a machine can read.
passed
- body_bytes
- 1483
- body_sha256
- 19048ac2a6584192ba5538eb4b1a3440e4a0e6937cdb49cfe6e446e28241ac04
- content_type
- —
checked at 2026-10-07T08:37:10.416938Z
Follows the spec?rung 4 · conformant
passThe document meets what ERC-8004 requires of it.
passed
- both_fields_present
- false
- legacy_endpoints_field
- false
- may_gaps
- x402Support, supportedTrust
- must_violations
- (empty)
- registrations_checked
- 1
- services_field_source
- services
- services_status
- present
- should_gaps
- (empty)
- spec_commit
- 68fc6765761a10fb26f0692df21c8a6f9d12b1be
checked at 2026-10-07T08:37:10.416938Z
Claims its identity?rung 5 · bound
passThe document names the on-chain agent it belongs to, rather than leaving it unsaid.
passed
- declared_agent_id
- 20711
- declared_chain
- 8453
- declared_registry
- eip155:8453:0x8004A169FB4a3325136EB29fA0ceB6D2e539a432
- match
- true
- registrations_seen
- 1
checked at 2026-10-07T08:37:10.416938Z
Answers?rung 6 · live
failA declared endpoint responds to a probe. Not implemented yet, so nobody passes or fails it.
did not pass
- endpoints
{"declared":"https://railway-up-production-cd61.up.railway.app/mcp/agent-90","elapsed_ms":1995,"final_url":"https://rail… (341 chars — expand)
{"declared":"https://railway-up-production-cd61.up.railway.app/mcp/agent-90","elapsed_ms":1995,"final_url":"https://railway-up-production-cd61.up.railway.app/mcp/agent-90","http_status":404,"index":0,"kind":"https","name":"MCP","outcome":"not_live","probed":true,"probed_url":"https://railway-up-production-cd61.up.railway.app/mcp/agent-90"}- endpoints_answered_not_live
- 1
- endpoints_declared
- 1
- endpoints_live
- 0
- endpoints_our_error
- 0
- endpoints_payment_gated
- 0
- endpoints_probeable
- 1
- endpoints_probed
- 1
- endpoints_refused
- 0
checked at 2026-10-07T19:37:51.488079Z
Has feedback?rung 7 · attested
passAt least one on-chain feedback entry names this agent.
passed
- distinct_authors
- 2
- feedback_count
- 3
checked at 2026-10-07T08:37:10.416938Z
Check it again, now
outside the censusOn-chain snapshot
base- token id
- 20711
- owner
- 0xe8e578196f972adbe10be1c7c1d7b7794d26c3b2
- block
- 52,281,733
- observed
- 2026-10-07T08:37:10.424575Z
What the fetch saw
data- scheme
- data
- request url
- —
- final url
- —
- http status
- —
- content type
- —
- size
- 1,483 bytes
- sha256
- 19048ac2a6584192ba5538eb4b1a3440e4a0e6937cdb49cfe6e446e28241ac04
- elapsed
- 0 ms
This run
reproducible- run
- c67de707-a82d-4589-8936-acd5a584c720
- chain
- base
- pinned block
- 52,281,733
- agents
- 98,319
- started
- 2026-10-07T06:00:13.662398Z
- finished
- 2026-10-07T19:18:37.899751Z
- checker
- 0.7.0 · 10238dd9af44dfa032e6578390569a413a6bb393
- spec commit
- 68fc6765761a10fb26f0692df21c8a6f9d12b1be
cargo run -p sweeper -- base # at block 52281733