Skip to main content

Referencia chybových kódov BiatecCLAMM

Tento dokument poskytuje komplexnú referenciu všetkých chybových kódov používaných v systéme smart kontraktov BiatecCLAMM. Pochopenie týchto chybových kódov pomôže vývojárom debugovať problémy a poskytovať lepšie používateľské skúsenosti.

Formát chybového kódu

Chybové kódy sledujú konzistentný formát:

  • Krátke kódy: 3-4 znakové kódy s prefixom E_ alebo ERR-
  • Príklad: E_CONFIG, ERR-LOW-VER

Chyby jadrových kontraktov

BiatecClammPool

Chyby konfigurácie a inicializácie

KódPopisPríčinaRiešenie
E_CONFIGNeshoda konfiguračnej appPoskytnuté config app ID nezodpovedá registrovanému configOverte správnu config app referenciu
E_UPDATERNeautorizovaný updaterOdosielateľ nie je autorizovaná updater adresaPoužite správny updater účet
E_SENDERNeautorizovaný odosielateľOdosielateľ nie je autorizovaný pre túto operáciuPoužite autorizovaný účet (tvorca, executive, atď.)
E_PRICE_MAXBootstrap už bol zavolanýNie je možné bootstrapovať dvakrátPool už je inicializovaný
E_PRICENeplatná cenaCena musí byť väčšia ako nulaNastavte platné cenové hodnoty
E_FEEBootstrap už je dokončenýPoplatok už je nastavený, nie je možné bootstrapovať znovuPool už je inicializovaný
E_PAUSEDSlužby pozastavenéProtokol je momentálne pozastavený adminomPočkajte na unpause alebo kontaktujte admina
E_STAKING_PRICENeplatná cena staking pooluSame-asset pooly vyžadujú plochý cenový rozsahNastavte priceMin === priceMax pre staking pooly
E_PRICE_RANGENeplatný cenový intervalŠtandardné pooly vyžadujú priceMin < priceMaxPoužite rozširujúce cenové hranice
E_ASSET_ORDERNeplatné poradie aktívAsset A musí byť menšie ako Asset BZaistite assetA.id < assetB.id

Chyby likvidity a bilancií

KódPopisPríčinaRiešenie
E_ZERO_LIQNulová likviditaLikvidita je nula pred delenímZaistite, že pool má likviditu
E_ZERO_DENOMNulový denominátorDenominátor v kalkulácii je nulaSkontrolujte vstupné parametre
ERR-LIQ-DROPPrekročený pokles likvidityLikvidita klesla viac ako povolenéSkontrolujte zaokrúhľovacie chyby alebo nekonzistenciu stavu
ERR-TOO-MUCHNadmerný výberPokus o výber viac ako je dostupnéZnížte množstvo výberu
ERR-BALANCE-CHECK-1Kontrola bilancií zlyhala (Asset A)Bilancia Asset A nekonzistentnáSkontrolujte stav poolu
ERR-BALANCE-CHECK-2Kontrola bilancií zlyhala (Asset B)Bilancia Asset B nekonzistentnáSkontrolujte stav poolu

Chyby identity a verifikácie

KódPopisPríčinaRiešenie
ERR-INVALID-CONFIGNeplatná config appConfig app nezodpovedá pool's registrovanému configPoužite správnu config app referenciu
ERR-WRONG-IDENTNesprávny identity providerIdentity provider nezodpovedá configPoužite správny identity provider
ERR-USER-LOCKEDPoužívateľský účet zamknutýPoužívateľský účet je zamknutý identity provideromKontaktujte podporu na odomknutie
ERR-LOW-VERVerifikačná trieda príliš nízkaPoužívateľská verifikačná trieda pod minimomDokončite požadovanú KYC verifikáciu
ERR-HIGH-VERVerifikačná trieda mimo hranícVerifikačná trieda presahuje maximum (4)Skontrolujte identity provider dáta

Swap chyby

KódPopisPríčinaRiešenie
E_ASSET_ANeplatné Asset AAsset A nezodpovedá pool's Asset APoužite správne aktívum
E_ASSET_BNeplatné Asset BAsset B nezodpovedá pool's Asset BPoužite správne aktívum
Swaps not allowed in staking poolsPokus o swap v staking poolNie je možné swapovať v same-asset poolochPoužite add/remove liquidity namiesto
Minimum to receive is not metSpustená ochrana pred slippageVýstup menej ako minimumToReceiveZvýšte toleranciu slippage alebo skúste znovu

BiatecConfigProvider

KódPopisPríčinaRiešenie
Only addressUdpater setup in the config can update applicationNeautorizovaný pokus o updateOdosielateľ nie je updaterPoužite autorizovanú updater adresu
E_PAUSEDSlužby pozastavenéProtokol pozastavený globálnePočkajte na admina na unpause

BiatecIdentityProvider

KódPopisPríčinaRiešenie
Configuration app does not matchNeshoda configPoskytnutý config nezodpovedá registrovanémuPoužite správnu config app
Only addressUdpater setup in the config can update applicationNeautorizovaný updateNie je autorizovaný updaterPoužite updater účet
ERR_PAUSEDSlužby pozastavenéProtokol momentálne pozastavenýPočkajte na unpause
FeeMultiplierBase must be set properlyNeplatný fee multiplierFee multiplier musí rovnať SCALENastavte feeMultiplierBase na SCALE (1000000000)
Verification class out of boundsNeplatná verifikačná triedaTrieda musí byť 0-4Použite platnú verifikačnú triedu

BiatecPoolProvider

