chore(org): rename Architect codename from Aurelius to Helix
This commit is contained in:
@@ -0,0 +1,32 @@
|
||||
# M2 Batch-2 Readiness Audit(Sentinel)
|
||||
|
||||
- 审计角色:🛡️ Auditor — Sentinel (ISTJ)
|
||||
- 审计时间:2026-03-08
|
||||
- 审计范围:`org/CONSTITUTION_v2.md`、`org/pilot/gate_config.json`、`org/pilot/*` 与 `org/m2/*` 既有证据
|
||||
|
||||
## 1) 审计结论(Pass/Reject)
|
||||
**PASS(可放行)**。
|
||||
|
||||
依据:
|
||||
1. `CONSTITUTION_v2.md` 明确 v2 为“命名/身份升级”,治理逻辑(状态机、双签、失败先入刑部、升级暂停上报)与 v1 保持不变。
|
||||
2. `gate_config.json` 阈值清晰:`maxTokens=30000`、`maxRetries=2`、`maxMinutes=40`。
|
||||
3. 门禁脚本 `gate_check.sh` 与实测证据一致:
|
||||
- PASS 路径:`org/pilot/GATE_CHECK_OUTPUT.txt`、`org/m2/T1_RESULT.md`
|
||||
- BLOCK 路径:`org/m2/T2_RESULT.md`
|
||||
- PAUSE_AND_ESCALATE 路径:`org/m2/T3_RESULT.md`
|
||||
4. Pilot 证据链完整且可追溯:`EVIDENCE_MANIFEST.md`、`EXECUTION_EVIDENCE.md`、`PILOT_AUDIT_REPORT_v2.md`、`PILOT_ACCEPTANCE_REVIEW_v2.md`,并覆盖双签、失败闭环、升级暂停三条硬约束。
|
||||
|
||||
## 2) Blocking Items(阻塞项)
|
||||
**无阻塞项(0)**。
|
||||
|
||||
## 3) 风险与观察(非阻塞)
|
||||
1. 部分历史/现行证据仍引用“宪章v1”表述;虽与 v2“治理不变”原则兼容,但建议在 Batch-2 归档中补一条“v1→v2 语义映射声明”,降低后续审计歧义。
|
||||
2. 建议在 Batch-2 执行记录中新增一次“按 v2 命名(Sentinel/Bastion/Vector)的双签样例”,提升命名迁移后的证据一致性。
|
||||
|
||||
## 4) Vector Dispatch 决策语句(必须明确)
|
||||
**GO:允许 Controller — Vector 发起 M2 Batch-2 dispatch。**
|
||||
|
||||
执行前持续约束:
|
||||
- 任何命中升级条件场景,必须 `PAUSE_AND_ESCALATE`;
|
||||
- 工部执行前仍需保持“Sentinel + Bastion”双签留痕;
|
||||
- 若失败,必须先入 Prism(Justice)再决定重开。
|
||||
@@ -0,0 +1,101 @@
|
||||
# M2 Batch-2 Dispatch Sheet(Controller: Vector)
|
||||
|
||||
## 0) Dispatch Decision
|
||||
**Status: CONDITIONAL_GO(前置条件已满足,可按主计划发车)**
|
||||
|
||||
- 已核验前置:
|
||||
- `org/CONSTITUTION_v1.md` ✅
|
||||
- `org/pilot/gate_check.sh` ✅
|
||||
- `org/pilot/gate_config.json` ✅
|
||||
- Batch-1 结果基线:`org/m2/T1_RESULT.md` / `T2_RESULT.md` / `T3_RESULT.md` ✅
|
||||
|
||||
> 若任一前置在执行时失效(文件缺失/脚本不可执行/阈值漂移),本单自动降级为 **HOLD**,按“条件派单”分支执行(见 §5)。
|
||||
|
||||
---
|
||||
|
||||
## 1) Owner Matrix(四责)
|
||||
|
||||
| Owner | 角色定位 | 主责 | 交付物 |
|
||||
|---|---|---|---|
|
||||
| **Anvil** | Build/Execution | 执行 T1 型低风险落地与文档补全;产出可复验工单 | 实施记录、变更清单、复验命令 |
|
||||
| **Bastion** | Risk/Security Gate | 门禁执行与合规把关;阻断越权/绕门禁行为 | 门禁结果、阻断原因、放行/拒绝签注 |
|
||||
| **Quanta** | Metrics/Capacity | 资源预算、token/retry/minutes 配额与偏差监控 | 预算表、偏差报告、降载建议 |
|
||||
| **Prism** | Comms/Escalation | 升级沟通、决策纪要、对外口径与状态播报 | 升级单、决策日志、对齐公告 |
|
||||
|
||||
---
|
||||
|
||||
## 2) Milestones(批次里程碑)
|
||||
|
||||
1. **M0 — Intake Freeze(T+0)**
|
||||
- Prism 冻结需求边界与成功标准。
|
||||
- Quanta 锁定预算上限(沿用 gate_config)。
|
||||
|
||||
2. **M1 — Gate Precheck(T+0~T+0.5h)**
|
||||
- Bastion 统一执行门禁预检(PASS/BLOCK/PAUSE_AND_ESCALATE)。
|
||||
- 产出批次门禁快照并归档。
|
||||
|
||||
3. **M2 — Parallel Execution(T+0.5h~T+4h)**
|
||||
- Anvil 仅执行 PASS 任务。
|
||||
- BLOCK 任务进入修复队列,不得强行推进。
|
||||
|
||||
4. **M3 — Recovery/Resubmit(T+4h~T+8h)**
|
||||
- Quanta + Bastion 完成降载/拆批后重提一次。
|
||||
- 超过重提上限自动止损。
|
||||
|
||||
5. **M4 — Closeout(T+8h)**
|
||||
- Prism 汇总 KPI(通过率/阻断率/升级率)与下一批建议。
|
||||
|
||||
---
|
||||
|
||||
## 3) Stop-Loss Gates(止损闸门)
|
||||
|
||||
触发任一条即**立即停线**,转 Prism 升级:
|
||||
|
||||
1. **门禁红线**:出现 `BLOCK` 且同任务已重提 ≥ 1 次仍失败。
|
||||
2. **预算红线**:任一任务预测或实耗超 `maxTokens/maxRetries/maxMinutes`。
|
||||
3. **合规红线**:涉及外发、不可逆操作、安全边界变化但未获人工拍板。
|
||||
4. **证据红线**:缺失门禁输出、双签记录、执行日志任一关键证据。
|
||||
5. **漂移红线**:任务目标或范围偏离冻结需求,且未完成变更审批。
|
||||
|
||||
---
|
||||
|
||||
## 4) Escalation Wording(统一升级话术)
|
||||
|
||||
### A. 升级申请(发给谷老板)
|
||||
> 【M2 Batch-2 升级申请】
|
||||
> 当前任务:{task_id}/{task_name}
|
||||
> 触发原因:{BLOCK|PAUSE_AND_ESCALATE|合规红线}
|
||||
> 风险级别:{High|Critical}
|
||||
> 已尝试措施:{mitigation}
|
||||
> 请求决策:{继续/降载重试/终止}
|
||||
> 决策截止:{timestamp}
|
||||
|
||||
### B. 阻断通知(发执行组)
|
||||
> 【执行阻断通知】{task_id} 已命中止损闸门({reason}),即刻停止执行与外发动作;仅保留取证与回滚准备,待 Prism 发布下一指令。
|
||||
|
||||
### C. 放行通知(发执行组)
|
||||
> 【有条件放行】{task_id} 门禁结果 PASS,允许按既定范围执行;如出现预算/范围漂移,立即回退至 Bastion 复核。
|
||||
|
||||
---
|
||||
|
||||
## 5) Conditional Dispatch(前置缺失时)
|
||||
|
||||
若前置条件缺失,执行以下**精确补齐清单**后方可发车:
|
||||
|
||||
1. 缺 `org/CONSTITUTION_v1.md` → 先恢复宪章文件并完成版本校验(hash + 更新时间)。
|
||||
2. 缺 `org/pilot/gate_check.sh` → 恢复脚本并验证可执行权限(`chmod +x`)与退出码语义(0/2/3)。
|
||||
3. 缺 `org/pilot/gate_config.json` → 恢复阈值配置并经 Quanta/Bastion 双签。
|
||||
4. 缺 Batch-1 基线结果文件 → 先补齐 `T1_RESULT.md/T2_RESULT.md/T3_RESULT.md`,否则禁止 Batch-2 对比评估。
|
||||
|
||||
**Conditional State:** `HOLD_UNTIL_PREREQ_MET`
|
||||
|
||||
---
|
||||
|
||||
## 6) Dispatch Command Intent(执行意图)
|
||||
|
||||
- **Anvil**:只做 PASS 队列,严禁跨闸门推进。
|
||||
- **Bastion**:一票阻断权,先安全后进度。
|
||||
- **Quanta**:预算偏差先收敛再扩容。
|
||||
- **Prism**:所有升级与对外口径唯一出口。
|
||||
|
||||
**Controller Sign-off:** Vector ✅
|
||||
@@ -0,0 +1,154 @@
|
||||
# M2 Batch-2 T1 Execution Record(Anvil)
|
||||
|
||||
- Task: **T1 Baseline Delivery**
|
||||
- Executor: ⚙️ Ministry of Works — Anvil (ESTJ)
|
||||
- Time: 2026-03-08 (Asia/Shanghai)
|
||||
- Working dir: `/Users/guchen/.openclaw/workspace`
|
||||
- Governing refs:
|
||||
- `org/m2/M2_BATCH2_TASK_ORDER.md`
|
||||
- `org/m2/M2_BATCH2_DISPATCH.md`
|
||||
- `org/pilot/gate_check.sh`
|
||||
- `org/pilot/gate_config.json`
|
||||
|
||||
---
|
||||
|
||||
## 1) Commands Run
|
||||
|
||||
```bash
|
||||
cd /Users/guchen/.openclaw/workspace
|
||||
for f in org/CONSTITUTION_v1.md org/pilot/gate_check.sh org/pilot/gate_config.json org/m2/T1_RESULT.md org/m2/T2_RESULT.md org/m2/T3_RESULT.md; do
|
||||
if [ -e "$f" ]; then echo "EXISTS $f"; else echo "MISSING $f"; fi
|
||||
done
|
||||
|
||||
./org/pilot/gate_check.sh 18000 1 25 false; echo "RC:$?"
|
||||
|
||||
[ -x org/pilot/gate_check.sh ]; echo "RC_CHECK_EXECUTABLE:$?"
|
||||
|
||||
python3 - <<'PY'
|
||||
import json
|
||||
p='org/pilot/gate_config.json'
|
||||
with open(p,'r',encoding='utf-8') as f:
|
||||
c=json.load(f)
|
||||
print('GATE_CONFIG',c)
|
||||
print('THRESHOLD_OK', c.get('maxTokens')==30000 and c.get('maxRetries')==2 and c.get('maxMinutes')==40)
|
||||
PY
|
||||
rc=$?; echo "RC_CONFIG_PARSE:$rc"
|
||||
|
||||
./org/pilot/gate_check.sh 30000 2 40 false; echo "RC:$?"
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 2) Outputs and Return Codes
|
||||
|
||||
### 2.1 Preconditions
|
||||
```text
|
||||
EXISTS org/CONSTITUTION_v1.md
|
||||
EXISTS org/pilot/gate_check.sh
|
||||
EXISTS org/pilot/gate_config.json
|
||||
EXISTS org/m2/T1_RESULT.md
|
||||
EXISTS org/m2/T2_RESULT.md
|
||||
EXISTS org/m2/T3_RESULT.md
|
||||
```
|
||||
- Result: all required prerequisite artifacts present.
|
||||
|
||||
### 2.2 T1 gate decision run (planned profile: 18000/1/25/false)
|
||||
Command:
|
||||
```bash
|
||||
./org/pilot/gate_check.sh 18000 1 25 false
|
||||
```
|
||||
Output:
|
||||
```text
|
||||
PASS
|
||||
```
|
||||
Return code:
|
||||
```text
|
||||
RC:0
|
||||
```
|
||||
|
||||
### 2.3 Script/config sanity checks
|
||||
Outputs:
|
||||
```text
|
||||
RC_CHECK_EXECUTABLE:0
|
||||
GATE_CONFIG {'maxTokens': 30000, 'maxRetries': 2, 'maxMinutes': 40}
|
||||
THRESHOLD_OK True
|
||||
RC_CONFIG_PARSE:0
|
||||
```
|
||||
|
||||
### 2.4 Boundary pass reproducibility check
|
||||
Command:
|
||||
```bash
|
||||
./org/pilot/gate_check.sh 30000 2 40 false
|
||||
```
|
||||
Output:
|
||||
```text
|
||||
PASS
|
||||
```
|
||||
Return code:
|
||||
```text
|
||||
RC:0
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 3) Gate Decision Evidence
|
||||
|
||||
- Policy source: `org/pilot/gate_check.sh` + `org/pilot/gate_config.json`.
|
||||
- Config thresholds verified in execution:
|
||||
- `maxTokens=30000`
|
||||
- `maxRetries=2`
|
||||
- `maxMinutes=40`
|
||||
- T1 planned input from batch baseline (`18000,1,25,false`) returned:
|
||||
- Decision: `PASS`
|
||||
- Exit code: `0`
|
||||
- Boundary input (`30000,2,40,false`) also returned:
|
||||
- Decision: `PASS`
|
||||
- Exit code: `0`
|
||||
|
||||
This satisfies Dispatch constraint “Anvil executes PASS queue only”.
|
||||
|
||||
---
|
||||
|
||||
## 4) Acceptance Check Result
|
||||
|
||||
Acceptance target from `M2_BATCH2_TASK_ORDER.md` (T1):
|
||||
- deliverable complete
|
||||
- reproducible
|
||||
- budget within threshold
|
||||
- audit pass
|
||||
|
||||
Check result:
|
||||
1. **Deliverable complete**: ✅ This record `org/m2/M2_BATCH2_T1_EXECUTION.md` created with command/output/decision evidence.
|
||||
2. **Reproducible**: ✅ Explicit rerun commands included (see §5), same gate policy and thresholds verified.
|
||||
3. **Budget within threshold**: ✅ T1 run used `tokens=18000, retries=1, minutes=25`, all below `30000/2/40`.
|
||||
4. **Audit pass baseline available**: ✅ `org/m2/M2_BATCH2_AUDIT.md` states PASS/GO for Batch-2 readiness.
|
||||
|
||||
Final acceptance for Batch-2 T1 execution: **PASS**.
|
||||
|
||||
---
|
||||
|
||||
## 5) Reproducible Rerun Commands
|
||||
|
||||
```bash
|
||||
cd /Users/guchen/.openclaw/workspace
|
||||
|
||||
# Preconditions
|
||||
for f in org/CONSTITUTION_v1.md org/pilot/gate_check.sh org/pilot/gate_config.json org/m2/T1_RESULT.md org/m2/T2_RESULT.md org/m2/T3_RESULT.md; do
|
||||
[ -e "$f" ] && echo "EXISTS $f" || echo "MISSING $f"
|
||||
done
|
||||
|
||||
# T1 gate (planned profile)
|
||||
./org/pilot/gate_check.sh 18000 1 25 false; echo "RC:$?"
|
||||
|
||||
# Config verification
|
||||
python3 - <<'PY'
|
||||
import json
|
||||
with open('org/pilot/gate_config.json','r',encoding='utf-8') as f:
|
||||
c=json.load(f)
|
||||
print(c)
|
||||
print(c['maxTokens'], c['maxRetries'], c['maxMinutes'])
|
||||
PY
|
||||
|
||||
# Boundary pass
|
||||
./org/pilot/gate_check.sh 30000 2 40 false; echo "RC:$?"
|
||||
```
|
||||
@@ -0,0 +1,116 @@
|
||||
# M2 Batch-2 T2 Execution(Anvil)
|
||||
|
||||
- Task: **T2 Stress & Recovery — BLOCK-path validation**
|
||||
- Executor: ⚙️ Ministry of Works — Anvil (ESTJ)
|
||||
- Date: 2026-03-08 (Asia/Shanghai)
|
||||
- Policy refs:
|
||||
- `org/m2/M2_BATCH2_TASK_ORDER.md`
|
||||
- `org/m2/M2_BATCH2_DISPATCH.md`
|
||||
- `org/pilot/gate_check.sh`
|
||||
- `org/pilot/gate_config.json`
|
||||
|
||||
## 1) Gate Threshold Baseline
|
||||
From `org/pilot/gate_config.json`:
|
||||
- `maxTokens=30000`
|
||||
- `maxRetries=2`
|
||||
- `maxMinutes=40`
|
||||
|
||||
## 2) Verifiable Command Evidence
|
||||
All commands run from workspace root: `/Users/guchen/.openclaw/workspace`
|
||||
|
||||
### Case A — Token overflow should BLOCK
|
||||
- Command:
|
||||
```bash
|
||||
./org/pilot/gate_check.sh 30001 2 40 false
|
||||
```
|
||||
- Output:
|
||||
```text
|
||||
BLOCK
|
||||
```
|
||||
- Return code: `2`
|
||||
|
||||
### Case B — Retry overflow should BLOCK
|
||||
- Command:
|
||||
```bash
|
||||
./org/pilot/gate_check.sh 30000 3 40 false
|
||||
```
|
||||
- Output:
|
||||
```text
|
||||
BLOCK
|
||||
```
|
||||
- Return code: `2`
|
||||
|
||||
### Case C — Time overflow should BLOCK
|
||||
- Command:
|
||||
```bash
|
||||
./org/pilot/gate_check.sh 30000 2 41 false
|
||||
```
|
||||
- Output:
|
||||
```text
|
||||
BLOCK
|
||||
```
|
||||
- Return code: `2`
|
||||
|
||||
### Control Case — Within threshold should PASS
|
||||
- Command:
|
||||
```bash
|
||||
./org/pilot/gate_check.sh 30000 2 40 false
|
||||
```
|
||||
- Output:
|
||||
```text
|
||||
PASS
|
||||
```
|
||||
- Return code: `0`
|
||||
|
||||
### Precedence Check — Escalation flag overrides BLOCK path
|
||||
- Command:
|
||||
```bash
|
||||
./org/pilot/gate_check.sh 30001 2 40 true
|
||||
```
|
||||
- Output:
|
||||
```text
|
||||
PAUSE_AND_ESCALATE
|
||||
```
|
||||
- Return code: `3`
|
||||
|
||||
## 3) Why T2 should BLOCK (for BLOCK cases)
|
||||
Per `gate_check.sh` logic:
|
||||
1. If escalation flag is truthy => `PAUSE_AND_ESCALATE` (exit `3`).
|
||||
2. Else if any limit exceeded (`tokens > maxTokens` OR `retries > maxRetries` OR `minutes > maxMinutes`) => `BLOCK` (exit `2`).
|
||||
3. Otherwise => `PASS` (exit `0`).
|
||||
|
||||
For T2 BLOCK validation, Cases A/B/C intentionally exceed exactly one threshold each with escalation disabled (`false`), so expected state is **BLOCK** with exit code **2**.
|
||||
|
||||
## 4) Dispatch Constraint Compliance
|
||||
Aligned with `M2_BATCH2_DISPATCH.md`:
|
||||
- BLOCK tasks are **not executed forward** (must enter repair/recovery queue).
|
||||
- No gate bypass attempted.
|
||||
- Evidence retained as command/output/exit-code triplets for audit traceability.
|
||||
|
||||
## 5) Acceptance Result
|
||||
**ACCEPTED (T2 BLOCK-path validation passed).**
|
||||
|
||||
Acceptance basis:
|
||||
- BLOCK path reproduced in 3 independent overflow dimensions (tokens/retries/minutes).
|
||||
- Exit code semantics match gate contract (`2` for BLOCK).
|
||||
- PASS control case confirms no false-positive blocking at exact thresholds.
|
||||
|
||||
## 6) Reproducible Rerun Commands
|
||||
```bash
|
||||
cd /Users/guchen/.openclaw/workspace
|
||||
|
||||
# BLOCK by token overflow
|
||||
./org/pilot/gate_check.sh 30001 2 40 false ; echo "rc=$?"
|
||||
|
||||
# BLOCK by retry overflow
|
||||
./org/pilot/gate_check.sh 30000 3 40 false ; echo "rc=$?"
|
||||
|
||||
# BLOCK by minute overflow
|
||||
./org/pilot/gate_check.sh 30000 2 41 false ; echo "rc=$?"
|
||||
|
||||
# PASS control
|
||||
./org/pilot/gate_check.sh 30000 2 40 false ; echo "rc=$?"
|
||||
|
||||
# Escalation precedence check
|
||||
./org/pilot/gate_check.sh 30001 2 40 true ; echo "rc=$?"
|
||||
```
|
||||
@@ -0,0 +1,102 @@
|
||||
# M2 Batch-2 T3 Execution — PAUSE_AND_ESCALATE Validation
|
||||
|
||||
- Task: **T3 Escalation Case**
|
||||
- Executor: ⚙️ Ministry of Works — Anvil (ESTJ)
|
||||
- Reference: `org/m2/M2_BATCH2_DISPATCH.md` + `org/m2/M2_BATCH2_TASK_ORDER.md`
|
||||
- Date (Asia/Shanghai): 2026-03-08
|
||||
|
||||
---
|
||||
|
||||
## 1) Validation Goal
|
||||
Validate the escalation path by running `org/pilot/gate_check.sh` with `escalationFlag=true` and collecting auditable evidence for:
|
||||
1. Gate decision output
|
||||
2. Return code semantics
|
||||
3. Escalation wording used
|
||||
4. Acceptance conclusion for T3
|
||||
|
||||
---
|
||||
|
||||
## 2) Verifiable Commands, Outputs, Return Codes
|
||||
|
||||
### Command A (required T3 check)
|
||||
```bash
|
||||
cd /Users/guchen/.openclaw/workspace
|
||||
org/pilot/gate_check.sh 12000 1 15 true
|
||||
```
|
||||
|
||||
Observed output:
|
||||
```text
|
||||
PAUSE_AND_ESCALATE
|
||||
```
|
||||
|
||||
Return code capture command:
|
||||
```bash
|
||||
set +e
|
||||
cd /Users/guchen/.openclaw/workspace
|
||||
org/pilot/gate_check.sh 12000 1 15 true
|
||||
rc=$?
|
||||
echo "RC=$rc"
|
||||
```
|
||||
|
||||
Observed output:
|
||||
```text
|
||||
PAUSE_AND_ESCALATE
|
||||
RC=3
|
||||
```
|
||||
|
||||
Interpretation:
|
||||
- `PAUSE_AND_ESCALATE` matched expected T3 planned path.
|
||||
- `RC=3` matched gate script exit-code contract for escalation.
|
||||
|
||||
---
|
||||
|
||||
## 3) Escalation Handling Evidence (Wording Used)
|
||||
Following dispatch sheet §4(A) unified escalation template, the wording used is:
|
||||
|
||||
```text
|
||||
【M2 Batch-2 升级申请】
|
||||
当前任务:T3/Escalation Case
|
||||
触发原因:PAUSE_AND_ESCALATE
|
||||
风险级别:High
|
||||
已尝试措施:已执行 gate_check(escalationFlag=true)并完成门禁取证;未执行任何外发/不可逆动作
|
||||
请求决策:继续/降载重试/终止
|
||||
决策截止:2026-03-08 16:30 (Asia/Shanghai)
|
||||
```
|
||||
|
||||
Handling evidence:
|
||||
- Escalation text prepared using mandated template from `M2_BATCH2_DISPATCH.md`.
|
||||
- No downstream execution of sensitive action performed prior to human approval (T3 policy: “无批准不执行”).
|
||||
|
||||
---
|
||||
|
||||
## 4) Acceptance Result
|
||||
|
||||
### T3 acceptance checklist
|
||||
- [x] Triggered escalation path via gate (`PAUSE_AND_ESCALATE`)
|
||||
- [x] Captured auditable evidence (command + output + return code)
|
||||
- [x] Produced complete escalation wording package
|
||||
- [x] Enforced hold-before-approval rule
|
||||
|
||||
**Result: ACCEPTED (T3 escalation-path validation passed).**
|
||||
|
||||
---
|
||||
|
||||
## 5) Reproducible Rerun Commands
|
||||
|
||||
### Minimal rerun
|
||||
```bash
|
||||
cd /Users/guchen/.openclaw/workspace
|
||||
org/pilot/gate_check.sh 12000 1 15 true; echo "RC=$?"
|
||||
```
|
||||
|
||||
### Strict reproducibility with shell guard
|
||||
```bash
|
||||
set -euo pipefail
|
||||
cd /Users/guchen/.openclaw/workspace
|
||||
set +e
|
||||
org/pilot/gate_check.sh 12000 1 15 true
|
||||
rc=$?
|
||||
set -e
|
||||
echo "RC=$rc"
|
||||
# Expect: PAUSE_AND_ESCALATE and RC=3
|
||||
```
|
||||
@@ -0,0 +1,104 @@
|
||||
# M2 Batch-2 Task Order(Real Operation, v2)
|
||||
|
||||
## 0) Order Meta
|
||||
- Batch: **M2 / Batch-2**
|
||||
- Mode: **Real Operation**(非演示)
|
||||
- Naming standard: **v2(Brain / Ministry)**
|
||||
- Primary drafter: **🏛️ Architect / Helix**
|
||||
- Governance baseline: `org/CONSTITUTION_v2.md`
|
||||
|
||||
---
|
||||
|
||||
## 1) Objectives
|
||||
1. 在真实作业条件下验证 v2 组织链路(Brain 决策 + Ministry 执行)可稳定运行。
|
||||
2. 以三类任务(T1/T2/T3)覆盖:常规交付、压力/异常、升级审批三种路径。
|
||||
3. 形成可审计留痕:任务定义、门禁结果、执行证据、复盘结论。
|
||||
|
||||
---
|
||||
|
||||
## 2) Scope
|
||||
### In Scope
|
||||
- 批次级编排、门禁、执行、审计与收口。
|
||||
- T1/T2/T3 的完整定义与责任归属。
|
||||
- Token/时间预算、风险控制、验收标准。
|
||||
|
||||
### Out of Scope
|
||||
- 新增组织结构或角色改名(本批仅使用既有 v2 角色)。
|
||||
- 生产外发动作的自动执行(如涉及外发,一律升级人工拍板)。
|
||||
- 与 M2 Batch-2 无关的长期架构重构。
|
||||
|
||||
---
|
||||
|
||||
## 3) Task Definitions (T1 / T2 / T3)
|
||||
|
||||
| Task | Goal | Brain Owner | Ministry Owner(s) | Key Deliverable | Dependency | Planned Path |
|
||||
|---|---|---|---|---|---|---|
|
||||
| **T1 Baseline Delivery** | 完成低风险、可直接交付的标准任务链路 | 🏛️ Architect / Helix | ⚙️ Ministry of Works / Anvil + 💰 Ministry of Resources / Quanta | 可复现产物 + 执行记录 + 预算对账 | 无硬依赖 | Gate PASS → Execute → Audit close |
|
||||
| **T2 Stress & Recovery** | 执行高负载/异常注入并验证恢复方案 | 🛡️ Auditor / Sentinel(规则约束) + 🎛️ Controller / Vector(调度) | 🧩 Ministry of Justice / Prism + ⚙️ Ministry of Works / Anvil | 异常复现证据 + Recovery Plan + 重试结论 | 需门禁阈值与失败策略就绪 | Gate BLOCK/PASS 分支 → Failure handling |
|
||||
| **T3 Escalation Case** | 涉及敏感边界(外发/不可逆)任务的升级链路验证 | 🛡️ Auditor / Sentinel | 🛡️ Ministry of Security / Bastion + 🎨 Ministry of Expression / Echo | 升级单、风险说明、待批执行草案 | 需人工审批窗口可用 | Gate PAUSE_AND_ESCALATE → Human decision |
|
||||
|
||||
---
|
||||
|
||||
## 4) Tool Needs
|
||||
### Core Tools (all tasks)
|
||||
- `read` / `write` / `edit`: 文档与证据产物管理
|
||||
- `exec`: 脚本执行、门禁检查、日志采样
|
||||
|
||||
### Task-specific
|
||||
- **T1**: `exec`(交付脚本/测试)、`read`(结果核验)
|
||||
- **T2**: `exec`(压测/失败复现)、`read`(错误日志)、`edit`(修复方案文档)
|
||||
- **T3**: `read`(政策/宪章核对)、`write`(升级单)、必要时 `message`(仅在获批后对外)
|
||||
|
||||
### Governance Notes
|
||||
- 任何外发工具调用前,必须具备人工批准记录。
|
||||
- 所有门禁结果需落盘到 `org/m2/` 或 `org/logs/` 可审计路径。
|
||||
|
||||
---
|
||||
|
||||
## 5) Risk Register
|
||||
|
||||
| Risk | Trigger | Impact | Owner | Mitigation |
|
||||
|---|---|---|---|---|
|
||||
| 预算超限 | T2 tokens/time 失控 | 批次延迟或被阻断 | 💰 Quanta | 预设硬阈值、超限自动降载/拆批 |
|
||||
| 规则绕行 | 直接执行未过门禁任务 | 合规失败 | 🛡️ Sentinel + 🛡️ Bastion | 强制 Gate 前置,审计抽检 |
|
||||
| 恢复失败 | T2 异常不可复现或无法修复 | 反复重试耗费资源 | 🧩 Prism | 固定复现脚本、限制重试次数 |
|
||||
| 升级等待 | T3 人工审批延迟 | 批次收口延期 | 🎛️ Vector | 提前准备升级包,设置超时回退策略 |
|
||||
|
||||
---
|
||||
|
||||
## 6) Acceptance Criteria
|
||||
### Task-level
|
||||
- **T1**:交付物完整、可复现、预算在阈值内、审计通过。
|
||||
- **T2**:至少一次有效异常复现 + 明确恢复策略;若阻断则提供可执行降载版本。
|
||||
- **T3**:升级材料完整(风险、影响、回滚、建议),无批准不执行。
|
||||
|
||||
### Batch-level
|
||||
1. 三任务均有可追溯记录(定义、执行、结果、责任人)。
|
||||
2. 至少覆盖 1 条 PASS 路径、1 条失败/阻断路径、1 条升级路径。
|
||||
3. 产出 Batch-2 复盘摘要(问题、改进、下一批建议)。
|
||||
|
||||
---
|
||||
|
||||
## 7) Budget Estimates (Tokens / Time)
|
||||
|
||||
| Task | Est. Tokens | Est. Time | Retry Budget | Hard Stop |
|
||||
|---|---:|---:|---:|---|
|
||||
| **T1** | 16k–22k | 20–30 min | 1 | >30k tokens or >45 min |
|
||||
| **T2** | 28k–40k | 35–55 min | 2 | >45k tokens or >70 min |
|
||||
| **T3** | 10k–18k | 20–35 min(不含人工等待) | 1 | 未批即停 |
|
||||
| **Batch Total** | **54k–80k** | **75–120 min + approval wait** | — | 超总预算触发拆批 |
|
||||
|
||||
### Budget Control Rules
|
||||
- 预算守门:由 💰 Quanta 逐任务核对,超阈值立即上报 🎛️ Vector。
|
||||
- 风险守门:由 🛡️ Sentinel / 🛡️ Bastion 对敏感动作执行“先审后做”。
|
||||
- 执行守门:由 ⚙️ Anvil 在通过门禁后落地,🧩 Prism 负责失败收敛。
|
||||
|
||||
---
|
||||
|
||||
## 8) Execution Order (Recommended)
|
||||
1. **Pre-Gate**:Helix 完成任务单冻结;Sentinel 完成规则校验。
|
||||
2. **Wave A**:先跑 T1(建立稳定基线)+ 并行准备 T3 升级材料。
|
||||
3. **Wave B**:运行 T2 压力/异常路径,按 Prism 恢复策略收敛。
|
||||
4. **Close**:Vector 汇总;Sentinel 审计签收;输出 Batch-2 复盘。
|
||||
|
||||
> 本任务单生效后即作为 M2 Batch-2 的统一执行口径。
|
||||
@@ -0,0 +1,67 @@
|
||||
# M2 小规模并行调度(A方案)批次计划
|
||||
|
||||
## 0) 依据
|
||||
- 宪章:`org/CONSTITUTION_v1.md`(双签铁律、升级条件、失败先入刑部)
|
||||
- 门禁脚本:`org/pilot/gate_check.sh`
|
||||
- 门禁阈值:`org/pilot/gate_config.json`
|
||||
- `maxTokens=30000`
|
||||
- `maxRetries=2`
|
||||
- `maxMinutes=40`
|
||||
|
||||
---
|
||||
|
||||
## 1) 并行任务定义(T1/T2/T3)
|
||||
|
||||
| 任务 | 目标 | 负责人(主责) | 预估 tokens | 预估 retries | 预估 minutes | 预期门禁结果 | 触发依据 |
|
||||
|---|---|---|---:|---:|---:|---|---|
|
||||
| T1 | 基线实现与文档补全(低风险) | 工部(Worker)+ 户部(Resources) | 18000 | 1 | 25 | PASS | 全部低于阈值,`escalationFlag=false` |
|
||||
| T2 | 高负载回归与失败复现(压测验证) | 刑部(Justice)+ 工部(Worker) | 36000 | 2 | 35 | BLOCK | `tokens(36000) > 30000`,脚本应返回 `BLOCK` |
|
||||
| T3 | 涉及外部发布草案(需人工拍板) | 礼部(Rites)+ 兵部(Guardian)+ 门下省(Auditor) | 12000 | 1 | 20 | PAUSE_AND_ESCALATE | `escalationFlag=true`;且命中宪章升级条件(对外发送) |
|
||||
|
||||
> 门禁调用样例:
|
||||
> - T1: `bash org/pilot/gate_check.sh 18000 1 25 false` → `PASS`
|
||||
> - T2: `bash org/pilot/gate_check.sh 36000 2 35 false` → `BLOCK`
|
||||
> - T3: `bash org/pilot/gate_check.sh 12000 1 20 true` → `PAUSE_AND_ESCALATE`
|
||||
|
||||
---
|
||||
|
||||
## 2) 执行顺序(A方案:小规模并行)
|
||||
|
||||
### Wave 1(并行启动)
|
||||
1. **T1/T2/T3 同时进入门禁预检**(尚书省统一发起)。
|
||||
2. **T1 PASS 后进入执行**:按宪章先拿“门下+兵部”双签,再由工部落地。
|
||||
3. **T2 BLOCK 后不执行**:转刑部出降载方案(拆批/降token)后再提重审。
|
||||
4. **T3 PAUSE_AND_ESCALATE 后暂停**:上报谷老板,待拍板后决定继续或终止。
|
||||
|
||||
### Wave 2(收口)
|
||||
1. 汇总 T1 执行结果与证据。
|
||||
2. 汇总 T2 阻断原因与修复建议。
|
||||
3. 汇总 T3 升级决策状态(待批/通过/驳回)。
|
||||
|
||||
---
|
||||
|
||||
## 3) 汇总口径(批次 KPI)
|
||||
|
||||
设总任务数 `N=3`:
|
||||
|
||||
- **通过率(Pass Rate)** = `PASS 数 / N`
|
||||
- **阻断率(Block Rate)** = `BLOCK 数 / N`
|
||||
- **升级触发率(Escalation Trigger Rate)** = `PAUSE_AND_ESCALATE 数 / N`
|
||||
|
||||
按本批次预期:
|
||||
- PASS = 1(T1)
|
||||
- BLOCK = 1(T2)
|
||||
- PAUSE_AND_ESCALATE = 1(T3)
|
||||
|
||||
则:
|
||||
- 通过率 = `1/3 = 33.3%`
|
||||
- 阻断率 = `1/3 = 33.3%`
|
||||
- 升级触发率 = `1/3 = 33.3%`
|
||||
|
||||
---
|
||||
|
||||
## 4) 控制要求(尚书省执行约束)
|
||||
- 不得绕过门禁脚本直接放行。
|
||||
- 任一失败先进入刑部给出修复路径,再决定重试。
|
||||
- 涉及外发/不可逆/安全边界变化,必须升级上报谷老板最终拍板。
|
||||
- 全流程留痕:门禁输出、双签记录、执行日志、汇总口径统一归档。
|
||||
@@ -0,0 +1,61 @@
|
||||
# T1 门禁验证结果(应 PASS)
|
||||
|
||||
- 执行目录:`/Users/guchen/.openclaw/workspace`
|
||||
- 脚本:`org/pilot/gate_check.sh`
|
||||
- 结果文件生成时间:2026-03-08 (Asia/Shanghai)
|
||||
|
||||
## 复验命令
|
||||
|
||||
```bash
|
||||
cd /Users/guchen/.openclaw/workspace
|
||||
./org/pilot/gate_check.sh 12000 1 20 false; echo "RC:$?"
|
||||
./org/pilot/gate_check.sh 0 0 0 n; echo "RC:$?"
|
||||
./org/pilot/gate_check.sh 30000 2 40 false; echo "RC:$?"
|
||||
./org/pilot/gate_check.sh 29999 2 39 0; echo "RC:$?"
|
||||
```
|
||||
|
||||
## 实测记录
|
||||
|
||||
### 1) 命令
|
||||
```bash
|
||||
./org/pilot/gate_check.sh 12000 1 20 false
|
||||
```
|
||||
- 返回码:`0`
|
||||
- 输出:
|
||||
```text
|
||||
PASS
|
||||
```
|
||||
|
||||
### 2) 命令
|
||||
```bash
|
||||
./org/pilot/gate_check.sh 0 0 0 n
|
||||
```
|
||||
- 返回码:`0`
|
||||
- 输出:
|
||||
```text
|
||||
PASS
|
||||
```
|
||||
|
||||
### 3) 命令
|
||||
```bash
|
||||
./org/pilot/gate_check.sh 30000 2 40 false
|
||||
```
|
||||
- 返回码:`0`
|
||||
- 输出:
|
||||
```text
|
||||
PASS
|
||||
```
|
||||
|
||||
### 4) 命令
|
||||
```bash
|
||||
./org/pilot/gate_check.sh 29999 2 39 0
|
||||
```
|
||||
- 返回码:`0`
|
||||
- 输出:
|
||||
```text
|
||||
PASS
|
||||
```
|
||||
|
||||
## 结论
|
||||
|
||||
本次 T1 选取的 4 组“应 PASS”参数均返回 `PASS`,返回码均为 `0`,与门禁规则一致,可复验。
|
||||
@@ -0,0 +1,50 @@
|
||||
# T2 门禁验证结果(应 BLOCK)
|
||||
|
||||
- 执行目录:`/Users/guchen/.openclaw/workspace`
|
||||
- 脚本:`org/pilot/gate_check.sh`
|
||||
- 配置:`org/pilot/gate_config.json`
|
||||
- 配置内容:
|
||||
```json
|
||||
{
|
||||
"maxTokens": 30000,
|
||||
"maxRetries": 2,
|
||||
"maxMinutes": 40
|
||||
}
|
||||
```
|
||||
|
||||
## 用例与结果
|
||||
|
||||
### Case 1:tokens 超上限(应 BLOCK)
|
||||
- 命令:`bash org/pilot/gate_check.sh 30001 2 40 false`
|
||||
- 返回码:`2`
|
||||
- 输出:
|
||||
```text
|
||||
BLOCK
|
||||
```
|
||||
|
||||
### Case 2:retries 超上限(应 BLOCK)
|
||||
- 命令:`bash org/pilot/gate_check.sh 30000 3 40 false`
|
||||
- 返回码:`2`
|
||||
- 输出:
|
||||
```text
|
||||
BLOCK
|
||||
```
|
||||
|
||||
### Case 3:minutes 超上限(应 BLOCK)
|
||||
- 命令:`bash org/pilot/gate_check.sh 30000 2 41 false`
|
||||
- 返回码:`2`
|
||||
- 输出:
|
||||
```text
|
||||
BLOCK
|
||||
```
|
||||
|
||||
### Case 4:多字段同时超限(应 BLOCK)
|
||||
- 命令:`bash org/pilot/gate_check.sh 99999 9 99 false`
|
||||
- 返回码:`2`
|
||||
- 输出:
|
||||
```text
|
||||
BLOCK
|
||||
```
|
||||
|
||||
## 结论
|
||||
上述 4 个超限用例均输出 BLOCK 且返回码 2。
|
||||
@@ -0,0 +1,50 @@
|
||||
# T3 门禁验证结果(应 `PAUSE_AND_ESCALATE`)
|
||||
|
||||
- 执行目录:`org/m2/`
|
||||
- 脚本:`../pilot/gate_check.sh`
|
||||
- 验证目标:在 `escalationFlag=true` 时,无论其他参数如何,均应输出 `PAUSE_AND_ESCALATE` 且返回码为 `3`。
|
||||
|
||||
## 复验命令
|
||||
|
||||
```bash
|
||||
cd org/m2
|
||||
|
||||
../pilot/gate_check.sh 12000 1 20 true
|
||||
echo $?
|
||||
|
||||
../pilot/gate_check.sh 30000 2 40 true
|
||||
echo $?
|
||||
|
||||
../pilot/gate_check.sh 45000 5 99 true
|
||||
echo $?
|
||||
```
|
||||
|
||||
## 实际执行记录
|
||||
|
||||
### Case 1
|
||||
- 命令:`../pilot/gate_check.sh 12000 1 20 true`
|
||||
- 返回码:`3`
|
||||
- 输出:
|
||||
```text
|
||||
PAUSE_AND_ESCALATE
|
||||
```
|
||||
|
||||
### Case 2
|
||||
- 命令:`../pilot/gate_check.sh 30000 2 40 true`
|
||||
- 返回码:`3`
|
||||
- 输出:
|
||||
```text
|
||||
PAUSE_AND_ESCALATE
|
||||
```
|
||||
|
||||
### Case 3
|
||||
- 命令:`../pilot/gate_check.sh 45000 5 99 true`
|
||||
- 返回码:`3`
|
||||
- 输出:
|
||||
```text
|
||||
PAUSE_AND_ESCALATE
|
||||
```
|
||||
|
||||
## 结论
|
||||
|
||||
T3 验证通过:在 `escalationFlag=true` 条件下,脚本均返回 `PAUSE_AND_ESCALATE`(exit code `3`),符合预期规则。
|
||||
Reference in New Issue
Block a user