Ctrl K
ComunidadGuías…

scripts/butler-pre-release-smoke.sh

Rama main · réplica de lectura del repositorio original.

Archivo original ↗Preguntar a KiBot
#!/usr/bin/env bash
# Pre–manual-test gate: preflight + pytest (default) + project smoke scripts.
set -euo pipefail

ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
cd "$ROOT"
# 灵文 runtime 与 DemoPilot 分步冒烟;$1 保留兼容但不再覆盖灵文 runtime 步骤
RUNTIME_PROJECT="灵文1号"

# shellcheck source=scripts/lib/butler-source-env.sh
source "$ROOT/scripts/lib/butler-source-env.sh"
if [[ -f .env ]]; then
  butler_source_env "$ROOT/.env"
fi
export PYTHONPATH="${PYTHONPATH:-.}:."

echo "== 1/14 gateway preflight =="
bash scripts/butler-gateway-ops.sh preflight

echo ""
echo "== 1b/14 P3-H recall rollout verify =="
bash scripts/butler-p3h-rollout-verify.sh

echo ""
echo "== 2/14 pytest (exclude live_llm) =="
python3 -m pytest -q --tb=line

echo ""
echo "== 2b/14 builtin tool orthogonality =="
bash scripts/builtin-tool-orthogonality-lint.sh --warn-only
python3 -m pytest tests/test_tool_orthogonality_lint.py -q --tb=line

echo ""
echo "== 3/14 wechat memory smoke =="
bash scripts/butler-wechat-memory-smoke.sh

echo ""
echo "== 4/14 wechat gateway smoke =="
bash scripts/butler-wechat-gateway-smoke.sh

echo ""
echo "== 5/14 inbound media smoke =="
bash scripts/butler-inbound-media-smoke.sh

echo ""
echo "== 6/14 runtime smoke ($RUNTIME_PROJECT, default no push) =="
bash scripts/butler-runtime-smoke.sh "$RUNTIME_PROJECT"

echo ""
echo "== 7/14 lingwen lead smoke =="
bash scripts/butler-lingwen-lead-smoke.sh

echo ""
echo "== 8/14 dev delegate smoke =="
bash scripts/butler-dev-delegate-smoke.sh

echo ""
echo "== 9/14 DemoPilot project smoke =="
bash scripts/butler-demo-pilot-smoke.sh

echo ""
echo "== 10/14 B9 oracle Tier-1 release gate =="
bash scripts/butler-b9-release-gate.sh

echo ""
echo "== 11/14 network route policy =="
bash scripts/butler-web-search-route-sim.sh

echo ""
echo "== 12/14 network route strict handler (warn-only) =="
if bash scripts/butler-web-search-route-sim.sh --handler --strict-handler; then
  echo "  strict handler: ok"
else
  echo "  WARN: strict handler failed — review LLM tool routing before prod (daily follow-up uses soft --handler)"
fi

echo ""
echo "== 13/14 wechat owner sim --quick (warn-only) =="
if bash scripts/butler-wechat-owner-sim.sh --quick; then
  echo "  owner sim: ok"
else
  echo "  WARN: owner sim failed — review handler scenarios before prod (needs LLM key)"
fi

echo ""
echo "Pre-release smoke: ALL PASSED"
echo "Next: bash scripts/butler-gateway-ops.sh restart"
echo "Then: docs/guides/wechat-daily-smoke-checklist.md (真机)"