VeilGovernance platform help, architecture, and VEIL DSL reference: справка по платформе, архитектуре и VEIL DSL
This guide covers the Veil Governance platform: foundations, modeling, analysis, governance workflows, multi-model verification, administration, AI tooling, and the VEIL DSL reference.
Эта справка охватывает платформу Veil Governance: основы платформы, моделирование, анализ, governance-workflow, мультимодельную верификацию, администрирование, AI-инструменты и справочник VEIL DSL.
VEIL platformПлатформа VEIL
Veil Governance is a formal process governance system. It represents a process as a finite-state model, enriches it with business and control semantics, and then runs structural, temporal, policy, and composition checks over the same model.
Veil Governance — это система формального управления процессной логикой. Она представляет процесс как конечный автомат, дополняет его бизнес- и контрольной семантикой, а затем выполняет над той же моделью структурные, временные, policy- и composition-проверки.
VEIL DSL, Builder, and Canvas describe states, transitions, controls, actors, evidence, services, vendors, and formal assertions.
VEIL DSL, Builder и Canvas описывают состояния, переходы, контроли, акторов, доказательства, сервисы, вендоров и формальные утверждения.
The engine parses the model, lowers it into graph structures, evaluates properties, and explains the result through errors, witnesses, graph views, coverage, and server-backed policy findings.
Движок разбирает модель, приводит её к графовым структурам, проверяет свойства и объясняет результат через ошибки, witness traces, граф, coverage и серверные policy-результаты.
Review, Policies, Dashboard, Report, Quick Check, and Projects turn a model into a governed verification workflow.
Review, Policies, Dashboard, Report, Quick Check и Projects превращают модель в управляемый verification-workflow.
The same model can produce passports, reports, certificates, public verification pages, and audit-grade artifacts.
Та же модель может выпускать паспорта, отчёты, сертификаты, страницы публичной проверки и audit-grade артефакты.
System architectureАрхитектура системы
The current product architecture is centered on one canonical process model that flows through authoring, analysis, governance, and evidence surfaces.
Текущая архитектура продукта построена вокруг одной канонической модели процесса, которая проходит через authoring, анализ, governance и evidence-поверхности.
| LayerСлой | Role in the systemРоль в системе | |
|---|---|---|
| AuthoringМоделирование | Users create or edit the canonical process description in VEIL DSL, Builder, or Canvas. | Пользователь создаёт или редактирует каноническое описание процесса в VEIL DSL, Builder или Canvas. |
| InterpretationИнтерпретация | The parser and IR layer normalize the model into machine, state, transition, assertion, and dependency structures. | Parser и IR-слой нормализуют модель в структуры machine, state, transition, assertion и dependency. |
| Verification coreЯдро верификации | Graph operations, property checking, semantics, and policy packs inspect reachability, liveness, coverage, and rule compliance. | Graph operations, property checker, semantics и policy packs анализируют достижимость, liveness, coverage и соответствие правилам. |
| Workflow and governanceWorkflow и governance | Review, Dashboard, Policies, Report, Quick Check, and Projects expose the model result to governance actors. | Review, Dashboard, Policies, Report, Quick Check и Projects выводят результат модели в governance-контур. |
| Evidence and publicationДоказательства и публикация | Passports, certificates, exports, and public verification routes turn analysis into shareable evidence. | Паспорта, сертификаты, выгрузки и публичные маршруты проверки превращают анализ в публикуемую доказательную базу. |
State machinesКонечные автоматы
A finite-state machine describes a process as a set of named states and allowed transitions between them. For VEIL, this is the mathematical backbone that makes verification possible.
Конечный автомат описывает процесс как набор именованных состояний и допустимых переходов между ними. Для VEIL это математический каркас, который делает возможной верификацию.
machine CustomerOnboarding {
entry: Start
states: Start, KYC, Approval, Opened, Rejected
state Opened terminal
state Rejected terminal
transition Start -> KYC
via: FrontOffice.collect()
transition KYC -> Approval
via: Compliance.review()
transition Approval -> Opened
via: Manager.approve()
}Why a state machine is usefulЗачем нужен конечный автомат
- Every important business situation becomes explicit.
- Allowed transitions are constrained and reviewable.
- The full process can be treated as a graph, not just as prose.
- Каждая важная бизнес-ситуация становится явной.
- Допустимые переходы ограничены и проверяемы.
- Весь процесс можно рассматривать как граф, а не только как текстовое описание.
What VEIL adds on topЧто VEIL добавляет сверху
- Roles, evidence, tags, services, vendors, time bounds, and control semantics.
- Assertions and policy packs over the same graph.
- Composition across multiple machines through exported states and dependencies.
- Роли, evidence, теги, сервисы, вендоры, временные границы и контрольную семантику.
- Assertions и policy packs над тем же графом.
- Composition нескольких машин через exported states и dependencies.
Verification and mathematicsВерификация и математика
VEIL goes beyond syntactic validation. It performs graph-based and property-based reasoning over the process model.
VEIL выходит за рамки синтаксической проверки. Он выполняет графовый и property-based анализ модели процесса.
| CapabilityВозможность | What VEIL checksЧто проверяет VEIL | Current method in the engineТекущий метод в движке | ||
|---|---|---|---|---|
| Structural correctnessСтруктурная корректность | Entry validity, terminal reachability, dead ends, duplicate transitions, timeout/retry consistency, SoD and evidence gaps. | Корректность entry, достижимость terminal, тупики, дубли переходов, согласованность timeout/retries, пробелы SoD и evidence. | Parser + analyzer + graph traversal. | Parser + analyzer + обход графа. |
| Reachability and safetyДостижимость и safety | Whether bad states are reachable and whether all relevant states can still reach a terminal outcome. | Достижимы ли плохие состояния и может ли каждое релевантное состояние дойти до terminal-исхода. | Graph reachability and fixed-point style checks such as SAT(AF terminal). | Проверки достижимости графа и fixed-point подходы вроде SAT(AF terminal). |
| Temporal assertionsВременные assertions | Precedence, response, safety, absence-before, obligation, exclusion, bounded response, and other temporal patterns. | Precedence, response, safety, absence-before, obligation, exclusion, bounded response и другие temporal-паттерны. | Property checker pattern handlers over the machine graph. | Pattern handlers property checker-а над графом машины. |
| Liveness and progressLiveness и progress | Unfair cycles, starvation, and unbounded waiting behavior. | Нечестные циклы, starvation и неограниченное ожидание. | SCC decomposition and liveness-to-safety style reduction. | SCC decomposition и сведение liveness к safety-проверке. |
| Multi-model compositionМультимодельная composition | Interface mismatches, product-graph deadlocks, and dependency consistency across machines. | Interface mismatch, тупики product graph и согласованность зависимостей между машинами. | Composed/product graph over exports and depends_on. | Составной/product graph поверх exports и depends_on. |
| Policy evaluationПроверка policy | Regulatory and governance rules over structure, semantics, and coverage. | Регуляторные и governance-правила над структурой, семантикой и coverage. | Rule packs plus semantic coverage scoring. | Rule packs плюс semantic coverage scoring. |
First stepsПервые шаги
For a typical author, the shortest productive path is: open a model, make the process semantics explicit, run analysis, then move into governance or multi-model verification if needed.
Для типичного автора самый короткий продуктивный путь такой: открыть модель, сделать семантику процесса явной, запустить анализ, а затем при необходимости перейти в governance или мультимодельную верификацию.
- Use Workspace for your active working set and Registry for the broader catalog.
- Open the process in the Editor and choose whether plain DSL, Builder, or Canvas is the fastest surface for the next change.
- Make the important semantics explicit: actors, evidence, controls, dependencies, time bounds, and assertions.
- Run Analyze and read Errors, Assertions, Coverage, and graph behavior together.
- Use Quick Check for one-off cross-model exploration or Projects for a persistent governed verification object.
- When the process enters approval workflow, continue from Review and the workflow panel instead of treating analysis and governance as separate tracks.
- Используйте Workspace для активного рабочего набора, а Registry — для широкого каталога процессов.
- Откройте процесс в Editor и выберите, что быстрее для следующего изменения: чистый DSL, Builder или Canvas.
- Сделайте важную семантику явной: акторов, evidence, контроли, зависимости, временные границы и assertions.
- Запустите Analyze и читайте Errors, Assertions, Coverage и поведение графа вместе, а не по отдельности.
- Используйте Quick Check для разовой межмодельной проверки или Projects для постоянного governed-объекта верификации.
- Когда процесс входит в approval-workflow, продолжайте работу через Review и workflow-panel, а не как через отдельный независимый контур.

