Repository navigation
fix(repl): don't echo an evaluator's empty result - #993
Conversation
A Python None returned by the registered evaluator crosses the Conductor boundary as EMPTY_LIST and was displayed as "null" after every run (#877). Show nothing for an EMPTY_LIST or VOID result, like Python's REPL does for None; everything the evaluator displays itself still appears. Refs #877 Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
|
@codex review |
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
|
Codex Review: Didn't find any major issues. Breezy! Reviewed commit: ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
|
@codex review |
|
Codex Review: Didn't find any major issues. 👍 Reviewed commit: ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
If Codex has suggestions, it will comment; otherwise it will react with 👍. Codex can also answer questions or update the PR. Try commenting "@codex address that feedback". |
What
When the evaluator registered with
set_evaluatorreturns no value, the Repl tab shows nothing for that run, instead of a straynullorundefined.Nonecrosses the Conductor boundary asDataType.EMPTY_LIST(see repl: Python's None displays as "null" instead of "None" (DataType.EMPTY_LIST collision) #877), and rendered asnullafter every run of an evaluator that displays its own output (for example viarepl_display).hasNothingToDisplay(new, instringify_value.ts) is true forEMPTY_LISTandVOID;__runCodeskips the echo in that case. Python's REPL likewise does not echoNone.False,0,"") are still displayed.Scope
This is an interim,
repl-only fix for the visible symptom. It does not close #877: theNonevs. empty-list collision at the module boundary and the per-language rendering (truevsTrue) need theDataType/stringifydesign discussed there. A JSnullresult is also no longer echoed.Checks
yarn test,yarn tscandyarn lintinsrc/bundles/replpass. Not tried in a running Source Academy.Refs #877
🤖 Generated with Claude Code