nx_prop_pass_gate.nx
buildroot/runtime/nx_prop_pass_gate.nx
about
nx_prop_pass_gate.nx -- GATE for prop_pass (intelmine IM26): the ONE renderer of knowledge/compare/<dom>.proposed in the
compare base lib (nx_swcompare_lib), driven IN-PROCESS on a planted fixture tree under /tmp/nx_prop_pass_gate. The gate
chdirs into the fixture root so the lib's CWD-relative knowledge/compare/<dom>.proposed resolves INSIDE the fixture and
never reads or renders a real board. Controls: an ABSENT domain must emit NOTHING in both modes (no section, no key); a
MALFORMED row must be COUNTED and never rendered; a file AT the read cap must announce READ-CAPPED while a small one must
not; an appid-named row must read its BANKED title at render time and say name_src=banked, and one with no banked
title must print its appid and say so. Every fixture asserts it reached its condition before any outcome is judged.
No network. license_tier: ORIGINAL
dependencies 4 imports · 0 importers
imports: nx_syscalls.nxnx_gatekit_lib.nxnx_swcompare_lib.nxnx_gate_verdict.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
| 14 | const G_ROOT: *u8 = "/tmp/nx_prop_pass_gate" |
| 15 | const G_KDIR: *u8 = "/tmp/nx_prop_pass_gate/knowledge" |
| 16 | const G_CDIR: *u8 = "/tmp/nx_prop_pass_gate/knowledge/compare" |
| 17 | const G_PLANTED: *u8 = "/tmp/nx_prop_pass_gate/knowledge/compare/planted.proposed" |
| 18 | const G_BIG: *u8 = "/tmp/nx_prop_pass_gate/knowledge/compare/big.proposed" |
| 19 | const G_ABSENT: *u8 = "/tmp/nx_prop_pass_gate/knowledge/compare/absent.proposed" |
| 20 | const G_HTML: *u8 = "/tmp/nx_prop_pass_gate/planted.html" |
| 21 | const G_JSON: *u8 = "/tmp/nx_prop_pass_gate/planted.json" |
| 22 | const G_ABS_HTML: *u8 = "/tmp/nx_prop_pass_gate/absent.html" |
| 23 | const G_ABS_JSON: *u8 = "/tmp/nx_prop_pass_gate/absent.json" |
| 24 | const G_BIG_HTML: *u8 = "/tmp/nx_prop_pass_gate/big.html" |
| 25 | const G_BIG_JSON: *u8 = "/tmp/nx_prop_pass_gate/big.json" |
| 26 | const G_MODE_RW: i64 = 420 // 0644: the capture files are read back by this gate only |
| 27 | const G_PLANTED_LINES: i64 = 6 // one comment, three proposals, one short row, one row with the wrong tag |
| 28 | const G_ROWS_EXPECTED: i64 = 3 |
| 29 | const G_MALFORMED_EXPECTED: i64 = 2 |
| 30 | const G_I64_BYTES: i64 = 8 |
| 32 | const G_RDIR: *u8 = "/tmp/nx_prop_pass_gate/knowledge/reviews" |
| 33 | const G_SDIR: *u8 = "/tmp/nx_prop_pass_gate/knowledge/reviews/steam" |
| 34 | const G_NAME_620: *u8 = "/tmp/nx_prop_pass_gate/knowledge/reviews/steam/620.name" |
| 35 | const G_NAME_999: *u8 = "/tmp/nx_prop_pass_gate/knowledge/reviews/steam/999.name" |
| 40 | const G_ROWS: *u8 = "# planted by nx_prop_pass_gate\nprop|1788630000|777|Planted Title|DEFECT|defect|stutter|planted|Frame pacing: Planted Title reviewers flag stutter|does_not_meet=3 praised=0\nprop|1788630001|620|620|THEY-DO-WELL|feature|coop|planted|Co-op: 620 -- drop-in co-op door with a gate|praised=3 complained=0 mixed=0 demanded=0\nprop|1788630004|999|999|DEMANDED|feature|controls|planted|Control mapping: 999|praised=0 complained=2 mixed=0 demanded=1\nprop|1788630002|777|Planted Title|DEMANDED|feature|customization\nbogus|row|that|is|not|a|proposal|at|all|ten\n" |
| 41 | const G_BIG_ROW: *u8 = "prop|1788630003|777|Planted Title|SHIPS|engine|Unity|big|Engine parity: Planted Title ships Unity|fingerprint=installed-tree\n" |
functions
| 43 | func g_lines(path: *u8) -> i64 |
| 54 | func g_render(dom: *u8, out_path: *u8, mode: i64) -> i64 |
| 62 | func g_has(path: *u8, needle: *u8) -> i64 |
| 69 | func g_starts(path: *u8, needle: *u8) -> i64 |
| 79 | func g_big() -> i64 |
| 92 | func main() -> i64 |