code wiki / (root) / nx_intelmine_lib.nx

nx_intelmine_lib.nx

buildroot/runtime/nx_intelmine_lib.nx

15430 B326 linesdepth 4pulls 4 transitivereach 2 importersview sourcekind library
docsdependenciesstructsconstsfunctions

about

nx_intelmine_lib.nx -- THE PROPOSER: mined signals become candidate rows on the /compare board that owns them (/compare/intelmine IM3 im_propose_rows, IM24 ic_propose). LIB. Inputs already exist as data: the review rubric over a title's journal (nx_reviewmine_lib: defect and feature tables per tier) and the installed-mode census row (what the title ships). knowledge/reviewmine/capability_map.conf routes each signal (kind|term) to a domain and a rung title. Output: <outdir>/<domain>.proposed rows, APPENDED and deduped by (appid, kind, term); the proposer never writes a board -- a seat adjudicates a proposal with the goal map, and only then does a rung land. SIGNALS (the operator's split): DEFECT (a defect term in the does-not-meet or mixed tiers), WE-DO-BETTER (a feature complained about at least as often as praised), DEMANDED (a feature praised but asked for more: a demand cue beside it), THEY-DO-WELL (praised more than complained -- take it), SHIPS (an installed fingerprint: the title ships it). Row: prop|<epoch>|<appid>|<name>|<signal>|<kind>|<term>|<domain>|<rung title>|<evidence> license_tier: ORIGINAL

dependencies 3 imports · 2 importers

nx_syscalls.nx nx_reviewmine_lib.nx nx_installed_census_lib.nx nx_intelmine_lib.nx nx_intelmine_propose.nx nx_intelmine_propose_gate.nx

imports: nx_syscalls.nxnx_reviewmine_lib.nxnx_installed_census_lib.nx

imported by: nx_intelmine_propose.nxnx_intelmine_propose_gate.nx

structs

none

consts

17const IP_MAP_MAX: i64 = 1024
18const IP_ARENA: i64 = 262144
19const IP_NAME_CAP: i64 = 512
20const IP_ROW_CAP: i64 = 4096
21const IP_PATH_CAP: i64 = 1024
23const IP_KIND_W: i64 = 32 // one capability_map row: the kind cell
24const IP_TERM_W: i64 = 64 // the term cell
25const IP_DOMAIN_W: i64 = 64 // the domain cell
26const IP_CLASS_W: i64 = 256 // one census class-label cell (labels joined by semicolons)
27const IP_IDKEY_CAP: i64 = 64 // the |<appid>| dedupe key
28const IP_EVIDENCE_CAP: i64 = 256 // the evidence field of one proposal row
29const IP_F_KIND: i64 = 0 // capability_map.conf fields
30const IP_F_TERM: i64 = 1
31const IP_F_DOMAIN: i64 = 2
32const IP_F_TITLE: i64 = 3
33const IP_CENSUS_F_APPID: i64 = 1 // i| census row fields
34const IP_CENSUS_F_NAME: i64 = 2
35const IP_CENSUS_FIRST_CLASS_FIELD: i64 = 11 // engine sits in field 11 of an i| census row (0 = the i marker)
36const IP_CH_SEMI: i64 = 59
37const IP_CH_LBRACE: i64 = 123
38const IP_CH_RBRACE: i64 = 125
39const IP_DUP_KEY_CAP: i64 = 512

functions

56func ip_init() -> i64
65func ip_lc(c: i64) -> i64 { if c >= RM_UPPER_A { if c <= RM_UPPER_Z { return c + RM_CASE_DELTA } } return c }
called by 1: ip_streq_ci
66func ip_streq_ci(a: *u8, b: *u8) -> i64
called by 1: ip_map_find calls 1: ip_lc
73func ip_field(b: *u8, s: i64, e: i64, f: i64, out: *u8, cap: i64) -> i64
called by 2: ip_map_loadip_census_load calls 1: rm_catn
90func ip_map_load(path: *u8) -> i64
124func ip_map_count() -> i64 { return ip_n }
125func ip_map_find(kind: *u8, term: *u8) -> i64
133func ip_map_domain(i: i64) -> *u8 { return (ip_domain as i64 + i * IP_DOMAIN_W) as *u8 }
called by 1: ip_emit
135func ip_map_title(i: i64, title: *u8, out: *u8, cap: i64) -> i64
called by 2: ip_emitmain calls 3: rm_findrm_slenrm_cat
151func ip_census_load(census_path: *u8, appid: i64) -> i64
177func ip_census_name_get() -> *u8 { return ip_census_name }
called by 2: mainmain
178func ip_census_class_get(c: i64) -> *u8 { return (ip_census_class as i64 + c * IP_CLASS_W) as *u8 }
180func ip_emit(outdir: *u8, epoch: i64, appid: i64, name: *u8, signal: *u8, kind: *u8, term: *u8, mapi: i64, evidence: *u8) -> i64
236func ip_rows_written_get() -> i64 { return ip_rows_written }
called by 2: mainmain
237func ip_rows_dup_get() -> i64 { return ip_rows_dup }
called by 2: mainmain
238func ip_rows_unmapped_get() -> i64 { return ip_rows_unmapped }
called by 2: mainmain
239func ip_counters_reset() -> i64 { ip_rows_written = 0; ip_rows_dup = 0; ip_rows_unmapped = 0; return 0 }
called by 2: mainmain
241func ip_propose_defects(outdir: *u8, epoch: i64, appid: i64, name: *u8, top: i64, min_support: i64) -> i64
265func ip_propose_features(outdir: *u8, epoch: i64, appid: i64, name: *u8, top: i64, min_support: i64) -> i64
295func ip_propose_installed(outdir: *u8, epoch: i64, appid: i64, name: *u8) -> i64