Workspace and RegistryWorkspace и Registry
Workspace and Registry solve different jobs: one is optimized for your working set, the other for the platform-wide catalog.
Workspace и Registry решают разные задачи: один оптимизирован под рабочий набор пользователя, другой — под платформенный каталог.
WorkspaceWorkspace
- Recent and owned models.
- Fast access to draft work.
- Everyday author surface.
- Recent и owned models.
- Быстрый доступ к draft-работе.
- Повседневная author-поверхность.
RegistryRegistry
- Broader searchable catalog.
- Useful for finding existing processes.
- Feeds Quick Check and Projects selection flows.
- Более широкий searchable catalog.
- Удобен для поиска существующих процессов.
- Используется в selection-flow для Quick Check и Projects.
#/workspace working setрабочий набор#/registry process catalogкаталог процессов

Editor, Builder, CanvasEditor, Builder, Canvas
The model page is the core authoring surface. It combines raw VEIL DSL editing with structured authoring tools, graph visualization, diff/export, and workflow actions.
Страница модели — центральная authoring-поверхность. Она объединяет raw VEIL DSL editing со structured authoring tools, graph visualization, diff/export и workflow-actions.
| AreaЗона | What it doesЧто делает | |
|---|---|---|
| Metadata panel | Name, description, category, criticality, frameworks, and workflow context. | Name, description, category, criticality, frameworks и workflow-context. |
| DSL editor | Authoritative source for VEIL syntax and the final model text. | Авторитетный источник VEIL syntax и финального текста модели. |
| Builder | Structured authoring for states, transitions, and assertions. | Структурированное создание состояний, переходов и assertions. |
| Canvas | Visual graph editing with round-trip support back into DSL. | Визуальное редактирование графа с round-trip назад в DSL. |
| Action bar | Examples, Builder, Canvas, Diff, Analyze, Passport, Save, Export, and additional actions. | Examples, Builder, Canvas, Diff, Analyze, Passport, Save, Export и дополнительные actions. |



