[Console] Install console runtime in dev sync#199
Conversation
|
Claude finished @suraj-ranganath's task in 6m 5s —— View job Code review — #199 [Console] Install console runtime in dev sync
Blocking
edited = result.get("editdescription")
if isinstance(edited, str):
gui_options["comments"] = editedImportantNone. (The PR scope is much wider than the #192 dependency change, but that is expected for a stacked PR against Nits
Test gaps
EEGLAB parity notesNo parity regressions found. Verified as correct improvements:
Checked: correctness/regressions, EEGLAB parity, EEG data-structure compatibility, changed-behavior tests, and AGENTS.md/CLAUDE.md compliance. I could not run |
| comments = result.get("comments") | ||
| if comments is None: | ||
| comments = result.get("editdescription") | ||
| if comments is not None: | ||
| gui_options["comments"] = str(comments) |
There was a problem hiding this comment.
Blocking — confirming this dialog without editing the description clobbers comments to the literal string "False".
editdescription is a QPushButton and the dialog spec has no comments tag, so result.get("comments") is always None and the code falls through to result.get("editdescription"). When the user does not click "Edit description", the button has no _VALUE_PROPERTY, so _read_widget (qt.py:1247) falls to widget.isChecked() → False. Since False is not None, this sets gui_options["comments"] = str(False) = "False". Every plain "name the dataset and click OK" flow silently overwrites EEG['comments'] with "False".
The _edit_text callback only stores a value (a str) on the button when the user actually edits and accepts, so guard on that:
| comments = result.get("comments") | |
| if comments is None: | |
| comments = result.get("editdescription") | |
| if comments is not None: | |
| gui_options["comments"] = str(comments) | |
| edited = result.get("editdescription") | |
| if isinstance(edited, str): | |
| gui_options["comments"] = edited |
The new test_pop_newset_gui_description_button_value_updates_comments always passes editdescription: "edited notes" (a str), so it misses this path — please add a case where the result has editdescription: False (un-edited) and assert comments is not added to gui_options/left unchanged.
|
🤖 Closing this because #206 now carries the fix/fresh-uv-console commits plus the Fable 5 integration fixes into the advisor-gated epic PR path. Keeping both PRs open would duplicate the same console-runtime dependency change. |
Stacked on #190; do not merge before the earlier stack lands. Add GUI and console runtime dependencies to the default development group so a fresh source checkout can run uv run eegprep-console --full without a separate extra sync. Also addresses review-found stacked regressions in pop_newset, session validation, and long-task logging.
Fixes #192