git::own returns git::NoGit when neither the app nor ElyTree has Git; ElyMark's Git item then reads 'needs ElyTree'. Linux AppImages stand alone, so ElyMark keeps its Git there (packages share the AppDir). The bundle fixture now has ElyTree's executable folder. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2.3 KiB
FAIL
-
crates/ely-platform/src/git.rs:78 — With ElyMark installed alone and no configured external Git, the missing sibling falls through to a nonexistent development Git path.
vcs::askconverts the spawn error intoTracked::Unknown, andgit_itemreturns a non-clickable “Git: unknown” item; the existing “Install ElyTree” message is unreachable. This violates R6.6's explicit missing-install requirement. Relocated probes using the production locator and ElyMark's unchanged status functions reproduce Windows error 3 and Linux error 2, with no installation guidance (.work/R6.6-r1/windows-missing-hint.log,linux-missing-hint.log). Distinguish an unavailable bundled Git provider and show the localized ElyTree installation guidance while preserving other errors. -
packaging/stage.sh:68 — Removing Git also removes working Git status from Linux AppImages. With ElyMark and ElyTree AppImages beside each other,
current_exe()points inside ElyMark's mounted/extracted image, soapps::besidesearches that image's directories and never reaches ElyTree's Git. The development-path fallback is absent on an end-user machine. A probe using the shipped AppImage runtime, package directory layout, production locator and real Git reproduces this: ElyTree's image runsgit --version, while ElyMark's image reportsUnknown("No such file or directory (os error 2)"); the native sibling-install control succeeds (.work/R6.6-r1/linux-appimage-mark.log,linux-appimage-tree-version.log,linux-sibling.log). Make shared Git discovery work for the AppImage distribution required by PRD §4.1 and MARK-13, and cover that layout before removing its local Git. -
crates/ely-platform/src/git.rs:132 — The revised bundle test fails on Linux. Its fixture creates
ElyTree.app/Contents/Resources/gitbut noContents/MacOS; the new lookup traversesContents/MacOS/../Resources/git, which cannot resolve through the nonexistent intermediate directory on Linux.cargo test --locked -p ely-platform --libyields 51 passed and this failure; running the test alone reproduces it (.work/R6.6-r1/linux-platform-tests.log,linux-git-fixture.log). Build a complete sibling-bundle fixture, including its executable directory, so the test exercises the real installation layout and passes on Linux.