Analysis and graphАнализ и граф
After analysis, the editor exposes multiple result panes. Together they explain not only whether the model passes, but why it passes or fails. The editor now distinguishes fast local preview from final server-backed policy evaluation.
После анализа редактор открывает несколько result-pane. Вместе они объясняют не только проходит ли модель проверку, но и почему она проходит или падает. Теперь редактор также различает быстрый локальный preview и итоговую серверную policy-проверку.
| TabВкладка | UseИспользование | |
|---|---|---|
| Errors | Structural issues, parser errors, and final policy violations. The label above the list shows whether you are seeing local preview or fresh server-backed results. | Структурные проблемы, parser-ошибки и итоговые policy-нарушения. Метка над списком показывает, видите ли вы локальный preview или свежий серверный результат. |
| Assertions | Formal verification results, witnesses, highlights, and pattern outcomes. | Результаты formal verification, witnesses, highlights и pattern-outcomes. |
| Actors | Actor and execution-role view used to reason about responsibilities and SoD. | Представление акторов и execution-role для анализа обязанностей и SoD. |
| Versions | Version snapshots and saved evolution of the process. | Версионные снапшоты и сохранённая эволюция процесса. |
| History | Recent timeline and related activity around the process. | Recent timeline и связанная активность вокруг процесса. |
| Coverage | Shows which semantics are present or missing for stronger verification and policy evaluation. | Показывает, какие semantics присутствуют или отсутствуют для более сильной verification и policy-evaluation. |
Graph controlsGraph controls
- Layout modes and edge rendering modes.
- Filters by irreversible transitions, timeout, actor, and tags.
- Risk and color modes for different interpretations of the model.
- Zooming, legend, and export to SVG or PNG.
- Layout-modes и edge-rendering modes.
- Фильтры по irreversible transitions, timeout, actor и tags.
- Risk- и color-modes для разных интерпретаций модели.
- Zoom, legend и export в SVG или PNG.

Workflow actionsWorkflow-действия
The editor includes a workflow panel for moving a process through review and approval lifecycle. Available actions depend on process state and user role.
В редакторе есть workflow-panel для перемещения процесса через lifecycle review и approval. Доступные действия зависят от process-state и роли пользователя.
ReviewReview
Review is the role-aware queue for processes that already entered governance workflow. It is where reviewers, risk officers, compliance officers, and approvers work stage by stage instead of hunting for items one by one in the registry.
Review — это role-aware очередь для процессов, которые уже вошли в governance-workflow. Здесь reviewers, risk officers, compliance officers и approvers работают по стадиям, а не ищут задачи по одной в registry.
- The queue is driven by workflow status such as
in_review,risk_review, andcompliance_review. - Each item should be read together with its latest analysis, workflow history, and comments before a decision is made.
- Use Review for triage and throughput; use the editor when you need deep model context or corrective changes.
- Очередь строится по workflow-статусам, таким как
in_review,risk_reviewиcompliance_review. - Каждый элемент стоит читать вместе с последним analysis, workflow-history и комментариями перед принятием решения.
- Используйте Review для triage и управления потоком; используйте editor, когда нужен глубокий контекст модели или исправления.

