nx_entity_discover.nx
buildroot/runtime/nx_entity_discover.nx
about
nx_entity_discover.nx -- SREACH R3b: CRAWLER-DRIVEN ENTITY DISCOVERY.
module: nishi-core.search.entity_discover
depends: nx_guarded_run.nx, nx_html_links.nx, nx_bm25.nx,
/tmp/_ed_fetch_html.sov.elf (seed HTML), /tmp/_dlr_fetch_one.sov.elf (text)
capability: GATE + EVIDENCE
OPERATOR LINE CLOSED HERE: seeds are no longer hand-curated. The crawler
starts from entity hub pages OUR index already reaches (wikidata + wikipedia),
extracts their outbound links with the nx_html_links kernel, keeps the
CROSS-HOST ones whose URL names the entity, then guarded-fetches each
DISCOVERED page over the sovereign stack, indexes it, and retrieves the
entity query from THAT index. Every result row is durable evidence; walls
stay named-not-faked. GATE (Rule #11 bars):
discovered >= 3 -- the link harvest found genuinely new cross-host pages
retrieved >= 1 -- at least one DISCOVERED page fetched+indexed+retrievable
(conservative: anonymous fetches of social hosts often hit login walls --
a wall is a finding, not a discovery failure)
dependencies 8 imports · 0 importers
imports: nx_str.nxnx_syscalls.nxnx_search_inverted.nxnx_guarded_run.nxnx_html_links.nxnx_bm25.nxnx_html_to_text.nxnx_content_measure.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
| 29 | const NX_MAGIC_131072: i64 = 131072 |
| 30 | const NX_MAGIC_524288: i64 = 524288 |
| 31 | const NX_MAGIC_2048: i64 = 2048 |
| 33 | const NX_ED_SEEDS: i64 = 2 |
| 34 | const NX_ED_MAXDISC: i64 = 8 |
| 35 | const NX_ED_DEADLINE: i64 = 18000 |
| 36 | const NX_ED_MIN_DISCOVERED: i64 = 3 |
| 37 | const NX_ED_MIN_RETRIEVED: i64 = 1 |
functions
| 39 | func ed_p(s: *u8) -> i64 { sys_write(1, s, nx_str_len(s)); return 0 } |
| 40 | func ed_n(v: i64) -> i64 |
| 48 | func ed_f(fd: i64, s: *u8) -> i64 { sys_write(fd, s, nx_str_len(s)); return 0 } |
| 49 | func ed_fn(fd: i64, v: i64) -> i64 |
| 60 | func ed_lc(c: i64) -> i64 { if c >= 0x41 { if c <= 0x5A { return c + 0x20 } } return c } called by 1: ed_ci_contains |
| 61 | func ed_ci_contains(hay: *u8, needle: *u8) -> i64 |
| 77 | func ed_streq(a: *u8, b: *u8) -> i64 called by 1: main |
| 84 | func ed_seed_url(e: i64) -> *u8 called by 1: main |
| 89 | func ed_seed_out(e: i64) -> *u8 |
| 93 | func ed_disc_out(d: i64) -> *u8 |
| 104 | func ed_read_all(path: *u8, buf: *u8, cap: i64) -> i64 |
| 119 | func ed_is_seed_host(url: *u8) -> i64 |
| 126 | func main() -> i64 |