Bug
The Windows installer (install.ps1) fails during archive validation with:
error: unsafe or incomplete release archive: archive must contain exactly one codebase-memory-mcp.payload.exe
Reproduction
- Windows 10 x64, PowerShell 7.5 (
pwsh -NoProfile)
curl -fsSL -o cbm-install.ps1 https://raw.githubusercontent.com/DeusData/codebase-memory-mcp/main/install.ps1
pwsh -NoProfile -ExecutionPolicy Bypass -File cbm-install.ps1
- Download succeeds, SHA256 checksum verified, then the archive validation in
cbm-install.ps1 rejects the release archive.
Root cause
install.ps1 declares the expected Windows archive contents at lines 17-23:
$BinName = "codebase-memory-mcp.exe"
$PayloadName = "codebase-memory-mcp.payload.exe"
$WindowsArchiveNames = @($BinName, $PayloadName, "LICENSE", "install.ps1", "THIRD_PARTY_NOTICES.md")
But the published release archive for codebase-memory-mcp-windows-amd64.zip contains only:
| File |
Size |
codebase-memory-mcp.exe |
273,333,760 |
LICENSE |
1,128 |
install.ps1 |
6,450 |
THIRD_PARTY_NOTICES.md |
381,851 |
codebase-memory-mcp.payload.exe is not in the archive. The install script's allowlist check at line ~224 (if ($archiveCounts[$archiveName] -ne 1)) trips and aborts.
The same issue likely affects the bash install.sh (it shares the same $WindowsArchiveNames allowlist logic).
Suggested fix
Either:
- Update
install.ps1 (and install.sh): drop codebase-memory-mcp.payload.exe from $WindowsArchiveNames if the payload is no longer part of the Windows release; OR
- Update the release pipeline: include
codebase-memory-mcp.payload.exe in the published Windows archive (rename the binary or include it as a separate file if it serves a different purpose, e.g. a sandbox/exec helper).
Environment
$ pwsh -NoProfile -Command '$PSVersionTable.PSVersion'
Major Minor Build Revision
----- ----- ----- --------
7 5 4 0
$ curl -sI https://github.com/DeusData/codebase-memory-mcp/releases/latest/download/codebase-memory-mcp-windows-amd64.zip
HTTP/2 302
location: https://github.com/.../codebase-memory-mcp-windows-amd64.zip
The download completes successfully (37,387,929 bytes), SHA256 verification passes, only the archive allowlist check fails.
Bug
The Windows installer (
install.ps1) fails during archive validation with:Reproduction
pwsh -NoProfile)curl -fsSL -o cbm-install.ps1 https://raw.githubusercontent.com/DeusData/codebase-memory-mcp/main/install.ps1pwsh -NoProfile -ExecutionPolicy Bypass -File cbm-install.ps1cbm-install.ps1rejects the release archive.Root cause
install.ps1declares the expected Windows archive contents at lines 17-23:But the published release archive for
codebase-memory-mcp-windows-amd64.zipcontains only:codebase-memory-mcp.exeLICENSEinstall.ps1THIRD_PARTY_NOTICES.mdcodebase-memory-mcp.payload.exeis not in the archive. The install script's allowlist check at line ~224 (if ($archiveCounts[$archiveName] -ne 1)) trips and aborts.The same issue likely affects the bash
install.sh(it shares the same$WindowsArchiveNamesallowlist logic).Suggested fix
Either:
install.ps1(andinstall.sh): dropcodebase-memory-mcp.payload.exefrom$WindowsArchiveNamesif the payload is no longer part of the Windows release; ORcodebase-memory-mcp.payload.exein the published Windows archive (rename the binary or include it as a separate file if it serves a different purpose, e.g. a sandbox/exec helper).Environment
The download completes successfully (37,387,929 bytes), SHA256 verification passes, only the archive allowlist check fails.