56b222f544
git clone --depth 1 --single-branch only fetches the tip of the requested branch, so any subsequent git checkout <sha> for a non-tip commit fails with 'reference is not a tree'. The error was caught and rethrown as 'shallow clone may not contain this commit', but the clone arguments were never adjusted. Drop --depth 1 (and --single-branch when no ref is requested) when the caller supplies options.sha so the desired commit is present in the local object store. The ref-only path remains shallow. Fixes #1589