Some checks failed
CI/CD Pipeline / Lint and Format (push) Failing after 46s
CI/CD Pipeline / Terraform Validation (push) Failing after 35s
CI/CD Pipeline / Kubernetes Validation (push) Successful in 37s
Deploy ChainID 138 / Deploy ChainID 138 (push) Failing after 1m50s
HYBX OMNL TypeScript & anchor / token-aggregation build + reconcile artifact (push) Failing after 2m19s
Validation / validate-genesis (push) Successful in 51s
Validation / validate-terraform (push) Failing after 39s
Validation / validate-kubernetes (push) Failing after 10s
CI/CD Pipeline / Solidity Contracts (push) Failing after 12m56s
Validation / validate-smart-contracts (push) Failing after 12s
CI/CD Pipeline / Security Scanning (push) Failing after 15m52s
Validation / validate-security (push) Failing after 10m59s
Validation / validate-documentation (push) Failing after 17s
Validate Token List / validate (push) Failing after 30s
OMNL reconcile anchor / Run omnl:reconcile and upload artifacts (push) Failing after 26s
Verify Deployment / Verify Deployment (push) Failing after 56s
35 lines
1.2 KiB
JavaScript
35 lines
1.2 KiB
JavaScript
#!/usr/bin/env node
|
|
/**
|
|
* Canonical reconciliation hash: IPSAS registry + journal matrix JSON (minor units / narratives unchanged).
|
|
* Exit 0 always; stdout JSON with sha256 for audit trail anchoring.
|
|
* Env: OMNL_IPSAS_GL_REGISTRY, OMNL_JOURNAL_MATRIX_PATH (optional overrides).
|
|
*/
|
|
import { readFileSync } from 'fs';
|
|
import { createHash } from 'crypto';
|
|
import { resolve } from 'path';
|
|
import { fileURLToPath } from 'url';
|
|
|
|
const __dirname = fileURLToPath(new URL('.', import.meta.url));
|
|
const regPath =
|
|
process.env.OMNL_IPSAS_GL_REGISTRY ||
|
|
resolve(__dirname, '../../../config/omnl-ipsas-gl-registry.json');
|
|
const matrixPath =
|
|
process.env.OMNL_JOURNAL_MATRIX_PATH ||
|
|
resolve(__dirname, '../../../config/omnl-journal-matrix.json');
|
|
|
|
const reg = readFileSync(regPath, 'utf8');
|
|
const matrix = readFileSync(matrixPath, 'utf8');
|
|
const canonical = JSON.stringify({
|
|
registry: JSON.parse(reg),
|
|
matrix: JSON.parse(matrix),
|
|
});
|
|
const sha256 = createHash('sha256').update(canonical).digest('hex');
|
|
const out = {
|
|
ok: true,
|
|
sha256,
|
|
registryPath: regPath,
|
|
matrixPath: matrixPath,
|
|
generatedAt: new Date().toISOString(),
|
|
};
|
|
process.stdout.write(JSON.stringify(out, null, 2) + '\n');
|