Conversation
Code Review: Add interactive login
|
8908deb to
6b05689
Compare
|
Claude finished @ramilamparo's task in 4m 10s —— View job Code Review: Add interactive login
The latest commit ( Nothing new worth flagging on top of prior reviews. The two remaining items from the previous review — HTTPS enforcement on the resolved tenant origin ( LGTM. Submitted as an APPROVE review. Minimized 7 outdated bot review summaries and deleted 1 progress tracking comment. |
There was a problem hiding this comment.
Code Review: Add interactive login
The latest commit (f35cc5e — "Check suspended flag") is a small, focused addition: checkTenant now returns a suspended boolean alongside the tenant URL, and resolveTenantUrl fails fast with a clear error message when a suspended team is detected. The change is well-tested — the new suspended team shows error case in auth-e2e.spec.ts:383 exercises the fail path end-to-end.
Nothing new worth flagging on top of prior reviews. The two remaining items from the previous review — HTTPS enforcement on the resolved tenant origin (oauth.ts:83) and auth status exiting on refresh failure (auth.ts:162) — have been reviewed and waved off by the author as intentional, so I won't re-raise them.
LGTM.

Summary
Adds interactive
qasphere authcommands for login, logout, and status — replacing the need to manually manage API keys and environment variables.Login methods
--api-keyflag) — prompts for team name and API key directly (hidden input).Credential storage
Credentials are persisted in priority order:
@napi-rs/keyring) — preferred, used when the OS keyring daemon is available~/.config/qasphere/credentials.json) — restricted permissions (0600), used when keyring is unavailableCredential resolution
resolveCredentialSource()checks sources in priority order:QAS_TOKEN+QAS_URLenvironment variables.envfile in cwd~/.config/qasphere/credentials.json.qasphereclifile (searched up directory tree)Auth subcommands
qasphere auth loginqasphere auth login --api-keyqasphere auth statusqasphere auth logout