This repository was archived by the owner on Nov 22, 2025. It is now read-only.
Conversation
The Claude Code installer (curl | bash from claude.ai) was timing out after 15 minutes in CI environments, causing extension tests to fail. Changes: - Add explicit 300-second (5-minute) timeout to install() function - Add explicit 300-second (5-minute) timeout to upgrade() function - Use 'set -o pipefail' to catch curl failures in the pipeline - Add detailed error messages distinguishing timeout (124) from other failures - Provide better diagnostics for non-interactive installation issues This prevents the CI workflow from hanging indefinitely when the external installer encounters issues or waits for user input. Fixes: https://github.com/pacphi/sindri/actions/runs/19181943511/job/54840985241 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
The status() function was incorrectly reporting "INSTALLED" if ANY required directory existed. This caused false positives when only some directories were present (e.g., 'scripts' from Docker image). Problem: - Extension manager checks status() to decide if installation is needed - status() returned success if dir_count > 0 (any directory exists) - Since /workspace/scripts exists in Docker image, dir_count > 0 - Extension was skipped, leaving other directories (projects, config, agents, context, bin, backups, docs) uncreated - Self-service deploy failed with "Workspace structure missing" Solution: - Changed status() to require ALL directories (dir_count == total_dirs) - Now returns "NOT INSTALLED" with count if any directory is missing - This ensures complete installation even if some directories pre-exist Related issue: Self-Service Deploy workflow failure - https://github.com/pacphi/sindri/actions/runs/19185349031/job/54850860413 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
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 subscribe to this conversation on GitHub.
Already have an account?
Sign in.
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.
Summary
This PR contains two critical fixes for CI/deployment failures:
Fix 1: Claude Extension Installer Timeout
Problem: Claude Code installer from
https://claude.ai/install.shwas timing out after 15 minutes in CI, causing extension tests to fail.Solution:
install()andupgrade()functionsset -o pipefailto catch curl failuresCommit: d34ea25
Fix 2: Workspace Structure Installation Skipping
Problem: The
workspace-structureextension'sstatus()function incorrectly reported "INSTALLED" if ANY required directory existed. Since/workspace/scriptsexists in the Docker image, it skipped creating the other 7 directories, causing deployment verification to fail with "Workspace structure missing".Solution:
status()to require ALL 8 directories (not just any)Commit: c2c7be1
Testing
Related Issues