WREMOTE1 规划远端收口和正式模板测试
这个提交包含在:
@@ -13,11 +13,10 @@ usage() {
|
||||
cat <<'EOF'
|
||||
Usage:
|
||||
bash scripts/qa/run-wecom-test-account-final-closeout.sh --remote
|
||||
WTCLOSE2_EXECUTION_MODE=remote bash scripts/qa/run-wecom-test-account-final-closeout.sh
|
||||
|
||||
WTCLOSE2 must run on the deployment server because Enterprise WeChat API access is
|
||||
restricted by trusted IP. Local execution is intentionally blocked unless
|
||||
WTCLOSE2_ALLOW_LOCAL_RUN=1 is set for script development only.
|
||||
restricted by trusted IP. Local execution is intentionally blocked; use bash -n
|
||||
for syntax/static checks.
|
||||
EOF
|
||||
}
|
||||
|
||||
@@ -38,7 +37,7 @@ else
|
||||
compose_cmd=(docker-compose)
|
||||
fi
|
||||
"${compose_cmd[@]}" -f "$COMPOSE_FILE" --env-file "$REMOTE_ENV_FILE" exec -T server sh -lc \
|
||||
"cd /app && LIVE_SMOKE_BASE_URL='$LIVE_SMOKE_BASE_URL' WTCLOSE2_EXECUTION_MODE=remote bash scripts/qa/run-wecom-test-account-final-closeout.sh"
|
||||
"cd /app && LIVE_SMOKE_BASE_URL='$LIVE_SMOKE_BASE_URL' WTCLOSE2_EXECUTION_MODE=remote WTCLOSE2_REMOTE_CONTEXT=deployment-server bash scripts/qa/run-wecom-test-account-final-closeout.sh"
|
||||
REMOTE
|
||||
}
|
||||
|
||||
@@ -60,7 +59,7 @@ case "${1:-}" in
|
||||
;;
|
||||
esac
|
||||
|
||||
if [[ "${WTCLOSE2_EXECUTION_MODE:-}" != "remote" && "${WTCLOSE2_ALLOW_LOCAL_RUN:-0}" != "1" ]]; then
|
||||
if [[ "${WTCLOSE2_EXECUTION_MODE:-}" != "remote" || "${WTCLOSE2_REMOTE_CONTEXT:-}" != "deployment-server" ]]; then
|
||||
printf '[wtclose2][ERROR] Enterprise WeChat API checks must run on the deployment server trusted IP. Use --remote.\n' >&2
|
||||
usage >&2
|
||||
exit 2
|
||||
@@ -175,6 +174,8 @@ NODE
|
||||
run_wauto1() {
|
||||
run_finding_step "wauto1-evidence" env \
|
||||
WAUTO1_REPORT_DIR="$REPORT_DIR/wecom-controlled-trial-evidence" \
|
||||
WAUTO1_EXECUTION_MODE=remote \
|
||||
WAUTO1_REMOTE_CONTEXT=deployment-server \
|
||||
LIVE_SMOKE_BASE_URL="$PUBLIC_BASE_URL" \
|
||||
bash "$ROOT_DIR/scripts/qa/collect-wecom-controlled-trial-evidence.sh"
|
||||
}
|
||||
@@ -182,6 +183,8 @@ run_wauto1() {
|
||||
run_wfullsmoke1() {
|
||||
run_finding_step "wfullsmoke1-no-public-writes" env \
|
||||
WFULLSMOKE_REPORT_DIR="$REPORT_DIR/three-day-full-goal-smoke" \
|
||||
WFULLSMOKE_EXECUTION_MODE=remote \
|
||||
WFULLSMOKE_REMOTE_CONTEXT=deployment-server \
|
||||
WFULLSMOKE_ALLOW_PUBLIC_WRITES=0 \
|
||||
LIVE_SMOKE_BASE_URL="$PUBLIC_BASE_URL" \
|
||||
bash "$ROOT_DIR/scripts/qa/run-three-day-full-goal-smoke.sh"
|
||||
@@ -312,9 +315,9 @@ const manualGates = [
|
||||
evidence: "三天打卡、请假/补卡、详情后审批和 OA 历史查看需随最终验收确认",
|
||||
},
|
||||
{
|
||||
id: "WEXT1-LIVE",
|
||||
id: "WEXT1-FORMAL",
|
||||
status: "PENDING_USER_APPROVAL",
|
||||
evidence: "外出/加班 dry-run 通过后仍需单独问答批准 live 写入",
|
||||
evidence: "远端收口可解释通过后仍需单独问答批准 SMOKE002 人工提交正式模板外出/加班测试单;系统只读校验",
|
||||
},
|
||||
{
|
||||
id: "WREAL1",
|
||||
@@ -368,14 +371,14 @@ const summary = {
|
||||
},
|
||||
nextQuestions: {
|
||||
closeout: [
|
||||
"A:接受测试号收口,进入 WEXT1-LIVE 问答。",
|
||||
"A:接受测试号收口,进入 WEXT1-FORMAL 正式模板人工提交问答。",
|
||||
"B:接受 PASS_WITH_FINDINGS,但先处理指定 finding。",
|
||||
"C:暂停,不进入 live 或真实试用。",
|
||||
"C:暂停,不进入正式模板外出/加班测试或真实试用。",
|
||||
],
|
||||
wext1Live: [
|
||||
"A:批准一次 live 创建外出+加班 OA-POC 样件,保留审计。",
|
||||
"B:只保留 dry-run,不创建样件。",
|
||||
"C:外出/加班移出 V1。",
|
||||
wext1Formal: [
|
||||
"A:批准 SMOKE002 在正式模板提交外出+加班低风险测试单,SMOKE101 先看详情再审批,系统只读校验并保留审计。",
|
||||
"B:只测请假/补卡/打卡,不提交外出/加班正式模板测试单。",
|
||||
"C:暂停,先检查企微正式模板配置。",
|
||||
],
|
||||
wreal1: [
|
||||
"A:1 名真实员工 + 1 名审批人/管理员观察。",
|
||||
|
||||
在新工单中引用
屏蔽一个用户