Repository navigation
Match compact loop-card presentation across project and overview - #814
Merged
Merged
Conversation
coneilen
force-pushed
the
coneilen-microsoft-wave-2-implement-b-764
branch
5 times, most recently
from
October 15, 2026 00:12
e3ff22f to
a44ab90
Compare
Share measured title/pill, owned Unicode live/meta rows and compact action geometry between project and overview cards while preserving existing action safety. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 39e65c1f-fe48-4e45-b6f2-e26f161d9d6b Signed-off-by: Colin Neilens <coneilen@microsoft.com>
Restore unrelated whitespace changed by the whole-file formatter. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 39e65c1f-fe48-4e45-b6f2-e26f161d9d6b Signed-off-by: Colin Neilens <coneilen@microsoft.com>
Use measured branch elision without blanking the card, reuse the existing child counter, keep narrow overview actions reachable with a 260 pitch, and update only the approved gate geometry and executable positive/negative fixtures. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 39e65c1f-fe48-4e45-b6f2-e26f161d9d6b Signed-off-by: Colin Neilens <coneilen@microsoft.com>
Exercise the actual production assignment AST at narrow, wide and translated bounds, rejecting the obsolete point that hits Open while preserving named ownership and outcome guards. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 39e65c1f-fe48-4e45-b6f2-e26f161d9d6b Signed-off-by: Colin Neilens <coneilen@microsoft.com>
Use LoopCardView's 52 percent white metadata ink over the card surface and its six-point marker plus five-point gap, sharing the measured and painted text bounds. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 39e65c1f-fe48-4e45-b6f2-e26f161d9d6b Signed-off-by: Colin Neilens <coneilen@microsoft.com>
coneilen
force-pushed
the
coneilen-microsoft-wave-2-implement-b-764
branch
2 times, most recently
from
October 15, 2026 03:58
a44ab90 to
156345a
Compare
coneilen
marked this pull request as ready for review
October 15, 2026 04:49
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
Loop cards currently spend a row on raw state text, truncate live metadata, and use a different presentation in the global overview. This approved slice shares a compact 250x96 card body across project and overview, with a measured title/state row and separate monospaced live, detail and metadata rows.
Refs #764. Implements only the compact-card slice of the approved plan and corrections, not the complete issue.
Current head:
156345accb529384e200e1667e1945e857784cd1, based on actual accepted main112d458303891f87af6c1dc6beaf7e48073fd65cafter #825's runner budget, #824's lease-bound capture core and E's #816 context-menu/connector changes. All five B commits remain unchanged, and the actual old-to-new delta equals the accepted nine-path base delta. Sonnet5.5/high accepted the narrow App/menu/card/gate/runner interaction review with no coupled bug or fix. This base changes product/build inputs inApp.zigandGraphContextMenu.zig; the old a44/base65194 binaries and build receipts are historical witnesses only, not current-head builds. No fresh local product build is authorized or performed. Fresh exact-head CI is green: seven successful workflows,24completed contexts(20SUCCESS/4configured SKIPPED), MERGEABLE/CLEAN/draft, after one authorized main-derived capture-core job rerun. Its original failure remains separately recorded; prior a44/e3ff results are not substituted.Visual gate: NotExecuted(harness #826). No AFTER capture or paired-image acceptance exists. The operator now authorizes the coordinator to merge this accepted-code/exact-head-green-CI slice with visual verification explicitly deferred. This PR remains draft until the coordinator marks it ready; no completed readiness transition, merge, visual acceptance, issue-box closure or parity-ledger promotion is claimed. The shared capture core is blocked by #826, a journal check-then-open race. B's own UI/harness remains stopped; no product/zmx/native execution, capture child or new desktop lease is authorized. Existing images remain held.
The operator moved the fallback authorization to now, superseding the former23:00PDT cutoff because #826 cannot merge before then. The coordinator has accepted current156345/base112d source, narrow interaction review, exact-head green CI and the preserved evidence. The coordinator may now perform the readiness/merge transition for this slice without visual capture; B's owner is authorized only for this body-status update, not to mark ready or merge. Issue#764 remains open with box1 and all other visual boxes unticked, and visual verification is deferred to one later coordinated capture batch. This is authorization to proceed, not a claim that the PR has already been marked ready, merged or visually accepted. Required checks must remain green.
Changes
Scope and limits
Issue box1 is targeted but unchecked pending paired visual review. Boxes2-8 remain unchecked: type-palette sweep; entry/origin/chips; unwired inline recovery; authoritative attention/glow/actions; topology/initial-fit; ports/group band; add control.
The final B patch still touches only six approved files:
GraphCanvas.zig,DesignTokens.zig,AppFont.zig, the boundedApp.zigUIA/test blocks,uia-live-gate.ps1geometry oracles and correspondingValidationRunner.Tests.ps1cases. No ledger, historical250x106 manifest, GraphModel/Swift/provider-pin/sidebar/workspace-paint/jump/dialog product changes. Quick Chat is unchanged. Existing START/UNWIRED information and context-menu recovery remain deliberate extras for follow-up.The coordinator approved the narrow existing App test literals, gate geometry/early Open and Worktrees coordinates, independent row painting and minimal branch-elision policy after the initial rejection. At the actual1028-client gate boundary, the unpanned third card and Worktrees control extend four pixels past the viewport; its visible hit target remains reachable and pan-30 exposes it fully. This is disclosed clipping, not whole-control visibility. Overview row/lane heights remain unchanged; all production overview consumers use the shared bounds/caption helpers. Unrelated Quick Chat220/760 values and historical716 negative fixtures remain intentional.
Test plan
RED: & $env:GRAPHCODE_ZIG0152 test src\GraphCanvas.zig -target x86_64-windows-msvc -lc -luser32 -lgdi32 -IC:\gcp\ib\winghostty\include --cache-dir C:\gcs\ib\card-local --global-cache-dir C:\gcs\ib\global --test-filter "loop card parity" -> 0 passed,5failed; expected project height96 found106, overview width250 found220, goal displaced activity, raw backend/tokens/tier displaced display metadata, actions overlapped metadata. Original C:\gcs\ib\red-card.log retained.
GREEN: pwsh -NoProfile -File C:\gcs\ib\verify-cards.ps1 -Tag post821 -> historical product-source-equivalent B focus passed17card/8font/3hidden-App/38adjacent tests, each with positive counts; no current-head rerun implied. B patch unchanged but merged E changes product inputs, so historical builds/tests are not current build proof; old logs retained.
REGRESSION: pwsh -NoProfile -File Tools\windows\Tests\UiScenario.Tests.ps1; git range-diff 65194b7..a44ab90 112d458..156345a; gh pr checks 814 -R scgopi/GraphCode --watch --fail-fast --interval 30 -> direct offline G1 child166executed/166passed/0failed exit0; all five own commits '='; normalized B patch unchanged and actual nine-path delta exactly accepted main. Exact156345 CI7successful workflows/24completed checks(20SUCCESS/4configured SKIPPED), MERGEABLE/CLEAN; one authorized core-job rerun after separately preserved49/47/2 sharing violation. Product/build inputs changed; no fresh local build authorized or claimed.
Current-head preparation and execution limits
postE-range-diff.txt,postE-rebase-proof.json,rebase-diff-preE.patch,rebase-diff-postE.patch,accepted-postE-base.patchanddelta-postE.patchpreserve the exact rebase evidence. E's App worktree/menu targets, connector-drag gate and runner additions remain present; B's card geometry/actions and existing A/G1/G2 cases were not restored from older whole files. The only local test run for this refresh is the direct offlineUiScenario.Tests.ps1data child:166executed/166passed/0failed, exit0, preserved inpostE-ui-scenario.logandpostE-local-proof.json. Full ValidationRunner, capture-driver child, native/UI/product/zmx execution and fresh builds are not authorized and were not run. The approved body-evidence checker is scoped to this artifact.Narrow Sonnet5.5/high review of the new delta's App/menu/card geometry and gate/runner interactions is ACCEPT. The reviewer independently verified the five equal commits, identical B patch, exact accepted base delta and clean merge-tree equality. E's right-edge/mid-height connector point remains clear of B's action rectangles at250x96, its named card selector cannot match the action names, menu oracles contain no card geometry, and overlapping App/gate/runner changes occupy disjoint hunks. No fix or scope expansion was needed. Original review is agent
2b7cb6ff-8ffb-406e-8544-8fc40266da66turn0, preserved verbatim inpostE-interaction-review-turn0.raw.txt(SHA256BAEF3667F88333B3C455BE32AF30895AB41ADEE61DB1612AB29D2EF9BB4E6760) with separate provenance record;postE-interaction-review.jsonis only its parent-written summary. It did not run the local combined runner, build, CI or images. Its timeout-headroom opinion is a prediction, not measured current-head capacity evidence.Fresh exact-head required CI is green. The first hardening attempt failed a main-derived capture-core test: run38679005657, Windows2025 job116239062659,
UiCaptureDriver49executed/47passed/2failed. The actual primary error is a sharing violation opening process-journal.json, reported fromInvoke-UiCapture.ps1:429during the real argument-vector case; the dependent rehearsal report guard also failed. It is in the known #826 journal-concurrency family, but the underlying mechanism is not established and the error is not literally FileNotFound, a network failure or stdin inheritance failure. Full logci-postE-hardening2025-attempt1.log(SHA256CC514B6094CA6DA243249138AF3C96532F5BCC76337772BCAE72D3235AD0A5B5), actual job/run metadata and the original failed watch snapshot are preserved.The failure was reported before retry. With exact unchanged local/live156345 verified and the workflow completed, the first authorized failed-job rerun requested only job116239062659; request exit0. New run attempt2's Windows2025 job116240810455 passed, with actual hosted
UiCaptureDriver49executed/49passed/0failed,UiScenario166/166/0 and final ValidationRunner PASS. Its full logci-postE-hardening2025-attempt2.log(SHA2560E42EFBBF18A3826E1F51953AC9962E6DA3D7436DE691AA71339897390F9230D) remains separate from the original failure; other attempt2 metadata may reference inherited passed/skipped jobs, not new executions. The per-head budget is one used of at most two across all affected workflows, not two per workflow; there was no automatic retry or head/source reset.postE-ci-retry-history.jsonpreserves the actual request, exception distinction and unused remaining budget. No core/pin/timeout/source fix was made.All seven current-head workflows succeeded: Windows shell38679005687, Windows port38679005714, hardening38679005657 attempt2, DCO38679005634, TDD38679005708, macOS classifier38679005631, and Linux classifier38679005639.
ci-postE-positive-proof.json(SHA2567292BD6B17FABD7343C469AA5FB8AF633C1CC285D89D232428186D2677DDB56E) binds exact head/base, positive seven-workflow/24-context snapshot,20SUCCESS/4configured SKIPPED, MERGEABLE/CLEAN/draft and retry1/2. Actual macOS/Linux builds and opt-in full/gated hardening were configured skips, not executed cross-platform evidence.Actual current-head logs are preserved separately for unit shards0/1/2 (jobs116239072193/116239072213/116239072335), native integration116239072268, real packaging116239072303, Swift116239061989 and both hardening attempts. Hosted Swift's runner passed G1166/166/0 and capture-driver49/49/0 without rerun, then positive163XCTest cases with1skip/0failures; E's connector/menu cases also executed in hosted runner output. These hosted executions are not local product/native runs or screenshot proof. A later body-edit TDD context may add to the snapshot; all nonzero expected check results must remain complete before any authorized transition.
Historical a44 qualification — not current-head evidence
The smallest affected offline child ran, not the full local ValidationRunner, App/unit/integration suite, native compatibility preflight or desktop capture.
g2-focused-proof.jsonrecords31executed/31passed/0failed and the real no-desktop supervisor/worker/harmless-EXE launch, UTC/refusal/failure-safe release/ownership controls. The final B scene component regression is mocked, produces zero images and is not physical/UI parity evidence.The first invocation used
C:\gcs\ib\g2-focused-offline, which the accepted guard intentionally rejects as preserved historical lane-root ancestry. Its31executed/13passed/18failed log/report remain intact. The unchanged command was rerun with an explicitly approved dedicated sibling rootC:\gcs\ib-r1-a44, without changing source, expectations or guards. This is an invocation error, not a product finding, capture-slot failure or behavioral RED.Rebase proof:
g2-rebase-range-diff.txt,g2-rebase-equivalence.json,rebase-diff-pre823.patch,rebase-diff-post823.patch,delta-post823.patchandaccepted-823.patch. The retained user-specified Sonnet5.5/high reviewer independently accepted five equal commits, the identical aggregate B patch, exact six-file accepted G2 delta, unchanged B/A/G1 runner hunks plus the new positive-count child, and zero product/provider/build-input delta. This is rebase preservation only, not a fresh broad source audit or image acceptance.Historical exact-source build command:
pwsh -NoProfile -File C:\gcs\ib\build-r2-binaries.ps1-> exit0 for a44 and base65194, no GUI. The script exported immutable Git sources, built with pinned Zig0.15.2 and exact Winghostty6286560d pin in separate source/cache/global/output roots, and recorded each exact command, source/built-at SHA, source-tree/archive/toolchain/host-library/executable hashes and timestamps. Aggregate receipt:C:\gcs\ib-r2-a44\build-receipts.json, SHA256C245B38CB1700996BB5BD94CFF954330E0D56A81C0F601BFC604412EB6E1091B. Neither phase was built from current156345ac/base112d; no relabelling or current admission is implied.a44ab904757fda0861c2b334a0798c437066ec76, source treef2f3715ada6f21a0f729f763c07393cb7b701b4984FDFCBDA4B3B2097C802C2119F6D937ACFBB57549E3302056512D99D0B5AC68after\build-receipt.json:C5642D120F07F19A8CE066706EB2A83EEBA3E48304A9FB25364D5845E5614012;source.tar:189C179C54A05C4A6060E518555865180DA7A582A512F3C5A38A043EDD491B17;build.log:ADE848FC7ACE442CB98B40E3F4F54BFFBC5E40D37176FA7B8F305F7CC85D0D3F65194b777523406cbbfaa7db4bcf0372119c5412, source tree9c692ff30653d3de9c144a7d4a9e78672b55e8049D2A977F0B4F65FC2734CDB67EC37EA71C902E6DF75DAEAA77E269054D9745D0before\build-receipt.json:0DAD15EE4241EB4F34825AE3ED18FD67AB35E0E93BB9CCDB213B6CD17294C072;source.tar:76DBE1DE1CB36C1C2A211109D07206C29C1EF5884F92B0D235EB7BF3589AADB6;build.log:FEDB7068FBBEBC35D129632DA73158107B8C24A870BD958082FB0F3A60193E64All table paths are under
C:\gcs\ib-r2-a44. Executables are in each phase'sout\bin\graphcode-windows.exe; source roots are each phase's exportedgraphcode-windows, not Git repositories. The clean original B worktree remains the source repository. These84FD/9D2A binaries, as well as older C610/83688 binaries, are now immutable historical evidence only. No shared capture scripts, provider pins, source or job identity are changed by B.Historical exact-a44 workflows all succeeded: Windows shell38658685033, Windows port38658685069, hardening38658684996, DCO38658685189, TDD38658685049, macOS classifier38658685184, and Linux classifier38658684924.
ci-a44-positive-proof.jsonasserts seven exact-a44 completed-success workflows and24completed contexts(20SUCCESS/4configured SKIPPED), MERGEABLE/CLEAN/draft;ci-a44-runs.json,ci-a44-checks.jsonandci-a44-watch.logretain the snapshot. Its later body-edit TDD added another same-head context without changing the original snapshot; none qualifies the current156345ac head.Actual a44 logs are retained for unit shards0/1/2 (jobs116174532021/116174532065/116174532089), native integration116174532012, real packaging116174531958, and Swift116174542627. They were retrieved directly under distinct
ci-a44-*.lognames without replacing older logs. Actual macOS/Linux builds and opt-in full/gated hardening were configured skips, not executed cross-platform evidence. Historical green CI and offline launch controls do not establish current-head regression or paired visual acceptance.Preserved product and regression history
All historical body versions and failures remain separate local artifacts; no failure log is overwritten by a passing run.
red-card.log:0pass/5fail before implementation.red-app-old-probe.log:old probe on compact geometry expected1 found0, a dependency regression, not proof main's old actions were invisible.red-review-composite.log:fixed-fields/branch fit.red-gate-geometry.logandred-worktrees-assignment.log:actual expected1005 found959.red-meta-ink.log:old ink failed literal source-derived COLORREF. Compiler mistakes remain separate, not behavioral RED.C:\gcs\ib. They are historical, not a44 gates. Skipped macOS/Linux builds and opt-in full/gated hardening are not executed cross-platform proof. Unit root summaries are not unique-test counts; auxiliary zero-test Swift output is not a pass.ci-e3ff-log-download-attempt1.txtretains shared gh ZIP/EOF retrieval errors, interrupted Swift attempt2 and raw terminal-escape refusal; attempt3 direct-file retrieval succeeded. The first runner-summary extraction expected a space instead of equals; corrected extraction re-read the same completed log. Neither is a test/product failure.Capture history and remaining image gate
Get-CaptureActionsEvidencewas not exported, plus callerexit$resulttypo. No actions or AFTER. Two File exits0, seed0, bounded EOF, seven owned processes to0; release19:36:19.147UTC independently verified. No retry after stop.ArgumentList @()refused before app/GUI. A secondary supervisor null-error suppressed its official release JSON. Seed0/ready/EOF existed; coordinator independently recovered and verified seven journaled generations absent/products0, release/guard cleared. This is independent recovery, not a cap official receipt. No PNG/AFTER/vision; old packet stopped.Queue2 assets remain at
C:\gcs\ib\captures\attempt3-beforewith preserved hashes; queue5 atcaptures\retry-final\before, indexed byqueue5-partial-hashes.json/queue5-scenes.json. Release/log manifests and full identical-source Unicode fixtureBFC26149...remain separate. All eight images are BEFORE only, not AFTER or paired evidence. HistoricalphaseFailed=falsedescribed EOF drain only; the phase failed. The correctedseedDrainFailedfield also does not imply whole-phase success.Primary read-only macOS source is
2ccf303a04f995184aae1d4b738a9eca0f71b79e, bundleC:\gc-ref\macos-groundtruth-2ccf303a. Its fitted project reference is ParityRef90% (metadata wrongly says global); restored Graph overview is45%; these are not intrinsic100% font/card measurements. The read-onlymacos-groundtruth-2ccf303a-gapfill-v2companion adds independently sampled100% linked project/overview references, not a plan/scene expansion or healthy-provider/physical proof. README/index/privacy masks/exclusions precede image access;167unsampled companion images are not independently cleared. Excluded764-fit-targeted-event and held722menus are not used. No reference bundle or screenshots have been uploaded wholesale.Original body artifacts remain unchanged:
pr-body.mdSHA256F22E967B110BD8D52158B06CD9CA5A3E36BCC0271D6221D936FE51E8E170D7CD,pr-body-centralcap-pending.mdSHA2561E4F61788CADDA50CD507733019C87D7E69CC2C5D578C6CC60B0F7AFB53B1A52,pr-body-g1-green.mdSHA2567B0FEB35169B0100EE3888B2C31D93B6B801BA7D81AC6C1AC7FF7918691DED65,pr-body-g2-green.mdSHA2569DF35577694BD83B3FAF9583D09CB4D94A5D112CA0F5DFD8ABC5D45833E66590, andpr-body-post826-hold.mdSHA256F47DEF7302E8E0F1B2F709305808CFBA0AFF99174F1471C98630229E9D473818. Historical job/build hashes and source/CI acceptances remain valid only for their named scope. Visual acceptance remains unexecuted; the currently authorized coordinator-only semantic merge must retain the open visual issue boxes and #826 reason, followed by one later coordinated visual batch.Checklist
git commit -s) per the DCOmake test)make check)make test/make checkare macOS entry points and were not run on this Windows worker. Exact Windows evidence and its limits are listed above.