workshop-tests.txt 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119
  1. > kangshifu-innovation-board@5.0.0 test:workshop
  2. > node --test server/test/application.test.mjs server/test/workshop.test.mjs server/test/board-actions.test.mjs server/test/identity-deploy.test.mjs server/test/dedup-deploy.test.mjs test/workshop*.test.js
  3. ✔ 公开合同不授权写表,公布实际动态入口和受限能力 (12.1665ms)
  4. ✔ 没有身份不能写入 (1.998ms)
  5. ✔ 服务凭据以 hash 验证,并核验过期时间和作用范围 (3.271ms)
  6. ✔ 真实三态:未知采集时间和未判断噪声保持未知 (4.6674ms)
  7. ✔ 同请求重放回执一致且不增加记录;不同内容同 requestId 拒绝 (4.7596ms)
  8. ✔ 跨批重导报告 unchanged,成功计数来自实际写入 (20.9437ms)
  9. ✔ 来源跨requestId复用,URL、模式和owner分开,原件字节变化保留 (97.4358ms)
  10. ✔ 分类按版本和代码保护唯一身份:相同定义复用,不同定义返回可处理冲突 (3.629ms)
  11. ✔ 跨批换业务键精确重复复用原始记录,并保留已有人工噪声状态 (3.3345ms)
  12. ✔ 不同批次来源下同平台对象同载荷复用,内容变化保留新快照 (5.0209ms)
  13. ✔ 相同短评不同上游对象不合并,缺ID不同索引不合并 (6.6787ms)
  14. ✔ 同源产品同字段复用,不同规格和价格时间不被名称合并 (5.8371ms)
  15. ✔ 只读查重不写记录,依赖待解析不宣称命中,提交仍独立复核 (13.2043ms)
  16. ✔ 来源不跨服务身份泄漏或合并,查重扫描未完成明确失败 (4.0904ms)
  17. ✔ 字段脏数据不静默删除;rawPayload 内同名字段原样保留 (1.7778ms)
  18. ✔ 业务键相同但原始载荷变化拒绝,不清空历史判断 (3.3508ms)
  19. ✔ 错误 Pointer 和不存在的来源会拒绝 (1.1079ms)
  20. ✔ 正文指纹保留空白、标点与负面评价;互动数不影响指纹 (0.7028ms)
  21. ✔ 回执使用 data.job 和逐条当前快照,分页游标不能跨任务 (1.6742ms)
  22. ✔ 人工噪声判断服务身份不能冒充,false 也必须真实保存 (3.6021ms)
  23. ✔ 过期版本和正文指纹不符不能更新噪声 (11.1204ms)
  24. ✔ 原始查询必须有研究口径;样例默认不进入正式样本 (1.7986ms)
  25. ✔ 不能查询账号密码、凭据、内部事件表 (1.4287ms)
  26. ✔ 伪造报告确认字段不能创建可信确认事件 (1.2346ms)
  27. ✔ 真实员工会话上下文才能建立事件,确认回执绑定 hash 与版本 (3.3044ms)
  28. ✔ 未配置立项门槛不伪报成功;知识库同步明确无需执行 (0.6985ms)
  29. ✔ 文件未真实完成传输不能登记成来源 (0.655ms)
  30. ✔ 本地夹具报告确认后入库、子类型保存、独立发布及卡片回读 (10.2522ms)
  31. ✔ 修改已确认报告的正文、类型或数据模式被拒绝 (3.3009ms)
  32. ✔ 报告看板在分页之前筛选 published,草稿不会挤空首页 (0.9272ms)
  33. ✔ 匿名三状态持久化,保留互链与旧决策,不产生项目或企业批准 (20.4084ms)
  34. ✔ 重复请求复用回执,改内容复用请求键、过期版本均不写入 (2.8184ms)
  35. ✔ 私有/归档/未知记录、越权字段与坏状态被拒绝,回执不泄露私有字段 (2.2546ms)
  36. ✔ 匿名评分校验与同署名覆盖,保留其他评分 (2.2891ms)
  37. ✔ 查重部署默认只读,定向五函数更新、结构不变且二次不写 (67.4558ms)
  38. ✔ 未知版本/撞名在写前停;中途失败恢复已更新代码 (58.2809ms)
  39. ✔ 并发更新不覆盖他人改动,其他文件按备份回退 (34.0755ms)
  40. ✔ 身份发布默认只读;仅更新固定两函数,复验结构权限且重放不写 (57.1936ms)
  41. ✔ 未知线上版本、损坏包在写前停止;中途失败恢复已更新函数 (28.2841ms)
  42. ✔ 失败回滚不覆盖其他维护者并发改动 (26.9394ms)
  43. ✔ 真实S1小结绑定两份官网来源,逐字引文支持公开课堂展示,不制造机会项目或正式确认 (42.5981ms)
  44. ✔ 真实官网归档资料入库:9个口味和逐字证据,复用品类,原文来源精确回读,不创建课堂报告 (190.9838ms)
  45. ✔ 新批次直接引用已有分类,保留产品证据依赖,不再次提交分类或修改旧范围说明 (62.2211ms)
  46. ✔ 真实批次来源/引文损坏写入前停止,拒绝把样例键或秘密塞入上下文 (50.3611ms)
  47. ✔ 专用查重执行器跨批次复用同一来源原料,不创建工作坊会话;保留两批审计 (56.3392ms)
  48. ✔ 查重第二次导入响应丢失时停住,保留首批编号和在途记录,不重试 (52.081ms)
  49. ✔ 查重预检编号不一致时禁止第二批写入;上下文拒绝密钥和旧任务键 (42.9855ms)
  50. ✔ 记录员工与王刚001,重放不新建会话,不建立假员工账号 (0.884ms)
  51. ✔ aibot 无姓名无企业ID自动登记后保存归属,机器人作用域不会进入公开看板 (81.404ms)
  52. ✔ 账号归属保存至私有元数据并继承到报告项目,公开看板不泄露;登记不等于认证 (7.3111ms)
  53. ✔ 同名员工不同渠道身份不串会话,改参数重用 requestId 被拒 (1.5866ms)
  54. ✔ 新数字人和同名新员工先登记,再经 Skill 保存正确归属并公开脱敏 (161.3991ms)
  55. ✔ 课堂报告/机会保留 sample,保存有归属且原子重放不重复 (1.8768ms)
  56. ✔ 真实项目、阶段门槛、方案版本与完整事件可回读 (8.5812ms)
  57. ✔ 其他服务/学员/小组不能写入别人的项目 (2.3205ms)
  58. ✔ 公开分页无需登录,含课堂样例但不泄露私密会话/普通原文/未发布正式稿 (2.1614ms)
  59. ✔ 完整验收任务从已登记aibot员工走S1-S5、检索选卡、资料依赖、卡住和新品方案,公开回读一致 (89.9591ms)
  60. ✔ 公开操作只发一次,不带身份密钥;业务失败与未知写结果均不重试 (5.192ms)
  61. ✔ 公开查询无需身份凭据,分页合并,不用 REST count (1.6647ms)
  62. ✔ 新版阶段/项目 Pointer 与 Agent 归属进入既有模型,显式卡住可见 (4.599ms)
  63. ✔ 同名学员不同稳定键不会合并为一个人 (18.9846ms)
  64. ✔ 同组同名学员仍分开,并将项目归给正确参与人 (0.7904ms)
  65. ✔ Skill 调用固定业务函数,不接受任意命令;请求沿用指定稳定键 (2.451ms)
  66. ✔ 结构化产品/原料导入解析真实依赖并核对逐项回执 (2.8536ms)
  67. ✔ 网络结果不明确时不自动重试;API 业务错误阻止成功 (1.2442ms)
  68. ✔ 查重可独立只读调用,无查重合同导入在任何写入前停 (5.0264ms)
  69. ✔ 导入中途回读失败,保留来源、已成功对象及当前任务编号 (1.4057ms)
  70. ✔ 加密入口新命令仍逐次解密并核对新脚本指纹,保留旧入口 (8.5668ms)
  71. ✔ 新 Agent 自助登记生成通用稳定 UUID、同资料重用,密钥字段拒绝 (202.0806ms)
  72. ✔ 真实 Agent ID 生成可校验的账号摘要;稳定 ID 冲突拒绝 (83.8698ms)
  73. ✔ 可信来源必须有稳定 ID,篡改 UUID 档案的来源不能冒充运行配置 (91.5694ms)
  74. ✔ 任意数量同角色数字人可共存,旧档案迁入不覆盖原件,CLI仅输出摘要 (183.6705ms)
  75. ✔ 新员工先登记;稳定账号自动复用,无账号同名需人工确认 (213.6496ms)
  76. ✔ workshop-start 必须引用登记的员工和 Agent 档案,并注入字段快照 (64.469ms)
  77. ✔ 旧服务不支持身份版本时会话写入前停止 (57.9384ms)
  78. ✔ 只读回读脱敏账号与会话键,公开producer不携带账号值 (47.8723ms)
  79. ✔ aibot 无企业ID或姓名也能按发送者自动登记,单聊换群不改变员工键 (64.649ms)
  80. ✔ 同一群里不同发送者分开;跨机器人标识不擅自合并 (212.792ms)
  81. ✔ aibot 缺发送者/机器人/群会话ID或机器人不匹配在登记前停止 (49.6896ms)
  82. ✔ aibot 旧文件 CLI 已关闭;旧合同与错机器人阻止会话 (124.66ms)
  83. ✔ 通用员工 JSON 不能替代通道工具;内部登记复用规范键且拒绝错实例与运维角色 (161.0378ms)
  84. ✔ 归一化保留真实任务系列、版本、课题和模式,非法版本保持未知 (4.7586ms)
  85. ✔ 只按有正文的明确章节或任务定位;标题和成果类型不会把运行记录当提案 (1.5306ms)
  86. ✔ 明确标为方法材料的配置卡不因课表环节被计作核心市场报告 (3.4277ms)
  87. ✔ 默认区分真实资料、样例、人工和未知,不根据标题猜模式 (23.0576ms)
  88. ✔ 共享稳定身份决定分组;同名学员各自归属,失效组不按原快照猜 (1.393ms)
  89. ✔ 同一稳定课题、作者、系列选择最新版本;同版本冲突及未知版本不隐藏 (1.3028ms)
  90. ✔ 缺系列或稳定身份时保留每条记录,不按相同标题合并 (0.6261ms)
  91. ✔ 课题、小组、阶段、报告分类和搜索可共同筛选,分类统计落在个人报告上 (0.8536ms)
  92. ✔ 成果目录按小组、成员、报告展开,并保留当前筛选下没有报告的成员 (1.2992ms)
  93. ✔ 分类按钮筛选的是组员自己的报告,分类缺失的报告仍归入未归类 (1.614ms)
  94. ✔ 成员姓名搜索保留零报告成员,报告搜索只显示命中的作者和小组 (1.8386ms)
  95. ✔ 评估、运行记录与概念提案分开,同时都可从总清单打开 (4.4235ms)
  96. ✔ 默认预检不创建文件;实际更新九文件,首页保持,重复运行不写入 (239.1249ms)
  97. ✔ 未知目标内容、首页不符、坏包及超出白名单均在写入之前拒绝 (145.7906ms)
  98. ✔ 中途写入失败恢复已改文件,只清理本次新建文件,保留完整备份 (86.7703ms)
  99. ✔ 已发布文件被其他人并发改动时,回滚保留外部版本并报告未完全恢复 (70.2302ms)
  100. ✔ Skill课表13环节的每种报告均经保存入口、精确回读、公开分页、正式分类和全文模型保留正文 (107.5742ms)
  101. ✔ 35位组员共用同一智能体,5组各人的同系列报告和版本不混合,报告分类与组员归属对应 (313.9567ms)
  102. ✔ 七类核心交付物可承载在正式报告类型中,但章节导航与报告分类是两个维度 (7.1789ms)
  103. ✔ 七类新报告经实际Skill保存、精确回读、公开读取校验,个人七项提交状态与分类一致 (39.924ms)
  104. ✔ HTML与图片随报告原子保存、文件字节回读、公开预览关联;直接匿名取私有文件被拒 (12.9635ms)
  105. ✔ 附件内容损坏、伪造回执、跨身份取文件、空交付物均拒绝,失败不遗留报告或文件 (6.6452ms)
  106. ✔ 仅有boardVisible回执不算验证完成;回读不符保留编号且不重试保存,旧服务在写前停止 (4.3564ms)
  107. ✔ 个人交付核对按课题、资料模式、最新版本隔离;草稿不计已交,缺正文、旧成果待定位均明示 (11.7402ms)
  108. ✔ 报告中心仅计成果报告;旧原文可读、无正文不伪造,独立机会及资料分开统计 (1.2589ms)
  109. ✔ 已有上传回执可关联报告;跨身份回执及超限附件在写入前拒绝 (5.29ms)
  110. ℹ tests 107
  111. ℹ suites 0
  112. ℹ pass 107
  113. ℹ fail 0
  114. ℹ cancelled 0
  115. ℹ skipped 0
  116. ℹ todo 0
  117. ℹ duration_ms 1976.4096