fix(claude-code): check boundary_config_path source exists before creating symlink

Move the source-file existence check before the ln -sf call so we never
create a broken symlink. Previously the check happened after the symlink
was already created, leaving a dangling symlink on disk before exiting.

Generated with OpenClaw using Claude
This commit is contained in:
DevelopmentCats
2026-04-11 20:07:27 +00:00
parent 388dfee540
commit a3ac438d51
@@ -240,14 +240,14 @@ function start_agentapi() {
fi
elif [ -n "$ARG_BOUNDARY_CONFIG_PATH" ]; then
printf "Linking boundary config from %s to %s\n" "$ARG_BOUNDARY_CONFIG_PATH" "$BOUNDARY_CONFIG_FILE"
if [ "$ARG_BOUNDARY_CONFIG_PATH" != "$BOUNDARY_CONFIG_FILE" ]; then
mkdir -p "$BOUNDARY_CONFIG_DIR"
ln -sf "$ARG_BOUNDARY_CONFIG_PATH" "$BOUNDARY_CONFIG_FILE"
fi
if [ ! -f "$ARG_BOUNDARY_CONFIG_PATH" ]; then
printf "Error: boundary_config_path '%s' does not exist or is not a regular file. Ensure the file exists at this path before starting.\n" "$ARG_BOUNDARY_CONFIG_PATH" >&2
exit 1
fi
if [ "$ARG_BOUNDARY_CONFIG_PATH" != "$BOUNDARY_CONFIG_FILE" ]; then
mkdir -p "$BOUNDARY_CONFIG_DIR"
ln -sf "$ARG_BOUNDARY_CONFIG_PATH" "$BOUNDARY_CONFIG_FILE"
fi
if [ ! -s "$BOUNDARY_CONFIG_FILE" ]; then
printf "Error: boundary configuration file '%s' does not exist or is empty. Check that '%s' exists and is not empty.\n" "$BOUNDARY_CONFIG_FILE" "$ARG_BOUNDARY_CONFIG_PATH" >&2
exit 1