Tameion hackathon submission (Canteen × Circle). An agentic business console on Arc: an AI agent with a real wallet runs a business — launching its token through an LGE (Liquidity Generation Event) on Uniswap v4, receiving USDC, and putting the treasury to work — while a human operator supervises through a console built like an audit ledger.
PRODUCT.md— the locked product descriptionBASIS.md— the hackathon constraint setdeploy-testnet-1.md— Arc testnet deployment runbookllms.txt— agent-readable project summary
| Path | What it is |
|---|---|
contracts/ |
Uniswap v4 LGE hook + manager (Foundry). Hook v2: fee split, LP lock, vesting, inference escrow. |
executor/ |
The agent's back end: Hono API + worker + Postgres ledger + viem transaction pipeline + Circle signer adapter. |
console/ |
The operator console: Vite + React + wagmi. Design rubric for every new screen, including token launches (CONSOLE.md). |
legacy/lge-frontend/ |
The original Hookathon deposit UI, kept for reference. Superseded by console/. Do not extend it or reuse its terminal look. |
Baseline as of 27 Sep 2026: the contracts/ LGE hook and manager (single-swap-window
version) and legacy/lge-frontend/ existed, developed in the separate repos
38d3b7/lge-contracts and
38d3b7/lge-frontend (history preserved there).
Everything else in this repo is new since 27 Sep:
- Arc testnet deployment of the v4 stack + LGE (chain 5042002) with a passing end-to-end run
- Hook v2: perpetual 100 bps hook fee with 25/50/25 participant/agent/protocol split,
hook-custodied LP with the perpetual-lock rule,
exitLiquidity, deposit overloads, treasury-half success path (5% supply buy → 12-month vesting; remainder → inference escrow) executor/— the agent runtime: typed intents, quote-then-execute pipeline with idempotency, Circle developer-controlled smart-account signing, pg-boss worker, LLM agent loop with signed rationalesconsole/— the operator console (audit-ledger design system)
Chain 5042002, gas in USDC (18 decimals native; the ERC-20 view at
0x3600000000000000000000000000000000000000 is 6 decimals). See deploy-testnet-1.md
for deployed addresses and the runbook; contracts/deployments/5042002.json is the
machine-readable manifest.
- Contracts: 41 forge tests green (fee split math, LP lock transition, exit
gating, pull claims, treasury buy at several raise sizes, failure-path
finalization).
contracts/script/e2e.mjspasses the full lifecycle on-chain: launch → deposits → success → pool seeded → fee accrual → claims → lock. - Live console walkthrough (campaign WLK3, hook
0xD110BC51cE240f110D9f26AFFB745eb51E80AAcC): launched from the console wizard, deposited 1.11 USDC through the deposit box, LGE succeeded; the treasury half bought 5% of supply into VestingVault (1,000 of 20,000 tokens) and credited InferenceEscrow with 0.527 USDC; LP share recorded from the console. - Executor: intent pipeline round-trip on testnet (QUEUED → QUOTED →
SIMULATED → POLICY_PASSED → SIGNED → BROADCAST → FINAL, e.g. tx
0x1d4103b2…), idempotency replay/mismatch behavior verified, 28 vitest green. - Circle signer: wallet set
06b8685e-b977-521e-bb61-d42db479df71, SCA provisioning on ARC-TESTNET verified live (executor/script/circle-smoke.ts).
Demo video: demo/abc-demo.mp4 (~90s). Submission paste: SUBMISSION.md.
- 19-gwei send: RPC rejects; baseFee floor is 20 gwei.
- Kernel
eth_getCode: observed; 7702 path left unset. debug_traceCall/trace_callon the public RPC: unsupported. Valuation is by construction from typed intents (fail closed). The keyed Canteen RPC (arc-canteen rpc-url) is the BASIS attribution path — runarc-canteen loginand setARC_RPC_URL/VITE_ARC_RPC_URLonce the device flow completes.