PoliciesPolicies
Policies is more than a flat rule list. It is the operational surface for governed policy packs, process-context relevance preview, framework filtering, and custom rule creation.
Policies — это не просто плоский список правил. Это operational surface для governed policy packs, preview по Process Context, фильтрации по фреймворкам и создания custom rules.
Built-in rules are grouped into core VEIL packs and jurisdiction/regulation packs such as Basel, DORA, EU, UK, US, RU, UZ, JP, KR, and KZ.
Встроенные правила сгруппированы в core VEIL packs и jurisdiction/regulation packs, включая Basel, DORA, EU, UK, US, RU, UZ, JP, KR и KZ.
Filter by framework or process profile to focus on the rule subset relevant to a process or governance review.
Фильтруйте по framework или process profile, чтобы сосредоточиться на релевантном наборе правил для процесса или governance-review.
The page can preview which rules are active, insufficiently supported, or skipped for a declared process context before you open the model.
Страница может заранее показать, какие правила будут active, insufficiently supported или skipped для заданного Process Context ещё до открытия модели.
Rule cards and drill-down panels expose enforcement mode, confidence, references, and source details so the finding can be defended later.
Карточки правил и detail-панели показывают enforcement mode, confidence, ссылки и source details, чтобы результат можно было защищать позже.

DashboardDashboard
Dashboard is the governance summary layer: KPIs, violation concentrations, process heatmaps, lifecycle metrics, and recent activity.
Dashboard — это governance-summary layer: KPI, концентрация нарушений, process heatmaps, lifecycle-метрики и recent activity.
- Use it to understand platform-wide process posture, not to replace model-level analysis.
- Top violations and critical process views help triage where to investigate next.
- It is most useful together with Policies and Report.
- Используйте страницу, чтобы понимать platform-wide process posture, а не заменять ею model-level analysis.
- Top violations и critical process views помогают triage, куда идти дальше.
- Наиболее полезна в связке с Policies и Report.

ReportReport
Report generates regulator-facing or audit-facing summaries across processes. It supports markdown export and print flows for formal review.
Report формирует regulator-facing или audit-facing summaries по процессам. Он поддерживает markdown-export и print-flow для formal review.
- Use it for cross-process reporting rather than single-model debugging.
- Expect summary-level output with exportable artifacts.
- Используйте страницу для межпроцессной отчётности, а не для single-model debugging.
- Ожидайте summary-level output с exportable artifacts.

Quick CheckQuick Check
Quick Check is the fast multi-model compatibility run. It composes an ad hoc set of models, checks interface mismatches and deadlocks, builds a composed graph, and returns the result immediately without creating a long-lived entity.
Quick Check — это быстрый multi-model compatibility-run. Он композирует ad hoc набор моделей, проверяет interface mismatches и deadlocks, строит composed-graph и сразу возвращает результат без создания long-lived сущности.
#/compose temporary runвременный запуск2-5 selected modelsвыбранных моделейRole + Flag visibility gatedвидимость ограничена- Select between two and five models.
- Run composition verification and inspect the product graph, deadlocks, interface issues, and execution stats.
- Use the result to decide whether the relationship is viable at all.
- If the set deserves ongoing ownership and re-verification, move it into Projects.
- Выберите от двух до пяти моделей.
- Запустите composition-verification и изучите product-graph, deadlocks, interface issues и execution-stats.
- Используйте результат, чтобы понять, жизнеспособна ли связь вообще.
- Если набору нужен постоянный владелец и повторная верификация, перенесите его в Projects.
VEIL_V2_COMPOSE=false in deployment configuration.VEIL_V2_COMPOSE=false в конфигурации деплоя.
ProjectsProjects
Projects is the persistent multi-model verification surface. A Project stores the chosen models, optional dependency links, the latest verification result, and a saved certificate snapshot that becomes outdated if underlying models change.
Projects — это постоянная поверхность для мультимодельной верификации. Проект хранит выбранные модели, optional dependency-links, последний verification-result и сохранённый certificate snapshot, который устаревает, если меняются underlying-модели.
Quick CheckQuick Check
- Temporary compatibility run.
- No durable ownership record.
- Best for exploration and first-pass validation.
- Временный compatibility-run.
- Нет durable ownership-record.
- Лучше всего подходит для exploration и первого прохода валидации.
ProjectsProjects
- Persistent entity in storage.
- Re-verifiable over time.
- Best for governed multi-model verification.
- Постоянная сущность в storage.
- Можно переверифицировать со временем.
- Лучше всего подходит для governed multi-model verification.
| StatusСтатус | MeaningСмысл | |
|---|---|---|
| draft | Project exists, but the current verification run either has not been executed yet or still has critical composition issues. | Project существует, но текущий verification-run либо ещё не запускался, либо всё ещё содержит критические composition-issues. |
| verified | Verification completed successfully and the saved result is current. | Verification завершена успешно, и сохранённый результат актуален. |
| certified | UI and exports reserve this label for certification-grade project evidence where that status is used. | UI и exports резервируют этот label для certification-grade project evidence там, где используется такой статус. |
| outdated | One or more underlying models changed after verification, so the saved result must be renewed. | Одна или несколько underlying-моделей изменились после verification, поэтому сохранённый результат нужно обновить. |
VEIL_V2_PROJECTS=false.VEIL_V2_PROJECTS=false.

