Repository navigation
Studio-first physical test: visible Capture workspace, in-app SV/PTP evidence, bundled firmware - #258
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: a431b513c4
ℹ️ 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".
| "sourceComponent: SvCapturePanel {" in hub and | ||
| "SvCapturePanel {" not in source("DeviceExpertPanel.qml"), | ||
| "Studio must expose ONE persistent Capture workspace from its main ribbon") | ||
| require('text: "Capture SV + PTP"' in capture_ui and |
There was a problem hiding this comment.
Make the workspace gate accept the conditional capture label
The new gate searches for the literal text: "Capture SV + PTP", but SvCapturePanel.qml assigns this caption through a conditional expression (text: capture.capturing ? ... : "Capture SV + PTP"), so the substring is absent. In the checked arstack-studio-qt.yml workspace-contract step, running python3 apps/arstack_studio/tests/check_operator_workspace.py now exits with Studio capture must start in-app and display decoded SV/PTP evidence without terminal scripts, causing this commit's CI to fail unconditionally.
Useful? React with 👍 / 👎.
| return result; | ||
| } | ||
| json.close(); | ||
| if (usable) { |
There was a problem hiding this comment.
Return decoded counters when no valid SV frame is found
When an operator selects the wrong TAP/SPAN adapter or captures only PTP traffic, parsing can succeed and ptpFrames can contain useful evidence while matched == 0; however, usable is false and this condition suppresses the entire summary. The QML panel consequently displays none of the decoded SV/PTP counters and only reports “No valid SV packets,” hiding the PTP count that would help diagnose the capture setup. Populate the summary for completed parses while retaining the INVALID_CAPTURE status.
Useful? React with 👍 / 👎.
Product correction
Physical tests must happen in ARStack Studio, not by asking ordinary operators to run Python, PowerShell, Wireshark filters or external bench-kit tools. The same exact SHA Studio installer bundles the verified preview ESP32-P4 firmware image, manifest, and pinned flasher.
Implemented
SvCaptureController; remove hidden duplicate from Device.Capture supportbutton opens official Wireshark installer webpage only when dumpcap is missing; Refresh rediscovers after installation without restarting Studio. Npcap capture driver remains an explicitly disclosed Windows prerequisite (kernel drivers are not silently downloaded/installed).Acceptance
Require exact-head Studio Qt, Windows Lifecycle, Native Preview workflow and firmware/manifest verification to PASS. Artifact must be the GitHub Actions Studio Native Preview setup.exe/portable.zip built on THIS SHA. Do not merge main or falsely assert hardware relay LOCK before receiving physical evidence.