← ClaudeAtlas

verify-second-opinionlisted

Stage ④ verify sub-workflow — 跨模型第二意见 (cross-AI peer review), fired only when this release-in-progress touched the ORCHESTRATION SURFACE. schema_version: harnessed.workflow.v3 with disciplines_applied (6 default) + tools_available (codex) + 1 phase (gate ref requires_second_opinion, mechanically derived). Triggered by slash command `/verify-second-opinion` after `harnessed setup`.
easyinplay/harnessed · ★ 2 · AI & Automation · score 71
Install: claude install-skill easyinplay/harnessed
# verify-second-opinion workflow (v3) ## Overview 1-phase sub-workflow — 编排契约改动时的跨模型第二意见 (Phase 54 T2)。 | phase | id | upstream | model | capability | gate | | ----- | -- | -------- | ----- | ---------- | ---- | | 1 | `01-second-opinion` | gstack | sonnet | `{{ capabilities.codex.cmd }}` | `judgments.stage-routing.verify-second-opinion-orchestration.fires` | 判据不是交给模型的判断题。`harnessed facts` 把 `git diff --name-only <last release tag>` 与 ORCHESTRATION SURFACE (judgments / capabilities / 事实 schema / resolver / exprBuilder / ledger / disciplines / 任一 workflows SKILL.md) 求交集,机械得出 `requires_second_opinion`。 基准是**上一个 release tag**,不是 `merge-base origin/main` —— 后者在 commit-即-push-main 的纪律下塌缩成 HEAD,只看得见未提交改动,会漏掉多-commit milestone 的早期 commit。 算不出来 (无 tag / 无 git / diff 失败) 时取 `false`,并在每轮 `<workflow-state>` 断点打出 `SECOND-OPINION: 判据不可用(<原因>)`。不乱 fire,且不静默。 ## Capability refs Sister `workflows/capabilities.yaml` entries: - `codex` — 第二意见 / cross-AI peer review via codex (impl: gstack, cmd: /codex) ## Gate ref Sister `workflows/judgments/stage-routing.yaml`: - `verify-second-opinion-orchestration.fires` — `phase.stage == 'verify' and requires_second_opinion == true` ## Routing rules - ✅ **触发**: 本次改动触及编排契约本身 (judgments / capabilities.yaml / phaseFactContext / facts.ts / judgmentResolver / exprBuilder / ledger.ts / disciplines / 任一 SKILL.md) - ❌ **跳过**: 纯 installer / 文档 / 测试 / 依赖 bump —— 改这些不会改变引擎的决策方式 **交付物即证据。** 本 sub fire 了就必须交 `second-opinion.md`;不交则 `checkpoint complete` f