feat(ship): clarify delivery stop semantics
This commit is contained in:
@@ -10,7 +10,13 @@ import sys
|
||||
from pathlib import Path
|
||||
from typing import Any
|
||||
|
||||
from ship_lib import ensure_stage_layout, load_yaml, record_stage_event, stage_for_step
|
||||
from ship_lib import (
|
||||
STOP_AT_STATE,
|
||||
ensure_stage_layout,
|
||||
load_yaml,
|
||||
record_stage_event,
|
||||
stage_for_step,
|
||||
)
|
||||
|
||||
SPEC_PLACEHOLDERS = (
|
||||
"<用户可见的目标",
|
||||
@@ -26,12 +32,6 @@ TASK_PLACEHOLDERS = (
|
||||
FAULT_PLACEHOLDER = "<没有故障时删除"
|
||||
DONE_TASK = frozenset({"verified", "merged", "done"})
|
||||
READY_DEP = frozenset({"verified", "merged", "done"})
|
||||
STOP_AT_STATE = {
|
||||
"verified": "verified",
|
||||
"review_ready": "pr_opened",
|
||||
"validation_ready": "deployed",
|
||||
"released": "deployed",
|
||||
}
|
||||
DELIVERY_STEPS: tuple[tuple[str, str, str], ...] = (
|
||||
("verified", "verify", "tester"),
|
||||
("pr_opened", "open_pr", "delivery-loop"),
|
||||
@@ -173,6 +173,11 @@ def _next_delivery(
|
||||
nxt = DELIVERY_STEPS[start]
|
||||
state, step, skill = nxt
|
||||
summary = f"派 worker 把 delivery.state 推进到 {state},加载 {skill}"
|
||||
if step == "verify":
|
||||
summary = (
|
||||
"派 tester worker 做开发阶段验证:执行单元测试、新增功能集成测试和静态检查;"
|
||||
"不执行合并后的完整 tester 回归"
|
||||
)
|
||||
if step == "regress":
|
||||
summary = (
|
||||
"派 tester worker 做合并后的完整回归:先发现父仓库和子项目的所有 tester "
|
||||
@@ -323,7 +328,10 @@ def _decide_short(
|
||||
actor="manager",
|
||||
step="ask_user",
|
||||
status="ask_user",
|
||||
summary="stopAt 未配置,主会话向用户确认 verified / review_ready / validation_ready / released",
|
||||
summary=(
|
||||
"stopAt 未配置,主会话向用户确认 develop_verified / review_ready / "
|
||||
"release_ready / released / deployed"
|
||||
),
|
||||
)
|
||||
if state == "change_ready" and _needs_hunt(spec_md) and not _has_change_commit(current):
|
||||
last = _manager(current).get("lastStep")
|
||||
|
||||
Reference in New Issue
Block a user