> For the complete documentation index, see [llms.txt](https://docs.amoeba.farm/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.amoeba.farm/oracle/01-how-it-is-structured.md).

# How the Oracle Is Structured

The Amoeba Farm oracle turns accepted source observations into a settlement-grade market movement.

It does not simply average random prices. It follows a monthly recipe.

## Monthly Flow

```
monthly source selection
  -> source support and challenge
  -> source freeze
  -> opening prints
  -> live source updates
  -> final oracle output
```

| Stage             | What happens                                                                            |
| ----------------- | --------------------------------------------------------------------------------------- |
| Source selection  | Users propose repeatable public sources and support the ones they believe should count. |
| Challenge         | Bad, duplicate, stale, private, or wrong-bucket sources can be challenged.              |
| Freeze            | The surviving source map and weights are fixed for the month.                           |
| Opening print     | Each frozen source gets a starting value.                                               |
| Live updates      | Users submit evidence when frozen sources change.                                       |
| Settlement output | The oracle reports the final market movement for the contract.                          |

## Source Recipe

A source recipe defines which sources count for the month and how they are weighted.

For RAMX, the source tree is organized around the RAMX module spot index. The tree lets users drill from the market to product rows and then to terminal source pins.

## Opening Prints

Opening prints set the starting value for accepted sources.

After that, a source is measured against its own opening value. This avoids pretending that every source is directly comparable as a raw price.

## Live Updates

During the live update stage, users can submit evidence when a frozen source changes.

Game Mode updates source states. It does not add new sources, remove sources, or change frozen weights.

## Evidence Packet

A useful evidence packet should make the claim reproducible.

It should include:

* source definition;
* canonical locator;
* claimed product bucket or row;
* observed value;
* source timestamp;
* archive or evidence pointer;
* enough context for another user to verify the claim.

Private quotes, broker messages, login-only screenshots, search snippets, and wrong-product evidence should not be treated as normal public sources.

## Final Output

The oracle combines source-local movement through the frozen recipe.

```
source movement
  -> row or bucket movement
  -> market index movement
  -> contract settlement
```

The important user question is simple: why did the index move? A good oracle page should answer that before showing deeper audit detail.

The oracle computes the movement. The market contract applies the payoff.


---

# 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.amoeba.farm/oracle/01-how-it-is-structured.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.
