test(admin): enforce direct action contracts
Independent Staging Quality Gate / validate (push) Successful in 12m27s
Independent Staging Quality Gate / publish (push) Successful in 9m35s

This commit is contained in:
Jesse_Chen
2026-08-16 18:33:37 +08:00
parent ab238bf55f
commit 9e725babd9
2 changed files with 4 additions and 2 deletions
@@ -68,7 +68,7 @@ export default function UsersPage() {
}),
},
);
message.success(`已重置 ${user.email},登录身份、管理员角色积分保持不变`);
message.success(`已重置 ${user.email},登录身份、管理员角色积分及账务审计记录会保留`);
setRevealed((current) => {
const next = { ...current };
delete next[user.id];
@@ -71,7 +71,9 @@ test("model mutations omit client reasons while the server keeps fixed audit rea
assert.doesNotMatch(component, /reauthPermission=[^\n]*models\.|验证并(?:保存|获取)/);
assert.match(component, /open=\{providerOpen\} okText="保存"[\s\S]*onFinish=\{saveProvider\}/);
assert.doesNotMatch(component, /继续验证/);
assert.match(component, /<Modal[\s\S]*open=\{Boolean\(versionAction\)\}[\s\S]*onOk=\{\(\) => void submitVersionAction\(\)\}/);
assert.doesNotMatch(component, /versionAction|submitVersionAction/);
assert.match(component, /onClick=\{\(\) => void runVersionAction\("publish", item\)\}>发布<\/Button>/);
assert.match(component, /onClick=\{\(\) => void runVersionAction\("rollback", item\)\}>回滚到此版<\/Button>/);
assert.doesNotMatch(route, /reason:\s*z\.string/);
for (const reason of ["保存模型供应商", "保存模型草稿", "发布模型版本", "回滚模型版本"]) {