From 9d50061107236679eb3d1d9c43162416a31d258e Mon Sep 17 00:00:00 2001 From: Rihards Gailums Date: Tue, 19 May 2026 16:45:24 +0000 Subject: [PATCH] workspace skeleton: UAPF 2.2.0 layout + L0 enterprise index MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Step 1 of the vk-gramatvediba build. - normative folder structure: enterprise/ , domains/ , processes/ - enterprise/enterprise.yaml — L0 enterprise index (validates against the UAPF 2.2.0 enterprise-index schema; packages[] filled in later steps) - README and docs/conventions.md — VK function-group to UAPF level mapping, composition rule, transcription-fidelity policy - CODEOWNERS placeholder and .gitignore (built .uapf archives excluded) Targets UAPF specification v2.2.0. --- .gitignore | 10 +++++++ CODEOWNERS | 7 +++++ README.md | 53 +++++++++++++++++++++++++++++++++ docs/conventions.md | 60 ++++++++++++++++++++++++++++++++++++++ domains/.gitkeep | 0 enterprise/enterprise.yaml | 11 +++++++ processes/.gitkeep | 0 tools/.gitkeep | 0 8 files changed, 141 insertions(+) create mode 100644 .gitignore create mode 100644 CODEOWNERS create mode 100644 README.md create mode 100644 docs/conventions.md create mode 100644 domains/.gitkeep create mode 100644 enterprise/enterprise.yaml create mode 100644 processes/.gitkeep create mode 100644 tools/.gitkeep diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..fd011ce --- /dev/null +++ b/.gitignore @@ -0,0 +1,10 @@ +# Build artifacts — packages are exported to .uapf archives for the engine +dist/ +*.uapf + +# Tooling +node_modules/ +.cache/ + +# OS +.DS_Store diff --git a/CODEOWNERS b/CODEOWNERS new file mode 100644 index 0000000..a40493e --- /dev/null +++ b/CODEOWNERS @@ -0,0 +1,7 @@ +# Change governance for the vk-gramatvediba UAPF workspace. +# UAPF specification 2.2.0 recommends review rules (CODEOWNERS) on the +# workspace SSOT. Replace the placeholder below with the ProcessGit +# owners / teams responsible for accounting-process review. + +# * @AI_Sandbox/process-office +# /processes/fg3/ @AI_Sandbox/process-office diff --git a/README.md b/README.md new file mode 100644 index 0000000..1f18a0c --- /dev/null +++ b/README.md @@ -0,0 +1,53 @@ +# vk-gramatvediba + +UAPF workspace for the **Valsts Kase / Vienotais pakalpojumu centrs (VPC) +accounting processes** — a transcription of the six published accounting +function groups (FG1–FG6) into the Unified Algorithmic Process Format. + +Built for the Latvian AI regulatory sandbox proof-of-concept. It demonstrates +algorithmising a real, published public-sector process description as +version-controlled, machine-executable, auditable UAPF packages. + +## Conformance + +This workspace targets **UAPF specification v2.2.0** +(https://github.com/UAPFormat/UAPF-specification). It follows the normative +folder structure (`enterprise/`, `domains/`, `processes/`), the package layout +(`uapf.yaml` plus cornerstone folders), and the `includes`-based composition +rule — higher levels reference lower levels and executable artifacts are never +copied. + +## Layout + +| Path | Level | Contents | +|------|-------|----------| +| `enterprise/enterprise.yaml` | L0 | Enterprise index — references every domain and package | +| `domains/` | L1 | Domain compositions (the accounting domain) | +| `processes/` | L2–L4 | Function-group, sub-process and atomic executable packages | +| `tools/` | — | Workspace tooling (package archive build, transcription) | +| `docs/` | — | Conventions and proof-of-concept documentation | + +See `docs/conventions.md` for how the VK function groups map onto UAPF levels. + +## Source material + +The packages here are transcribed from the Valsts Kase publication +*Grāmatvedības uzskaites procesu apraksts* (created 2024-06-03, updated +2026-03-27): six process schemas and six process registers. The transcription +preserves step identity, responsibility (RACI), the systems used, and SLAs; it +does not alter the documented process. Where a schema and its register +disagree, the discrepancy is recorded rather than silently resolved. + +## Status + +**Skeleton.** Workspace structure and the L0 enterprise index are in place. +The six function-group packages and the FG3 executable build follow in +subsequent steps. + +## Scope note + +This proof-of-concept validates **methodology and auditability** — that a +public-sector process can be expressed as conformant, executable, traceable +UAPF, and run with a complete audit chain. Accounting bookkeeping is not, in +itself, a high-risk AI use case under the EU AI Act; the sandbox value is the +algorithmisation and audit method, not the domain. diff --git a/docs/conventions.md b/docs/conventions.md new file mode 100644 index 0000000..c5667f0 --- /dev/null +++ b/docs/conventions.md @@ -0,0 +1,60 @@ +# Conventions — VK accounting processes mapped to UAPF levels + +## Level mapping + +| UAPF level | VK concept | Location | +|-----------|-----------|----------| +| L0 — enterprise index | The VK / VPC accounting workspace as a whole | `enterprise/enterprise.yaml` | +| L1 — domain | The accounting domain (*grāmatvedības uzskaite*) | `domains/gramatvediba/` | +| L2 — function group | Each function group, FG1–FG6 | `processes/fgN/` | +| L3 — sub-process variant | A sub-process that decomposes into variants | `processes/fgN-x/` (only where needed) | +| L4 — atomic executable | A single runnable process (BPMN + DMN + resources) | `processes/fgN-x/` | + +The six function groups: + +| FG | Domain | +|----|--------| +| FG1 | Long-term non-financial assets and inventory accounting | +| FG2 | Financial assets accounting | +| FG3 | Liabilities and expenses accounting | +| FG4 | Remuneration liabilities accounting | +| FG5 | Receivables and revenue accounting | +| FG6 | Report preparation for publication | + +L3 is used only where a sub-process genuinely decomposes into variants. An +atomic sub-process — for example FG3-1, *Rēķina saņemšana par +precēm/pakalpojumiem* (invoice receipt) — is an L4 package included directly +by its function-group (L2) package. + +## Composition + +Higher-level packages reference lower-level ones through the manifest +`includes` field; they never copy BPMN, DMN or CMMN artifacts (UAPF +specification 2.2.0, §05 — no-duplication rule). The VK schemas link heavily +between function groups; those cross-function-group links are likewise +expressed as `includes` references. + +## Source of truth and engine consumption + +The Git repository is the single source of truth. Each package is a +human-readable, diff-able directory: `uapf.yaml` plus cornerstone folders +(`bpmn/`, `dmn/`, `cmmn/`, `resources/`) and `metadata/`. + +The UAPF reference engine (`uapf-engine`) consumes packages as `.uapf` +archives. A package directory is exported to a `.uapf` archive — a zip that +preserves file paths and the manifest — for execution and validation. The +archives are build artifacts; they are not committed to the repository. + +## Transcription fidelity + +Packages are transcribed from the published VK process schemas (flowcharts) +and process registers (step tables). The transcription preserves: + +- step identifiers (the VK `process nr.` numbering); +- responsibility — RACI columns map to BPMN lanes (Iestāde / Nodarbinātais / VPC); +- the information system each step uses — mapped to a capability binding; +- execution deadlines (SLAs) and the data objects each step produces. + +The transcription does not change the documented process. Where a schema and +its register disagree on sequence, the discrepancy is recorded in the package +documentation rather than silently resolved. diff --git a/domains/.gitkeep b/domains/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/enterprise/enterprise.yaml b/enterprise/enterprise.yaml new file mode 100644 index 0000000..ed4cd67 --- /dev/null +++ b/enterprise/enterprise.yaml @@ -0,0 +1,11 @@ +kind: uapf.enterprise.index +level: 0 +enterprise: + id: vk.gramatvediba + name: Valsts Kase — Grāmatvedības uzskaite + description: >- + Enterprise index for the Valsts Kase / Vienotais pakalpojumu centrs (VPC) + accounting workspace — a UAPF transcription of the six published accounting + function groups (FG1–FG6). Domain and process packages are registered here + as they are added to the workspace. +packages: [] diff --git a/processes/.gitkeep b/processes/.gitkeep new file mode 100644 index 0000000..e69de29 diff --git a/tools/.gitkeep b/tools/.gitkeep new file mode 100644 index 0000000..e69de29