fix(install,doctor): group the WT settings flavors so absent ones skip quietly#114
Merged
Merged
Conversation
…p quietly After three-flavor Windows Terminal settings support (Store / unpackaged / Preview) landed, install.ps1 emitted a "target folder not found — skipping" warning for every flavor NOT installed, and dotfiles-doctor showed three WT link rows (two permanently "skipped"). On a normal box you have exactly one WT install, so that was pure noise. Both consumers now treat the flavors as one logical link: wire whichever flavor(s) are present, stay silent about the rest, and warn/skip once only when no Windows Terminal is installed at all. The link plan stays pure/unchanged (still three candidate rows); the grouping lives in the consumers. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_016xkWqWoYXgpgUJ3YVu3JGH
There was a problem hiding this comment.
Pull request overview
This PR reduces noisy Windows Terminal (WT) “skipping” output by treating the three WT settings “flavors” (Store / unpackaged / Preview) as a single logical link in the installer and doctor output, while keeping Get-DotfilesLinkPlan unchanged (still emitting three ParentMustExist candidates).
Changes:
install.ps1now links whichever WT flavor directories exist and only warns once when no WT install is found.dotfiles-doctorcollapses the three WT link-plan rows into a single summarized “Windows Terminal settings” row.CHANGELOG.mddocuments the behavior change and the rationale (removing per-flavor noise).
Reviewed changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated 1 comment.
| File | Description |
|---|---|
| powershell/os/45-doctor.ps1 | Groups ParentMustExist WT link-plan rows into one doctor summary row. |
| install.ps1 | Groups WT link-plan rows so absent flavors skip silently; warns once only if none are present. |
| CHANGELOG.md | Adds a changelog entry describing the reduced WT “skipping” noise. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Copilot review: the collapsed Windows Terminal doctor row checked only that the settings DIRECTORY existed, so "WT installed but settings.json absent" was reported as "present, not a repo link" instead of "missing" — losing a state the other link rows report. Restore all four states (linked / present-not-ours / missing / skipped) by probing the settings.json path itself, and use -LiteralPath on the checks. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_016xkWqWoYXgpgUJ3YVu3JGH
This was referenced Jul 14, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Context
Reported from a real install run:
!Windows Terminal settings (Preview): target folder not found — skipping.When three-flavor WT settings support landed (#109 — Store / unpackaged / Preview), each flavor became its own
ParentMustExistrow in the link plan. The side effect: on a normal box (exactly one WT install),install.ps1printed a!warning per absent flavor (usually two), anddotfiles-doctorshowed three WT link rows with two permanently "skipped." It's cosmetic — the real settings still linked via whichever flavor you have — but it reads like something's wrong.Fix
Both consumers now treat the WT flavors as one logical link:
install.ps1— link whichever flavor(s) are present; stay silent about the rest; warn once only if no Windows Terminal is installed at all.powershell/os/45-doctor.ps1— collapse the three rows into a singlelink: Windows Terminal settingsrow (linked/present, not a repo link/skipped (Windows Terminal not installed)).The pure
Get-DotfilesLinkPlanis unchanged — it still emits three candidate rows (and theLib.TestsParentMustExistassertion still holds); the "alternatives" semantics live in the consumers, where the filesystem probing belongs.Testing
Structural (no
pwshhere): both edited scripts are brace/paren-balanced, LF + final-newline. No test pins the old warning string or the doctor row count; the only WT-related test (Lib.Tests— the plan'sParentMustExistnames) is untouched by this change.uninstall.ps1already handled the flavors correctly (removes whichever are real repo links). Full Pester/PSSA runs on the Windows CI runner.🤖 Generated with Claude Code
Generated by Claude Code