code wiki / hub / nx_pipeline_banner.nx

nx_pipeline_banner.nx

buildroot/runtime/hub/nx_pipeline_banner.nx

11331 B242 linesdepth 5pulls 6 transitivereach 12 importersview sourcekind librarytopic pipeline
docsdependenciesstructsconstsfunctions

about

nx_pipeline_banner.nx -- HUB primitive; renders per-article pipeline- stage banner emitting "what stage is this artifact at + what's missing for next transition". Per V2.0 PIPELINE BOOTSTRAP PLAN P-4: every wiki article shows its pipeline stage at the top. Operator visiting /wiki/<doc-name> sees immediate signal: how mature is this content? COMPOSES (HUB primitives only): wiki/nx_artifact_store (NxArtifactStore + per-artifact taxonomy + stage) nx_html_escape (safe value emission) COMPOSED BY: wiki/nx_wiki_doc_handler (every /wiki/<doc-name> page) (future) obd/nx_obd_doc_handler (future) sprinkler/nx_sprinkler_doc_handler (future) third-party hosted site doc handlers V2.0 SCOPE: - Lookup doc by URL in NxArtifactStore - Sealed 5-color stage badge - Per-stage criteria-met + criteria-missing list (operator self-audit) - "(not in artifact store)" hint when lookup misses (informational) V3+ SCOPE (TODO): - "Advance this artifact" admin button (operator one-click stage promote) - Per-criterion hint links ("add Quadrant front-matter -> see Diátaxis") - History timeline (when did stage last change?) Status: V2.0. 2026-05-27.

dependencies 3 imports · 1 importers

nx_syscalls.nx nx_html_escape.nx nx_artifact_store.nx nx_pipeline_banner.nx nx_wiki_doc_handler.nx

imports: nx_syscalls.nxnx_html_escape.nxnx_artifact_store.nx

imported by: nx_wiki_doc_handler.nx

structs

none

consts

37const NX_PBAN_OK: i64 = 0
38const NX_PBAN_BAD_INPUT: i64 = 2980
39const NX_PBAN_OUTPUT_OVERFLOW: i64 = 2981
42const NX_PBAN_MAX_DOC_PATH: i64 = 512
45const NX_PBAN_CLASS_UNSTRUCTURED: *u8 = "stage-banner stage-unstructured" as *u8
46const NX_PBAN_CLASS_STRUCTURED: *u8 = "stage-banner stage-structured" as *u8
47const NX_PBAN_CLASS_MEANINGFUL: *u8 = "stage-banner stage-meaningful" as *u8
48const NX_PBAN_CLASS_ACTIONABLE: *u8 = "stage-banner stage-actionable" as *u8
49const NX_PBAN_CLASS_REPEATABLE: *u8 = "stage-banner stage-repeatable" as *u8
50const NX_PBAN_CLASS_UNKNOWN: *u8 = "stage-banner stage-unknown" as *u8

functions

54func nx_pban_class_for_stage(stage: i64) -> *u8
65func nx_pban_put_raw(out: *u8, cap: i64, off: i64, src: *u8, n: i64) -> i64
called by 1: nx_pban_put_z
73func nx_pban_put_z(out: *u8, cap: i64, off: i64, s: *u8) -> i64
82func nx_pban_put_escaped(out: *u8, cap: i64, off: i64, src: *u8, n: i64) -> i64
calls 1: html_escape
98func nx_pban_render_criteria(out: *u8, cap: i64, off: i64,
186func nx_pipeline_banner_render(out: *u8, cap: i64, off: i64,