{
  "$schema": "https://gitstock.io/schema/stock.json/v1",
  "symbol": "NVTS",
  "name": "Navitas Semiconductor • Robinhood Token",
  "uid": "0x00000000000000000000000000000000b9e9686fc0904e87aef5134b823020e3",
  "chainId": 4663,
  "tokenAddress": "0xbE6702d7b70315376dC48a3293f24f0982F86386",
  "decimals": 18,
  "isEtf": false,
  "feed": null,
  "price": null,
  "sequencer": {
    "gate": "0x57Df357Dec949eB2B5202143F1557Db4eB38B46D",
    "up": null,
    "configured": null,
    "note": "gate UNCONFIGURED (source == 0) — hardwired to down; do NOT hard-gate price on it"
  },
  "holders": 8,
  "tvlUsd": 6.089145915879401,
  "pools": [
    {
      "pool": "0xa6DB97Fb3e2Dcb5De6eC43B04bE6AA151905DC17",
      "pairToken": "0x5fc5360D0400a0Fd4f2af552ADD042D716F1d168",
      "quote": "USDG",
      "dex": "v3",
      "tvlUsd": 6.089145915879401
    }
  ],
  "dependents": [],
  "fieldNotes": [
    {
      "title": "No feed for NVTS yet",
      "body": "No Chainlink feed is deployed for this token yet, so there's no live price. The universal Robinhood-stock-token quirks below still apply the moment one appears.",
      "danger": false
    },
    {
      "title": "The price feed is not on the token",
      "body": "The Stock token carries no price and no feed pointer on-chain — no latestRoundData(), no priceFeed(). The Chainlink feed is a separate, unlinked contract, and the token→feed mapping isn't published anywhere. gitstock resolves it for you (verified via the token factory's own creation events, not by symbol).",
      "danger": false
    },
    {
      "title": "The L2 sequencer gate is hardwired to “down”",
      "body": "Robinhood ships a custom SequencerGate whose source() is currently the zero address — so latestRoundData() returns answer = 1 (down) forever, while the price feeds are healthy. Copy the standard Chainlink pattern require(sequencerUp == 0) and your app will never render a price here. Read the gate for transparency, but don't hard-gate on it yet.",
      "danger": true
    },
    {
      "title": "Staleness is the real guard — and it's market-aware",
      "body": "Because the sequencer gate is unusable, freshness on the feed itself is the actual safety check. During US market hours the feed updates every ~17min–1h on deviation; off-hours it slows to a few hours but keeps moving (24/5). A single tight threshold false-flags overnight reads. Weekend-flat is normal, not stale.",
      "danger": false
    },
    {
      "title": "Feed price is the TOKEN price, not the stock price",
      "body": "latestRoundData() already returns stock_price × uiMultiplier() — don't apply the multiplier again. Dividends reinvest through the multiplier, so the token tracks total return and drifts above the headline stock price over time. That's why the number here won't match Google Finance.",
      "danger": false
    },
    {
      "title": "oraclePaused() is advisory, not enforced",
      "body": "During corporate actions the token oracle is paused. oraclePaused() == true means “price temporarily unavailable”, not zero/error — and it isn't enforced on-chain, so a paused oracle can still return a value. Treat it as a display state; rely on staleness for protection.",
      "danger": false
    },
    {
      "title": "Read decimals() on-chain; don't hardcode",
      "body": "Feed answers use the feed's own decimals (8 for these USD feeds). Read decimals() from the proxy every time rather than assuming.",
      "danger": false
    }
  ],
  "_source": "gitstock — resolved on-chain, verified via factory TokenCreated events (not by symbol)"
}