Public verificationПубличная верификация
Public verification is the external certificate-check page for model certificates. It lets someone validate a shared certificate ID without signing into the platform workspace.
Публичная верификация — это внешняя страница проверки сертификатов моделей. Она позволяет проверить shared certificate ID без входа в workspace платформы.
/verify/:id public certificate routeпубличный маршрут сертификата- Use it to check certificate status, model identity, hash, issue metadata, and verification timestamp.
- This route is for published certificate records from the certificate store, not for browsing project internals.
- It complements, rather than replaces, in-platform governance evidence and review history.
- Используйте её, чтобы проверить статус сертификата, идентичность модели, hash, issue metadata и время верификации.
- Этот маршрут предназначен для опубликованных certificate-records из certificate store, а не для просмотра внутренних данных проекта.
- Она дополняет, а не заменяет, in-platform governance-evidence и review-history.

AdminAdmin
Admin is the platform administration area for user management, shared catalogs, audit, AI configuration, and operational checks. This guide documents user-facing platform administration only.
Admin — это область администрирования платформы для user management, общих каталогов, аудита, настройки AI и operational-checks. Эта справка описывает только user-facing platform administration.
| SectionРаздел | PurposeНазначение | |
|---|---|---|
| UsersUsers | Manage platform users and their roles. | Управление пользователями платформы и их ролями. |
| CategoriesCategories | Shared process categories for organization and filtering. | Общие категории процессов для организации и фильтрации. |
| State TagsState Tags | Semantic labels used on states. | Семантические метки, используемые на состояниях. |
| Transition TagsTransition Tags | Semantic labels used on transitions. | Семантические метки, используемые на переходах. |
| RolesRoles | Catalog of roles for workflow and DSL usage. | Каталог ролей для workflow и DSL-использования. |
| ServicesServices | Shared service catalog used by models and dependency analysis. | Общий каталог сервисов для моделей и dependency-analysis. |
| VendorsVendors | Vendor catalog for third-party dependency modeling. | Каталог вендоров для моделирования third-party dependencies. |
| EvidenceEvidence | Evidence catalog used to standardize proof requirements. | Каталог evidence для стандартизации proof-requirements. |
| All ProcessesAll Processes | Administrative visibility into processes across the platform. | Административная видимость процессов по всей платформе. |
| Audit LogAudit Log | Operational trace of user and platform actions with filters and export. | Операционный след действий пользователей и платформы с фильтрами и export. |
| AI AssistantAI Assistant | Provider, model, limits, and health/configuration for AI-assisted workflows. | Провайдер, модель, лимиты и health/configuration для AI-assisted workflows. |
| Self TestSelf Test | Operational self-checks for the platform environment. | Операционные self-checks для окружения платформы. |


AI and BPMNAI и BPMN
The platform includes AI-assisted help across modeling workflows and a BPMN import path for bringing external process diagrams into VEIL-oriented authoring.
Платформа включает AI-assisted помощь в моделировании и BPMN-import path для переноса внешних process-diagrams в VEIL-oriented authoring.
- AI chat widget: contextual assistant around the current model and platform tasks.
- AI fix flows: help with correcting DSL and resolving verification issues.
- BPMN import: convert imported process structures into VEIL model workflows and summaries.
- Admin AI configuration: provider, model, limits, and connectivity live in Admin.
- AI chat widget: контекстный помощник по текущей модели и задачам платформы.
- AI fix flows: помощь в исправлении DSL и разборе verification-issues.
- BPMN import: конвертация импортированных BPMN-структур в VEIL-model workflows и summaries.
- Admin AI configuration: провайдер, модель, лимиты и connectivity находятся в Admin.

