Контрактыdocs/contracts/native-templates.md

Нативные финансовые шаблоны

В примерах pruv доступен через PATH. После локальной сборки используйте target/release/pruv.

Кроме компилятора ABI 3, Pruv предоставляет типизированные шаблоны запросов к кошельку. Типы AssetId, Owner и Quantity проверяют идентификаторы, канонические адреса и положительные целые суммы. Поддерживаются операции с токенами, торговля и NFT из фиксированного нативного профиля.

Шаблон задаёт одну операцию. Точные входы, комиссии, экземпляры State и доказательство Owner формирует нода. Финансовая relation доказывает её исполнение вместе с остальным блоком.

Сохраните запрос из справочника RPC в buy.native.json. Для торгового шаблона обязательно укажите точный minimum_output и valid_until, используя актуальный ID актива и высоту.

sh
pruv native check buy.native.json
pruv native build buy.native.json --out preview.json
curl --fail-with-body -H 'Content-Type: application/json' --data-binary @preview.json http://127.0.0.1:9601

Проверьте активного владельца, State, списание, минимум получения и потолок комиссии. Затем подготовьте отправку с полученным plan_id:

sh
pruv native submit buy.native.json --plan-id <reviewed-plan-id> --out submit.json
curl --fail-with-body -H 'Content-Type: application/json' --data-binary @submit.json http://127.0.0.1:9601

Pruv сохраняет все условия шаблона и привязывает их к проверенному плану ноды. Существующие файлы не перезаписываются. Создание JSON-файла не отправляет операцию; публикация запроса walletSubmitNative в локальную ноду запускает её авторизацию.

Шаблоны transfer_token и burn_token задают действия держателя, trade — ограниченную покупку или продажу, list_nft, buy_nft и cancel_listing — атомарное владение и расчёты по листингу. Фактические расходы ресурсов проверяются нодой по текущему State.

Команды pruv check, build, smt и verify продолжают работать с программами ABI 3. Их лимиты — 16 инструкций и два регистра состояния — остаются прежними.

Техническая документация ParanO(1)dПоведение консенсуса определяется исходным кодом.