Files
coopops 33a414c7e7 fix(ledger2,wallet): возврат паевого взноса — BURN_BLOCKED из заблокированной суммы
Завершение возврата паевого (o.wal.wthcpl) переключено с TRANSFER
(SHARE_FUND_PAY → WITHDRAWALS_SINK) на новый WalletOp::BURN_BLOCKED:
заблокированная при createwthd сумма сжигается на кошельке пайщика,
получателя на цепи нет — деньги уходят из системы банковским переводом.

Чинит assertion 'walletop TRANSFER: недостаточно L3-средств' на
completewthd: после REQUEST_WITHDRAW (BLOCK) сумма лежит в L3.blocked,
а TRANSFER проверял L3.available.

Изменения:
- ledger2: WalletOp::BURN_BLOCKED=6 + case в walletop.cpp (списание из
  L2/L3 blocked). OPERATION_REGISTRY: o.wal.wthcpl с BURN_BLOCKED, без
  wallet_to. burn_pattern_correct обобщён на оба BURN-варианта.
- cooptypes: WalletOp += 'BURN_BLOCKED'; o.wal.wthcpl wallet_to=null.
- wallets.hpp: WITHDRAWALS_SINK (w.wal.wthdrw) помечен DEPRECATED —
  остаётся в реестре для исторических L2-балансов.
- standard p.wal.wthdrw: приведён к коду — одностадийный flow
  (pending → authorized → completed), без approvewthd.
- wallet::approvewthd удалён как dead code: action не в whitelist
  callback'ов, из createwthd создаётся повестка сразу с callback=authwthd.
  Удалены: .cpp, declaration в wallet.hpp, include в wallet.cpp, struct
  и action в abi_json/wallet.json.
- sov.authpkg.standard.yaml: упоминание approvewthd → authwthd.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-21 10:24:44 +00:00
..
2025-04-15 10:27:53 +05:00