Skip to content

SetNameservers can return Hover 401 without refreshing login #48

Closed

Description

@intel352

Context

During the gocodealone-dns domain intent apply for buymywishlist.net, Hover delegation import/preflight succeeded, but the write path failed:

hover browser SetNameservers "buymywishlist.net": HTTP 401: {"succeeded":false,"error_code":"login","error":"You must login first"}

Run: https://github.com/GoCodeAlone/gocodealone-dns/actions/runs/27487720716

Expected

Before mutating nameservers, the Hover plugin should verify the browser/session is authenticated, reuse a valid cached browser profile/session when possible, and refresh login only when necessary. If the first write still returns Hover login/401, it should invalidate/refresh the session and retry once before failing.

Acceptance criteria

  • SetNameservers ensures a valid authenticated session before issuing the write request.
  • A stale session/cookie does not cause an immediate failed cutover.
  • The plugin logs enough progress to distinguish cached-session reuse, login refresh, and write retry.
  • Existing read/import behavior remains unchanged.

Activity

  1. intel352 commented on Jun 14, 2026

    @intel352
    ContributorAuthor

    The first fix shipped in v0.5.12 and the DNS apply confirmed the retry path is active, but live validation exposed the next failure mode.

    Run: https://github.com/GoCodeAlone/gocodealone-dns/actions/runs/27488162504

    Evidence:

    workflow-plugin-hover v0.5.12
    hover browser SetNameservers "buymywishlist.net": refresh login after HTTP 401: hover browser signin: HTTP 429: <html><head><title>429 Too Many Requests</title>...
    

    So the remaining work is to make browser signin back off and retry on Hover/Imperva 429 during forced refresh. The plugin should not dump the entire HTML challenge in the top-level error if retries exhaust.

  2. intel352 commented on Jun 14, 2026

    @intel352
    ContributorAuthor

    v0.5.13 improved the error surface and retry path, but live apply then hit a transient 502 Bad Gateway during forced browser signin:

    Run: https://github.com/GoCodeAlone/gocodealone-dns/actions/runs/27488478666

    workflow-plugin-hover v0.5.13
    hover browser SetNameservers "buymywishlist.net": refresh login after HTTP 401: hover browser signin: HTTP 502: <!DOCTYPE html> ... (truncated)
    

    Next patch: treat 502/504 as retryable browser-signin statuses alongside 429/503.

  3. intel352 commented on Jun 14, 2026

    @intel352
    ContributorAuthor

    Live validation on gocodealone-dns run 27491720650 showed the v0.5.15 retry path still forced credential/TOTP signin after a write 401, then hit Hover/Imperva 429 on /signin/auth2.json. PR #53 changes SetNameservers to revalidate the cached browser session in Chrome and retry the write before falling back to forced login.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions