mirror of
https://github.com/openclaw/openclaw.git
synced 2026-02-17 15:47:28 +00:00
chore(pr-skills): suppress output for successful commands (pnpm install/build/test/etc) to lower context usage
This commit is contained in:
58
scripts/pr
58
scripts/pr
@@ -107,9 +107,44 @@ require_artifact() {
|
||||
fi
|
||||
}
|
||||
|
||||
print_relevant_log_excerpt() {
|
||||
local log_file="$1"
|
||||
if [ ! -s "$log_file" ]; then
|
||||
echo "(no output captured)"
|
||||
return 0
|
||||
fi
|
||||
|
||||
local filtered_log
|
||||
filtered_log=$(mktemp)
|
||||
if rg -n -i 'error|err|failed|fail|fatal|panic|exception|TypeError|ReferenceError|SyntaxError|ELIFECYCLE|ERR_' "$log_file" >"$filtered_log"; then
|
||||
echo "Relevant log lines:"
|
||||
tail -n 120 "$filtered_log"
|
||||
else
|
||||
echo "No focused error markers found; showing last 120 lines:"
|
||||
tail -n 120 "$log_file"
|
||||
fi
|
||||
rm -f "$filtered_log"
|
||||
}
|
||||
|
||||
run_quiet_logged() {
|
||||
local label="$1"
|
||||
local log_file="$2"
|
||||
shift 2
|
||||
|
||||
mkdir -p .local
|
||||
if "$@" >"$log_file" 2>&1; then
|
||||
echo "$label passed"
|
||||
return 0
|
||||
fi
|
||||
|
||||
echo "$label failed (log: $log_file)"
|
||||
print_relevant_log_excerpt "$log_file"
|
||||
return 1
|
||||
}
|
||||
|
||||
bootstrap_deps_if_needed() {
|
||||
if [ ! -x node_modules/.bin/vitest ]; then
|
||||
pnpm install --frozen-lockfile
|
||||
run_quiet_logged "pnpm install --frozen-lockfile" ".local/bootstrap-install.log" pnpm install --frozen-lockfile
|
||||
fi
|
||||
}
|
||||
|
||||
@@ -418,7 +453,7 @@ review_tests() {
|
||||
bootstrap_deps_if_needed
|
||||
|
||||
local list_log=".local/review-tests-list.log"
|
||||
pnpm vitest list "$@" 2>&1 | tee "$list_log"
|
||||
run_quiet_logged "pnpm vitest list" "$list_log" pnpm vitest list "$@"
|
||||
|
||||
local missing_list=()
|
||||
for target in "$@"; do
|
||||
@@ -436,7 +471,7 @@ review_tests() {
|
||||
fi
|
||||
|
||||
local run_log=".local/review-tests-run.log"
|
||||
pnpm vitest run "$@" 2>&1 | tee "$run_log"
|
||||
run_quiet_logged "pnpm vitest run" "$run_log" pnpm vitest run "$@"
|
||||
|
||||
local missing_run=()
|
||||
for target in "$@"; do
|
||||
@@ -595,13 +630,13 @@ prepare_gates() {
|
||||
docs_only=true
|
||||
fi
|
||||
|
||||
pnpm build
|
||||
pnpm check
|
||||
run_quiet_logged "pnpm build" ".local/gates-build.log" pnpm build
|
||||
run_quiet_logged "pnpm check" ".local/gates-check.log" pnpm check
|
||||
|
||||
if [ "$docs_only" = "true" ]; then
|
||||
echo "Docs-only change detected with high confidence; skipping pnpm test."
|
||||
else
|
||||
pnpm test
|
||||
run_quiet_logged "pnpm test" ".local/gates-test.log" pnpm test
|
||||
fi
|
||||
|
||||
cat > .local/gates.env <<EOF_ENV
|
||||
@@ -679,10 +714,10 @@ prepare_push() {
|
||||
prep_head_sha=$(git rev-parse HEAD)
|
||||
|
||||
bootstrap_deps_if_needed
|
||||
pnpm build
|
||||
pnpm check
|
||||
run_quiet_logged "pnpm build (lease-retry)" ".local/lease-retry-build.log" pnpm build
|
||||
run_quiet_logged "pnpm check (lease-retry)" ".local/lease-retry-check.log" pnpm check
|
||||
if [ "${DOCS_ONLY:-false}" != "true" ]; then
|
||||
pnpm test
|
||||
run_quiet_logged "pnpm test (lease-retry)" ".local/lease-retry-test.log" pnpm test
|
||||
fi
|
||||
|
||||
git push --force-with-lease=refs/heads/$PR_HEAD:$lease_sha prhead HEAD:$PR_HEAD
|
||||
@@ -782,7 +817,7 @@ merge_verify() {
|
||||
exit 1
|
||||
fi
|
||||
|
||||
gh pr checks "$pr" --required --watch --fail-fast || true
|
||||
gh pr checks "$pr" --required --watch --fail-fast >.local/merge-checks-watch.log 2>&1 || true
|
||||
local checks_json
|
||||
local checks_err_file
|
||||
checks_err_file=$(mktemp)
|
||||
@@ -899,13 +934,12 @@ EOF_BODY
|
||||
--body-file .local/merge-body.txt \
|
||||
>"$merge_output_file" 2>&1
|
||||
then
|
||||
cat "$merge_output_file"
|
||||
rm -f "$merge_output_file"
|
||||
return 0
|
||||
fi
|
||||
|
||||
MERGE_ERR_MSG=$(cat "$merge_output_file")
|
||||
[ -n "$MERGE_ERR_MSG" ] && printf '%s\n' "$MERGE_ERR_MSG" >&2
|
||||
print_relevant_log_excerpt "$merge_output_file"
|
||||
rm -f "$merge_output_file"
|
||||
return 1
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user