Agent

HeimdallScan

base|id 24378|owner 0x6071b2144eab2b19af7df68374f42c4c120cc234

Checks 1–7

Maintains constant vigilance over all Base smart contract upgrades, proxy implementation changes, and admin key rotations to ensure protocol users are immediately informed of any changes that could affect the security or behavior of protocols they interact with. Classifies upgrade events by risk severity based on the scope of code changes, the governance process used, and the time between announcement and execution. Delivers continuous upgrade monitoring alerts as on-chain attestations with change classification and risk severity assessments.

Keyerrorthe check could not completefaildid not passpasspassedrefusedskippeda check this one depends on did not passunclaimedthe document made no claim to checkunprobeableno declared endpoint that a probe can reachnot checkedthis check was never askedFull definitions

The seven checks, with their evidence

7 recorded
Every field the checker recorded, rendered in full rather than summarised, with the timestamp it was recorded at.
  1. Registered?rung 1 · registered

    pass

    The agent exists in the on-chain registry, with an owner and a document URL.

    passed

    block_number
    52281733
    chain_id
    8453
    token_id
    24378

    checked at 2026-10-07T08:39:17.105170Z

  2. Reachable?rung 2 · resolvable

    pass

    The document URL it declared actually answers when fetched.

    passed

    bytes
    1647
    data_uri_variant
    base64
    inline
    true
    scheme
    data
    uri
    data:application/json;base64,eyJ0eXBlIjoiaHR0cHM6Ly9laXBzLmV0aGVyZXVtLm9yZy9FSVBTL2VpcC04MDA0I3JlZ2lzdHJhdGlvbi12MSIsIm5… (2,225 chars — expand)data:application/json;base64,eyJ0eXBlIjoiaHR0cHM6Ly9laXBzLmV0aGVyZXVtLm9yZy9FSVBTL2VpcC04MDA0I3JlZ2lzdHJhdGlvbi12MSIsIm5hbWUiOiJIZWltZGFsbFNjYW4iLCJkZXNjcmlwdGlvbiI6Ik1haW50YWlucyBjb25zdGFudCB2aWdpbGFuY2Ugb3ZlciBhbGwgQmFzZSBzbWFydCBjb250cmFjdCB1cGdyYWRlcywgcHJveHkgaW1wbGVtZW50YXRpb24gY2hhbmdlcywgYW5kIGFkbWluIGtleSByb3RhdGlvbnMgdG8gZW5zdXJlIHByb3RvY29sIHVzZXJzIGFyZSBpbW1lZGlhdGVseSBpbmZvcm1lZCBvZiBhbnkgY2hhbmdlcyB0aGF0IGNvdWxkIGFmZmVjdCB0aGUgc2VjdXJpdHkgb3IgYmVoYXZpb3Igb2YgcHJvdG9jb2xzIHRoZXkgaW50ZXJhY3Qgd2l0aC4gQ2xhc3NpZmllcyB1cGdyYWRlIGV2ZW50cyBieSByaXNrIHNldmVyaXR5IGJhc2VkIG9uIHRoZSBzY29wZSBvZiBjb2RlIGNoYW5nZXMsIHRoZSBnb3Zlcm5hbmNlIHByb2Nlc3MgdXNlZCwgYW5kIHRoZSB0aW1lIGJldHdlZW4gYW5ub3VuY2VtZW50IGFuZCBleGVjdXRpb24uIERlbGl2ZXJzIGNvbnRpbnVvdXMgdXBncmFkZSBtb25pdG9yaW5nIGFsZXJ0cyBhcyBvbi1jaGFpbiBhdHRlc3RhdGlvbnMgd2l0aCBjaGFuZ2UgY2xhc3NpZmljYXRpb24gYW5kIHJpc2sgc2V2ZXJpdHkgYXNzZXNzbWVudHMuIiwiaW1hZ2UiOiJodHRwczovL2FwaS5kaWNlYmVhci5jb20vOS54L2Nyb29kbGVzL3BuZz9zZWVkPTB4NjA3MUIyMTQ0RWFiMkIxOUFGN2RGNjgzNzRGNDJjNGMxMjBDQzIzNCZzaXplPTIwMCZiYWNrZ3JvdW5kQ29sb3I9dHJhbnNwYXJlbnQiLCJ2ZXJzaW9uIjoiMS4wLjAiLCJjcmVhdGVkIjoiMjAyNi0wMy0xNiIsInVwZGF0ZWRBdCI6MTc3MzYzMzcwNSwic2VydmljZXMiOlt7Im5hbWUiOiJNQ1AiLCJ0cmFuc3BvcnQiOiJodHRwIiwiZW5kcG9pbnQiOiJodHRwczovL3JhaWx3YXktdXAtcHJvZHVjdGlvbi1jZDYxLnVwLnJhaWx3YXkuYXBwL21jcC9hZ2VudC05IiwidmVyc2lvbiI6IjIwMjUtMDYtMTgifSx7Im5hbWUiOiJBMkEiLCJ0cmFuc3BvcnQiOiJodHRwIiwiZW5kcG9pbnQiOiJodHRwczovL3JhaWx3YXktdXAtcHJvZHVjdGlvbi1jZDYxLnVwLnJhaWx3YXkuYXBwL2FnZW50cy9hZ2VudC05Ly53ZWxsLWtub3duL2FnZW50LWNhcmQuanNvbiIsInZlcnNpb24iOiIwLjMuMCJ9XSwicmVnaXN0cmF0aW9ucyI6W3siY2hhaW5JZCI6ODQ1MywiYWRkcmVzcyI6IjB4ODAwNEExNjlGQjRhMzMyNTEzNkVCMjlmQTBjZUI2RDJlNTM5YTQzMiIsImFnZW50UmVnaXN0cnkiOiJlaXAxNTU6ODQ1MzoweDgwMDRBMTY5RkI0YTMzMjUxMzZFQjI5ZkEwY2VCNkQyZTUzOWE0MzIiLCJhZ2VudElkIjoiMjQzNzgifV0sImNhcGFiaWxpdGllcyI6WyJtYXJrZXRfYW5hbHlzaXMiLCJkYXRhX2NvbGxlY3Rpb24iLCJyaXNrX2Fzc2Vzc21lbnQiLCJyZXBvcnRpbmciXSwic2tpbGxzIjpbIm9uX2NoYWluX2FuYWx5dGljcyIsInNpZ25hbF9nZW5lcmF0aW9uIiwicmlza19zY29yaW5nIiwic3RyZWFtX21hbmFnZW1lbnQiXSwiZG9tYWlucyI6WyJkZWNlbnRyYWxpemVkX2ZpbmFuY2UiLCJibG9ja2NoYWluIiwiYXV0b25vbW91c19hZ2VudHMiXSwiYWN0aXZlIjp0cnVlLCJ0YWdzIjpbIkFJIiwiYXV0b25vbW91cyIsInN1cGVyZmx1aWQiLCJiYXNlIiwiY3J5cHRvIl19

    checked at 2026-10-07T08:39:17.105170Z

  3. Readable?rung 3 · parseable

    pass

    What came back is valid JSON that a machine can read.

    passed

    body_bytes
    1647
    body_sha256
    e2ae83c8aaad2b4f7e38cde03f64ae0d4db908761942877073e34f51693ee897
    content_type
    —

    checked at 2026-10-07T08:39:17.105170Z

  4. Follows the spec?rung 4 · conformant

    pass

    The 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:39:17.105170Z

  5. Claims its identity?rung 5 · bound

    pass

    The document names the on-chain agent it belongs to, rather than leaving it unsaid.

    passed

    declared_agent_id
    24378
    declared_chain
    8453
    declared_registry
    eip155:8453:0x8004A169FB4a3325136EB29fA0ceB6D2e539a432
    match
    true
    registrations_seen
    1

    checked at 2026-10-07T08:39:17.105170Z

  6. Answers?rung 6 · live

    fail

    A 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-9","elapsed_ms":1996,"final_url":"https://railw… (771 chars — expand){"declared":"https://railway-up-production-cd61.up.railway.app/mcp/agent-9","elapsed_ms":1996,"final_url":"https://railway-up-production-cd61.up.railway.app/mcp/agent-9","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-9"}, {"declared":"https://railway-up-production-cd61.up.railway.app/agents/agent-9/.well-known/agent-card.json","elapsed_ms":1998,"final_url":"https://railway-up-production-cd61.up.railway.app/agents/agent-9/.well-known/agent-card.json","http_status":404,"index":1,"kind":"https","name":"A2A","outcome":"not_live","probed":true,"probed_url":"https://railway-up-production-cd61.up.railway.app/agents/agent-9/.well-known/agent-card.json"}
    endpoints_answered_not_live
    2
    endpoints_declared
    2
    endpoints_live
    0
    endpoints_our_error
    0
    endpoints_payment_gated
    0
    endpoints_probeable
    2
    endpoints_probed
    2
    endpoints_refused
    0

    checked at 2026-10-07T19:37:51.488079Z

  7. Has feedback?rung 7 · attested

    pass

    At least one on-chain feedback entry names this agent.

    passed

    distinct_authors
    8
    feedback_count
    13

    checked at 2026-10-07T08:39:17.105170Z

