code wiki / (root) / nx_mcp_control_gate.nx

nx_mcp_control_gate.nx source

↩ module page · 22 lines · 3602 B

1import "nx_mcp_control.nx" 2import "nx_gate_verdict.nx" 3func main() -> i64 { 4 let c: *i64=gv_ctr() 5 let plan: *i64=gv_plan_new("request\ncancel\nescaped-key\nnested-decoy\nduplicate-id\nduplicate-cancel\nmissing-comma\ntrailing-comma\nwrong-bracket\nfractional-id\ninitialization\ninitialized\n" as *u8) 6 let out: *NxMcpControl=sys_mmap(__size_of(NxMcpControl)) as *NxMcpControl 7 gv_plan_check(plan,"request",mct_read("{\"jsonrpc\":\"2.0\",\"id\":\"x\",\"method\":\"tools/call\",\"params\":{\"name\":\"nx_fs\",\"arguments\":{\"id\":99}}}" as *u8,mr_len("{\"jsonrpc\":\"2.0\",\"id\":\"x\",\"method\":\"tools/call\",\"params\":{\"name\":\"nx_fs\",\"arguments\":{\"id\":99}}}" as *u8),out)==0 && out.method==4 && out.id_kind==7 && out.cancel_kind==0,c) 8 gv_plan_check(plan,"cancel",mct_read("{\"jsonrpc\":\"2.0\",\"method\":\"notifications/cancelled\",\"params\":{\"requestId\":\"x\"}}" as *u8,mr_len("{\"jsonrpc\":\"2.0\",\"method\":\"notifications/cancelled\",\"params\":{\"requestId\":\"x\"}}" as *u8),out)==0 && out.method==3 && out.id_kind==0 && out.cancel_kind==7,c) 9 gv_plan_check(plan,"escaped-key",mct_read("{\"jsonrpc\":\"2.0\",\"method\":\"notifications/cancelled\",\"params\":{\"request\\u0049d\":12}}" as *u8,mr_len("{\"jsonrpc\":\"2.0\",\"method\":\"notifications/cancelled\",\"params\":{\"request\\u0049d\":12}}" as *u8),out)==0 && out.method==3 && out.id_kind==0 && out.cancel_kind==8,c) 10 gv_plan_check(plan,"nested-decoy",mct_read("{\"jsonrpc\":\"2.0\",\"method\":\"notifications/cancelled\",\"params\":{\"nested\":{\"requestId\":\"x\"}}}" as *u8,mr_len("{\"jsonrpc\":\"2.0\",\"method\":\"notifications/cancelled\",\"params\":{\"nested\":{\"requestId\":\"x\"}}}" as *u8),out)==-1,c) 11 gv_plan_check(plan,"duplicate-id",mct_read("{\"jsonrpc\":\"2.0\",\"id\":1,\"id\":2,\"method\":\"x\"}" as *u8,mr_len("{\"jsonrpc\":\"2.0\",\"id\":1,\"id\":2,\"method\":\"x\"}" as *u8),out)==-1,c) 12 gv_plan_check(plan,"duplicate-cancel",mct_read("{\"jsonrpc\":\"2.0\",\"method\":\"notifications/cancelled\",\"params\":{\"requestId\":1,\"requestId\":2}}" as *u8,mr_len("{\"jsonrpc\":\"2.0\",\"method\":\"notifications/cancelled\",\"params\":{\"requestId\":1,\"requestId\":2}}" as *u8),out)==-1,c) 13 gv_plan_check(plan,"missing-comma",mct_read("{\"jsonrpc\":\"2.0\" \"method\":\"x\"}" as *u8,mr_len("{\"jsonrpc\":\"2.0\" \"method\":\"x\"}" as *u8),out)==-1,c) 14 gv_plan_check(plan,"trailing-comma",mct_read("{\"jsonrpc\":\"2.0\",\"method\":\"x\",}" as *u8,mr_len("{\"jsonrpc\":\"2.0\",\"method\":\"x\",}" as *u8),out)==-1,c) 15 gv_plan_check(plan,"wrong-bracket",mct_read("{\"jsonrpc\":\"2.0\",\"method\":\"x\",\"params\":[1}}" as *u8,mr_len("{\"jsonrpc\":\"2.0\",\"method\":\"x\",\"params\":[1}}" as *u8),out)==-1,c) 16 gv_plan_check(plan,"fractional-id",mct_read("{\"jsonrpc\":\"2.0\",\"method\":\"x\",\"id\":1.5}" as *u8,mr_len("{\"jsonrpc\":\"2.0\",\"method\":\"x\",\"id\":1.5}" as *u8),out)==-1,c) 17 gv_plan_check(plan,"initialization",mct_read("{\"jsonrpc\":\"2.0\",\"method\":\"initialize\",\"id\":1}" as *u8,mr_len("{\"jsonrpc\":\"2.0\",\"method\":\"initialize\",\"id\":1}" as *u8),out)==0 && out.method==1 && out.id_kind==8 && out.cancel_kind==0,c) 18 gv_plan_check(plan,"initialized",mct_read("{\"jsonrpc\":\"2.0\",\"method\":\"notifications/initialized\"}" as *u8,mr_len("{\"jsonrpc\":\"2.0\",\"method\":\"notifications/initialized\"}" as *u8),out)==0 && out.method==2 && out.id_kind==0 && out.cancel_kind==0,c) 19 sys_munmap(out as *u8,__size_of(NxMcpControl)) 20 gv_plan_finish(plan,c) 21 return gv_verdict("MCP-CONTROL" as *u8,c,"Borrowed control metadata; bounded scratch released after every scan." as *u8) 22}