COOPENOMICS  v1
Кооперативная Экономика
Пространство имен processes

Типы процессов ledger2 (process_type). Подробнее...

Пространства имен

namespace  adjustment
 
namespace  branch
 
namespace  capital
 
namespace  expense
 
namespace  marketplace
 
namespace  migration
 
namespace  registrator
 
namespace  soviet
 
namespace  wallet
 

Функции

bool is_known_process (eosio::name process_type)
 Известно ли имя нитки процесса (см. PROCESS_REGISTRY). Подробнее...
 
constexpr bool process_registry_is_unique ()
 Уникальность имён в PROCESS_REGISTRY — проверяется на сборке. Подробнее...
 

Переменные

static constexpr eosio::name PROCESS_REGISTRY []
 Перечень известных имён процессов — для валидации в ledger2::apply. Подробнее...
 

Подробное описание

Типы процессов ledger2 (process_type).

Процесс — юридически значимая цепочка (process_type, process_hash, coopname) ссылок, размазанная по ончейн-записям (сущностным таблицам).

process_type называет контракт-инициатор при вызове ledger2::apply — имя нитки эмитится в цепь вместе с операцией, а не выводится по operation_code. Так процесс называет тот, кто нитку открыл: branch::accrue зачисляет членский взнос КУ внутри нитки поставки (p.mkt.supply) и возврата (p.mkt.return), хотя сама операция относится к экономике КУ. Пока имя выводилось по операции, у такой нитки было два претендента на название, и поставка подписывалась «Членские взносы кооперативного участка».

Поле process_type в OPERATION_REGISTRY (operations.hpp) — типовая принадлежность операции: контрактом не читается, бэкенду нужна только для записей, сделанных до появления эмиссии имени.

Один process_type может соответствовать нескольким operation_code — это явно разрешённая модель мульти-операционных процессов:

Одноактовые процессы: capital::IMPORT, capital::PROPERTY, capital::INVEST, soviet::AXN_CONVERT (process_type совпадает с operation_code по сути).

Имена — eosio::name, ≤ 12 символов (13-й символ с ограничением алфавита — избегаем). Формат: p.<contract>.<noun>:

  • p. префикс процесса (отличается от o. у operation_code),
  • <contract> — контракт-источник (reg, wal, cap, mkt, sov, mig).

Нейминг-рефакторинг 2026-04-24: файл переименован из process_types.hpp в processes.hpp, namespace process_typesprocesses::<contract>.

Функции

◆ is_known_process()

bool processes::is_known_process ( eosio::name  process_type)
inline

Известно ли имя нитки процесса (см. PROCESS_REGISTRY).

◆ process_registry_is_unique()

constexpr bool processes::process_registry_is_unique ( )
constexpr

Уникальность имён в PROCESS_REGISTRY — проверяется на сборке.

Переменные

◆ PROCESS_REGISTRY

constexpr eosio::name processes::PROCESS_REGISTRY[]
staticconstexpr
Инициализатор
= {
}
constexpr eosio::name CORRECTION
Ручная корректировка председателя (перевод между кошельками или откат операции).
Definition: processes.hpp:109
constexpr eosio::name FEES
Членские взносы КУ: зачисление в общий кошелёк при финализации заказа (o.brn.common),...
Definition: processes.hpp:81
constexpr eosio::name SPEND
Оплата расхода КУ из общего кошелька (o.brn.spend; команда председателя → выплата кассиром по реквизи...
Definition: processes.hpp:83
constexpr eosio::name AID
Материальная помощь доверенному КУ из его персонального кошелька (o.brn.aid; заявление → выплата касс...
Definition: processes.hpp:82
constexpr eosio::name WTHCAP
Возврат паевого из ЦПП «Благорост» в кошелёк пайщика (одноактовый).
Definition: processes.hpp:68
constexpr eosio::name IMPORT
Оффлайн-импорт пайщика Благорост (o.cap.drppre (опц.) + o.cap.import).
Definition: processes.hpp:62
constexpr eosio::name INVEST
Инвестиция в ЦПП Благорост (wallet-only 2001→9001).
Definition: processes.hpp:63
constexpr eosio::name DEBT
Займ пайщику (o.cap.lend; возврат o.cap.repay — в p.cap.rid на акте-2).
Definition: processes.hpp:64
constexpr eosio::name PREIMP
Первичный учёт РИД-взноса до перехода на электронный учёт (одноактовый, anchor = preimp register hash...
Definition: processes.hpp:67
constexpr eosio::name PROPERTY
Приём имущественного паевого взноса (одноактовый).
Definition: processes.hpp:66
constexpr eosio::name RID
Приём РИД в паевой фонд: o.cap.commit (коммиты) + o.cap.accept (акт-2) + опц. o.cap....
Definition: processes.hpp:65
constexpr eosio::name PGEXP
Пул программных расходов: пополнение из инвестиций программы (o.cap.pgtop, одноактовый).
Definition: processes.hpp:69
constexpr eosio::name PROPOSAL
Цикл расхода по СЗ: o.exp.blgadv|blgdir (платёж) + опц. o.exp.over (перерасход) + o....
Definition: processes.hpp:88
constexpr eosio::name RETURN
Гарантийный возврат имущества пайщиком — compensating forward к o.mkt.consum (o.mkt....
Definition: processes.hpp:75
constexpr eosio::name SUPPLY
Прямая поставка-приобретение имущества (5 операций: o.mkt.lock + o.mkt.unlock + o....
Definition: processes.hpp:74
constexpr eosio::name WRITEOFF
Утилизация скоропорта со склада КУ (o.mkt.wroff, по протоколу совета).
Definition: processes.hpp:76
constexpr eosio::name TRANSIT
Транзитный перенос остатков legacy (серия apply на кооп).
Definition: processes.hpp:99
constexpr eosio::name ACCEPT
Приём пайщика в кооператив (o.reg.payent + o.reg.putmin; для потока через совет — o....
Definition: processes.hpp:50
constexpr eosio::name REFUND
Возврат регистрационного взноса при отказе совета (o.reg.refund). Отдельный процесс: приём взноса пре...
Definition: processes.hpp:51
constexpr eosio::name AXN_CONVERT
Конвертация паевого RUB → делегатский ЧВ (одноактовый).
Definition: processes.hpp:93
constexpr eosio::name TAX
Перечисление удержанного налога в бюджет (заявка бухгалтера → платёж кассира → закрытие обязательства...
Definition: processes.hpp:94
constexpr eosio::name DEPOSIT
Внесение паевого взноса деньгами.
Definition: processes.hpp:56
constexpr eosio::name WITHDRAW
Возврат паевого взноса пайщику.
Definition: processes.hpp:57

Перечень известных имён процессов — для валидации в ledger2::apply.

Имя нитки называет контракт-инициатор при вызове apply, поэтому опечатка в имени иначе ушла бы в историю молча и процесс остался бы без названия на столе бухгалтера. Порядок записей не важен (линейный поиск).

Каждое добавленное сюда имя обязано иметь человеческое название в реестре процессов cooptypes/src/ledger2/processes.ts — иначе интерфейс покажет технический код вместо названия.