# Do Not Act Launch Proof Pack

Use this page when someone asks: "show me it works." It is the compact proof set for controlled launch conversations.

## What This Proves

- The public dispute engine distinguishes a disputed UMA history from clean comparison markets.
- The Risk Gateway is action-aware: requested size can change the decision.
- The Polygon USDC tx-hash payment bridge has accepted a real on-chain payment once and returned the paid diagnostic.
- The public surface is agent-readable through `llms.txt`, OpenAPI, MCP metadata and JSON proof feeds.
- The product has a 5-minute start path at `/start`, a pricing page at `/pricing`, and a current paid Builder Plan at 30 EUR/month.

## Proof 1 — Disputed UMA History Blocks

Market `580810` is a real Polymarket market whose UMA status history contains `disputed`.

Verification:

```bash
curl -sS https://donotact.com/dispute-risk.json \
  | jq '.markets[] | select(.market_id=="580810") | {market_id, verdict, status_history, has_disputed_history, no_trade_reasons}'
```

Expected evidence:

- `verdict`: `DO_NOT_ACT`
- `has_disputed_history`: `true`
- `status_history` contains `disputed`
- reason code: `UMA_DISPUTE_DETECTED`

Public case:

- HTML: `https://donotact.com/proof-cases/donotact-polymarket-580810-uma-dispute-detected`
- JSON: `https://donotact.com/proof-cases/donotact-polymarket-580810-uma-dispute-detected.json`
- Resolved case JSON: `https://donotact.com/resolved-proof-cases/donotact-polymarket-580810-resolved-uma-dispute.json`

## Proof 2 — Clean Comparisons Do Not Over-Block

Markets `541000` and `540817` are included as clean comparisons in the public index.

Verification:

```bash
curl -sS https://donotact.com/dispute-risk.json \
  | jq '.markets[] | select(.market_id=="541000" or .market_id=="540817") | {market_id, verdict, status_history, has_disputed_history, no_trade_reasons}'
```

Expected evidence:

- `541000`: `READY`, no disputed history in the indexed public feed.
- `540817`: `READY`, no disputed history in the indexed public feed.

This matters because a product that returns `DO_NOT_ACT` for everything is not useful.

## Proof 3 — Risk Gateway Uses Requested Size

The Risk Gateway checks the requested action context. For a deliberately oversized notional, the public verdict is floored to `DO_NOT_ACT` instead of leaving a permissive `READY`.

Verification:

```bash
curl -sS \
  -H "X-API-Key: $DONOTACT_API_KEY" \
  "https://donotact.com/v1/preflight/polymarket/540817?intent=enter&side=buy_yes&notional_usd=10000000&max_slippage_bps=150&policy=conservative"
```

Expected evidence in the response:

- top-level `verdict`: `DO_NOT_ACT`
- Risk Gateway `decision`: `DO_NOT_ACT`
- `blocking_reasons[].code`: `EXIT_DEPTH_BELOW_REQUESTED_NOTIONAL`
- `safe_operating_limits.max_notional_usd`: present when public book evidence is fresh enough
- `not_advice`: `true`

Known limit: the exact `max_notional_usd` changes with the live public orderbook. The proof is the decision relationship: requested size above conservative public-book capacity blocks.

Access note: this live verification requires an API key. The endpoint is not anonymous because usage, receipts and quota are part of the product boundary.

## Proof 4 — Paid Machine Call Settled Once

The tx-hash payment bridge accepted a real Polygon USDC payment and returned the paid dispute diagnostic once.

Recorded server-side payment row:

```text
network=eip155:137
tx_hash=0x6c40478030f93e1dff7b4867dda3ebf7567baaed4e4bed5c28d0e0096fa42ada
amount_atomic=10000
venue=polymarket
market_id=580810
created_at=2026-06-16T16:07:10.439754Z
settlement=verified_on_chain_and_consumed_once
```

Verification for a new payment:

```bash
curl -i -sS https://donotact.com/x402/tx/v1/dispute/polymarket/580810
```

Expected unpaid response:

- HTTP `402`
- error `tx_hash_payment_required`
- accepted headers include `X-402-Tx-Hash`

For a new exact Polygon USDC transfer, the first use of the transaction hash returns HTTP `200`; replay returns HTTP `409 tx_hash_already_consumed`.

Known limit: the already recorded transaction hash cannot be reused because one-time consumption is the security property.

## What This Does Not Prove

- It does not prove avoided losses, ROI, alpha, profitability, event probability or fill quality.
- It does not prove live-before-dispute prediction until a stored Do Not Act verdict predates an explicit dispute transition timestamp.
- It does not mean Do Not Act executes, routes, signs, custodies funds or handles private keys.
- It does not guarantee that a future market with similar wording will resolve the same way.

## Proof 5 — Agent-Readable Surface

Canonical assets:

- `https://donotact.com/llms.txt`
- `https://donotact.com/.well-known/llms.txt`
- `https://donotact.com/llms-full.txt`
- `https://donotact.com/openapi.json`
- `https://donotact.com/agent.json`
- `https://donotact.com/mcp.json`
- `https://donotact.com/docs/distribution-kit`

Before public posting, run:

```bash
cd /root/athenea_apex
python3 scripts/donotact_public_surface_smoke.py --execute
```

The smoke checks canonical URLs, OpenAPI hash parity, proof feeds, MCP metadata, x402 docs and legacy-term regressions.

## Launch Copy Boundary

Use this wording:

> Do Not Act is a stop/go diagnostic API for prediction-market agents before they spend. It checks dispute lifecycle, resolution ambiguity and action-aware public evidence before an agent continues.

Do not use:

- "guaranteed profit"
- "avoided loss"
- "winning picks"
- "alpha"
- "ROI"
- "we execute"
- "we trade for you"
