> For the complete documentation index, see [llms.txt](https://docs.gage.cash/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.gage.cash/protocol/collateral-rules.md).

# Collateral rules

Two kinds of rule. The contracts check the first kind at every listing. The registry's owner applies the second kind before allowlisting an asset, and publishes them so no asset looks special-cased, including GAGE when its turn comes.

## Checked by the contracts

### ERC-20 tokens: stocks, ETH, memes

* The token is on the registry's allowlist, in a lane: STOCK, ETH or MEME.
* The amount is at least the token's minimum and at most its per-deal maximum, and the asset's total open across all deals stays under its cap. All in raw units.
* Transfers are checked by balance delta, so a fee-on-transfer or rebasing token cannot be listed by accident.

Memes use the same adapter unchanged. The vault never reads the lane; the lane is for the app and the indexer.

### Uniswap v4 positions

1. The caller owns the position and the NFT contract is the configured PositionManager.
2. The pool is on the allowlist, and its currencies are stock/USDG or meme/stock. Both non-USDG assets must be independently allowlisted in the corresponding lanes.
3. Removal callbacks are rejected by default. An exact pool may opt into a reviewed, immutable observation-only `afterRemoveLiquidity` callback, pinned by runtime code hash through `setPoolRemovalHook`. Before-remove and removal-return-delta permissions cannot be exempted. Revocation affects new deposits, never settlement or withdrawal of existing deals.
4. Liquidity is above the pool's configured minimum.
5. In range at deposit, when the registry's in-range flag is on. It is off at launch.
6. No active subscriber on the position.

Positions in Pons-graduated pools are never allowlisted. Their liquidity fee is zero and the hook takes the swap fee, so the position is pure price exposure.

## Applied by the registry's owner

### Stock Tokens and stock/USDG pools

* The deepest USDG pool for the asset holds at least the depth floor, proposed 500,000 USDG, with a 30-day median daily volume above the volume floor.
* The token contract is reviewed for pause, blocklist, upgrade and transfer hooks. Findings are recorded in the listing note.
* For pools: the hook source is reviewed, the fee tier is standard, and there are no liquidity-callback permissions.
* Per-asset open cap set as a fraction of pool depth, proposed 10% in aggregate and 2% per deal.
* Minimum age since deployment or graduation, proposed 14 days.

### Memes

1. A Uniswap v4 pool on Robinhood Chain pairs the token with an allowlisted Stock Token. That pool is the valuation source and the lender's exit.
2. The pool has existed for 7 days or more.
3. Market cap is 1,000,000 USDG or more, as a 7-day median.
4. Automated contract checks pass or their findings are recorded and shown: no mint after launch, no pause, no transfer tax, no blocklist, no proxy.
5. Per-deal cap 1% and per-asset open cap 5% of the pool's depth, set in raw units at listing and revisited weekly.

Whether the pool's liquidity is locked is shown, not required. The registry records which pair assets memes may trade against: stocks only at launch, with USDG and ETH switchable later.

## Paused tokens

A Stock Token can be paused around a corporate action. Custody is unaffected. Deals keep advancing and entitlements are recorded. Withdrawals of that token wait until it resumes. Rewards are not paused.

## Multiplier events

Splits and dividends change a Stock Token's display multiplier, not raw balances. Caps and amounts are raw. Whoever holds the raw tokens at the time gains the adjustment.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.gage.cash/protocol/collateral-rules.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