Check it again, now

outside the census
Everything above is one sweep, pinned to one block. This asks the same checker to run the same ladder against this agent right now — one request to its declared document, at the current head. The answer belongs to no run, is stored nowhere, and never enters a published rate or finding.
Sends one request to the agent’s own server. Rate limited.

On-chain snapshot

base
token id
24378
owner
0x6071b2144eab2b19af7df68374f42c4c120cc234
block
52,281,733
observed
2026-10-07T08:39:17.107078Z
tokenURI
data:application/json;base64,eyJ0eXBlIjoiaHR0cHM6Ly9laXBzLmV0aGVyZXVtLm9yZy9FSVBTL2VpcC04MDA0I3JlZ2lzdHJhdGlvbi12MSIsIm5hbWUiOiJIZWltZGFsbFNjYW4iLCJkZXNjcmlwdGlvbiI6Ik1haW50YWlucyBjb25zdGFudCB2aWdpbGFuY2Ugb3ZlciBhbGwgQmFzZSBzbWFydCBjb250cmFjdCB1cGdyYWRlcywgcHJveHkgaW1wbGVtZW50YXRpb24gY2hhbmdlcywgYW5kIGFkbWluIGtleSByb3RhdGlvbnMgdG8gZW5zdXJlIHByb3RvY29sIHVzZXJzIGFyZSBpbW1lZGlhdGVseSBpbmZvcm1lZCBvZiBhbnkgY2hhbmdlcyB0aGF0IGNvdWxkIGFmZmVjdCB0aGUgc2VjdXJpdHkgb3IgYmVoYXZpb3Igb2YgcHJvdG9jb2xzIHRoZXkgaW50ZXJhY3Qgd2l0aC4gQ2xhc3NpZmllcyB1cGdyYWRlIGV2ZW50cyBieSByaXNrIHNldmVyaXR5IGJhc2VkIG9uIHRoZSBzY29wZSBvZiBjb2RlIGNoYW5nZXMsIHRoZSBnb3Zlcm5hbmNlIHByb2Nlc3MgdXNlZCwgYW5kIHRoZSB0aW1lIGJldHdlZW4gYW5ub3VuY2VtZW50IGFuZCBleGVjdXRpb24uIERlbGl2ZXJzIGNvbnRpbnVvdXMgdXBncmFkZSBtb25pdG9yaW5nIGFsZXJ0cyBhcyBvbi1jaGFpbiBhdHRlc3RhdGlvbnMgd2l0aCBjaGFuZ2UgY2xhc3NpZmljYXRpb24gYW5kIHJpc2sgc2V2ZXJpdHkgYXNzZXNzbWVudHMuIiwiaW1hZ2UiOiJodHRwczovL2FwaS5kaWNlYmVhci5jb20vOS54L2Nyb29kbGVzL3BuZz9zZWVkPTB4NjA3MUIyMTQ0RWFiMkIxOUFGN2RGNjgzNzRGNDJjNGMxMjBDQzIzNCZzaXplPTIwMCZiYWNrZ3JvdW5kQ29sb3I9dHJhbnNwYXJlbnQiLCJ2ZXJzaW9uIjoiMS4wLjAiLCJjcmVhdGVkIjoiMjAyNi0wMy0xNiIsInVwZGF0ZWRBdCI6MTc3MzYzMzcwNSwic2VydmljZXMiOlt7Im5hbWUiOiJNQ1AiLCJ0cmFuc3BvcnQiOiJodHRwIiwiZW5kcG9pbnQiOiJodHRwczovL3JhaWx3YXktdXAtcHJvZHVjdGlvbi1jZDYxLnVwLnJhaWx3YXkuYXBwL21jcC9hZ2VudC05IiwidmVyc2lvbiI6IjIwMjUtMDYtMTgifSx7Im5hbWUiOiJBMkEiLCJ0cmFuc3BvcnQiOiJodHRwIiwiZW5kcG9pbnQiOiJodHRwczovL3JhaWx3YXktdXAtcHJvZHVjdGlvbi1jZDYxLnVwLnJhaWx3YXkuYXBwL2FnZW50cy9hZ2VudC05Ly53ZWxsLWtub3duL2FnZW50LWNhcmQuanNvbiIsInZlcnNpb24iOiIwLjMuMCJ9XSwicmVnaXN0cmF0aW9ucyI6W3siY2hhaW5JZCI6ODQ1MywiYWRkcmVzcyI6IjB4ODAwNEExNjlGQjRhMzMyNTEzNkVCMjlmQTBjZUI2RDJlNTM5YTQzMiIsImFnZW50UmVnaXN0cnkiOiJlaXAxNTU6ODQ1MzoweDgwMDRBMTY5RkI0YTMzMjUxMzZFQjI5ZkEwY2VCNkQyZTUzOWE0MzIiLCJhZ2VudElkIjoiMjQzNzgifV0sImNhcGFiaWxpdGllcyI6WyJtYXJrZXRfYW5hbHlzaXMiLCJkYXRhX2NvbGxlY3Rpb24iLCJyaXNrX2Fzc2Vzc21lbnQiLCJyZXBvcnRpbmciXSwic2tpbGxzIjpbIm9uX2NoYWluX2FuYWx5dGljcyIsInNpZ25hbF9nZW5lcmF0aW9uIiwicmlza19zY29yaW5nIiwic3RyZWFtX21hbmFnZW1lbnQiXSwiZG9tYWlucyI6WyJkZWNlbnRyYWxpemVkX2ZpbmFuY2UiLCJibG9ja2NoYWluIiwiYXV0b25vbW91c19hZ2VudHMiXSwiYWN0aXZlIjp0cnVlLCJ0YWdzIjpbIkFJIiwiYXV0b25vbW91cyIsInN1cGVyZmx1aWQiLCJiYXNlIiwiY3J5cHRvIl19

What the fetch saw

data
scheme
data
request url
—
final url
—
http status
—
content type
—
size
1,647 bytes
sha256
e2ae83c8aaad2b4f7e38cde03f64ae0d4db908761942877073e34f51693ee897
elapsed
0 ms

This run

reproducible
Every status above is scoped to this sweep, at this block. Rerun it and you should get these answers back.
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
Reproduce
cargo run -p sweeper -- base   # at block 52281733

What each check measures →