code wiki / _hdl_build / nx_workstream_seed.nx
nx_workstream_seed.nx source
↩ module page · 152 lines · 8860 B
1// nx_workstream_seed.nx -- SEEDER for the WORKSTREAM REGISTRY SSOT (knowledge/store/ws-*, via
2// nx_workstream_store / nx_seg_store). Authors the 12 empires + a representative sample of streams
3// per empire, drawn from the audited 12-empire census + verified MEMORY.md index entries (Rule 4 /
4// author-by-organ: every fact comes from a real memory read, never fabricated). Streams with no
5// measured detail would be seeded state=ABSENT honestly rather than invented.
6//
7// IDEMPOTENT (rule 10): each record is written only if absent-or-changed (additive versions
8// otherwise), then EVERY record is read back and byte-verified -- GREEN only when the store holds
9// exactly what we intended. Mirrors nx_known_issue_seed end-to-end. Evidence ->
10// knowledge/status/workstream_store.log. license_tier: ORIGINAL
11import "nx_workstream_store.nx"
12import "nx_seg_store.nx"
13import "nx_syscalls.nx"
14
15const WSS_LOG: *u8 = "knowledge/status/workstream_store.log"
16
17func wss_w(fd: i64, s: *u8) -> i64 { var n: i64 = 0; while s[n] != (0 as u8) { n = n + 1 } sys_write(fd, s, n); return 0 }
18func wss_wn(fd: i64, v: i64) -> i64 { let bb: *u8 = sys_mmap(28); var m: i64=v; if m<0 {m=0-m; sys_write(fd,"-" as *u8,1)}; let t: *u8 = sys_mmap(28); var k: i64=0; if m==0 {t[0]=48;k=1}; while m>0 {t[k]=(48+(m%10)) as u8; m=m/10; k=k+1}; var i: i64=0; while i<k {bb[i]=t[k-1-i]; i=i+1}; sys_write(fd, bb, k); return 0 }
19func wss_len(s: *u8) -> i64 { var n: i64 = 0; while s[n] != (0 as u8) { n = n + 1 } return n }
20
21// 1 if the store's current value for `key` byte-equals `val`. Drives the idempotent skip AND verify.
22func wss_streq_store(key: *u8, val: *u8) -> i64 {
23 let pq: *i64 = sys_mmap(16) as *i64
24 let lq: *i64 = sys_mmap(16) as *i64
25 if ws_get(key, pq, lq) != 1 { return 0 }
26 let b: *u8 = pq[0] as *u8
27 let n: i64 = lq[0]
28 let vl: i64 = wss_len(val)
29 if n != vl { return 0 }
30 var i: i64 = 0
31 while i < n { if b[i] != val[i] { return 0 } i = i + 1 }
32 return 1
33}
34
35func wss_emit(fd: i64, nrec: i64, written: i64, verified: i64, ok: i64) -> i64 {
36 wss_w(fd, "WSSTORE authored=organ store=knowledge/store/ws- records=" as *u8); wss_wn(fd, nrec)
37 wss_w(fd, " written=" as *u8); wss_wn(fd, written)
38 wss_w(fd, " verified=" as *u8); wss_wn(fd, verified)
39 if ok == 1 { wss_w(fd, " verdict=GREEN\n" as *u8) } else { wss_w(fd, " verdict=RED\n" as *u8) }
40 return 0
41}
42
43func main() -> i64 {
44 let keys: *i64 = sys_mmap(8 * 40) as *i64
45 let vals: *i64 = sys_mmap(8 * 40) as *i64
46
47 // ws:empires -- the 12 audited empires (census baseline).
48 keys[0] = "ws:empires" as *u8 as i64
49 vals[0] = "E-CORE\tE-ELDER\tE-NGE\tE-PLATFORM\tE-DEPLOY\tE-NXC2\tE-MISC\tE-NISHIOS\tE-RESEARCH\tE-DOCTRINE\tE-PM\tE-WEB" as *u8 as i64
50
51 // ws:ids -- the enumeration order (every seeded stream id below must appear here).
52 keys[1] = "ws:ids" as *u8 as i64
53 vals[1] = "DOCKER-REPL-W3\tNNDP\tSV39-MMU\tX-DRV-W1\tWMS-R0\tWMS-R1\tRECALL-OR-RED\tGEO-001\tGEO-002\tLANG-EXPORT-001\tH2-ALPN-SERVE\tMANHEIM-CASE002\tNAS-CENSUS\tPETS-SFX\tROOT-TRACE" as *u8 as i64
54
55 // E-CORE (nishi-core sovereign stack): docker-replacement native-on-windows W3 keystone GREEN.
56 keys[2] = "ws:DOCKER-REPL-W3" as *u8 as i64
57 vals[2] = "DOCKER-REPL-W3\tE-CORE\tDONE\t0\tproject-docker-replacement-native-windows-2026-06-13.md\truntime/nx_pe_compile_win.nx\t-" as *u8 as i64
58
59 // E-CORE: sovereign-device-protocol NNDP DELIVERED (80 vs virtio 181 steps).
60 keys[3] = "ws:NNDP" as *u8 as i64
61 vals[3] = "NNDP\tE-CORE\tDONE\t0\tproject-sovereign-device-protocol-nndp-2026-06-13.md\truntime/nx_drv_proto_emit.nx\tX-DRV-W1" as *u8 as i64
62
63 // E-CORE: Sv39 MMU paging PRESENT (page-table-walk device gate-proven).
64 keys[4] = "ws:SV39-MMU" as *u8 as i64
65 vals[4] = "SV39-MMU\tE-CORE\tDONE\t0\tproject-sv39-mmu-paging-2026-06-13.md\truntime/nx_drv_proto_emit.nx\tNNDP" as *u8 as i64
66
67 // E-CORE: driver-from-spec X-DRV-W1 generalized (4 shapes, 4 device classes).
68 keys[5] = "ws:X-DRV-W1" as *u8 as i64
69 vals[5] = "X-DRV-W1\tE-CORE\tDONE\t0\tproject-driver-from-spec-4shapes-generalized-2026-06-13.md\truntime/nx_drv_proto_emit.nx\t-" as *u8 as i64
70
71 // E-CORE: WMS-R0 atomic framed-append floor (the shared durability primitive), GREEN.
72 keys[6] = "ws:WMS-R0" as *u8 as i64
73 vals[6] = "WMS-R0\tE-CORE\tDONE\t0\tproject-exceed-git-wms-researcher-durability-2026-06-14.md\truntime/nx_framed_append.nx\t-" as *u8 as i64
74
75 // E-CORE: WMS-R1 workstream registry SSOT -- THIS rung (active as it is authored).
76 keys[7] = "ws:WMS-R1" as *u8 as i64
77 vals[7] = "WMS-R1\tE-CORE\tACTIVE\t0\tproject-exceed-git-wms-researcher-durability-2026-06-14.md\truntime/_hdl_build/nx_workstream_store.nx\tWMS-R0" as *u8 as i64
78
79 // E-CORE: recall-or-RED no-unseen-repeat law (all 3 rungs GREEN incl live give-up wiring).
80 keys[8] = "ws:RECALL-OR-RED" as *u8 as i64
81 vals[8] = "RECALL-OR-RED\tE-CORE\tDONE\t0\tproject-recall-or-red-no-unseen-repeat-2026-06-13.md\truntime/_hdl_build/nx_known_issue_store.nx\t-" as *u8 as i64
82
83 // E-CORE: sovereign geo geofence FLOOR (integer-exact point-in-poly), DONE.
84 keys[9] = "ws:GEO-001" as *u8 as i64
85 vals[9] = "GEO-001\tE-CORE\tDONE\t0\tproject-sovereign-geo-geofencing-maps-2026-06-13.md\truntime/nx_geo.nx\t-" as *u8 as i64
86
87 // E-CORE: sovereign geo geohash spatial INDEX (integer bit-interleave), DONE.
88 keys[10] = "ws:GEO-002" as *u8 as i64
89 vals[10] = "GEO-002\tE-CORE\tDONE\t0\tproject-sovereign-geo-geofencing-maps-2026-06-13.md\truntime/nx_geo.nx\tGEO-001" as *u8 as i64
90
91 // E-CORE: language-export HAL seed (one spec -> emitted C+JS, byte-identical), GREEN seed.
92 keys[11] = "ws:LANG-EXPORT-001" as *u8 as i64
93 vals[11] = "LANG-EXPORT-001\tE-CORE\tDONE\t0\tproject-language-export-hal-2026-06-13.md\truntime/_hdl_build/nx_lang_export_seed.nx\t-" as *u8 as i64
94
95 // E-CORE: search-engine HTTP/2 transport ALPN-h2 SERVE + external curl interop, all 5 rungs GREEN.
96 keys[12] = "ws:H2-ALPN-SERVE" as *u8 as i64
97 vals[12] = "H2-ALPN-SERVE\tE-CORE\tDONE\t0\tproject-search-engine-h2-transport-2026-06-13.md\truntime/nx_h2_serve.nx\t-" as *u8 as i64
98
99 // E-RESEARCH: Manheim-exceed analyst (Case002) -- grounded data authored, census pending.
100 keys[13] = "ws:MANHEIM-CASE002" as *u8 as i64
101 vals[13] = "MANHEIM-CASE002\tE-RESEARCH\tACTIVE\t0\tproject-nishi-analyst-manheim-exceed-2026-06-13.md\t-\t-" as *u8 as i64
102
103 // E-RESEARCH: real NAS library census (~5760 books not 148) -- reader-arc rung 0.
104 keys[14] = "ws:NAS-CENSUS" as *u8 as i64
105 vals[14] = "NAS-CENSUS\tE-RESEARCH\tACTIVE\t0\tproject-nas-real-library-census-2026-06-13.md\t-\t-" as *u8 as i64
106
107 // E-NGE: PETS game sovereign Web Audio SFX -- feature-add GREEN (exceed head-to-head pending).
108 keys[15] = "ws:PETS-SFX" as *u8 as i64
109 vals[15] = "PETS-SFX\tE-NGE\tDONE\t0\tproject-pets-game-sfx-2026-06-13.md\t-\t-" as *u8 as i64
110
111 // E-PM: genealogist root-trace -- instrument GREEN, gap measured (genesis-spine emitter TODO).
112 keys[16] = "ws:ROOT-TRACE" as *u8 as i64
113 vals[16] = "ROOT-TRACE\tE-PM\tBLOCKED\t0\tproject-root-trace-genealogist-spore-2026-06-13.md\truntime/nx_root_trace.nx\tX-GEN-LINEAGE" as *u8 as i64
114
115 // provenance breadcrumb (machine-visible).
116 keys[17] = "ws:provenance" as *u8 as i64
117 vals[17] = "authored=organ 2026-06-14 WMS-R1; 12 empires + 15 sample streams seeded from audited census (project-exceed-git-wms-researcher-durability-2026-06-14.md) + verified MEMORY.md index entries; states ACTIVE/DONE/BLOCKED measured per memory, never fabricated; registry GROWS one seed line per workstream enumerated -- the SSOT enumeration is general, no code change needed" as *u8 as i64
118 let nrec: i64 = 18
119
120 // write only absent-or-changed records (idempotent / additive). One writer buffer = one commit.
121 let w: *i64 = ss_begin()
122 var towrite: i64 = 0
123 var i: i64 = 0
124 while i < nrec {
125 let key: *u8 = keys[i] as *u8
126 let val: *u8 = vals[i] as *u8
127 if wss_streq_store(key, val) == 0 { ss_add(w, 1, key, val, wss_len(val)); towrite = towrite + 1 }
128 i = i + 1
129 }
130 var committed: i64 = 0
131 if towrite > 0 {
132 let segid: i64 = ws_seg_next(WS_PREFIX)
133 let rc: i64 = ss_commit(WS_PREFIX, w, segid)
134 if rc == 0 { committed = 1 }
135 }
136
137 // verify EVERY record reads back exactly.
138 var verified: i64 = 0
139 i = 0
140 while i < nrec { if wss_streq_store(keys[i] as *u8, vals[i] as *u8) == 1 { verified = verified + 1 } i = i + 1 }
141
142 var ok: i64 = 1
143 if verified != nrec { ok = 0 }
144 if towrite > 0 { if committed == 0 { ok = 0 } }
145
146 wss_emit(1, nrec, towrite, verified, ok)
147 let lf: i64 = sys_openat_append(WSS_LOG, 420)
148 if lf >= 0 { wss_emit(lf, nrec, towrite, verified, ok); sys_close(lf) }
149
150 if ok == 1 { return 0 }
151 return 1
152}