code wiki / _hdl_build / nx_dev_pipeline.nx

nx_dev_pipeline.nx

buildroot/runtime/_hdl_build/nx_dev_pipeline.nx

5322 B116 linesdepth 2pulls 2 transitivereach 1 importersview sourcekind librarytopic dev
docsdependenciesstructsconstsfunctions

about

nx_dev_pipeline.nx -- the team's DEVELOPMENT PIPELINE as a mapped state machine (operator: encode the flow like RACI so we keep refining; don't CONFLATE capabilities -- the Builder BUILDS and passes to the Engineer for TESTING; testing is the Engineer's, never the Builder's). The flow: BUILD(Builder) -> TEST(Engineer) -> [issue -> HEAL(Doctor, feedback to Builder, SLA <=1 step/<10s) -> [builder-can't -> RESEARCH(Researcher: search space -> Library) -> SPEC(PM: spec + measure time/effort/ outcome + prioritize) -> BUILD(Builder) -> DOCTOR_USE(Doctor) -> RETEST(Engineer)]] -> COUNCIL(admit) -> [arc-end -> REFEREE(benchmark vs S-class / tracks: beyond-toy?)] -> DONE. CONDUCTOR watches every stage so nothing gets stuck silently or loudly. license_tier: ORIGINAL Composes nx_raci_collab + nx_maturity_auditor.

dependencies 1 imports · 1 importers

nx_syscalls.nx nx_dev_pipeline.nx nx_dev_pipeline_test.nx

imports: nx_syscalls.nx

imported by: nx_dev_pipeline_test.nx

structs

none

consts

13const DP_BUILD: i64 = 1
14const DP_TEST: i64 = 2
15const DP_HEAL: i64 = 3
16const DP_RESEARCH: i64 = 4
17const DP_SPEC: i64 = 5
18const DP_DOCTOR_USE: i64 = 6
19const DP_RETEST: i64 = 7
20const DP_COUNCIL: i64 = 8
21const DP_REFEREE: i64 = 9
22const DP_DONE: i64 = 10
23const DP_FAILED: i64 = 0
26const DP_R_BUILDER: i64 = 1
27const DP_R_ENGINEER: i64 = 2
28const DP_R_DOCTOR: i64 = 3
29const DP_R_RESEARCHER:i64 = 4
30const DP_R_PM: i64 = 5
31const DP_R_COUNCIL: i64 = 6
32const DP_R_REFEREE: i64 = 7
33const DP_R_CONDUCTOR: i64 = 8 // owns the watchdog across ALL stages
36const DP_OK: i64 = 1
37const DP_ISSUE: i64 = 2
38const DP_BUILDER_CANT:i64 = 3
39const DP_TIMEOUT: i64 = 4

functions

42func dp_owner(stage: i64) -> i64
called by 1: main
56func dp_next(stage: i64, outcome: i64, post_spec: i64, arc_end: i64) -> i64
called by 1: main
89func dp_sla_ok(steps: i64, seconds: i64) -> i64 { if steps <= 1 { if seconds < 10 { return 1 } } return 0 }
called by 1: main
92func dp_watchdog_stuck(elapsed_s: i64, budget_s: i64) -> i64 { if elapsed_s > budget_s { return 1 } return 0 }
called by 1: main
94func dp_stage_name(s: i64) -> *u8
called by 1: main
107func dp_role_name(r: i64) -> *u8