SIGN IN SIGN UP

chore: add web-login proxy doneUrl regression for npm-profile fix (#9560)

Adds a regression test for npm/cli#8875. The fix is in npm-profile
(npm/npm-profile#191).

This test is expected to be red until bundled `npm-profile` is bumped to
the release with the fix, and turns green after that.

## Why

`npm login --auth-type=web` silently fails behind a proxy/mirror: the
returned `doneUrl` points at the canonical `registry.npmjs.org` instead
of the proxy, so npm polls the wrong host, gets a `403`, and falls back
to couch auth (which also fails). Fixed in npm-profile by rewriting
`doneUrl` to the configured registry origin.

## How

- `@npmcli/mock-registry`: `weblogin()` gains an optional `doneRegistry`
to emulate a proxy advertising a `doneUrl` on another origin.
- `test/lib/commands/login.js`: proxy registry whose `doneUrl` is on
`registry.npmjs.org`; asserts the token is saved with no couch fallback.
Fails with the current bundled npm-profile, passes once it is bumped.

## References

Fixes npm/cli#8875
Depends on: npm/npm-profile#191
Related: npm/cli#9550
M
Manzoor Wani committed
059c06e52f00e2d9cd2fa28baf6a6acd5be3b297
Parent: e96a7de
Committed by GitHub <noreply@github.com> on 6/19/2026, 2:42:30 PM