Roles, flags, limitsРоли, флаги, лимиты
Some parts of the product are universally visible after login, while others depend on role and feature flags. If a menu item seems missing, check role and flag conditions first.
Некоторые части продукта видны всем после входа, а другие зависят от роли и feature flags. Если какой-то пункт меню отсутствует, сначала проверьте роль и флаг.
| SurfaceПоверхность | Visibility notesУсловия видимости | |
|---|---|---|
| Home / Workspace / Registry / Editor | Core signed-in product flow. | Базовый signed-in flow продукта. |
| Review | Governance role surface. | Поверхность для governance-ролей. |
| Policies / Dashboard / Report | Governance-oriented and role-gated. | Governance-oriented и зависит от роли. |
| Quick Check | Requires an allowed role and VEIL_V2_COMPOSE. In current standard deployments the flag is on by default. | Требует подходящей роли и VEIL_V2_COMPOSE. В текущих стандартных деплоях флаг по умолчанию включён. |
| Projects | Requires an allowed role and VEIL_V2_PROJECTS. Demo users do not see this surface even when the flag is enabled. | Требует подходящей роли и VEIL_V2_PROJECTS. Пользователь demo не видит этот экран даже при включённом флаге. |
| Admin | Admin-only surface. | Поверхность только для admin. |
| LimitЛимит | Current behaviorТекущее поведение | |
|---|---|---|
| Quick Check selection | Choose between 2 and 5 models for a run. | Для запуска выбирается от 2 до 5 моделей. |
| Composition machine cap | Current composer limit is 5 machines. | Текущий лимит composer — 5 машин. |
| Per-machine state cap | Current composer limit is 50 states per machine. | Текущий лимит composer — 50 состояний на машину. |
| Product-state cap | Current product graph limit is 100000 product states. | Текущий лимит product graph — 100000 product states. |
| Composition timeout | Current composer timeout budget is 10 seconds. | Текущий composer timeout budget — 10 секунд. |
Language structureСтруктура языка
VEIL DSL models a process as a machine with states, transitions, metadata, optional assertions, and optional composition semantics.
VEIL DSL описывает процесс как machine с состояниями, переходами, metadata, optional assertions и optional composition-semantics.
machine Onboarding {
description: "Retail customer onboarding"
frameworks: Basel, DORA
entry: Start
states: Start, KYC, Approval, Opened, Rejected
phase: "Decision" states: Approval
state Opened terminal
state Rejected terminal
state Approval critical
barrier: KYC
transition Start -> KYC
via: CRM.capture()
transition KYC -> Approval
via: Compliance.review()
actor: ComplianceOfficer
sla: 1d
transition Approval -> Opened
via: CoreBanking.openAccount()
evidence: "Approved onboarding package"
transition Approval -> Rejected
via: Compliance.reject()
assert precedence: KYC before Opened
assert response: Approval leads_to Opened
assert reachability: always_terminal
}Machine attributesАтрибуты machine
| AttributeАтрибут | MeaningСмысл | |
|---|---|---|
description: "..." | Human description of the machine. | Человеко-читаемое описание machine. |
frameworks: Basel, DORA | Regulatory standards relevant to this process. | Регуляторные standards, релевантные процессу. |
entry: StateName | Initial state of the process. | Начальное состояние процесса. |
states: A, B, C | State declaration list used by the parser as the process universe. | Список состояний, который parser использует как universe процесса. |
phase: "Name" states: A, B | Optional logical grouping of states. | Необязательная логическая группировка состояний. |
path_sla: 24h | End-to-end time budget for the overall path. | End-to-end time budget для общего пути. |
assert ... | Formal property to verify against the machine. | Формальное свойство для проверки machine. |
exports: Approved, Done | States exposed to other machines during composition. | Состояния, экспортируемые другим machine при composition. |
depends_on: Provider.Done | Cross-machine dependency on an exported state. | Межмашинная зависимость от экспортированного состояния. |
State attributesАтрибуты state
| SyntaxСинтаксис | MeaningСмысл | |
|---|---|---|
state Done terminal | Marks a terminal/final state. | Отмечает terminal/final state. |
state Approval critical | Marks a critical state. | Отмечает critical state. |
description: "..." | State-level description. | State-level описание. |
tag: risk_gate / tags: a b | Semantic labels attached to the state. | Семантические метки, привязанные к состоянию. |
requires: KYC, Review | Required predecessor states. | Обязательные предшествующие состояния. |
barrier: ControlA, ControlB | Barrier states that must be satisfied. | Barrier-состояния, которые должны быть удовлетворены. |
evidence: "Signed memo" | Evidence requirement attached to the state. | Требование к evidence на уровне состояния. |
evidence_freshness: 6m | Freshness window for the evidence. | Период актуальности evidence. |
service: "payment-gateway" | Service dependency associated with the state. | Service-dependency, связанная с состоянием. |
vendor: "Stripe" | Vendor dependency associated with the state. | Vendor-dependency, связанная с состоянием. |
Transition attributesАтрибуты transition
| SyntaxСинтаксис | MeaningСмысл | |
|---|---|---|
via: Service.call() | Required execution clause. Every transition must have it. | Обязательный execution-clause. У каждого transition он должен быть. |
timeout: 30s | Timeout budget for the transition. | Timeout-budget для перехода. |
outcomes: ok -> Done timeout -> Escalated | Outcome branches attached to the transition. | Outcome-ветви, привязанные к переходу. |
compensate: Service.rollback() | Compensation action for reversible rollback logic. | Compensation-action для rollback-логики. |
compensate: none | Explicitly states there is no compensation path. | Явно указывает, что compensation-path отсутствует. |
irreversible: Label | Marks the step as irreversible. | Помечает шаг как irreversible. |
requires: KYC | Transition-level prerequisites. | Prerequisites на уровне transition. |
requires: PointOfNoReturn("...") | Special point-of-no-return declaration. | Специальное объявление point-of-no-return. |
barrier: A, B | Barrier prerequisites on the transition. | Barrier-prerequisites на переходе. |
description: "..." | Transition-level description. | Описание перехода. |
retries: 3 | Retry count. | Количество retry. |
on_exhaust: Failed | Target state when retries are exhausted. | Целевое состояние при исчерпании retry. |
actor: ComplianceOfficer | Actor executing the step. | Актор, исполняющий шаг. |
sla: 5d | Declared SLA for the step. | Объявленный SLA шага. |
tags: dual_approval audit_required | Transition semantic tags. | Семантические transition-tags. |
sod: SecondaryRole | Segregation of duties requirement. | Требование segregation of duties. |
role: Approver | Execution role for the step. | Execution-role для шага. |
path_sla: 24h | Path-level SLA annotation on the transition. | Path-level SLA annotation на переходе. |
evidence: "..." | Evidence requirement for the transition. | Требование к evidence на переходе. |
evidence_freshness: 30d | Freshness rule for that evidence. | Правило актуальности этого evidence. |
service: "payment-gateway" | Service dependency for the step. | Service-dependency шага. |
vendor: "Stripe" | Vendor dependency for the step. | Vendor-dependency шага. |
transition * -> Failed | Wildcard transition from any state to a specific target. | Wildcard-переход из любого состояния к конкретной цели. |
AssertionsAssertions
VEIL supports named assertion patterns as the recommended form, and also accepts a set of compact alternative forms for compatibility. Named patterns are preferred for new models.
VEIL поддерживает именованные assertion-паттерны как рекомендуемый формат, а также принимает ряд компактных альтернативных форм для совместимости. Для новых моделей предпочтительны именованные паттерны.
| PatternПаттерн | Accepted syntaxПринимаемый синтаксис | MeaningСмысл | |
|---|---|---|---|
| precedence | assert precedence: A before B | A must be visited before B. | A должно быть посещено до B. |
| response | assert response: A leads_to B | If A occurs, B must eventually follow. | Если произошло A, то B должно когда-либо наступить. |
| safety | assert safety: never A | A must be unreachable. | A должно быть недостижимо. |
| absence_before | assert absence_before: A never_before B | A must not appear on any path to B. | A не должно встречаться ни на одном пути к B. |
| reachability | assert reachability: always_terminal | Every relevant state must be able to reach a terminal. | Из каждого релевантного состояния должен быть путь к terminal. |
| bounded_response | assert bounded_response: A leads_to B within 5d | A must lead to B within a declared time bound. | A должно приводить к B в пределах заданного time-bound. |
| obligation | assert obligation: A implies_eventual B | If A is in scope, B is inevitable. | Если A находится в scope, B становится неизбежным. |
| exclusion | assert exclusion: A excludes B | A and B must not occur together on one run. | A и B не должны встречаться вместе в одном run. |
| progress | assert progress: A is_reachable_fairly | A must not be starved forever by unfair cycles. | A не должно быть навсегда вытеснено unfair-cycle. |
Compact alternative forms (also accepted)Компактные альтернативные формы (также принимаются)
| Compact formКомпактная форма | InterpretationИнтерпретация | |
|---|---|---|
assert must_precede: A before B | Compact precedence form. | Компактная форма precedence. |
assert impossible: B without A | Compact form for precedence. | Компактная форма precedence. |
assert always: A implies B | Implication form. | Форма implication. |
assert eventually: terminal | Eventual-terminal form. | Форма eventual-terminal. |
CompositionComposition
Composition is how VEIL verifies multiple machines together. The current product uses exports and depends_on to express the interface between machines.
Composition — это способ, которым VEIL верифицирует несколько machine вместе. Текущий продукт использует exports и depends_on для выражения интерфейса между machine.
machine Provider {
entry: Start
states: Start, Approved
state Approved terminal
exports: Approved
transition Start -> Approved
via: Provider.approve()
}
machine Consumer {
entry: Start
states: Start, Done
state Done terminal
depends_on: Provider.Approved
transition Start -> Done
via: Consumer.complete()
}exportsdeclares which states are visible to other machines.depends_ondeclares a dependency on an exported state in another machine.- Quick Check and Project verification use this composition logic to find deadlocks and interface mismatches.
exportsобъявляет, какие состояния видны другим machine.depends_onобъявляет зависимость от экспортированного состояния другой machine.- Quick Check и Project verification используют эту composition-логику, чтобы находить deadlock и interface mismatch.
TroubleshootingTroubleshooting
| ProblemПроблема | Likely causeВероятная причина | What to checkЧто проверить | ||
|---|---|---|---|---|
| Quick Check or Projects is missingНе видно Quick Check или Projects | Role restriction, or the deployment explicitly disabled a feature that is normally on by default. | Ограничение по роли или явное отключение фичи в деплое, которая обычно включена по умолчанию. | VEIL_V2_COMPOSE, VEIL_V2_PROJECTS, deployment .env, current user role | |
| Project became outdatedProject стал outdated | An underlying model changed after verification. | Одна из underlying-моделей изменилась после verification. | Re-run project verification. | Перезапустите verification проекта. |
| Transition error: missing viaОшибка перехода: missing via | Every transition requires via:. | У каждого transition обязательно должно быть via:. | Check all transitions, including wildcard transitions. | Проверьте все transitions, включая wildcard-переходы. |
| Policy result looks incomplete until analysis finishesPolicy-результат выглядит неполным, пока анализ не завершился | You are still seeing local preview, not the final server-backed policy result. | Вы всё ещё видите локальный preview, а не финальный серверный policy-результат. | Wait for analysis completion and check the source label above Errors. Final compliance findings come from the server response. | Дождитесь завершения анализа и проверьте метку источника над Errors. Итоговые compliance-результаты приходят из серверного ответа. |
| Interface mismatch in compositionInterface mismatch в composition | A dependency points to a state that is not exported or not reachable as expected. | Зависимость указывает на состояние, которое не экспортируется или недостижимо ожидаемым образом. | Review exports and depends_on together. | Проверьте вместе exports и depends_on. |
| Assertion result is confusingНепонятен результат assertion | The graph, witness, and coverage context are being read separately. | Граф, witness и coverage читаются отдельно друг от друга. | Read Assertions together with graph highlight, Coverage, and the policy section. | Читайте Assertions вместе с graph highlight, Coverage и policy-секцией. |
GlossaryГлоссарий
| TermТермин | DefinitionОпределение | |
|---|---|---|
| VEIL DSL | The domain-specific language used to model processes in Veil Governance. | Специализированный язык, на котором моделируются процессы в Veil Governance. |
| Assertion | A formal property checked against the model. | Формальное свойство, проверяемое на модели. |
| Coverage | A view of how much semantics is present for meaningful policy and property evaluation. | Представление о том, насколько модель семантически насыщена для meaningful policy и property-evaluation. |
| Process Context | Declared business context for the model: framework choice, process profile, subject type, channel, product, and related fields used to route governed policy packs. | Заданный бизнес-контекст модели: выбранные фреймворки, профиль процесса, тип субъекта, канал, продукт и связанные поля, которые используются для routing governed policy packs. |
| Quick Check | Temporary multi-model verification run. | Временный запуск мультимодельной верификации. |
| Project | Persistent multi-model verification entity with status and certificate behavior. | Постоянная сущность мультимодельной верификации со статусом и поведением сертификата. |
| Outdated | A saved verification result is no longer current because the underlying model set changed. | Сохранённый verification-result больше не актуален, потому что underlying-набор моделей изменился. |
| Exports / depends_on | The current interface mechanism for cross-machine composition. | Текущий механизм интерфейса для межмашинной composition. |
| Passport | A consolidated process evidence package. | Консолидированный evidence-package по процессу. |
