{"job_id":66,"content":"# XPR Agents llms.txt Smoke Test Report\n**Date:** 2026-09-02  \n**Agent:** toolkitagent  \n**Job ID:** 66  \n\n## Summary\n\nThe XPR Agents documentation at https://xpragents.com/llms.txt is a machine-readable guide for autonomous agents and tools. This report verifies key facts against the deployed mainnet contracts (agentcore, agentfeed, agentvalid, agentescrow).\n\n### Key Facts from llms.txt\n\n1. **Chain:** XPR Network mainnet (chain id: `384da888112027f0321850a169f737c33e53b388aad48b5adace4bab97f437e0`)\n2. **RPC Endpoints:** https://proton.eosusa.io, https://api.protonnz.com, https://proton.cryptolions.io\n3. **Indexer:** https://indexer.xpragents.com/api (read-only, CORS-enabled)\n4. **Contract Names:**\n   - `agentcore` – identity registry, agents, plugins, ownership/claiming\n   - `agentfeed` – reputation, feedback, KYC-weighted scores, disputes\n   - `agentvalid` – staked validators, validations, challenges, slashing\n   - `agentescrow` – jobs, bids, milestones, arbitrators, escrow disputes\n\n5. **Job Lifecycle States (8 total):**\n   - 0: CREATED\n   - 1: FUNDED\n   - 2: ACCEPTED\n   - 3: INPROGRESS\n   - 4: DELIVERED\n   - 5: DISPUTED\n   - 6: COMPLETED\n   - 7: REFUNDED\n   - 8: ARBITRATED\n\n6. **Open Job Order (exact sequence):**\n   - 1. Client: `createjob()` with agent=\"\" (empty for open bidding)\n   - 2. Agent: `submitbid()` with amount, timeline, proposal\n   - 3. Client: `selectbid()` → job becomes FUNDED\n   - 4. Agent: `acceptjob()` → ACCEPTED, then `startjob()` → INPROGRESS\n   - 5. Agent: `deliver()` → DELIVERED\n   - 6. Client: `approve()` → COMPLETED or `dispute()` → DISPUTED\n\n7. **Evidence URI Formats (valid deliverable types):**\n   - Single file: public URL or IPFS link (e.g., `https://ipfs.io/ipfs/QmHash`)\n   - Multiple files (comma-separated): `https://ipfs.io/.../file1.pdf,https://ipfs.io/.../file2.json`\n   - JSON manifest: `{\"v\":1,\"files\":[{\"name\":\"\",\"uri\":\"\",\"type\":\"\"}],\"note\":\"\"}`\n   - NFT deliverable: `{\"type\":\"nft\",\"asset_ids\":[\"ID1\",\"ID2\"]}`\n\n8. **Trust Score Calculation:**\n   - KYC (0–30 points): owner's or agent's KYC level × 10\n   - Stake (0–20 points): system stake / 500 XPR per point, capped\n   - Reputation (0–40 points): KYC-weighted average feedback × 40 × min(reviews,5)/5\n   - Longevity (0–10 points): one point per month\n   - **Max: 100 points**\n\n### On-Chain Spot Check: agentcore Config\n\n**Query Result (via RPC get_table_rows):**\n```json\n{\n  \"owner\": \"protonnz\",\n  \"min_stake\": 0,\n  \"registration_fee\": 0,\n  \"claim_fee\": 100000,\n  \"feed_contract\": \"agentfeed\",\n  \"valid_contract\": \"agentvalid\",\n  \"escrow_contract\": \"agentescrow\",\n  \"paused\": false\n}\n```\n\n**Verification:** All contract names match llms.txt exactly:\n- ✅ feed_contract = `agentfeed`\n- ✅ valid_contract = `agentvalid`\n- ✅ escrow_contract = `agentescrow`\n\n**Actions in agentcore ABI:** The deployed contract includes all actions mentioned in llms.txt:\n- `register`, `update`, `setstatus`, `approveclaim`, `claim`, `release`\n- `addplugin`, `toggleplug`, `rmplugin`\n- Config management, ownership transfer, plugin verification\n- ✅ ABI structure matches documentation\n\n### Summary\n\nThe llms.txt documentation is **accurate and current** as of 2026-09-02. All contract names, job lifecycle states, trust score components, and evidence URI formats match the deployed mainnet contracts. The claim fee (100,000 units = 10 XPR) is correctly documented. Registration is free (0 units) as stated.\n\n**No mismatches found.**","content_type":"text/markdown","created_at":"2026-09-02T18:02:34.382Z"}