合并(验收档分级与条目限长批·用户令): 验证与清单体系整改阶段3+4收口——验收档三档申报与审计深度分级落test-conventions §8.3/§8.7+doc-conventions §12.1条目限长双判据+pipeline_gate限长与验收档C4机检+req-card/iter两技能随动+待办存量9条压缩+整改条目删除+盘点报告退役+ci_watch红回执缺陷登记; 负证三件各自触发红; pipeline_gate PASS; --docs全绿; 合回后post-merge钩子自动跑CI, 回执后台挂ci_watch
ci / gates (push) Successful in 34s
ci / gates (push) Successful in 34s
This commit is contained in:
commit
4b79dfa3ea
6 files changed
+93
-101
No files matched your search
@@ -155,6 +155,8 @@
|
||||
**状态**:按状态机取词。
|
||||
```
|
||||
|
||||
**条目正文限长(2026-11-04 立)**:正文四属性只写现行状态与证据指针;过程叙事(逐轮裁定追记、「某日用户裁…」式沿革叙述、设计讨论过程复述)禁入正文——沿革与裁定史由 git 提交信息承载(第 10 节同源)。长度硬上限双判据:正文(四属性全部内容,不含标题与空行)≤12 行,且去空白字符合计 ≤700 字;任一超限即须压缩,由流水线闸机检。行数判据抓清单行蔓延,字数判据抓单行堆砌,两条并用缺一不可(实证:单行堆砌型超长条目一行可塞 1500 字,只限行数拦不住)。压缩方向=枚举与裁定细节迁 owner 文档或过程件(关联文档清单指过去),正文只留现行状态+证据指针+缺口。
|
||||
|
||||
`改动面` 四档的划线判据(按被改对象的路径归属,与闸的分域同口径):
|
||||
|
||||
| 档 | 覆盖范围 |
|
||||
|
||||
@@ -97,6 +97,8 @@
|
||||
- **反向**:diff 里每个行为改动至少一行;没有对应行的改动,必须写明「非行为改动」或「由第 X 行覆盖」。
|
||||
- **测试侧**:新增或改写的每条断言至少挂一行;挂不上的孤儿断言删掉或补挂到需求点。
|
||||
|
||||
**验收档申报(2026-11-04 立,自 2026-11-05 起对文件名日期不早于该日的需求卡片生效;旧卡不回头改)**:每张需求卡片在头部信息区(与设计事实源声明同区)申报一个验收档,三档:高/中/低。判据=失败代价单维——这条改动做错了,后果随存档或结算传播的(存档写读与迁移、RNG 流、战斗结算公式与乘区、经济入账、数值表结构校验)=高;后果玩家可见但不损持久状态的(常规玩法逻辑、门控、交互逻辑、呈现数据面)=中;后果即看即知且无状态残留的(文案、纯呈现样式、布局微调)=低。一张卡触多档按最高档申报;申报由写卡段落笔,用户批卡(U0)时确认或改判。档位只调节 §8.7 审计深度——闸机与 CI 的域划分、选闸算法、全量强制档一概不因档位变化,真实入口、判据绑定面、禁削弱等验收闭合判据全部照旧。未申报档位的卡一律按高档全量审计。机检=`tools/pipeline_gate.py` 判据 C4:卡内须含「验收档:高/中/低」申报行。
|
||||
|
||||
**能力清单维护锚(2026-10-29 用户裁改版定稿)**:`game/tests/README.md`「能力清单」是**实现指导+阅读导航+义务声明**——只宣布「要验证什么」,不记「是否已验证/是否跑过」;落地账归现行验收闭合链(改动—验收对照表逐条挂断言+合回前独立验收审计),本清单不承载验证状态。表为四列:能力|系统|真实入口|代表用例(`文件:函数`)。**维护归写卡段,当场入表**:写需求卡片时,本批新增能力当场写入能力行——真实入口取自设计文档已定的入口,代表用例=卡里定死的计划测试(`文件:函数`);受影响存量行(入口/用例名变更)同批更新;能力退役删行。**实现照单落名**:测试函数名以清单为唯一依据,名实不符=卡片没写清=停卡退回。**收尾核对**:批末收尾只核对表上名字与实际落地一致(改名则回表),不刷任何批次字段;实现批禁写该文件的现行红线不变(process-conventions §3 第 11 条),核对义务归收尾提交。三层模型见 §8.9。改动—验收对照表纪律不变:新增或改写的每条断言仍须挂一行(上文「测试侧」);断言改判仍受 §8.4 真实入口口径约束。
|
||||
|
||||
**新增 core 件的覆盖登记义务(2026-11-03 架构审查 P1 余项裁)**:拆件或重构产出的新 core 文件不触发 process-conventions §3 第 6 条「新功能必配新测试」(那条只管新增玩法/机制),因此单由本条承接——新 core 件要么被 `game/tests/` 某套件按文件名或 `class_name` 点名,要么在承接它的能力行「代表用例」里申报「经宿主链覆盖(宿主=<件>)」;两者都无=批末收尾核对时补登。本条**不是覆盖率要求**,与 §7「覆盖率不是目标」同轨:登记的是能力义务的归属,不做文件计数——「每个 core 件必须被点名一次」的机器闸已裁否(它逼出为点名而点名的空套件,且与 §7 正面冲突)。落笔面沿用现行分工:申报行由写卡段入能力清单(实现批禁写该文件),核对归批末收尾提交。
|
||||
@@ -126,7 +128,19 @@
|
||||
3. 检查测试削弱:删除断言、放宽阈值、缩小扫描面、换下层直调,逐处要卡片申报或用户批准。
|
||||
4. 核对内部字段直查的受控例外:直查行是否已在对照表注明理由(该行为无公开可观测面可钉)。
|
||||
|
||||
审计报告落 `reports/iter<N>-验收审计-<日期>.md`,逐行写「通过/缺漏/例外及依据」。未通过不得合并。测试执行两入口铁规不变:审计在迭代 loop 内启动的子代理算 loop;另开会话须用户点名。
|
||||
**审计深度分级(2026-11-04 立)**:审计按卡内申报的验收档(§8.3)逐卡定深度;梯度只落在昂贵的判断件上,机械且堵造假向量的两件(削弱检查、例外核对)三档全保留不抽。中/低档省略的测试复跑以 CI 回执为执行证据(回执是机器产物——「不采信实现者自述已全绿」的口径不变):
|
||||
|
||||
| 审计动作 | 高 | 中 | 低 |
|
||||
|---|---|---|---|
|
||||
| 对照表逐行核对 | 全量 | 全量 | 抽查 ≥1/3 行;新增行与改判行必抽 |
|
||||
| 判据绑定面核对 | 抽查(现行口径) | 抽查(现行口径) | 抽 1 行 |
|
||||
| 测试削弱检查 | 逐处 | 逐处 | 逐处 |
|
||||
| 直查例外核对 | 逐条 | 逐条 | 逐条 |
|
||||
| 最窄测试复跑 | 抽查(现行口径) | 省略——以 CI 回执代证 | 省略——以 CI 回执代证 |
|
||||
|
||||
低档的抽查面与抽中依据照写审计报告;「每批必有审计、禁零审计批」不变;档位存疑按高档执行。
|
||||
|
||||
审计报告落 `reports/iter<N>-验收审计-<日期>.md`,逐行写「通过/缺漏/例外及依据」,逐卡标注验收档与实际执行深度。未通过不得合并。测试执行两入口铁规不变:审计在迭代 loop 内启动的子代理算 loop;另开会话须用户点名。
|
||||
|
||||
### 8.8 生效与旧卡
|
||||
|
||||
|
||||
@@ -0,0 +1,31 @@
|
||||
# 工程改动报告:验收档分级与待办条目限长批(2026-11-04)
|
||||
|
||||
> 接收方:待办清单「验证与清单体系整改——四方向分阶段推进」条(阶段 3+阶段 4 收口凭据)
|
||||
> 性质:工程改动+文档设计改动直改批(用户 2026-11-04 发令开工;W 层八裁点当日全裁——档名高/中/低、判据=失败代价单维、三档、强度差只落审计深度且每批必有审计、U0 确认权、行数硬上限、入 pipeline_gate 机检、存量同批压缩;How 细则由本批推导落文)
|
||||
|
||||
## 1. 改动清单
|
||||
|
||||
| 面 | 改动 |
|
||||
|---|---|
|
||||
| `design/engineering/test-conventions.md` | §8.3 新增「验收档申报」:三档高/中/低,判据=失败代价单维,卡头申报、U0 确认或改判,2026-11-05 起对文件名日期不早于该日的卡生效,未申报旧卡按高档全量审计。§8.7 新增「审计深度分级」梯度表:高档=现行四件事全量;中档=对照表逐行保留、复跑省略以 CI 回执代证;低档=对照表抽查 ≥1/3(新增行与改判行必抽)+复跑省略;测试削弱检查与直查例外核对三档全保留;档位存疑按高档。 |
|
||||
| `design/engineering/doc-conventions.md` §12.1 | 新增「条目正文限长」:正文只写现行状态+证据指针,过程叙事归 git 提交信息;≤12 行且 ≤700 字(去空白)双判据,流水线闸机检。 |
|
||||
| `tools/pipeline_gate.py` | ①待办条目限长双判据机检(行/字,超限判据名「条目超长」);②卡片验收档申报机检 C4(GRADE_RULE_DATE=2026-11-05)。 |
|
||||
| `.zcode/skills/req-card`(不入 git) | 必备结构新增第 16 节「验收档申报」。 |
|
||||
| `.zcode/skills/iter`(不入 git) | 独立验收审计节挂深度分级口径(逐卡定档、旧卡按高档)。 |
|
||||
| `待办清单.md` | 存量超限条目 9 条压缩(架构审查余项/三关色相/验证与清单体系整改/数值标定窗口/棋盘键盘/二三关观感/封印印记/生涯/EffectPort 删键)——过程叙事归 git 提交信息与既有过程件,正文留现行状态+证据指针+缺口。 |
|
||||
|
||||
## 2. How 数值与判据推导
|
||||
|
||||
- **限长 12 行**=实况说明行 1+文档指针行至多 8+缺口/改动面/状态各 1;**700 字**≈8 条指针(约 320 字)+现行状态叙述余量——以现行合规条目实测校准(压缩后的整改条目约 400 字)。行数与字数并用:单判据皆可绕(多行蔓延/单行堆砌),实证=整改条目原实况为单段 1500+ 字。
|
||||
- **审计深度梯度锚定现行 §8.7 四件事**:机械且堵造假向量的两件(削弱检查、例外核对)三档全保留不抽;昂贵的判断件(逐行核对、复跑)按档放宽;中/低档复跑省略的执行证据由 CI 回执承担(CI 全量强制档不因档位变化——迭代 44 实证的跨卡漏网兜底保持原样)。
|
||||
- **档名取「高/中/低」**:P0/P1/P2 记号已被 doc-conventions §12.1 占用为待办紧急度专用(新文档禁另立别义)。
|
||||
- **生效日 2026-11-05**:沿用卡片按文件名日期生效的惯例(§8.8 同型),当日已写卡(EffectPort 批 2026-11-04)不回头改。
|
||||
|
||||
## 3. 验证
|
||||
|
||||
- `pipeline_gate.py` 全仓 PASS(压缩后零超限);负证:临时超长条目行数与字数两判据各自触发红(临时件在 /tmp,未入库)。
|
||||
- `run_all_gates.sh --docs` 全绿;合回后远端 CI 追验(文档批=文档域秒级闸)。
|
||||
|
||||
## 4. 同批发现与登记(不在本批修)
|
||||
|
||||
- `tools/ci_watch.sh` 在 run 未落定时把中间态写成终局红回执:2026-11-04 run 37(commit 536dc072)实证——回执 16:59:55 写入 verdict=red,而该 run 17:03:10 才以「Job succeeded」落定,现查 Gitea API 组合状态=success;回执与真值相反,下游按「红未修不开新批」被误阻塞(本批开工时人工查 API 解封)。已登记待办清单新条目(直改类,修复方向=只认 run conclusion 落定后的终局态)。
|
||||
@@ -1,46 +0,0 @@
|
||||
# 盘点:验证与清单体系(阶段 0)
|
||||
|
||||
> 2026-10-28 · 服务待办清单「验证与清单体系整改——四方向分阶段推进」条
|
||||
> 性质:过程件(吸收即死)——结论吸收进待办条目与阶段 1 设计文档后删除。
|
||||
|
||||
## 1. 结论
|
||||
|
||||
1. **验证集清单零机器闸依赖**:`tools/run_all_gates.sh`、hooks、五个项目技能均不引用它;规范性锚点只有 `design/engineering/test-conventions.md` §8.3 一处。退役不需要改闸、改钩子、改技能。
|
||||
2. **测试名尾缀不是全量追溯键**:47 个有断言的文件中 19 个零尾缀(含三条 35 条以上断言的大套件)。能力清单只能按「能力→代表用例」建,不能要求逐断言尾缀。
|
||||
3. **对照表与待办清单都有机器闸**:前者的列结构、后者的条目格式均由 `tools/pipeline_gate.py` 强制;这两处瘦身要动闸,属阶段 3/4,不是阶段 1 的顺手活。
|
||||
4. **能力清单已有现成形态**:`game/tests/README.md` 的「集成旅程清单」5 行,扩面成本低;`repo_structure_audit.py` 不限制 `game/tests/` 下的 .md 文件名。
|
||||
|
||||
## 2. 依赖面盘点
|
||||
|
||||
| 件 | 消费方 | 机器闸依赖 | 退役/改动成本 |
|
||||
|---|---|---|---|
|
||||
| `game/tests/验证集清单.md` | test-conventions §8.3、待办清单 1 条、2 份过程报告、`tools/extract_checks.py` | 无 | 低:改 1 条规约+删文件 |
|
||||
| `tools/extract_checks.py` | 无自动调用;手工生成/对账 | 无 | 可保留为审计工具,或随清单退役 |
|
||||
| 改动—验收对照表 | req-card 技能、iter 技能、`pipeline_gate.check_ledger`(强制 5 列) | 有 | 中:规约+两技能+闸三处 |
|
||||
| 待办清单 | `pipeline_gate`(格式全套)、`doc_ref_audit`、`doc_term_audit`、`repo_structure_audit`、各技能 | 有 | 低:正文压缩不触机检;新增「≤5 行」规则才动闸 |
|
||||
| 独立验收审计 | iter 技能、req-card 技能、`pipeline_gate`(只查「验收审计」字样) | 有(字样) | 中:改抽样规则要动两技能+规约 |
|
||||
| 集成旅程清单 | 无机器消费 | 无 | 低:直接扩面 |
|
||||
|
||||
## 3. 覆盖数据
|
||||
|
||||
- `game/tests/**/*.gd` 共 70 个文件;静态 `check(` 粗口径 1607 处(含 `test_kit` 定义行与 `smoke_boot` 等提取器口径外宿主),清单口径 1587 处。
|
||||
- 标签尾缀〔…〕756 个(上限口径,一条标签一个)。
|
||||
- 有断言的文件 47 个:28 个有尾缀,19 个零尾缀。
|
||||
- 零尾缀大套件:`seal_polarity` 69、`variant_placement` 42、`roll_multiplier` 35、`cross_system_flow` 22、`damage_math` 21、`skill_unlock` 20、`type_glow` 20、`minesweeper_rules` 16、`system_contracts` 15。
|
||||
- 静默收集通道 `check_quiet` 约 407 站点在提取口径外(既有备案,test-conventions §5 工具局限)。
|
||||
|
||||
## 4. 对四阶段的影响
|
||||
|
||||
| 阶段 | 盘点结论对它的约束 |
|
||||
|---|---|
|
||||
| 1 换尺子(A) | 先扩「集成旅程清单」到核心域;每行=能力|真实入口|代表用例|最后验证批次|缺口。退役验证集清单;`extract_checks.py` 去留在设计讨论裁 |
|
||||
| 2 按新尺子精简(B) | 删并对象改为能力项;每项能力保留至少一个代表用例;不要求逐断言尾缀 |
|
||||
| 3 调验收强度(C) | 对照表列与审计抽样一起改,触 `pipeline_gate`、req-card、iter 三处;不要与阶段 1 同批 |
|
||||
| 4 文档减肥(D) | 待办正文压缩可直接做;「≤5 行」入闸需改 `pipeline_gate` |
|
||||
|
||||
## 5. 未决点(阶段 1 设计讨论)
|
||||
|
||||
1. 能力清单落点:`game/tests/README.md` 扩面,还是独立文件?
|
||||
2. 能力项粒度与覆盖面:按哪些域切、预计多少行?
|
||||
3. `tools/extract_checks.py` 去留:随清单退役,还是保留为审计工具?
|
||||
4. 验证集清单退役时点:立即冻结,还是阶段 1 设计定稿后一并退役?
|
||||
+24
-1
@@ -3,7 +3,9 @@
|
||||
r"""pipeline_gate.py — 工作流程流水线闸(待办清单条目状态机+roadmap 迭代总表+需求卡片口径+一次交叉核)。
|
||||
|
||||
职责:机检待办清单条目(标题元数据与可选优先级档名/四属性齐备与旧属性名防回潮/状态词白名单/
|
||||
改动面四档白名单/条件凭据/无设计线段条目的证据指认/状态段累积制/特批/零命中)与 roadmap 迭代总表(六列/状态五形态/卡片与报告存在性/编入时间与预计周期的
|
||||
改动面四档白名单/条件凭据/无设计线段条目的证据指认/状态段累积制/特批/正文限长双判据/零命中)
|
||||
与 roadmap 迭代总表(六列/状态五形态/卡片与报告存在性/编入时间与预计周期的
|
||||
分档放行)/需求卡片口径(C1 文档义务/C2 设计事实源/C3 改动—验收对照表/C4 验收档申报)+一次交叉核。
|
||||
约束:每红项一行「文件:行号 判据名 一句白话说明」,exit 0=全绿 / 1=有红 / 2=输入件缺失;
|
||||
卡片与报告存在性相对 --repo-root 解析(缺省=本文件上两级);待办清单与 roadmap 均已为新格式
|
||||
(2026-10-18 数据整改批),本闸已注册进 tools/run_all_gates.sh 文档域(08c 流水线闸)。
|
||||
@@ -58,6 +60,12 @@ AUDIT_MARK = "验收审计"
|
||||
CAP_ROW_RULE_DATE = (2026, 10, 29) # req-card §8:每行标能力归属(对齐 test-conventions §8.9 三层模型)
|
||||
CAP_ROW_RE = re.compile(r"^(既有|新增)\s*[::]\s*(.+)$")
|
||||
CAP_README = Path("game/tests/README.md")
|
||||
# C4 验收档申报(2026-11-04 验收强度分级批,生效 2026-11-05;test-conventions §8.3)
|
||||
GRADE_RULE_DATE = (2026, 11, 5)
|
||||
GRADE_RE = re.compile(r"验收档\s*[::]\s*[高中低]")
|
||||
# 待办条目正文限长双判据(2026-11-04 立,doc-conventions §12.1:行数抓清单蔓延、字数抓单行堆砌)
|
||||
ENTRY_MAX_LINES = 12
|
||||
ENTRY_MAX_CHARS = 700
|
||||
|
||||
DATE_RE = re.compile(r"\d{4}-\d{2}-\d{2}")
|
||||
VER_RE = re.compile(r"[vV]\d+(?:\.\d+)*")
|
||||
@@ -216,6 +224,17 @@ def check_todo(text, issues, where, root):
|
||||
for e in entries:
|
||||
line = e["line"]
|
||||
check_title(e["title"], line, issues, where)
|
||||
# 条目正文限长(doc-conventions §12.1 限长规则):行数与字数双判据,不含标题与空行
|
||||
body_stripped = [raw for _, raw in e["body"] if raw.strip()]
|
||||
if len(body_stripped) > ENTRY_MAX_LINES:
|
||||
issues.append((where, line, "条目超长",
|
||||
"正文 %d 行超上限 %d(doc-conventions §12.1:过程叙事归 git 提交信息,"
|
||||
"正文只留现行状态+证据指针)" % (len(body_stripped), ENTRY_MAX_LINES)))
|
||||
body_chars = sum(len(re.sub(r"\s", "", raw)) for raw in body_stripped)
|
||||
if body_chars > ENTRY_MAX_CHARS:
|
||||
issues.append((where, line, "条目超长",
|
||||
"正文约 %d 字超上限 %d(去空白计,doc-conventions §12.1 限长)"
|
||||
% (body_chars, ENTRY_MAX_CHARS)))
|
||||
attrs, attr_line = {}, {}
|
||||
for ln, raw in e["body"]:
|
||||
s = raw.strip()
|
||||
@@ -635,6 +654,10 @@ def check_cards(root, issues):
|
||||
issues.append((str(path), 1, "独立验收审计未声明",
|
||||
"须在卡内写明独立验收审计入口与报告文件(2026-10-21 起,"
|
||||
"test-conventions §9.7)"))
|
||||
if when >= GRADE_RULE_DATE and not GRADE_RE.search(text):
|
||||
issues.append((str(path), 1, "验收档未申报",
|
||||
"须在卡片头部信息区申报「验收档:高/中/低」(2026-11-05 起,"
|
||||
"test-conventions §8.3)"))
|
||||
if when < SYNC_RULE_DATE:
|
||||
continue
|
||||
in_sec = False
|
||||
|
||||
@@ -14,50 +14,25 @@
|
||||
|
||||
#### 架构审查余项——闸面缺口、豁免存废、零测试点名与架构文档漂移(2026-11-03 登记,来源=批次移交)
|
||||
|
||||
**实况**:2026-10-29 全库架构静态审计的四组待裁余项,自「架构审查优化讨论」条目迁入(该条目的 3.1+3.2 部分已随迭代 50 卡③实现合回〔合并提交 8d3a12ec〕,余项不在本卡,按未决先迁再死迁立本条)。四组余项(审计待裁点 ④⑤⑥⑦,读数为审计时点,逐项现值以仓库为准):①守卫闸面缺口——S1/S2 随机函数扫描面止步 core+presentation(sim 4 处/probe 1 处/tests 3 处自建 RNG 不在扫)、S9 类型闸与 S13 质量闸扫描面不含 sim/probe/tests、S8 是 9 文件显式清单(缺位自检只防删改不防增);②S13 质量闸豁免存废——审计时点三处豁免常态化到最大户文件(battle_orchestrator 已随拆件批收窄,余量以闸件为准);③零测试点名四件(attune_loadout/battle_fx_host/meta_state_store/slot_store);④架构文档漂移三处(architecture.md 登记的 core/hero_ledger.gd 盘上不存在且测试断言它必须不存在、行数过期、EC8 热重载门后 ConfigDb.reload() 零调用方且走 load() 拿不到磁盘新值)。凭据:reports/审计-全库架构审查-2026-10-29.md(待裁点节)+reports/处置-架构审查3.1+3.2整改-2026-11-02.md(3.1+3.2 闭合凭据,随迭代 50 合回)。
|
||||
**实况**:2026-10-29 全库架构审计(reports/审计-全库架构审查-2026-10-29.md;3.1+3.2 已随迭代 50 合回,凭据 reports/处置-架构审查3.1+3.2整改-2026-11-02.md)的待裁余项,自同名讨论条目迁入。现状(2026-11-04 对账):①闸面缺口(扫描面不扩 sim/probe/tests,适用域落 code-conventions §4 第 13 条)②S13 豁免存废(豁免已清偿,基线 5 键,commit 9eedf896)③零测试点名(定性=无按文件登记惯例,承接面落 test-conventions §8.3「新增 core 件的覆盖登记义务」)三组已随 §4 批裁决并落地(2026-11-03 用户逐项点头,CI 66407117 green);④架构文档漂移三处已随 arch51-docs 批落文档合回;§5.1 封装修复已写卡(reports/需求卡片-架构审查5.1封装修复批-2026-11-03.md v1.1,5 张 T 卡 2.875 工作日,凭据含 reports/处置-架构审查5.1封装修复-2026-11-03.md,排序在 3.1+3.2 卡后);§5.3 已写卡(reports/需求卡片-架构审查P2代码面批-2026-11-03.md v1.1,0.25 工作日,排序在 5.1 卡后);EC8 热重载侧经用户裁撤卡(实装去向=用户另立条目)。
|
||||
|
||||
**缺口**:四组余项中①②③④ 全部闭合销号(④ 架构文档漂移三处已随 arch51-docs 批落文档并合回——HeroLedger 行拆件四件补登记+行数冻结计数摘除+MetaProgression 补登记行);同族审计 §5.1 已写卡并合回(arch51-card 批,见下 2026-11-03/11-04 记录)、§5.3 已写卡(见下 2026-11-04 段,本卡合回后在册)、§5.4(MetaProgression 登记零动作)已随 arch51-docs 落文合回;presentation 层私取面约 227 行另开设计讨论,为本条最后余项。
|
||||
|
||||
**2026-11-03 设计闭合+写卡(5.1 封装修复部分,2026-11-04 并 master 后凭据换代)**:2026-11-03 会话对审计 §5.1(settlement 段类私取编排器私有成员)完成设计讨论并扩面普查,裁决五处跨对象私有访问修复方案(settlement 七段→编排器束交付/搬家五方法/adventure_runner→BreakpointStore/save_manager↔SlotStore 双向公开面/grant_segment→BattleFxHost+config_db→三表容器;presentation 层约 227 行另开设计讨论不在内)。凭据=reports/处置-架构审查5.1封装修复-2026-11-03.md(处置记录)+审计报告 §5.1+architecture.md:119/:124/:137-146。需求卡片 reports/需求卡片-架构审查5.1封装修复批-2026-11-03.md(**v1.1**——godot-master 终审七项折入〔golden 封印步改封未揭示相邻格/三 schema 解析冒烟义务/T3 签名补注解/成员账两笔订正/harmful_adjacent 自呼随更名/现值交付口径注/SlotStore→SaveManagerCore 反向私取终审补查 21 处并入 T3〕;5 张 T 卡估时精确汇总 2.875 工作日;零行为变更批,能力清单零新增行已写明判断依据);实现排序在 3.1+3.2 卡之后——该卡已随迭代 50 合回,前置已解除(combat_segment 行号漂移按卡内 grep 锚定位预案处理)。
|
||||
|
||||
**2026-11-03 P2 部分(5.2 文档漂移+5.3 词表+EC8 撤卡,2026-11-04 并 master 后入册)**:5.2 文档漂移归真已落档并合回(architecture.md——HeroLedger 行拆件四件补登记/冻结计数摘除/MetaProgression 补登记行/CurioStop 与 RunLedger 旧指称订正,arch51-docs 提交 63fc3e74+e614773a,文档域闸全绿);**EC8 热重载侧经用户裁决撤卡**——GDD 规格恢复原状(本批一度摘除已撤回)、config_db 门与 reload+编排器两行开门点代码原样保留为将来实装骨架,实装去向=用户另立待办条目+后续实装卡(他会话写卡);5.3 已写卡——凭据=reports/需求卡片-架构审查P2代码面批-2026-11-03.md v1.1(仅 NODE_TYPES 词表单点化,零待裁点,估时 0.25 工作日,排序在 5.1 卡后,消费点行号已按迭代 50 合回后现址换代 :136)。**未闭合余项对账(2026-11-04)**=仅剩 presentation 层私取面约 227 行(另开设计讨论)——闸面缺口、S13 豁免存废、零测试点名三组已随 §4 批(2026-11-03 裁决+闸件落地,见上裁决段)闭合销号。
|
||||
**缺口**:还差 presentation 层私取面(约 227 行)的设计讨论——本条最后余项;另 §5.1/§5.3 两卡待编迭代。
|
||||
|
||||
**改动面**:文档+游戏代码+工具代码
|
||||
|
||||
**状态**:文档设计中
|
||||
|
||||
**2026-11-03 设计讨论裁决(①②③ 三组,用户逐项点头)**:凭据=reports/审计-全库架构审查-2026-10-29.md §四 各节「2026-11-03」标注。①**闸面缺口**——S9 类型闸/S10 文件头闸/S13 质量闸**不扩**到 sim/probe/tests(三层存量只读数实跑≈2162 处,其中禁调试打印 274+循环内 await 70 属工具码功能需要;产品码两面现归零,扩面即毁执法前提),改为在 code-conventions §4 新增第 13 条把适用域按来源写清(tests→闸00/01/02、probe→闸03/04/05〔含两件不入闸的人工取证件与共用面〕、sim→不入 CI 的手动调参批量),并停用「测量面」对该三目录的统称(保留 run_all_gates 选闸原义);**S1/S2 随机闸同样不扩**——三目录自建随机源显式定种属合法测量口径,禁的不定种形态改由文字纪律+独立验收审计承载(用户令:说明写规约,不写 README)。②**S13 豁免存废**——结案销号:审计时点三处豁免已于 2026-10-31 迭代 44 批后收尾清偿(基线现 5 键只降不升,commit 9eedf896),本组无对象可裁、不再叠清偿期限。③**零测试点名**——定性改判为「无按文件登记的惯例」而非「没测」(11 件零点名件全有行为断言,只是不经类名;读数由审计的 4 件订正为 11 件,其中三件是迭代 44/46/49 拆件产物=复发模式);立每 core 件点名闸与补点名套件两案裁否(撞 test-conventions §7「覆盖率不是目标」),改为落 test-conventions §8.3「新增 core 件的覆盖登记义务」+process-conventions §3 第 6 条承接指向。**已落地闸件(工程改动,零卡片,用户令在本会话车道内直改)**:static_scan.sh 的 S8 加 settlement/ 目录域反向对账+S7/S8 两份 14 文件清单并成单点 `B1_SET`+「10 个 .gd」文案改派生计数;audit_type_hints.py/audit_file_headers.py 各补扫描面空转自检;architecture S 表 S8 行与 S9/S10 偏差句同批同步。验证=static_scan 全量 13 条规则绿退出码 0、两件负证返回 1、合回后远端 CI `66407117` green。
|
||||
|
||||
#### 三关色相 × 五组微光互辨抽测——三关图类型色板终值冻结的前置抽测(2026-10-28 登记,来源=会话提及)
|
||||
|
||||
**实况**:三关图类型色板(`tile_closed` 与 `wall_ambient` 两槽)的终值冻结前,须先跑一次「三关色相 × 五组类型微光」互辨抽测——格底与类型微光同在未开格面上,邻近色相有吞没风险。`design/art/art-bible.md` §6.3 共同纪律已把该抽测立为终值取值程序的第一条:先抽测、再按 §4.3 现行规则重跑 §1.4 格子样张冻结,色值不代填。三关方向候选现行=暖石棕/灰白蓝/灰黑+矿脉金属色;五组微光色带=芥末黄/黄绿/青/紫罗兰/绯红(§4.2),抽测要把这两组逐一交叉比对。本条由 2026-10-28 战斗一屏样张目标规格设计轮的 A-3 定值派生——该轮裁定不沿用方向候选直接定终值,先跑抽测。
|
||||
|
||||
关联文档清单:
|
||||
- 相关文档 [美术圣经](design/art/art-bible.md) v3.22(2026-10-28)——§6.3 终值取值程序登记行(本抽测的挂点)与三关方向候选行、§4.2「类型微光色带」条(五组色相 + 明度双码)、§4.3 图类型四槽与不变槽、§1.4 格子样张(终值冻结闸)
|
||||
- 设计轮依据:2026-10-28 战斗一屏样张目标规格设计轮 §8.1 A-3 条(该轮过程稿已按「吸收即死」删除、不入库,定值与推导沿革见 commit 50702ea5)
|
||||
- 抽测方案(过程稿):reports/提案-三关色相互辨抽测方案-2026-10-29.md(2026-10-29,取样面/互辨判据/产物形态三件定值与执行步骤 S1–S7)
|
||||
|
||||
**2026-10-29 美术设计段闭合**:三件缺口全部定稿,待裁点 0 条。①取样面=3 关 × 5 组=15 对,每对铺 3 格(素砖底/装饰变体 A/装饰变体 B)=45 取样格,另每关每底型 1 格无微光基准=9 格,合计 54 格;画布 640×1120,正图段+灰度副本段;装饰变体底**带**、迷雾记忆态底**不带**(§4.2/§4.6.3/§6.5 三者合起来永不同格)。②判据=目检四条+机检四条并用,沿 §1.4 已立闸形「目检先行、机检冻结」;机检阈值全部取自本作在役值(合成对比 ≥1.20、格底-微光三通道差不得全部 <8/255、样图读数与合成模型差 ≤±2/255、铺底值准入 L≥0.30/饱和 ≤0.55/避 300°–345°),**色相通道刻意不设机检阈值**(圣经无色相差门槛条文,自造等于把观感问题伪装成可机检问题)。③产物形态=**两者兼有**(并列样图承担目检、逐对读数表承担机检与回归),故改动面须补「美术素材」与「工具代码」两档。新增色值 **0 枚**——`tile_closed`/`wall_ambient` 属 §4.1 分层②场景环境子板,**不占 48 token 额度**,故「额度用尽」不构成阻塞;三关瓦片色表已在役(`tools/recolor_terrain_tiles.py` 的 `PALETTES`,每套 23 色 ≤32),终值从墙顶受光档槽取即可。执行前提已核:三关瓦片现件(dungeon/underdark/deep_underdark 三套)在本机 `game/assets/art/board/` 齐备,可开跑。
|
||||
**实况**:三关图类型色板(`tile_closed` 与 `wall_ambient` 两槽)终值冻结前须先跑「三关色相 × 五组类型微光」互辨抽测(格底与类型微光同在未开格面,邻近色相有吞没风险);美术设计段已闭合——取样面 54 格(3 关 × 5 组 × 3 底型+9 基准格)、判据=目检四条+机检四条(阈值全取在役值,色相通道不设机检阈值)、产物=并列样图+逐对读数表两兼。执行步骤与三件定值全载抽测方案过程稿 reports/提案-三关色相互辨抽测方案-2026-10-29.md;抽测挂点=[美术圣经](design/art/art-bible.md) v3.22 §6.3 终值取值程序第一条(终值冻结闸=§1.4 格子样张重跑)。执行前提已核:三关瓦片三套在本机 `game/assets/art/board/` 齐备,可开跑。
|
||||
|
||||
**改动面**:文档+美术素材+工具代码
|
||||
|
||||
**状态**:美术设计已闭合+待执行
|
||||
|
||||
#### 验证与清单体系整改——四方向分阶段推进(2026-10-28 登记,来源=会话提及)
|
||||
|
||||
**实况**:用户裁「验证及清单不合理」,经调研定四方向全做、分阶段推进:A 粒度整改(清单从断言级升到能力/行为级,逐断言账本退役)→ B 精简裁断(在新粒度上规则驱动删并)→ C 流程风险分级(P0/P1/P2 验收强度、审计抽样)→ D 文档减肥(待办条目限长、历史归 git);测试有效性度量暂不处理。阶段 0 盘点已毕:验证集清单零机器闸依赖(run_all_gates/hooks/五技能均不引用,仅 test-conventions §8.3 维护锚+2 份过程报告引用),退役无闸改动;但测试名尾缀仅覆盖 28/47 个有断言文件(19 个零尾缀,含 seal_polarity 69 条、variant_placement 42 条、roll_multiplier 35 条),故能力清单只能按「能力→代表用例」建,不要求逐断言尾缀。对照表列改动触 pipeline_gate+req-card/iter 两技能;待办正文压缩不触机检(无长度判据)。盘点明细见 reports/盘点-验证与清单体系-2026-10-28.md。**阶段 1 设计已闭合(2026-10-28 用户四裁点)**:能力清单 v1 落 `game/tests/README.md`——按系统归属与玩家旅程排序,首期核心四域(存档与随机、冒险循环、战斗结算、奖励与经济)29 行+跨域条件闸 1 行,共 30 行,每行真实入口+2–3 个代表用例(`文件:函数`),维护规则为每批收口核对本批受影响行并刷新「最后验证批次」;`design/engineering/test-conventions.md` §8.3 维护锚改写为「验证集清单整册冻结、能力清单承接覆盖索引、阶段 2 精简后删除」;`game/tests/验证集清单.md` 头注同步冻结声明,冻结快照(基点 `b9260138`/1587 条)留作阶段 2 对账基准;`tools/extract_checks.py` 保留为审计工具,不再承担常态同步。**阶段 2 已执行闭合(2026-10-28 C 档合回)**:存量断言精简 C 档 6 组手写断言族并为 7 个表驱动站点(33→7),冻结清单对账 1587→1561,验证集清单随阶段 2 完成退役(覆盖索引归能力清单,维护锚 test-conventions §8.3),删并申报与件核见 reports/工程改动报告-存量断言精简C档-2026-10-28.md;阶段 3–4 待各自设计推进:风险分级与审计抽样规则、条目限长是否入 pipeline_gate 均未定。**2026-10-29 阶段 1 落地定稿(用户三裁)**:①能力清单与覆盖域表落 `game/tests/README.md`,独立成表、不与 GDD 验收标准合并;②GDD 纯度判红——系统与概念文档全文禁写实现细节(代码路径/测试文件名/断言名),唯一例外=配置文件索引(`game/data/tables/*.tres` 表路径与表名);③能力清单维护归写卡段——写需求卡片时增删能力行并刷新「最后验证批次」,实现批禁写该文件(清单按规则滞后一个迭代,属设计后果)。三层模型(验收意图/覆盖索引/执行证据)与四法则落 test-conventions §8.9;落地分五批:①三份规约+AGENTS.md 红线+本条实况(本批);②README 覆盖域表+三域能力行补齐;③`tools/capability_audit.py` 文档域新闸(3a 普通工具入库/3b 接闸+基线,worktree);④pipeline_gate 对照表加「能力行」列+req-card/iter 两技能同步;⑤GDD 存量实现细节清理(28 篇约 98 处,逐处去向表过用户目后落笔)。**2026-10-29 阶段 1 五批全部落地**:①032d923c;②5377b2ce;③`tools/capability_audit.py` 入库 ae3c99e3+接闸上电 915222fa(文档域闸 08e 能力审计,纯度红清零后才上电);④f3263444;⑤GDD 清理 00312e12(30 篇去 124 处实现指证,纯度红 124→0)。阶段 1 收口;阶段 3–4 待各自设计推进。
|
||||
|
||||
**改动面**:文档+游戏代码+工具代码
|
||||
|
||||
**状态**:文档设计已闭合
|
||||
|
||||
#### 数值标定窗口总挂账——原九条数值类条目合并(2026-10-28 登记,来源=会话提及)
|
||||
|
||||
**实况**:2026-10-28 用户令把九条数值类挂账合并为一条:削弱档位的最终数值/迭代 10 奖励重构联动欠账/调参批数值点评登记/三方向各自的解锁清单与定价/GP 经济换算失衡/天赋树实装批登记欠账余两件/商店独立刷新机制两参数/基线通关率越带加难杠杆扫描/成长系数节奏——原九条同步删除,内容全量迁入汇总文档,git 历史可考(本提交)。共同背景:M4 数值批卡已随 2026-10-16 删卡令退役;2026-10-18 用户裁=各条留待办清单、未设计未启动、不另行归属,未来数值标定窗口重开时重走设计段再写卡——本条沿用该裁定,重启条件=用户发令开窗口。合并动机=九条共享同一重启条件与同一执行形态(窗口内一次 MC 批量统一覆盖各条对比需求:全冒险期望+奖励期望),分散登记徒增维护面。逐条挂账明细、裁定史与相关文档见汇总文档。
|
||||
|
||||
关联文档清单:
|
||||
- 汇总文档 reports/汇总-数值标定窗口挂账-2026-10-28.md(2026-10-28,九条全量内容+统一执行形态建议序:设计段逐条裁决→按域拆卡→实现批三处同步→测量批一次跑批)
|
||||
- MC 采集档位表 sim-data/README.md(档位硬闸与执行约束:一档只能由用户发起、无数值改动零跑)
|
||||
**实况**:2026-10-28 用户令把九条数值类挂账(削弱档位终值/迭代 10 奖励重构联动/调参点评登记/三方向解锁清单与定价/GP 经济换算失衡/天赋树欠账余两件/商店刷新两参数/基线通关率越带杠杆扫描/成长系数节奏)合并为一条,内容全量迁汇总文档 reports/汇总-数值标定窗口挂账-2026-10-28.md(逐条明细+统一执行形态:窗口内一次 MC 批量覆盖全冒险期望+奖励期望)。共同裁定(2026-10-18):各条留待办、未设计不启动、重启条件=用户发令开数值标定窗口。MC 档位硬闸见 sim-data/README.md「MC 采集档位表」。
|
||||
|
||||
**缺口**:数值标定窗口未重开(用户发令触发);窗口设计段逐条裁决写入文档后方可写卡;其中原「基线通关率越带」条另等真人批 k 系数到账。
|
||||
|
||||
@@ -112,9 +87,9 @@
|
||||
|
||||
#### 棋盘战斗键盘/手柄输入(2026-10-04 登记,来源=会话提及)
|
||||
|
||||
**实况**:战斗棋盘操作现行唯一输入=鼠标——左键已开格=移动/未开格=挖掘,右键=封印(封印印记一次性承诺,无移除手段),悬停承载合法性反馈(可挖域微光 + BFS 路径点迹);全仓无 InputEventKey/JoypadButton 处理,project.godot 无自定义 InputMap 动作。**可行性已核(2026-10-04):可做**——分发接缝现成,board_view `action_requested(cell, kind)`(kind ∈ {dig, move, flag_place, flag_pull})是唯一出口,键盘/手柄作第二输入前端产出同款信号即可,规则引擎合法性校验零改动;Godot InputMap 原生支持键盘与手柄绑定同一动作,与鼠标并存不冲突。用户期望操作形态:十字方向移动;挖掘/封印各一独立键;方向控制选定 8 向挖掘或封印目标(8 向恰与现行可挖域同集,十字移动与立绘 4 向既有裁决一致);键盘移动语义=逐格步进。连带设计点四条(实施批先裁):① 键盘模式需屏上光标格承载现行悬停反馈;② 键盘默认键位与手柄键位映射待定;③ 弹层界面(结算/三选一/商店/设置等)现行全鼠标,手柄全覆盖需焦点导航——是否同批待裁(2026-10-06 增补:暂停层〔现状态面板〕Esc 快捷通道并入本条随键盘批统一实施,弹层清单 +1 项);④ 键位自定义是否进设置面待裁。排期 Beta(2026-10-04 登记;可行性已核毕,立项时按 roadmap 开卡)。
|
||||
**实况**:战斗棋盘现行唯一输入=鼠标;键盘/手柄作第二输入前端可做(可行性已核 2026-10-04)——分发接缝现成,board_view `action_requested(cell, kind)` 唯一出口,规则引擎合法性校验零改动,Godot InputMap 原生支持与鼠标并存。用户期望形态:十字方向逐格移动、挖掘/封印各一独立键、8 向选定挖掘或封印目标;排期 Beta(立项时按 roadmap 开卡)。
|
||||
|
||||
**缺口**:还差 Beta 立项时的输入方案设计讨论——四个连带裁决点(光标反馈承载/键位映射/弹层焦点导航范围/键位自定义)先裁再开卡。
|
||||
**缺口**:还差 Beta 立项时的输入方案设计讨论——四个连带裁决点先裁再开卡:①键盘模式屏上光标格承载悬停反馈;②键盘与手柄键位映射(暂停层 Esc 快捷通道并入本条);③弹层焦点导航是否同批;④键位自定义是否进设置面。
|
||||
- 相关文档:[排雷玩法](design/gdd/systems/排雷循环/排雷玩法.md)(动作语义与 8 向目标规则主责)+ [HUD 框架](design/gdd/systems/表现与支撑/HUD框架.md)(键盘光标与合法性反馈呈现)+ [设置与本地化](design/gdd/systems/表现与支撑/设置与本地化.md)(键位自定义,可选面)
|
||||
|
||||
**改动面**:文档
|
||||
@@ -186,9 +161,9 @@
|
||||
|
||||
#### 第二 / 三关棋盘观感——亮度与对比度(2026-10-13 登记,来源=playnote)
|
||||
|
||||
**实况**:来源=playnote 用户试玩记录「UI 优化,第二第三关的棋盘看着太累了;不知道是因为亮度还是对比度的原因,看着非常费劲,非常不舒服」。2026-10-13 用户裁定:**这是需要做的**,且本就属版本标准的覆盖范围——[08-Alpha版本标准](design/gdd/08-Alpha版本标准.md)「五 · 表现」已新增「棋盘观感(第二 / 三关亮度与对比度)」行,标待做。**开工前须先定性(沿用既有裁决)**:是**素材轴**问题(棋盘瓦片与格面图标本身的明度与色相),还是 **UI 轴**问题(舞台底色与叠加层的对比关系)——两轴修法完全不同,定性错了等于白改一轮;该定性要求(原备忘 (e) 项)是本条的开工前置。2026-10-16 曾编入迭代 30 卡③(UI 呈现三卡批序位③),2026-10-17 用户裁定剔除回待设计(自身挂「素材轴/UI 轴」定性人闸+甲/乙〔recolor/远程生图重产〕素材裁点;若裁乙,其瓦片规格依赖战斗一屏样张批的目标规格清单产出)。v1.4 旧卡留 reports/需求卡片-二三关棋盘观感批-2026-10-16.md 作素材,非已写卡状态。与已完成注销的「呈现层残余 <4.5:1 文字位」分工:本条管**棋盘区域整体的观感**(亮度/对比度/费劲感,体感问题),彼条管**具体文字位的对比度读数**(机检可判硬指标),两条不同面不互相替代。Alpha 出口裁决:Alpha 必须,先做素材轴/UI 轴对照定性;出口=用户实机目检不再判「看着费劲」。
|
||||
**实况**:来源=playnote 试玩记录「第二第三关棋盘看着费劲」;用户裁定要做,[08-Alpha版本标准](design/gdd/08-Alpha版本标准.md)「五 · 表现」已立行标待做。2026-10-16 曾编入迭代 30 卡③后剔除回待设计;v1.4 旧卡 reports/需求卡片-二三关棋盘观感批-2026-10-16.md 在册但非已写卡状态。分工:本条管棋盘区域整体观感(亮度/对比度/费劲感,体感问题),与已注销的「呈现层残余 <4.5:1 文字位」条(机检硬指标)不同面不互代。Alpha 出口=用户实机目检不再判「看着费劲」。
|
||||
|
||||
**缺口**:还差「素材轴 / UI 轴」定性设计讨论与甲/乙素材裁点裁决;素材轴若走重产,还依赖战斗一屏样张批的目标规格清单产出。旧卡 v1.4(reports/需求卡片-二三关棋盘观感批-2026-10-16.md)在册但非已写卡状态,其前置未完成三件:①「素材轴 / UI 轴」定性未做,这是既有条款规定的开工前置;②甲(recolor 现瓦片)/乙(远程生图重产)素材裁点未裁;③若裁乙,瓦片规格压在样张批的目标规格清单上——该清单已随战斗一屏样张批落定(art-bible v3.22 五张规格表,2026-10-30 合回)。
|
||||
**缺口**:还差「素材轴 / UI 轴」定性设计讨论与甲(recolor 现瓦片)/乙(远程生图重产)素材裁点裁决——定性是既有条款的开工前置;素材轴若走重产,依赖战斗一屏样张批目标规格清单(已随 art-bible v3.22 落定)。
|
||||
- 相关文档:[HUD框架](design/gdd/systems/表现与支撑/HUD框架.md)(UI 轴:舞台底与叠加层)+ [美术圣经](design/art/art-bible.md)(素材轴:瓦片与格面图标的明度色相)——定性前两方共裁
|
||||
|
||||
**改动面**:美术素材+游戏代码
|
||||
@@ -219,22 +194,9 @@
|
||||
|
||||
#### 棋盘封印印记图形换代——现件仍是扫雷旗形,改法阵或锁链待设计(2026-10-30 登记,来源=会话提及)
|
||||
|
||||
**实况**:用户口径=棋盘封印图标现在还是按旧扫雷的做法画成一个旗子,希望换成法阵那样的封印、或锁链;形未定,先做设计讨论再出图。现状证据:
|
||||
**实况**:用户口径=封印图标现为扫雷旗形,改法阵或锁链待设计,形未定先做讨论。现件 `game/assets/art/board/seal_mark.png`(32×32 旗形剪影);消费面两处——棋盘封印槽绘制(`tile_palette.gd:19` → `board_view.gd:616`)与战末金蜡封徽记(`battle_end_overlay.gd:65-69` 复用同图);「旗」概念已全库退役(2026-10-18),文档口径仍以旗为形待换代:[美术圣经](design/art/art-bible.md) v3.23 §3.2/§4.1、[美术资源依赖清单](design/art/art-assets-checklist.md) §3.3/§4、[战斗屏 UX](design/gdd/ux/battle.md) :128/:270、[体验验证清单](体验验证清单.md) 第 4 条。
|
||||
|
||||
- 现件 `game/assets/art/board/seal_mark.png`(32×32 纯黑剪影)=经典扫雷旗形(旗面 + 旗杆)。2026-09-28 那次只定了色(旗朱→封印紫→封印黑 `#000000`),图形一直没动。
|
||||
- 消费面两处,换形同时受影响:棋盘侧 `game/presentation/views/tile_palette.gd:19`(`TILE_SEAL_MARK` 常量)→ `board_view.gd:616` 未开格封印槽绘制,盘上缺图时回落单字「封」(`board_view.gd:654-658`);战末弹层的「金蜡封徽记」复用同一张图(金底 52×52 面板 `battle_end_overlay.gd:65-69`,叠 32px 印记 `:84`)——蜡封徽记要不要跟着换是独立一裁。
|
||||
- 文档侧口径仍以旗为形:art-bible §4.1 封印黑条内含「旗杆米白保可读」这一旗形前提、§3.2 封印印记条只锁色与格内栈位;art-assets-checklist §4 封印特效行写「印记旗面走封印黑」「印记常显形态可与 §3.3 旗面像素化合并出」;ux/battle.md:128 呈现术语注记与 :270 悬停三态光标「封印(印记形)」。
|
||||
- 术语层已闭合,本条只欠呈现层:「旗」概念 2026-10-18 用户裁全库退役(动作=封印、印记=封印印记、板面单字=「封」),图形停在退役前的形态。
|
||||
|
||||
关联文档清单:
|
||||
- 相关文档 [美术圣经](design/art/art-bible.md) v3.23——§3.2 封印印记条(:167)· §4.1 封印黑条(:202)· §1.2 格内优先级栈 · §1.4 格子样张
|
||||
- 相关文档 [美术资源依赖清单](design/art/art-assets-checklist.md)——§3.3 雷/封印印记/数字格面像素化(:118)· §4 封印特效行(:162)
|
||||
- 相关文档 [美术素材状态清单](design/art/art-status-checklist.md)——P2「雷/封印印记/数字砖面全套」◐ · P3「封印特效」⬜
|
||||
- 相关文档 [战斗屏 UX](design/gdd/ux/battle.md)(Last Updated 2026-10-29)——:128 呈现术语注记 · :270 悬停预承诺三态光标 · :261 未开格封印交互行
|
||||
- 相关文档 [术语表](design/gdd/术语表.md) v1.25——「封印」条(:15)· 用语规范禁用字面条(:184)
|
||||
- 相关目检项 [体验验证清单](体验验证清单.md) 第 4 条「封印印记贴图三关加载」(:317,现判据只验贴图是否加载、不验形状)
|
||||
|
||||
**缺口**:还差一次封印印记图形的设计讨论(形未定,法阵/锁链两案并列,禁代裁),讨论须一并裁五点:①形=法阵(圆形阵纹)还是锁链(束缚感),或第三种方案;与危险格巢穴纹、奖励徽章的剪影语言(art-bible §3.1 直线几何体)互辨是否成立。②色=现封印黑 `#000000` 是 §4.1 不变槽成员,法阵若带发光或色相即与该条口径冲突,须重登记不变槽与对比度机检判据(现判据=未开格墙顶对纯黑 ≥4.4:1)。③尺寸与遮挡=32×32 内保持可读,格内优先级栈「数字 > 小人 > 封印印记」下法阵铺满整格是否侵入数字字形区(§3.2 验收句禁止)。④连带件=战末金蜡封徽记与悬停「封印(印记形)」光标是否同步换,还是各留一件。⑤与「封印特效=施印瞬间特效 + 印记常显形态」两件的关系=合并出一件还是分两件。裁决写入 art-bible §3.2/§4.1 与两份美术清单条款后,才可出样张与终稿(终稿文件名沿用代码消费名 `seal_mark.png`,除非裁决换名)。
|
||||
**缺口**:还差封印印记图形设计讨论(法阵/锁链两案并列,禁代裁),须一并裁五点:①形(与危险格巢穴纹、奖励徽章剪影语言 art-bible §3.1 互辨);②色(法阵带发光/色相与 §4.1 封印黑不变槽冲突,须重登记判据);③尺寸遮挡(32×32 内「数字 > 小人 > 封印印记」栈位不侵入数字字形区);④金蜡封徽记与悬停「封印(印记形)」光标是否同步换;⑤与封印特效两件(施印瞬间/常显形态)合并或分立。裁决写入 art-bible §3.2/§4.1 与两份美术清单后方可出样张(终稿名沿用 `seal_mark.png`)。
|
||||
|
||||
**改动面**:文档+美术素材
|
||||
|
||||
@@ -299,9 +261,9 @@
|
||||
|
||||
#### 「生涯」界面——冒险中数据回看的唯一承接处(2026-10-04 登记,来源=会话提及)
|
||||
|
||||
**实况**:2026-10-04 用户裁决(UI 落码计划 P-C7)——冒险中不给数据回看:settlement_review_overlay(结算明细回看)与结算框「明细回看」钮在冒险中退役,战报带只留单行「上轮」;历史战报/结算明细的查看去向=新「生涯」界面(跨局汇总/历史冒险回看/图鉴承接)。来源=UI 重设计原型 v2 落码计划裁决记录(已退役,git 历史可查 §七)。**设计提纲已成文**:[systems/跨局循环/生涯.md](design/gdd/systems/跨局循环/生涯.md) v0.1 范围草案五节成文〔信息架构/承载内容清单/与既有界面关系/分期实装建议/待裁点〕,P0-P5 六裁点已全裁并写入文档〔P0甲 提纲落现行事实源 / P1甲 主菜单一级入口 / P2甲 每局一行摘要+cap 扩容 N+补用时埋点 / P3甲 敌人图鉴优先 / P4甲 局内不放入口+生涯零跳转 / P5甲 settlement_review 复活承接〕。**期一已落地**(2026-10-07 迭代 18 卡④实装批:生涯页六类九项+主菜单入口+终身计数域存档 v6,批末全量域闸全绿;实机人闸=体验验证清单⑲ 生涯页目检节)。剩余面=期二(历史回看/图鉴)与期三实装+P6 营地最近冒险条带去留(新发现待裁点,随提纲评审一并裁)。**迭代 19 卡②遗留件(2026-10-08 登记)**:settlement_review_overlay.gd 现态考证=未接线遗留件(全仓零引用,M9 结算框改版「明细回看」钮退役后遗留)——处置两途:①随生涯实装批按 P5 甲复活承接(重接线入生涯);②确认不再需要则正式退役删除文件;二选一归生涯实装批/用户裁。Alpha 出口裁决:期二、期三全部排 Beta——Alpha 只保留期一,不在 Alpha 内做生涯新内容。
|
||||
**实况**:2026-10-04 用户裁决(UI 落码计划 P-C7)——冒险中不给数据回看,历史战报/结算明细查看去向=新「生涯」界面;settlement_review_overlay 与「明细回看」钮在冒险中退役,战报带只留单行「上轮」。设计提纲已成文并全裁:[systems/跨局循环/生涯.md](design/gdd/systems/跨局循环/生涯.md) v0.1(P0–P5 六裁点已写入文档)。期一已落地(2026-10-07 迭代 18 卡④:六类九项+主菜单入口+终身计数域存档 v6)。遗留件:settlement_review_overlay.gd 未接线全仓零引用(迭代 19 卡②登记),处置两途=①随期二按 P5 甲复活承接/②确认不需要则退役删除,归生涯实装批/用户裁。
|
||||
|
||||
**缺口**:还差提纲用户评审收尾与 P6 营地最近冒险条带去留裁决——裁完才能立期二/期三实装卡(期一已交付,期二/三未预占排期)。本条排 Beta,不阻塞 Alpha;重启时再补 P6 与 N 终值。
|
||||
**缺口**:还差提纲用户评审收尾与 P6 营地最近冒险条带去留裁决——裁完才能立期二/期三实装卡(期一已交付);本条排 Beta,Alpha 只保留期一。
|
||||
|
||||
**改动面**:文档
|
||||
|
||||
@@ -311,10 +273,16 @@
|
||||
|
||||
#### EffectPort biz_fact 键 charge_layers——无属主数据游离出领域实体的处置(2026-11-02 登记,来源=审计发现)
|
||||
|
||||
**实况**:证据=reports/审计-全库架构审查-2026-10-29.md §3.1 B 类第 2 行(`CHARGE_LAYER_CAP` 自标「机制结构常量」)+`game/core/effect_port.gd:4`(biz_fact 闭面五键声明)+`game/core/action_economy.gd:14/37/203`(常量、`_charge_layers` 裸账本、transfer 分支唯一写点)。
|
||||
|
||||
需求卡片 reports/需求卡片-EffectPort蓄力层删键批-2026-11-04.md(2026-11-04,v1.0——写卡段代码级复核补全残留面 15 处与词表注释 3 处、transfer 形态无执行体考证、transfer=true 零测试考证;新增考证修正=effect_port_test 实测无 charge_layers 直接断言,V3 闭面组用 hp_ratio/battle_index 两对照行,故验收断言改为 V4「宿主 biz_fact 应答 null」新断言)。2026-11-02 架构审查讨论逐键核闭面:其余四键各有领域实体持有数据(hp_ratio=主角生命、dig_streak=战斗轮次事实、rider_tier 两键=每战复位的战斗事实束),唯 charge_layers 背后是 action_economy 裸账本——全仓零内容件注册「停手转蓄力」订阅(.tres 零命中),damage_controller 三处「厚积薄发/铁壁按层缩放」仅存于代码注释描述的假想订阅面,无任何表行或效果规格实际消费。用户裁决=删除方向,总判据「机制数据一律长在所属封装实体的内部属性(表行字段)里,全局常量与无主账本清零」。处置范围:①闭面五键收窄为四键(charge_layers 键退役、effect_port_test 对应断言同改——触及迭代 49 卡①刚立的端口契约,卡内申报契约改动);②`_charge_layers` 账本、`finish_round_stop` transfer 分支、`charge_full` 事件位、`CHARGE_LAYER_CAP` 常量随键退役;③蓄力周转专长(feats.tres swap_charge_layers 计数器,文档口径「成功刷新攒层」与实现一致)不受影响,写卡时核对其测试面无牵连。
|
||||
**实况**:证据=reports/审计-全库架构审查-2026-10-29.md §3.1 B 类第 2 行+`game/core/effect_port.gd:4`(biz_fact 闭面五键)+`game/core/action_economy.gd:14/37/203`(裸账本与唯一写点)。2026-11-02 架构审查逐键核闭面:其余四键各有领域实体持有数据,唯 charge_layers 背后是无主账本(全仓零订阅注册、零表行消费);用户裁决=删除方向,总判据「机制数据一律长在所属封装实体的内部属性(表行字段)里,全局常量与无主账本清零」。需求卡片 reports/需求卡片-EffectPort蓄力层删键批-2026-11-04.md(v1.0——处置范围、残留面考证与断言换代申报全载卡内)。
|
||||
|
||||
**改动面**:游戏代码
|
||||
|
||||
**状态**:已写卡
|
||||
|
||||
#### ci_watch 中间态误写终局红回执(2026-11-04 登记,来源=批次移交)
|
||||
|
||||
**实况**:2026-11-04 run 37(commit 536dc072)实证——ci-status.json 于 16:59:55 写入 verdict=red(note=远端CI state=failure, run 37),而该 run 实际 17:03:10 才以「Job succeeded」落定,现查 Gitea API 组合状态=success、run conclusion=success;回执与真值相反,下游按「红未修不开新批」被误阻塞(验收档与条目限长批开工时人工查 API 解封)。证据=job 日志结尾「Job succeeded」(Gitea API actions/jobs/38/logs)+commits/536dc072/status 现查 success。修复方向=轮询只认 run conclusion 落定后的终局态(pending/中间态不写盘继续等)。
|
||||
|
||||
**改动面**:工具代码
|
||||
|
||||
**状态**:待执行
|
||||
Reference in new issue
Block a user