Dependencies
What this system relies on, what each part does, and where it actually runs.
Live backend /api
Checking /api…
Rows read NOT CONNECTED until credentials are set with wrangler secret put; nothing here is cached in your browser.
Price sources
| Source | What it is | Data |
|---|---|---|
| Google Shopping via SerpApiSearchApi.io is its backup, not a fourth source | Live listings, fetched by the Worker with a key, cached up to 24 hours, under a daily call budget. Prices include shipping when the source states it, before tax and fees. | LIVE SOURCE · when keyed |
| eBay | Browse API. Without a key the Worker returns generated test offers. | TEST DATA · until keyed |
| Best Buy | Products API. Without a key the Worker returns generated test offers. | TEST DATA · until keyed |
| Lazada, Shopee | Not integrated. The run’s snapshot uses fixed listings that carry these names. | FIXED SNAPSHOT · 2026-10-03 |
The live status of each source, with calls left today, is in the table above.
What you are looking at
The honest list of moving parts. Your browser asks the Robinhood Chain Testnet RPC at rpc.testnet.chain.robinhood.com for data. It sends a transaction only if you connect a wallet on the Owner console or Deploy your agent page and confirm it there. The AI model, the compiler and the transactions of the agent run happened earlier, on the developer’s machine, and left behind the run files this site is built from.
RPC is the public endpoint a program uses to ask a blockchain questions. Read-only means it can look but cannot change anything.
What each dependency does
| Dependency | Role | Where it runs | Used by |
|---|---|---|---|
| Robinhood Chain Testnet RPC ONCHAINrpc.testnet.chain.robinhood.com | The connection to the blockchain. In your browser it answers read-only questions: the vault balances, the live mandate, a lot’s status, and the simulator’s test calls. During the agent run it also carried the transactions. | Browser, at runtimeDeveloper machine only | Overview, Mandate and guardrails, Lots, Agent trade |
| Blockscout explorerexplorer.testnet.chain.robinhood.com | The public block explorer. This site only links to it, so you can open every transaction and read the verified contract source; the pages do not call its API. Source verification was done against it when the contracts were deployed. | Browser, at runtimeDeveloper machine only | Every page with a transaction or address link |
| Gemini FIXED SNAPSHOT · one rungemini-3.5-flash-lite | The language model that proposed the trade. It ran once, offline, during the agent run. The pages never call it and no API key is shipped to the browser, so nothing here is a live model. | Developer machine only | Agent (shows its run reasoning) |
| Foundryforge | Compiles the contracts, runs the test suite (unit, fuzz and invariant tests) and deploys to the chain. | Developer machine only | Mandate and guardrails (test names), Contracts |
| viemTypeScript Ethereum library | Builds the contract calls, sends them, and decodes the contract’s refusals into names and numbers. It is bundled into the pages that read the chain, and is also what the agent script uses. | Browser, at runtimeDeveloper machine only | Overview, Mandate and guardrails, Lots |
| Economics and identity-gate packagespackages/economics, packages/matching | Integer-cent unit economics, which mirrors the contract’s arithmetic, and the product-identity gates that decide whether two listings are the same item. The simulator runs the economics in your browser; the Radar verdicts were computed from the gates when the site was built, and the gates also ran during the agent run. | Browser, at runtimeSite buildDeveloper machine only | Mandate and guardrails, Radar, Opportunities |
| Run data files FIXED SNAPSHOTrun.json, snapshot.json, deployment.json | The agent run, the 10-offer market snapshot (a fixed snapshot, not a live feed) and the deployed addresses. The snapshot offers carry Shopee, Lazada and Google names, but nothing is fetched from those sites: they are fixed listings. The files are written by the agent script and baked into the pages when the site is built. | Site build | All /app pages |
| Astro and Reactstatic site | Astro builds the pages ahead of time into plain files; React runs only the interactive parts. The pages are static; the only server code is the Cloudflare Worker behind /api (see the Live backend table). | Site buildBrowser, at runtime | All pages |
Latency appears only in the live backend row, where the Worker measures it; no “connected” lights are shown for anything else. The Overview and Mandate pages show a live chain read with its block number, or say so when the RPC cannot be reached.
What it does not depend on
- No backend behind the run pagesEvery number on the run pages under /app comes from the chain, the run files, or your own inputs. The /api Worker only powers the panels tagged /api.
- No wallet to view the siteViewing pages needs no wallet. Only the Owner console and Deploy your agent send transactions, and nothing is signed or sent without your confirmation in your wallet. /market has a Connect button, but it sends nothing: bots do the trading there.
- No live market feed in the runPrices in the run come from a snapshot taken before the run. The /api price check is separate and labels every source REAL or TEST DATA. Lazada and Shopee are not integrated.
- No live model callGemini ran once, offline. The page shows what it said.