emrg: merge stop-git.ps1 into stop-emrg.cmd as single file (rant 2026-08-12T14:00:05) - #702
Merged
Merged
Conversation
argszero
commented
Aug 12, 2026
argszero
left a comment
Owner
Author
There was a problem hiding this comment.
✅ LGTM — cycle
Reviewed the full diff on feature/stop-git-merge-single-file:
- Single-file merge is faithful:
bin/stop-git.ps1deleted and its logic inlined intobin/stop-emrg.cmdstep 4 as onepowershell -NoProfile -ExecutionPolicy Bypass -Commandinvocation. Semantics identical to the proven standalone script:- prefix-scoped to
$env:USERPROFILE\.emrg\install\git\*only (system Git never matched) - pass 1 kills the git tree (git/ssh/plink/bash), pass 2 guilt-by-association kills every survivor under the prefix
- each pass re-queries
Get-CimInstance(3 fresh enumerations, no stale snapshot); the survivor check uses the latest query exit 1names survivors (truthful failure per #701),exit 0only when nothing survives
- prefix-scoped to
- Escaping: the
\"pattern matches the:verifyinline snippet already proven on real Windows since v0.2.25–v0.2.27 — avoids the 0.2.26 quoting-escape bug; single-quoted PS literals and@(...)array-wrap are correct. - Packaging:
[Files] dontcopyentry +ExtractTemporaryFile('stop-git.ps1')+GitStopScript/%~1 plumbing all removed from make-installer.sh; build-runtime.sh copy line removed. No functionalstop-gitreferences remain (grep matches history comments only). - Tests: rewritten to pin the single-file wiring (no
-File/GITSTOPremnants, 3 enumerations, truthful exit 1) + guards thatbin/stop-git.ps1does not exist and packaging has no functional references.tests/test_installer_stop.py+tests/test_cmd_crlf.py: 6/6 passed. - Full suite:
uv run pytest tests/→ 730 passed in 22.9s (matches PR claim; CRLF 105/105 preserved). - No CI/workflow changes; no version bump (correct — v0.2.28 release to follow per the rant).
argszero
commented
Aug 12, 2026
argszero
left a comment
Owner
Author
There was a problem hiding this comment.
✅ LGTM — cycle
Reviewed the full diff of #702 (single-file merge of stop-git.ps1 into stop-emrg.cmd):
- Faithful merge: stop-git.ps1 deleted; its guilt-by-association logic inlined as one
powershell -ExecutionPolicy Bypass -Commandin step 4 — prefix-scoped to%USERPROFILE%\.emrg\install\git\*(system Git never matched), pass 1 kills git tree (git/ssh/plink/bash), pass 2 kills every survivor (sh/vim included per host 2026-08-11T19:47:44). - Fresh enumeration: each pass + the survivor check re-query
Get-CimInstance(3 times) — no stale snapshot; residual →Write-Hostnames +exit 1(truthful failure per #701). - Escaping:
\"matches the proven TUI/verify inline snippets shipped since v0.2.25 — avoids the 0.2.26 quoting bug and temp-file generation. - Packaging: no
dontcopy/GitStopScriptremnants in make-installer.sh or build-runtime.sh; tests pin the wiring (incl.bin/stop-git.ps1absent + CRLF 105/105). - CI: test run 31568952199 PASS. Local pytest 730 green (net-zero test delta). No version bump — release v0.2.28 deferred until host confirms per rant.
argszero
commented
Aug 12, 2026
argszero
left a comment
Owner
Author
There was a problem hiding this comment.
✅ LGTM — cycle
3rd consecutive ✅ (R1057 + parallel + this cycle, no ❌ in between). Head 9721194 unchanged since my earlier audit — full diff re-verified: single-file merge faithful to the deleted stop-git.ps1 (prefix-scoped guilt-by-association, 3 fresh Get-CimInstance queries, truthful exit 1), \" escaping matches the proven :verify pattern, packaging references removed, CRLF 105/105, full suite 730 passed. Merge condition satisfied.
This was referenced Aug 12, 2026
Merged
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.
Merge stop-git.ps1 into stop-emrg.cmd as a single file (rant 2026-08-12T14:00:05)
Background
Host decision 2026-08-12 (B plan: merge first, release v0.2.28 later). PR #701
delivered CRLF enforcement + truthful stop-git failure but kept the separate
bin/stop-git.ps1(make-installer still references it, stop-emrg.cmd step 4still calls it). The host explicitly asked for a single file.
Changes
bin/stop-git.ps1deleted — the guilt-by-association kill logic now livesinline in
bin/stop-emrg.cmdstep 4 as a singlepowershell -Commandinvocation:
$env:USERPROFILE\.emrg\install\git\*only (system Git inProgram Files never matched)
git/ssh/plink/bash)(sh/vim included, host 2026-08-11T19:47:44 decision)
Get-CimInstance(no stale snapshot); the survivorcheck uses the latest snapshot; residual → exit 1 (truthful failure, emrg: enforce CRLF for Windows .cmd/.ps1 + truthful stop-git failure (rant 2026-08-12T12:30:41) #701)
\"escaping already proven on real Windows in theTUI-fallback and :verify inline snippets (shipped since v0.2.25-v0.2.27),
avoiding both the 0.2.26 quoting-escape bug and temp-file generation
packaging/make-installer.sh: removed the[Files] dontcopyentry forstop-git.ps1 and the
GitStopScript/ExtractTemporaryFile('stop-git.ps1')plumbing in
PrepareToInstall— now only extracts and runsstop-emrg.cmdpackaging/build-runtime.sh: removed the stop-git.ps1 copy linetests/test_installer_stop.py: rewritten to pin the single-file wiring(inline
-Command+\"escapes, no-File/GITSTOPremnants, 3 freshGet-CimInstanceenumerations, truthfulexit 1); added a guard thatbin/stop-git.ps1does not exist and packaging has no functional referencesAcceptance (from rant)
bin/has no stop-git.ps1;grep stop-gitmatches history comments only ✅Verification
tests/test_cmd_crlf.pygreen (CRLF preserved: 105/105)