You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Follow-up from PR #788 review panel -- devx-ux-expert finding #4 ("`[i]` hint actionability ~70%").
Is your feature request related to a problem? Please describe.
The `[i]` hint appended by `AuthResolver.build_error_context` when `dep_ref.port` is set names the right suspect but not the next action. Current output (`src/apm_cli/core/auth.py:428-429` on main):
```
[i] Host 'bitbucket.example.com:7999' -- verify your credential helper stores per-port entries (some helpers key by host only).
```
A user who hits this has two immediate questions the hint does not answer:
How do I verify that? Nothing tells them which command to run against which helper; they have to translate "stores per-port entries" into GCM / osxkeychain / libsecret / gh-auth specifics themselves.
`git credential fill` is the helper-agnostic entry point every credential helper implements -- it reproduces exactly what APM does internally, so the user can see what their helper returns for the same (host, port) pair.
The docs URL points to the per-helper compatibility table already in tree, so users who need per-helper specifics (GCM vs. osxkeychain vs. libsecret vs. gh auth) land directly on it.
Leave as-is. Current wording is correct; just under-actionable. Acceptable if we expect most users to reach the docs via the `--verbose` diagnostics. Reviewer panel rated this ~70% actionable, so there is room.
Helper-specific guidance inline. Emit different advice for GCM vs. osxkeychain vs. libsecret. Rejected: the helper is opaque to APM at emission time, and the helper-compatibility table in docs is the right place for that detail -- not a three-line terminal hint.
Separate `--diagnose-credentials` subcommand. Bigger surface than this finding warrants.
Mirror skill entry also exists at `packages/apm-guide/.apm/skills/apm-usage/authentication.md` (added in PR fix(auth): thread dep_ref.port into credential resolution (#785) #788's polish push), so the same command example stays discoverable when users are assisted by the in-repo APM usage skill.
Scope-limited: one string in `build_error_context` + one test update (`tests/unit/test_auth.py::TestBuildErrorContextWithPort` already asserts the `per-port` marker; expand to assert the `git credential fill` substring and the docs URL).
Refs
PR #788 (auth port threading -- introduced the hint)
Follow-up from PR #788 review panel -- devx-ux-expert finding #4 ("`[i]` hint actionability ~70%").
Is your feature request related to a problem? Please describe.
The `[i]` hint appended by `AuthResolver.build_error_context` when `dep_ref.port` is set names the right suspect but not the next action. Current output (`src/apm_cli/core/auth.py:428-429` on main):
```
[i] Host 'bitbucket.example.com:7999' -- verify your credential helper stores per-port entries (some helpers key by host only).
```
A user who hits this has two immediate questions the hint does not answer:
Net effect: roughly 70% actionable. Names the problem; stops short of naming the remediation.
Describe the solution you'd like
Rewrite the hint to include a concrete verification command for the most common helper (`git credential-manager`) and anchor at the new docs section:
```
[i] Host 'bitbucket.example.com:7999' -- this helper may key by host only.
Verify with: printf 'protocol=https\nhost=bitbucket.example.com:7999\n\n' | git credential fill
See: https://microsoft.github.io/apm/getting-started/authentication/#custom-port-hosts-and-per-port-credentials
```
Rationale:
Describe alternatives you've considered
Additional context
Refs