From ddd220fa946c54fd07b003263d96cee3ab3ef55b Mon Sep 17 00:00:00 2001 From: Sylpheed RE agent Date: Fri, 28 Aug 2026 17:22:02 +0200 Subject: [PATCH] agent: stop the launcher claiming it cannot push when it can The `loose` footer announced "cannot push -- no git credentials are mounted" unconditionally. It was written before the credential mount existed and then went stale, so with credentials correctly mounted it told the operator their work would be lost -- the exact failure the mount was added to prevent. It now reports what is actually true, and keeps the real warning for the case where the file genuinely is missing. Co-Authored-By: Claude Opus 5 --- docker/agent/sylph-agent | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/docker/agent/sylph-agent b/docker/agent/sylph-agent index 93fdeb15..8590c202 100755 --- a/docker/agent/sylph-agent +++ b/docker/agent/sylph-agent @@ -229,8 +229,19 @@ case "${1:-}" in echo " ./sylph-agent attach chat with it locally (Ctrl-P Ctrl-Q to leave it running)" echo " ./sylph-agent stop stop it" echo - echo " It commits to auto/* branches and cannot push — no git credentials" - echo " are mounted, so review its work with: git -C '$PROJECT/Syplheed-Reborn' log --oneline auto/..." + # Report what is actually true. This line used to claim unconditionally that + # the agent could not push, which was written before credentials were + # supported and then went stale — telling the operator their work was at risk + # when it was not, which is the exact failure the credential mount fixes. + if [ -f "${SYLPH_GIT_CREDENTIALS:-$HOME/.sylph-git-credentials}" ]; then + echo " It commits to auto/* branches and publishes them with push-work," + echo " which refuses any other branch and never force-pushes. Review with:" + echo " git -C '$PROJECT/Syplheed-Reborn' fetch origin && git log --oneline origin/auto/..." + else + echo " It commits to auto/* branches and CANNOT PUSH — no git credentials" + echo " are mounted, so its work dies with the container. Review it with:" + echo " git -C '$PROJECT/Syplheed-Reborn' log --oneline auto/..." + fi ;; logs) shift; exec docker logs "$@" "$NAME" ;;