MEM-035 DONT: io.cpp callbacks miss argc/NULL/bounds guards (js/io.cpp)

Now
DONT

Two JS-reachable IO callbacks dereference unchecked inputs. JABCioFileMap reads JSValueIsString(ctx,args[0]) with no argc guard (every sibling guards argc first), so io.mmap() with zero args is an out-of-bounds read of the JSC argument vector and passes a garbage JSValueRef to JSValueIsString. JABCioNetConnect calls JABCioMakeFileObject(cfd,…), which returns NULL when cfd>=POLMaxFiles() (1024), then immediately passes that NULL into JSObjectSetProperty without a NULL check null deref; worse, JS_FILES+cfd is computed and POLTrackEvents called before the bound is validated, an OOB into the fixed 1024-entry array. The goal is the missing argc guard plus the NULL/bounds checks the file's convention already uses elsewhere.

Issues

Unchecked argc, NULL return, and out-of-range fd index.

Blockers

None.

Planned

Add the guards matching the file's convention.