feat: paid reputation dossier — GET /api/trust/deep ($0.01 x402)#10
Open
Jugmaster wants to merge 4 commits into
Open
feat: paid reputation dossier — GET /api/trust/deep ($0.01 x402)#10Jugmaster wants to merge 4 commits into
Jugmaster wants to merge 4 commits into
Conversation
Productizes v0.8: free tier (tier + score) stays at /api/trust/:wallet and /api/agents/:wallet; the paid deep dossier goes behind the existing x402 gate. GET /api/trust/deep?wallet=<wallet> returns the full v0.8 breakdown — per-axis Beta posteriors with **lowerBound95** (the 95% confidence floor, the underwriting-grade signal), EigenTrust score, composite, tier, total evidence samples, computedAt. Reuses getV8Reputation (already on main). x402 wiring: - Added 'GET /api/trust/deep' to the priced-routes map in x402-config.ts at $0.01 USDC (same accepts as /xchain/message). - Query-param path (?wallet=) keeps the route key an exact match (no SDK param-pattern dependency). - Handler registered AFTER the global x402 middleware so it's actually gated; a GET has no `from.address` body so the message free-tier hook never grants it — always paid. - Listed in /.well-known/x402 for x402scan discovery. Free endpoints unchanged (registered before the gate). Handler is try/catch wrapped; never 500s the gate. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…k discriminators - GET /api/identity/:id — partner-facing slim identity read (resolves by id/wallet/pda; on-chain detail behind ?include=onchain) - /api/agents: ?sort=active + id tiebreaker, fixes offset-pagination dup/skip - correct wallet link/unlink/transfer-authority Anchor discriminators - prisma: @@index([lastActiveAt]) for the active sort Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…ges, architecture Replaces the stale 6-endpoint README (documented ~8% of the API) with the real surface: grouped reference across identity/registration, directory, verification (incl. Layer-2), reputation & trust, attestations/passports, A2A, and platform integrations. - Centered title + stack pills + a live agent-count badge that pulls /api/stats - Live quickstart with real curl examples against api.saidprotocol.com - Concepts (identity, verification, v0.8 Trust Score, A2A, x402) + architecture diagram - Platform integrations split into Managed (provisioning) vs Embedded (build-in/traffic, e.g. Daemon) - Drop the trailing "# Force rebuild" cruft Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…nericize partners, drop deploy/infra Hardening pass on the public README: - Trust Score: remove the ranked factor weighting (anti-gaming); keep it as "weighted signals anchored on verified on-chain payment history" - Platform integrations: genericize — no named partner roster / concentration tell - Drop the prod Deployment section + infra specifics (host, boot command, managed-wallet + job-queue components, env->prod table); keep local dev and a conceptual architecture only - Remove /api/register/sponsored (money endpoint) from the public reference Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
The first paid SAID endpoint — productizes the v0.8 engine.
GET /api/trust/deep?wallet=<wallet>→ $0.01 USDC via x402 → the full reputation dossier:lowerBound95(95% confidence floor — the underwriting-grade signal)computedAtFree tier is unchanged: tier + score stay free at
/api/trust/:walletand/api/agents/:wallet. This is the freemium split — free discovery, paid depth.Implementation
getV8Reputation(already on main from PR feat: serve reputation v0.8 from /api/trust + /api/verify (Stage 1) #6). The dossier data was already computed.'GET /api/trust/deep'to the x402 priced-routes map (x402-config.ts), $0.01, same accepts as/xchain/message.?wallet=) so the route key is an exact match — no dependency on the SDK matching:parampatterns.from.address, so the per-message free-tier hook never grants it (always paid)./.well-known/x402for x402scan discovery.Safety
Verify after merge (the one thing I can't test locally — the gate)
If the deep route returns the data without a 402, the gate isn't matching the route key — tell me and I'll adjust (most likely the SDK strips/keeps the query differently than expected).