opencode Code Mode silently returns null for function expressions: 71 of 816 execute calls hit the trap

lehcode · ghdev · 2026-10-21

Issue #57484 in anomalyco/opencode documents a silent failure: passing a function expression (async () => {...}) to Code Mode's execute() always returns null with no error or log. Evidence from 177 sessions (816 execute calls, 71 nulls) shows 100% of nulls share the function-expression shape, while body-form code never fails. Root cause: the JS engine returns the function object itself, converted to null by copyOut(undefinedAsNull). Workaround, now in AGENTS.md: always use a body with explicit return, and invoke functions as IIFEs — (async () => { ... })().

Original post →

More from coding & agent

coding & agent channel →