Repository navigation
Align Windows context menus and connector creation - #816
Merged
Merged
Conversation
coneilen
force-pushed
the
coneilen-microsoft-lane-e-issue-778
branch
4 times, most recently
from
October 15, 2026 00:20
797e0c7 to
6ca0c59
Compare
4 tasks
coneilen
force-pushed
the
coneilen-microsoft-lane-e-issue-778
branch
from
October 15, 2026 02:07
fae0a7b to
a023630
Compare
coneilen
marked this pull request as ready for review
October 15, 2026 02:42
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3129c073-8699-4d55-833b-204a9e80cb17 Signed-off-by: Colin Neilens <coneilen@microsoft.com>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3129c073-8699-4d55-833b-204a9e80cb17 Signed-off-by: Colin Neilens <coneilen@microsoft.com>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3129c073-8699-4d55-833b-204a9e80cb17 Signed-off-by: Colin Neilens <coneilen@microsoft.com>
Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 3129c073-8699-4d55-833b-204a9e80cb17 Signed-off-by: Colin Neilens <coneilen@microsoft.com>
coneilen
force-pushed
the
coneilen-microsoft-lane-e-issue-778
branch
from
October 15, 2026 02:51
a023630 to
b1ed0d7
Compare
This was referenced Oct 15, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Align Windows context-menu ordering and grouping with the supported macOS actions, show project-owned reclaimable Worktrees counts, and remove the duplicate background Create Edge action while preserving connector-drag edge creation. Add a test-only hidden-HWND semantic fallback for exact native menu item information; visual verification remains deferred.
Refs #778.
Changes
expectNativeMenuhelper to read IDs, type, state, submenu linkage, and bounded Unicode text through two-passGetMenuItemInfoW; add a hidden-HWND oracle for six menu targets (39 positions) plus 12 native negative controls, and exact text/property checks for the edge menu. No product behavior, visible popup, foreground/physical input, or paint code changes.git range-diffmatched all four one-to-one, andGraphContextMenu.zigremains SHA-256 E09F335E0BA654DFCFE84BABF7F20162FD75C9BD06B14DFBCA6BDDDDE0AEB51B. Main advanced from G2 merge 65194b7 through Give the validation runner contract step headroom over its measured run time #825's validation-tooling changes (15-minute workflow cap and at least 12 minutes for the runner-contract step) and Bind capture admission to coordinator-leased job identity #824's capture-admission tooling changes in fourTools/windowsfiles. This base move changes no product/provider/build inputs. G1/R1/R2 runner fields remain in place. The PR remains limited to the four approved files.Test plan
RED: & $env:GRAPHCODE_ZIG0152 test src\GraphContextMenu.zig -target x86_64-windows-msvc -lc -luser32 "-I$include" -> 188 passed, 5 failed at runtime (expected command 5113 but found 5109; native menu lengths 9/7, 10/8 and 3/5; removed command 5120 still found). Separate project/background count tests each failed 1/1 because the positive count suffix was absent.
GREEN: & $env:GRAPHCODE_ZIG0152 test src\GraphContextMenu.zig -target x86_64-windows-msvc -lc -luser32 "-I$include" -> pre-fallback head 6ca0c59: All 195 tests passed on the unchanged product patch; registered App native link invocation with only --test-filter "context menu target preparation" -> All 1 test passed on that product patch; pwsh -NoProfile -File Tools\windows\Tests\UiScenario.Tests.ps1 -> 166/166 passed;
git range-diff-> all three E commits matched and G1 runner child retained. Supplemental semantic test on working source SHA E09F335E0BA654DFCFE84BABF7F20162FD75C9BD06B14DFBCA6BDDDDE0AEB51B (now commit fae0a7b): $env:TEMP='C:\gcs\semantic-e-r1\scratch'; $env:TMP=$env:TEMP; & 'C:\gcs\ie\tools\zig-0.15.2\zig.exe' test src\GraphContextMenu.zig -target x86_64-windows-msvc -lc -luser32 '-IC:\gcs\ie\capture-head.graphcode-tools\providers\winghostty\include' --test-filter 'semantic fallback six E menus expose exact native item info on hidden HWND' --cache-dir 'C:\gcs\semantic-e-r1\zig-cache' --global-cache-dir 'C:\gcs\semantic-e-r1\zig-global-cache' -> 1/1 passed; six targets/39 positions and 12 expected negative controls. Historical hosted full-root proof from prior head a023630 (source-byte-equivalent historical evidence, not new-head execution): windows-shell unit shard 1, run 38669357363/job 116208586331 (PR event, attempt 1) -> GraphContextMenu root executed 196 tests; the semantic fallback was 6/196 with positive targets=6/observations=39 and negative controls=12, the edge menu test passed at 15/196, and All 196 tests passed. New exact-head hosted proof: windows-shell unit shard 1, run 38673178857/job 116220799384 (PR event, attempt 1, head b1ed0d7) -> GraphContextMenu root executed 196 tests and all 196 passed; semantic fallback was 6/196 with targets=6, observations=39, negative controls=12 (sketch-unwired=12, post-Goal=11); edge menu test passed at 15/196.REGRESSION: gh pr checks 816 -R scgopi/GraphCode --required -> at v3 publication, 9 required contexts on exact PR-event head b1ed0d7: 7 passed, 0 failed, 2 path-gated skips. Windows shell run 38673178857 attempt 1 passed (unit shards 0–2, integration, packaging contracts, real-product packaging); hardening run 38673178840 attempt 1 passed on windows-2022 and windows-2025; DCO run 38673178842 attempt 1 passed; TDD run 38673178837 attempt 1 passed against the pre-v3 body; Linux and macOS builds skipped by path gate; full pinned Windows validation and gated environment hardening skipped by opt-in configuration. Windows-port run 38673179020 attempt 1 failed in Swift job 116220805294 during the required real zmx empty-list test because the provider build received HTTP response read failure fetching vaxis; attempt 2 was initiated once with
gh run rerun 38673179020 -R scgopi/GraphCode --failed. The attempt-2 jobs endpointrepos/scgopi/GraphCode/actions/runs/38673179020/jobs?per_page=100reports Swift job 116225253342 and aggregator 116226739910 failed, while terminal/contracts 116225255218, privacy 116225290471, and classifier 116225294563 passed; these are the actual jobs reported for that failed-jobs-only retry, not a separate full PR-workflow rerun. The attempt-2 validation contract suite reported 49 executed, 47 passed, 2 failed:lease-bound admission accepted through actual capture commandreported “Capture command failed or changed default stdin inheritance”; the nested diagnostic atInvoke-UiCapture.ps1:429was anOpencall with 4 arguments that could not findcases\admission-accepted\runs\d2b6147126a3457aaa957d5d84d79082\process-journal.json. This identifies a missing journal file, not a stdin-inheritance change or malformed JSON; why the file was missing remains unknown. The second failure,actual rehearsal data satisfies the repaired report gate and refuses stale proof, reported “The repaired-core preflight does not prove a nonempty successful exact-source offline rehearsal,” consistent with the failed capture/report evidence; no separate cause is inferred. Both the Swift Windows-port validation step and required real-zmx step were skipped after the attempt-2 contract failure. Under #826, after verifying this diff excludes the four capture-core files, one final failed-jobs-only retry on the unchanged PR head was authorized and run withgh run rerun 38673179020 -R scgopi/GraphCode --failed; attempt 3 completed successfully on the same PR-event head b1ed0d7. Its actual jobs all passed: Swift 116228353984 (including runner-contract verification, Swift Windows-port validation, and the required real zmx empty-list test), terminal/contracts 116228355954, privacy scan 116228355596, changed-path classifier 116228355031, and aggregatewindows-spikes116235065527. The attempt-2 contract failures are an inherited, unrelated Windows-port validation flake, not evidence of an E menu product failure; the missing-journal mechanism remains unknown. The run exposed no uploaded artifacts. At publication, the latest TDD result was still the pre-v3 pass; this body edit triggers a fresh TDD check, whose outcome is reported separately.Checklist
git commit -s) per the DCOmake test)make check)Not verified
make testandmake checkare macOS targets and were not run from this Windows lane. On current head b1ed0d7, Linux and macOS builds are skipped by path gating; full pinned Windows validation and gated environment hardening are skipped by opt-in configuration.zig fmt --checkreports the same baseline formatting issue on untouched HEAD copies of both Zig files; no unrelated whole-file reformat was applied.