fix: sync launcher rules for source checkout

This commit is contained in:
zyl
2026-03-30 02:30:34 +08:00
parent d2c9902966
commit 5db25b513e
2 changed files with 60 additions and 0 deletions

View File

@@ -0,0 +1,53 @@
#!/usr/bin/env bash
set -euo pipefail
TEST_DIR="$(cd -- "$(dirname -- "${BASH_SOURCE[0]}")" && pwd)"
CRATE_DIR="$(cd -- "${TEST_DIR}/.." && pwd)"
TMP_DIR="$(mktemp -d)"
trap 'rm -rf "${TMP_DIR}"' EXIT
FAKE_CRATE_DIR="${TMP_DIR}/claw"
mkdir -p \
"${FAKE_CRATE_DIR}/tools/browser_runtime" \
"${FAKE_CRATE_DIR}/target/debug/resources" \
"${FAKE_CRATE_DIR}/resources" \
"${FAKE_CRATE_DIR}/src" \
"${FAKE_CRATE_DIR}/third_party/zeroclaw/src" \
"${TMP_DIR}/skill_lib"
cp "${CRATE_DIR}/tools/browser_runtime/sgclaw_browser_entry.sh" \
"${FAKE_CRATE_DIR}/tools/browser_runtime/sgclaw_browser_entry.sh"
chmod +x "${FAKE_CRATE_DIR}/tools/browser_runtime/sgclaw_browser_entry.sh"
cat > "${FAKE_CRATE_DIR}/Cargo.toml" <<'EOF'
[package]
name = "sgclaw"
version = "0.1.0"
edition = "2021"
EOF
cat > "${FAKE_CRATE_DIR}/Cargo.lock" <<'EOF'
# fake lockfile for launcher test
EOF
cat > "${FAKE_CRATE_DIR}/target/debug/resources/rules.json" <<'EOF'
{"version":"1.0","domains":{"allowed":["www.zhihu.com"]},"pipe_actions":{"allowed":["click","type","navigate","getText"],"blocked":[]}}
EOF
sleep 1
cat > "${FAKE_CRATE_DIR}/resources/rules.json" <<'EOF'
{"version":"1.0","domains":{"allowed":["www.zhihu.com"]},"pipe_actions":{"allowed":["click","type","navigate","getText","eval"],"blocked":[]}}
EOF
cat > "${FAKE_CRATE_DIR}/target/debug/sgclaw" <<'EOF'
#!/usr/bin/env bash
set -euo pipefail
SCRIPT_DIR="$(cd -- "$(dirname -- "${BASH_SOURCE[0]}")" && pwd)"
grep -q '"eval"' "${SCRIPT_DIR}/resources/rules.json"
EOF
chmod +x "${FAKE_CRATE_DIR}/target/debug/sgclaw"
"${FAKE_CRATE_DIR}/tools/browser_runtime/sgclaw_browser_entry.sh"
grep -q '"eval"' "${FAKE_CRATE_DIR}/target/debug/resources/rules.json"