> For the complete documentation index, see [llms.txt](https://docs.syndromics.xyz/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.syndromics.xyz/architecture/overview.md).

# System overview

Syndromics is a small set of immutable contracts on Robinhood Chain surrounded by open-source services that anyone can run. The contracts hold the state and enforce the rules; the services make the protocol usable.

```mermaid
flowchart LR
  subgraph Users
    B[Borrower wallet<br/>Robinhood Wallet or any EVM<br/>4337 or 7702]
    L[Lender wallet]
    K[Keepers and liquidators]
  end

  subgraph OffChain[Off-chain services]
    FE[Next.js front-end]
    REL[Offer relayer API<br/>EIP-712 order book]
    IDX[Indexer<br/>Ponder or Envio]
    KYC[KYC provider<br/>issues EAS attestations]
    NOTIF[Alerts and keeper bots]
  end

  subgraph Chain[Robinhood Chain, 4663]
    CORE[LoanSettlement<br/>immutable core]
    ELIG[EligibilityRegistry]
    ORA[OracleRouter<br/>Chainlink Feeds and Streams<br/>Sequencer Uptime]
    AUC[LiquidationAuction]
    REFI[RefinanceAuction]
    POS[PositionNFT, ERC-721]
    PARK[IdleCapitalAdapter<br/>Morpho Blue USDG vault]
    PARAM[ParamController<br/>timelocked multisig]
    ST[(Stock Tokens<br/>ERC-20 and ERC-8056)]
    USDG[(USDG)]
    CL[(Chainlink)]
    MB[(Morpho Blue)]
  end

  B --> FE --> REL
  L --> FE
  FE --> IDX
  KYC --> ELIG
  REL --> CORE
  B --> CORE
  K --> AUC
  CORE --> ELIG
  CORE --> ORA --> CL
  CORE --> POS
  CORE --> ST
  CORE --> USDG
  CORE --> PARK --> MB
  CORE --> AUC
  CORE --> REFI
  PARAM --> CORE
  IDX --> CORE
  NOTIF --> IDX
```

## Layers

### On-chain

| Contract              | One-line responsibility                                                              |
| --------------------- | ------------------------------------------------------------------------------------ |
| `LoanSettlement`      | Verify offers, escrow collateral, disburse principal, track loans and slices, repay  |
| `OfferVerifier`       | EIP-712 hashing, ECDSA and EIP-1271 recovery, nonce bitmaps, partial-fill accounting |
| `EligibilityRegistry` | Attestation lookups, role checks, jurisdiction rules, expiry                         |
| `OracleRouter`        | Session-aware price with staleness, pause, multiplier and sequencer-uptime guards    |
| `LiquidationAuction`  | Dutch auction of collateral, in-kind option, penalty split                           |
| `RefinanceAuction`    | Rising-rate rollover auction at maturity                                             |
| `PositionNFT`         | One ERC-721 per lender slice, transfer-gated by eligibility                          |
| `IdleCapitalAdapter`  | Deposit and withdraw lender balances in a whitelisted Morpho vault                   |
| `ParamController`     | All tunable parameters behind a timelocked multisig; every change emits an event     |
| `FeeCollector`        | Origination, interest-share, penalty and refinance fees                              |

Details and interfaces are in [Smart contracts](/architecture/smart-contracts.md).

### Off-chain

| Service     | One-line responsibility                                                                  |
| ----------- | ---------------------------------------------------------------------------------------- |
| Relayer     | Public order book of signed offers and requests; validation; matching suggestions        |
| Indexer     | Event-sourced view of every loan, slice, auction and parameter for the explorer and bots |
| Keepers     | Alerts, auction kick-off, refinance acceptance, idle-capital rebalancing                 |
| KYC service | Identity, sanctions and residency checks; issues attestations; holds PII off-chain       |
| Front-end   | Borrower and lender dashboards, loan explorer, risk page, governance log                 |

Details are in [Off-chain services](/architecture/off-chain-services.md).

## Trust boundaries

* **The contracts trust Chainlink** for prices, within the guards in `OracleRouter`.
* **The contracts trust the attestation issuers** listed in `ParamController` for eligibility, and nothing else about a user.
* **The contracts trust the timelocked multisig** for parameter changes only. It cannot move funds, upgrade code or pause repayment.
* **Nobody trusts the relayer.** Every offer it serves is re-verified on-chain at settlement. A malicious relayer can withhold offers but cannot forge or alter them.
* **Nobody trusts the front-end.** It is a convenience over public data and public contracts.

## Deployment posture

* Core contracts are non-upgradeable. A new version is a new deployment; existing loans run to maturity on the old one.
* Parameters are the only mutable state outside loan data, and every change is timelocked and logged.
* Emergency pause covers new loans and liquidations only. Repayment and post-repayment withdrawal are never pausable.


---

# 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.syndromics.xyz/architecture/overview.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.
