code wiki / (root) / nx_edgar_submissions.nx

nx_edgar_submissions.nx

buildroot/runtime/nx_edgar_submissions.nx

8357 B160 linesdepth 21pulls 155 transitivereach 0 importersview sourcekind tooltopic edgar
docsdependenciesstructsconstsfunctions

about

nx_edgar_submissions.nx -- THE PERSON BINDING: a filer CIK -> what that filer actually IS. WHY THIS EXISTS: nx_edgar_lib extracts issuer-keyed FACTS (Apple, StockholdersEquity, a value). Nothing mapped a PERSON to the corpora holding their work -- measured 2026-08-15, nx_capsearch over 1,092 registered tools for "career filings company executive officer history" returned nothing relevant. SEC assigns a CIK to INDIVIDUALS as well as companies, and data.sec.gov/submissions/CIK##########.json enumerates that filer's own history. This is the first rung of that binding: name the filer and classify the CIK from its FORM DISTRIBUTION. THE DISCRIMINATOR IS STRUCTURAL, NOT A TUNED THRESHOLD: Forms 3/4/5 are filed BY an insider ABOUT an issuer -- a company does not file a Form 4 about itself -- while 10-K/10-Q are filed BY the issuer. Those form codes are SEC SPEC CONSTANTS (like a DNS label limit), not policy anyone tunes. VERDICT HAS THREE STATES and abstains rather than guessing: PERSON (insider forms, no issuer forms), ISSUER (issuer forms, no insider forms), UNDETERMINED (both or neither). A two-state classifier here would have to invent a ratio, and an invented ratio is a magic number wearing a verdict's name. Composes, never re-implements: edgar_ua_header (declared identity, fail-closed), edgar_arr_bounds, edgar_arr_count_val, edgar_str_first -- all from nx_edgar_lib. license_tier: ORIGINAL

dependencies 5 imports · 0 importers

nx_syscalls.nx nx_x509_trust_store.nx nx_trust_store_load_from_certdata. nx_https_fetch_follow.nx nx_edgar_lib.nx nx_edgar_submissions.nx

imports: nx_syscalls.nxnx_x509_trust_store.nxnx_trust_store_load_from_certdata.nxnx_https_fetch_follow.nxnx_edgar_lib.nx

imported by: nobody (leaf or entry point)

call flow from main pre-order; caps 40 nodes / depth 6 declared; ↻ = already shown

main sp sys_write sys_mmap nxa_die sys_write ↻ sys_exit nxa_lock_take nxa_lock_addr sys_write ↻ nxa_lock_give nxa_lock_addr ↻ nxa_report_overrun sys_write ↻ nxa_dump_printable sys_write ↻ nxa_dump_sizes sys_write ↻ es_pad_cik slen nx_trust_store_load_from_c sys_mmap ↻ sys_read_file sys_openat_rd sys_lseek sys_mmap ↻ sys_read sys_munmap sys_close nx_nss_certdata_parse sys_mmap ↻ _pat_class_cert _pat_value_octal _pat_end _find_newline _starts_with _parse_octal_line sys_mmap ↻ _is_space _decode_octal_escape

structs

none

consts

25const ES_CAP: i64 = 16777216 // submissions JSON for a long-lived filer runs to a few MB
26const ES_TRUST: i64 = 4194304
27const ES_CIKDIGITS: i64 = 10 // SEC pads CIK to exactly 10 digits in the submissions path
32const ES_RECENT_CAP: i64 = 1000

functions

34func sp(s: *u8) -> i64 { var n: i64 = 0; while s[n] != (0 as u8) { n = n + 1 } sys_write(1, s, n); return 0 }
called by 1: main calls 1: sys_write
35func sn(v: i64) -> i64
called by 1: main calls 2: sys_writesys_mmap
46func scat(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 }
called by 1: main
47func slen(s: *u8) -> i64 { var n: i64 = 0; while s[n] != (0 as u8) { n = n + 1 } return n }
called by 1: es_pad_cik
51func es_pad_cik(src: *u8, out: *u8) -> i64
called by 1: main calls 1: slen
66func main(argc: i64, argv: *i64) -> i64