nx_fetchfail.nx
buildroot/runtime/nx_fetchfail.nx
about
nx_fetchfail.nx -- WIRES THE CONTENT AXIS TO A PLANE. It adds NO ruler of its own.
WHY THIS EXISTS AND WHAT IT DELIBERATELY DOES NOT DO. On 2026-08-25 a sibling seat landed the content
classifier (mi_content_class, in nx_mirrorintegrity_lib.nx) which decides whether a stored mirror is
the DOCUMENT or merely a bot wall, a login gate, an error page or a JS shell. Measured the same hour:
that function had exactly ONE reference in the whole tree -- its own definition, over 23,234 files at
corpus_complete=1 -- and the conf it reads did not exist. It was BUILT + UNWIRED, and a classifier
nobody calls is a comment. So this organ is the wiring, not a second opinion:
A DUPLICATE RULER IS THE DEBT. EXTEND THE INCUMBENT, NEVER ADD A SECOND.
Every classification below comes from mi_content_class. If its verdict is wrong, it is fixed THERE.
TWO VERBS, AND THE FIRST ONE EXISTS BECAUSE THE BAR HAD TO BE DERIVED RATHER THAN PICKED:
probe -- walk the corpus and print the PROSE-BYTE DISTRIBUTION. No plane write, no verdict. This
is the measurement from which prose-floor-bytes is chosen, and the lib's own comment
requires that the shipped bar carry the distribution it came from. A threshold picked by
taste is a magic number wearing a config key.
census -- classify with the conf bar and emit the plane. (default)
THE PLANE: knowledge/store/fetchfail- (seg-store; sovereign rows, NO third-party format anywhere).
The prefix is spelled in FULL and never bare: a bare prefix resolves against CWD and makes a populated
plane answer EMPTY, which reads exactly like a plane that was never seeded.
Row key = the mirror path (stable, so a re-run UPDATES rather than duplicates: rule 10)
Row value = url|mirror|class|reason|remedy|prose|bytes|detected_at|state
state is OPEN while the body still classifies as a failure and flips to RESOLVED on the first run
after it is re-fetched clean -- AN AUTOFILED ROW WITH NO AUTO-CLOSE IS A LATCH, NOT A DETECTOR.
nx_fetchfail [probe|census] [dir] default: census knowledge/fetched
license_tier: ORIGINAL expect_exit: 0
dependencies 2 imports · 0 importers
imports: nx_mirrorintegrity_lib.nxnx_seg_store.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
| 32 | const FF_PLANE: *u8 = "knowledge/store/fetchfail-\x00" |
| 40 | const FF_REFSDIR_A: *u8 = "buildroot/knowledge/compare\x00" |
| 41 | const FF_REFSDIR_B: *u8 = "knowledge/compare\x00" |
| 42 | const FF_REFSDIR_ABS: *u8 = "/volume1/homes/elderwesto/nishihost/buildroot/knowledge/compare\x00" |
| 43 | const FF_REFSEXT: *u8 = ".refs\x00" |
| 44 | const FF_ST_OPEN: *u8 = "OPEN\x00" |
| 45 | const FF_ST_RES: *u8 = "RESOLVED\x00" |
| 46 | const FF_URL_FIELD: i64 = 3 // refs row: ref|key|cite|url|mirror|pin|accessed|class|grounds |
| 47 | const FF_MIR_FIELD: i64 = 4 |
| 48 | const FF_MAXREFS: i64 = 512 // declared: .refs files loaded; overflow ANNOUNCES, never silent |
| 49 | const FF_MAXFIELD: i64 = 32 |
| 50 | const FF_ROWCAP: i64 = 4096 |
| 51 | const FF_KIND_LIVE: i64 = 1 // seg-store live-row kind (0 is a tombstone) |
| 52 | const FF_DIRBUF: i64 = 131072 |
| 53 | const FF_PATHCAP: i64 = 4096 |
| 54 | const FF_MAXDEPTH: i64 = 8 |
| 55 | const FF_DT_DIR: i64 = 4 |
| 56 | const FF_WORKCAP: i64 = 1048576 |
| 57 | const FF_WORKFLUSH: i64 = 1047000 |
| 58 | const FF_BAR: i64 = 124 // '|' |
| 59 | const FF_NL: i64 = 10 |
| 66 | const FF_QPFX: *u8 = "q:\x00" |
| 67 | const FF_MAXPRIOR: i64 = 65536 // declared: prior rows loaded for auto-close; overflow ANNOUNCES |
| 68 | const FF_PRIORBUF: i64 = 16777216 |
| 71 | const FF_C_FILES: i64 = 0 |
| 72 | const FF_C_FLAG: i64 = 1 |
| 73 | const FF_C_OK: i64 = 2 |
| 74 | const FF_C_NOTHTML: i64 = 3 |
| 75 | const FF_C_RESOLV: i64 = 4 |
| 76 | const FF_C_UNREAD: i64 = 5 |
| 80 | const FF_NBUCK: i64 = 8 |
| 81 | const FF_B1: i64 = 1 |
| 82 | const FF_B2: i64 = 16 |
| 83 | const FF_B3: i64 = 64 |
| 84 | const FF_B4: i64 = 256 |
| 85 | const FF_B5: i64 = 1024 |
| 86 | const FF_B6: i64 = 4096 |
| 87 | const FF_B7: i64 = 16384 |
functions
| 89 | func ff_streq(a: *u8, b: *u8) -> i64 |
| 100 | func ff_bucket(p: i64) -> i64 called by 1: ff_walk |
| 110 | func ff_bucket_lo(i: i64) -> i64 called by 1: main |
| 124 | func ff_refs_load_one(dir: *u8, ptrs: *i64, lens: *i64, ovf: *i64) -> i64 |
| 179 | func ff_refs_load(ptrs: *i64, lens: *i64, ovf: *i64, which: *i64) -> i64 |
| 194 | func ff_url_for(mirror: *u8, ptrs: *i64, lens: *i64, nrefs: i64, out: *u8) -> i64 |
| 265 | func ff_qkey(buf: *u8, n: i64) -> i64 |
| 276 | func ff_prior_load(h: *i64, paths: *i64, states: *i64, blob: *u8, ovf: *i64) -> i64 |
| 314 | func ff_prior_open(path: *u8, paths: *i64, states: *i64, n: i64) -> i64 |
| 324 | func ff_walk(p: *u8, pn: i64, depth: i64, mode: i64, floor: i64, called by 2: ff_walkmain calls 13: mi_isdotdotmi_joinff_walkmi_content_classff_bucketff_prior_open+7 |
| 448 | func main(argc: i64, argv: *i64) -> i64 |