nx_craft_material_body_fit_t61.nx source
↩ module page · 125 lines · 7256 B
1// ORIGINAL. Private generated-page observation; never calls either publishing main.
2import "nx_craft_material_body_emit_t61.nx"
3import "nx_estate_path.nx"
4import "nx_readcap_lib.nx"
5import "nx_wasm_memory_lib.nx"
6import "nx_gate_verdict.nx"
7const PFG_CANARY: i64 = 173 // Test poison, not a product threshold.
8func pfg_private(path: *u8) -> i64 {
9 let prefix: *u8 = "/tmp/" as *u8
10 var i: i64 = 0
11 while i<5 { if path[i]!=prefix[i] { return 0 };i=i+1 }
12 if path[i]==(0 as u8) { return 0 }
13 while path[i]!=(0 as u8) {
14 if path[i]==(47 as u8) { return 0 }
15 if path[i]==(46 as u8) { if path[i+1]==(46 as u8) { return 0 } }
16 i=i+1
17 }
18 return 1
19}
20func pfg_read(path: *u8,out: *u8,state: *i64) -> i64 {
21 let fd: i64=sys_openat_rd(path)
22 if fd<0 { return 0-1 }
23 let n: i64=rc_fill_file(fd,out,GPE_WASM_CAP,state)
24 let closed: i64=sys_close(fd)
25 if rc_complete(state)!=1||closed!=0 { return 0-1 }
26 return n
27}
28func pfg_extent(text:*u8)->i64 {
29 var value:i64=0;var i:i64=0
30 while text[i]!=(0 as u8) {
31 let c:i64=text[i] as i64
32 if c<48||c>57 {return -1}
33 let digit:i64=c-48
34 if value>(9223372036854775807-digit)/10 {return -1}
35 value=value*10+digit;i=i+1
36 }
37 if i==0||value<=0{return -1}
38 return value
39}
40func main(argc: i64,argv: *i64) -> i64 {
41 if argc!=7&&argc!=10 { gv_puts("usage: private-page-fit <plain.wasm> <shared.wasm-or-dash> <recipe-key> </tmp/new-basename.html> <plain-sha256> <shared-sha256-or-dash> [world-producer-path world-sha256 world-bytes]\n" as *u8);return 3 }
42 if pfg_private(argv[4] as *u8)!=1 { return 3 }
43 if ep_anchor()<0 { return 3 }
44 let ctr: *i64=gv_ctr();gv_head("PRIVATE-GENERATED-PAGE-FIT" as *u8)
45 var world_path:*u8=GSB_STAGED
46 var world_sha:*u8="6a63a26f84a4ba353da798e121a1690a89bf4cac3e59f1dd9e7babe948f33139"
47 var world_bytes:i64=1250264
48 if argc==10 {world_path=argv[7] as *u8;world_sha=argv[8] as *u8;world_bytes=pfg_extent(argv[9] as *u8)}
49 let selected:i64=gsb_select_at(world_path,world_sha,world_bytes)
50 gpe_cast_path="/volume1/homes/elderwesto/nishihost/buildroot/_build/nx_wgsl_authored_t55.sov.elf" as *u8
51 gpe_cast_expected="1ffb6e17ee0adf7a805935c1e43fd65ad3d190fd10e5fe6a676eb159ebe2a319" as *u8
52 gpe_cast_expected_bytes=1250592
53 gv_check("declared cast-only producer identity verified" as *u8,gsb_artifact_matches(gpe_cast_path,gpe_cast_expected,gpe_cast_expected_bytes)==1,ctr)
54 gv_check("declared staged shader producer selected" as *u8,selected==1,ctr)
55 if selected!=1 { return 3 }
56 gv_puts("shader_backend_path=");gv_puts(world_path);gv_puts(" shader_backend_sha256=");gv_puts(world_sha);gv_kv("shader_backend_bytes",world_bytes)
57 let wasm: *u8=sys_mmap(GPE_WASM_CAP)
58 let state: *i64=sys_mmap(3*__size_of(i64)) as *i64
59 let digest: *u8=sys_mmap(GPA_SHA_HEX+1)
60 let limits: *i64=sys_mmap(WM_FIELDS*__size_of(i64)) as *i64
61 let recipes: *i64=sys_mmap(GPR_MAXW*8*8) as *i64
62 let controls: *u8=sys_mmap(CE_EV_CAP)
63 // The second full output-capacity span observes contiguous overruns in this isolated gate.
64 // It is not a general capacity fix for production gpe_ap.
65 let out: *u8=sys_mmap(GPE_OUT_CAP+GPE_OUT_CAP)
66 if (wasm as i64)<=0||(state as i64)<=0||(digest as i64)<=0||(limits as i64)<=0||(recipes as i64)<=0||(controls as i64)<=0||(out as i64)<=0 { return 3 }
67 let wn: i64=pfg_read(argv[1] as *u8,wasm,state)
68 gv_check("whole plain artifact read" as *u8,wn>WM_HEADER,ctr)
69 if wn<=WM_HEADER { return 3 }
70 gpa_sha(wasm,wn,digest)
71 gv_check("plain identity equals requested SHA256" as *u8,fsx_seq(digest,argv[5] as *u8)==1,ctr)
72 if fsx_seq(digest,argv[5] as *u8)!=1 { return 3 }
73 gpe_mt_pages=0;gpe_mt_max=0;gpe_mt_sha=0 as *u8;gpe_mt_url=0 as *u8;gpe_mt_bytes=0
74 if fsx_seq(argv[2] as *u8,"-" as *u8)!=1 {
75 let twin: *u8=sys_mmap(GPE_WASM_CAP)
76 if (twin as i64)<=0 { return 3 }
77 let tn: i64=pfg_read(argv[2] as *u8,twin,state)
78 if tn<=WM_HEADER { return 3 }
79 gpa_sha(twin,tn,digest)
80 gv_check("shared identity equals requested SHA256" as *u8,fsx_seq(digest,argv[6] as *u8)==1,ctr)
81 if fsx_seq(digest,argv[6] as *u8)!=1 { return 3 }
82 let mr: i64=wmem_read(twin,tn,limits)
83 gv_check("actual shared descriptor admitted" as *u8,mr==0&&limits[2]==1&&limits[3]==1&&limits[0]>0&&limits[1]>=limits[0],ctr)
84 if mr!=0||limits[2]!=1||limits[3]!=1||limits[0]<1||limits[1]<limits[0] { return 3 }
85 gv_check("shared identity declaration accepted",gpe_mt_declare(twin,tn,0 as *u8,limits[0],limits[1])==1,ctr)
86 if gpe_mt_pages<1 {return 3}
87 sys_munmap(twin,GPE_WASM_CAP)
88 }
89 let nr: i64=gpe_recipes_load("knowledge/world_recipes.conf" as *u8,recipes)
90 if nr<1 { return 3 }
91 var row: i64=0-1;var i: i64=0;var matches: i64=0
92 while i<nr { if fsx_seq(recipes[i*8] as *u8,argv[3] as *u8)==1 { row=i*8;matches=matches+1 };i=i+1 }
93 gv_check("one actual recipe selected" as *u8,matches==1,ctr)
94 if matches!=1 { return 3 }
95 ce_evidence(recipes[row+5] as *u8,controls)
96 i=GPE_OUT_CAP
97 while i<GPE_OUT_CAP+GPE_OUT_CAP { out[i]=PFG_CANARY as u8;i=i+1 }
98 var n: i64=gpe_build_s(wasm,wn,ce_stamp(recipes[row+4] as *u8),CE_NATIVE,controls,recipes[row+1],recipes[row+2],recipes[row+6] as *u8,out)
99 if gpe_mt_pages>0 {
100 let declared:*u8=sys_mmap(GPE_OUT_CAP)
101 let dn:i64=gpa_declare_shared(out,n,gpe_mt_url,declared,GPE_OUT_CAP)
102 gv_check("shared runtime manifest derives from verified artifact" as *u8,dn>0&&dn<=GPE_OUT_CAP,ctr)
103 if dn<=0||dn>GPE_OUT_CAP {return 3}
104 var at:i64=0;while at<dn {out[at]=declared[at];at=at+1};n=dn
105 sys_munmap(declared,GPE_OUT_CAP)
106 }
107 var intact: i64=1;i=GPE_OUT_CAP
108 while i<GPE_OUT_CAP+GPE_OUT_CAP { if out[i]!=(PFG_CANARY as u8) { intact=0 };i=i+1 }
109 gv_check("full adjacent capacity span unchanged" as *u8,intact==1,ctr)
110 gv_check("actual returned page length fits production allocation" as *u8,n>0&&n<=GPE_OUT_CAP,ctr)
111 gv_check("shader capture owner reports success" as *u8,gsb_failed==0,ctr)
112 gv_values_head();gv_kv("page_bytes" as *u8,n);gv_kv("output_capacity" as *u8,GPE_OUT_CAP);gv_kv("headroom_bytes" as *u8,GPE_OUT_CAP-n)
113 gv_kv("twin_minimum_pages" as *u8,gpe_mt_pages);gv_kv("twin_maximum_pages" as *u8,gpe_mt_max)
114 if intact!=1||n<=0||n>GPE_OUT_CAP||gsb_failed!=0 { return gv_verdict("PRIVATE-PAGE-FIT" as *u8,ctr,"private output refused" as *u8) }
115 gpa_sha(out,n,digest);gv_puts("page_sha256=" as *u8);gv_puts(digest);gv_puts("\n" as *u8)
116 let wrote: i64=fxc_create(argv[4] as *u8,out,n)
117 gv_check("private output exclusively created" as *u8,wrote==n,ctr)
118 if wrote==n {
119 let box: *i64=sys_mmap(__size_of(i64)) as *i64
120 if (box as i64)<=0 { return 3 }
121 let actual: *u8=sys_read_file(argv[4] as *u8,box)
122 gv_check("private output readback equals generated bytes" as *u8,(actual as i64)>0&&gpa_same(out,n,actual,box[0])==1,ctr)
123 }
124 return gv_verdict("PRIVATE-PAGE-FIT" as *u8,ctr,"private fixture only; transfer actual bytes for JS syntax; browser and visual acceptance still open" as *u8)
125}