Skip to content

fix(doctor): respect disabled proxy startup choices - #387

Merged
StepenkoAnatoli merged 1 commit into
mainfrom
fix/issue-381-proxy-startup-diagnostic
Oct 14, 2026
Merged

StepenkoAnatoli merged 1 commit into
mainfrom
fix/issue-381-proxy-startup-diagnostic

Conversation

@StepenkoAnatoli

Copy link
Copy Markdown
Owner

With a configured proxy, doctor reported success when NODE_USE_ENV_PROXY=true, 0, another non-1 value, or --no-use-env-proxy left requests direct. Share the runtime's startup-choice reader with doctor and warn for explicit disabled choices. Enabled choices retain the passing diagnostic; command-line flags outrank NODE_OPTIONS and the variable. The operator choice is preserved and raw values are never echoed.

Fixes #381

what changed: A shared startup-choice reader, the existing proxy warning, and regression coverage for disabled values and flag precedence.

why: Align diagnostics with Node startup routing while retaining ADR-0047's no-override rule. Node's CLI documentation describes the enabling value and flag precedence. No alternative design was set aside.

what it touched: lib/runtime.mjs, lib/doctor.mjs, proxy/doctor tests, architecture rows, changelog and test inventory. No new public flag, config key or domain term.

what you verified: verified - red-first reproduction, passing doctor/proxy tests, and acceptance by the required complete offline suite in the repository commit gate.

what you got wrong and fixed: mistake - running six full suites concurrently exceeded the default 3900-second budget; where - local commit validation on this Windows host; impact - affected hooks refused commits before publication; cause - excess concurrent subprocess and filesystem work; fix - retry one commit at a time with the ADR-0142 timeout extension (RESEARCH_KIT_GATE_TIMEOUT=7920); verified - the required full-suite commit gate accepted the commit.

Full-suite detail: verified - 1779 passed, 0 failed, 12 unsupported capabilities on win32/Node 24.20.0 in 1271.8 seconds. The gate's documented local unsupported-capability opt-in was used; CI exercises its supported platforms separately.

what changed: Added a shared startup-choice reader used by runtime selection and doctor; warn when NODE_USE_ENV_PROXY is not 1 or startup flags disable proxies. Regression coverage includes environment values, flag precedence and unchanged no-override behavior.

why: doctor promised proxy routing when the operator had explicitly left it off. Restore ADR-0047's diagnostic and startup-choice contract; no alternative design was set aside.

what it touched: runtime.mjs, doctor.mjs, proxy/doctor tests, architecture rows, changelog and test inventory. No new public flag, config key or domain term.

what you verified: verified - red-first direct doctor assertion. The targeted doctor/proxy tests and required complete offline suite run before commit acceptance.

what you got wrong and fixed: mistake - running six full suites concurrently exceeded the default 3900-second budget; where - local commit validation on this Windows host; impact - affected hooks refused commits before publication; cause - excess concurrent subprocess and filesystem work; fix - retry one commit at a time with the ADR-0142 timeout extension (RESEARCH_KIT_GATE_TIMEOUT=7920); verified - the required full-suite commit gate accepted the commit.
@StepenkoAnatoli
StepenkoAnatoli merged commit 0dc3ff0 into main Oct 14, 2026
7 checks passed
@StepenkoAnatoli
StepenkoAnatoli deleted the fix/issue-381-proxy-startup-diagnostic branch October 14, 2026 18:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

doctor says the kit's requests go through HTTPS_PROXY when NODE_USE_ENV_PROXY is set to anything but 1, while the kit's own plan is none

1 participant