{"generatedAt":"2026-10-03T23:33:20.884Z","build":{"repo":"https://github.com/Franlinozz/Kerb","firstCommitAt":"2026-09-18T23:38:38+01:00","latestCommitAt":"2026-09-25T21:54:08+02:00","commits":256,"commitsPerDay":[{"date":"2026-09-18","count":9},{"date":"2026-09-19","count":13},{"date":"2026-09-20","count":11},{"date":"2026-09-21","count":55},{"date":"2026-09-22","count":100},{"date":"2026-09-23","count":38},{"date":"2026-09-24","count":3},{"date":"2026-09-25","count":27}],"buildPeriodMarkdown":"# BUILD_PERIOD.md\n## What was built when\n\nOfficial build period: 18 Sep 2026 to 25 Sep 2026 23:59 UTC (OKX Dev Day 2026, Build a Market).\nPlanning documents were committed on 18 Sep. Product code starts on 19 Sep. One line per functionality, UTC.\n\n| Date (UTC) | Task | What was built |\n|---|---|---|\n| 19 Sep | K-01 | pnpm workspace (Node 22, TS strict, exactOptionalPropertyTypes), apps and packages scaffold, Foundry project with forge-std, ESLint, Vitest, `.env.example` |\n| 19 Sep | K-01 | `packages/types`: shared decimal module (decimal.js, no floats on value paths), provenance labels, `Regime` enum matching KTS-0.1 4.1, `assetId = keccak256(abi.encode(chainId, token))`, canonical JSON |\n| 19 Sep | K-02 | X Layer mainnet (196) and testnet (1952) viem clients, explorer link helpers, `pnpm chain:ping` |\n| 19 Sep | K-03 | Asset discovery: ten campaign pools resolved from the xStocks issuer API and the Uniswap v3 factory, each confirmed onchain (token0, token1, fee, tickSpacing, slot0, liquidity, factory); `config/assets.json` |\n| 19 Sep | K-04 | `packages/adapters`: `AssetAdapter` interface and `XStocksAdapter` (issuer API + token and wrapper contracts), Uniswap v3 pool snapshot reader pinned to one block, Yahoo and Pyth reference clients |\n| 19 Sep | K-05 | `apps/collector`: pool (60s), price (30s) and multiplier (10m) loops writing append-only rows with source, timestamp, keccak content hash and raw payload blob; DB triggers reject UPDATE, DELETE, TRUNCATE; fixture mode by default, `KERB_LIVE=1` for live |\n| 19 Sep | K-06 | Collector live on the VPS under PM2 from 06:37 UTC, `/health` with per-source ages and row counts, freshness alarm at 5 minutes |\n| 19 Sep | K-07 | `packages/v3math`: exact bigint Uniswap v3 exact-input simulation walking initialised ticks from slot0; matches QuoterV2 to the wei on 150 quotes over 15 real X Layer pools at one pinned block; refuses to step into unobserved bitmap words |\n| 19 Sep | K-07 | `C(i)` by bisection with the guarantee impact(C) <= i; impact curve at the KTS default ladder |\n| 19 Sep | K-08 | Multi-hop paths (asset -> xETH -> USDG, asset -> USDC -> USDG) with compounded impact and recorded path; venue aggregation with the fragmentation factor; exclusions recorded with reasons |\n| 19 Sep | K-08 | OKX DEX quote client (signed, v6) and quote-curve capacity with the min-never-max cross-check rule; runs on rung 2 until credentials exist |\n| 19 Sep | K-09 | `packages/calendar`: XNYS, XNAS, ARCX, XHKG (lunch break first class, half days), XCOM (CME Globex metals) for 2026 to 2027, DST via the IANA database; holiday overrides cross-checked against Pyth's published market-hours schedules |\n| 19 Sep | K-10 | Clock resolver: session, next transition, next weakening, next reference close, cure window, horizon H; pure function of (market, time) |\n| 19 Sep | K-08 | `apps/engine` depth assembly from live observations with staleness, dust and route exclusions; `pnpm --filter @kerb/engine depth-report` |\n| 20 Sep | K-11 | Credit Mark: reference median with FX conversion, pool price along the whole path, TWAP from pool observations, dispersion guard, regime haircuts, band, provenance on every component; legacy v1 wrappers rejected |\n| 20 Sep | K-12 | Underlying daily bar ingestion (append-only), gap quantiles by horizon, 20d/5y volatility scaler with clamping, and a conservative universe fallback for assets without five years of history |\n| 20 Sep | K-13 | KTS capacity: stress capacity, debtCeiling = k*C(1%), position cap, Carry and Session Max at their two horizons, guardrail clamping recorded |\n| 20 Sep | K-13 | Regime machine with the KTS 4.2 resolution order and the 4.3 tighten-fast loosen-slow asymmetry |\n| 20 Sep | K-14 | Input bundles: canonical JSON, keccak256 inputsHash, deterministic IPFS CIDv1, Pinata pinning when configured; `kerb report` and `kerb verify` |\n| 20 Sep | K-15 | `contracts/KerbClock.sol`: onchain calendars, holidays, asset-to-market mapping, expiring halt flags, session and transition views; equivalence with the TypeScript resolver on 1,000 timestamps across XNYS and XHKG |\n| 20 Sep | K-16 | `contracts/KerbTerms.sol`: EIP-712 signed reports, attester set, absolute guardrails, monotonic observedAt, tighten-fast loosen-slow, `effectiveTerms` usability; every revert path in AGENTS.md section 9 tested |\n| 20 Sep | K-17 | Deployed KerbClock and KerbTerms to X Layer testnet (1952), source verified on Sourcify (exact match), calendars and guardrails loaded onchain |\n| 20 Sep | K-18 | `apps/attester`: builds the report, pins the bundle, signs EIP-712 with the attester key, posts with the poster key every 5 minutes and on every regime change, skips unchanged reports, holds increases during the loosen cooldown, hard-stops on low gas |\n| 20 Sep | K-18 | Builder Codes (ERC-8021): data suffix on every transaction Kerb sends, plus a decoder and a round-trip test; decoded from real onchain calldata |\n| 20 Sep | K-08 | Depth cross-check live: OKX DEX v6 aggregator quotes at the notional ladder every 5 minutes (append-only `obs_quote`), quote-implied impact measured against the same mid as the simulation, and the conservative value taken when divergence exceeds the configured maximum. Executable depth moves to rung 1 |\n| 20 Sep | K-20 | **X Layer mainnet risk plane live**: KerbClock and KerbTerms deployed to chain 196 with operator approval, Sourcify verified, calendars and guardrails loaded, attester posting all ten assets every five minutes with Builder Code attribution |\n| 20 Sep | K-21 | `apps/indexer` (TermsPosted and RegimeChanged into Postgres, idempotent by tx hash, reorg-aware by block hash, restartable from a stored cursor), `apps/api` (Fastify: /v1/board, /v1/terms, /v1/reports, /v1/bundle, /health, 15s board cache, provenance on every value), `packages/sdk` |\n| 20 Sep | K-22 | Recovery after the VPS OOM kill: all five kerb services restarted and persisted into the PM2 dump, `oom_score_adj=-800` so the recorders are never the kernel's victim, 8 GB of additional swap, `vm.min_free_kbytes` raised |\n| 20 Sep | K-22 | IPFS pinning live (Pinata); a probe confirmed the pinned CID is byte-identical to the CIDv1 the engine computes locally. Registered Builder Code `kt0hl6xyhlx8xmt` replaces the placeholder on every transaction |\n| 20 Sep | K-23 | `/v1/clock`, `/v1/report` and `/v1/proof` on the public API: session geometry from the same resolver the onchain KerbClock is equivalence-tested against, the full Market-Time Report recomputed from current observations, and a proof surface assembled entirely from live state |\n| 20 Sep | K-23 | **Fixed a 1e12 error in `/v1/terms`**: debt ceilings and executable depth are posted in loan-asset units (USDG, 6 decimals) and were declared as WAD, so every SDK consumer would have read them 1,000,000,000,000 times too small. Regression test added against the board's own numbers |\n| 20 Sep | K-24 | `apps/web`: the Session Strip (trading week, live cursor, Last Call window, one orchestrated motion on regime change, instant under reduced motion), `/`, `/board`, `/asset/[symbol]` with the impact curve drawn from real observations, and `/proof`. Both themes first class, screenshots at 390 and 1440 reviewed and defects fixed |\n| 20 Sep | K-24 | Deployed at https://www.usekerb.xyz behind Caddy with TLS, under PM2 as `kerb-web`; the public API is live at https://api.usekerb.xyz |\n| 21 Sep | K-25 | `contracts/KerbCredit.sol`: isolated market, shares-based accounting both sides, two-slope kink interest with a reserve factor, Carry and Session Max modes, the cure covenant, default liquidation at a FIXED liquidation threshold, guardian pausing that can never block repay, cure, liquidate or a withdrawal to safety |\n| 21 Sep | K-25 | `KerbMirror` (testnet collateral, capped faucet, name and symbol that say MIRROR TESTNET) and `KerbClockDemo` (one compressed trading week per hour, `DEMO_CALENDAR` on construction, testnet only) |\n| 21 Sep | K-26 | 106 contract tests: the full QA matrix for contracts, eight invariants under a guided handler (16,384 calls per run), deterministic handler-coverage tests so no invariant is vacuous, and fork tests against the real xStocks V2 wrapper and the live mainnet KerbTerms on X Layer 196 |\n| 21 Sep | K-29 | Credit plane deployed to X Layer testnet: `MockUSDG` (rung 2, labelled), `KerbClockDemo`, `kKOx` and `kHKEXCx` mirrors, `KerbCredit`; both mirrors listed with a fixed liquidation threshold and the real mainnet Credit Mark relayed onto them by the attester |\n| 21 Sep | K-30 | `/v1/credit/:chain` and `/v1/credit/:chain/position/:user/:assetId`: market state, the fixed liquidation threshold, the covenant target, health, and the exact cure amount, read from chain rather than from the indexer |\n| 21 Sep | K-31 | `/market` page: pool state, each mirror with its regime, Credit Mark, Carry and Session Max ceilings, the FIXED liquidation threshold, cure and default bonuses, and a permissionless position lookup showing health and the exact cure amount. Testnet, mirror collateral and the demo clock are stated at the top, not buried |\n| 21 Sep | K-29 | Full credit lifecycle executed on X Layer testnet: supply, collateral, borrow at Session Max, Last Call opens on the compressed clock, permissionless cure by a second account, repay, withdraw. Cure computed 1202.094527 mUSDG against 1202.092123 executed; LTV 64.1667% to 55.00005% against a 55% covenant target |\n| 21 Sep | K-36 | Slither 0.11.6 over all contracts: 67 results, **none High**. `SECURITY.md` records the disposition of every finding, the key model, and the known limitations; raw output committed under `data/security/` |\n| 21 Sep | K-39 | `kerb verify <inputsHash>` now works from a chain hash alone: it finds the CID the bundle was pinned under, fetches those bytes from IPFS, checks they hash to that CID, recomputes the whole report, and compares every value against what was actually posted on chain. A value the attester clamped tighter into the onchain guardrails is named as such rather than reported as a mismatch |\n| 21 Sep | K-34 | `/methodology`: KTS-0.1 stated rule by rule and worked through on whichever asset currently carries the most capacity, using live measured numbers. The specification's own worked example is marked \"not measured\" and is deliberately not reproduced |\n| 21 Sep | K-35 | `/v1/terms` now carries the pinned bundle's CID, gateway URL and verify command, and the asset page links the inputs hash straight to those bytes: Board, asset, bundle: a displayed number to its exact inputs in two clicks |\n| 21 Sep | K-38 | Market-Time Report #1, generated from the observation store by `pnpm --filter @kerb/engine market-time-report` and published at `/reports/1`: 42.25 hours, 35,130 pool readings across 15 pools, in-range liquidity fell on 7 of 10 asset pools while the underlying markets were shut (largest fall MIXUx -49.12%, largest rise SLVx +4.94%). The 3h16m hole in the record is reported, not interpolated across |\n| 21 Sep | K-31b | Phase 6 gaps closed: the ERC-8021 Builder Code suffix is now attached to **every transaction the web app sends**, not only the attester's; supply and withdraw for lenders; a positions list; a position card with health against the fixed threshold, the covenant target, a cure countdown and a plain-language sentence saying what happens next and what the borrower can do about it; the mode choice reframed as one plainly-worded question with Carry and Session Max side by side **in loan-asset amounts, not just percentages** |\n| 21 Sep | K-34b | The KTS parameter set is served from the live params file at `/v1/params` and rendered as a table on `/methodology` |\n| 21 Sep | K-38b | `/reports` index, and the mirror relay moved into PM2 as `kerb-mirror-relay` on a 5-minute loop: a stale mirror report correctly makes `effectiveTerms` unusable, which stops borrowing, and on a demonstration market that just reads as broken |\n| 21 Sep | K-33b | **Cure executed from the UI on X Layer testnet**: a second account, in a real browser, brought a Session Max position back to its Carry target. Transaction [0x91c40151](https://www.oklink.com/x-layer-testnet/tx/0x91c401511bf9839965318559a504f5c574aee37c19a0eec95baaddfb2590bbf9), block 41514829, gas 153,904, LTV 60.00% to 55.013% against a 55% target, and the calldata carries Builder Code `kt0hl6xyhlx8xmt` |\n| 21 Sep | K-41 | The Session Strip now appears on every page, as ARCHITECTURE.md section 9 specifies. It was on three of nine: the landing page, the Board and the asset page. Pages that lead with their own asset render it themselves; the rest get a compact one led by whichever asset currently carries the most capacity, and it renders nothing at all rather than an error if the clock cannot be read |\n| 21 Sep | K-43 | **Pinata hit its free-plan limit** after ~1,800 pins in a day, so bundles stopped pinning and `/proof` was reporting \"pinning is not configured\" when it was configured and blocked. The attester now writes every bundle to disk under its own `inputsHash` before posting, `/v1/bundle/:hash` serves it, and `kerb verify` falls back to the API when no IPFS gateway has the CID. `/proof` counts how many bundles are actually retrievable and says which are not and why. Pinning backs off for 30 minutes when the service refuses |\n| 21 Sep | V2-K | V2 started: the audit, the Kerbstone design system, KTS-0.2 and the phase prompts committed under `docs/v2/`, AGENTS.md section 12 appended, and a staging deployment for V2 at v2.usekerb.xyz built by `scripts/deploy-web.sh`, which compiles each release in its own worktree and only swaps it in after it answers on a spare port |\n| 21 Sep | V2-00 | The repo reads like a company's: planning documents under `docs/planning/`, the standard and the architecture under `docs/`, private strategy notes out of the tree; no em dash anywhere in public copy, enforced in CI; GitHub Actions CI for TypeScript and Solidity; MockUSDG, KerbClockDemo, both mirrors and KerbCredit verified on Sourcify (exact match), so every Kerb contract is now verified; the mirror liquidation threshold explained in the API and the architecture; the pinning gap stated in words |\n| 21 Sep | V2-01 | **KTS-0.2 live on mainnet and testnet**: Carry and Session Max are now the fixed liquidation threshold minus a margin tied to the horizon each mode must survive, so they move with market time. Replayed over 3,286 real bundles and posted 1,357 times through the real mainnet KerbTerms on a fork before going live; every 0.1 report still verifies under 0.1 |\n| 21 Sep | V2-02 | API for the V2 frontend: every Board row now carries its fixed liquidation threshold read from chain, its market and exchange coordinates, the next transition, the Last Call window, the KTS version and margins and a 24-hour depth sparkline, with a Board summary; `/v1/tape`, `/v1/stats`, the demo clock as a schedule, and a feed of every open credit position found from the market's own events, curable first. `docs/API.md` documents every endpoint with a real captured response |\n| 21 Sep | V2-04 | Kerbstone foundation on staging: the design tokens as CSS layers, General Sans, Instrument Serif and IBM Plex Mono actually loaded, Night, Day and Market-time themes painted before first paint, a new header with a live status pill, a wallet sheet listing EIP-6963 wallets with OKX Wallet first, a mobile drawer with a focus trap, a footer with the market clocks, an error map that turns every contract error into a sentence with its numbers, toasts and a transaction stepper, 20 UI primitives, 404, error and loading routes, per-route metadata and social cards, and 308 redirects from /market and /reports to /credit and /research |\n| 22 Sep | V2-05..07 | The time components (SessionRail in four variants, MarketClocks, the Tape), the editorial Home on the operator's Kerbstone plates, the Board and the Asset page rebuilt, and The Record, The Standard and Fog placed on Research, Methodology and the 404; Playwright E2E for the rail transition, the Board filter, sort and row link, the Asset tabs and copy buttons |\n| 22 Sep | V2-09 | Research rebuilt: a forest-band index on The Record with the latest report as a featured card and a Scheduled row for Report #2 counting down to its publication; each report page shows liquidity change as sorted diverging bars (asset pools and route legs apart), the window against both markets' sessions with the hole in the record drawn where it actually is (new read-only `/v1/market-time/:id/gaps`), findings as claim and evidence, and an appendix with L labelled as protocol units |\n| 22 Sep | V2-10 | Methodology as a reference with a contents rail: the regime ladder with the live rule highlighted, the real impact curve, the mark waterfall, KTS-0.2 margins broken into multiplier, vol, gap and horizon, the replay, the covenant timeline, and the parameter set as wrapping grouped lists (nothing off-screen at 390). Proof opens on an eight-tile status matrix; `/v1/proof` now decodes the Builder Code of every recent post and recomputes the latest report from its stored bundle, field by field against the chain. Developers: SDK, REST and Solidity tabs with live responses, the endpoint table generated from docs/API.md, ABIs to download |\n| 22 Sep | V2-08 | Credit, the hero workflow, proven in real browsers on X Layer testnet: four runs with fresh wallets (one keyboard only, one in Day), each a Session Max borrow cured by a stranger from the public Curable now table during the demo Last Call, then repaid and withdrawn; every transaction receipt checked and the latest run shown on /proof. The runs found and fixed three real bugs: gas estimates made in the block of the last interest accrual ran out of gas, a MAX that rounded a balance up past what was deposited, and a hydration mismatch from the shared wallet config |\n| 22 Sep | V2-11 | Hardening begun: E2E is a required CI job against a production build and recorded real API responses; axe on every route in both themes (zero serious or critical); a link sweep and a dead-button sweep (277 buttons, none dead); every route incrementally regenerated instead of rendered per request; a rate limit on the positions feed; a secret scan of the whole history. Report #1 gained a dated appendix of executable depth in USDG; Report #2's generator and its captures are scheduled for Thursday |\n| 22 Sep | V2-11 | **Kerb V2 live on www.usekerb.xyz** (cut over 16:00 UTC, tag `v2.0.0`): the full E2E suite passes against production, Lighthouse mobile scores 94 to 100 on every route, and a real-user walkthrough of every page at three widths in both themes was run on the live site with its findings fixed the same hour. Releases now swap with no dropped requests |\n| 23 Sep | V3-00 | V3 started: the V3 pack under `docs/v3/`, AGENTS.md section 13, a truth sweep of public copy (bundles are published, not pinned; the repo is public; mainnet terms are denominated in USDG) and `scripts/claims-check.sh`, a denylist of unsupported claims that fails CI |\n| 23 Sep | V3-01 | First paint is never shown stale: live pages date their data by the payload's own stamp and refresh at once when it is old, a guard dims values with \"Refreshing live data\" or \"Last known\" with Retry, countdowns never run from the past, every calendar transition has a word, and `kerb-web-warmer` keeps each live route regenerating; first paint went from 2 h 17 m old to under 35 s |\n| 23 Sep | V3-02 | The demo keeper runs: one Session Max position on kHKEXCx every demo cycle, curable at each demo Last Call, decided from chain state only (a restart never opens twice, a pending nonce blocks every send), with its status at `/v1/credit/1952/keeper`; a stranger cured it through the real Credit page |\n| 23 Sep | V3-03 | Kerb for Agents: paid credit and exit checks over x402 on X Layer (USDT0, one cent, OKX facilitator), answered from the posted terms and the report recomputed from the posted bundle, with collateral valued exactly as KerbCredit does; a free MCP server with six read-only tools; settled calls recorded append-only |\n| 23 Sep | V3-04 | Every term change explains itself: an exact attribution of each posted Carry, Session Max and debt ceiling move into horizon, volatility, exit cost, depth and the attester's loosening cap, from the two posts' own input bundles; Why these terms and What changed on each asset, a line under each Credit mode card, a hover card on the Board |\n| 23 Sep | V3-05 | KerbQuote and KerbMarkFeed, read-only consumers of Kerb Terms any X Layer contract can call; valuation equals KerbCredit's to the wei (fuzzed, and live on testnet); deployed and Sourcify-verified on testnet, mainnet fork tests green |\n| 23 Sep | V3-06 | The OKX DEX cross-check as a record: one exit check per mainnet post, an Exit check panel with a 72 h strip on each asset, counts on Proof |\n| 23 Sep | V3-07 | Kerb Terms and its four consumers across the site: Home, Developers (SDK, REST, Solidity with a live KerbQuote read, Agents with the x402 call and the MCP config), Proof, Credit, README |\n| 23 Sep | V3-08 | Last Call reminders: a Session Max borrower can ask the Credit page to notify them when Last Call opens and five minutes before it closes |\n","tests":{"startedAt":"2026-09-25T02:31:08Z","finishedAt":"2026-09-25T02:32:28Z","commit":"1bd81784591239d24c7e706133311ba9f76cb648","typescript":{"passed":594,"suitesWithFailures":0,"command":"pnpm -r test"},"solidity":{"passed":120,"failed":0,"command":"forge test"}}},"onchain":{"deployments":[{"key":"1952:KerbClock","chainId":1952,"contract":"KerbClock","address":"0x6c1de992e3219980138d7e51b67ecc523618bc5c","block":"41420913","deployedAt":"2026-09-20T04:49:09.381Z","verification":"Sourcify exact match","verificationUrl":"https://repo.sourcify.dev/contracts/full_match/1952/0x6c1de992e3219980138d7e51b67ecc523618bc5c/","explorer":"https://www.oklink.com/x-layer-testnet/address/0x6c1de992e3219980138d7e51b67ecc523618bc5c","group":"core"},{"key":"1952:KerbTerms","chainId":1952,"contract":"KerbTerms","address":"0x5a4942f55e37994370745ef984a21321edb75f7e","block":"41420914","deployedAt":"2026-09-20T04:49:11.128Z","verification":"Sourcify exact match","verificationUrl":"https://repo.sourcify.dev/contracts/full_match/1952/0x5a4942f55e37994370745ef984a21321edb75f7e/","explorer":"https://www.oklink.com/x-layer-testnet/address/0x5a4942f55e37994370745ef984a21321edb75f7e","group":"core"},{"key":"196:KerbClock","chainId":196,"contract":"KerbClock","address":"0xf765d374e0ce576860a463f0d796ad45c62161b8","block":"71146758","deployedAt":"2026-09-20T14:49:53.759Z","verification":"Sourcify exact match","verificationUrl":"https://repo.sourcify.dev/contracts/full_match/196/0xf765d374e0ce576860a463f0d796ad45c62161b8/","explorer":"https://www.oklink.com/xlayer/address/0xf765d374e0ce576860a463f0d796ad45c62161b8","group":"core"},{"key":"196:KerbTerms","chainId":196,"contract":"KerbTerms","address":"0x6d6eaf24c498df6cef0954f6d19ab4ea7b0102d5","block":"71146760","deployedAt":"2026-09-20T14:49:56.159Z","verification":"Sourcify exact match","verificationUrl":"https://repo.sourcify.dev/contracts/full_match/196/0x6d6eaf24c498df6cef0954f6d19ab4ea7b0102d5/","explorer":"https://www.oklink.com/xlayer/address/0x6d6eaf24c498df6cef0954f6d19ab4ea7b0102d5","group":"core"},{"key":"1952:MockUSDG","chainId":1952,"contract":"MockUSDG","address":"0x91fcf99262214c32f6fe342d94c7b0dfb2dba679","block":"41483601","deployedAt":"2026-09-20T22:13:58.424Z","verification":"Sourcify exact match","verificationUrl":"https://repo.sourcify.dev/contracts/full_match/1952/0x91fcf99262214c32f6fe342d94c7b0dfb2dba679/","explorer":"https://www.oklink.com/x-layer-testnet/address/0x91fcf99262214c32f6fe342d94c7b0dfb2dba679","group":"core"},{"key":"1952:KerbClockDemo","chainId":1952,"contract":"KerbClockDemo","address":"0xd2483b2d8bd759f87fadb21117498a5db36bcb0f","block":"41483604","deployedAt":"2026-09-20T22:14:01.406Z","verification":"Sourcify exact match","verificationUrl":"https://repo.sourcify.dev/contracts/full_match/1952/0xd2483b2d8bd759f87fadb21117498a5db36bcb0f/","explorer":"https://www.oklink.com/x-layer-testnet/address/0xd2483b2d8bd759f87fadb21117498a5db36bcb0f","group":"core"},{"key":"1952:KerbMirror:KOx","chainId":1952,"contract":"KerbMirror:KOx","address":"0x11827f0f59d516e3778951fde36bd0d961af4a16","block":"41483608","deployedAt":"2026-09-20T22:14:04.844Z","verification":"Sourcify exact match","verificationUrl":"https://repo.sourcify.dev/contracts/full_match/1952/0x11827f0f59d516e3778951fde36bd0d961af4a16/","explorer":"https://www.oklink.com/x-layer-testnet/address/0x11827f0f59d516e3778951fde36bd0d961af4a16","group":"core"},{"key":"1952:KerbMirror:HKEXCx","chainId":1952,"contract":"KerbMirror:HKEXCx","address":"0x80da4036ee45e6d66a27dba415a4ce23eb9360f2","block":"41483611","deployedAt":"2026-09-20T22:14:08.129Z","verification":"Sourcify exact match","verificationUrl":"https://repo.sourcify.dev/contracts/full_match/1952/0x80da4036ee45e6d66a27dba415a4ce23eb9360f2/","explorer":"https://www.oklink.com/x-layer-testnet/address/0x80da4036ee45e6d66a27dba415a4ce23eb9360f2","group":"core"},{"key":"1952:KerbCredit","chainId":1952,"contract":"KerbCredit","address":"0xa1314645cd6c07e651359aba540e2600090b98a8","block":"41483834","deployedAt":"2026-09-20T22:17:50.990Z","verification":"Sourcify exact match","verificationUrl":"https://repo.sourcify.dev/contracts/full_match/1952/0xa1314645cd6c07e651359aba540e2600090b98a8/","explorer":"https://www.oklink.com/x-layer-testnet/address/0xa1314645cd6c07e651359aba540e2600090b98a8","group":"core"},{"key":"1952:KerbQuote","chainId":1952,"contract":"KerbQuote","address":"0xfd688bc3a93d04976bfced0b2ea7f90c11561c05","block":"41707307","deployedAt":"2026-09-23T12:22:23.811Z","verification":"Sourcify exact match","verificationUrl":"https://repo.sourcify.dev/contracts/full_match/1952/0xfd688bc3a93d04976bfced0b2ea7f90c11561c05/","explorer":"https://www.oklink.com/x-layer-testnet/address/0xfd688bc3a93d04976bfced0b2ea7f90c11561c05","group":"consumers"},{"key":"1952:KerbMarkFeedFactory","chainId":1952,"contract":"KerbMarkFeedFactory","address":"0xc363050c142ff447910cf6f31480605f7dbdbe6b","block":"41707317","deployedAt":"2026-09-23T12:22:34.006Z","verification":"Sourcify exact match","verificationUrl":"https://repo.sourcify.dev/contracts/full_match/1952/0xc363050c142ff447910cf6f31480605f7dbdbe6b/","explorer":"https://www.oklink.com/x-layer-testnet/address/0xc363050c142ff447910cf6f31480605f7dbdbe6b","group":"consumers"},{"key":"1952:KerbMarkFeed:KOx","chainId":1952,"contract":"KerbMarkFeed:KOx","address":"0x117084E34CA8347486e1577B57EeBdC3b58B9FFd","block":"41707326","deployedAt":"2026-09-23T12:22:45.618Z","verification":"Sourcify exact match","verificationUrl":"https://repo.sourcify.dev/contracts/full_match/1952/0x117084E34CA8347486e1577B57EeBdC3b58B9FFd/","explorer":"https://www.oklink.com/x-layer-testnet/address/0x117084E34CA8347486e1577B57EeBdC3b58B9FFd","group":"consumers"},{"key":"1952:KerbMarkFeed:BMNRx","chainId":1952,"contract":"KerbMarkFeed:BMNRx","address":"0xFCb2A5CA90fbcE55dA3D85950313e8628524F47d","block":"41707332","deployedAt":"2026-09-23T12:22:54.674Z","verification":"Sourcify exact match","verificationUrl":"https://repo.sourcify.dev/contracts/full_match/1952/0xFCb2A5CA90fbcE55dA3D85950313e8628524F47d/","explorer":"https://www.oklink.com/x-layer-testnet/address/0xFCb2A5CA90fbcE55dA3D85950313e8628524F47d","group":"consumers"},{"key":"1952:KerbMarkFeed:KUAIx","chainId":1952,"contract":"KerbMarkFeed:KUAIx","address":"0x99000108E5b305a877B1b7AA8999D935dA38D23e","block":"41707340","deployedAt":"2026-09-23T12:23:00.168Z","verification":"Sourcify exact match","verificationUrl":"https://repo.sourcify.dev/contracts/full_match/1952/0x99000108E5b305a877B1b7AA8999D935dA38D23e/","explorer":"https://www.oklink.com/x-layer-testnet/address/0x99000108E5b305a877B1b7AA8999D935dA38D23e","group":"consumers"},{"key":"1952:KerbMarkFeed:COINx","chainId":1952,"contract":"KerbMarkFeed:COINx","address":"0xEF0f32B1E879b904d5Aa9978A47ceA9C212EB713","block":"41707352","deployedAt":"2026-09-23T12:23:15.893Z","verification":"Sourcify exact match","verificationUrl":"https://repo.sourcify.dev/contracts/full_match/1952/0xEF0f32B1E879b904d5Aa9978A47ceA9C212EB713/","explorer":"https://www.oklink.com/x-layer-testnet/address/0xEF0f32B1E879b904d5Aa9978A47ceA9C212EB713","group":"consumers"},{"key":"1952:KerbMarkFeed:BRK.Bx","chainId":1952,"contract":"KerbMarkFeed:BRK.Bx","address":"0xEC1FE5233E5b1Fc110eda15c9559694219a751d8","block":"41707362","deployedAt":"2026-09-23T12:23:26.906Z","verification":"Sourcify exact match","verificationUrl":"https://repo.sourcify.dev/contracts/full_match/1952/0xEC1FE5233E5b1Fc110eda15c9559694219a751d8/","explorer":"https://www.oklink.com/x-layer-testnet/address/0xEC1FE5233E5b1Fc110eda15c9559694219a751d8","group":"consumers"},{"key":"1952:KerbMarkFeed:SHEINx","chainId":1952,"contract":"KerbMarkFeed:SHEINx","address":"0x46b5653715A25e16B57C09216E52a59E9fb6E59f","block":"41707372","deployedAt":"2026-09-23T12:23:34.190Z","verification":"Sourcify exact match","verificationUrl":"https://repo.sourcify.dev/contracts/full_match/1952/0x46b5653715A25e16B57C09216E52a59E9fb6E59f/","explorer":"https://www.oklink.com/x-layer-testnet/address/0x46b5653715A25e16B57C09216E52a59E9fb6E59f","group":"consumers"},{"key":"1952:KerbMarkFeed:HKEXCx","chainId":1952,"contract":"KerbMarkFeed:HKEXCx","address":"0xB3C455aD99586D7B2E4dD9E027fC1b69Fab82F1c","block":"41707379","deployedAt":"2026-09-23T12:23:39.315Z","verification":"Sourcify exact match","verificationUrl":"https://repo.sourcify.dev/contracts/full_match/1952/0xB3C455aD99586D7B2E4dD9E027fC1b69Fab82F1c/","explorer":"https://www.oklink.com/x-layer-testnet/address/0xB3C455aD99586D7B2E4dD9E027fC1b69Fab82F1c","group":"consumers"},{"key":"1952:KerbMarkFeed:ICEx","chainId":1952,"contract":"KerbMarkFeed:ICEx","address":"0xbBb9ecE19B9eddFb1811b989004DAC7df8208438","block":"41707387","deployedAt":"2026-09-23T12:23:49.418Z","verification":"Sourcify exact match","verificationUrl":"https://repo.sourcify.dev/contracts/full_match/1952/0xbBb9ecE19B9eddFb1811b989004DAC7df8208438/","explorer":"https://www.oklink.com/x-layer-testnet/address/0xbBb9ecE19B9eddFb1811b989004DAC7df8208438","group":"consumers"},{"key":"1952:KerbMarkFeed:SLVx","chainId":1952,"contract":"KerbMarkFeed:SLVx","address":"0x85530b630c98db8387928Ab0Ae61b99Df79B3344","block":"41707395","deployedAt":"2026-09-23T12:23:58.701Z","verification":"Sourcify exact match","verificationUrl":"https://repo.sourcify.dev/contracts/full_match/1952/0x85530b630c98db8387928Ab0Ae61b99Df79B3344/","explorer":"https://www.oklink.com/x-layer-testnet/address/0x85530b630c98db8387928Ab0Ae61b99Df79B3344","group":"consumers"},{"key":"1952:KerbMarkFeed:MIXUx","chainId":1952,"contract":"KerbMarkFeed:MIXUx","address":"0x83a9f094345a20d065DE7E108836402795339dd6","block":"41707405","deployedAt":"2026-09-23T12:24:07.995Z","verification":"Sourcify exact match","verificationUrl":"https://repo.sourcify.dev/contracts/full_match/1952/0x83a9f094345a20d065DE7E108836402795339dd6/","explorer":"https://www.oklink.com/x-layer-testnet/address/0x83a9f094345a20d065DE7E108836402795339dd6","group":"consumers"},{"key":"1952:KerbQuote:demo","chainId":1952,"contract":"KerbQuote:demo","address":"0x3caa62ff2f6fea6375fb801992b2c19070586815","block":"0","deployedAt":"2026-09-23T12:26:37.926949Z","verification":"Sourcify exact match","verificationUrl":"https://repo.sourcify.dev/contracts/full_match/1952/0x3caa62ff2f6fea6375fb801992b2c19070586815/","explorer":"https://www.oklink.com/x-layer-testnet/address/0x3caa62ff2f6fea6375fb801992b2c19070586815","group":"consumers"},{"key":"196:KerbQuote","chainId":196,"contract":"KerbQuote","address":"0x223d5e2a97d751403300b55aa92c88a42920e52a","block":"71414400","deployedAt":"2026-09-23T17:10:36.055Z","verification":"Sourcify exact match","verificationUrl":"https://repo.sourcify.dev/contracts/full_match/196/0x223d5e2a97d751403300b55aa92c88a42920e52a/","explorer":"https://www.oklink.com/xlayer/address/0x223d5e2a97d751403300b55aa92c88a42920e52a","group":"consumers"},{"key":"196:KerbMarkFeedFactory","chainId":196,"contract":"KerbMarkFeedFactory","address":"0x6aababf6d83fcfb81459f8ffee3f6dd9b83d7f6f","block":"71414406","deployedAt":"2026-09-23T17:10:42.458Z","verification":"Sourcify exact match","verificationUrl":"https://repo.sourcify.dev/contracts/full_match/196/0x6aababf6d83fcfb81459f8ffee3f6dd9b83d7f6f/","explorer":"https://www.oklink.com/xlayer/address/0x6aababf6d83fcfb81459f8ffee3f6dd9b83d7f6f","group":"consumers"},{"key":"196:KerbMarkFeed:KOx","chainId":196,"contract":"KerbMarkFeed:KOx","address":"0x5D6014c52648Ef770e083f91Ad5E9aA73f9c2f85","block":"71414413","deployedAt":"2026-09-23T17:10:52.325Z","verification":"Sourcify exact match","verificationUrl":"https://repo.sourcify.dev/contracts/full_match/196/0x5D6014c52648Ef770e083f91Ad5E9aA73f9c2f85/","explorer":"https://www.oklink.com/xlayer/address/0x5D6014c52648Ef770e083f91Ad5E9aA73f9c2f85","group":"consumers"},{"key":"196:KerbMarkFeed:BMNRx","chainId":196,"contract":"KerbMarkFeed:BMNRx","address":"0x7D64D53DB153658bc4C72A6A0078a4962B41239E","block":"71414421","deployedAt":"2026-09-23T17:11:01.124Z","verification":"Sourcify exact match","verificationUrl":"https://repo.sourcify.dev/contracts/full_match/196/0x7D64D53DB153658bc4C72A6A0078a4962B41239E/","explorer":"https://www.oklink.com/xlayer/address/0x7D64D53DB153658bc4C72A6A0078a4962B41239E","group":"consumers"},{"key":"196:KerbMarkFeed:KUAIx","chainId":196,"contract":"KerbMarkFeed:KUAIx","address":"0xd179a35Ef17D822671b6d9647E026E1A4dC51921","block":"71414427","deployedAt":"2026-09-23T17:11:06.019Z","verification":"Sourcify exact match","verificationUrl":"https://repo.sourcify.dev/contracts/full_match/196/0xd179a35Ef17D822671b6d9647E026E1A4dC51921/","explorer":"https://www.oklink.com/xlayer/address/0xd179a35Ef17D822671b6d9647E026E1A4dC51921","group":"consumers"},{"key":"196:KerbMarkFeed:COINx","chainId":196,"contract":"KerbMarkFeed:COINx","address":"0xe526C8B225224C7fd27aF350A8C4bA62604e45dd","block":"71414432","deployedAt":"2026-09-23T17:11:13.488Z","verification":"Sourcify exact match","verificationUrl":"https://repo.sourcify.dev/contracts/full_match/196/0xe526C8B225224C7fd27aF350A8C4bA62604e45dd/","explorer":"https://www.oklink.com/xlayer/address/0xe526C8B225224C7fd27aF350A8C4bA62604e45dd","group":"consumers"},{"key":"196:KerbMarkFeed:BRK.Bx","chainId":196,"contract":"KerbMarkFeed:BRK.Bx","address":"0x215672f699A3EF1d2E72A0067Defbc1047e25714","block":"71414441","deployedAt":"2026-09-23T17:11:17.680Z","verification":"Sourcify exact match","verificationUrl":"https://repo.sourcify.dev/contracts/full_match/196/0x215672f699A3EF1d2E72A0067Defbc1047e25714/","explorer":"https://www.oklink.com/xlayer/address/0x215672f699A3EF1d2E72A0067Defbc1047e25714","group":"consumers"},{"key":"196:KerbMarkFeed:SHEINx","chainId":196,"contract":"KerbMarkFeed:SHEINx","address":"0x463D6833f2a02F06Da0A5D8B573907E32b933B75","block":"71414444","deployedAt":"2026-09-23T17:11:24.271Z","verification":"Sourcify exact match","verificationUrl":"https://repo.sourcify.dev/contracts/full_match/196/0x463D6833f2a02F06Da0A5D8B573907E32b933B75/","explorer":"https://www.oklink.com/xlayer/address/0x463D6833f2a02F06Da0A5D8B573907E32b933B75","group":"consumers"},{"key":"196:KerbMarkFeed:HKEXCx","chainId":196,"contract":"KerbMarkFeed:HKEXCx","address":"0x85251CEf6a42402acB41D5014c734D35aE374728","block":"71414450","deployedAt":"2026-09-23T17:11:30.138Z","verification":"Sourcify exact match","verificationUrl":"https://repo.sourcify.dev/contracts/full_match/196/0x85251CEf6a42402acB41D5014c734D35aE374728/","explorer":"https://www.oklink.com/xlayer/address/0x85251CEf6a42402acB41D5014c734D35aE374728","group":"consumers"},{"key":"196:KerbMarkFeed:ICEx","chainId":196,"contract":"KerbMarkFeed:ICEx","address":"0x5771a717Ff3ECe8060fa54bb9E2E12C7BD5b8A4d","block":"71414457","deployedAt":"2026-09-23T17:11:37.700Z","verification":"Sourcify exact match","verificationUrl":"https://repo.sourcify.dev/contracts/full_match/196/0x5771a717Ff3ECe8060fa54bb9E2E12C7BD5b8A4d/","explorer":"https://www.oklink.com/xlayer/address/0x5771a717Ff3ECe8060fa54bb9E2E12C7BD5b8A4d","group":"consumers"},{"key":"196:KerbMarkFeed:SLVx","chainId":196,"contract":"KerbMarkFeed:SLVx","address":"0xeA0ddc1e4a3Dd49231a3666bB0e945E4a9112Abe","block":"71414464","deployedAt":"2026-09-23T17:11:41.984Z","verification":"Sourcify exact match","verificationUrl":"https://repo.sourcify.dev/contracts/full_match/196/0xeA0ddc1e4a3Dd49231a3666bB0e945E4a9112Abe/","explorer":"https://www.oklink.com/xlayer/address/0xeA0ddc1e4a3Dd49231a3666bB0e945E4a9112Abe","group":"consumers"},{"key":"196:KerbMarkFeed:MIXUx","chainId":196,"contract":"KerbMarkFeed:MIXUx","address":"0x9001d0e6eb5a5Bfbf740807E1E7D7B8D20244be6","block":"71414469","deployedAt":"2026-09-23T17:11:46.982Z","verification":"Sourcify exact match","verificationUrl":"https://repo.sourcify.dev/contracts/full_match/196/0x9001d0e6eb5a5Bfbf740807E1E7D7B8D20244be6/","explorer":"https://www.oklink.com/xlayer/address/0x9001d0e6eb5a5Bfbf740807E1E7D7B8D20244be6","group":"consumers"}],"latestPosts":[{"chainId":1952,"symbol":"SLVx","observedAt":"2026-10-02T04:01:47.000Z","tx":"0xcbcc3490725d21fea5917a453034fb0a94deb6f387bbcbd5e2db5192920e2273","explorer":"https://www.oklink.com/x-layer-testnet/tx/0xcbcc3490725d21fea5917a453034fb0a94deb6f387bbcbd5e2db5192920e2273","gasUsed":"77997","builderCode":["kt0hl6xyhlx8xmt"]},{"chainId":1952,"symbol":"BMNRx","observedAt":"2026-10-02T04:01:47.000Z","tx":"0x837f863489a2cc148c79f3af2ab90ddd7d3fd4dd775f3567671a355ee0fb0c1b","explorer":"https://www.oklink.com/x-layer-testnet/tx/0x837f863489a2cc148c79f3af2ab90ddd7d3fd4dd775f3567671a355ee0fb0c1b","gasUsed":"78009","builderCode":["kt0hl6xyhlx8xmt"]},{"chainId":1952,"symbol":"KOx","observedAt":"2026-10-02T04:01:47.000Z","tx":"0x690353cc95b4b3d7db0c489e793489b7d6f4994f50b9fa8f2c7f53122ec54748","explorer":"https://www.oklink.com/x-layer-testnet/tx/0x690353cc95b4b3d7db0c489e793489b7d6f4994f50b9fa8f2c7f53122ec54748","gasUsed":"66829","builderCode":["kt0hl6xyhlx8xmt"]},{"chainId":1952,"symbol":"MIXUx","observedAt":"2026-10-02T04:01:47.000Z","tx":"0xa015b768b58a549814bc1924228c335b6837e79034ed75aacefc8cb5f2319f2c","explorer":"https://www.oklink.com/x-layer-testnet/tx/0xa015b768b58a549814bc1924228c335b6837e79034ed75aacefc8cb5f2319f2c","gasUsed":"72297","builderCode":["kt0hl6xyhlx8xmt"]},{"chainId":1952,"symbol":"ICEx","observedAt":"2026-10-02T04:01:47.000Z","tx":"0x853e7bc898c10156f0024d4f3ccea6c0b697de3a2e68b0c2498452250fa7dfa8","explorer":"https://www.oklink.com/x-layer-testnet/tx/0x853e7bc898c10156f0024d4f3ccea6c0b697de3a2e68b0c2498452250fa7dfa8","gasUsed":"69605","builderCode":["kt0hl6xyhlx8xmt"]},{"chainId":1952,"symbol":"KUAIx","observedAt":"2026-10-02T04:00:47.000Z","tx":"0x36a1495c27583da764f301a71fa9154f3a69d63752f7328e828c07538e04c23d","explorer":"https://www.oklink.com/x-layer-testnet/tx/0x36a1495c27583da764f301a71fa9154f3a69d63752f7328e828c07538e04c23d","gasUsed":"66721","builderCode":["kt0hl6xyhlx8xmt"]},{"chainId":1952,"symbol":"COINx","observedAt":"2026-10-02T04:00:47.000Z","tx":"0x46eb172294a47e494a2011c0f33170a657c3238989b3c7dd1f412409ce8f82a7","explorer":"https://www.oklink.com/x-layer-testnet/tx/0x46eb172294a47e494a2011c0f33170a657c3238989b3c7dd1f412409ce8f82a7","gasUsed":"77997","builderCode":["kt0hl6xyhlx8xmt"]},{"chainId":1952,"symbol":"BRK.Bx","observedAt":"2026-10-02T04:00:47.000Z","tx":"0x925c075310d53bdcbee9c8fb22d6bbd0fe0e4408f6b8b505067daad4a9914695","explorer":"https://www.oklink.com/x-layer-testnet/tx/0x925c075310d53bdcbee9c8fb22d6bbd0fe0e4408f6b8b505067daad4a9914695","gasUsed":"66841","builderCode":["kt0hl6xyhlx8xmt"]},{"chainId":1952,"symbol":"SLVx","observedAt":"2026-10-02T03:56:46.000Z","tx":"0x68ab962aef17d6818a1bc3ed30004d0176b73008242f4ff677ae2b65a5eab2fd","explorer":"https://www.oklink.com/x-layer-testnet/tx/0x68ab962aef17d6818a1bc3ed30004d0176b73008242f4ff677ae2b65a5eab2fd","gasUsed":"69533","builderCode":["kt0hl6xyhlx8xmt"]},{"chainId":1952,"symbol":"BMNRx","observedAt":"2026-10-02T03:56:46.000Z","tx":"0x1a39065262d2afbe912e8642babe13f14d68d1681c0231b2966ef753c78e24d0","explorer":"https://www.oklink.com/x-layer-testnet/tx/0x1a39065262d2afbe912e8642babe13f14d68d1681c0231b2966ef753c78e24d0","gasUsed":"69545","builderCode":["kt0hl6xyhlx8xmt"]}],"postCounts":[{"chainId":196,"count":15967},{"chainId":1952,"count":17957}]},"data":{"sources":[{"source":"xlayer:uniswap-v3","lastObservedAt":"2026-10-03T23:33:18.335Z","ageSec":3,"rows":314670},{"source":"xstocks:price-data","lastObservedAt":"2026-10-03T07:59:30.900Z","ageSec":56030,"rows":218333},{"source":"yahoo:chart:0388.HK","lastObservedAt":"2026-10-03T23:33:10.858Z","ageSec":10,"rows":41919},{"source":"yahoo:chart:0625.HK","lastObservedAt":"2026-10-03T23:33:10.864Z","ageSec":10,"rows":41920},{"source":"yahoo:chart:1024.HK","lastObservedAt":"2026-10-03T23:33:10.860Z","ageSec":10,"rows":41920},{"source":"yahoo:chart:2097.HK","lastObservedAt":"2026-10-03T23:33:10.862Z","ageSec":10,"rows":41918},{"source":"yahoo:chart:BMNR","lastObservedAt":"2026-10-03T23:33:10.865Z","ageSec":10,"rows":41918},{"source":"yahoo:chart:BRK-B","lastObservedAt":"2026-10-03T23:33:10.856Z","ageSec":10,"rows":41918},{"source":"yahoo:chart:COIN","lastObservedAt":"2026-10-03T23:33:10.859Z","ageSec":10,"rows":41918},{"source":"yahoo:chart:HKD=X","lastObservedAt":"2026-10-03T23:33:10.866Z","ageSec":10,"rows":41916},{"source":"yahoo:chart:ICE","lastObservedAt":"2026-10-03T23:33:10.861Z","ageSec":10,"rows":41919},{"source":"yahoo:chart:KO","lastObservedAt":"2026-10-03T23:33:10.862Z","ageSec":10,"rows":41920},{"source":"yahoo:chart:SLV","lastObservedAt":"2026-10-03T23:33:10.866Z","ageSec":10,"rows":41920},{"source":"okx-dex:v6-quote","lastObservedAt":"2026-10-03T23:31:42.406Z","ageSec":98,"rows":132184},{"source":"xlayer:token-multiplier","lastObservedAt":"2026-10-03T23:30:27.115Z","ageSec":174,"rows":21020},{"source":"xstocks:multiplier","lastObservedAt":"2026-10-03T23:30:25.407Z","ageSec":175,"rows":20959}],"totals":[{"table":"ref_daily_bars","rows":15985},{"table":"terms_posts","rows":33924},{"table":"obs_multiplier","rows":41979},{"table":"obs_quote","rows":132184},{"table":"obs_pool_state","rows":314670},{"table":"obs_price","rows":679439}],"latestBundle":{"symbol":"SLVx","inputsHash":"0x7681149dbb5ac03556256812027187ec2aa91e136786a2e43be82bfdf763bc37","cid":"bafkreid3ov45vv2w6pt4knlpgf2cgzlpcqbghncvoh7vqptnwgk7l34frq","pinStatus":"unpinned","gateway":null,"apiUrl":"/v1/bundle/0x7681149dbb5ac03556256812027187ec2aa91e136786a2e43be82bfdf763bc37"},"pinning":{"recentPosts":0,"pinned":0,"unpinned":0,"storedByApi":0,"retrievable":0,"note":"No terms have been posted in the last 24 hours. Every bundle posted after K-43 resolves from its inputsHash through the Kerb API. Earlier posts have a documented IPFS gap caused by the pinning quota."}},"risk":{"report":{"symbol":"SLVx","observedAt":"2026-10-02T04:01:47.000Z","inputsHash":"0x7681149dbb5ac03556256812027187ec2aa91e136786a2e43be82bfdf763bc37","cid":"bafkreid3ov45vv2w6pt4knlpgf2cgzlpcqbghncvoh7vqptnwgk7l34frq","recomputeCommand":"pnpm --filter @kerb/engine kerb verify 0x7681149dbb5ac03556256812027187ec2aa91e136786a2e43be82bfdf763bc37"}},"limitations":[{"subsystem":"Reference price","rung":"2 + independent check","note":"xStocks issuer price data, plus Yahoo as an independent Observed reference. Chainlink Data Streams (rung 1) needs credentials Kerb does not have."},{"subsystem":"Executable depth","rung":"1","note":"Exact Uniswap V3 tick-walk on the real X Layer pools, cross-checked against OKX DEX v6 aggregator quotes at the same notionals. The conservative value is taken whenever they diverge."},{"subsystem":"Corporate action data","rung":"1 partial + 2","note":"The issuer multiplier endpoint gives current and next values; the full corporate action schedule needs an API key. Kerb also polls multiplier() and convertToAssets() on chain every ten minutes."},{"subsystem":"Credit market deployment","rung":"2","note":"Credit runs on X Layer testnet with mirror collateral. The risk plane is live on mainnet."},{"subsystem":"Jurisdiction","rung":"n/a","note":"The operator does not acquire, hold, or route around restrictions on the production tokenized assets. The credit demonstration uses clearly labelled mirror collateral on testnet."},{"subsystem":"Audit","rung":"n/a","note":"These contracts are unaudited. They hold no user funds on mainnet: the mainnet deployment is the risk plane only."}],"creditFlow":{"file":"data/credit-flow-2026-09-23.json","what":"Credit lifecycle on X Layer testnet","borrower":"0x98383F20F778Cf76A28265cc7AA6e8aA67F65246","curer":"0x96a4dCAeB471EEc7dA5Cf4E9e2AdA82b81D5A33e","steps":[{"at":"2026-09-23T17:49:35.639Z","note":"borrower 0x98383F20F778Cf76A28265cc7AA6e8aA67F65246 funded with 0.004 test OKB","tx":"0x97cdbb2f46817f65d938c1c3ab7efb509db9fef47843ff24cdeabe3e91cdeaac","explorer":"https://www.oklink.com/x-layer-testnet/tx/0x97cdbb2f46817f65d938c1c3ab7efb509db9fef47843ff24cdeabe3e91cdeaac"},{"at":"2026-09-23T17:49:38.793Z","note":"curer 0x96a4dCAeB471EEc7dA5Cf4E9e2AdA82b81D5A33e funded with 0.004 test OKB","tx":"0x970cd4bb584c75f18b2cb2b4cc7fc9a23b169fbecbd781edfc9bf139d282fac6","explorer":"https://www.oklink.com/x-layer-testnet/tx/0x970cd4bb584c75f18b2cb2b4cc7fc9a23b169fbecbd781edfc9bf139d282fac6"},{"at":"2026-09-23T17:49:44.875Z","note":"borrower signed","tx":"0xb81ef71f462561a62c8cb35a890d7560cce4ead71ce5427a55e5cacc7aee4784","explorer":"https://www.oklink.com/x-layer-testnet/tx/0xb81ef71f462561a62c8cb35a890d7560cce4ead71ce5427a55e5cacc7aee4784"},{"at":"2026-09-23T17:49:47.649Z","note":"borrower signed","tx":"0x8b4cd7d6b6845b0262570cdc21bb9b8094a503f1df1a4f31bdb4041163be1fda","explorer":"https://www.oklink.com/x-layer-testnet/tx/0x8b4cd7d6b6845b0262570cdc21bb9b8094a503f1df1a4f31bdb4041163be1fda"},{"at":"2026-09-23T17:49:57.662Z","note":"sizing: carry 54.45%, Session Max 61.08%, cap 1510.45, mark 87.49 -> deposit 26.15 kKOx, borrow 1359.4 mUSDG (LTV 59.42%)"},{"at":"2026-09-23T17:49:59.250Z","note":"borrower signed","tx":"0x31cbea092f3cb0a6f0ba295586f4bb7ab3a63ebfd6b22d5507c2907f2b94e777","explorer":"https://www.oklink.com/x-layer-testnet/tx/0x31cbea092f3cb0a6f0ba295586f4bb7ab3a63ebfd6b22d5507c2907f2b94e777"},{"at":"2026-09-23T17:50:01.773Z","note":"borrower signed","tx":"0x0c67353b749ffd9b31552d379defa19495f47106681605981b6b32bf48612d32","explorer":"https://www.oklink.com/x-layer-testnet/tx/0x0c67353b749ffd9b31552d379defa19495f47106681605981b6b32bf48612d32"},{"at":"2026-09-23T17:50:03.612Z","note":"borrower signed","tx":"0xc1260eabd0c7e832162cf224957b19facd8449f6a3b2fcde305089532245a112","explorer":"https://www.oklink.com/x-layer-testnet/tx/0xc1260eabd0c7e832162cf224957b19facd8449f6a3b2fcde305089532245a112"},{"at":"2026-09-23T17:50:13.256Z","note":"waiting for the demo Last Call"},{"at":"2026-09-23T17:54:07.744Z","note":"Last Call on the borrower's panel: 254.07 mUSDG cure required by 18:03 UTC, in 9m 50s"},{"at":"2026-09-23T17:54:14.576Z","note":"curer signed","tx":"0x36aeeec24f1f4b57590ef5c6f5f0f47af5f43162cbec225a34265e0d780e10b9","explorer":"https://www.oklink.com/x-layer-testnet/tx/0x36aeeec24f1f4b57590ef5c6f5f0f47af5f43162cbec225a34265e0d780e10b9"},{"at":"2026-09-23T17:54:19.421Z","note":"curer signed","tx":"0x95ce870fac4bbe2b610599b53ffe5b27ecb8c7a384bd1a51193bc7b1ae85839f","explorer":"https://www.oklink.com/x-layer-testnet/tx/0x95ce870fac4bbe2b610599b53ffe5b27ecb8c7a384bd1a51193bc7b1ae85839f"},{"at":"2026-09-23T17:54:20.965Z","note":"curer signed","tx":"0xa6fbe70a0567a99d9a566eed3433a1bd1210a896ae726b7ea279312cc97cecbb","explorer":"https://www.oklink.com/x-layer-testnet/tx/0xa6fbe70a0567a99d9a566eed3433a1bd1210a896ae726b7ea279312cc97cecbb"},{"at":"2026-09-23T17:54:21.653Z","note":"curer cured the position from the public table"},{"at":"2026-09-23T17:54:34.773Z","note":"borrower signed","tx":"0x378c912b6d8e06c313c70203cbcf358cd5c6fc4f55009c44e655ad277adba5e4","explorer":"https://www.oklink.com/x-layer-testnet/tx/0x378c912b6d8e06c313c70203cbcf358cd5c6fc4f55009c44e655ad277adba5e4"},{"at":"2026-09-23T17:54:37.527Z","note":"borrower signed","tx":"0xd3de214dcc921a6e48d7b7f8ae92e69d27abc83f57143961a34afcfb9def3532","explorer":"https://www.oklink.com/x-layer-testnet/tx/0xd3de214dcc921a6e48d7b7f8ae92e69d27abc83f57143961a34afcfb9def3532"},{"at":"2026-09-23T17:54:43.292Z","note":"borrower signed","tx":"0x1384043d4b18a3a0e6670639165a4fc00e4503e7aaa5a7714f289866f11733ad","explorer":"https://www.oklink.com/x-layer-testnet/tx/0x1384043d4b18a3a0e6670639165a4fc00e4503e7aaa5a7714f289866f11733ad"}]},"verify":{"inputsHash":"0x7681149dbb5ac03556256812027187ec2aa91e136786a2e43be82bfdf763bc37","chainId":1952,"symbol":"SLVx","tx":"0xcbcc3490725d21fea5917a453034fb0a94deb6f387bbcbd5e2db5192920e2273","kts":"0.2","checkedAt":"2026-10-02T04:02:52.056Z","fields":[{"field":"creditMark","verdict":"matches"},{"field":"carryLTV","verdict":"matches"},{"field":"sessionMaxLTV","verdict":"matches"},{"field":"debtCeiling","verdict":"clamped tighter onchain"},{"field":"executableDepth1","verdict":"matches"}],"ok":true}}