code wiki / _hdl_build / nx_sponsor_core.nx
nx_sponsor_core.nx
buildroot/runtime/_hdl_build/nx_sponsor_core.nx
about
nx_sponsor_core.nx -- EXECUTIVE-SPONSOR decision core (mainless; operator
doctrine 2026-06-11): the sponsor is NOT a gate on objective work -- parity
rungs, kernels, conformance counts flow TODO->DONE on evidence with no
human in the path. The sponsor's viewpoint enters at exactly TWO points:
spec time: NOVEL rows tagged ||ASK=spec (subjective feature choices --
"the novel needs us both", sponsor + tutor co-spec batch)
result time: rows tagged ||ASK=result reach VIEW (flipped by reconcile
when their objective evidence is green) and wait for a
VIEWPOINT: APPROVE -> DONE; DENY+feedback -> NOVEL (iterate)
with the feedback appended to planning_prefs.tsv -- the
registry future planning READS (preference learning as DATA).
Decisions arrive via knowledge/registry/sponsor_decisions.tsv (hand rows
today; the nishifamily intake form lands the same contract later):
APPROVE <id>
DENY <id> <feedback...>
Transitions are a strict state machine (only VIEW moves); anything else =
loud REFUSED row, repeated decisions = silent no-ops (idempotent).
license_tier: ORIGINAL
dependencies 1 imports · 2 importers
imports: nx_wd_core.nx
imported by: _sponsor_review_gate_authored.nxnx_sponsor_review.nx
structs
| none |
consts
| 21 | const K_MAGIC_65536: i64 = 65536 |
| 22 | const K_MAGIC_65535: i64 = 65535 |
functions
| 25 | func sr_status(qp: *u8, id: *u8) -> i64 |
| 37 | func sr_pref_append(prefs: *u8, id: *u8, action: *u8, fb: *u8) -> i64 |
| 58 | func sr_apply(qp: *u8, prefs: *u8, verb: i64, id: *u8, fb: *u8) -> i64 |
| 106 | func sr_askspec(qp: *u8, lfd: i64) -> i64 |
| 140 | func sr_skipws(buf: *u8, p: i64, le: i64) -> i64 called by 1: sr_line |
| 157 | func sr_line(scx: *i64, buf: *u8, n: i64, ls: i64, le: i64) -> i64 |
| 210 | func sr_run(qp: *u8, dec: *u8, prefs: *u8, logpath: *u8) -> i64 |