During native rendering of Drone workspaces, a client signal named report resolves to the native server-global report() error logger inside interpolation. The all-page renderer emitted 36 empty Unhandled error records, even though the client functions and visible browser controls worked.
Representative component:
<script client>
const report = state(null)
</script>
<template>
<p>{{ report()?.status }}</p>
</template>Render with the normal Stacks server globals, where report is the native reporter from @stacksjs/logging/runtime. The captured stack reaches the logging reporter from safe-evaluator.js, evaluateExpression, replaceInterpolations, processExpressions and component rendering. Rendering only the homepage produces zero reports; the workflow render reproduces the fault.
Client-only lexical bindings should remain client-owned during server rendering. Their absence from the server context should not cause a same-named server-global function to execute. Explicit server code must still be able to call the normal native reporter.
Drone's bounded application correction renames these bindings to volumeReport, applicationReport and diagnosticReport. A genuine regression attaches a native observing logging transport, verifies that the real reporter is observable, then renders each real workflow with that reporter installed. Before the correction two cases fail on actual error records; afterward all three pass. All eleven pages then render with zero server errors, and actual browser volume, diagnostics and application controls still pass. This application correction does not establish that the evaluator generally protects client-only names.
Acceptance:
- Reproduce with a client binding sharing a callable server-global name, including a component render.
- Prevent server evaluation from falling through that client binding to a global callable, without suppressing ordinary server logging.
- Preserve client hydration and reactive reads.
- Cover a genuine native Stacks reporter and an ordinary explicit server expression in regression tests.
Reproduced with installed @stacksjs/stx 0.2.564 and @stacksjs/logging 0.75.221. Application correction: feb1f0b. Source is published on its review branch; exact-head integrated CI is separate qualification.