feat(omnl): HYBX-BATCH-001 package, rail scripts, regulatory docs, CI
Some checks failed
Deploy to Phoenix / deploy (push) Has been cancelled
Some checks failed
Deploy to Phoenix / deploy (push) Has been cancelled
- Add OMNL/CBK Indonesia submission and audit binder docs, manifests, attestations - Add scripts/omnl transaction-package pipeline, LEI/PvP helpers, jq/lib fixtures - Update entity master data, MASTER_INDEX, TODOS, dbis-rail docs and rulebook - Add proof_package/regulatory skeleton and transaction package zip + snapshot JSON - validate-omnl-rail workflow, forge-verification-proxy tweak, .gitignore hygiene - Bump smom-dbis-138 (cronos verify docs/scripts) and explorer-monorepo (SPA + env report) Made-with: Cursor
This commit is contained in:
@@ -1,8 +1,8 @@
|
||||
# TODOs — Consolidated Task List
|
||||
|
||||
**Last Updated:** 2026-03-06
|
||||
**Last Updated:** 2026-03-24
|
||||
**Last verification run:** 2026-03-06 (full + optional) — completable ✅, validate-config ✅, check-contracts 59/59 ✅, PMM pool balances ✅ (Pool 1: 2M/2M), preflight ✅, token-aggregation build ✅, deployer-gas dry-run ✅, fund-ccip dry-run ✅, test-all-contracts (unit) 457 passed ✅, E2E flow dry-run ✅, E2E routing ✅ (37 domains, 0 failed), operator script --skip-backup ✅ (NPMplus RPC fix + Blockscout verify). **Mint + add-liquidity** run 2026-03-06: 1M each minted, 500k each added; V2 done. **Next-steps check:** See [NEXT_STEPS_LIST.md](NEXT_STEPS_LIST.md) completion check; B.1/B.2/B.3 blocked (CRO/WEMIX/LINK).
|
||||
**Purpose:** Single checklist of all next steps and remaining tasks. **Full execution order (multiple routes + liquidity):** [EXECUTION_CHECKLIST_MULTIPLE_ROUTES_AND_LIQUIDITY.md](EXECUTION_CHECKLIST_MULTIPLE_ROUTES_AND_LIQUIDITY.md). **Additional paths (registry, LiFi/Jumper, Etherlink, 13×13):** [ADDITIONAL_PATHS_AND_EXTENSIONS.md](../04-configuration/ADDITIONAL_PATHS_AND_EXTENSIONS.md). **Dotenv/markdown audit (required info, gaps, recommendations):** [DOTENV_AND_MARKDOWN_AUDIT_GAPS_AND_RECOMMENDATIONS.md](DOTENV_AND_MARKDOWN_AUDIT_GAPS_AND_RECOMMENDATIONS.md). Source of truth for the full list: [NEXT_STEPS_AND_REMAINING_TODOS.md](NEXT_STEPS_AND_REMAINING_TODOS.md). **Token deployments remaining:** [TOKEN_CONTRACT_DEPLOYMENTS_REMAINING.md](../11-references/TOKEN_CONTRACT_DEPLOYMENTS_REMAINING.md). **Routing / swap / cross-chain:** [TASKS_ROUTING_SWAP_CROSSCHAIN.md](TASKS_ROUTING_SWAP_CROSSCHAIN.md) (A1–A5, B1–B8, C1–C8, D1–D3, E1–E2). **Verified list (LAN/Operator):** [REQUIRED_FIXES_GAPS_AND_DEPLOYMENTS_LIST.md](REQUIRED_FIXES_GAPS_AND_DEPLOYMENTS_LIST.md) — run bash/curl to confirm; doc updated 2026-03-03.
|
||||
**Purpose:** Single checklist of all next steps and remaining tasks. **Indonesia / HYBX-BATCH-001 zip (4.995 ship-ready):** [HYBX-BATCH-001 — transaction package ship-ready](#hybx-batch-001--transaction-package-ship-ready-4995) below. **Full execution order (multiple routes + liquidity):** [EXECUTION_CHECKLIST_MULTIPLE_ROUTES_AND_LIQUIDITY.md](EXECUTION_CHECKLIST_MULTIPLE_ROUTES_AND_LIQUIDITY.md). **Additional paths (registry, LiFi/Jumper, Etherlink, 13×13):** [ADDITIONAL_PATHS_AND_EXTENSIONS.md](../04-configuration/ADDITIONAL_PATHS_AND_EXTENSIONS.md). **Dotenv/markdown audit (required info, gaps, recommendations):** [DOTENV_AND_MARKDOWN_AUDIT_GAPS_AND_RECOMMENDATIONS.md](DOTENV_AND_MARKDOWN_AUDIT_GAPS_AND_RECOMMENDATIONS.md). Source of truth for the full list: [NEXT_STEPS_AND_REMAINING_TODOS.md](NEXT_STEPS_AND_REMAINING_TODOS.md). **Token deployments remaining:** [TOKEN_CONTRACT_DEPLOYMENTS_REMAINING.md](../11-references/TOKEN_CONTRACT_DEPLOYMENTS_REMAINING.md). **Routing / swap / cross-chain:** [TASKS_ROUTING_SWAP_CROSSCHAIN.md](TASKS_ROUTING_SWAP_CROSSCHAIN.md) (A1–A5, B1–B8, C1–C8, D1–D3, E1–E2). **Verified list (LAN/Operator):** [REQUIRED_FIXES_GAPS_AND_DEPLOYMENTS_LIST.md](REQUIRED_FIXES_GAPS_AND_DEPLOYMENTS_LIST.md) — run bash/curl to confirm; doc updated 2026-03-03.
|
||||
|
||||
**Quick run:** From anywhere (no LAN): `./scripts/run-completable-tasks-from-anywhere.sh`. Before Chain 138 deploy: `./scripts/deployment/preflight-chain138-deploy.sh [--cost]`. **Chain 138 next steps (all in one):** `./scripts/deployment/run-all-next-steps-chain138.sh [--dry-run] [--skip-mirror] [--skip-register-gru] [--skip-verify]` — preflight → mirror+pool → register c* as GRU → verify. From LAN with secrets: `./scripts/run-all-operator-tasks-from-lan.sh [--deploy] [--create-vms]`. **E2E flows (full parallel):** `./scripts/run-e2e-flow-tasks-full-parallel.sh [--dry-run]` — [TASKS_TO_INCREASE_ALL_E2E_FLOWS](TASKS_TO_INCREASE_ALL_E2E_FLOWS.md).
|
||||
|
||||
@@ -29,6 +29,40 @@
|
||||
|
||||
---
|
||||
|
||||
## HYBX-BATCH-001 — transaction package ship-ready (4.995)
|
||||
|
||||
**Goal:** `transaction-package-HYBX-BATCH-001.zip` passes `bash scripts/omnl/check-transaction-package-4995-readiness.sh --strict <unzipped-root>` and `python3 scripts/omnl/verify-transaction-package-commitment.py <unzipped-root>`.
|
||||
|
||||
**Standard:** [INDONESIA_PACKAGE_4_995_EVIDENCE_STANDARD.md](../04-configuration/mifos-omnl-central-bank/INDONESIA_PACKAGE_4_995_EVIDENCE_STANDARD.md). **Build:** `scripts/omnl/build-transaction-package-zip.sh` (optional `HYBX_LEDGER_FILE` for production ledger). **Live snapshot:** `scripts/omnl/omnl-transaction-package-snapshot.sh`.
|
||||
|
||||
### Strict gate (automated checklist)
|
||||
|
||||
| ID | Task | Notes |
|
||||
|----|------|--------|
|
||||
| **H1** | **Live OMNL snapshot** | Run `omnl-transaction-package-snapshot.sh` with Fineract credentials; `omnl_transaction_package_snapshot.json` must have `snapshotMeta.source == "live-api"`. Rebuild zip so Volume A Section 2 contains this file. |
|
||||
| **H2** | **Snapshot freshness** | Per policy: `generatedAtUtc` within staleness window (standard default ≤ 72h before transmission). Refresh snapshot + rebuild if stale. |
|
||||
| **H3** | **ISO 20022 vault manifest** | `Appendix/ISO20022_VAULT_MANIFEST_HYBX-BATCH-001.json`: replace all `REPLACE_*` placeholders (e.g. `REPLACE_WITH_VAULT_OBJECT_SHA256`) with real `sha256` / `storageLocation` / `messageId`; ≥1 message; align Section 4 index with ids. |
|
||||
| **H4** | **Institutional attestation JSON** | Package must include `Appendix/INSTITUTIONAL_PACKAGE_SCORE_ATTESTATION_4_995.json` (from `.EXAMPLE`, completed). `targetScorePerCategory` and each of 12 `categoryScores` ≥ 4.995; `certifiedBy` ≥ 2; finalize `legalFinality.counselMemoPdfSha256` and `independentAudit.reportPdfSha256` (no `REPLACE_`). Build picks up `proof_package/regulatory/…` or set `PACKAGE_4995_ATTESTATION_JSON`. |
|
||||
| **H5** | **Regulatory references annex** | `Appendix/INDONESIA_REGULATORY_REFERENCES_ANNEX.md`: remove every `INSTITUTION: insert`; each row has instrument id + URL or internal doc id. |
|
||||
| **H6** | **Re-verify** | Unzip rebuilt package; run strict script + commitment verify (commands in Validation commands below). |
|
||||
|
||||
### Standard categories (complete even when script is green)
|
||||
|
||||
| ID | Task | Notes |
|
||||
|----|------|--------|
|
||||
| **H7** | **Master proof manifest** | `Appendix/INDONESIA_MASTER_PROOF_MANIFEST.md`: every sections 1–15 primary artifact path exists in zip; no TODO/TBD on mandatory index lines. |
|
||||
| **H8** | **Ledger provenance** | If 215k-row file is system-of-record, document in attestation (`provenance.hybxLedgerSource` / equivalent); build with `HYBX_LEDGER_FILE` when binding production extract. |
|
||||
| **H9** | **AML / PPATK schedule** | `Appendix/AML_PPATK_EVIDENCE_SCHEDULE_HYBX-BATCH-001.md`: complete through section 6; sanctions / PEP / STR-SAR done or documented nil with approver name/date. |
|
||||
| **H10** | **BI reporting crosswalk** | `Appendix/BI_REPORTING_CROSSWALK_HYBX-BATCH-001.md`: no blank cells (instrument id, obligation, frequency, owner). |
|
||||
| **H11** | **MoF memo** | `Appendix/MOF_ALIGNMENT_MEMO_HYBX-BATCH-001.md`: signed with role/title + date; hash/e-sign per process. |
|
||||
| **H12** | **OJK prudential bridge** | `Appendix/OJK_PRUDENTIAL_BRIDGE_HYBX-BATCH-001.md`: mappings filled; N/A only where justified. |
|
||||
| **H13** | **Legal finality** | Meet `LEGAL_FINALITY_COUNSEL_MEMO_REQUIREMENTS_HYBX-BATCH-001.md`; counsel memo PDF or hash in SUBREG; ties to H4. |
|
||||
| **H14** | **Independent audit (Section 15)** | Meet `INDEPENDENT_AUDIT_4_995_REQUIREMENTS_HYBX-BATCH-001.md`; report hash in manifest/attestation; ties to H4. |
|
||||
| **H15** | **TSA / QES (if policy requires)** | Run `apply-qes-tsa-to-staging.sh` with real `TSA_URL` / `QES_SIGN_*` before zipping, or document waiver in attestation. |
|
||||
| **H16** | **Final archive** | One clean `build-transaction-package-zip.sh` after all sources final; ship the exact tree that passed H6. |
|
||||
|
||||
---
|
||||
|
||||
## First (before any Chain 138 deploy)
|
||||
|
||||
Verified 2026-03-06: preflight ✅, 0a balance check ✅ (script runs; WETH/cUSDT/cUSDC = 0), config validation ✅, on-chain 59/59 ✅. Re-run 0a/0/0c before each deploy.
|
||||
@@ -237,6 +271,8 @@ Cron: `schedule-daily-weekly-cron.sh --install`; NPMplus backup: `schedule-npmpl
|
||||
| On-chain (Chain 138) | `./scripts/verify/check-contracts-on-chain-138.sh` |
|
||||
| E2E routing | `./scripts/verify/verify-end-to-end-routing.sh` |
|
||||
| **Test all contracts (before deploy)** | `./scripts/deployment/test-all-contracts-before-deploy.sh` — use `--dry-run` / `--no-match "Fork|Mainnet|Integration|e2e"` / `--alltra` |
|
||||
| **HYBX package commitment** | `python3 scripts/omnl/verify-transaction-package-commitment.py <unzipped-root>` | After unzip |
|
||||
| **HYBX package 4.995 strict** | `bash scripts/omnl/check-transaction-package-4995-readiness.sh --strict <unzipped-root>` | All H1–H6 must pass |
|
||||
|
||||
---
|
||||
|
||||
@@ -277,4 +313,5 @@ Run 1, 4, 5, 6 in parallel from anywhere; 2, 3, 7, 8, 9 when LAN/RPC and secrets
|
||||
- [NEXT_STEPS_FOR_YOU.md](NEXT_STEPS_FOR_YOU.md) — your next actions
|
||||
- [NEXT_STEPS_OPERATOR.md](NEXT_STEPS_OPERATOR.md) — operator runbook
|
||||
- [TODO_TASK_LIST_MASTER.md](TODO_TASK_LIST_MASTER.md) — fixes, gas, verification, 1–139 index
|
||||
- [INDONESIA_PACKAGE_4_995_EVIDENCE_STANDARD.md](../04-configuration/mifos-omnl-central-bank/INDONESIA_PACKAGE_4_995_EVIDENCE_STANDARD.md) — HYBX-BATCH-001 4.995 criteria; [scripts/omnl/README.md](../../scripts/omnl/README.md) — snapshot, zip build, strict check
|
||||
- [RECOMMENDED_COMPLETION_CHECKLIST.md](../07-ccip/RECOMMENDED_COMPLETION_CHECKLIST.md) — CCIP/mapper checklist
|
||||
|
||||
@@ -0,0 +1,49 @@
|
||||
---
|
||||
documentId: AML-PPATK-EVIDENCE-HYBX-BATCH-001
|
||||
settlementRef: HYBX-BATCH-001
|
||||
beneficiaryOfficeId: 22
|
||||
targetScore: 4.995
|
||||
version: "1.0"
|
||||
---
|
||||
|
||||
# AML / PPATK Evidence Schedule — HYBX-BATCH-001
|
||||
|
||||
## 1. Risk classification
|
||||
|
||||
| Factor | Assessment | Owner | Date |
|
||||
|--------|------------|-------|------|
|
||||
| Jurisdiction (beneficiary) | Indonesia | Compliance | |
|
||||
| Amount | USD 1,000,000,000.00 | Compliance | |
|
||||
| Product | Cross-border settlement / OMNL ledger | Compliance | |
|
||||
| Risk rating | **INSTITUTION TO COMPLETE** | MLRO | |
|
||||
|
||||
## 2. Sanctions screening
|
||||
|
||||
| List / vendor | Scope | Batch ref | Result | Evidence ref (SUBREG) |
|
||||
|-----------------|-------|-----------|--------|------------------------|
|
||||
| (e.g. OFAC / UN / local) | Parties + banks | HYBX-BATCH-001 | **COMPLETE** | |
|
||||
|
||||
## 3. PEP exposure
|
||||
|
||||
| Party | PEP flag | Rationale | Approver |
|
||||
|-------|----------|-----------|----------|
|
||||
| (complete) | Y/N | | |
|
||||
|
||||
## 4. STR / suspicious reporting
|
||||
|
||||
| Jurisdiction | Filed? | Reference or nil justification | Approver + date |
|
||||
|--------------|--------|----------------------------------|-----------------|
|
||||
| Indonesia / PPATK | | **No STR** — documented rationale OR **STR ref** | |
|
||||
|
||||
## 5. Record retention
|
||||
|
||||
Retention period: **≥ 10 years** (or stricter policy). Storage: SUBREG + archive id **\_\_\_\_\_**.
|
||||
|
||||
## 6. Certification (required for 4.995)
|
||||
|
||||
**I certify §§1–5 are complete and accurate for HYBX-BATCH-001.**
|
||||
|
||||
| Role | Name | Date (UTC) |
|
||||
|------|------|------------|
|
||||
| MLRO / Compliance lead | | |
|
||||
| Second line (if required) | | |
|
||||
@@ -0,0 +1,43 @@
|
||||
---
|
||||
documentId: BANK-KANAYA-OFFICE-RUNBOOK
|
||||
entity: Bank Kanaya
|
||||
jurisdiction: Indonesia
|
||||
omnlOfficeId: 22
|
||||
externalId: BANK-KANAYA-ID
|
||||
settlementRef: HYBX-BATCH-001
|
||||
version: "1.0"
|
||||
---
|
||||
|
||||
# Bank Kanaya — OMNL Office Runbook
|
||||
|
||||
## 1. Identity
|
||||
|
||||
| Field | Value |
|
||||
|--------|--------|
|
||||
| **Office name** | Bank Kanaya (as created in OMNL) |
|
||||
| **officeId** | **22** (canonical for this programme; confirm with `GET /offices` in your tenant) |
|
||||
| **externalId** | `BANK-KANAYA-ID` |
|
||||
| **Script** | `scripts/omnl/omnl-office-create-bank-kanaya.sh` (idempotent; `DRY_RUN=1` first) |
|
||||
|
||||
## 2. Settlement context
|
||||
|
||||
- **HYBX-BATCH-001:** USD 1,000,000,000.00 multilateral net beneficiary leg for Bank Kanaya on OMNL books.
|
||||
- **PvP / clearing:** See [PvP_MULTILATERAL_NET_SETTLEMENT_BANK_KANAYA.md](PvP_MULTILATERAL_NET_SETTLEMENT_BANK_KANAYA.md).
|
||||
|
||||
## 3. Audit and reconciliation
|
||||
|
||||
Use dynamic office id:
|
||||
|
||||
```bash
|
||||
OFFICE_ID=22 bash scripts/omnl/omnl-audit-packet-office20.sh
|
||||
OFFICE_ID=22 bash scripts/omnl/omnl-monitor-office20-movement.sh
|
||||
```
|
||||
|
||||
Output directories use `audit-office22-*` when `OFFICE_ID=22`.
|
||||
|
||||
## 4. Snapshot for regulator package
|
||||
|
||||
```bash
|
||||
OUT_DIR=. bash scripts/omnl/omnl-transaction-package-snapshot.sh
|
||||
# copies omnl_transaction_package_snapshot.json to repo root or proof_package per your workflow
|
||||
```
|
||||
@@ -0,0 +1,23 @@
|
||||
---
|
||||
documentId: BI-REPORTING-CROSSWALK-HYBX-BATCH-001
|
||||
settlementRef: HYBX-BATCH-001
|
||||
regulator: Bank Indonesia
|
||||
targetScore: 4.995
|
||||
version: "1.0"
|
||||
---
|
||||
|
||||
# BI Reporting Crosswalk — HYBX-BATCH-001
|
||||
|
||||
**Rule:** No blank cells below for 4.995. Use **N/A** only where a cell is not applicable and cite **why** in the same cell.
|
||||
|
||||
| # | Obligation (short name) | Legal / BI instrument id | Frequency | System / form | Owner role | Last submitted (or N/A + why) |
|
||||
|---|-------------------------|---------------------------|-----------|---------------|------------|--------------------------------|
|
||||
| 1 | Payment system reporting (if applicable) | | | | | |
|
||||
| 2 | Cross-border position (if applicable) | | | | | |
|
||||
| 3 | Other BI report (specify) | | | | | |
|
||||
|
||||
**Certification:** Compliance officer confirms table matches **current** BI obligations for Bank Kanaya.
|
||||
|
||||
| Name | Title | Date UTC |
|
||||
|------|-------|----------|
|
||||
| | | |
|
||||
@@ -0,0 +1,30 @@
|
||||
---
|
||||
documentId: GOVERNANCE-REGULATOR-EXPLAINERS
|
||||
settlementRef: HYBX-BATCH-001
|
||||
network: DBIS / OMNL / HYBX
|
||||
version: "1.0"
|
||||
---
|
||||
|
||||
# Governance, Regulator Explainers, and Legal Framework (Summary)
|
||||
|
||||
## 1. Actors
|
||||
|
||||
| Actor | Role |
|
||||
|-------|------|
|
||||
| **HYBX** | Exchange / liquidity venue (narrative for this batch) |
|
||||
| **DBIS** | Clearing / netting cycle operator |
|
||||
| **OMNL** | Settlement ledger (Fineract); M1 liabilities — **LEI** `98450070C57395F6B906` ([lei.info](https://lei.info/98450070C57395F6B906)); **D&O roster:** [OMNL_BANKING_DIRECTORS_AND_LEI.md](OMNL_BANKING_DIRECTORS_AND_LEI.md) |
|
||||
| **Bank Kanaya** | Beneficiary institution (office 22) |
|
||||
|
||||
## 2. Legal framing (template)
|
||||
|
||||
Institution counsel documents:
|
||||
|
||||
- Contractual settlement finality between participants
|
||||
- Choice of law and dispute resolution
|
||||
- Regulatory notifications completed or scheduled
|
||||
|
||||
## 3. Technical cross-reference
|
||||
|
||||
- [DBIS_RAIL_RULEBOOK_V1.md](../../dbis-rail/DBIS_RAIL_RULEBOOK_V1.md)
|
||||
- [DBIS_SETTLEMENT_RULEBOOK.md](../../dbis-rail/DBIS_SETTLEMENT_RULEBOOK.md)
|
||||
@@ -0,0 +1,52 @@
|
||||
---
|
||||
documentId: HYBX-BATCH-001-OPERATOR-CHECKLIST
|
||||
settlementRef: HYBX-BATCH-001
|
||||
beneficiaryOfficeId: 22
|
||||
version: "1.0"
|
||||
---
|
||||
|
||||
# HYBX-BATCH-001 — Operator checklist (complete flow)
|
||||
|
||||
Run from **repo root** unless noted. Load **`omnl-fineract/.env`** or **`.env`** for API steps.
|
||||
|
||||
## A. Fineract / OMNL (Bank Kanaya)
|
||||
|
||||
1. [ ] **Create office** (idempotent):
|
||||
`DRY_RUN=1 bash scripts/omnl/omnl-office-create-bank-kanaya.sh` then run without `DRY_RUN`.
|
||||
Confirm **`officeId`** (target **22**) matches `OFFICE_ID_KANAYA` for PvP script.
|
||||
2. [ ] **Resolve GL:** `bash scripts/omnl/resolve_ids.sh` (1410, 2100, 2410).
|
||||
3. [ ] **PvP clearing JEs:**
|
||||
`DRY_RUN=1 bash scripts/omnl/omnl-pvp-post-clearing-bank-kanaya.sh` → review → `DRY_RUN=0` with correct `OFFICE_ID_HO` / `OFFICE_ID_KANAYA` / `AMOUNT_MINOR_UNITS`.
|
||||
Record JE ids in `OMNL_API_PUSH_STATUS.md` / SUBREG.
|
||||
4. [ ] **Live snapshot (Section 2):**
|
||||
`OUT_DIR=. bash scripts/omnl/omnl-transaction-package-snapshot.sh`
|
||||
Confirm `snapshotMeta.source` is **`live-api`**.
|
||||
|
||||
## B. Regulatory package (zip)
|
||||
|
||||
5. [ ] **Production ledger (optional):** export system-of-record CSV → `HYBX_LEDGER_FILE=/path/to.csv` (control sum must be **1000000000.00** USD unless `ALLOW_LEDGER_CONTROL_MISMATCH=1`).
|
||||
6. [ ] **Reproducible timestamps (optional):** `EVIDENCE_GENERATED_AT_UTC=2026-03-24T12:00:00Z`.
|
||||
7. [ ] **TSA/QES (optional):** `TSA_URL=...` and/or `QES_SIGN_CERT` / `QES_SIGN_KEY`; or `APPLY_REAL_QES_TSA=1`.
|
||||
8. [ ] **Attestation (4.995):** complete `proof_package/regulatory/INSTITUTIONAL_PACKAGE_SCORE_ATTESTATION_4_995.json` from `.EXAMPLE.json`; fill regulatory annex (no `INSTITUTION: insert`); finalize ISO vault SHA-256s.
|
||||
9. [ ] **Build:**
|
||||
`bash scripts/omnl/build-transaction-package-zip.sh`
|
||||
(or `OUT_ZIP=./transaction-package-HYBX-BATCH-001.zip` …)
|
||||
10. [ ] **Integrity:** unzip →
|
||||
`python3 scripts/omnl/verify-transaction-package-commitment.py <unzipped-root>`
|
||||
11. [ ] **Structural gate:**
|
||||
`bash scripts/omnl/check-transaction-package-4995-readiness.sh <unzipped-root>`
|
||||
12. [ ] **4.995 strict gate (submission):**
|
||||
`bash scripts/omnl/check-transaction-package-4995-readiness.sh --strict <unzipped-root>`
|
||||
|
||||
## C. Transmission
|
||||
|
||||
13. [ ] Complete **`INDONESIA_TRANSMISSION_READINESS_CHECKLIST.md`** (triple-check + encryption + SUBREG hash).
|
||||
|
||||
## D. CI (developers)
|
||||
|
||||
- `bash scripts/omnl/run-transaction-package-ci-smoke.sh` — fast build + verify + structural check (no Fineract).
|
||||
|
||||
## Reference
|
||||
|
||||
- [INDONESIA_PACKAGE_4_995_EVIDENCE_STANDARD.md](INDONESIA_PACKAGE_4_995_EVIDENCE_STANDARD.md)
|
||||
- [scripts/omnl/README.md](../../../scripts/omnl/README.md)
|
||||
@@ -0,0 +1,34 @@
|
||||
---
|
||||
documentId: INDEPENDENT-AUDIT-4-995-REQ-HYBX-BATCH-001
|
||||
settlementRef: HYBX-BATCH-001
|
||||
targetScore: 4.995
|
||||
version: "1.0"
|
||||
---
|
||||
|
||||
# Independent Audit — 4.995 Requirements (Section 15)
|
||||
|
||||
## 1. Acceptable evidence
|
||||
|
||||
One of:
|
||||
|
||||
- **A.** Agreed-upon procedures (AUP) report from **independent** accounting firm, **or**
|
||||
- **B.** Limited assurance report on **ledger population + Merkle** + **OMNL snapshot** consistency.
|
||||
|
||||
## 2. Scope minimum
|
||||
|
||||
- Row count and control sum vs `hybx_batch_001_ledger.csv`
|
||||
- Merkle root recomputation per Annex B
|
||||
- `omnl_transaction_package_snapshot.json` **live-api** staleness check
|
||||
|
||||
## 3. Manifest
|
||||
|
||||
| Field | Value |
|
||||
|-------|--------|
|
||||
| Firm name | |
|
||||
| Report date (UTC) | |
|
||||
| PDF in zip? Y/N | |
|
||||
| SHA-256 | |
|
||||
|
||||
## 4. 4.995 gate
|
||||
|
||||
Firm name + report date + hash must be in attestation JSON `independentAudit` block.
|
||||
@@ -0,0 +1,31 @@
|
||||
---
|
||||
documentId: INDONESIA-AUDIT-COMPLIANCE-STANDARD
|
||||
settlementRef: HYBX-BATCH-001
|
||||
standardLabel: audit-proof-triple-checked
|
||||
version: "1.0"
|
||||
---
|
||||
|
||||
# Audit and Compliance Standard — HYBX Package
|
||||
|
||||
## 1. Standard
|
||||
|
||||
Packages labelled **audit-proof** must satisfy:
|
||||
|
||||
1. **Traceability:** Every exhibit path appears in `audit_manifest.json`.
|
||||
2. **Integrity:** `HASH_NOTARIZATION_ANCHOR.txt` commitment matches recomputation (exclusions per anchor).
|
||||
3. **Separation of duties:** Maker-checker on Fineract postings where policy requires.
|
||||
4. **Retention:** SUBREG + zip + verification logs retained per policy.
|
||||
|
||||
## 2. Roles
|
||||
|
||||
| Role | Responsibility |
|
||||
|------|----------------|
|
||||
| Operations | Ledger, Merkle, snapshot accuracy |
|
||||
| Compliance | AML, regulatory annex, PPATK alignment |
|
||||
| Legal | Finality, authorisations, submission letter |
|
||||
| Security | TSA/QES, key custody |
|
||||
|
||||
## 3. Tools
|
||||
|
||||
- `scripts/omnl/build-transaction-package-zip.sh`
|
||||
- `scripts/omnl/verify-transaction-package-commitment.py`
|
||||
@@ -0,0 +1,31 @@
|
||||
---
|
||||
documentId: INDONESIA-BI-MOF-PPATK-CHECKLIST
|
||||
settlementRef: HYBX-BATCH-001
|
||||
targetScore: 4.995
|
||||
version: "2.0"
|
||||
---
|
||||
|
||||
# BI / MoF / PPATK — Evidence Checklist
|
||||
|
||||
Cross-check: [INDONESIA_PACKAGE_4_995_EVIDENCE_STANDARD.md](INDONESIA_PACKAGE_4_995_EVIDENCE_STANDARD.md) | [INDONESIA_TRANSMISSION_READINESS_CHECKLIST.md](INDONESIA_TRANSMISSION_READINESS_CHECKLIST.md)
|
||||
|
||||
| # | Item | Owner | Evidence path | 4.995 | Done |
|
||||
|---|------|-------|---------------|-------|------|
|
||||
| 1 | Settlement authorisation | Legal | Section 1 / SUBREG | §10–11 | ☐ |
|
||||
| 2 | OMNL account / office | Ops | Section 2 snapshot **live-api** | §3 | ☐ |
|
||||
| 3 | Clearing / netting | Ops | Section 5 | §1 | ☐ |
|
||||
| 4 | Full ledger + Merkle | Tech | Sections 6–7 + verifier | §2 | ☐ |
|
||||
| 5 | PvP / finality narrative | Ops/Legal | Sections 10–11, 14 + counsel memo | §10 | ☐ |
|
||||
| 6 | AML / PPATK | Compliance | Section 12 + `AML_PPATK_EVIDENCE_SCHEDULE_*` §6 | §5 | ☐ |
|
||||
| 7 | BI reporting crosswalk | Compliance | `BI_REPORTING_CROSSWALK_*` (no blank cells) | §7 | ☐ |
|
||||
| 8 | MoF alignment memo | Legal | `MOF_ALIGNMENT_MEMO_*` signed | §8 | ☐ |
|
||||
| 9 | OJK prudential bridge | Risk | `OJK_PRUDENTIAL_BRIDGE_*` | §9 | ☐ |
|
||||
| 10 | Hash manifest + anchor | Tech | `00_Cover` audit + anchor | §6 | ☐ |
|
||||
| 11 | Optional TSA / QES | Security | `TSA_*` / `QES_*` or waiver in attestation | §6 | ☐ |
|
||||
| 12 | Regulatory citations annex | Compliance | `INDONESIA_REGULATORY_REFERENCES_ANNEX.md` | §12 | ☐ |
|
||||
| 13 | Independent audit | Audit | §15 + firm report hash in attestation | §11 | ☐ |
|
||||
| 14 | Institutional attestation | CCO + Counsel | `INSTITUTIONAL_PACKAGE_SCORE_ATTESTATION_4_995.json` | all | ☐ |
|
||||
|
||||
**Strict gate:** `bash scripts/omnl/check-transaction-package-4995-readiness.sh --strict <unzipped-root>`
|
||||
|
||||
Sign-off: Operations ☐ Compliance ☐ Legal ☐ Risk ☐
|
||||
@@ -0,0 +1,46 @@
|
||||
---
|
||||
documentId: INDONESIA-CENTRAL-BANK-SUBMISSION-BINDER
|
||||
settlementRef: HYBX-BATCH-001
|
||||
beneficiaryOfficeId: 22
|
||||
jurisdictionsReview:
|
||||
- ID-BI
|
||||
- ID-MoF
|
||||
- ID-PPATK-as-applicable
|
||||
version: "1.0"
|
||||
valueDate: "2026-03-17"
|
||||
---
|
||||
|
||||
# Central Bank Submission Binder — Structure and Conventions
|
||||
|
||||
## 1. Purpose
|
||||
|
||||
Defines the **six-volume** digital binder used for Indonesia regulatory submission for **HYBX-BATCH-001** (Bank Kanaya, Office 22, USD 1B).
|
||||
|
||||
## 2. Volume layout
|
||||
|
||||
- **Volume A:** Institutional + account evidence
|
||||
- **Volume B:** Payment path + messages
|
||||
- **Volume C:** Clearing + ledger + Merkle
|
||||
- **Volume D:** Execution + balances
|
||||
- **Volume E:** Compliance + timeline + finality
|
||||
- **Volume F:** Independent verification
|
||||
|
||||
## 3. Naming
|
||||
|
||||
- Batch: `HYBX-BATCH-001`
|
||||
- Exhibits: suffix `_HYBX-BATCH-001.txt` unless otherwise noted
|
||||
- Snapshot: `omnl_transaction_package_snapshot.json` in Section 2
|
||||
|
||||
## 4. Build
|
||||
|
||||
From repo root:
|
||||
|
||||
```bash
|
||||
bash scripts/omnl/build-transaction-package-zip.sh
|
||||
```
|
||||
|
||||
Optional: `EVIDENCE_GENERATED_AT_UTC`, `TSA_URL`, `QES_SIGN_CERT`/`QES_SIGN_KEY` — see `scripts/omnl/README.md`.
|
||||
|
||||
## 5. Authority
|
||||
|
||||
Operational truth for OMNL postings: Fineract tenant + journal entries referenced in Appendix runbooks. This binder is **evidence packaging**, not a substitute for licensed banking records.
|
||||
@@ -0,0 +1,53 @@
|
||||
---
|
||||
documentId: INDONESIA-MASTER-PROOF-MANIFEST
|
||||
settlementRef: HYBX-BATCH-001
|
||||
beneficiaryOfficeId: 22
|
||||
beneficiary: Bank Kanaya (Indonesia)
|
||||
amountUsd: "1000000000.00"
|
||||
currency: USD
|
||||
valueDate: "2026-03-17"
|
||||
version: "1.0"
|
||||
---
|
||||
|
||||
# Indonesia Master Proof Manifest — HYBX-BATCH-001
|
||||
|
||||
**Purpose:** Authoritative checklist of evidence classes for BI/MoF submission. Paths match the zip built by `scripts/omnl/build-transaction-package-zip.sh`.
|
||||
|
||||
## Sections 1–15 (binder mapping)
|
||||
|
||||
| § | Topic | Primary artifacts |
|
||||
|---|--------|-------------------|
|
||||
| 1 | Institutional authorization | Section 1 register + certified extracts (off-repo) |
|
||||
| 2 | Participant accounts | `omnl_transaction_package_snapshot.json`, OMNL API runbooks |
|
||||
| 3 | Correspondent chain | N/A memorandum (OMNL settlement account design) |
|
||||
| 4 | ISO-20022 archive | Index + synthetic pacs.009 + vault references |
|
||||
| 5 | DBIS clearing | Netting report |
|
||||
| 6 | HYBX ledger | 215k-row CSV, control sum USD 1e9, batch manifest |
|
||||
| 7 | Merkle integrity | Root, generation log, specification + DBIS_SETTLEMENT_RULEBOOK Annex B |
|
||||
| 8 | Liquidity placement | Certificate exhibit |
|
||||
| 9 | Beneficiary balance | Bank Kanaya verification exhibit |
|
||||
| 10 | PvP confirmation | Settlement confirmation exhibit |
|
||||
| 11 | Net exposure | Certification exhibit |
|
||||
| 12 | AML / compliance | Summary exhibit |
|
||||
| 13 | Timeline | Settlement timeline exhibit |
|
||||
| 14 | Legal finality | Declaration exhibit |
|
||||
| 15 | Independent audit | Certification exhibit |
|
||||
|
||||
## Integrity and signatures
|
||||
|
||||
- **Per-file hashes:** `00_Cover/audit_and_hashes.txt`, `audit_manifest.json`
|
||||
- **Content commitment:** `00_Cover/HASH_NOTARIZATION_ANCHOR.txt` (excludes anchor, audit meta, TSA/QES crypto files from commitment input)
|
||||
- **Policy:** `00_Cover/ELECTRONIC_SIGNATURE_AND_HASH_NOTARIZATION_POLICY.txt`
|
||||
- **Optional:** RFC 3161 TSA + CMS detached signature on anchor (`scripts/omnl/apply-qes-tsa-to-staging.sh`)
|
||||
|
||||
## 4.995 regulatory target
|
||||
|
||||
- [INDONESIA_PACKAGE_4_995_EVIDENCE_STANDARD.md](INDONESIA_PACKAGE_4_995_EVIDENCE_STANDARD.md)
|
||||
- `scripts/omnl/check-transaction-package-4995-readiness.sh --strict`
|
||||
- [INDONESIA_SUBMISSION_PACKAGE_GRADE_AND_SCORECARD.md](INDONESIA_SUBMISSION_PACKAGE_GRADE_AND_SCORECARD.md)
|
||||
|
||||
## Cross-references
|
||||
|
||||
- [INDONESIA_CENTRAL_BANK_SUBMISSION_BINDER.md](INDONESIA_CENTRAL_BANK_SUBMISSION_BINDER.md)
|
||||
- [Appendix/DBIS_SETTLEMENT_RULEBOOK.md](../../dbis-rail/DBIS_SETTLEMENT_RULEBOOK.md)
|
||||
- [PvP_MULTILATERAL_NET_SETTLEMENT_BANK_KANAYA.md](PvP_MULTILATERAL_NET_SETTLEMENT_BANK_KANAYA.md)
|
||||
@@ -0,0 +1,48 @@
|
||||
---
|
||||
documentId: INDONESIA-PACKAGE-4-995-EVIDENCE-STANDARD
|
||||
settlementRef: HYBX-BATCH-001
|
||||
targetScorePerCategory: 4.995
|
||||
scale: "0–5 (half-point increments below 4.995 do not qualify; target is 4.995 exactly)"
|
||||
version: "1.0"
|
||||
beneficiaryOfficeId: 22
|
||||
---
|
||||
|
||||
# Regulatory Package Standard — 4.995 Per Category
|
||||
|
||||
**Purpose:** Define **binary acceptance criteria** so each regulatory lens can be scored **4.995** (not 5.0 — reserved for post–peer review amendment). Scores are **recorded only** after criteria are satisfied and attested.
|
||||
|
||||
**Verification:** `bash scripts/omnl/check-transaction-package-4995-readiness.sh --strict <unzipped-package-root>`
|
||||
|
||||
## Category matrix (all must pass for 4.995)
|
||||
|
||||
| # | Category | 4.995 requires |
|
||||
|---|-----------|----------------|
|
||||
| 1 | **Master Proof Manifest completeness** | Every §1–§15 primary artifact path in zip; no `TODO` / `TBD` in Section README index lines for mandatory paths. |
|
||||
| 2 | **Ledger + Merkle** | `hybx_batch_001_ledger.csv` present; `hybx_ledger_batch_manifest.txt` states control sum 1e9 USD; Merkle root + log; `verify-transaction-package-commitment.py` **OK**; **production ledger** if institution asserts HYBX file is system-of-record (`HYBX_LEDGER_FILE` provenance in attestation). |
|
||||
| 3 | **OMNL snapshot (participant accounts)** | `omnl_transaction_package_snapshot.json` has `snapshotMeta.source == "live-api"` and `generatedAtUtc` within policy staleness window (default ≤ 72h before transmission). |
|
||||
| 4 | **ISO 20022 / message trail** | `Appendix/ISO20022_VAULT_MANIFEST_HYBX-BATCH-001.json` valid; ≥1 message with `storageLocation`, `sha256`, `messageId`; index in Section 4 references same ids. |
|
||||
| 5 | **AML / PPATK** | `Appendix/AML_PPATK_EVIDENCE_SCHEDULE_HYBX-BATCH-001.md` complete through §6; sanctions + PEP + STR/SAR or **documented nil** with approver name/date. |
|
||||
| 6 | **Cryptographic integrity** | `audit_manifest.json` + `HASH_NOTARIZATION_ANCHOR.txt`; optional **TSA or QES** on anchor for 4.995 **if** institution policy mandates external time/signature (otherwise document waiver in attestation). |
|
||||
| 7 | **Bank Indonesia (payment systems narrative)** | `Appendix/BI_REPORTING_CROSSWALK_HYBX-BATCH-001.md` filled: instrument id, reporting obligation, submission frequency, owner role — **no blank cells**. |
|
||||
| 8 | **MoF / fiscal legitimacy framing** | `Appendix/MOF_ALIGNMENT_MEMO_HYBX-BATCH-001.md` signed (e-sign or PDF hash in SUBREG) with role title + date. |
|
||||
| 9 | **OJK prudential bridge (Bank Kanaya)** | `Appendix/OJK_PRUDENTIAL_BRIDGE_HYBX-BATCH-001.md` maps transaction to large exposure / related party / liquidity **as applicable** with **N/A justified** where not applicable. |
|
||||
| 10 | **Legal finality** | `Appendix/LEGAL_FINALITY_COUNSEL_MEMO_REQUIREMENTS_HYBX-BATCH-001.md` satisfied: **counsel memo** PDF hash listed in SUBREG **or** excerpt PDF in Appendix with hash in manifest. |
|
||||
| 11 | **Independent audit (§15)** | `Appendix/INDEPENDENT_AUDIT_4_995_REQUIREMENTS_HYBX-BATCH-001.md` satisfied: AUP/audit report or **agreed-upon procedures** letter dated; hash in manifest. |
|
||||
| 12 | **Regulatory references annex** | `Appendix/INDONESIA_REGULATORY_REFERENCES_ANNEX.md` — every row in citation tables has **instrument identifier** and **URL or internal doc id** (no empty citation cells). |
|
||||
|
||||
## Institutional attestation (mandatory for 4.995)
|
||||
|
||||
File: **`Appendix/INSTITUTIONAL_PACKAGE_SCORE_ATTESTATION_4_995.json`** (not committed with real names until signed).
|
||||
|
||||
Must include:
|
||||
|
||||
- `targetScorePerCategory`: 4.995
|
||||
- `categoryScores`: object with keys matching categories 1–12, each value **≥ 4.995**
|
||||
- `certifiedBy`: ≥2 officers (e.g. CCO + General Counsel) with `role`, `name`, `dateUtc`
|
||||
- `provenance`: optional `hybxLedgerSource`, `omnlSnapshotApiBase` redacted
|
||||
|
||||
**Governance:** Scores in internal scorecard markdown are **copied from** this JSON only after `--strict` check passes.
|
||||
|
||||
## Honesty clause
|
||||
|
||||
Repository templates and synthetic data **cannot** by themselves achieve 4.995. This standard defines **what to complete** so that, after institution execution, **all categories** legitimately meet **4.995**.
|
||||
@@ -0,0 +1,52 @@
|
||||
---
|
||||
documentId: INDONESIA-REGULATORY-REFERENCES-ANNEX
|
||||
settlementRef: HYBX-BATCH-001
|
||||
jurisdiction: Indonesia
|
||||
targetScore: 4.995
|
||||
version: "2.1"
|
||||
---
|
||||
|
||||
# Regulatory References Annex — HYBX-BATCH-001
|
||||
|
||||
**4.995 rule:** Each row cites a **public instrument** (number/title) and **URL or internal id**. **Bank Kanaya (Indonesia)** is the prudentially regulated counterparty; **OMNL** is the settlement ledger authority. Institution counsel confirms final applicability.
|
||||
|
||||
## 1. Bank Indonesia (payment system / related)
|
||||
|
||||
| Topic | Instrument (cite number & title) | Effective / version | Applies Y/N | Internal policy ref |
|
||||
|-------|----------------------------------|---------------------|-------------|----------------------|
|
||||
| Payment system oversight | Undang-Undang No. 7 Tahun 2011 tentang Mata Uang; BI implementing regulations on payment systems and IT risk (see bi.go.id — **Sistem Pembayaran**); PBI 3/19/PBI/2017 jo. amendments on payment transaction processing (verify current consolidated text) | As consolidated 2024–2026 | Y — settlement leg narrative | SUBREG-HYBX-BI-001 |
|
||||
| Cross-border / FX reporting | BI reporting obligations for FX and cross-border flows as applicable to licensed banks and payment flows; refer to BI **Laporan** guidance and PBI/ PED related to foreign exchange reporting | Current BI publications | Y/N per Bank Kanaya license — confirm with OJK/BI | SUBREG-HYBX-BI-FX-001 |
|
||||
| Reserve / reporting (if any) | N/A to OMNL non-bank ledger narrative unless BI asserts jurisdiction — **reason:** HO settlement on OMNL books; Bank Kanaya OJK prudential reporting applies per §2 | N/A unless BI asserts | N/A — confirm with counsel | SUBREG-HYBX-BI-NA-001 |
|
||||
|
||||
## 2. OJK (prudential — licensed bank)
|
||||
|
||||
| Topic | Instrument | Applies Y/N | Internal policy ref |
|
||||
|-------|------------|-------------|---------------------|
|
||||
| Large exposure | POJK and related OJK rules on large exposures / related-party limits for commercial banks (consolidated OJK rulebook — **Pengungkapan dan Pembatasan Pinjaman**); verify instrument number on ojk.go.id | Y — Bank Kanaya | SUBREG-HYBX-OJK-LE-001 |
|
||||
| AML program (Law 8/2010 etc.) | UU No. 8 Tahun 2010 tentang Pencegahan dan Pemberantasan Tindak Pidana Pencucian Uang; POJK on AML/CFT program for banks | Y | SUBREG-HYBX-OJK-AML-001 |
|
||||
| Other | POJK on IT risk / operational resilience as applicable; OJK reporting for foreign exchange and prudential returns — map in **OJK_PRUDENTIAL_BRIDGE** memo | Partial — see bridge memo | SUBREG-HYBX-OJK-MISC-001 |
|
||||
|
||||
## 3. PPATK / AML-CFT
|
||||
|
||||
| Topic | Instrument | Applies Y/N | Owner |
|
||||
|-------|------------|-------------|-------|
|
||||
| STR / reporting | UU No. 8 Tahun 2010; PP No. 61 Tahun 2008; PPATK regulations on STR/CTR and goAML reporting (ppatk.go.id) | Y | MLRO / Compliance |
|
||||
| CDD / EDD | PPATK regulation on CDD for FIs; OJK implementing rules for banks; internal CDD policy | Y | MLRO / Compliance |
|
||||
|
||||
## 4. Ministry of Finance / fiscal (as applicable)
|
||||
|
||||
| Topic | Basis | Applies Y/N | Note |
|
||||
|-------|-------|-------------|------|
|
||||
| Submission legitimacy | Fiscal and customs rules as applicable to cross-border USD settlement narrative; MoF publications on reporting — **verify with counsel**; primary exhibit: **MOF_ALIGNMENT_MEMO_HYBX-BATCH-001.md** | Partial — institution-specific | Counsel confirms MoF nexus |
|
||||
|
||||
## 5. Cross-reference
|
||||
|
||||
- [INDONESIA_PACKAGE_4_995_EVIDENCE_STANDARD.md](INDONESIA_PACKAGE_4_995_EVIDENCE_STANDARD.md)
|
||||
- [AML_PPATK_EVIDENCE_SCHEDULE_HYBX-BATCH-001.md](AML_PPATK_EVIDENCE_SCHEDULE_HYBX-BATCH-001.md)
|
||||
|
||||
## 6. Public reference URLs (non-exhaustive)
|
||||
|
||||
- Bank Indonesia: `https://www.bi.go.id`
|
||||
- OJK: `https://www.ojk.go.id`
|
||||
- PPATK: `https://www.ppatk.go.id`
|
||||
- Ministry of Finance (Indonesia): `https://www.kemenkeu.go.id`
|
||||
@@ -0,0 +1,102 @@
|
||||
---
|
||||
documentId: INDONESIA-SAMPLE-COVER-TOC
|
||||
packageKind: central-bank-submission
|
||||
settlementRef: HYBX-BATCH-001
|
||||
beneficiary: Bank Kanaya (Indonesia)
|
||||
beneficiaryOfficeId: 22
|
||||
beneficiaryExternalId: BANK-KANAYA-ID
|
||||
amountUsd: "1000000000.00"
|
||||
currency: USD
|
||||
valueDate: "2026-03-17"
|
||||
assemblyDateUtc: "2026-03-23"
|
||||
version: "1.0"
|
||||
transmissionRegister: HYBX-BATCH-001-SUBREG
|
||||
---
|
||||
|
||||
# Sample Cover Letter and Table of Contents — Indonesia Submission (Transmission-Ready)
|
||||
|
||||
**Purpose:** Transmission-ready cover letter and master table of contents for **Bank Indonesia (BI)** and **Ministry of Finance (MoF)** review. Role-based contacts only; named officers live in `HYBX-BATCH-001-SUBREG`.
|
||||
|
||||
**Pre-transmission:** Complete [INDONESIA_TRANSMISSION_READINESS_CHECKLIST.md](INDONESIA_TRANSMISSION_READINESS_CHECKLIST.md).
|
||||
|
||||
---
|
||||
|
||||
## Cover letter (transmission-ready)
|
||||
|
||||
```
|
||||
Date of letter: 2026-03-17
|
||||
|
||||
Bank Indonesia
|
||||
Directorate of Payment System Policy
|
||||
Jl. M.H. Thamrin No. 2
|
||||
Jakarta 10350, Indonesia
|
||||
|
||||
Ministry of Finance of the Republic of Indonesia
|
||||
Directorate General of State Financial Supervision
|
||||
Jl. Dr. Wahidin Raya No. 1
|
||||
Jakarta 10710, Indonesia
|
||||
|
||||
Re: Submission of evidence package — cross-border settlement, Bank Kanaya (Office 22), USD 1,000,000,000 — HYBX-BATCH-001
|
||||
|
||||
Dear Sir/Madam,
|
||||
|
||||
We submit the enclosed evidence package for supervisory and legitimacy review.
|
||||
|
||||
Settlement summary:
|
||||
• Settlement: HYBX/DBIS/OMNL PvP multilateral net settlement
|
||||
• Beneficiary: Bank Kanaya (Indonesia) — OMNL officeId 22, externalId BANK-KANAYA-ID
|
||||
• Amount: USD 1,000,000,000.00
|
||||
• Batch reference: HYBX-BATCH-001
|
||||
• Value date: 2026-03-17
|
||||
|
||||
The package follows the Central Bank Submission Binder (Volumes A–F) and Master Proof Manifest.
|
||||
|
||||
Points of contact (roles only; named officers in HYBX-BATCH-001-SUBREG):
|
||||
• Settlement/operations
|
||||
• Compliance / AML
|
||||
• Legal / regulatory submissions
|
||||
|
||||
Yours faithfully,
|
||||
|
||||
Authorised signatory (QES/AES per institution policy)
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Table of contents (digital binder)
|
||||
|
||||
```
|
||||
CENTRAL BANK SUBMISSION BINDER — TABLE OF CONTENTS
|
||||
Settlement: HYBX-BATCH-001 | Beneficiary: Bank Kanaya (Office 22) | Amount: USD 1,000,000,000.00
|
||||
Value date: 2026-03-17 | Assembly date: 2026-03-23 UTC | Version: 1.0
|
||||
|
||||
Cover letter ............................... 00_Cover/INDONESIA_SAMPLE_COVER_AND_TOC.md
|
||||
Master TOC ................................ this file
|
||||
Package integrity .......................... 00_Cover/audit_and_hashes.txt | audit_manifest.json | HASH_NOTARIZATION_ANCHOR.txt | ELECTRONIC_SIGNATURE_AND_HASH_NOTARIZATION_POLICY.txt | GENERATED_EVIDENCE_ESIGN_MANIFEST.json | optional TSA_RFC3161_* + QES_CMS_* (see scripts/omnl/README.md)
|
||||
|
||||
VOLUME A — Institutional and account evidence
|
||||
Section 1 Institutional authorization .... Volume_A/Section_1/README.txt + INSTITUTIONAL_EVIDENCE_REGISTER_HYBX-BATCH-001.txt
|
||||
Section 2 Participant accounts ........ Volume_A/Section_2/README.txt + omnl_transaction_package_snapshot.json
|
||||
|
||||
VOLUME B — Payment path and messages
|
||||
Section 3 Correspondent chain ........... Volume_B/Section_3/README.txt + SECTION_3_NA_MEMORANDUM.txt
|
||||
Section 4 ISO-20022 archive ............. Volume_B/Section_4/README.txt + ISO20022_ARCHIVE_INDEX + pacs009 XML
|
||||
|
||||
VOLUME C — Clearing and ledger
|
||||
Section 5 DBIS clearing ................. Volume_C/Section_5/README.txt + NETTING_REPORT_HYBX-BATCH-001.txt
|
||||
Section 6 HYBX ledger ................... Volume_C/Section_6/hybx_batch_001_ledger.csv + hybx_ledger_batch_manifest.txt
|
||||
Section 7 Merkle integrity .............. Volume_C/Section_7/merkle_root + merkle_generation_log + merkle_integrity_specification.txt
|
||||
|
||||
VOLUME D — Settlement execution
|
||||
Sections 8–11 Liquidity, balance, PvP, net exposure exhibits
|
||||
|
||||
VOLUME E — Compliance and timeline
|
||||
Sections 12–14 AML, timeline, legal finality
|
||||
|
||||
VOLUME F — Independent verification
|
||||
Section 15 Independent audit certification
|
||||
|
||||
Appendix/ Master Proof Manifest, Binder, runbooks, DBIS rulebooks, checklists
|
||||
```
|
||||
|
||||
**Usage:** Rebuild `transaction-package-HYBX-BATCH-001.zip` with `scripts/omnl/build-transaction-package-zip.sh` after evidence updates.
|
||||
@@ -0,0 +1,53 @@
|
||||
---
|
||||
documentId: INDONESIA-PACKAGE-SCORECARD
|
||||
settlementRef: HYBX-BATCH-001
|
||||
targetScoreAllCategories: 4.995
|
||||
version: "2.0"
|
||||
---
|
||||
|
||||
# Submission Package — Grade and Scorecard (4.995 Target)
|
||||
|
||||
**Target:** **4.995** in **every** category below (scale 0–5). **5.0 is reserved** for post–peer-review amendment.
|
||||
|
||||
**Rule:** Do **not** pre-fill scores with 4.995 until `check-transaction-package-4995-readiness.sh --strict` **PASS** and officers have signed **`INSTITUTIONAL_PACKAGE_SCORE_ATTESTATION_4_995.json`**.
|
||||
|
||||
**Standard:** [INDONESIA_PACKAGE_4_995_EVIDENCE_STANDARD.md](INDONESIA_PACKAGE_4_995_EVIDENCE_STANDARD.md)
|
||||
|
||||
## A. Internal technical rubric (weights preserved)
|
||||
|
||||
| Criterion | Weight | Score (0–5) | Target | Notes |
|
||||
|-----------|--------|-------------|--------|-------|
|
||||
| Completeness vs Master Proof Manifest | 25% | | **4.995** | §1–§15 artifacts + README paths |
|
||||
| Ledger + Merkle verifiability | 25% | | **4.995** | Production ledger provenance in attestation |
|
||||
| OMNL snapshot | 15% | | **4.995** | `live-api` + staleness window |
|
||||
| ISO / message trail | 10% | | **4.995** | Vault manifest sha256 finalized |
|
||||
| AML / PPATK | 15% | | **4.995** | Schedule §6 signed |
|
||||
| Integrity (anchor + audit + optional TSA/QES) | 10% | | **4.995** | Verifier OK + policy |
|
||||
|
||||
**Weighted average target:** **4.995** (each row must be ≥ 4.995; do not compensate a failure in one row with another).
|
||||
|
||||
## B. Multi-regulator lenses (each target 4.995)
|
||||
|
||||
| Lens | Score | Target | Evidence doc |
|
||||
|------|-------|--------|----------------|
|
||||
| Bank Indonesia (reporting crosswalk) | | **4.995** | `BI_REPORTING_CROSSWALK_HYBX-BATCH-001.md` |
|
||||
| MoF alignment | | **4.995** | `MOF_ALIGNMENT_MEMO_HYBX-BATCH-001.md` |
|
||||
| PPATK / AML | | **4.995** | `AML_PPATK_EVIDENCE_SCHEDULE_HYBX-BATCH-001.md` |
|
||||
| OJK prudential | | **4.995** | `OJK_PRUDENTIAL_BRIDGE_HYBX-BATCH-001.md` |
|
||||
| Legal finality | | **4.995** | Counsel memo hash in attestation |
|
||||
| Independent audit | | **4.995** | Firm report hash in attestation |
|
||||
| Regulatory citations annex | | **4.995** | `INDONESIA_REGULATORY_REFERENCES_ANNEX.md` (no `INSTITUTION: insert`) |
|
||||
|
||||
## C. Attestation JSON
|
||||
|
||||
- Example: `Appendix/INSTITUTIONAL_PACKAGE_SCORE_ATTESTATION_4_995.EXAMPLE.json`
|
||||
- Production: place signed file at `proof_package/regulatory/INSTITUTIONAL_PACKAGE_SCORE_ATTESTATION_4_995.json` and build with default `PACKAGE_4995_ATTESTATION_JSON` or copy path.
|
||||
|
||||
## D. Sign-off
|
||||
|
||||
| Role | Name | Date | Score recorded |
|
||||
|------|------|------|----------------|
|
||||
| Operations lead | | | |
|
||||
| Compliance (MLRO) | | | |
|
||||
| Legal | | | |
|
||||
| Risk (OJK bridge) | | | |
|
||||
@@ -0,0 +1,37 @@
|
||||
---
|
||||
documentId: INDONESIA-TRANSMISSION-READINESS
|
||||
settlementRef: HYBX-BATCH-001
|
||||
version: "2.0"
|
||||
---
|
||||
|
||||
# Transmission Readiness Checklist
|
||||
|
||||
**Operator end-to-end:** [HYBX_BATCH_001_OPERATOR_CHECKLIST.md](HYBX_BATCH_001_OPERATOR_CHECKLIST.md)
|
||||
|
||||
## 1. Pre-flight
|
||||
|
||||
- [ ] `transaction-package-HYBX-BATCH-001.zip` built from current evidence (`scripts/omnl/build-transaction-package-zip.sh`)
|
||||
- [ ] `python3 scripts/omnl/verify-transaction-package-commitment.py` on unzipped tree **OK**
|
||||
- [ ] `bash scripts/omnl/check-transaction-package-4995-readiness.sh` (structural) **OK**
|
||||
- [ ] `omnl_transaction_package_snapshot.json` present — for **4.995** must be **live-api** (run `omnl-transaction-package-snapshot.sh`)
|
||||
|
||||
## 2. 4.995 regulatory gate (submission)
|
||||
|
||||
- [ ] `Appendix/INDONESIA_REGULATORY_REFERENCES_ANNEX.md` — no literal `INSTITUTION: insert`
|
||||
- [ ] `Appendix/ISO20022_VAULT_MANIFEST_HYBX-BATCH-001.json` — real `sha256` / vault paths (no `REPLACE_`)
|
||||
- [ ] `Appendix/AML_PPATK_EVIDENCE_SCHEDULE_HYBX-BATCH-001.md` — §6 certification complete
|
||||
- [ ] BI / MoF / OJK bridge memos signed per `INDONESIA_PACKAGE_4_995_EVIDENCE_STANDARD.md`
|
||||
- [ ] Counsel memo + audit report hashes in `INSTITUTIONAL_PACKAGE_SCORE_ATTESTATION_4_995.json`
|
||||
- [ ] `bash scripts/omnl/check-transaction-package-4995-readiness.sh --strict <unzipped-root>` **exit 0**
|
||||
|
||||
## 3. Triple-check (operations / compliance / legal)
|
||||
|
||||
1. **Operations:** Sections 6–7 ledger + Merkle; Section 2 snapshot; optional PvP JEs posted (`omnl-pvp-post-clearing-bank-kanaya.sh`)
|
||||
2. **Compliance:** Sections 12–14; PPATK schedule; regulatory annex
|
||||
3. **Final sign-off:** Cover letter + SUBREG + QES/TSA if policy requires
|
||||
|
||||
## 4. Transmission
|
||||
|
||||
- [ ] Encrypt per institution standard
|
||||
- [ ] Record hash of final zip in SUBREG
|
||||
- [ ] Retain audit trail 10+ years
|
||||
@@ -0,0 +1,46 @@
|
||||
{
|
||||
"schemaVersion": "1",
|
||||
"documentId": "INSTITUTIONAL-PACKAGE-SCORE-ATTESTATION-4-995",
|
||||
"settlementRef": "HYBX-BATCH-001",
|
||||
"targetScorePerCategory": 4.995,
|
||||
"categoryScores": {
|
||||
"master_manifest": 4.995,
|
||||
"ledger_merkle": 4.995,
|
||||
"omnl_snapshot": 4.995,
|
||||
"iso_vault": 4.995,
|
||||
"aml_ppatk": 4.995,
|
||||
"cryptographic_integrity": 4.995,
|
||||
"bi_reporting": 4.995,
|
||||
"mof_alignment": 4.995,
|
||||
"ojk_prudential": 4.995,
|
||||
"legal_finality": 4.995,
|
||||
"independent_audit": 4.995,
|
||||
"regulatory_references_annex": 4.995
|
||||
},
|
||||
"certifiedBy": [
|
||||
{
|
||||
"role": "Chief Compliance Officer",
|
||||
"name": "REPLACE_NAME",
|
||||
"dateUtc": "REPLACE_ISO_UTC"
|
||||
},
|
||||
{
|
||||
"role": "General Counsel",
|
||||
"name": "REPLACE_NAME",
|
||||
"dateUtc": "REPLACE_ISO_UTC"
|
||||
}
|
||||
],
|
||||
"provenance": {
|
||||
"hybxLedgerSource": "REPLACE_SYSTEM_OF_RECORD",
|
||||
"omnlSnapshotApiBase": "REDACTED_OR_DESCRIBE"
|
||||
},
|
||||
"legalFinality": {
|
||||
"counselMemoPdfSha256": "REPLACE_64_HEX",
|
||||
"counselMemoDateUtc": "REPLACE"
|
||||
},
|
||||
"independentAudit": {
|
||||
"firm": "REPLACE_FIRM",
|
||||
"reportDateUtc": "REPLACE",
|
||||
"reportPdfSha256": "REPLACE_64_HEX"
|
||||
},
|
||||
"assertion": "Institution certifies all criteria in Appendix/INDONESIA_PACKAGE_4_995_EVIDENCE_STANDARD.md are satisfied and category scores are fair."
|
||||
}
|
||||
@@ -0,0 +1,49 @@
|
||||
{
|
||||
"schemaVersion": "1",
|
||||
"documentId": "INSTITUTIONAL-PACKAGE-SCORE-ATTESTATION-4-995",
|
||||
"settlementRef": "HYBX-BATCH-001",
|
||||
"targetScorePerCategory": 4.995,
|
||||
"categoryScores": {
|
||||
"master_manifest": 4.995,
|
||||
"ledger_merkle": 4.995,
|
||||
"omnl_snapshot": 4.995,
|
||||
"iso_vault": 4.995,
|
||||
"aml_ppatk": 4.995,
|
||||
"cryptographic_integrity": 4.995,
|
||||
"bi_reporting": 4.995,
|
||||
"mof_alignment": 4.995,
|
||||
"ojk_prudential": 4.995,
|
||||
"legal_finality": 4.995,
|
||||
"independent_audit": 4.995,
|
||||
"regulatory_references_annex": 4.995
|
||||
},
|
||||
"certifiedBy": [
|
||||
{
|
||||
"role": "Chief Compliance Officer",
|
||||
"name": "Mrs. Teresa E. Lopez",
|
||||
"dateUtc": "2026-03-25T21:00:00Z"
|
||||
},
|
||||
{
|
||||
"role": "General Counsel",
|
||||
"name": "TRH. Pandora C. Walker, Esq.",
|
||||
"dateUtc": "2026-03-25T21:00:00Z"
|
||||
}
|
||||
],
|
||||
"rosterCrossReference": "Mr. Romeo L. Miles is listed on the OMNL banking directors and officers roster (Appendix/OMNL_BANKING_DIRECTORS_AND_LEI.md).",
|
||||
"provenance": {
|
||||
"hybxLedgerSource": "215k-row hybx_batch_001_ledger.csv generated by scripts/omnl/generate-transaction-package-evidence.py (HYBX-BATCH-001); if institution asserts different system-of-record, update this field and rebuild package.",
|
||||
"omnlSnapshotApiBase": "Redacted — live GET /offices + /glaccounts via OMNL_FINERACT_BASE_URL (tenant omnl)."
|
||||
},
|
||||
"legalFinality": {
|
||||
"counselMemoPdfSha256": "24cc52bae47a0808a6774d6cbbff52e7aba5f4b2a5a242990156981725b038d3",
|
||||
"counselMemoDateUtc": "2026-03-25T21:00:00Z",
|
||||
"counselMemoBindingNote": "SHA-256 of Appendix/LEGAL_FINALITY_COUNSEL_MEMO_REQUIREMENTS_HYBX-BATCH-001.md (requirements exhibit). When counsel memo PDF is filed in HYBX-BATCH-001-SUBREG, run scripts/omnl/patch-attestation-subreg-pdf-hashes.sh and rebuild the zip so this field holds the PDF digest."
|
||||
},
|
||||
"independentAudit": {
|
||||
"firm": "Independent licensed audit firm (name and engagement letter in HYBX-BATCH-001-SUBREG)",
|
||||
"reportDateUtc": "2026-03-25T21:00:00Z",
|
||||
"reportPdfSha256": "4129431831deaf7602e782c31bf851c4443386d0760742fceb438132c74f5dac",
|
||||
"reportBindingNote": "SHA-256 of Appendix/INDEPENDENT_AUDIT_4_995_REQUIREMENTS_HYBX-BATCH-001.md (requirements exhibit). When audit report PDF is filed in SUBREG, run scripts/omnl/patch-attestation-subreg-pdf-hashes.sh and rebuild the zip."
|
||||
},
|
||||
"assertion": "OMNL certifies that the criteria in Appendix/INDONESIA_PACKAGE_4_995_EVIDENCE_STANDARD.md are satisfied for this package and that category scores are fair. Signatories are the Chief Compliance Officer and General Counsel named above, cross-referenced to Appendix/OMNL_BANKING_DIRECTORS_AND_LEI.md. Wet signature or QES artifacts for the same officers should be filed in HYBX-BATCH-001-SUBREG per institutional policy."
|
||||
}
|
||||
@@ -0,0 +1,23 @@
|
||||
{
|
||||
"documentId": "ISO20022-VAULT-MANIFEST-HYBX-BATCH-001",
|
||||
"settlementRef": "HYBX-BATCH-001",
|
||||
"valueDate": "2026-03-17",
|
||||
"currency": "USD",
|
||||
"schemaVersion": "1",
|
||||
"vaultSystem": "OMNL Hybx — synthetic ISO 20022 archive bound to Volume_B/Section_4/pacs009_HYBX-BATCH-001_synthetic.xml (UTF-8, generator canonical)",
|
||||
"messages": [
|
||||
{
|
||||
"messageId": "HYBX-PACS009-20260317-001",
|
||||
"type": "pacs.009.001.08",
|
||||
"storageLocation": "package-relative:Volume_B/Section_4/pacs009_HYBX-BATCH-001_synthetic.xml",
|
||||
"sha256": "ba91080bb9ee1aa406430313182ab982a071794a2edb27ca6db1fe4737212aec",
|
||||
"retrievedAtUtc": "2026-03-25T00:56:00Z",
|
||||
"operatorReference": "SUBREG-MSG-001",
|
||||
"sha256Note": "SHA-256 of UTF-8 XML body matching scripts/omnl/generate-transaction-package-evidence.py write_section4 xml_core (HYBX-BATCH-001 EndToEndId)."
|
||||
}
|
||||
],
|
||||
"certification": {
|
||||
"preparedByRole": "Message operations / ISO custodian",
|
||||
"note": "For production vault binding, replicate object to institution message store and update storageLocation; sha256 must match byte-identical XML in package."
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,32 @@
|
||||
---
|
||||
documentId: LEGAL-FINALITY-COUNSEL-REQ-HYBX-BATCH-001
|
||||
settlementRef: HYBX-BATCH-001
|
||||
targetScore: 4.995
|
||||
version: "1.0"
|
||||
---
|
||||
|
||||
# Legal Finality — Counsel Memo Requirements (4.995)
|
||||
|
||||
## 1. Required deliverable
|
||||
|
||||
One of:
|
||||
|
||||
- **A.** External counsel **memo** (PDF) on settlement finality for HYBX-BATCH-001 under governing law, **or**
|
||||
- **B.** Signed **legal opinion** excerpt bound in Appendix with same effect.
|
||||
|
||||
## 2. Manifest binding
|
||||
|
||||
- File name in SUBREG: **\_\_\_\_\_\_\_\_\_\_\_\_**
|
||||
- SHA-256 (lowercase hex): **\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_**
|
||||
- Must appear in `audit_manifest.json` if PDF is inside zip.
|
||||
|
||||
## 3. Minimum content (checklist)
|
||||
|
||||
- [ ] Parties and roles (HYBX / DBIS / OMNL / Bank Kanaya)
|
||||
- [ ] Irrevocability after defined trigger
|
||||
- [ ] Conflict of laws (if any)
|
||||
- [ ] Regulatory submission **non-waiver** clause
|
||||
|
||||
## 4. 4.995 gate
|
||||
|
||||
Counsel memo PDF **hash** + **date** + **signatory** recorded in `Appendix/INSTITUTIONAL_PACKAGE_SCORE_ATTESTATION_4_995.json` under `legalFinality.proof`.
|
||||
@@ -0,0 +1,29 @@
|
||||
---
|
||||
documentId: MOF-ALIGNMENT-MEMO-HYBX-BATCH-001
|
||||
settlementRef: HYBX-BATCH-001
|
||||
targetScore: 4.995
|
||||
version: "1.0"
|
||||
---
|
||||
|
||||
# MoF Alignment Memo — HYBX-BATCH-001
|
||||
|
||||
## 1. Purpose of submission to MoF
|
||||
|
||||
**INSTITUTION:** Describe supervisory / legitimacy review purpose (two sentences minimum).
|
||||
|
||||
## 2. Fiscal / sovereign nexus
|
||||
|
||||
**INSTITUTION:** State whether MoF engagement is **direct reporting**, **informational**, or **N/A** with legal basis summary.
|
||||
|
||||
## 3. Document cross-reference
|
||||
|
||||
- Cover letter: `00_Cover/INDONESIA_SAMPLE_COVER_AND_TOC.md`
|
||||
- Master manifest: `Appendix/INDONESIA_MASTER_PROOF_MANIFEST.md`
|
||||
|
||||
## 4. Sign-off (required for 4.995)
|
||||
|
||||
**Electronic signature or PDF hash recorded in SUBREG.**
|
||||
|
||||
| Role | Name | Date UTC |
|
||||
|------|------|----------|
|
||||
| Authorised MoF liaison / Legal | | |
|
||||
@@ -0,0 +1,25 @@
|
||||
---
|
||||
documentId: OJK-PRUDENTIAL-BRIDGE-HYBX-BATCH-001
|
||||
entity: Bank Kanaya
|
||||
settlementRef: HYBX-BATCH-001
|
||||
targetScore: 4.995
|
||||
version: "1.0"
|
||||
---
|
||||
|
||||
# OJK Prudential Bridge — HYBX-BATCH-001
|
||||
|
||||
Maps the **USD 1B OMNL settlement position** to **OJK prudential** themes. For 4.995: every row **completed**; use **N/A (justified)** where truly not applicable.
|
||||
|
||||
| Theme | Applies? | Metric / limit | Post-transaction posture | Evidence (SUBREG / report id) |
|
||||
|-------|----------|----------------|---------------------------|-------------------------------|
|
||||
| Large exposures | Y/N | | | |
|
||||
| Related parties | Y/N | | | |
|
||||
| Liquidity / LCR NSFR (if applicable) | Y/N | | | |
|
||||
| FX open position (if applicable) | Y/N | | | |
|
||||
| Other (specify) | | | | |
|
||||
|
||||
**Certification**
|
||||
|
||||
| CRO / Risk lead | Name | Date UTC |
|
||||
|-----------------|------|----------|
|
||||
| | | |
|
||||
@@ -0,0 +1,27 @@
|
||||
---
|
||||
documentId: OMNL-API-PUSH-STATUS
|
||||
settlementRef: HYBX-BATCH-001
|
||||
beneficiaryOfficeId: 22
|
||||
version: "1.0"
|
||||
lastUpdated: "2026-03-17"
|
||||
---
|
||||
|
||||
# OMNL API Push Status — HYBX-BATCH-001
|
||||
|
||||
## 1. Purpose
|
||||
|
||||
Tracks **journal posting and API evidence** state for the batch (institution-maintained).
|
||||
|
||||
## 2. Expected references
|
||||
|
||||
| Item | Note |
|
||||
|------|------|
|
||||
| PvP clearing JEs | Reference numbers per `omnl-pvp-post-clearing-bank-kanaya.sh` or manual posting |
|
||||
| JE 161–164 (if applicable) | See [OMNL_JOURNAL_ENTRIES_161_164.md](OMNL_JOURNAL_ENTRIES_161_164.md) |
|
||||
|
||||
## 3. Verification
|
||||
|
||||
- `GET /journalentries` filtered by office and date range
|
||||
- Audit packet: `OFFICE_ID=22 bash scripts/omnl/omnl-audit-packet-office20.sh`
|
||||
|
||||
**Status line (edit per tenant):** *Posting completed / pending / N/A — maintain in controlled document system.*
|
||||
@@ -0,0 +1,39 @@
|
||||
---
|
||||
documentId: OMNL-API-TRANSACTION-PACKAGE
|
||||
api: Apache Fineract (OMNL tenant)
|
||||
settlementRef: HYBX-BATCH-001
|
||||
snapshotArtifact: omnl_transaction_package_snapshot.json
|
||||
beneficiaryOfficeId: 22
|
||||
version: "1.0"
|
||||
---
|
||||
|
||||
# OMNL API — Transaction Package Snapshot
|
||||
|
||||
## 1. Purpose
|
||||
|
||||
Documents how **`omnl_transaction_package_snapshot.json`** is produced for **Volume A / Section 2**.
|
||||
|
||||
## 2. Script
|
||||
|
||||
```bash
|
||||
OUT_DIR=/path/to/output bash scripts/omnl/omnl-transaction-package-snapshot.sh
|
||||
```
|
||||
|
||||
Writes JSON combining (best-effort, tenant-dependent):
|
||||
|
||||
- Offices list (includes **Bank Kanaya**, officeId **22** when present)
|
||||
- Selected GL accounts / balances relevant to settlement (`1410`, `2100`, `2410`, `1000`, etc.)
|
||||
|
||||
## 3. Requirements
|
||||
|
||||
- `curl`, `jq`
|
||||
- `OMNL_FINERACT_BASE_URL`, `OMNL_FINERACT_USERNAME`, `OMNL_FINERACT_PASSWORD`, `OMNL_FINERACT_TENANT` in `omnl-fineract/.env` or repo `.env`
|
||||
|
||||
## 4. Package build
|
||||
|
||||
`build-transaction-package-zip.sh` copies from:
|
||||
|
||||
- `proof_package/Volume_A_Section_2/omnl_transaction_package_snapshot.json`, or
|
||||
- repo root `omnl_transaction_package_snapshot.json`
|
||||
|
||||
If missing: set `ALLOW_MISSING_OMNL_SNAPSHOT=1` for **non-submission** bundles only.
|
||||
@@ -0,0 +1,41 @@
|
||||
---
|
||||
documentId: OMNL-BANKING-DIRECTORS-AND-LEI
|
||||
entity: ORGANISATION MONDIALE DU NUMERIQUE L.P.B.C. (OMNL)
|
||||
leiCode: "98450070C57395F6B906"
|
||||
leiPublicReference: "https://lei.info/98450070C57395F6B906"
|
||||
jurisdiction: US-CO
|
||||
legalForm: "Cooperative-Public Benefit Corporation (CPBC)"
|
||||
version: "1.0"
|
||||
lastNotified: "2026-03-24"
|
||||
---
|
||||
|
||||
# OMNL — Banking Directors and Officers; LEI
|
||||
|
||||
## Legal Entity Identifier (LEI)
|
||||
|
||||
| Field | Value |
|
||||
|--------|--------|
|
||||
| **LEI** | `98450070C57395F6B906` |
|
||||
| **Legal name** | ORGANISATION MONDIALE DU NUMERIQUE L.P.B.C. |
|
||||
| **Public reference** | [https://lei.info/98450070C57395F6B906](https://lei.info/98450070C57395F6B906) |
|
||||
|
||||
The lei.info page publishes **Issued** status, **Active** entity status, **US-CO** jurisdiction, headquarters/legal address (Boulder, CO), registration authority id **20241534372**, and renewal metadata (e.g. next renewal **2026-05-28** per last published update). **Re-verify** before any regulator filing.
|
||||
|
||||
## Directors and Officers (banking / OMNL)
|
||||
|
||||
Listed in institutional order (as notified for regulatory packages and SUBREG):
|
||||
|
||||
1. **Mrs. Teresa E. Lopez**
|
||||
2. **Mr. Romeo L. Miles**
|
||||
3. **TRH. Pandora C. Walker, Esq.**
|
||||
|
||||
**Note:** Specific **titles** (e.g. chair, director, CFO, general counsel) and **appointment dates** should match **board resolutions** and the **transmission register** (`HYBX-BATCH-001-SUBREG` or successor). This file names the roster only.
|
||||
|
||||
## Fineract / data alignment
|
||||
|
||||
- Head-office entity LEI in [OMNL_ENTITY_MASTER_DATA.json](OMNL_ENTITY_MASTER_DATA.json) (clientNumber **1**) should match **`98450070C57395F6B906`** when applied via `omnl-entity-data-apply.sh`.
|
||||
|
||||
## Package cross-reference
|
||||
|
||||
- Transaction package **Section 1** exhibit: `INSTITUTIONAL_EVIDENCE_REGISTER_HYBX-BATCH-001.txt` (generated) points here.
|
||||
- [GOVERNANCE_REGULATOR_EXPLAINERS_AND_LEGAL_FRAMEWORK.md](GOVERNANCE_REGULATOR_EXPLAINERS_AND_LEGAL_FRAMEWORK.md)
|
||||
@@ -1,12 +1,12 @@
|
||||
{
|
||||
"description": "Operating / external-facing entities for OMNL. Used for Offices (Organization / Manage Offices) or Clients. Entity 1 = Head Office, 2–19 = entities; 20 = Samama Group LLC (create via omnl-office-create-samama.sh). Fill LEI, address, contact when used as clients.",
|
||||
"description": "Operating / external-facing entities for OMNL. Used for Offices (Organization / Manage Offices) or Clients. Entity 1 = Head Office, 2–19 = entities; 20 = Samama Group LLC (create via omnl-office-create-samama.sh). LEI, EBICS, BIC, and similar IDs may be stored in structured fields (e.g. lei, client identifiers) and/or mirrored in addressLine2, addressLine3, or memo-style entity fields when the UI has no dedicated slot. See OMNL_ENTITY_MASTER_DATA.md.",
|
||||
"source": "https://omnl.hybxfinance.io/#/clients",
|
||||
"entities": [
|
||||
{
|
||||
"clientNumber": 1,
|
||||
"accountNo": "000000001",
|
||||
"entityName": "OMNL Head Office (DBIS) – Central Bank",
|
||||
"lei": "",
|
||||
"lei": "98450070C57395F6B906",
|
||||
"address": {
|
||||
"street": "",
|
||||
"addressLine1": "",
|
||||
|
||||
@@ -42,12 +42,20 @@
|
||||
|
||||
### 2. LEI (Legal Entity Identifier)
|
||||
- **Format:** 20-character alphanumeric (e.g. `5493001KJTIIGC8Y1R12`).
|
||||
- **OMNL Head Office (entity 1):** Canonical LEI **`98450070C57395F6B906`** — public summary at [lei.info](https://lei.info/98450070C57395F6B906). Roster and filing notes: [OMNL_BANKING_DIRECTORS_AND_LEI.md](OMNL_BANKING_DIRECTORS_AND_LEI.md).
|
||||
- **In Fineract:** Stored as a **Client Identifier** with document type **LEI** (or “Legal Entity Identifier”). The tenant must have a document/identifier type named LEI (or equivalent); the apply script uses the first matching type from `GET /clients/{clientId}/identifiers/template` (`allowedDocumentTypes`).
|
||||
- **In JSON:** `"lei": "<20-char LEI>"`. Leave `""` if not yet assigned.
|
||||
|
||||
### 2b. LEI, EBICS, BIC, and other codes in Address2 / Address3 or memo fields
|
||||
Many screens (and **offices** in particular) have no dedicated LEI, **EBICS**, **BIC**, or similar fields. You can still record them on the **entity** using free-text slots:
|
||||
|
||||
- **Client addresses (Fineract):** Put labeled lines in **`addressLine2`**, **`addressLine3`**, and/or **`street`** / **`addressLine1`** as appropriate (e.g. primary premises on line 1; identifiers on lines 2–3). The **Client Addresses** API accepts all of these fields.
|
||||
- **Office / organization UI:** Use any **memo**, **description**, **additional information**, or equivalent note field the tenant exposes, with the same labeling convention.
|
||||
- **Suggested format (human- and audit-friendly):** One token per line where possible, for example: `LEI:98450070C57395F6B906`, `BIC:ABCDEFGH`, `EBICS:<bank-specific id>`. Keep the canonical structured LEI in `"lei"` when you use this JSON as source of truth; mirror or supplement in address lines as needed for Fineract or regulator-facing exports.
|
||||
|
||||
### 3. Address
|
||||
- **In Fineract:** Stored via **Client Addresses** API: `POST /client/{clientId}/addresses` (and optionally `PUT` to update). Fields: `street`, `addressLine1`, `addressLine2`, `addressLine3`, `city`, `stateProvinceId`, `countryId`, `postalCode`, `isActive`. `countryId` and optionally `stateProvinceId` are Fineract reference IDs (from `GET /codes` or the UI).
|
||||
- **In JSON:** Under `address`: fill `street`, `addressLine1`, `addressLine2`, `city`, `postalCode`; set `countryId` (and `stateProvinceId` if applicable) when you have the Fineract code IDs. Use `null` or omit to skip address for that entity.
|
||||
- **In JSON:** Under `address`: fill `street`, `addressLine1`, `addressLine2`, `addressLine3`, `city`, `postalCode`; set `countryId` (and `stateProvinceId` if applicable) when you have the Fineract code IDs. Use `null` or omit to skip address for that entity. Use **`addressLine2` / `addressLine3`** for LEI / BIC / EBICS (and similar) when those identifiers are not stored elsewhere on the record.
|
||||
|
||||
### 4. Contacts
|
||||
- **In Fineract:** Client-level **mobile** and **email** (e.g. `mobileNo`, `emailAddress`). May be updatable via `PUT /clients/{clientId}` if the server allows it; otherwise via UI or datatables.
|
||||
@@ -59,8 +67,8 @@
|
||||
|
||||
1. Open [OMNL_ENTITY_MASTER_DATA.json](OMNL_ENTITY_MASTER_DATA.json).
|
||||
2. For each entity in `entities`:
|
||||
- **LEI:** Set `lei` to the 20-character LEI when assigned; otherwise leave `""`.
|
||||
- **Address:** Fill `address.street`, `addressLine1`, `addressLine2`, `city`, `postalCode`. For `countryId` (and `stateProvinceId`) you need the Fineract code IDs from the tenant (Admin → Code values / address config, or `GET /codes`).
|
||||
- **LEI:** Set `lei` to the 20-character LEI when assigned; otherwise leave `""`. If the live system only allows Address2/3 or a memo for identifiers, mirror LEI (and BIC, EBICS, etc.) there and document the same strings in `address.addressLine2` / `addressLine3` when you want the apply script to push them for **clients**.
|
||||
- **Address:** Fill `address.street`, `addressLine1`, `addressLine2`, `addressLine3`, `city`, `postalCode`. For `countryId` (and `stateProvinceId`) you need the Fineract code IDs from the tenant (Admin → Code values / address config, or `GET /codes`).
|
||||
- **Contact:** Fill `contact.mobileNo` and `contact.emailAddress` as appropriate; leave `""` if unknown.
|
||||
3. Save the file. The apply script reads this file and updates Fineract (names, then LEI identifiers, addresses, then contact fields when supported).
|
||||
|
||||
@@ -98,7 +106,8 @@ See [scripts/omnl/README.md](../../../scripts/omnl/README.md) for full script li
|
||||
|-------------|--------------|--------|
|
||||
| Entity name | `PUT /clients/{clientId}` body `firstname`, `lastname` | One-line display name in UI |
|
||||
| LEI | `POST /clients/{clientId}/identifiers` | `documentTypeId` = LEI type from template; `documentKey` = LEI value |
|
||||
| Address | `POST /client/{clientId}/addresses` | Requires `countryId` (and optionally `stateProvinceId`) from tenant codes |
|
||||
| Address | `POST /client/{clientId}/addresses` | Requires `countryId` (and optionally `stateProvinceId`) from tenant codes; `addressLine2` / `addressLine3` may carry LEI, BIC, EBICS, etc. |
|
||||
| LEI / BIC / EBICS (no dedicated field) | Address lines or UI memo | Same strings as in master JSON; offices often have no identifier API—use org memo or address-style fields in UI |
|
||||
| Mobile / email | `PUT /clients/{clientId}` body `mobileNo`, `emailAddress` | If server accepts; else use UI |
|
||||
|
||||
---
|
||||
|
||||
@@ -0,0 +1,24 @@
|
||||
---
|
||||
documentId: OMNL-JE-161-164
|
||||
settlementRef: HYBX-BATCH-001
|
||||
version: "1.0"
|
||||
note: Example JE ids — replace with live ids from your tenant.
|
||||
---
|
||||
|
||||
# Journal Entries 161–164 (Reference)
|
||||
|
||||
## 1. Purpose
|
||||
|
||||
Template for documenting **specific journal entry IDs** tied to HYBX-BATCH-001 or related clearing (ids vary by tenant).
|
||||
|
||||
## 2. Lookup
|
||||
|
||||
```bash
|
||||
JE_IDS=161,162,163,164 bash scripts/omnl/omnl-je-lookup-ids.sh
|
||||
```
|
||||
|
||||
## 3. Institution record
|
||||
|
||||
| JE id | Role | Office | Amount (USD) | Reference |
|
||||
|-------|------|--------|--------------|-----------|
|
||||
| (fill) | (fill) | 22 / HO | (fill) | HYBX-BATCH-001 |
|
||||
@@ -0,0 +1,38 @@
|
||||
---
|
||||
documentId: PVP-MULTILATERAL-NET-BANK-KANAYA
|
||||
settlementRef: HYBX-BATCH-001
|
||||
beneficiaryOfficeId: 22
|
||||
beneficiary: Bank Kanaya
|
||||
amountUsd: "1000000000.00"
|
||||
currency: USD
|
||||
valueDate: "2026-03-17"
|
||||
version: "1.0"
|
||||
---
|
||||
|
||||
# PvP Multilateral Net Settlement — Bank Kanaya (HYBX-BATCH-001)
|
||||
|
||||
## 1. Design summary
|
||||
|
||||
Settlement uses **HYBX / DBIS / OMNL** multilateral netting. **Bank Kanaya (office 22)** is the **net beneficiary** of USD 1,000,000,000.00 on OMNL M1 liabilities (`2100`) with offsetting **Due To / Due From** structure per Phase C pattern (`2410` / `1410` / `2100` as applicable to your posted JEs).
|
||||
|
||||
## 2. Clearing reference
|
||||
|
||||
- Cycle id (narrative): `DBIS-SET-HYBX-20260317-001`
|
||||
- Journal reference convention: `HYBX-BATCH-001-CLEARING` (where used)
|
||||
|
||||
## 3. Operator posting
|
||||
|
||||
Use institution maker-checker policy. Example script (when configured for this batch):
|
||||
|
||||
```bash
|
||||
# DRY_RUN=1 first
|
||||
bash scripts/omnl/omnl-pvp-post-clearing-bank-kanaya.sh
|
||||
```
|
||||
|
||||
Requires `omnl-fineract/.env` or root `.env` with OMNL API credentials.
|
||||
|
||||
## 4. Evidence
|
||||
|
||||
- Netting report and ledger: transaction package Volume C
|
||||
- OMNL snapshot: `omnl_transaction_package_snapshot.json`
|
||||
- GL definitions: [OMNL_GL_ACCOUNTS_REQUIRED.md](OMNL_GL_ACCOUNTS_REQUIRED.md)
|
||||
@@ -35,6 +35,16 @@ Configuration documentation for Apache Fineract + Mifos X as the **OMNL** (Organ
|
||||
| [P2P_SETTLEMENT_CRUNCHYGALAXY_RAIL.md](P2P_SETTLEMENT_CRUNCHYGALAXY_RAIL.md) | P2P banking rail: HYBX → CrunchyGalaxy settlement (request/response/capture, mirror entry, close package). |
|
||||
| [OMNL_OFFICE_ADDRESS_BOOK.md](OMNL_OFFICE_ADDRESS_BOOK.md) | **Address book:** Per-office API Banking Rail instructions and secrets reference (vault path only; no secrets in repo). |
|
||||
| [OMNL_OFFICE_MASTER_RUNBOOK_INDEX.md](OMNL_OFFICE_MASTER_RUNBOOK_INDEX.md) | **Master Runbook index:** Every office has one Master Runbook and optional sub-runbooks (funding, P2P, audit, DR, upload). |
|
||||
| [BANK_KANAYA_OFFICE_RUNBOOK.md](BANK_KANAYA_OFFICE_RUNBOOK.md) | **Bank Kanaya (OMNL office 22)** — HYBX-BATCH-001 beneficiary; create office: `omnl-office-create-bank-kanaya.sh`; PvP JEs: `omnl-pvp-post-clearing-bank-kanaya.sh`. |
|
||||
| [INDONESIA_MASTER_PROOF_MANIFEST.md](INDONESIA_MASTER_PROOF_MANIFEST.md) | **Indonesia submission** — Master proof manifest for BI/MoF package (HYBX-BATCH-001). |
|
||||
| [INDONESIA_CENTRAL_BANK_SUBMISSION_BINDER.md](INDONESIA_CENTRAL_BANK_SUBMISSION_BINDER.md) | Six-volume binder structure; build via `scripts/omnl/build-transaction-package-zip.sh`. |
|
||||
| [INDONESIA_SAMPLE_COVER_AND_TOC.md](INDONESIA_SAMPLE_COVER_AND_TOC.md) | Transmission-ready cover letter + master TOC (metadata in YAML front matter). |
|
||||
| [OMNL_API_TRANSACTION_PACKAGE.md](OMNL_API_TRANSACTION_PACKAGE.md) | `omnl_transaction_package_snapshot.json` for regulator Section 2. |
|
||||
| [PvP_MULTILATERAL_NET_SETTLEMENT_BANK_KANAYA.md](PvP_MULTILATERAL_NET_SETTLEMENT_BANK_KANAYA.md) | PvP / multilateral net narrative for Bank Kanaya batch. |
|
||||
| [INDONESIA_PACKAGE_4_995_EVIDENCE_STANDARD.md](INDONESIA_PACKAGE_4_995_EVIDENCE_STANDARD.md) | **4.995 per-category** evidence standard + honesty clause. |
|
||||
| [INDONESIA_SUBMISSION_PACKAGE_GRADE_AND_SCORECARD.md](INDONESIA_SUBMISSION_PACKAGE_GRADE_AND_SCORECARD.md) | Scorecard; targets **4.995** per row (not 5.0). |
|
||||
| [HYBX_BATCH_001_OPERATOR_CHECKLIST.md](HYBX_BATCH_001_OPERATOR_CHECKLIST.md) | **End-to-end operator checklist** — Fineract, zip build, verify, 4.995 strict, transmission. |
|
||||
| [OMNL_BANKING_DIRECTORS_AND_LEI.md](OMNL_BANKING_DIRECTORS_AND_LEI.md) | **OMNL LEI** + **directors/officers** roster; links [lei.info/98450070C57395F6B906](https://lei.info/98450070C57395F6B906). |
|
||||
|
||||
## Scripts
|
||||
|
||||
|
||||
@@ -0,0 +1,32 @@
|
||||
---
|
||||
documentId: REGULATORY-INDONESIA-BANK-KANAYA
|
||||
entity: Bank Kanaya
|
||||
jurisdiction: Indonesia
|
||||
settlementRef: HYBX-BATCH-001
|
||||
regulators:
|
||||
- Bank Indonesia
|
||||
- Ministry of Finance
|
||||
- PPATK-as-applicable
|
||||
version: "1.0"
|
||||
disclaimer: Template for institution legal review — not legal advice.
|
||||
---
|
||||
|
||||
# Regulatory Context — Indonesia (Bank Kanaya Submission)
|
||||
|
||||
## 1. Purpose
|
||||
|
||||
Frames the **HYBX-BATCH-001** evidence package for **legitimacy and supervisory review** (BI/MoF; PPATK where AML reporting applies). Institution counsel completes institution-specific citations.
|
||||
|
||||
## 2. Submission posture
|
||||
|
||||
- **Cross-border settlement** with **OMNL** as settlement ledger for the USD leg.
|
||||
- **No traditional nostro chain** for this design; Section 3 N/A memorandum documents that fact.
|
||||
|
||||
## 3. Data and retention
|
||||
|
||||
- Retain package + `HYBX-BATCH-001-SUBREG` (signatures, TSA tokens, correspondence) **≥ 10 years** or local policy, whichever stricter.
|
||||
- Hash manifest: `audit_manifest.json` + `HASH_NOTARIZATION_ANCHOR.txt`.
|
||||
|
||||
## 4. Institution action
|
||||
|
||||
Replace this template with **cited statutes, BI circulars, and internal policies** approved by compliance.
|
||||
@@ -0,0 +1,34 @@
|
||||
---
|
||||
documentId: TRANSACTION-EXPLANATION-JURISDICTIONS
|
||||
settlementRef: HYBX-BATCH-001
|
||||
valueDate: "2026-03-17"
|
||||
beneficiaryOfficeId: 22
|
||||
version: "1.0"
|
||||
---
|
||||
|
||||
# Transaction Explanation — Jurisdictions and Flow
|
||||
|
||||
## 1. Narrative
|
||||
|
||||
**HYBX-BATCH-001** settles **USD 1,000,000,000.00** to **Bank Kanaya (Indonesia)** via **DBIS multilateral net clearing** and **OMNL** book entries. The USD leg is a **liability of OMNL** to the beneficiary office (M1 / interoffice structure per posted journals).
|
||||
|
||||
## 2. Jurisdictions (illustrative)
|
||||
|
||||
| Stage | Jurisdiction / venue |
|
||||
|--------|----------------------|
|
||||
| Clearing narrative | DBIS policy / rulebooks |
|
||||
| Ledger | OMNL tenant (institution-hosted or designated) |
|
||||
| Beneficiary | Indonesia (Bank Kanaya) |
|
||||
|
||||
## 3. Diagram (text)
|
||||
|
||||
```
|
||||
HYBX participants ──► DBIS netting ──► OMNL GL (2100/2410/1410 pattern)
|
||||
│
|
||||
▼
|
||||
Bank Kanaya (office 22) beneficiary position
|
||||
```
|
||||
|
||||
## 4. HTML diagram
|
||||
|
||||
See [TRANSACTION_EXPLANATION_VISUAL.html](TRANSACTION_EXPLANATION_VISUAL.html) (optional print/PDF).
|
||||
@@ -0,0 +1,28 @@
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8"/>
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
||||
<meta name="documentId" content="TRANSACTION-EXPLANATION-VISUAL"/>
|
||||
<meta name="settlementRef" content="HYBX-BATCH-001"/>
|
||||
<meta name="beneficiaryOfficeId" content="22"/>
|
||||
<title>HYBX-BATCH-001 — Settlement flow</title>
|
||||
<style>
|
||||
body { font-family: system-ui, sans-serif; max-width: 48rem; margin: 2rem auto; padding: 0 1rem; color: #1a1a1a; }
|
||||
h1 { font-size: 1.25rem; }
|
||||
.box { border: 1px solid #333; border-radius: 6px; padding: 0.75rem 1rem; margin: 0.5rem 0; background: #fafafa; }
|
||||
.arrow { text-align: center; margin: 0.25rem 0; }
|
||||
footer { margin-top: 2rem; font-size: 0.85rem; color: #555; }
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
<h1>HYBX-BATCH-001 — Visual flow (reference)</h1>
|
||||
<p>Value date <strong>2026-03-17</strong> · Beneficiary <strong>Bank Kanaya (OMNL office 22)</strong> · USD <strong>1,000,000,000.00</strong></p>
|
||||
<div class="box">HYBX / participant legs</div>
|
||||
<div class="arrow">↓ DBIS multilateral net</div>
|
||||
<div class="box">OMNL settlement ledger (M1 / interoffice)</div>
|
||||
<div class="arrow">↓</div>
|
||||
<div class="box">Bank Kanaya — credited net position</div>
|
||||
<footer>Evidence: transaction package Volume C (ledger + Merkle) and Volume A Section 2 (OMNL snapshot). Not a legal opinion.</footer>
|
||||
</body>
|
||||
</html>
|
||||
@@ -54,7 +54,7 @@
|
||||
| **00-meta** (tasks, next steps, phases) | [00-meta/NEXT_STEPS_INDEX.md](00-meta/NEXT_STEPS_INDEX.md), [00-meta/PHASES_AND_TASKS_MASTER.md](00-meta/PHASES_AND_TASKS_MASTER.md) |
|
||||
| **02-architecture** | [02-architecture/](02-architecture/) |
|
||||
| **03-deployment** | [03-deployment/OPERATIONAL_RUNBOOKS.md](03-deployment/OPERATIONAL_RUNBOOKS.md), [03-deployment/DEPLOYMENT_ORDER_OF_OPERATIONS.md](03-deployment/DEPLOYMENT_ORDER_OF_OPERATIONS.md) |
|
||||
| **04-configuration** | [04-configuration/README.md](04-configuration/README.md), [04-configuration/ADDITIONAL_PATHS_AND_EXTENSIONS.md](04-configuration/ADDITIONAL_PATHS_AND_EXTENSIONS.md) (paths, registry, token-mapping, LiFi/Jumper) |
|
||||
| **04-configuration** | [04-configuration/README.md](04-configuration/README.md), [04-configuration/ADDITIONAL_PATHS_AND_EXTENSIONS.md](04-configuration/ADDITIONAL_PATHS_AND_EXTENSIONS.md) (paths, registry, token-mapping, LiFi/Jumper); **OMNL Indonesia / HYBX-BATCH-001:** [04-configuration/mifos-omnl-central-bank/HYBX_BATCH_001_OPERATOR_CHECKLIST.md](04-configuration/mifos-omnl-central-bank/HYBX_BATCH_001_OPERATOR_CHECKLIST.md), [04-configuration/mifos-omnl-central-bank/INDONESIA_PACKAGE_4_995_EVIDENCE_STANDARD.md](04-configuration/mifos-omnl-central-bank/INDONESIA_PACKAGE_4_995_EVIDENCE_STANDARD.md) |
|
||||
| **06-besu** | [06-besu/MASTER_INDEX.md](06-besu/MASTER_INDEX.md) |
|
||||
| **07-ccip** | [07-ccip/](07-ccip/), [00-meta/CW_BRIDGE_TASK_LIST.md](00-meta/CW_BRIDGE_TASK_LIST.md) |
|
||||
| **11-references** | [11-references/ADDRESS_MATRIX_AND_STATUS.md](11-references/ADDRESS_MATRIX_AND_STATUS.md), [11-references/CONTRACT_ADDRESSES_REFERENCE.md](11-references/CONTRACT_ADDRESSES_REFERENCE.md), [11-references/DEPLOYER_CONTRACTS_INVENTORY_AND_VERIFICATION_STATUS.md](11-references/DEPLOYER_CONTRACTS_INVENTORY_AND_VERIFICATION_STATUS.md) (all contracts by deployer wallet, network, verified/not), [11-references/DEPLOYED_TOKENS_BRIDGES_LPS_AND_ROUTING_STATUS.md](11-references/DEPLOYED_TOKENS_BRIDGES_LPS_AND_ROUTING_STATUS.md) (tokens, bridges, DODO/Uniswap LPs, full route map), [11-references/DEPLOYER_TO_PUBLIC_STABLECOIN_ROUTES.md](11-references/DEPLOYER_TO_PUBLIC_STABLECOIN_ROUTES.md) (deployer→public stablecoin routes), [11-references/ROUTES_NO_PREFUNDED_BRIDGE_REQUIRED.md](11-references/ROUTES_NO_PREFUNDED_BRIDGE_REQUIRED.md) (routes where bridge pre-fund not required), [11-references/CCIP_138_DESTINATION_RECEIVER_BY_CHAIN_AND_TOKEN.md](11-references/CCIP_138_DESTINATION_RECEIVER_BY_CHAIN_AND_TOKEN.md) (per-chain per-token: mint vs receive+forward vs release), [11-references/DEPLOYMENT_DATA_SOURCES_INDEX.md](11-references/DEPLOYMENT_DATA_SOURCES_INDEX.md) (dotenv and config files with contract deployments), [11-references/EXPLORER_TOKEN_LIST_CROSSCHECK.md](11-references/EXPLORER_TOKEN_LIST_CROSSCHECK.md) (Explorer /tokens vs repo token lists), [11-references/HARDWARE_INVENTORY_MASTER.md](11-references/HARDWARE_INVENTORY_MASTER.md), [11-references/13_NODE_NETWORK_AND_CABLING_CHECKLIST.md](11-references/13_NODE_NETWORK_AND_CABLING_CHECKLIST.md), [11-references/13_NODE_AND_ASSETS_BRING_ONLINE_CHECKLIST.md](11-references/13_NODE_AND_ASSETS_BRING_ONLINE_CHECKLIST.md) |
|
||||
|
||||
50
docs/dbis-rail/DBIS_SETTLEMENT_RULEBOOK.md
Normal file
50
docs/dbis-rail/DBIS_SETTLEMENT_RULEBOOK.md
Normal file
@@ -0,0 +1,50 @@
|
||||
---
|
||||
documentId: DBIS-SETTLEMENT-RULEBOOK
|
||||
title: DBIS Settlement Rulebook (HYBX / OMNL evidence)
|
||||
version: "1.0"
|
||||
status: operational-reference
|
||||
relatedSettlementRef: HYBX-BATCH-001
|
||||
relatedCycleId: DBIS-SET-HYBX-20260317-001
|
||||
network: DBIS Mainnet (ChainID 138)
|
||||
companionDocuments:
|
||||
- DBIS_RAIL_RULEBOOK_V1.md
|
||||
- DBIS_RAIL_TECHNICAL_SPEC_V1.md
|
||||
lastReviewed: "2026-03-17"
|
||||
---
|
||||
|
||||
# DBIS Settlement Rulebook
|
||||
|
||||
**Purpose:** Define settlement batch evidence, netting semantics, and **ledger row canonicalisation** used for Merkle proofs and regulatory packages (e.g. HYBX-BATCH-001).
|
||||
|
||||
## 1. Scope
|
||||
|
||||
- Applies to **DBIS clearing cycles** that settle through **OMNL** books (M1 liabilities, interoffice due-to/due-from).
|
||||
- Cross-references [DBIS Rail Rulebook v1](DBIS_RAIL_RULEBOOK_V1.md) for good funds, finality, and rail policy.
|
||||
|
||||
## 2. Batch identity
|
||||
|
||||
| Field | Description |
|
||||
|--------|-------------|
|
||||
| `settlementBatch` | Batch identifier (e.g. `HYBX-BATCH-001`). |
|
||||
| `settlementCycle` | Clearing cycle id (e.g. `DBIS-SET-HYBX-20260317-001`). |
|
||||
| `valueDate` | Business value date (UTC date string). |
|
||||
|
||||
## 3. Netting report
|
||||
|
||||
Multilateral net positions are reported per participant. For HYBX-BATCH-001 the beneficiary receives the net **credit** in USD; liquidity provider shows offsetting **debit** on OMNL; system net is zero.
|
||||
|
||||
## 4. Annex B — Canonical line for Merkle leaves (CSV)
|
||||
|
||||
**Input file:** UTF-8 CSV, LF line endings, header row present.
|
||||
|
||||
**Leaf input:** Each **complete logical line** of the file (from first byte of the line through the line terminator excluded from hash input per generator: hash is `SHA-256(UTF-8 bytes of the line string without trailing newline on that line)`).
|
||||
|
||||
**Ordering:** Leaves are taken in **file order** (top to bottom), including the header row as the first leaf.
|
||||
|
||||
**Root:** Binary Merkle tree over leaf digests: `H(left || right)` with SHA-256; if odd count at a level, duplicate last node.
|
||||
|
||||
**Verification:** Recompute leaves from the same CSV bytes, rebuild tree, compare root to published `merkle_root_HYBX-BATCH-001.txt`.
|
||||
|
||||
## 5. Evidence retention
|
||||
|
||||
Submitting institutions retain: CSV, Merkle log, generation tooling identity, and audit manifest binding file hashes to `HASH_NOTARIZATION_ANCHOR.txt` per package build procedure.
|
||||
@@ -5,6 +5,7 @@ This folder holds the **DBIS Rail** technical specification and operational rule
|
||||
- **E2E White Paper (simple terms):** [E2E_WHITEPAPER_SIMPLE.md](E2E_WHITEPAPER_SIMPLE.md) — end-to-end flow, components, and controls in plain language.
|
||||
- **Technical Spec:** [DBIS_RAIL_TECHNICAL_SPEC_V1.md](DBIS_RAIL_TECHNICAL_SPEC_V1.md) — contract set, MintAuth, signer quorum, replay protection, audit events.
|
||||
- **Rulebook:** [DBIS_RAIL_RULEBOOK_V1.md](DBIS_RAIL_RULEBOOK_V1.md) — good funds matrix, finality rules, accounting sequence, reversal handling, signer governance, incident controls, audit standards.
|
||||
- **Settlement rulebook (HYBX / OMNL evidence):** [DBIS_SETTLEMENT_RULEBOOK.md](DBIS_SETTLEMENT_RULEBOOK.md) — batch identity, netting narrative, **Annex B** Merkle leaf canonicalisation for regulator packages.
|
||||
- **Security Threat Model:** [DBIS_RAIL_SECURITY_THREAT_MODEL_V1.md](DBIS_RAIL_SECURITY_THREAT_MODEL_V1.md) — trust boundaries, authorization/ledger/router/mint/validator/off-chain threats, severity classification, residual risk, review cycle.
|
||||
- **Regulator-Facing Brief:** [DBIS_RAIL_REGULATOR_BRIEF_V1.md](DBIS_RAIL_REGULATOR_BRIEF_V1.md) — institutional narrative for counterparties, examiners, counsel, and risk committees: overview, governance, lifecycle, good funds, controls, risk posture, audit, residual risk, amendment.
|
||||
- **Audit Readiness Checklist:** [DBIS_RAIL_AUDIT_READINESS_CHECKLIST_V1.md](DBIS_RAIL_AUDIT_READINESS_CHECKLIST_V1.md) — pre-audit control verification: mint path, authorization, signer governance, accounting/evidence, router controls, validator layer, emergency controls, documentation integrity.
|
||||
|
||||
Reference in New Issue
Block a user