full-flow-static-measurements.json 6.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157
  1. {
  2. "schema": "ksf.workshop-full-flow-local-review.v1",
  3. "checkedAt": "2026-11-08T21:19:01.032455+08:00",
  4. "reviewScope": "course-mapping-business-usefulness-static-contract-and-local-fixture-tests",
  5. "moduleIds": [
  6. "D1-01",
  7. "D1-02",
  8. "D1-03",
  9. "D1-04",
  10. "D1-N",
  11. "D2-01",
  12. "D2-02",
  13. "D2-03",
  14. "D2-04",
  15. "D2-05",
  16. "D2-06",
  17. "D2-07",
  18. "D2-08"
  19. ],
  20. "checks": {
  21. "localManifestMatched": 30,
  22. "localManifestFailed": 0,
  23. "noUnlistedSkillFiles": true,
  24. "resolvedMarkdownFileLinks": 224,
  25. "existingSupportingFilesUnchanged": 11,
  26. "originalExportManifestMatched": 15,
  27. "supersededLocalDraftArchiveMatched": 9,
  28. "baselineOperationalSectionsPreserved": [
  29. "执行入口",
  30. "研究分析与 VOC 采集前先查库",
  31. "全部表字段与结构化入库",
  32. "员工与 Agent 归属",
  33. "数据与确认边界",
  34. "采集资料查重",
  35. "汇报"
  36. ],
  37. "skillQuickValidationPassed": true,
  38. "gitDiffCheckPassed": true,
  39. "sourcePptFilesUnchanged": true,
  40. "receivedArchiveOriginalPreserved": true,
  41. "fullFlowCourseAndBusinessUseManuallyReviewed": true,
  42. "fullFlowManualReviewCases": 12,
  43. "needsResearchPriorityDefined": true,
  44. "sameTopicContinuityAndChangeImpactDefined": true,
  45. "decisionFirstReportAndActualProgressIndexDefined": true,
  46. "researchToBusinessQuoteBridgeMatchesExistingCaller": true,
  47. "plainTextUrlDisplayLimitationDocumented": true,
  48. "reusedCodingAndSharedIndustryBasisDefined": true,
  49. "offlineWorkshopAndReportTestsPassed": 39,
  50. "offlineWorkshopAndReportTestsFailed": 0
  51. },
  52. "sourceScreenshots": [
  53. {
  54. "path": "C:\\Users\\JSHY\\AppData\\Local\\Temp\\codex-clipboard-1b50739c-b1bc-47d7-9096-cdb9fbfd2c68.png",
  55. "bytes": 117178,
  56. "sha256": "5fb8444c4c797cd859c8ac19a6653acb3f637556f705f7ac4cb56144c489a7c1"
  57. },
  58. {
  59. "path": "C:\\Users\\JSHY\\AppData\\Local\\Temp\\codex-clipboard-d2493455-efca-4a0a-9d72-5e700dd08f48.png",
  60. "bytes": 176361,
  61. "sha256": "6273320d3552ece56c8edc66967591e20ddebc10e9e8773349516822fa9772de"
  62. }
  63. ],
  64. "contractFingerprints": {
  65. "server/src/workshop.mjs": "5969f4f522b6668adfc59143f48f0fe8f90d6c40de7cc87ad1b4a03635e80eeb",
  66. "skills/ksf-workshop-runtime/scripts/ksf-workshop.mjs": "7a04eb22d3429cdced23513717f36594f639539738994d45712a8bea738100a1",
  67. "src/pages/view-report.js": "dfda037af5817b3eb39b4675bab931574bdae00bc9e951634d345a5057eefe86",
  68. "server/src/core.mjs": "5396f33980557b5668a53cba9c14265e83d51a4f25128029cdb6203712956474"
  69. },
  70. "manualReviewCases": [
  71. {
  72. "id": "F01",
  73. "situation": "同组连续完成多段,已有课题/称呼/成果",
  74. "requiredDecision": "沿同一上下文接续,不反复问上传、重建会话或从零研究;已覆盖"
  75. },
  76. {
  77. "id": "F02",
  78. "situation": "只有部分品类样本,没有大盘和跨期",
  79. "requiredDecision": "交覆盖内图谱/静态比较,保留趋势缺口;不报市场份额;已覆盖"
  80. },
  81. {
  82. "id": "F03",
  83. "situation": "资料只回答部分假设,第二模型不可用",
  84. "requiredDecision": "验收合格集合继续,未回应/双模型待执行分别标,不造通过;已覆盖"
  85. },
  86. {
  87. "id": "F04",
  88. "situation": "高频需求已有替代,低频场景却影响任务完成",
  89. "requiredDecision": "分清频次、重要性及证据,给有理由的研究先后而非按词频排队;已补齐"
  90. },
  91. {
  92. "id": "F05",
  93. "situation": "无KANO问卷、第一提及调查或交易漏斗",
  94. "requiredDecision": "KANO保留建议/未知,四指标各列缺口,不伪造系数/转化;已覆盖"
  95. },
  96. {
  97. "id": "F06",
  98. "situation": "研究原句存在,但无业务来源ID",
  99. "requiredDecision": "查复用或按真实证据桥接并回读,不伪造Pointer、不用报告自身原文证明外部事实;已补齐"
  100. },
  101. {
  102. "id": "F07",
  103. "situation": "同一原件支撑用户和场景,同赛道有多张卡",
  104. "requiredDecision": "来源共用不当独立证据;行业基础复用,每卡解释特有关系/约束;已覆盖"
  105. },
  106. {
  107. "id": "F08",
  108. "situation": "排序后发现错配或分母错误",
  109. "requiredDecision": "回核受影响需求/候选/初排与V2/V3,保留历史和修订依据;已补齐"
  110. },
  111. {
  112. "id": "F09",
  113. "situation": "厂价/成本未知、法规正文缺失或产线未回复",
  114. "requiredDecision": "可交条件式V2及补证,不误淘汰或宣布可量产/合规;已覆盖"
  115. },
  116. {
  117. "id": "F10",
  118. "situation": "未建项目就要保存买点报告,随后需独立方案",
  119. "requiredDecision": "报告先按合同保存,选定方向后合法建立/推进项目并另存连续方案版本;已覆盖"
  120. },
  121. {
  122. "id": "F11",
  123. "situation": "原文反映嫌咸,拟用低钠卖点;没有实际质询",
  124. "requiredDecision": "需求不代产品效果,文案留验证限制;质询标待反馈;已覆盖"
  125. },
  126. {
  127. "id": "F12",
  128. "situation": "保存回执丢失或页面只显示普通URL",
  129. "requiredDecision": "查原请求/编号,不重建;编号回读/公开投影/浏览器分核,消息给真实可点击链接;已覆盖"
  130. }
  131. ],
  132. "offlineTests": {
  133. "command": "node --test --test-reporter=spec --test-reporter-destination=docs/workshop-skill-design-20261108/full-flow-offline-tests.txt server/test/workshop.test.mjs test/workshop-data.test.js test/report.test.js",
  134. "exitCode": 0,
  135. "tests": 39,
  136. "passed": 39,
  137. "failed": 0,
  138. "skipped": 0,
  139. "localMemoryAndMockCallsOnly": true,
  140. "log": "full-flow-offline-tests.txt",
  141. "logSha256": "48ebef2049855804a42e919f9272b2e1321a63a83d16130b5f2718209ffeff09"
  142. },
  143. "skillSha256": "958a8265cd8311d3a6f1337a3e71f864ad92a24c5c0f75beff1891128d4c6995",
  144. "manifestSha256": "3340c285c08dd5bd1546a23f99badb5e1e48d11fc34cad6449e7ac2ddd1414db",
  145. "localCourseDesignComplete": true,
  146. "agentBehaviorVerified": false,
  147. "originalInstanceRuntimeVerified": false,
  148. "actualBusinessWriteVerified": false,
  149. "browserPresentationVerified": false,
  150. "productionFilesModified": false,
  151. "businessDatabaseWrites": 0,
  152. "paidCalls": 0,
  153. "upstreamCalls": 0,
  154. "sent": false,
  155. "deployed": false,
  156. "forwardRequired": false
  157. }