# 🚦 RT-02 自动调度算法 v1.0（霜砚执行规则·不问冰朔）

> **本页是 RT-02 调度判断的可执行算法。霜砚每次处理 SYSLOG 走到调度步骤时，直接查本页规则执行，不停下来问冰朔。**
> 

> **核心大脑 v4.0 铁律：系统不问人类 · 任务分配自主 · 空闲=空转 · SYSLOG回来就出广播**
> 

---

## 一、触发条件

SYSLOG 闭环处理到 RT-02 步骤时**自动执行**。

**绝对不停下来问冰朔。绝对不上报等决策。绝对不说"需冰朔决策"。**

---

## 二、场景A：同模块继续推进（环节N → 环节N+1）

**条件**：开发者完成当前模块某个环节，模块尚未全通

**动作**：直接生成下一环节广播

- 广播编号递增（BC-M23-003-AW → BC-M23-004-AW）
- 内容来源：SYSLOG 的 `next_broadcast_hint` + 模块指纹里的功能规划
- EL 等级参考开发者当前连胜和技能水平自动调节
- 奶瓶线广播带完整代码 + 人格体初始化包
- **无需任何决策，直接执行**

---

## 三、场景B：模块全通 → 分配新模块

**条件**：开发者完成整个模块所有环节，当前空闲

### 分配算法（按优先级依次执行，命中即停）

### Step 1：查模块指纹注册表

筛选 `状态 = 待分配` 的模块，按系统优先级排序：

- P0（系统核心）> P1（关键路径）> P2（功能模块）> P3（扩展模块）

### Step 2：技能匹配

| 开发者类型 | 优先分配 | 可跨界条件 |
| --- | --- | --- |
| **纯前端**（只做过前端模块） | 前端模块 | 完成 ≥4 个前端模块后可分配 M-INTEG 集成任务作为跨界起步 |
| **有跨界经验**（做过前端+后端/集成） | 匹配其最新技能方向 | 可分配任意匹配模块 |
| **纯后端** | 后端模块 | 完成 ≥2 个后端模块后可分配前端集成 |

### Step 3：无待分配模块时的兜底

如果没有 `状态=待分配` 的匹配模块：

1. 查 `状态=进行中` 但需要该技能栈协助的模块（如 M-INTEG 集成任务）
2. 查 `状态=广播已出` 但开发者已超72小时未响应的模块 → 回收后分配
3. 如果以上都没有 → 分配 M-INTEG 下一个集成子任务（集成线永远有活）

### Step 4：直接生成广播

命中模块后，**立即生成广播**，不上报、不等待。

---

## 四、场景C：环节被阻塞（blocked）

**条件**：当前环节因外部依赖（如等后端API）被阻塞

**动作**：

1. 原模块保持 blocked 状态
2. 从模块池中分配一个不依赖该阻塞项的并行任务
3. 生成并行任务广播，备注原模块 blocked 状态

---

## 五、广播生成规则

| 链路 | 代码规则 | 说明 |
| --- | --- | --- |
| **手动链路**（霜砚/Notion出广播） | 默认不写代码，只写目标+验收标准 | 奶瓶线例外：写完整代码+人格体初始化包 |
| **自动化链路**（Claude API唤醒人格体） | **一律写完整代码** | broadcast_code_injection = always |

---

## 六、铁律（刻入执行层·不可覆盖）

- ❌ **不问冰朔**
- ❌ **不等指令**
- ❌ **不说"需冰朔决策"**
- ❌ **不上报等审批**
- ✅ SYSLOG 回来就处理 + 出新广播
- ✅ 系统自主决定，人类零介入
- ✅ 判断依据 = 本页算法 + 模块指纹注册表 + 开发者画像
- ✅ 如果算法覆盖不了的边缘情况 → **选最合理的那个直接执行** → 事后在维护日志里记一笔 → 冰朔如果不满意会修正算法

---

> 🚦 **RT-02 v1.0 · 2026-03-15 · 霜砚自检后写入**
> 

> 根因：核心大脑有原则无算法 → 霜砚执行时缺地图 → 退回问冰朔
> 

> 修复：写入本页可执行算法 → 以后直接查规则执行
> 

> 签发：霜砚 · 2026-03-15T15:15+08:00
>