code wiki / _hdl_build / nx_coe_intoto.nx
nx_coe_intoto.nx
buildroot/runtime/_hdl_build/nx_coe_intoto.nx
about
nx_coe_intoto.nx -- CHAIN-OF-EVIDENCE in-toto/SLSA ATTESTATION EXPORT (F714, interop boundary)
Reads the latest ed25519-signed frame (coe_signed.log) + the latest Merkle STH (coe_witness.log)
and emits an in-toto ITE-6 Statement (https://in-toto.io/Statement/v1) that EXTERNAL Sigstore/SLSA
verifiers can consume: subject.digest.sha256 = the content CID, predicate carries the frame hash,
the ed25519 signature + public key, the transparency-log root + proof status, the 5 pillars, and
the sovereign builder id. EXPORT-ONLY (boundary converter) -- we build ON our own primitives, never
on in-toto; this just speaks its dialect at the edge. Written to knowledge/status/coe_intoto.json.
Composes proven libs only: nx_str/nx_syscalls. x86-lane. license_tier: ORIGINAL
dependencies 3 imports · 0 importers
imports: nx_str.nxnx_syscalls.nxnx_estate_path.nx
imported by: nobody (leaf or entry point)
call flow from main pre-order; caps 40 nodes / depth 6 declared; ↻ = already shown
structs
| none |
consts
| 12 | const CI_MAGIC_4096: i64 = 4096 |
| 14 | const CI_CAP: i64 = 1048576 |
functions
| 16 | func ci_puts(s: *u8) -> i64 { sys_write(1, s, nx_str_len(s)); return 0 } |
| 17 | func ci_pi(v: i64) -> i64 |
| 29 | func ci_cat(dst: *u8, off: i64, s: *u8) -> i64 { var i: i64 = 0; while s[i] != (0 as u8) { dst[off+i] = s[i]; i = i + 1 } return off + i } |
| 30 | func ci_q(dst: *u8, off: i64) -> i64 { dst[off] = 34 as u8; return off + 1 } called by 1: ci_cq |
| 31 | func ci_cq(dst: *u8, off: i64, s: *u8) -> i64 { var o: i64 = ci_q(dst, off); o = ci_cat(dst, o, s); o = ci_q(dst, o); return o } |
| 32 | func ci_line_end(b: *u8, i0: i64, n: i64) -> i64 { var e: i64 = i0; while e < n { if b[e] == (10 as u8) { return e } e = e + 1 } return n } called by 1: main |
| 33 | func ci_find_tab(b: *u8, i0: i64, e: i64) -> i64 { var j: i64 = i0; while j < e { if b[j] == (9 as u8) { return j } j = j + 1 } return e } called by 1: main |
| 34 | func ci_slice(b: *u8, i0: i64, e: i64, dst: *u8) -> i64 { var o: i64 = 0; var j: i64 = i0; while j < e { dst[o] = b[j]; o = o + 1; j = j + 1 } dst[o] = 0 as u8; return o } called by 1: main |
| 35 | func ci_write_file(path: *u8, buf: *u8, n: i64) -> i64 |
| 43 | func main() -> i64 |