Skip to content

Open SimplySign's window by relaunching it, not by clicking a guessed coordinate - #76

Merged
xroche merged 3 commits into
masterfrom
certum-login-robust
Jul 28, 2026
Merged

Open SimplySign's window by relaunching it, not by clicking a guessed coordinate#76
xroche merged 3 commits into
masterfrom
certum-login-robust

Conversation

@xroche

@xroche xroche commented Jul 28, 2026

Copy link
Copy Markdown
Owner

The first release run failed at the login: the tray coordinate measured during the spike missed. A probe on a hosted runner showed why, and it was not a near miss. SimplySign's icon sits behind the chevron there rather than in the visible area, and it belongs to a different process than the one the workflow launches, so neither the fixed coordinate nor a match on that process could have found it.

Launching the application a second time avoids the question: the running instance answers by opening its login window, with no coordinate involved. That is now the first thing tried, and it worked on the first probe. Locating the icon through the notification area's own toolbar remains as a fallback and as the diagnostic that explained this failure, which is worth more than the click.

Two things keep the next failure cheap: -ProbeOnly stops before any credential is typed, so opening the window can be exercised without spending an approval on the signing environment, and every build now parses this script and compiles the C# inside it, since a typo there costs a release attempt rather than a build.

xroche and others added 3 commits July 28, 2026 17:18
The measured coordinate worked on the spike runner and missed on the
first release run: hosted runners differ in what else sits in the tray.
Ask the tray's toolbar which process owns each button instead, and click
where Windows says that button is, handling the chevron when the icon is
folded away. Try simply launching the application again first, which is
what a user typing its name would do and what a single-instance app
answers by showing its window.

Opening that window needs no credential, so it can be exercised without
spending an approval: -ProbeOnly stops before the typing, and a
throwaway workflow drives it on this branch. The login script is also
parsed and its tray helper compiled on every build now, since a typo in
it would otherwise cost a release attempt.

Mail the approval request as well: an assigned issue is the one way to
reach a mailbox without SMTP credentials in a public repository.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Signed-off-by: Xavier Roche <roche@httrack.com>
The probe found it on the first run. The tray icon turned out to be
behind the chevron and owned by a different process than the one we
launch, so neither the old coordinate nor a pid match could have found
it; the second launch opens the window regardless. The tray enumeration
stays as the fallback and, more usefully, as the diagnostic that
explained this one.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Signed-off-by: Xavier Roche <roche@httrack.com>
GitHub already notifies a required reviewer; adding a second channel
before confirming the first one is missing was premature, and it cost an
issues: write permission and noise in a public tracker. The next
approved run tells us whether the native mail arrives.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Signed-off-by: Xavier Roche <roche@httrack.com>
@xroche
xroche merged commit 0b47ca6 into master Jul 28, 2026
4 checks passed
@xroche
xroche deleted the certum-login-robust branch July 28, 2026 15:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant