Repository navigation
Conversation
…d egress to current Studio baseline
…Studio preview opt-in
…ndows native Preview
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. |
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
…te raw ready flag
… state (#235) * fix(studio): prevent stale PTP role readbacks toggling RUNNING off; coalesce serial log UI signals * fix(studio): own bounded telemetry-log notification timer * fix(studio): restore in-session explicit PTP ON after verified firmware reflash * fix(studio): PTP OFF explicitly clears in-session restore intent * fix(sv): distinguish sample phase from nonzero canonical MAC publish delay in AUTO gate * test(sv): prove 110–180us publish latency may qualify while sample phase remains ≤4us * fix(studio): bound in-session post-flash PTP rearm attempt to 36 seconds * test(studio): protect PTP runtime authority, session-only restart intent and coalesced logs * docs(ptp-sv): align AUTO gate with IEC sample time vs MU publish delay, and Studio PTP state ownership
* fix(studio): serialize edited phasors directly to live SET and stack voltage/current matrices * style(studio): promote SMV Injector identity to normal desktop header size * style(studio): center ribbon icon and label in both axes * style(studio): consistent hover contrast, alignment and stable checkbox indicator * style(studio): consistent hover contrast, alignment and stable checkbox indicator * style(studio): consistent hover contrast, alignment and stable checkbox indicator * feat(studio): one-shot default PTP SOURCE startup with explicit OFF cancellation * test(studio): lock PTP defaults, vertical 4I4V layout and live table setpoint contract * fix(studio): every START sends exact displayed 4I+4V setpoints, never stale board phases * test(studio): prevent reintroduction of bare START losing displayed phase angles * test(studio): accept readable wrapped START snapshot expression * test(studio): keep Edit-to-Start guarantee independent of formatting * test(studio): enforce vertical voltage/current viewport geometry at 100–175 percent DPI
…and legible controls (#243) * fix(studio): synchronously commit focused and debounced phasor cells before START snapshot * fix(studio): flush displayed phase before START and expand stacked 4I/4V matrices * fix(studio): reject START if an active table editor has invalid or unsent phase * fix(studio): readable brand, centered ribbon/buttons and stable checkbox hover geometry * fix(studio): readable brand, centered ribbon/buttons and stable checkbox hover geometry * fix(studio): readable brand, centered ribbon/buttons and stable checkbox hover geometry * fix(studio): readable brand, centered ribbon/buttons and stable checkbox hover geometry * fix(ribbon): center icon+caption vertically with symmetric stretch spacers * test(studio): protect phase start snapshot, vertical matrix, branding and consistent hover * test(studio): validate flexible vertical matrix instead of obsolete fixed height * test(studio): regress actual IA −30°/IB −150°/IC +90° wire SET encoding * test(studio): require validated table snapshot before START admission * test(studio): enforce one-click validated START without obsolete inline expression * fix(qml): remove read-only Row implicit size assignments; preserve centered content * fix(qml): do not assign generated Text implicitHeight in checkbox content * fix(studio): keep stacked editors elastic and within 960x620 Windows viewport * test(studio): require compressible editor min-height at 960x620
|
SV–PTP preservation gate (2026-10-18): Latest operator-supplied 120s PCAP on ASIX: 480,294 canonical 0x88BA SV frames, APPID 0x4000, confRev 1, 1 ASDU with 4I+4V; no diagnostic mirror; 0 |
…ceptance (#244) * fix(studio): improve readable ribbon, consistent hover controls and vertically filled injection layout * fix(studio): improve readable ribbon, consistent hover controls and vertically filled injection layout * fix(studio): improve readable ribbon, consistent hover controls and vertically filled injection layout * fix(studio): improve readable ribbon, consistent hover controls and vertically filled injection layout * fix(studio): improve readable ribbon, consistent hover controls and vertically filled injection layout * fix(studio): avoid conflicting anchors in ribbon Controls content layout * test(studio): lock snapshot START, full 4I+4V signed phases and readable UI components * fix(studio): dark caption on white hover for Advanced icon/text tool buttons * test(studio): keep readable Advanced tool hovers and single-size checkbox visual * test(studio): pin verified SV/PTP phase-evidence profile across future GUI builds * fix(studio): Advanced dropdown hover uses white surface and dark readable option text * test(studio): prevent white-on-white Advanced dropdown hover regressions * docs: freeze 120s SV/PTP local-lock wire checkpoint and table-to-SV fidelity acceptance * fix(studio): pair white Advanced button hover with dark icon artwork too * test(studio): preserve dark icon/caption on light Advanced hover * fix(studio): distribute vertical matrix height among four editable channels instead of blank spacer * test(studio): prevent blank-bottom Voltage/Current editor layout regression
…TP regression (#245) * fix(studio): strengthen phase table SSOT and operator workspace legibility * fix(studio): strengthen phase table SSOT and operator workspace legibility * fix(studio): strengthen phase table SSOT and operator workspace legibility * fix(studio): strengthen phase table SSOT and operator workspace legibility * fix(studio): strengthen phase table SSOT and operator workspace legibility * fix(qml): center button row in valid Item content root * fix(qml): keep checkbox label visible with single custom indicator * test(studio): enforce valid centered controls and one checkbox indicator * feat(studio): default verified-session PTP SOURCE ON without extra dialogs * test(studio): guard default PTP and phase SET millidegrees end-to-end * fix(studio): reuse existing one-shot PTP ON, never create duplicate timer * test(studio): validate compact stacked matrices and single pre-existing PTP default * docs(studio): pin observed PTP/SV continuity and GUI setpoint nonregression gate * test(studio): update legacy tiny logo expectation to legible branded ribbon * fix(studio): keep stacked signal matrices within minimum 960x620 Windows viewport * test(studio): preserve responsive bounded stacked height at 960x620 and desktop viewports
User failure reproduced on ESP32-P4 COM15
The 2026-10-17 native Preview bundled firmware e4bbf6f (
Exact bundled build match), while the tested M3C.5 phase-servo/egress source exists only on stacked branch. Clicking Studio Reinstall current therefore reflashed the old free-running firmware. User's 120s capture showed 4000 canonical fps,smpSynch=AUTOwire value 0 everywhere, PTP 120 Sync/FUP/Announce but no SV epoch lock. This is a bundle/source integration failure, not a Wireshark problem.Concrete integrated fix
bc7f5c204331852b571b5c2d8e01fb90be6c0a3edirectly onto current public Studiomaintree, checking every ported path was unchanged onmainrelative to ancestor9e70a4937874e3e1752b725264fe5a2008aa8fb0. Do not regress ~219 newer GUI commits or merge obsolete Studio QML.phase_sync_previewboolean to reusable ESP-IDF firmware build: only native Studio Preview explicitly selectsCONFIG_AR_SMV_PTP_PHASE_SERVO_EXPERIMENTAL=y, sparse canonical MAC descriptor TX timestamps on, broadcast mirror off, SOURCE role on; compile-time and manifest checks enforce profile.Lab simulation controlsheading and showChanges sent on Startwhen Studio has unsent 4I+4V draft, explaining user screenshotIc=90°while stopped device log still showedIc=120°from prior injection.No fake locked claim
AUTO=1 requires measured software phase plus actual canonical MAC egress evidence. SOURCE
UNLOCKEDin receiver discipline status is NOT an actual local-SV phase lock claim; separate PTP/SV synchronization required. CI cannot certify SIPROTEC 5 alarm-free reception. Installer is a phase-qualified evaluation Preview, not a production release.Acceptance