KódPopisPríčinaRiešenie
E_CONFIGNeshoda configPoskytnutý config nezodpovedá registrovanémuPoužite registrovanú config app
Configuration app does not matchNeshoda config appPoskytnutá nesprávna config appOverte config app ID
Only addressUdpater setup in the config can update applicationNeautorizovaný updateOdosielateľ nie je autorizovaný updaterPoužite updater účet
ERR_PAUSEDSlužby pozastavenéProtokol je pozastavenýPočkajte na admin akciu
Pool already registeredDuplicitná registrácia pooluPool alebo config už existujeSkontrolujte existujúce pooly

Bežné chybové scenáre

Zlyhania vytvorenia poolu

Chyba: E_STAKING_PRICE

Príčina: Vytváranie staking poolu (assetA === assetB) s priceMin !== priceMax
Riešenie: Pre staking pooly nastavte priceMin = priceMax = 1000000000 (SCALE)

Chyba: E_CONFIG v deployPool

Príčina: Pokus o deploy poolu s neregistrovanou config app
Riešenie: Použite kanonickú config app registrovanú s pool providerom

Swap zlyhania

Chyba: ERR-LOW-VER

Príčina: Verifikačná trieda používateľa nedostatočná pre požiadavky poolu
Riešenie: Dokončite dodatočnú KYC/identity verifikáciu na zvýšenie triedy

Chyba: Swaps not allowed in staking pools

Príčina: Pokus o swap v B-ALGO alebo B-USDC staking pool
Riešenie: Použite distributeExcessAssets pre odmeny, iba add/remove liquidity

Chyba: Minimum to receive is not met

Príčina: Cena sa pohybovala nepriaznivo počas transakcie, spustená slippage ochrana
Riešenie: Zvýšte minimumToReceive toleranciu alebo počkajte na lepšiu cenu

Zlyhania poskytovania likvidity

Chyba: E_ZERO_LIQ

Príčina: Pokus o operáciu keď pool má nulovú likviditu
Riešenie: Najprv inicializujte pool s likviditou

Chyba: ERR-LIQ-DROP

Príčina: Kalkulácia likvidity viedla k neprijateľnému poklesu
Riešenie: Skontrolujte kalkulačné chyby alebo zaokrúhľovacie problémy

Zlyhania administratívnych operácií

Chyba: E_UPDATER alebo E_SENDER

Príčina: Pokus o vykonanie admin funkcie bez správnej autorizácie
Riešenie: Použite určený admin účet (addressUpdater, addressExecutiveFee, atď.)

Chyba: E_PAUSED

Príčina: Protokol-wide pause je aktívny
Riešenie: Počkajte na admina na unpause služieb, alebo kontaktujte protokol governance

Osvedčené postupy spracovania chýb

Pre vývojárov

  1. Vždy skontrolujte Config: Zaistite, že všetky app referencie (config, identity, pool provider) sú správne
  2. Validujte vstupy: Skontrolujte asset ID, množstvá a slippage parametre pred odoslaním
  3. Spracujte pause stav: Skontrolujte, či je protokol pozastavený pred pokusom o operácie
  4. Použite Try-Catch: Obalte contract volania v try-catch a parsujte chybové správy
  5. Logujte chyby: Logujte plný chybový kontext pre debugging

Pre používateľov

  1. Identity verifikácia: Zaistite, že váš účet má dostatočnú verifikačnú triedu
  2. Slippage tolerancia: Nastavte vhodnú slippage ochranu pre volatilné trhy
  3. Typ poolu: Pochopte rozdiel medzi liquidity poolmi a staking poolmi
  4. Stav účtu: Overte, že váš účet nie je zamknutý pred transakciami

Debugging tipy

Nájdenie chybového kontextu

Keď nastane chyba:

  1. Skontrolujte transakčné logy: Použite Algorand indexer na zobrazenie detailov transakcie
  2. Overte app referencie: Zaistite, že všetky application ID zodpovedajú očakávaným hodnotám
  3. Skontrolujte globálny stav: Prečítajte globálny stav config/identity/pool apps
  4. Inšpekujte box storage: Overte, že box referencie sú zahrnuté v transakcii
  5. Prezrite nedávne zmeny: Skontrolujte, či bol protokol nedávno aktualizovaný alebo pozastavený

Bežné mis-konfigurácie

  • Nesprávna Config App: Použitie testnet config na mainnet alebo naopak
  • Chýbajúce Box referencie: Zabudnutie zahrnúť požadované box referencie
  • Nesprávne app poradie: App musia byť v správnom poradí vo foreign apps array
  • Nedostatočné fees: Nedostatočné fees pre komplexné operácie vyžadujúce zvýšenie opcode budget

Obnova z chýb

Pre obnoviteľné chyby

Väčšina chýb je obnoviteľná opravou problému a opakovaním:

  • Identity verifikácia: Dokončite požadované KYC
  • Config chyby: Použite správne app referencie
  • Slippage: Upravte toleranciu a skúste znovu
  • Pause: Počkajte na obnovenie služieb

Pre neobnoviteľné chyby

Niektoré chyby vyžadujú admin intervenciu:

  • Účet zamknutý: Kontaktujte identity providera
  • Protokol pozastavený: Počkajte na governance rozhodnutie
  • Contract bugy: Nahláste vývojárom

Podpora

Ak narazíte na chybu, ktorá nie je dokumentovaná tu alebo potrebujete pomoc:

  1. GitHub Issues: Otvorte issue s plnými detailmi chyby
  2. Dokumentácia: Skontrolujte docs/ priečinok pre príručky
  3. Audit správy: Prezrite audits/ priečinok pre známe problémy
  4. Komunita: Pripojte sa ku komunite kanálom pre podporu

Posledná aktualizácia: 2025-10-28 Verzia: 1.0 Spravované: BiatecCLAMM tím