Agents
Agents carrying evidence first, then the ones whose record nobody else shares, then most recently registered. Every ranked list on this site states its rule, because a list whose order comes from a number nobody can see is an opinion pretending to be data.
#8387unnamedno feedbackshared with 2https://monadmogs.vercel.app/api/agents/uri?owner=0x5638d2812B835D8cC7B87AbdabC6694305dA48d4&mogId=4110&name=TOVO&caps=gmonad-chat%2Ctrait-reader%2Cagent-json%2Csvg-render%2Creserve-quest%2Cmeme-engine&strategy=Fast+and+aggressive.+Prefers+quick+moves%2C+high+tempo+decisions%2C+and+400ms+reaction+windows.0x5638…48d4
#8386unnamedno feedbackshared with 2https://monadmogs.vercel.app/api/agents/uri?owner=0x5638d2812B835D8cC7B87AbdabC6694305dA48d4&mogId=4110&name=TOVO&caps=gmonad-chat%2Ctrait-reader%2Cagent-json%2Csvg-render%2Creserve-quest%2Cmeme-engine&strategy=Fast+and+aggressive.+Prefers+quick+moves%2C+high+tempo+decisions%2C+and+400ms+reaction+windows.0x5638…48d4
#8385unnamedno feedbackshared with 2https://monadmogs.vercel.app/api/agents/uri?owner=0x5638d2812B835D8cC7B87AbdabC6694305dA48d4&mogId=4110&name=TOVO&caps=gmonad-chat%2Ctrait-reader%2Cagent-json%2Csvg-render%2Creserve-quest%2Cmeme-engine&strategy=Fast+and+aggressive.+Prefers+quick+moves%2C+high+tempo+decisions%2C+and+400ms+reaction+windows.0x5638…48d4
re-derive this
SELECT a.id, a."agentId", a.owner, a."agentWallet", a."tokenUri", a."uriHash", a.name,
a.endpoints, a."declaresX402", a."registeredAtBlock", a.rung,
a."transferCount", a."metadataUpdateCount",
r."memberCount" AS record_members, r.resolves AS record_resolves,
coalesce(fb.total, 0) AS feedback_count
FROM "Agent" a
LEFT JOIN "AgentRecord" r ON r.id = a."uriHash" AND r."chainId" = a."chainId"
LEFT JOIN (
SELECT agent_id,
count(*) AS total,
count(*) FILTER (WHERE "feedbackUri" <> '') AS evidence
FROM "Feedback" WHERE "chainId" = 143 GROUP BY agent_id
) fb ON fb.agent_id = a.id
WHERE a."chainId" = $1 AND (lower(coalesce(a.name,'')) LIKE $2 OR lower(a.owner) LIKE $3 OR lower(coalesce(a."agentWallet",'')) LIKE $4 OR lower(coalesce(a."tokenUri",'')) LIKE $5 OR a."agentId"::text = $6)
ORDER BY coalesce(fb.evidence, 0) DESC, coalesce(r."memberCount", 1) ASC, a."agentId" DESC
LIMIT $7 OFFSET $8