{"service_status":{"live_data":"offline","since":"2026-10-28","snapshot_date":"2026-11-12","note":"Static snapshot. Kerne live data services (APIs, signed reserve statements) are offline; the contracts on Base are unaffected. Values in this file may be out of date. Direct redemption: https://kerne.fi/offline"},"kind":"kerne.facts.v1","generated_at":"2026-11-12T19:42:37.239Z","protocol":{"name":"Kerne Protocol","token":"kUSD","staked_token":"skUSD","summary":"A self-custody synthetic dollar on Base. kUSD is minted 1:1 from USDC through an on-chain Peg Stability Module; staking it into skUSD (ERC-4626) is designed to earn a delta-neutral yield (liquid-staked ETH rewards plus Hyperliquid perpetual funding, designed for net-zero directional exposure at scale). The hedge engine shorts only against ETH-exposed collateral that backs kUSD, and none does today, so no short is open; every reserve is verifiable on chain. Kerne also SELLS the reserve-verification work it built to check kUSD, as fixed-price commissioned services priced in public at https://kerne.fi/pricing: a free public grader for any token, signed on-chain reads, commissioned reserve teardowns, point-in-time signed Proof of Reserves statements, peg and reserve monitoring, an adversarial pre-audit sweep, a fixed-scope treasury read, and the synthetic-dollar stack deployed on another chain. Attestation and objective-data tooling, not audits and not solvency opinions. Kerne is also an onchain risk curator: Kerne Curation runs the Kerne USDC vault on Morpho (Base) under a published policy at https://kerne.fi/curation, lending USDC only against blue-chip collateral and never against its own assets.","curation_url":"https://kerne.fi/curation","curation_api":"https://kerne.fi/api/curation","identity_url":"https://kerne.fi/what-is-kerne","services_url":"https://kerne.fi/pricing","curation":"Kerne Curation is the onchain risk curation line. Its vault is Kerne USDC, a Morpho Vault V2 on Base at 0xc19e2F45Df9de7700d2F1e9CB57a86776e72B50c, created by the official Morpho VaultV2Factory and built to the Morpho app listing checks: one Morpho-approved market adapter (0xa4F45D25B63d122233E9aeE5247F0BFD086c0e54), the Morpho adapter registry and the share gates abdicated, 3-day timelocks on new adapters, cap increases and fees, 7-day timelocks on structural changes. Owner and curator are the Kerne governance multisig; a hardware-secured allocator key moves funds only between capped markets. Non-custodial for depositors. It lends USDC against WETH and cbBTC at 86% LLTV with opening caps of 50,000 USDC each. The first vault, MetaMorpho V1.1 0x62A3380CD1Fbe5f6E313f99Cfdf0a8f449B7Fa99, is retired. Policy: https://kerne.fi/curation and https://kerne.fi/curation/policy-v2.md. Whether it is deployed, what it holds and how much is third-party capital are live reads at https://kerne.fi/api/curation; Kerne capital is never counted as demand. The policy excludes kUSD, skUSD and KERNE as collateral. Separately, on 2026-08-09 Kerne deployed an isolated kUSD/USDC lending market on Euler; it is ungoverned from the transaction that created it, so no supply cap, borrow cap or parameter can ever be set on it by anyone, including Kerne. A deployed market is not a curated one. Structural detail is under isolated_lending_market in this document and live state is at https://kerne.fi/api/euler. Enforcement work (liquidation and pre-liquidation) is in build and is not sold. What Kerne measured and then declined is at https://kerne.fi/refused.","chain":"Base","chain_id":8453,"site":"https://kerne.fi","app":"https://app.kerne.fi","github":"https://github.com/kerne-protocol/contracts-public","github_org":"https://github.com/kerne-protocol","contact":"liam@kerne.fi"},"disambiguation":{"note":"Kerne is spelled K-E-R-N-E. Kerne kUSD on Base is a distinct project. It is NOT K Dollar, a separate token that also reports the kUSD symbol ON BASE ITSELF, issued by Bankcoin Capital as part of its kStable family; NOT Kernel Protocol kUSD on Ethereum; NOT KernelDAO (formerly Kelp DAO) which issues its own KUSD on BNB Chain; and NOT Kolibri USD (KUSD) on Tezos, which is an older and larger token by ticker and is what most KUSD searches return first.","kerne_kusd_base":"0x5C2EfdF0D8D286959b42308966bc2B97f5680AA3","not_kdollar_kusd_base":"0x6FB09847417e33A1CE75d3B324015D4C0AeF4D61","kerne_kusd_decimals":18,"not_kdollar_kusd_decimals":6,"not_kernel_kusd_ethereum":"0x0bB9aB78aAF7179b7515e6753d89822b91e670C4","not_kolibri_kusd_tezos":"KT1K9gCRgaLRFKTErYt1wVxA3Frb9FjasjTV","defillama_stablecoin_id":"402","not_kolibri_defillama_stablecoin_id":"72","pages":["https://kerne.fi/which-kusd-on-base","https://kerne.fi/kernel-vs-kerne","https://kerne.fi/not-kerneldao"]},"contracts":{"chain":"Base","chain_id":8453,"source_of_truth":"https://kerne.fi/api/por and deployments/8453.json","items":[{"name":"kUSD","role":"synthetic dollar","address":"0x5C2EfdF0D8D286959b42308966bc2B97f5680AA3"},{"name":"skUSD","role":"yield-bearing ERC-4626 wrapper of kUSD","address":"0x96F5102C15b839757f811A98CEc3725Ac21DfA14"},{"name":"KUSDPSM (live mint)","role":"USDC to kUSD mint module, holds kUSD MINTER_ROLE, redeployed 2026-07-10","address":"0xaBDE1138aa1Ce88d1dF06422C0c3b05D70569803"},{"name":"KUSDPSM (retired mint)","role":"retired 2026-07-10, MINTER revoked, redeem-only reserve until migration","address":"0x07eBb486e11BD217e6085eb5ab663e4517595993"},{"name":"KUSDPSM (redeem reserve)","role":"kUSD to USDC redeem reserve, MINTER revoked","address":"0xFf3025ec18e301855aB0f36Ec6ECa115a29A5Fbc"},{"name":"KerneVault v2","role":"ERC-4626 collateral vault. The live Safe-governed deposit vault, and the vault the hourly signed statement at /api/por/signed attests. It does NOT hold kUSD MINTER_ROLE: it held the role from the 2026-06-16 ceremony until 2026-08-03, when the Safe revoked it (nonce 19), and it never minted with it. The live mint PSM 0xaBDE1138aa1Ce88d1dF06422C0c3b05D70569803 is the sole minter as of 2026-08-08. Do not take that from this string: it is read live from kUSD AccessControl on every request at /api/por -> reserves.vaultV2.minterRole.holdsRole, with the cast command that reproduces it. Holds no user deposits (zero share supply), so it is NOT the vault reported under reserves (see reserves.vault_address); any totalAssets it reports is the strategist-written l1Assets hedge-margin mirror, labeled at /api/por -> reserves.vaultV2.","address":"0x8ccc56B5624e2FDB592F6609d81F4c3798e3292B"},{"name":"KerneVault v1 (retired)","role":"superseded by v2 in the 2026-06-16 ceremony, MINTER revoked. Retained because the residual WETH and the on-chain mirror of the Hyperliquid hedge equity sit here, which is why /api/por reports it under reserves.vault and why reserves.vault_tvl_usd below refers to this contract. Counted only in aggregate_collateral_ratio, never in the 1:1 mint backing.","address":"0x8005bc7A86AD904C20fd62788ABED7546c1cF2AC"},{"name":"Governance Safe","role":"Gnosis Safe multisig with hardware-wallet signers. Proposer, executor and canceller on the governance timelock below, so it can still propose any change but cannot land one in under 48 hours. It holds DEFAULT_ADMIN_ROLE with no delay on skUSD and on both KerneVault contracts, and skUSD holds most of the kUSD in existence, so it is false to say custody is timelocked. It no longer holds admin or manager rights over kUSD or any of the three PSM modules: Safe nonce 26 executed 2026-08-06T17:00:07Z in transaction 0xed24d495789540dae543793a5d8c9d884d8abfc386c0e726084da9183933d9b8 at block 49623130 and revoked its own copy of both roles on all four contracts atomically. It can still halt any PSM module instantly through the PauseGuardian below.","address":"0x52d3E450bA6c299B1B07298F1E87DD74732D4877"},{"name":"Governance TimelockController","role":"OpenZeppelin TimelockController, 48 hour minimum delay, self-administered. Its own DEFAULT_ADMIN_ROLE is held by the contract itself and not by the Safe, so the delay cannot be shortened by two signatures and a canceller seat cannot be stripped in one transaction. Since 2026-08-06T17:00:07Z it is the SOLE holder of DEFAULT_ADMIN_ROLE on kUSD and of DEFAULT_ADMIN_ROLE plus MANAGER_ROLE on all three PSM modules, so every change to the mint and redeem path is scheduled in public and sits visible for 48 hours before it can land. Scope is kUSD and the three PSM modules only: it does NOT cover skUSD or either KerneVault. The delay bounds the drain rather than eliminating it. Check hasRole(bytes32,address) against this address rather than taking this field on trust; DEFAULT_ADMIN_ROLE is bytes32(0), not a keccak hash of the name. The live queue is at https://kerne.fi/timelock and https://kerne.fi/api/timelock, recomputed from chain on request; since 2026-08-09 a daemon also polls this contract every 60 seconds and pages the Kerne operator channel on any CallScheduled, CallExecuted, Cancelled, MinDelayChange or role change, and the heartbeat of that daemon is published under watcher on the same endpoint so the monitoring claim is checkable rather than asserted. It pages Kerne and not the reader, and it does not create a canceller: CANCELLER_ROLE is the operator Safe and nobody else.","address":"0x36A14976980B7Dd33136f6613545EB0A2C0a0D72"},{"name":"PauseGuardian","role":"Single-purpose emergency stop, live since 2026-08-06. Forwards exactly one selector, pause(address), to three constructor-fixed PSM modules, and only the governance Safe can call it. It cannot unpause, move funds, change parameters or widen its own target set, and its runtime contains no delegatecall. It received MANAGER_ROLE on the three PSMs in the same atomic batch in which the Safe lost it, so there was no block in which nobody could halt the mint path. Pause is therefore instant while unpause takes the full 48 hour delay: fast to stop, slow to restart, deliberately.","address":"0xC47adaf51907bB1871D07E18eA21dc75Ae93Cc8E"},{"name":"KERNE","role":"governance token, fixed 1,000,000,000 supply","address":"0x230f3a63E8413D42bEe9103b98a204030206186c"},{"name":"USDC","role":"mint collateral (Base)","address":"0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"},{"name":"WETH","role":"vault collateral (Base)","address":"0x4200000000000000000000000000000000000006"}]},"isolated_lending_market":{"venue":"Euler v2 (Edge)","chain":"Base","chain_id":8453,"summary":"An isolated, permissionless kUSD/USDC lending market on Euler v2 (Edge) on Base, deployed by Kerne on 2026-08-09 and ungoverned from the same transaction that created it. USDC is supplied and borrowed; kUSD is escrow collateral only and cannot be borrowed. It required no approval from Euler or from any DAO.","deployed_at":"2026-08-09","permissionless":true,"approval_required":false,"endorsed_by_euler":false,"endorsement_note":"EdgeFactory is permissionless, so no Euler DAO vote and no listing decision was involved. Deploying a market is not an endorsement by Euler, and any claim that Euler reviewed, approved or listed Kerne is false.","borrow_vault":"0xe87c294E1139C31770727193e3Be0ccEd73d6AA3","borrow_vault_symbol":"eUSDC-116","collateral_vault":"0xD3800ceb6bBeB90101ed5d5A46017fE846c9509e","collateral_vault_symbol":"ekUSD-1","router":"0xB95407727d33fB2E444966fd0B7D0E7767Ce019E","oracle":"0x8f27228f02E798c17B7d6b270F32F8EC6afDD2D3","interest_rate_model":"0xC6dCfFE18cd9f532628aF15da2541c01499E3bcE","collateral_asset":"kUSD","borrowable_asset":"USDC","ltv_borrow_bps":6000,"ltv_liquidation_bps":6500,"max_liquidation_discount_bps":1500,"oracle_rate_kusd_to_usdc":1000000,"oracle_updatable":false,"governor":"0x0000000000000000000000000000000000000000","governance_renounced":true,"supply_cap":null,"borrow_cap":null,"caps_possible":false,"caps_note":"An Edge market renounces governance inside its deploy transaction, so no cap can ever be set on it. Caps in this category live at the curator vault layer, as on Morpho Blue. Kerne does not run such a vault and does not curate this market; any allocation ceiling is the curator's to set. Do not publish a number as this market's cap.","kerne_curates_it":false,"deployment_txs":["0xbacaf5445effce5d32b57ee512ab54123306e24de437ab93dac36e3ca024c9ad","0xcda40c26a970869efef971912a39b2ac7acae68b647ed2d54d72453f6380bef7"],"disclosures":["Kerne deployed this market and controls nothing in it. Governance on both vaults and on the router is the zero address, set inside the deploy transaction itself, so the oracle, the LTVs and the interest rate model cannot be changed by anyone including Kerne.","Because governance is renounced, this market CANNOT have a supply cap or a borrow cap. Any cap belongs at a curator vault on top of it. Kerne does not operate such a vault and does not curate this market.","The oracle prices kUSD at exactly 1.000000 USDC and is hard-coded. It is not a market price and it will not depeg on its own. A lender is taking the risk that kUSD is worth a dollar, not relying on a feed to tell them when it is not.","kUSD has almost no secondary liquidity. The Aerodrome pool held about 13 US dollars of total depth when this shipped, so a liquidator cannot sell seized kUSD on a DEX in any meaningful size. The only real exit is redemption through the Kerne PSM, which is a claim on the PSM reserve rather than on a market.","Kerne has not distributed meaningful realized yield. Realized staking yield measured on chain is roughly 0.05 percent of the advertised figure, and Kerne publishes itself as the worst row on its own Honesty Index.","The kUSD book is small and it is almost entirely Kerne's own. External holders are under one percent of supply.","A governance action on kUSD takes 48 hours and is public for all of it, but it could still mint kUSD. Any market that prices kUSD at par is exposed to that, and it is the real constraint on what a sane allocation ceiling looks like.","The live KerneVault does not run the audited commit. The Hexens report is published in full and its vault findings are open on the deployed bytecode."],"underwriting_memo_url":"https://github.com/kerne-protocol/contracts-public/blob/main/underwriting/kusd-underwriting-memo-2026-08-08.md","forum_topic_url":"https://forum.euler.finance/t/1862","public_diligence_thread_url":"https://forum.euler.finance/t/1849","live_source_url":"https://kerne.fi/api/euler","live_note":"How much is supplied, borrowed or collateralised in this market, and whether the parameters above still match the chain, are read live on every request at live_source_url. Nothing about the market's occupancy is asserted in this document."},"genesis_scale_tranche":{"program":"Opal Fragments, Genesis Extended","total_allocation_kerne":50000000,"scale_tranche_kerne":45000000,"community_tranche_kerne":5000000,"position_floor_usd":100000,"scale_tranche_basis":"qualifying dollar-hours","scale_tranche_multipliers_apply":false,"community_tranche_basis":"eligible fragments","community_tranche_minimum":null,"earning_window_start":"2026-07-10T19:59:17.805Z","snapshot_at":"2026-08-19T19:59:17.805Z","successor_window":{"name":"Opal Window 3","earning_window_start":"2026-08-19T19:59:17.805Z","snapshot_at":"2026-09-28T19:59:17.805Z","creates_new_pool":false,"creates_new_allocation":false,"divides_same_tranches":true,"note":"Opal Window 3 opens at the exact instant the Genesis Extended snapshot is taken, so the two windows are contiguous and no accrual hour is unowned. It has its own fresh public cohort ladder and its own dated snapshot. It does NOT create a new pool, a new tranche or any new token commitment: fragments earned in it divide the same 5,000,000 KERNE community tranche by eligible fragments, and qualifying dollar-hours keep accumulating toward the same 45,000,000 KERNE scale tranche, under the rules stated in this object."},"genesis_extended_standings_frozen_note":"The Genesis Extended standing is frozen by the ledger itself at the snapshot instant (opal_window_standings, migration 011), on the first accrual tick after the instant and before the successor window is activated. That figure is permanent. A wallet's DISPLAYED fragment balance is a different thing and keeps moving while a successor window is open, which is why the two are named separately here.","split_adopted":"2026-08-06T00:00:00.000Z","insider_exclusion_adopted":"2026-08-04T00:00:00.000Z","rule":"The fixed 50,000,000 KERNE Genesis allocation is split in two. The 5,000,000 KERNE community tranche is divided pro rata by eligible fragments, with no minimum position and with every multiplier, bonus and quest grant counting. The 45,000,000 KERNE scale tranche is divided pro rata by qualifying dollar-hours: for each hour of the earning window, the part of a wallet's kUSD-equivalent position ABOVE 100,000 USD. No multiplier of any kind applies to the scale tranche, including the anchor floor. Size times time, nothing else.","floor_is_deductible_not_cliff":true,"floor_note":"Only the part of a position above the floor earns scale credit, so nothing jumps at the boundary: a position one dollar over the floor earns one qualifying dollar-hour per hour, not a hundred thousand. Splitting a position across wallets can therefore never manufacture qualifying exposure (one position of 1,000,000 USD earns 900,000 qualifying dollar-hours per hour; two of 500,000 USD earn 800,000; ten of 100,000 USD earn zero). No wallet is excluded from the program by the floor: everyone keeps an unimpaired claim on the community tranche and accrual still has no minimum.","unclaimed_is_redistributed":false,"unclaimed_note":"If no position qualifies at a distribution, the scale tranche is simply not allocated and stays unissued. It does NOT fall back into the community tranche. This is the load-bearing property of the rule and it is stated plainly because the alternative would make the split cosmetic: a tranche that rolls back to everyone is a tranche a reader can discount to zero.","qualifying_positions_today":0,"qualifying_dollar_hours_today":0,"qualifying_total_is_zero_because":"No position has ever cleared the floor, and this is provable from a ceiling rather than from a wallet-by-wallet check: the sum of every kUSD balance in existence is liabilities.kUSD.totalSupply in this same document, read live from chain. While total supply is below the position floor, no arrangement of wallets can produce a qualifying position, because a single wallet holding one hundred percent of supply would still be short of the floor. Verify it in one subtraction against the reserves block above, or against https://kerne.fi/api/por.","consequence_if_a_position_qualifies":"Because the qualifying denominator is currently zero, the first position to clear the floor would take the entire scale tranche pro rata against itself, regardless of how far above the floor it sits. That is arithmetic, not an offer term, and it stops being true the moment a second position qualifies.","independently_verifiable":true,"verifiability_note":"Qualifying dollar-hours are computed from public chain state (kUSD balances derive from Transfer events and vault share prices are public reads), so any holder can reconstruct their own figure and Kerne's. Fragments cannot be reconstructed this way: /terms publishes that fragment balances are maintained off-chain by the protocol and are not independently verifiable on a public blockchain. That asymmetry is why the larger tranche is measured in dollar-hours.","sybil_resistance":false,"disclosure_commitment":"The first time any position clears the floor, Kerne publishes that address and its qualifying dollar-hours on the token disclosure page BEFORE the snapshot it counts toward.","distribution_guaranteed":false,"distribution_note":"A fragment and a qualifying dollar-hour are both points balances, not tokens. No token generation event is scheduled or guaranteed, the allocation is a published policy commitment rather than an escrowed on-chain pool, and no contract exists today that converts either into KERNE. If no distribution ever happens, both convert to nothing. KERNE has no market, no listing and no price, so no value is asserted for any figure in this object.","pages":["https://kerne.fi/opal/scale","https://kerne.fi/opal","https://kerne.fi/security/kerne-token-disclosure#opal-exclusion","https://app.kerne.fi/rewards"],"live_standings_url":"https://app.kerne.fi/api/opal/leaderboard","live_supply_url":"https://kerne.fi/api/por"},"reserves":{"ok":false,"reason":"PoR endpoint returned 503.","source_url":"https://kerne.fi/api/por"},"mint_capacity":{"ok":false,"reason":"Stats endpoint returned 503.","source_url":"https://kerne.fi/api/stats"},"first_money":{"ok":false,"reason":"PoR endpoint returned 503.","page_url":"https://kerne.fi/first-money","source_url":"https://kerne.fi/api/por"},"apy":{"modeled":{"ok":false,"reason":"Live APY computation was unavailable this minute; no modeled figure is asserted.","source_url":"https://kerne.fi/api/apy"},"realized":{"ok":true,"annualized_pct":0,"window_days":30,"clamped":false,"clamped_meaning":"clamped:true means the measurement window was cut short to the life of the vault because the vault is younger than the 30 days every other row on the board uses. It is not a cap on the figure. It cuts in Kerne's favour: annualizing a single small distribution over a short window prints a HIGHER rate than the same distribution spread across a full month would.","source_url":"https://kerne.fi/api/honesty-index","note":"Realized from skUSD ERC-4626 share-price growth on chain, over a window clamped to the life of the vault rather than the board's 30 days, which flatters the annualization. It derives from a single 0.10 kUSD distribution the deployment registry records as a plumbing test, not strategy carry, and decays toward zero absent further distributions. Kerne has not yet paid meaningful realized yield."},"note":"Kerne publishes a modeled APY and, on the Honesty Index, its realized APY read from chain. The two are still apart, and as of 2026-07-24 they are much less far apart than they were: the modeled figure used to multiply the carry by a flat 3.0x, and it now models the deployed book at L/(L+1), which is below one. Most of the old gap was that arithmetic rather than performance. What remains is real, and it is that Kerne has not yet distributed meaningful realized yield. Both figures are shown so the distance is visible. The 3.0x target was withdrawn on 2026-07-28 and is no longer published anywhere: it was reachable only with a levered spot leg Kerne does not operate."},"hedge":{"strategy":"delta-neutral","strategy_basis":"Design intent. This field states what the book is built to do and is NOT a measurement of what it is doing. For the current signed reading, including the cases where it reports the hedge as directional, read hedge.measured below and /api/por/signed directly.","measured":{"ok":false,"reason":"UNVERIFIED: signature recovered to 0xfa066f9701b75a4c134893e6c44d4fe87d2c9453, not the expected signer (0x09a2780ac8Be6D5d2d1F85A8D92b09D40C9CA37e), and no signer binding authorizes it. Treat every field as untrusted.","signature_valid":true,"signer_matches_expected":false,"hash_matches":true,"source_url":"https://kerne.fi/api/por/signed"},"live_position":"none open (no ETH-exposed collateral backs kUSD); unlevered when one is","sizing":"one for one against ETH-exposed collateral that backs kUSD (none today, so no short is open); from 2026-07-21 to 2026-10-05 against a disclosed founder-custodied watch-only float, since retired","leverage_note":"Corrected 2026-07-24. The published modeled APY used to assume the strategy runs at 3x target leverage; it now models the deployed book, multiplying the carry by L/(L+1), which is below one, where L is the venue leverage the engine targets at the prevailing funding rate. The hedge is sized one for one against spot and the margin behind it earns nothing, so venue leverage reduces the margin posted rather than multiplying the carry. The 3x figure was retained as modeled_target_at_scale until 2026-07-28 and has now been withdrawn: it was reachable only with a levered spot leg the protocol does not operate. Correcting this closed most of the modeled-versus-realized gap: what remains is the honest distance between a forward model and a vault that has distributed almost nothing.","funding_note":"The funding component is small and regime-dependent. Perpetual funding on the hedged asset can be positive or negative in any given period, so pure funding capture at this scale is near zero and can be negative. No live funding figure is asserted here.","base":{"kind":"founder-custodied watch-only float, self-custodied, NOT protocol custody","address":"0x14f04cE02f35B29Af564A98544dD7e2393993946","backs_kusd":false,"counted_in_solvency":false,"scale":"pilot","source_url":"https://kerne.fi/api/por","live_balances_at":"/api/por -> reserves.protocolOwnedReserves.components.founderWatchOnlyFloat","seed_policy":"https://kerne.fi/docs/seed-tvl-policy","note":"From 2026-07-21 to 2026-10-05 the hedge engine read this address as a read-only balance feed and sized its Hyperliquid short against the ETH and WETH held there. It no longer does: since 2026-10-05 it sizes only against ETH-exposed collateral that backs kUSD, the base the signed attestation measures. The float backs no kUSD, is not protocol collateral, and enters no solvency ratio. It is disclosed in advance under the Seed TVL policy; live balances and USD value are at the source above, not duplicated here."}},"audit":{"status":"report-published","auditor":"Hexens","fieldwork_start":"2026-07-13","initial_report_received":"2026-07-20","report":"published","final_report_received":"2026-07-31","final_report_public":true,"final_report_url":"https://github.com/kerne-protocol/contracts-public/blob/main/audits/hexens-kerne-protocol-final-2026-07-31-updated-2026-08-20.pdf","final_report_sha256":"1f858d9105c74e845f59db208ffbb0fd1e21cbbf07336347c5b09b5078fb7298","superseded_report_url":"https://github.com/kerne-protocol/contracts-public/blob/main/audits/hexens-kerne-protocol-final-2026-07-31.pdf","superseded_report_sha256":"655e7126030c750e9d58f2ab30b58215ce604942f06997d5c01532d6f687a4ca","final_report_findings":{"critical":0,"high":2,"medium":2,"low":4,"informational":2,"total":10,"fixed":8,"acknowledged_no_code_change":2,"note":"Counts as stated by the report itself, not as summarised by Kerne. All ten findings are in KerneVault.sol; kUSD.sol, skUSD.sol, KUSDPSM.sol and esKERNE.sol drew none between them. Both high findings concern the esKERNE forfeiture mechanism and are filed against the vault because that is where the code sits, so esKERNE drawing zero is not the same as its design going unexamined."},"response_url":"https://kerne.fi/insights/hexens-audit-every-finding-and-our-response","report_window_previously_published":"mid-August 2026","report_window_previously_published_source":"kerne-estimate","report_window_status":"superseded-by-delivery","remediation":"in-progress","pre_audit":false,"audited_commit_is_deployed":false,"audited_commit_vs_deployed_url":"https://kerne.fi/security/deployed-vs-source","auditor_confirmation":{"source":"Hexens, stated from its own account","href":"https://x.com/hexens/status/2075673880073576916","date":"July 10, 2026","confirms":"engagement-only"},"auditor_hosted_report":{"source":"Hexens, published on its own domain","href":"https://hexens.io/audit-reports/kerne-protocol-july-2026","index_href":"https://hexens.io/audit-reports","confirms":"full-report-contents","independent_of_kerne":true,"note":"Served by the auditor, not by Kerne. States the same total of ten findings and the same five reviewed contracts as final_report_findings, and links back to kerne.fi. Prefer this URL when the question is whether the audit can be corroborated from a source Kerne does not control. Its own scope section links five files in a private repository and those links 404 for the public; the reviewed and remediated source is republished at https://github.com/kerne-protocol/contracts-public/tree/main/audits/scope instead."},"per_finding_url":"https://kerne.fi/security/hexens-2026","note":"Hexens fieldwork ran from 2026-07-13, Hexens delivered its initial report on July 20, 2026, and delivered the final report on July 31, 2026, ahead of the mid-August 2026 window Kerne had published as its own estimate; that window is spent and is retained only as a record of what was promised. The report is published in full at final_report_url, hash above, so every count in final_report_findings can be checked against the document rather than against this feed. Two caveats a reader should carry: an audit reviews a commit, not a chain, and the live KerneVault does not run the reviewed commit, which is mapped at /security/deployed-vs-source; and remediation of the two acknowledged findings is a separate question from the eight fixed. The findings-response protocol and live audit status are on the security surface.","pages":["https://kerne.fi/security/audits","https://kerne.fi/security/hexens-2026","https://kerne.fi/security/findings-response","https://hexens.io/audit-reports/kerne-protocol-july-2026"]},"independent_reviews":{"note":"Each entry is an independent researcher quoted verbatim, with their permission, about a review they performed. The caveat is part of the record: a focused review is not an audit and no quote here is a security guarantee. Kerne has one completed external audit, the Hexens final report published 2026-07-31, and none of these entries is part of it.","page_url":"https://kerne.fi/security/acknowledgments","items":[{"attribution":"SpokoDev","quote_verbatim":"SpokoDev reviewed Kerne's escrowed-KERNE (esKERNE) exit path and reported a forfeiture-on-exit bypass, which the team fixed in commit 8193babd.","caveat":"In the researcher's own words, this \"was a focused review of specific paths, not a full audit, and a single finding is never a clean bill of health.\" An external researcher reviewed this area and we fixed what they reported. It is not an audit and not a security guarantee.","granted":"2026-07-22","fix_commit":"8193babd","fix_commit_note":"Fixed in source; latent on the live contracts (the affected escrow path is unfunded) and ships on-chain with the esKERNE redeploy. The source tree mirrors to public GitHub at contract redeploys, so this commit is not yet publicly browsable; the fix was confirmed to the researcher in the disclosure thread."}]},"independent_verification":{"note":"Everything on this page was produced by somebody who is not Kerne. Each entry states who produced it, when, what they actually concluded, where the primary source is, and what they left open. The open items are published at the same weight as the conclusions, because a page that only carried the flattering half would be the same self-vouching it exists to answer.","page_url":"https://kerne.fi/security/independent","last_reviewed":"2026-08-12","transcription_note":"Quotes are verbatim, including lowercase sentence starts and original punctuation. The only changes are character-level: Unicode minus, curly quotes, en dashes and ellipses are rendered as ASCII, because these surfaces are ASCII only. No word is altered and no elision is unmarked.","no_verdict":"No party listed here stated that Kerne is safe, sound, or suitable to hold, and this object must not be summarised as if one did. Several of them state open problems in their own words, reproduced under left_open.","counts":{"artifacts":6,"not_paid_for_by_kerne":5,"paid_for_by_kerne":1,"items_left_open":14,"kerne_errors_they_found":4},"related_but_different":{"key":"independent_reviews","difference":"independent_reviews is researchers quoted about a focused review of one path. independent_verification is the record of who has checked Kerne at all. Do not merge them."},"artifacts":[{"key":"euler-forum-1849","rank":1,"title":"A public technical review on the Euler governance forum","party":"Oleg_Aleksandrov, a member of the Euler governance forum","party_kind":"individual reviewer","paid_by_kerne":false,"period":"2026-07-20 to 2026-08-09","primary_source_url":"https://forum.euler.finance/t/1849","secondary_sources":[{"label":"The same thread as raw JSON, readable without an account, which is how to confirm that nothing quoted here was shortened in a way that changes it","url":"https://forum.euler.finance/t/1849.json"}],"what_it_is":"Kerne opened topic 1849 on 2026-07-03 to propose a kUSD market. Oleg_Aleksandrov arrived on 2026-07-20 and spent the next twenty days taking the design apart in public. He posted nine times. He closed on 2026-08-09 with a summary of what the thread had established and a list of what remained open.","why_it_counts":"He was not commissioned, paid, selected or briefed by Kerne, and he did not take Kerne's word for anything he could read himself. Most of what he asserts, he re-derived from chain or from source before asserting it, which means a reader can re-derive it too.","independence_limits":["He is not Euler staff. He holds no moderator, admin or group role on that forum, and his account was created on 2026-07-17. Kerne can tell you nothing else about who he is, because the forum does not say.","He is one person working from public data, not a firm. He wrote no report and ran no fork tests. The thread is the artifact, and it is the whole artifact.","The thread was opened by Kerne to propose a market, so the agenda was ours even though the questions were not.","He issued no opinion on whether kUSD is safe to hold, and no Kerne surface may imply that he did. His closing line is a condition, not a verdict: nothing further from him until there is new on-chain state to verify.","Two post numbers, 13 and 14, are absent from the public thread. Post 15 opens by apologising for one of them as a draft from another thread pasted by mistake. Kerne has never edited or deleted a post in that thread and has no power to."],"verified_themselves":[{"what":"Re-read the live mint PSM source on BaseScan and got an exact match: KUSDPSM, v0.8.24+commit.e11b9ed9, optimizer 1000 runs, cancun, both read and write tabs present.","post":21,"date":"2026-08-09"},{"what":"Recovered both account-registry membership signatures himself, rather than trusting the registry: the messages recover to the two enumerated EOAs.","post":9,"date":"2026-07-29"},{"what":"Rebuilt the backing ratio from chain instead of reading it off Kerne's endpoint, and got 1,113.885006 USDC against 1,112.707154 kUSD outstanding.","post":11,"date":"2026-07-31"},{"what":"Tested Kerne's negative-funding threshold against 4,320 hourly Hyperliquid settlements over 180 days and found it unreachable.","post":11,"date":"2026-07-31"},{"what":"Read the operator Safe directly: guard slot zero, no modules, all owners EOA, DEFAULT_ADMIN on kUSD at the Safe, getRoleAdmin(MINTER_ROLE) = 0x00.","post":15,"date":"2026-08-02"},{"what":"Replayed the timelock deploy transaction and the thirteen-call handover call by call, and disassembled the Pause Guardian: 1012 bytes of runtime, six externals, no execute, no unpause, no grantRole, no privileged PSM selectors.","post":19,"date":"2026-08-07"},{"what":"Confirmed the staking wrapper is outside the handover on chain rather than taking it from Kerne: hasRole(0x00, timelock) = false on skUSD.","post":19,"date":"2026-08-07"}],"record":[],"quotes":[{"label":"His closing summary of what the thread established","text":"stepping back, since this thread has reached a natural boundary. what it established: the canonical solvency read is the PSM ratio, excluding off-chain assets; the hyperliquid balance is publicly readable and signed by the account itself, but completeness of the account set is not provable on-chain. negative funding is absorbed by venue margin with no insurance fund and no automatic close; the minter set was narrowed to one. mint and psm admin moved behind a 48h timelock with an instant scoped pause guardian.","source_url":"https://forum.euler.finance/t/1849/21","date":"2026-08-09"},{"label":"On recovering the account-registry signatures himself, rather than reading Kerne's registry","text":"Both membership signatures verify: the message recovers to 0x09a2...CA37e and 0x14f0...3946 respectively, matching the two enumerated EOAs.","source_url":"https://forum.euler.finance/t/1849/9","date":"2026-07-29"},{"label":"On reading the operator Safe directly","text":"I verified your Safe claims directly. guard slot zero, no modules, all owners EOA, DEFAULT_ADMIN on kUSD at Safe, getRoleAdmin(MINTER_ROLE) = 0x00. All matched.","source_url":"https://forum.euler.finance/t/1849/15","date":"2026-08-02"},{"label":"On replaying the timelock deploy transaction","text":"I verified everything as stated. The deploy tx carries exactly four RoleGranted events: proposer, executor, and canceller on Safe, DEFAULT_ADMIN on the timelock itself, and minDelay set to 172800 upon creation.","source_url":"https://forum.euler.finance/t/1849/19","date":"2026-08-07"},{"label":"On the source verification he re-ran himself","text":"checked 0xaBDE1138 again today, 2026-08-09 13:30 UTC: source code verified, exact match, KUSDPSM, v0.8.24+commit.e11b9ed9, optimizer 1000 runs, cancun, both read and write tabs present. matches your read.","source_url":"https://forum.euler.finance/t/1849/21","date":"2026-08-09"},{"label":"On what a 48 hour delay is actually worth","text":"48 hours is a notification only if someone receives it. Today, nothing monitors CallScheduled on this timelock: no subscriber, no alert, no public page. The queue is recoverable from logs, but no one is recovering it. A canceller learning of an operation at hour 47 is decoration, whoever holds the seat.","source_url":"https://forum.euler.finance/t/1849/19","date":"2026-08-07"},{"label":"On catching Kerne changing a definition it had said it would not change","text":"On July 24 you wrote: the warning stays until the hedge runs against collateral that actually backs kUSD. On July 25 the warning is gone. schema v6 now counts the founder wallet in the hedge base, which still backs no kUSD. That looks like exactly the change you said you wouldn't make. What am I missing?","source_url":"https://forum.euler.finance/t/1849/7","date":"2026-07-25"}],"kerne_errors_they_found":["Post 3, 2026-07-20. Kerne's proposal described a live Morpho market as a precedent to underwrite against and a public data series. He opened the market and found $0 supplied, $0 borrowed, no transaction history and Morpho's own not-listed warning. The claim was withdrawn.","Post 7, 2026-07-25. A schema change had quietly started counting the founder wallet in the hedge base, one day after Kerne wrote that the warning would stay until the hedge ran against collateral that actually backs kUSD. He was right. It was corrected, and Kerne refused the easy fix of widening the hedge base to clear the warning.","Post 11, 2026-07-31. Kerne's loss breakers set a $50,000 daily limit against a book of about $1,140, so no threshold in the design protected anyone at genesis size.","Post 19, 2026-08-07. Kerne had described the custody handover as one atomic batch. He replayed it and found the DEFAULT_ADMIN grants had landed earlier in separate transactions, so the Safe and the timelock both held admin for a window in which the delay did not bind. His reconstruction was tighter than ours and the correction was published."],"left_open":[{"item":"The canceller seat","detail":"Proposer, executor and canceller on the governance timelock are all the same governance Safe. The only party who can cancel a scheduled operation is the party who scheduled it. Unchanged as of 2026-08-11.","status":"open"},{"item":"Queue monitoring","detail":"Kerne shipped kerne.fi/timelock and kerne.fi/api/timelock on 2026-08-10, which recompute the queue from chain and publish it. That closes the observation half only. It does not create a canceller outside the operator set, and the alert it raises pages Kerne rather than a holder.","status":"half closed"},{"item":"The exposure floor","detail":"A contract-level cap on how much of the backing may be deployed into the hedge strategy. Not built. It does not bind today because the strategy holds none of the backing, and that is the reason it has not been built, not an argument that it is unnecessary.","status":"open"},{"item":"The pending-operations check on the mint path","detail":"His design: a counter of queued privileged operations that the mint path reverts on, so a pending mint-authority change automatically closes entry while leaving exit open, without a keeper. Not built.","status":"open"},{"item":"Exit-open as a property","detail":"That redemption stays available by construction rather than by operator choice. Not built.","status":"open"}]},{"key":"pharos-watch","rank":2,"title":"A watchdog registry that re-derives Kerne's corrections before recording them","party":"TokenBrice, maintainer of the pharos-watch stablecoin registry","party_kind":"independent registry","paid_by_kerne":false,"period":"2026-06-29 to 2026-08-11","primary_source_url":"https://github.com/TokenBrice/pharos-watch/issues?q=kerne","secondary_sources":[{"label":"The live kUSD record on pharos.watch, which is the thing those corrections changed and the thing that still carries the jurisdiction error below","url":"https://pharos.watch/stablecoin/kusd-kerne/"}],"what_it_is":"pharos.watch is an independent stablecoin registry. Kerne has filed six items against its own record there since 2026-06-29, disclosing the affiliation each time, using the maintainer's own data-correction template. Five landed. The sixth landed in half.","why_it_counts":"The maintainer does not merge Kerne's pull requests. He re-derives the facts himself and lands his own commit, then closes ours as superseded, and he has declined to carry characterizations of ours he did not agree with. That is a functioning error-correction loop with a party who is not us, evidenced by commits in a repository Kerne cannot write to.","independence_limits":["A registry record is a data check, not a security review. Nothing here says anything about whether the contracts are sound.","Kerne initiated every one of these corrections. The independence is in the verification and the disposition, not in the discovery.","He keeps kUSD at pre-launch and not-active by his own criteria, and has not moved it."],"verified_themselves":[],"record":[{"submitted":"2026-06-29","ref":"#438","what":"Coverage request: add Kerne USD","landed_commit":"47834b4d","landed_on":"2026-07-03","landed_as":"Add kUSD as pre-launch stablecoin"},{"submitted":"2026-07-09","ref":"#468","what":"Backing and supply understated by roughly 10x since July 4, from a stale snapshot","landed_commit":"e0d62f31","landed_on":"2026-07-11","landed_as":"refresh kUSD PSM backing snapshot"},{"submitted":"2026-07-22","ref":"#625","what":"The live mint PSM had moved and MINTER_ROLE on the old one was revoked","landed_commit":"423509e6","landed_on":"2026-07-23","landed_as":"update kUSD live PSM authority"},{"submitted":"2026-07-25","ref":"#650","what":"The recorded skUSD address was the retired v1 vault","landed_commit":"5a719f49","landed_on":"2026-07-25","landed_as":"record the live Kerne skUSD vault"},{"submitted":"2026-08-02","ref":"#773","what":"The no-third-party-audit notice was stale, and the recorded jurisdiction is unsupportable","landed_commit":"5c45e502","landed_on":"2026-08-05","landed_as":"audit notice replaced. The jurisdiction half did NOT land, see below."},{"submitted":"2026-08-08","ref":"#797","what":"Custody moved behind a 48 hour timelock on 2026-08-06","landed_commit":"5eca2248","landed_on":"2026-08-10","landed_as":"record reviewed Kerne timelock handover"}],"quotes":[{"label":"Closing Kerne's timelock submission","text":"We independently reconstructed the transition, landed the revised record in 5eca224823e717d9603d21b895f6439441b78a85 via #825, and verified that commit in production.","source_url":"https://github.com/TokenBrice/pharos-watch/pull/797","date":"2026-08-10"},{"label":"Two characterizations of Kerne's he declined to carry, in the same comment","text":"did not carry over the blanket redemption/non-burn methodology claim: the live PSM burns kUSD on redemption, while the two legacy PSMs retain the remaining protocol inventory ... treated skUSD's direct Safe administration as a separate non-upgradeable wrapper surface. Its verified powers do not mint kUSD or change PSM parameters, so we did not describe it as a timelock bypass.","source_url":"https://github.com/TokenBrice/pharos-watch/pull/797","date":"2026-08-10"}],"kerne_errors_they_found":[],"left_open":[{"item":"pharos.watch still records a jurisdiction Kerne does not have","detail":"The record carries British Virgin Islands. Kerne has no legal entity, in the British Virgin Islands or anywhere else. That value came from Kerne's own coverage submission in July 2026, where it described an intended structure rather than an existing one, which makes it our error before it is anyone's. We asked for it to be set to null on 2026-08-02 in issue #773. The issue was closed as completed on 2026-08-11 and the field is unchanged: re-read on the live record on 2026-08-12, it still says British Virgin Islands.","status":"open"},{"item":"The correction is filed but not marked verified","detail":"Issue #773 still carries his verified: pending label. Kerne does not control that label and is not asking for it to move.","status":"open"}]},{"key":"hexens-2026","rank":3,"title":"One completed external audit, paid for by Kerne","party":"Hexens","party_kind":"audit firm","paid_by_kerne":true,"period":"2026-07-13 to 2026-07-31","primary_source_url":"https://hexens.io/audit-reports/kerne-protocol-july-2026","secondary_sources":[{"label":"The auditor's own client index, where Kerne is one of the 86 companies listed","url":"https://hexens.io/audit-reports"}],"what_it_is":"Fieldwork ran from 2026-07-13. The final report published on 2026-07-31 and covers five contracts pinned to commit 0912c870: kUSD, skUSD, KUSDPSM, KerneVault and esKERNE. Ten findings: none critical, two high, two medium, four low, two informational. Eight fixed, two acknowledged without a code change. All ten are in KerneVault.","why_it_counts":"Hexens publishes the report on hexens.io and carries Kerne on its own client index, one of the 86 companies listed there next to Lido, Polygon zkEVM, 1inch, EigenCloud, ZKsync, LayerZero and Wintermute. Appearing in somebody's client list is not a peer claim and Kerne is not making one. What it gives a reader is somewhere to read the finding counts and the scope off a domain Kerne cannot write to: their index states ten findings, two high, two medium, four low and two informational, which is the same tally published here and on Kerne's own finding-by-finding page. Three surfaces agreeing, one of them not ours, is what turns an audit claim into a checkable fact.","independence_limits":["Kerne chose this firm and paid the invoice. That is the normal arrangement for an audit and it is worth saying out loud on a page about independence, because it is the one entry here that Kerne bought.","An audit reviews a commit, not a chain, and it is a point-in-time review of five files. Kerne does not describe this code as passed, clean, audited-safe or secure, and will not after any future audit."],"verified_themselves":[],"record":[],"quotes":[],"kerne_errors_they_found":[],"left_open":[{"item":"The live vault does not run the reviewed commit","detail":"The live peg stability module and skUSD run commit 0912c870 exactly. The live KerneVault does not: it was deployed from earlier source, so the report's vault findings are open on that bytecode. It holds no user funds, has never issued a share, and takes no deposits until the remediated build is live and verified.","status":"open"},{"item":"Two findings acknowledged rather than fixed","detail":"Two of the ten were acknowledged without a code change. The reasoning on both is published rather than summarised.","status":"open"},{"item":"The report's own scope links are broken","detail":"The five scope links on the Hexens page point at a private repository and return 404 for the public, re-checked and still true on 2026-08-12. This is a defect on their page, not on ours. Kerne republished the exact reviewed source at contracts-public/audits/scope/ on 2026-08-03 and handed the auditor the working URLs.","status":"open"}]},{"key":"sbsecurity-2026-08","rank":4,"title":"An unsolicited, unpaid security review","party":"SBSecurity","party_kind":"security research team","paid_by_kerne":false,"period":"2026-08-05","primary_source_url":"https://x.com/KerneProtocol/status/2086616814998716927","secondary_sources":[],"what_it_is":"SBSecurity approached Kerne, ran a review nobody asked for, and refused payment twice. They triaged an automated report that claimed 57 findings, including 2 critical and 15 high, down to zero critical, zero high and ten medium, each with a Foundry proof of concept that runs on a clean checkout. Every live figure in their report matched the chain to the cent when Kerne re-read them independently.","why_it_counts":"Nobody selected them, nobody paid them, and the most useful thing they did was kill 47 findings that a naive automated pass had asserted, including both claimed criticals. The relationship is not deferential in either direction: Kerne rejected one of their ten impact claims on evidence and told them so, because the published backing figure already nets out PSM-held kUSD and says so in prose on /api/por. The underlying mechanism they described is real and worth fixing; the impact they attached to it was not.","independence_limits":["The report is not published and is not linked here, because it contains findings that are not fixed. That means a reader cannot check this entry against a primary source the way they can check every other entry here, and it should be weighed accordingly.","The link above is Kerne's public statement about them, not their statement about Kerne. It asserts no outcome: they asked for a testimonial saying the review hardened the code, and Kerne declined, because nothing from the review has shipped."],"verified_themselves":[],"record":[],"quotes":[],"kerne_errors_they_found":[],"left_open":[{"item":"One of their ten findings is a genuine unfixed design bug","detail":"It sits in a contract that currently holds nothing, which is the only reason it is inert. It is not described here, because it is not fixed, and describing an unfixed bug in public is the one thing Kerne's disclosure policy forbids. It has to be fixed before that contract is ever funded.","status":"open"},{"item":"Kerne owes them a written per-finding disposition and has not delivered it","detail":"Promised on 2026-08-06, in writing, for early the following week. Not delivered as of 2026-08-11. Kerne's own disclosure policy says that a missed date entitles the person owed to say so publicly and that we will not dispute it, so it is stated here first.","status":"open"}]},{"key":"defillama-audits-field","rank":5,"title":"A listing operator accepted the audit link","party":"DefiLlama","party_kind":"listing operator","paid_by_kerne":false,"period":"2026-08-03 to 2026-08-05","primary_source_url":"https://defillama.com/protocol/kerne","secondary_sources":[],"what_it_is":"On 2026-08-03 DefiLlama support moved the audits field on the Kerne protocol record from 0 to 2 and populated audit_links with the Hexens report. Their words in the thread: Thanks for the link to the audit. I've updated the listing to show this. Separately, a DefiLlama maintainer merged Kerne's pull request #886 on 2026-08-05, setting auditLinks on the kUSD stablecoin entry.","why_it_counts":"It counts less than anything else on this page, and it is here mainly so that a reader who sees the 2 knows exactly how it got there.","independence_limits":["Kerne asked. This was not unprompted, and a listing operator accepting a link is not a review of anything.","The 2 is not a count of two audits. Kerne has one. It is DefiLlama's convention marker for a listing that carries published audit links: Aave v3, Morpho Blue, Sky and Ethena USDe all show the same 2 with one link each.","The listing does not restate the caveat that the deployed vault predates the reviewed commit, so it is a strictly less complete statement than Kerne's own."],"verified_themselves":[],"record":[],"quotes":[],"kerne_errors_they_found":[],"left_open":[{"item":"DefiLlama still reports no usable price for kUSD","detail":"Which is correct, and it is why other registries keep kUSD in a pre-active state. Kerne is not asking any of them to change it.","status":"open"}]},{"key":"researcher-review-2026-06","rank":6,"title":"A researcher-initiated review, published anonymized","party":"A three-person security research team","party_kind":"independent researchers","paid_by_kerne":false,"period":"2026-06","primary_source_url":"https://github.com/kerne-protocol/contracts-public/blob/main/audits/INDEPENDENT_REVIEW_2026-06.md","secondary_sources":[],"what_it_is":"In June 2026 a three-person team reviewed Kerne's core contracts on their own initiative, not under any engagement, and sent eight written findings to the disclosure inbox. Kerne assessed every finding against the live source-verified bytecode rather than repository source, sent a full per-finding response, and published the summary.","why_it_counts":"It is the earliest outside look at the contracts, and one of its findings independently confirmed a real accounting item Kerne had already found itself.","independence_limits":["This is the weakest entry on the page and the reason is structural: the published document is Kerne's write-up of somebody else's findings, and none of the three consented to be named, so there is no source outside Kerne's control to check it against. It is listed for completeness, not offered as evidence.","It was a researcher-initiated review, not a firm audit, and Kerne has never described it as one."],"verified_themselves":[],"record":[],"quotes":[],"kerne_errors_they_found":[],"left_open":[{"item":"The researchers are unnamed","detail":"By their own silence rather than by Kerne's choice. Kerne asked for consent to name them on 2026-06-29 and would publish the named version if any of them replied.","status":"open"}]}],"not_listed":["A rating from Credora. One was requested through their public form on 2026-08-09. Nothing has been published, and nothing may be.","A place on the Hindenrank stablecoin board. Kerne emailed them on 2026-08-09. kUSD is not on it.","An audited-by or verified-by badge of any kind. Kerne does not have one, has not applied for one, and would not put one here if it did, because a badge is a summary somebody else wrote and this page is for the primary sources.","Offers to sell Kerne a third-party verification product. Kerne has received them. A quote is not a check, and buying one would not add anything to this page."],"public_record":{"note":"Everything above this point was written by somebody who is not Kerne. Everything in this section was written by Kerne, so it is not independent verification and must never be counted as such. It is listed on this page for one narrow reason: it is hosted, dated and permanently archived by a party Kerne does not control, on a United States government domain, and Kerne can neither edit nor withdraw it. That makes it evidence that a specific claim was made under Kerne's name on a specific date. It is not evidence that anybody agreed with the claim, and no agency has responded to any of it.","why_it_is_separate":"Folding these into the list above would inflate the count of independent checks on Kerne with documents Kerne wrote, which is the exact self-vouching this page exists to answer. The counts at the top of this page deliberately exclude them.","counted_as_independent":false,"filings":[{"key":"fincen-1506-ab74","title":"Comment on the joint Customer Identification Program proposal for permitted payment stablecoin issuers","agency":"FinCEN, in a joint rulemaking with the OCC, the Federal Reserve Board, the FDIC and the NCUA","rin":"1506-AB74","docket":"FINCEN-2026-0101","fr_citation":"91 FR 37234 (June 22, 2026)","filed_as":"Kerne Protocol","received":"2026-08-09","posted":"2026-08-12","comment_id":"FINCEN-2026-0101-0009","tracking_number":"msm-5xhi-wb4s","status":"posted on the public docket","primary_source_url":"https://www.regulations.gov/comment/FINCEN-2026-0101-0009","secondary_sources":[{"label":"The same record through the regulations.gov API, which returns the organization, the tracking number and the receive date without rendering the page, and is the way to check it if the HTML is blocked by bot protection","url":"https://api.regulations.gov/v4/comments/FINCEN-2026-0101-0009"}],"what_it_argues":"That a customer identification program cannot reach secondary transfers an issuer never intermediates; that a redemption by someone who never onboarded should expressly count as a covered relationship rather than falling into a gap; that verifiable credentials are worth recognizing as a method and not as a safe harbor; and, on the agencies' own request for small-issuer data, that a five-percent-of-reserves revenue proxy applied to roughly 1,111 dollars of reserves yields about 56 dollars a year, which is not a small figure so much as a meaningless one, because fixed compliance cost does not shrink with the reserve base.","what_this_is_not_evidence_of":["Kerne wrote it. A filed comment is a claim on the record, not a finding by anyone, and nobody at any of the five agencies has agreed with a word of it.","Anyone may file a comment on a federal rulemaking. It requires no standing, no licence and no review, so the existence of this filing says nothing about whether Kerne is regulated, registered or supervised. It is not.","It takes no position on how kUSD should be classified, deliberately, so it cannot be cited as a regulator having accepted any characterisation of kUSD.","The reserve figure it quotes was correct when filed and moves. Read the live figure at https://kerne.fi/api/por rather than the number in the letter."]}]}},"honesty_index":{"as_of":"2026-09-01T00:40:56.233Z","source":"committed-seed","window_days":30,"signed":false,"signer":null,"attestation_hash":null,"page_url":"https://kerne.fi/honesty-index","source_url":"https://kerne.fi/api/honesty-index","board_summary":{"comparable_competitors":6,"competitors_within_half_point":5,"competitors_publishing_nothing":8,"competitors_not_comparable":6,"kerne_gap_pp":6.12,"kerne_is_worst":true,"worst_competitor_gap_pp":0.8},"rows":[{"protocol":"Kerne","symbol":"skUSD","chain":"base","address":"0x96F5102C15b839757f811A98CEc3725Ac21DfA14","is_kerne":true,"status":"live","advertised":[{"label":"skUSD APY","pct":6.12,"basis":"modeled","source_url":"https://app.kerne.fi/api/apy","captured_at":"2026-08-31","verbatim":"\"expectedAPYPct\":\"6.12%\",\"basis\":\"deployed\",\"organicAPYPct\":\"6.12%\",\"modeled\":true,\"isLive\":true"}],"realized":{"ok":true,"annualized_pct":0,"growth_pct":0,"window_days":30,"pps_from":"1.000098667771066974","pps_to":"1.000098667771066974","from_block":49420937,"to_block":50716937,"clamped":false},"stated_gap_pp":6.12,"comparability":"direct"},{"protocol":"Aegis","symbol":"sYUSD","chain":"ethereum","address":"0xfE0ccc9942E98C963Fe6b4e5194EB6e3Baa4cb64","is_kerne":false,"status":"live","advertised":[{"label":"sYUSD APR","pct":6,"basis":"spot-projected","source_url":"https://aegis.im/","captured_at":"2026-08-31","verbatim":"sYUSD APR 6%"}],"realized":{"ok":true,"annualized_pct":4.8977,"growth_pct":0.393775,"window_days":30,"pps_from":"1.046929513866407872","pps_to":"1.051052060295857442","from_block":25663669,"to_block":25878904,"clamped":false},"stated_gap_pp":null,"comparability":"different-window"},{"protocol":"Avant","symbol":"savUSD","chain":"avalanche","address":"0x06d47F3fb376649c3A9Dafe069B3D6E35572219E","is_kerne":false,"status":"live","advertised":[{"label":"savUSD rate","pct":10.47,"basis":"spot-projected","source_url":"https://avantprotocol.com","captured_at":"2026-08-31","verbatim":"savUSD 10.47%"}],"realized":{"ok":true,"annualized_pct":8.9008,"growth_pct":0.70329,"window_days":30,"pps_from":"1.189206180167289016","pps_to":"1.197569747128184358","from_block":91798954,"to_block":94162156,"clamped":false},"stated_gap_pp":null,"comparability":"different-window"},{"protocol":"Cap","symbol":"stcUSD","chain":"ethereum","address":"0x88887bE419578051FF9F4eb6C858A951921D8888","is_kerne":false,"status":"live","advertised":[{"label":"7 day average USD APY","pct":5.66,"basis":"trailing-7d","source_url":"https://api.cap.app/v1/vaults/1/0xcccc62962d17b8914c62d74ffb843d73b2a3cccc/metrics","captured_at":"2026-08-31","verbatim":"\"stakingApy7d\":\"0.05656393366241596\""}],"realized":{"ok":true,"annualized_pct":5.1698,"growth_pct":0.415157,"window_days":30,"pps_from":"1.073429372336235817","pps_to":"1.077885788475635295","from_block":25663669,"to_block":25878904,"clamped":false},"stated_gap_pp":null,"comparability":"different-window"},{"protocol":"Curve","symbol":"scrvUSD","chain":"ethereum","address":"0x0655977FEb2f289A4aB78af67BAB0d17aAb84367","is_kerne":false,"status":"live","advertised":[{"label":"Projected APY","pct":0.83,"basis":"spot-projected","source_url":"https://prices.curve.finance/v1/crvusd/savings/statistics","captured_at":"2026-08-31","verbatim":"\"proj_apy\":0.8270563959624111,\"supply\":14613101.4446232"}],"realized":{"ok":true,"annualized_pct":1.1108,"growth_pct":0.090837,"window_days":30,"pps_from":"1.105569033741283005","pps_to":"1.106573297013418767","from_block":25663669,"to_block":25878904,"clamped":false},"stated_gap_pp":null,"comparability":"different-window"},{"protocol":"Ethena","symbol":"sUSDe","chain":"ethereum","address":"0x9D39A5DE30e57443BfF2A8307A4256c8797A3497","is_kerne":false,"status":"live","advertised":[{"label":"sUSDe staking yield","pct":4.75,"basis":"spot-projected","source_url":"https://app.ethena.fi/api/yields/protocol-and-staking-yield","captured_at":"2026-08-31","verbatim":"\"stakingYield\":{\"lastUpdated\":\"26 Aug 26\",\"value\":4.747142857142856}"},{"label":"30 day average sUSDe yield","pct":4.22,"basis":"trailing-30d","source_url":"https://app.ethena.fi/api/yields/protocol-and-staking-yield","captured_at":"2026-08-31","verbatim":"\"avg30dSusdeYield\":{\"lastUpdated\":\"26 Aug 26\",\"value\":4.22}"},{"label":"sUSDe yield since inception","pct":10.62,"basis":"inception-to-date","source_url":"https://app.ethena.fi/api/yields/protocol-and-staking-yield","captured_at":"2026-08-31","verbatim":"\"avgSusdeYieldFromInception\":{\"lastUpdated\":\"26 Aug 26\",\"value\":10.620340557275542}"}],"realized":{"ok":true,"annualized_pct":4.2571,"growth_pct":0.343246,"window_days":30,"pps_from":"1.241664956223988584","pps_to":"1.245926924110356561","from_block":25663669,"to_block":25878904,"clamped":false},"stated_gap_pp":-0.04,"comparability":"direct"},{"protocol":"Falcon Finance","symbol":"sUSDf","chain":"ethereum","address":"0xc8CF6D7991f15525488b2A83Df53468D682Ba4B0","is_kerne":false,"status":"live","advertised":[{"label":"sUSDf estimated APY","pct":4.6,"basis":"trailing-7d","source_url":"https://app.falcon.finance/earn/classic","captured_at":"2026-08-31","verbatim":"Estimated APY ~4.6%"}],"realized":{"ok":true,"annualized_pct":4.7591,"growth_pct":0.382871,"window_days":30,"pps_from":"1.128223046657325921","pps_to":"1.132542681232214529","from_block":25663669,"to_block":25878904,"clamped":false},"stated_gap_pp":null,"comparability":"different-window"},{"protocol":"Frax","symbol":"sfrxUSD","chain":"ethereum","address":"0xcf62F905562626CfcDD2261162a51fd02Fc9c5b6","is_kerne":false,"status":"live","advertised":[{"label":"Current earnings rate","pct":5,"basis":"spot-administered","source_url":"https://frax.com/earn","captured_at":"2026-08-31","verbatim":"Current earnings rate 5% APY"}],"realized":{"ok":true,"annualized_pct":4.1988,"growth_pct":0.338628,"window_days":30,"pps_from":"1.204351525222131376","pps_to":"1.208429798324712656","from_block":25663669,"to_block":25878904,"clamped":false},"stated_gap_pp":0.8,"comparability":"direct"},{"protocol":"Maple","symbol":"syrupUSDC","chain":"ethereum","address":"0x80ac24aA929eaF5013f6436cdA2a7ba190f5Cc0b","is_kerne":false,"status":"live","advertised":[],"realized":{"ok":true,"annualized_pct":4.8814,"growth_pct":0.392493,"window_days":30,"pps_from":"1.176328","pps_to":"1.180945","from_block":25663669,"to_block":25878904,"clamped":false},"stated_gap_pp":null,"comparability":"context-only"},{"protocol":"Maple","symbol":"syrupUSDT","chain":"ethereum","address":"0x356B8d89c1e1239Cbbb9dE4815c39A1474d5BA7D","is_kerne":false,"status":"live","advertised":[],"realized":{"ok":true,"annualized_pct":4.3343,"growth_pct":0.349352,"window_days":30,"pps_from":"1.137248","pps_to":"1.141221","from_block":25663669,"to_block":25878904,"clamped":false},"stated_gap_pp":null,"comparability":"context-only"},{"protocol":"Neutrl","symbol":"sNUSD","chain":"ethereum","address":"0x08EFCC2F3e61185D0EA7F8830B3FEc9Bfa2EE313","is_kerne":false,"status":"live","advertised":[{"label":"7 day average APY","pct":0,"basis":"trailing-7d","source_url":"https://www.neutrl.finance/performance","captured_at":"2026-08-31","verbatim":"7D AVERAGE APY 0%"},{"label":"30 day average APY","pct":2.2,"basis":"trailing-30d","source_url":"https://www.neutrl.finance/performance","captured_at":"2026-08-31","verbatim":"30D AVERAGE APY 2.2%"},{"label":"ITD APY","pct":7.8,"basis":"inception-to-date","source_url":"https://www.neutrl.finance/performance","captured_at":"2026-08-31","verbatim":"ANNUALIZED ITD YIELD 7.8%"}],"realized":{"ok":true,"annualized_pct":2.2346,"growth_pct":0.181811,"window_days":30,"pps_from":"1.062455500946372476","pps_to":"1.064387162516178975","from_block":25663669,"to_block":25878904,"clamped":false},"stated_gap_pp":-0.03,"comparability":"direct"},{"protocol":"Noon","symbol":"sUSN","chain":"ethereum","address":"0xe24a3dc889621612422a64e6388927901608b91d","is_kerne":false,"status":"live","advertised":[{"label":"7 day average APY","pct":7.02,"basis":"trailing-7d","source_url":"https://app.noon.capital","captured_at":"2026-08-31","verbatim":"APY, 7D 7.02%"},{"label":"28 day average APY","pct":7.17,"basis":"trailing-30d","source_url":"https://app.noon.capital","captured_at":"2026-08-31","verbatim":"APY, 28D 7.17%"}],"realized":{"ok":true,"annualized_pct":7.0914,"growth_pct":0.564703,"window_days":30,"pps_from":"1.2118209807305677","pps_to":"1.218664175138066158","from_block":25663669,"to_block":25878904,"clamped":false},"stated_gap_pp":0.08,"comparability":"direct"},{"protocol":"Sky","symbol":"sUSDS","chain":"ethereum","address":"0xa3931d71877C0E7a3148CB7Eb4463524FEc27fbD","is_kerne":false,"status":"live","advertised":[{"label":"Sky Savings Rate","pct":3.52,"basis":"spot-administered","source_url":"https://app.sky.money/","captured_at":"2026-08-31","verbatim":"Sky Savings Rate (sUSDS) Rate: 3.52%"}],"realized":{"ok":true,"annualized_pct":3.52,"growth_pct":0.284744,"window_days":30,"pps_from":"1.104921330204824317","pps_to":"1.108067529323312215","from_block":25663669,"to_block":25878904,"clamped":false},"stated_gap_pp":0,"comparability":"direct"},{"protocol":"Spark","symbol":"sUSDC","chain":"ethereum","address":"0xBc65ad17c5C0a2A4D159fa5a503f4992c7B545FE","is_kerne":false,"status":"live","advertised":[{"label":"USDC savings APY","pct":3.52,"basis":"spot-administered","source_url":"https://app.spark.fi/savings","captured_at":"2026-08-31","verbatim":"Deposit your USDC and earn 3.52% APY!"}],"realized":{"ok":true,"annualized_pct":3.5198,"growth_pct":0.284726,"window_days":30,"pps_from":"1.104921","pps_to":"1.108067","from_block":25663669,"to_block":25878904,"clamped":false},"stated_gap_pp":0,"comparability":"direct"},{"protocol":"Tori","symbol":"strUSD","chain":"ethereum","address":"0x280839980a7eD0D7717F64125fE241012E5F5815","is_kerne":false,"status":"live","advertised":[{"label":"Current APY","pct":10.67,"basis":"trailing-7d","source_url":"https://app.tori.finance/api/apy","captured_at":"2026-08-31","verbatim":"\"apy\":10.67,\"apySource\":\"slot\",\"sharePrice\":1.018532"}],"realized":{"ok":true,"annualized_pct":10.9609,"growth_pct":0.85852,"window_days":30,"pps_from":"1.009871638525934615","pps_to":"1.018541588413038739","from_block":25663669,"to_block":25878904,"clamped":false},"stated_gap_pp":null,"comparability":"different-window"},{"protocol":"Usual","symbol":"sUSD0","chain":"ethereum","address":"0xd861bE82dEe3223CFBEd160791f6550b0704D406","is_kerne":false,"status":"live","advertised":[],"realized":{"ok":true,"annualized_pct":4.113,"growth_pct":0.331834,"window_days":30,"pps_from":"1.0305005602729815","pps_to":"1.03392011446839716","from_block":25663669,"to_block":25878904,"clamped":false},"stated_gap_pp":null,"comparability":"context-only"},{"protocol":"Stables Labs","symbol":"sUSDX","chain":"ethereum","address":"0x7788a3538c5fc7f9c7c8a74eac4c898fc8d87d92","is_kerne":false,"status":"dormant","advertised":[],"realized":{"ok":true,"annualized_pct":0,"growth_pct":0,"window_days":30,"pps_from":"1.115324242564639433","pps_to":"1.115324242564639433","from_block":25663669,"to_block":25878904,"clamped":false},"stated_gap_pp":null,"comparability":"context-only"},{"protocol":"Resolv","symbol":"wstUSR","chain":"ethereum","address":"0x1202F5C7b4B9E47a1A484E8B270be34dbbC75055","is_kerne":false,"status":"recovery","advertised":[],"realized":{"ok":true,"annualized_pct":0,"growth_pct":0,"window_days":30,"pps_from":"1.132966158918315225","pps_to":"1.132966158918315225","from_block":25663669,"to_block":25878904,"clamped":false},"stated_gap_pp":null,"comparability":"context-only"},{"protocol":"YieldFi","symbol":"yUSD","chain":"ethereum","address":"0x19ebd191f7a24ece672ba13a302212b5ef7f35cb","is_kerne":false,"status":"recovery","advertised":[],"realized":{"ok":true,"annualized_pct":0,"growth_pct":0,"window_days":30,"pps_from":"0.998453","pps_to":"0.998453","from_block":25663669,"to_block":25878904,"clamped":false},"stated_gap_pp":null,"comparability":"context-only"},{"protocol":"Elixir","symbol":"sdeUSD","chain":"ethereum","address":"0x5C5b196aBE0d54485975D1Ec29617D42D9198326","is_kerne":false,"status":"wind-down","advertised":[],"realized":{"ok":true,"annualized_pct":0,"growth_pct":0,"window_days":30,"pps_from":"1.07056672845499187","pps_to":"1.07056672845499187","from_block":25663669,"to_block":25878904,"clamped":false},"stated_gap_pp":null,"comparability":"context-only"},{"protocol":"Level","symbol":"slvlUSD","chain":"ethereum","address":"0x4737D9b4592B40d51e110b94c9C043c6654067Ae","is_kerne":false,"status":"wind-down","advertised":[],"realized":{"ok":true,"annualized_pct":0,"growth_pct":0,"window_days":30,"pps_from":"1.148556137630990128","pps_to":"1.148556137630990128","from_block":25663669,"to_block":25878904,"clamped":false},"stated_gap_pp":null,"comparability":"context-only"}]},"comparison":{"note":"A structured, apples-to-apples read of Kerne against direct competitors, built so an automated diligence pass ingests the honest framing directly. It has two axes because two different kinds of number get compared dishonestly across this sector: a modeled or advertised target against a realized record. Here each is compared only to its own kind.","as_of":"2026-09-01T00:40:56.233Z","modeled_vs_advertised":{"question":"Is Kerne modeled APY out of line with what a direct competitor advertises?","framing":"No. Both figures on this axis are forward-looking targets, not records of yield paid. Kerne publishes its number as an explicit model of the deployed book, the carry multiplied by L/(L+1) rather than by the venue leverage, so Kerne modeled sits ABOVE Kerne realized by design and is labelled as such everywhere. A competitor advertised APY is the same species of number: a rate the strategy is built to target, not one a holder has necessarily earned. Compared like to like, Kerne modeled is in the same band competitors advertise, not out on its own.","kerne":{"figure_pct":null,"basis":"modeled, deployed basis","source_url":"https://kerne.fi/api/apy","note":"Modeled APY unavailable this minute; no figure asserted."},"competitors":[{"protocol":"Tori Finance","asset":"strUSD","chain":"ethereum","advertised_pct":12.3,"advertised_basis":"current, as their own app renders it","target_pct":15,"source_url":"https://app.tori.finance/api/apy","verbatim":"\"apy\":12.3","as_of":"2026-07-22","note":"Tori markets strUSD as an industry-leading delta-neutral yield and publishes an Accountable reserve dashboard. Its homepage renders a current APY from its own API (12.3 percent on 2026-07-22) and, separately, a plus-15-percent target. Neither is a record of yield paid; both are the competitor equivalent of a modeled figure, which is why they sit on the same axis as Kerne modeled, not against Kerne realized."}]},"realized_vs_realized":{"question":"How does Kerne realized, on-chain yield compare with a proven incumbent, and with the competitor above?","framing":"Kerne is the worst realized row on this comparison, and that is the point of publishing it. Realized here is ERC-4626 share-price growth read on chain by one method for every vault. Ethena, the audited incumbent, realizes close to what it advertises. Tori, a young vault, is so far realizing close to what it advertises too. Kerne realized derives from a single 0.10 kUSD distribution the deployment registry records as a plumbing test, not strategy carry, and decays toward zero absent further distributions. Kerne has not yet paid meaningful realized yield, and the honest reason to trust the rest of this document is that Kerne states so here rather than hiding it.","kerne":{"realized_pct":0,"window_days":30,"advertised_minus_realized_pp":6.12,"advertised_minus_realized_pp_note":"The same figure as honesty_index.board_summary.kerne_gap_pp, restated here rather than recomputed. There is one published gap for Kerne and the board computes it. If you need the components, advertised is the board row's advertised figure and realized_pct is directly above.","note":"Read from skUSD share-price growth on chain. One test distribution, decaying; the largest self-published gap on the board. The advertised side is organic deployed-basis carry alone. Between 2026-07-30 and 2026-08-01 it was a TOTAL that added a funded Genesis incentive; that component was withdrawn on 2026-08-01 because the escrow had never paid a holder and nothing existed that could pay one, so this gap narrowed by retraction rather than by delivery. The escrow is still published, excluded from the rate. The gap closes only when distributions actually land, and none have."},"competitors":[{"protocol":"Ethena","asset":"sUSDe","chain":"ethereum","realized_pct":4.26,"advertised_pct":4.22,"advertised_basis":"trailing-30d","window_days":30,"source_url":"https://kerne.fi/api/honesty-index","note":"The audited incumbent. Its realized figure tracks its advertised figure closely, which is what a truthful yield surface looks like and is the control this comparison is measured against."},{"protocol":"Tori Finance","asset":"strUSD","chain":"ethereum","realized_pct":12.0923,"window_days":21.3924,"as_of":"2026-07-22","from_block":25437064,"to_block":25590475,"pps_from":"1.000000040064181136","pps_to":"1.006712859875726263","clamped":true,"verify_via":["cast call 0x280839980a7eD0D7717F64125fE241012E5F5815 \"convertToAssets(uint256)(uint256)\" 1000000000000000000 --block 25437064 --rpc-url https://eth.drpc.org","cast call 0x280839980a7eD0D7717F64125fE241012E5F5815 \"convertToAssets(uint256)(uint256)\" 1000000000000000000 --block 25590475 --rpc-url https://eth.drpc.org","annualized = (pps_to / pps_from) ^ ((365 * 24 * 3600) / (to_ts - from_ts)) - 1"],"note":"strUSD is an ERC-4626 vault (asset is trUSD) that held par until it began accruing on 2026-07-01, so the window is clamped to that first accruing block, the same treatment the Honesty Index gives Kerne skUSD (reset to par on deployment). Over this young 21 day window strUSD has realized close to what Tori advertises, which is to Tori credit and is the honest contrast with Kerne, whose realized figure is a single test distribution decaying toward zero."}]},"takeaway":"On the modeled and advertised axis Kerne is unremarkable, in the same band its competitors target. On the realized axis Kerne is last, by a wide margin, and publishes exactly that. The verifiable claim Kerne makes is not that it pays the most; it is that every number here is dated, sourced, and reproducible from chain, including the ones that are unflattering."},"peer_yield_comparison":{"note":"The live, checkable comparative that replaced an unprovable superlative on 2026-08-11. Until that date Kerne's WalletConnect metadata asserted a category-leading yield claim about kUSD inside every wallet connect dialog. It could not be verified by anyone, including us, and it has been deleted rather than softened. This block is what Kerne publishes instead: the live modeled Kerne figure and the live peer figures, every one linked to the source it came from, every one re-pulled on each request, and each labelled with the basis it is computed on. Three independent reads are published per peer, and they are allowed to disagree.","as_of":"2026-11-12T19:42:37.238Z","caveats":null,"kerne":{"modeled":{"pct":null,"basis":"modeled, deployed basis, forward-looking","source_url":"https://kerne.fi/api/apy","note":"Modeled APY unavailable this minute; no figure asserted."},"realized":{"pct":0,"window_days":30,"source_url":"https://kerne.fi/api/honesty-index","basis":"realized, annualized on-chain share-price growth, same method as every peer","note":"THE NUMBER A DEPOSITOR ACTUALLY EARNS, and it is effectively zero. One 0.10 kUSD distribution on 2026-07-09 that the deployment registry records as a plumbing test, decaying toward zero absent further distributions. On this measure, the only like-for-like one in this block, Kerne is last by a wide margin. It is published first-class rather than in a footnote because a protocol that publishes the flattering model without the unflattering realization is doing the thing Kerne exists to oppose."}},"peers":[],"standing":{"modeled_vs_defillama_measured":null,"modeled_vs_kerne_measured":null,"realized_vs_kerne_measured":null,"note":"Three standings because the answer depends entirely on which comparison you make, and publishing only the favourable one would be the superlative again in longer form. The first two rank a Kerne MODEL against peer RECORDS and therefore flatter Kerne by construction. The third ranks realized against realized, one method, on chain, and it is the only one that answers what a depositor would have earned. Kerne is last on that one. Note also that the two measured columns for a single peer can disagree, because a trailing aggregator window and our 30 day on-chain window are not the same measurement; where they do, both are shown rather than the closer one."},"takeaway":"The strongest TRUE statement Kerne can make about its yield is that its published number is a model, it is computed from a formula anyone can rerun, it currently sits in the same range as what large peers realize, and Kerne has not yet paid it. The strongest FALSE statement would be any superlative about paying the most, which is unverifiable by construction and which Kerne removed from its own wallet-connect metadata on 2026-08-11 rather than defend. This block exists so the difference between a checkable figure and a category claim is machine-readable."},"verify":{"reserves":"Recompute the reserves from the on-chain reads listed under /api/por -> attestation.verifyVia, or read the hourly EIP-191 signed statement at /api/por/signed.","realized_yield":"For any Honesty Index row: read decimals() and convertToAssets(10**decimals) at from_block and at to_block, divide by 10**asset_decimals, and annualize the ratio over the real elapsed time between those two blocks.","signature":"When honesty_index.signed is true, the /api/honesty-index snapshot carries attestation_hash = 0x + sha256(utf8(signed_payload_canonical)) and an EIP-191 personal_sign over those raw 32 bytes. Hash the published bytes; do not re-serialize.","methodology":"https://kerne.fi/honesty-index#methodology"},"sources":{"identity":"https://kerne.fi/what-is-kerne","services":"https://kerne.fi/pricing","reserves":"https://kerne.fi/api/por","reserves_signed":"https://kerne.fi/api/por/signed","apy":"https://kerne.fi/api/apy","honesty_index":"https://kerne.fi/api/honesty-index","risk":"https://kerne.fi/api/risk-status","isolated_lending_market":"https://kerne.fi/api/euler","llms":"https://kerne.fi/llms.txt","llms_full":"https://kerne.fi/llms-full.txt"},"disclaimer":"Figures with a date or an as_of age. Live sections carry their own timestamp and fail closed when unreadable. This document is informational and is not financial advice. Kerne is not affiliated with any similarly named project."}