Skip to content

auths doctor: add comprehensive first-run diagnostics #79

@bordumb

Description

@bordumb

Problem

auths doctor is the natural place users go when things break, but it currently doesn't catch several common issues discovered during dogfooding:

Checks to add

SSH config

Registry

  • Check if refs/auths/registry exists in the current repo
  • Verify the identity in the registry matches the current active identity
  • Warn if the registry has attestations signed by a different identity (stale data from identity recreation)
  • Check if registry is pushed to the remote

Allowed signers

  • Check if ~/.ssh/allowed_signers exists and contains the current device's key
  • Check if .auths/allowed_signers exists in the current repo
  • Warn if repo's allowed_signers has placeholder/example keys
  • Verify format is correct (<principal> namespaces="git" ssh-ed25519 <key>)

Signing

  • Verify a test signature can be created and verified (round-trip check)
  • Check that git log --show-signature works for recent commits

Context

During dogfooding, every one of these issues was hit. auths doctor surfacing them with actionable fix commands would have saved significant debugging time.

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