Repository navigation
Studio P0 UX: always send visible 4I+4V on START; stacked tables and control polish - #238
Conversation
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. |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: e772464adc
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
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".
| RowLayout { | ||
| // Stack voltage/current to use the injection workspace | ||
| // vertically instead of leaving half the panel empty. | ||
| ColumnLayout { |
There was a problem hiding this comment.
Update the geometry gate for vertical stacking
The Windows lifecycle job runs --check-operator-ui, but checkOperatorViewport() in apps/arstack_studio/src/main.cpp still requires voltage.area.right() <= current.area.left(), which only accepts the former side-by-side layout. With both matrices in this ColumnLayout, they share the same horizontal span, so the first geometry case exits with code 21 before screenshot acceptance; update the predicate to validate voltage above current instead.
Useful? React with 👍 / 👎.
| require("smartSession.requestStartWithScenario(\n controller.startScenarioSnapshot())" in workflow | ||
| and "smartSession.requestStart()" not in workflow, |
There was a problem hiding this comment.
Make the START regression checks agree on formatting
This check requires the newly split two-line call, while the same test later still searches for the exact one-line substring requestStartWithScenario(controller.startScenarioSnapshot()) at lines 135–167. Consequently, running python3 apps/arstack_studio/tests/check_operator_workspace.py exits with reconnect must not auto-transmit..., and the Qt workflow that invokes this script always fails; consolidate these assertions or make them whitespace-insensitive.
Useful? React with 👍 / 👎.
…age/current matrices
Preserve PTP–SV wire baseline
Strict QML + Studio regression only. No modification to ESP32-P4 firmware, PTP role/servo, timestamp gating, sample clock, encoded SV, or smpSynch AUTO. Preserve exact main/experimental synchronization baseline.
Root cause
Operator GUI setpoint table could show Ia=-30° while capture still had Ia=0° because WorkflowBar used a bare
requestStart()whenpendingApply==false. Next START therefore reused stale board phase. Remove this divergent path: ALWAYS passstartScenarioSnapshot()through ordered all-channel batch, irrespective of pendingApply. Validation, worker admission and session ownership remain unchanged.Visual improvements
CI/acceptance
Qt, Windows Lifecycle, Native Preview (exact-head firmware + UI); screenshot review still required for visual sizing. No unconditional background PTP startup: show PTP running only when hardware confirms it. Phasor and Wave are already visible/on by default in current screenshot. No new dialogs.