dsh-standards 1.0.0 → 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (469) hide show
  1. package/40-checker/README.md +2 -2
  2. package/40-checker/src/cli.mjs +1 -1
  3. package/40-checker/src/manifest.mjs +17 -0
  4. package/40-checker/src/semver.mjs +77 -11
  5. package/CHANGELOG.md +24 -0
  6. package/NOTICE +14 -0
  7. package/README.md +6 -6
  8. package/bin/dsh-standards.mjs +1 -0
  9. package/package.json +14 -5
  10. package/40-checker/.github/workflows/plugin-verify.yml +0 -70
  11. package/40-checker/results/boost/REPORT.md +0 -304
  12. package/40-checker/results/boost/lev12458.json +0 -1747
  13. package/40-checker/results/client/README.md +0 -16
  14. package/40-checker/results/entry/18/DDDMUC__dsh-free-search.json +0 -381
  15. package/40-checker/results/entry/18/DDDMUC__dsh-free-search.runtime.json +0 -34
  16. package/40-checker/results/entry/18/Ebony-Vinyl__dsh-our-free-model.json +0 -361
  17. package/40-checker/results/entry/18/Ebony-Vinyl__dsh-our-free-model.runtime.json +0 -34
  18. package/40-checker/results/entry/18/README.md +0 -24
  19. package/40-checker/results/entry/18/RUNTIME.md +0 -18
  20. package/40-checker/results/entry/18/SeaOf0__dsh-redteam-model.json +0 -391
  21. package/40-checker/results/entry/18/YuJunZhiXue__dsh-purge.json +0 -432
  22. package/40-checker/results/entry/18/ci-diet.json +0 -365
  23. package/40-checker/results/entry/18/ci-diet.runtime-attempt.json +0 -38
  24. package/40-checker/results/entry/18/daily-log.json +0 -357
  25. package/40-checker/results/entry/18/daily-log.runtime.json +0 -519
  26. package/40-checker/results/entry/18/fullbase/ATTRIBUTION.md +0 -29
  27. package/40-checker/results/entry/18/fullbase/DDDMUC__dsh-free-search.json +0 -99
  28. package/40-checker/results/entry/18/fullbase/Ebony-Vinyl__dsh-our-free-model.json +0 -95
  29. package/40-checker/results/entry/18/fullbase/REPORT.md +0 -261
  30. package/40-checker/results/entry/18/fullbase/SeaOf0__dsh-redteam-model.json +0 -144
  31. package/40-checker/results/entry/18/fullbase/YuJunZhiXue__dsh-purge.json +0 -106
  32. package/40-checker/results/entry/18/fullbase/ci-diet.json +0 -99
  33. package/40-checker/results/entry/18/fullbase/daily-log.json +0 -94
  34. package/40-checker/results/entry/18/fullbase/howmp__dsh-pentest.json +0 -104
  35. package/40-checker/results/entry/18/fullbase/kingcharleslzy-ai__dsh-purge.json +0 -143
  36. package/40-checker/results/entry/18/fullbase/liguobao__ds-harness-remote.json +0 -134
  37. package/40-checker/results/entry/18/fullbase/mmparko__dsh-purge.json +0 -138
  38. package/40-checker/results/entry/18/fullbase/project-memory.json +0 -108
  39. package/40-checker/results/entry/18/fullbase/qiushi.json +0 -94
  40. package/40-checker/results/entry/18/fullbase/shaobeichen__dsh-pocket.json +0 -94
  41. package/40-checker/results/entry/18/fullbase/status-rotator.json +0 -94
  42. package/40-checker/results/entry/18/fullbase/summary.json +0 -297
  43. package/40-checker/results/entry/18/fullbase/telemetry.json +0 -94
  44. package/40-checker/results/entry/18/fullbase/ui-auth.json +0 -94
  45. package/40-checker/results/entry/18/fullbase/verification.json +0 -94
  46. package/40-checker/results/entry/18/fullbase/ysr666__dsh-vision-router.json +0 -106
  47. package/40-checker/results/entry/18/howmp__dsh-pentest.json +0 -361
  48. package/40-checker/results/entry/18/kingcharleslzy-ai__dsh-purge.json +0 -411
  49. package/40-checker/results/entry/18/liguobao__ds-harness-remote.json +0 -379
  50. package/40-checker/results/entry/18/mmparko__dsh-purge.json +0 -441
  51. package/40-checker/results/entry/18/project-memory.json +0 -361
  52. package/40-checker/results/entry/18/project-memory.runtime.json +0 -519
  53. package/40-checker/results/entry/18/qiushi.json +0 -353
  54. package/40-checker/results/entry/18/qiushi.runtime.json +0 -519
  55. package/40-checker/results/entry/18/realweb/REPORT.md +0 -73
  56. package/40-checker/results/entry/18/realweb/SeaOf0__dsh-redteam-model.json +0 -104
  57. package/40-checker/results/entry/18/realweb/YuJunZhiXue__dsh-purge.json +0 -64
  58. package/40-checker/results/entry/18/realweb/howmp__dsh-pentest.json +0 -65
  59. package/40-checker/results/entry/18/realweb/kingcharleslzy-ai__dsh-purge.json +0 -75
  60. package/40-checker/results/entry/18/realweb/mmparko__dsh-purge.json +0 -70
  61. package/40-checker/results/entry/18/realweb/shaobeichen__dsh-pocket.json +0 -56
  62. package/40-checker/results/entry/18/realweb/summary.json +0 -196
  63. package/40-checker/results/entry/18/realweb/ui-auth.json +0 -56
  64. package/40-checker/results/entry/18/realweb/ysr666__dsh-vision-router.json +0 -61
  65. package/40-checker/results/entry/18/richbase/REPORT.md +0 -70
  66. package/40-checker/results/entry/18/richbase/SeaOf0__dsh-redteam-model.json +0 -61
  67. package/40-checker/results/entry/18/richbase/SeaOf0__dsh-redteam-model.log +0 -38
  68. package/40-checker/results/entry/18/shaobeichen__dsh-pocket.json +0 -363
  69. package/40-checker/results/entry/18/status-rotator.json +0 -362
  70. package/40-checker/results/entry/18/status-rotator.runtime.json +0 -519
  71. package/40-checker/results/entry/18/summary.json +0 -266
  72. package/40-checker/results/entry/18/targetonly/DDDMUC__dsh-free-search.json +0 -34
  73. package/40-checker/results/entry/18/targetonly/Ebony-Vinyl__dsh-our-free-model.json +0 -34
  74. package/40-checker/results/entry/18/targetonly/SeaOf0__dsh-redteam-model.json +0 -84
  75. package/40-checker/results/entry/18/targetonly/YuJunZhiXue__dsh-purge.json +0 -52
  76. package/40-checker/results/entry/18/targetonly/ci-diet.json +0 -34
  77. package/40-checker/results/entry/18/targetonly/daily-log.json +0 -34
  78. package/40-checker/results/entry/18/targetonly/howmp__dsh-pentest.json +0 -46
  79. package/40-checker/results/entry/18/targetonly/kingcharleslzy-ai__dsh-purge.json +0 -61
  80. package/40-checker/results/entry/18/targetonly/liguobao__ds-harness-remote.json +0 -39
  81. package/40-checker/results/entry/18/targetonly/mmparko__dsh-purge.json +0 -57
  82. package/40-checker/results/entry/18/targetonly/project-memory.json +0 -34
  83. package/40-checker/results/entry/18/targetonly/qiushi.json +0 -34
  84. package/40-checker/results/entry/18/targetonly/shaobeichen__dsh-pocket.json +0 -34
  85. package/40-checker/results/entry/18/targetonly/status-rotator.json +0 -34
  86. package/40-checker/results/entry/18/targetonly/summary.json +0 -133
  87. package/40-checker/results/entry/18/targetonly/telemetry.json +0 -34
  88. package/40-checker/results/entry/18/targetonly/ui-auth.json +0 -34
  89. package/40-checker/results/entry/18/targetonly/verification.json +0 -34
  90. package/40-checker/results/entry/18/targetonly/ysr666__dsh-vision-router.json +0 -43
  91. package/40-checker/results/entry/18/telemetry.json +0 -349
  92. package/40-checker/results/entry/18/ui-auth.json +0 -369
  93. package/40-checker/results/entry/18/verification.json +0 -358
  94. package/40-checker/results/entry/18/ysr666__dsh-vision-router.json +0 -409
  95. package/40-checker/results/fixtures/bad.json +0 -347
  96. package/40-checker/results/fixtures/bundle.json +0 -378
  97. package/40-checker/results/fixtures/good-listing.json +0 -382
  98. package/40-checker/results/fixtures/good-static.json +0 -322
  99. package/40-checker/results/fixtures/good.json +0 -375
  100. package/40-checker/results/fixtures/good.sarif +0 -274
  101. package/40-checker/results/flow/README.md +0 -19
  102. package/40-checker/results/flow/j3-j7-fixture.json +0 -51
  103. package/40-checker/results/flow/j5-j8-client-missing.json +0 -45
  104. package/40-checker/results/flow/j5-j8-good.json +0 -45
  105. package/40-checker/results/flow/journey-fixture-bundle.json +0 -90
  106. package/40-checker/results/flow/journey-fixture-j1-j2-j4-j6.json +0 -107
  107. package/40-checker/results/flow/real/DDDMUC__dsh-free-search.json +0 -297
  108. package/40-checker/results/flow/real/REPORT.md +0 -335
  109. package/40-checker/results/flow/real/YuJunZhiXue__dsh-purge.json +0 -317
  110. package/40-checker/results/flow/real/ci-diet.json +0 -351
  111. package/40-checker/results/flow/real/daily-log.json +0 -286
  112. package/40-checker/results/flow/real/index.json +0 -325
  113. package/40-checker/results/flow/real/project-memory.json +0 -290
  114. package/40-checker/results/flow/real/qiushi.json +0 -277
  115. package/40-checker/results/flow/real/status-rotator.json +0 -275
  116. package/40-checker/results/flow/real/telemetry.json +0 -178
  117. package/40-checker/results/flow/real/ui-auth.json +0 -288
  118. package/40-checker/results/flow/real/verification.json +0 -265
  119. package/40-checker/results/governance/co-maintainer-packet.md +0 -85
  120. package/40-checker/results/l1/ci-diet.json +0 -406
  121. package/40-checker/results/l1/npm-dsh-telemetry-redactor-0.1.0.json +0 -390
  122. package/40-checker/results/l1/npm-dsh-verification-receipt-0.1.0.json +0 -406
  123. package/40-checker/results/l1/npm-qiushi-dsh-evidence-audit-0.1.0.json +0 -394
  124. package/40-checker/results/l1/npm-zzerx-dsh-plugin-daily-log-0.4.3.json +0 -405
  125. package/40-checker/results/l1/project-memory.json +0 -402
  126. package/40-checker/results/l1/source-DDDMUC__dsh-free-search.json +0 -422
  127. package/40-checker/results/l1/source-Ebony-Vinyl__dsh-our-free-model.json +0 -421
  128. package/40-checker/results/l1/source-SeaOf0__dsh-redteam-model.json +0 -432
  129. package/40-checker/results/l1/source-YuJunZhiXue__dsh-purge.json +0 -473
  130. package/40-checker/results/l1/source-howmp__dsh-pentest.json +0 -402
  131. package/40-checker/results/l1/source-kingcharleslzy-ai__dsh-purge.json +0 -452
  132. package/40-checker/results/l1/source-liguobao__ds-harness-remote.json +0 -420
  133. package/40-checker/results/l1/source-mmparko__dsh-purge.json +0 -482
  134. package/40-checker/results/l1/source-shaobeichen__dsh-pocket.json +0 -404
  135. package/40-checker/results/l1/source-ysr666__dsh-vision-router.json +0 -384
  136. package/40-checker/results/l1/status-rotator.json +0 -403
  137. package/40-checker/results/l1/ui-auth.json +0 -429
  138. package/40-checker/results/l1/ysr666__dsh-vision-router.published.json +0 -384
  139. package/40-checker/results/lev3/REPORT.md +0 -342
  140. package/40-checker/results/lev3/lev3.json +0 -4835
  141. package/40-checker/results/lev6/REPORT.md +0 -460
  142. package/40-checker/results/lev6/capture-sample.json +0 -241
  143. package/40-checker/results/lev6/capture.jsonl +0 -4
  144. package/40-checker/results/lev6/lev6.json +0 -245
  145. package/40-checker/results/lev6/replication-r1.json +0 -245
  146. package/40-checker/results/levels/README.md +0 -16
  147. package/40-checker/results/levels/dsh-plugin-doctor.json +0 -141
  148. package/40-checker/results/levels/dsh-plugin-guide.json +0 -136
  149. package/40-checker/results/m1/dsh-ci-diet-0.5.2.json +0 -352
  150. package/40-checker/results/m1/dsh-status-rotator-0.38.0.json +0 -349
  151. package/40-checker/results/m1/dsh-telemetry-redactor-0.1.0.json +0 -336
  152. package/40-checker/results/m1/dsh-ui-auth-0.7.1.json +0 -356
  153. package/40-checker/results/m1/dsh-verification-receipt-0.1.0.json +0 -344
  154. package/40-checker/results/m1/index-level.json +0 -13
  155. package/40-checker/results/m1/levels.json +0 -72100
  156. package/40-checker/results/m1/qiushi-dsh-evidence-audit-0.1.0.json +0 -339
  157. package/40-checker/results/m1/yolk_vat-y-dsh-project-memory-0.6.7.json +0 -348
  158. package/40-checker/results/m1/zzerx-dsh-plugin-daily-log-0.4.3.json +0 -344
  159. package/40-checker/results/m2/dsh-ci-diet.json +0 -421
  160. package/40-checker/results/m2/dsh-ci-diet.unshare-landlock.json +0 -424
  161. package/40-checker/results/m2/dsh-ci-diet.unshare.json +0 -423
  162. package/40-checker/results/m2/fixture-bundle.image.json +0 -404
  163. package/40-checker/results/m2/fixture-bundle.json +0 -392
  164. package/40-checker/results/m2/fixture-bundle.landlock.json +0 -396
  165. package/40-checker/results/m2/fixture-bundle.unshare.json +0 -395
  166. package/40-checker/results/m2/fs-write.json +0 -338
  167. package/40-checker/results/m2/hang.json +0 -31
  168. package/40-checker/results/m2/hang.unshare-landlock.json +0 -34
  169. package/40-checker/results/m2/hang.unshare.json +0 -33
  170. package/40-checker/results/m2/project-memory.json +0 -417
  171. package/40-checker/results/m2/status-rotator.json +0 -418
  172. package/40-checker/results/m2/ui-auth.json +0 -444
  173. package/40-checker/results/negative/bad-entry.json +0 -345
  174. package/40-checker/results/negative/no-entry.json +0 -345
  175. package/40-checker/results/negative/no-patch.json +0 -344
  176. package/40-checker/results/negative/root-missing.json +0 -344
  177. package/40-checker/results/negative/root-missing.runtime.json +0 -30
  178. package/40-checker/results/negative/summary.json +0 -51
  179. package/40-checker/results/negative/workspace.json +0 -344
  180. package/40-checker/results/patched/Ebony-Vinyl__dsh-our-free-model.json +0 -334
  181. package/40-checker/results/patched/Ebony-Vinyl__dsh-our-free-model.overlay.json +0 -335
  182. package/40-checker/results/patched/SeaOf0__dsh-redteam-model.json +0 -315
  183. package/40-checker/results/patched/SeaOf0__dsh-redteam-model.overlay.json +0 -316
  184. package/40-checker/results/patched/mmparko__dsh-purge.json +0 -357
  185. package/40-checker/results/patched/mmparko__dsh-purge.overlay.json +0 -358
  186. package/40-checker/results/patched/shaobeichen__dsh-pocket.json +0 -315
  187. package/40-checker/results/patched/shaobeichen__dsh-pocket.overlay.json +0 -316
  188. package/40-checker/results/real/DDDMUC__dsh-free-search.json +0 -344
  189. package/40-checker/results/real/Ebony-Vinyl__dsh-our-free-model.json +0 -343
  190. package/40-checker/results/real/SeaOf0__dsh-redteam-model.json +0 -354
  191. package/40-checker/results/real/YuJunZhiXue__dsh-purge.json +0 -395
  192. package/40-checker/results/real/howmp__dsh-pentest.json +0 -324
  193. package/40-checker/results/real/kingcharleslzy-ai__dsh-purge.json +0 -374
  194. package/40-checker/results/real/liguobao__ds-harness-remote.json +0 -342
  195. package/40-checker/results/real/mmparko__dsh-purge.json +0 -404
  196. package/40-checker/results/real/shaobeichen__dsh-pocket.json +0 -326
  197. package/40-checker/results/real/ysr666__dsh-vision-router.json +0 -372
  198. package/40-checker/results/real/ysr666__dsh-vision-router.listing.json +0 -378
  199. package/40-checker/results/round-robin/compare.json +0 -52
  200. package/40-checker/results/round-robin/runner-a.json +0 -9
  201. package/40-checker/results/round-robin/runner-b.json +0 -9
  202. package/40-checker/results/sample20/123dbl__dsh-side-session.json +0 -344
  203. package/40-checker/results/sample20/173787247__dsh-wsl-dns.json +0 -360
  204. package/40-checker/results/sample20/863683348__dsh-insight.json +0 -375
  205. package/40-checker/results/sample20/Ansellwan__DSH-Custom-Wallpaper.json +0 -344
  206. package/40-checker/results/sample20/Jamailar__beav-deepseek-harness.json +0 -341
  207. package/40-checker/results/sample20/ManoloRemiddi__DSH-Metafolder-Plugin.json +0 -344
  208. package/40-checker/results/sample20/NEAZ71eve__dsh-tool-github.json +0 -384
  209. package/40-checker/results/sample20/README.md +0 -3
  210. package/40-checker/results/sample20/RINGOLINK__dsh-desktop-shell.json +0 -352
  211. package/40-checker/results/sample20/Zxznb666__dsh-qoder-cn-subagent.json +0 -349
  212. package/40-checker/results/sample20/agent-mobile__dsh-mobile-gateway.json +0 -353
  213. package/40-checker/results/sample20/fangqiing__dsh-knowledge-lite.json +0 -359
  214. package/40-checker/results/sample20/fzy0517__deepseek-harness-session-cleaner.json +0 -344
  215. package/40-checker/results/sample20/gjy1992__dsh-diagram.json +0 -350
  216. package/40-checker/results/sample20/mrme000m__dsh-prime-orchestrator.json +0 -414
  217. package/40-checker/results/sample20/redstonedust__dsh-solidworks-copilot.json +0 -362
  218. package/40-checker/results/sample20/summary.json +0 -234
  219. package/40-checker/results/sample20/w2112515__dsh-remote-host.json +0 -344
  220. package/40-checker/results/sample20/wkfedor__deepseek-harness-voice-input.json +0 -350
  221. package/40-checker/results/sample20/xfgil__dsh-hot-reloader.json +0 -344
  222. package/40-checker/results/sample20/yizhiyizhi0128__dsh-peak-scheduler.json +0 -360
  223. package/40-checker/results/sample20-ci/123dbl__dsh-side-session.json +0 -344
  224. package/40-checker/results/sample20-ci/173787247__dsh-wsl-dns.json +0 -360
  225. package/40-checker/results/sample20-ci/863683348__dsh-insight.json +0 -375
  226. package/40-checker/results/sample20-ci/Ansellwan__DSH-Custom-Wallpaper.json +0 -344
  227. package/40-checker/results/sample20-ci/Jamailar__beav-deepseek-harness.json +0 -367
  228. package/40-checker/results/sample20-ci/ManoloRemiddi__DSH-Metafolder-Plugin.json +0 -344
  229. package/40-checker/results/sample20-ci/NEAZ71eve__dsh-tool-github.json +0 -392
  230. package/40-checker/results/sample20-ci/README.md +0 -5
  231. package/40-checker/results/sample20-ci/RINGOLINK__dsh-desktop-shell.json +0 -361
  232. package/40-checker/results/sample20-ci/Zxznb666__dsh-qoder-cn-subagent.json +0 -349
  233. package/40-checker/results/sample20-ci/agent-mobile__dsh-mobile-gateway.json +0 -384
  234. package/40-checker/results/sample20-ci/fangqiing__dsh-knowledge-lite.json +0 -360
  235. package/40-checker/results/sample20-ci/fzy0517__deepseek-harness-session-cleaner.json +0 -354
  236. package/40-checker/results/sample20-ci/gjy1992__dsh-diagram.json +0 -381
  237. package/40-checker/results/sample20-ci/mrme000m__dsh-prime-orchestrator.json +0 -452
  238. package/40-checker/results/sample20-ci/redstonedust__dsh-solidworks-copilot.json +0 -371
  239. package/40-checker/results/sample20-ci/summary.json +0 -195
  240. package/40-checker/results/sample20-ci/w2112515__dsh-remote-host.json +0 -399
  241. package/40-checker/results/sample20-ci/wkfedor__deepseek-harness-voice-input.json +0 -358
  242. package/40-checker/results/sample20-ci/xfgil__dsh-hot-reloader.json +0 -344
  243. package/40-checker/results/sample20-ci/yizhiyizhi0128__dsh-peak-scheduler.json +0 -370
  244. package/40-checker/results/sample20-ci/zed1902209846-dotcom__DPwhale-plugin.json +0 -231
  245. package/40-checker/results/sample60/123dbl__dsh-side-session.json +0 -344
  246. package/40-checker/results/sample60/173787247__dsh-wsl-dns.json +0 -360
  247. package/40-checker/results/sample60/863683348__dsh-insight.json +0 -375
  248. package/40-checker/results/sample60/Anionex__dsh-turn-rewind.json +0 -349
  249. package/40-checker/results/sample60/Ansellwan__DSH-Custom-Wallpaper.json +0 -344
  250. package/40-checker/results/sample60/Ebony-Vinyl__EAC-Pack.json +0 -352
  251. package/40-checker/results/sample60/EricWang1358__dsh-web-studyhub.json +0 -376
  252. package/40-checker/results/sample60/GanyuanRan__Aegis.json +0 -349
  253. package/40-checker/results/sample60/HiSeax__dsh-codely.json +0 -358
  254. package/40-checker/results/sample60/Jamailar__beav-deepseek-harness.json +0 -341
  255. package/40-checker/results/sample60/ManoloRemiddi__DSH-Metafolder-Plugin.json +0 -344
  256. package/40-checker/results/sample60/MichengAI__dsh-archive-manager.json +0 -357
  257. package/40-checker/results/sample60/MichengAI__dsh-im-connect.json +0 -347
  258. package/40-checker/results/sample60/MindLab-Research__dsh-generative-ui.json +0 -350
  259. package/40-checker/results/sample60/NEAZ71eve__dsh-tool-github.json +0 -384
  260. package/40-checker/results/sample60/README.md +0 -7
  261. package/40-checker/results/sample60/RINGOLINK__dsh-desktop-shell.json +0 -352
  262. package/40-checker/results/sample60/SeanTolstoyevski__dsh-code-review.json +0 -352
  263. package/40-checker/results/sample60/Tasihi89__dsh-talk-map.json +0 -344
  264. package/40-checker/results/sample60/Tyan66666__billion-context-dsh.json +0 -469
  265. package/40-checker/results/sample60/V1ki__dsh-plugin-subscriptions.json +0 -350
  266. package/40-checker/results/sample60/Yu-tao-Li__dsh-computer-use-win.json +0 -341
  267. package/40-checker/results/sample60/ZSeven-W__dsh-ios.json +0 -344
  268. package/40-checker/results/sample60/Zxznb666__dsh-qoder-cn-subagent.json +0 -349
  269. package/40-checker/results/sample60/agent-mobile__dsh-mobile-gateway.json +0 -353
  270. package/40-checker/results/sample60/c3cvld7aag__fujiang-dsh.json +0 -361
  271. package/40-checker/results/sample60/cxzrdxy__dsh-file-explorer.json +0 -389
  272. package/40-checker/results/sample60/dhicoc__dsh-reverse-skill.json +0 -341
  273. package/40-checker/results/sample60/fangqiing__dsh-knowledge-lite.json +0 -359
  274. package/40-checker/results/sample60/fwerkor__local-shell-mcp.json +0 -369
  275. package/40-checker/results/sample60/fzy0517__deepseek-harness-session-cleaner.json +0 -344
  276. package/40-checker/results/sample60/gjy1992__dsh-diagram.json +0 -350
  277. package/40-checker/results/sample60/howmp__dsh-pentest.json +0 -341
  278. package/40-checker/results/sample60/linhay__harmony-next.skills.json +0 -344
  279. package/40-checker/results/sample60/liustack__modsearch.json +0 -371
  280. package/40-checker/results/sample60/mmparko__dsh-purge.json +0 -372
  281. package/40-checker/results/sample60/mrme000m__dsh-prime-orchestrator.json +0 -414
  282. package/40-checker/results/sample60/omdsh-dev__dsh_workflow.json +0 -439
  283. package/40-checker/results/sample60/redstonedust__dsh-solidworks-copilot.json +0 -362
  284. package/40-checker/results/sample60/seriousz158__dsh-memory.json +0 -350
  285. package/40-checker/results/sample60/shanliuling__dsh-image-gen.json +0 -353
  286. package/40-checker/results/sample60/shanliuling__skills-link.json +0 -344
  287. package/40-checker/results/sample60/shengsheng90__DSH-taskboard.json +0 -341
  288. package/40-checker/results/sample60/sjh9714__dsh-win32.json +0 -374
  289. package/40-checker/results/sample60/skymecode__deepseek-harness-for-vscode.json +0 -351
  290. package/40-checker/results/sample60/sopaco__terrain.json +0 -352
  291. package/40-checker/results/sample60/summary.json +0 -658
  292. package/40-checker/results/sample60/tinqiao-oss__engramory.json +0 -352
  293. package/40-checker/results/sample60/tong-io__tongflow.json +0 -359
  294. package/40-checker/results/sample60/vibeinging__dsh-desktop.json +0 -382
  295. package/40-checker/results/sample60/w2112515__dsh-remote-host.json +0 -344
  296. package/40-checker/results/sample60/wkfedor__deepseek-harness-voice-input.json +0 -350
  297. package/40-checker/results/sample60/wz20__dsh-dafeiyu-dot.json +0 -349
  298. package/40-checker/results/sample60/xfgil__dsh-hot-reloader.json +0 -344
  299. package/40-checker/results/sample60/yi-yezhiqiu__dsh-prompt-market.json +0 -360
  300. package/40-checker/results/sample60/yizhiyizhi0128__dsh-peak-scheduler.json +0 -360
  301. package/40-checker/results/sample60/yjh051108__dsh-routing-suite.json +0 -366
  302. package/40-checker/results/sample60-ci/123dbl__dsh-side-session.json +0 -344
  303. package/40-checker/results/sample60-ci/173787247__dsh-wsl-dns.json +0 -360
  304. package/40-checker/results/sample60-ci/863683348__dsh-insight.json +0 -375
  305. package/40-checker/results/sample60-ci/Anionex__dsh-turn-rewind.json +0 -379
  306. package/40-checker/results/sample60-ci/Ansellwan__DSH-Custom-Wallpaper.json +0 -344
  307. package/40-checker/results/sample60-ci/Ebony-Vinyl__EAC-Pack.json +0 -362
  308. package/40-checker/results/sample60-ci/EricWang1358__dsh-web-studyhub.json +0 -378
  309. package/40-checker/results/sample60-ci/GanyuanRan__Aegis.json +0 -349
  310. package/40-checker/results/sample60-ci/HiSeax__dsh-codely.json +0 -368
  311. package/40-checker/results/sample60-ci/Jamailar__beav-deepseek-harness.json +0 -367
  312. package/40-checker/results/sample60-ci/LiarMTTT__TavernWeave.json +0 -231
  313. package/40-checker/results/sample60-ci/ManoloRemiddi__DSH-Metafolder-Plugin.json +0 -344
  314. package/40-checker/results/sample60-ci/MichengAI__dsh-archive-manager.json +0 -395
  315. package/40-checker/results/sample60-ci/MichengAI__dsh-im-connect.json +0 -404
  316. package/40-checker/results/sample60-ci/MindLab-Research__dsh-generative-ui.json +0 -410
  317. package/40-checker/results/sample60-ci/NEAZ71eve__dsh-tool-github.json +0 -392
  318. package/40-checker/results/sample60-ci/README.md +0 -7
  319. package/40-checker/results/sample60-ci/RINGOLINK__dsh-desktop-shell.json +0 -361
  320. package/40-checker/results/sample60-ci/Ruler4396__dsh-launcher.json +0 -231
  321. package/40-checker/results/sample60-ci/SeanTolstoyevski__dsh-code-review.json +0 -363
  322. package/40-checker/results/sample60-ci/Tasihi89__dsh-talk-map.json +0 -372
  323. package/40-checker/results/sample60-ci/Tyan66666__billion-context-dsh.json +0 -469
  324. package/40-checker/results/sample60-ci/V1ki__dsh-plugin-subscriptions.json +0 -368
  325. package/40-checker/results/sample60-ci/Yu-tao-Li__dsh-computer-use-win.json +0 -349
  326. package/40-checker/results/sample60-ci/ZSeven-W__dsh-ios.json +0 -344
  327. package/40-checker/results/sample60-ci/Zxznb666__dsh-qoder-cn-subagent.json +0 -349
  328. package/40-checker/results/sample60-ci/agent-mobile__dsh-mobile-gateway.json +0 -384
  329. package/40-checker/results/sample60-ci/c3cvld7aag__fujiang-dsh.json +0 -361
  330. package/40-checker/results/sample60-ci/cxzrdxy__dsh-file-explorer.json +0 -399
  331. package/40-checker/results/sample60-ci/dhicoc__dsh-reverse-skill.json +0 -352
  332. package/40-checker/results/sample60-ci/fangqiing__dsh-knowledge-lite.json +0 -360
  333. package/40-checker/results/sample60-ci/fwerkor__local-shell-mcp.json +0 -387
  334. package/40-checker/results/sample60-ci/fzy0517__deepseek-harness-session-cleaner.json +0 -354
  335. package/40-checker/results/sample60-ci/gjy1992__dsh-diagram.json +0 -381
  336. package/40-checker/results/sample60-ci/howmp__dsh-pentest.json +0 -361
  337. package/40-checker/results/sample60-ci/linhay__harmony-next.skills.json +0 -344
  338. package/40-checker/results/sample60-ci/liustack__modsearch.json +0 -382
  339. package/40-checker/results/sample60-ci/mmparko__dsh-purge.json +0 -441
  340. package/40-checker/results/sample60-ci/mrme000m__dsh-prime-orchestrator.json +0 -452
  341. package/40-checker/results/sample60-ci/omdsh-dev__dsh_workflow.json +0 -439
  342. package/40-checker/results/sample60-ci/plastic-labs__honcho.json +0 -231
  343. package/40-checker/results/sample60-ci/redstonedust__dsh-solidworks-copilot.json +0 -371
  344. package/40-checker/results/sample60-ci/seriousz158__dsh-memory.json +0 -351
  345. package/40-checker/results/sample60-ci/shanliuling__dsh-image-gen.json +0 -382
  346. package/40-checker/results/sample60-ci/shanliuling__skills-link.json +0 -344
  347. package/40-checker/results/sample60-ci/shengsheng90__DSH-taskboard.json +0 -370
  348. package/40-checker/results/sample60-ci/sjh9714__dsh-win32.json +0 -410
  349. package/40-checker/results/sample60-ci/skymecode__deepseek-harness-for-vscode.json +0 -391
  350. package/40-checker/results/sample60-ci/sopaco__deepwiki-rs.json +0 -231
  351. package/40-checker/results/sample60-ci/sopaco__terrain.json +0 -352
  352. package/40-checker/results/sample60-ci/summary.json +0 -555
  353. package/40-checker/results/sample60-ci/tinqiao-oss__engramory.json +0 -362
  354. package/40-checker/results/sample60-ci/tong-io__tongflow.json +0 -393
  355. package/40-checker/results/sample60-ci/vibeinging__dsh-desktop.json +0 -555
  356. package/40-checker/results/sample60-ci/w2112515__dsh-remote-host.json +0 -399
  357. package/40-checker/results/sample60-ci/wkfedor__deepseek-harness-voice-input.json +0 -358
  358. package/40-checker/results/sample60-ci/wz20__dsh-dafeiyu-dot.json +0 -390
  359. package/40-checker/results/sample60-ci/xfgil__dsh-hot-reloader.json +0 -344
  360. package/40-checker/results/sample60-ci/yi-yezhiqiu__dsh-prompt-market.json +0 -373
  361. package/40-checker/results/sample60-ci/yizhiyizhi0128__dsh-peak-scheduler.json +0 -370
  362. package/40-checker/results/sample60-ci/yjh051108__dsh-routing-suite.json +0 -437
  363. package/40-checker/results/sample60-ci/zed1902209846-dotcom__DPwhale-plugin.json +0 -231
  364. package/40-checker/results/triage/REPORT.md +0 -317
  365. package/40-checker/results/triage/evidence/g2-rejections.txt +0 -63
  366. package/40-checker/results/triage/evidence/purge-baseline-0.2.1-rc.5.json +0 -51
  367. package/40-checker/results/triage/evidence/purge-baseline-0.2.2-alpha.2.json +0 -51
  368. package/40-checker/results/triage/evidence/purge-postinstall.txt +0 -62
  369. package/40-checker/results/triage/evidence/purge-with-profile-0.2.1-rc.5.json +0 -71
  370. package/40-checker/results/triage/evidence/purge-with-profile-0.2.2-alpha.2.json +0 -71
  371. package/40-checker/results/triage/evidence/semver-matrix.json +0 -32
  372. package/40-checker/results/triage/triage.json +0 -295
  373. package/40-checker/results/webapp/README.md +0 -10
  374. package/40-checker/results/webapp/summary.json +0 -46
  375. package/40-checker/results/webapp/web-auth.json +0 -19
  376. package/40-checker/results/webruntime/DDDMUC__dsh-free-search/client-export.json +0 -7
  377. package/40-checker/results/webruntime/DDDMUC__dsh-free-search/installed-package.json +0 -123
  378. package/40-checker/results/webruntime/DDDMUC__dsh-free-search/probe.json +0 -129
  379. package/40-checker/results/webruntime/DDDMUC__dsh-free-search/shot.png +0 -0
  380. package/40-checker/results/webruntime/DDDMUC__dsh-free-search/summary.md +0 -16
  381. package/40-checker/results/webruntime/Ebony-Vinyl__dsh-our-free-model/client-export.json +0 -7
  382. package/40-checker/results/webruntime/Ebony-Vinyl__dsh-our-free-model/installed-package.json +0 -76
  383. package/40-checker/results/webruntime/Ebony-Vinyl__dsh-our-free-model/probe.json +0 -129
  384. package/40-checker/results/webruntime/Ebony-Vinyl__dsh-our-free-model/shot.png +0 -0
  385. package/40-checker/results/webruntime/Ebony-Vinyl__dsh-our-free-model/summary.md +0 -16
  386. package/40-checker/results/webruntime/REPORT.md +0 -253
  387. package/40-checker/results/webruntime/SeaOf0__dsh-redteam-model/client-export.json +0 -7
  388. package/40-checker/results/webruntime/SeaOf0__dsh-redteam-model/installed-package.json +0 -97
  389. package/40-checker/results/webruntime/SeaOf0__dsh-redteam-model/probe.json +0 -129
  390. package/40-checker/results/webruntime/SeaOf0__dsh-redteam-model/shot.png +0 -0
  391. package/40-checker/results/webruntime/SeaOf0__dsh-redteam-model/summary.md +0 -16
  392. package/40-checker/results/webruntime/YuJunZhiXue__dsh-purge/client-export.json +0 -7
  393. package/40-checker/results/webruntime/YuJunZhiXue__dsh-purge/installed-package.json +0 -98
  394. package/40-checker/results/webruntime/YuJunZhiXue__dsh-purge/probe.json +0 -136
  395. package/40-checker/results/webruntime/YuJunZhiXue__dsh-purge/shot.png +0 -0
  396. package/40-checker/results/webruntime/YuJunZhiXue__dsh-purge/summary.md +0 -16
  397. package/40-checker/results/webruntime/ci-diet/client-export.json +0 -10
  398. package/40-checker/results/webruntime/ci-diet/installed-package.json +0 -100
  399. package/40-checker/results/webruntime/ci-diet/probe.json +0 -129
  400. package/40-checker/results/webruntime/ci-diet/shot.png +0 -0
  401. package/40-checker/results/webruntime/ci-diet/summary.md +0 -16
  402. package/40-checker/results/webruntime/daily-log/client-export.json +0 -10
  403. package/40-checker/results/webruntime/daily-log/installed-package.json +0 -113
  404. package/40-checker/results/webruntime/daily-log/probe.json +0 -129
  405. package/40-checker/results/webruntime/daily-log/shot.png +0 -0
  406. package/40-checker/results/webruntime/daily-log/summary.md +0 -16
  407. package/40-checker/results/webruntime/howmp__dsh-pentest/client-export.json +0 -7
  408. package/40-checker/results/webruntime/howmp__dsh-pentest/installed-package.json +0 -90
  409. package/40-checker/results/webruntime/howmp__dsh-pentest/probe.json +0 -129
  410. package/40-checker/results/webruntime/howmp__dsh-pentest/shot.png +0 -0
  411. package/40-checker/results/webruntime/howmp__dsh-pentest/summary.md +0 -16
  412. package/40-checker/results/webruntime/kingcharleslzy-ai__dsh-purge/client-export.json +0 -7
  413. package/40-checker/results/webruntime/kingcharleslzy-ai__dsh-purge/installed-package.json +0 -164
  414. package/40-checker/results/webruntime/kingcharleslzy-ai__dsh-purge/probe.json +0 -129
  415. package/40-checker/results/webruntime/kingcharleslzy-ai__dsh-purge/shot.png +0 -0
  416. package/40-checker/results/webruntime/kingcharleslzy-ai__dsh-purge/summary.md +0 -16
  417. package/40-checker/results/webruntime/liguobao__ds-harness-remote/client-export.json +0 -7
  418. package/40-checker/results/webruntime/liguobao__ds-harness-remote/installed-package.json +0 -166
  419. package/40-checker/results/webruntime/liguobao__ds-harness-remote/probe.json +0 -129
  420. package/40-checker/results/webruntime/liguobao__ds-harness-remote/shot.png +0 -0
  421. package/40-checker/results/webruntime/liguobao__ds-harness-remote/summary.md +0 -16
  422. package/40-checker/results/webruntime/local-pre-ci/README.md +0 -67
  423. package/40-checker/results/webruntime/local-pre-ci/client-exports.json +0 -158
  424. package/40-checker/results/webruntime/local-pre-ci/dsh-free-search.probe.json +0 -119
  425. package/40-checker/results/webruntime/local-pre-ci/dsh-pocket.probe.json +0 -119
  426. package/40-checker/results/webruntime/local-pre-ci/dsh-redteam-model.probe.json +0 -119
  427. package/40-checker/results/webruntime/local-pre-ci/qiushi-shell-only.probe.json +0 -104
  428. package/40-checker/results/webruntime/local-pre-ci/ui-auth-no-login.fail.json +0 -52
  429. package/40-checker/results/webruntime/local-pre-ci/ui-auth.probe.json +0 -123
  430. package/40-checker/results/webruntime/mmparko__dsh-purge/client-export.json +0 -7
  431. package/40-checker/results/webruntime/mmparko__dsh-purge/installed-package.json +0 -95
  432. package/40-checker/results/webruntime/mmparko__dsh-purge/probe.json +0 -136
  433. package/40-checker/results/webruntime/mmparko__dsh-purge/shot.png +0 -0
  434. package/40-checker/results/webruntime/mmparko__dsh-purge/summary.md +0 -16
  435. package/40-checker/results/webruntime/project-memory/client-export.json +0 -7
  436. package/40-checker/results/webruntime/project-memory/installed-package.json +0 -118
  437. package/40-checker/results/webruntime/project-memory/probe.json +0 -129
  438. package/40-checker/results/webruntime/project-memory/shot.png +0 -0
  439. package/40-checker/results/webruntime/project-memory/summary.md +0 -16
  440. package/40-checker/results/webruntime/qiushi/client-export.json +0 -7
  441. package/40-checker/results/webruntime/qiushi/installed-package.json +0 -84
  442. package/40-checker/results/webruntime/qiushi/probe.json +0 -114
  443. package/40-checker/results/webruntime/qiushi/shot.png +0 -0
  444. package/40-checker/results/webruntime/qiushi/summary.md +0 -16
  445. package/40-checker/results/webruntime/shaobeichen__dsh-pocket/client-export.json +0 -7
  446. package/40-checker/results/webruntime/shaobeichen__dsh-pocket/installed-package.json +0 -85
  447. package/40-checker/results/webruntime/shaobeichen__dsh-pocket/probe.json +0 -129
  448. package/40-checker/results/webruntime/shaobeichen__dsh-pocket/shot.png +0 -0
  449. package/40-checker/results/webruntime/shaobeichen__dsh-pocket/summary.md +0 -16
  450. package/40-checker/results/webruntime/status-rotator/client-export.json +0 -7
  451. package/40-checker/results/webruntime/status-rotator/installed-package.json +0 -107
  452. package/40-checker/results/webruntime/status-rotator/probe.json +0 -129
  453. package/40-checker/results/webruntime/status-rotator/shot.png +0 -0
  454. package/40-checker/results/webruntime/status-rotator/summary.md +0 -16
  455. package/40-checker/results/webruntime/summary.json +0 -323
  456. package/40-checker/results/webruntime/telemetry/probe.json +0 -20
  457. package/40-checker/results/webruntime/telemetry/summary.md +0 -4
  458. package/40-checker/results/webruntime/ui-auth/client-export.json +0 -7
  459. package/40-checker/results/webruntime/ui-auth/installed-package.json +0 -94
  460. package/40-checker/results/webruntime/ui-auth/probe.json +0 -129
  461. package/40-checker/results/webruntime/ui-auth/shot.png +0 -0
  462. package/40-checker/results/webruntime/ui-auth/summary.md +0 -16
  463. package/40-checker/results/webruntime/verification/probe.json +0 -20
  464. package/40-checker/results/webruntime/verification/summary.md +0 -4
  465. package/40-checker/results/webruntime/ysr666__dsh-vision-router/client-export.json +0 -7
  466. package/40-checker/results/webruntime/ysr666__dsh-vision-router/installed-package.json +0 -142
  467. package/40-checker/results/webruntime/ysr666__dsh-vision-router/probe.json +0 -129
  468. package/40-checker/results/webruntime/ysr666__dsh-vision-router/shot.png +0 -0
  469. package/40-checker/results/webruntime/ysr666__dsh-vision-router/summary.md +0 -16
@@ -1,335 +0,0 @@
1
- # FLOW real-package evidence (J1/J2/J4, one J6)
2
-
3
- Generated: 2026-11-01 (Asia/Shanghai)
4
- Scope: a **representative sample of 10** of the 18 packages in `40-checker/samples/entry18.json`.
5
- This is **not** a run over all 18, and it is **not** full FLOW coverage.
6
-
7
- > **Second wave (2026-11-02)**: 5 more npm packages were added (`daily-log`, `project-memory`, `qiushi`, `status-rotator`, `verification`). All 10 samples now use the same anchor, `dsh 0.2.2-alpha.2`. The one verification failure is recorded as a failure, not rewritten.
8
-
9
- ## Environment
10
-
11
- | Item | Value |
12
- |---|---|
13
- | Host | WSL2 Linux, `x86_64` |
14
- | `dsh` | `/tmp/dsh022/node_modules/@deepseek-ai/dsh/lib/bin.js` — **0.2.2-alpha.2** |
15
- | Node | `v24.22.1` |
16
- | pnpm | `12.15.0` |
17
- | npm | `11.19.1` |
18
- | Registry | `https://registry.npmmirror.com` (npm default in this environment) |
19
- | Probe | `40-checker/scripts/journey-runtime.mjs` (unmodified) |
20
- | Driver | `40-checker/scripts/flow-sample-ci.mjs` (new) |
21
- | Raw evidence | `40-checker/results/flow/real/<id>.json` + `index.json` |
22
-
23
- Each `<id>.json` is a `dsh-flow-real/1` envelope. The unmodified probe output is
24
- under `.journey.result`; synthesized checks (the blocked gate) are under `.checks`.
25
- No sample repo was edited. Dependencies were installed in the `/tmp` copies only.
26
-
27
- ## Samples and why they were chosen
28
-
29
- | id | package@version | source | why |
30
- |---|---|---|---|
31
- | `ci-diet` | `dsh-ci-diet@0.5.2` | npm tarball | simple npm bundle; a published `0.5.1` also exists, so J6 is runnable |
32
- | `DDDMUC__dsh-free-search` | `dsh-free-search@0.9.26` | shallow git clone | GitHub bundle |
33
- | `ui-auth` | `dsh-ui-auth@0.7.1` | npm tarball | bundle with a client (`dsh.client` + `lib/client.js`) |
34
- | `telemetry` | `dsh-telemetry-redactor@0.1.0` | npm tarball | expected host compatibility-gate rejection; recorded as **blocked** |
35
- | `YuJunZhiXue__dsh-purge` | `dsh-purge@1.1.85` (clone HEAD package version is **1.1.86**) | shallow git clone | has a `postinstall` that writes the profile body insert |
36
- | `daily-log` | `@zzerx/dsh-plugin-daily-log@0.4.3` | npm tarball | second wave |
37
- | `project-memory` | `@yolk_vat-y/dsh-project-memory@0.6.7` | npm tarball | second wave |
38
- | `qiushi` | `qiushi-dsh-evidence-audit@0.1.0` | npm tarball | second wave |
39
- | `status-rotator` | `dsh-status-rotator@0.38.0` | npm tarball | second wave |
40
- | `verification` | `dsh-verification-receipt@0.1.0` | npm tarball | second wave; expected host edge |
41
-
42
- `YuJunZhiXue/dsh-purge` HEAD was `1bdf2399701ddea298adac8d0fad52314251ca7b`
43
- ("version 1.1.86"), but `entry18.json` records 1.1.85. The actual installed
44
- version is reported in the JSON (`version: 1.1.86`), not silently rewritten.
45
-
46
- ## Per-package results
47
-
48
- Legend: **PASS** = the probe's own check passed; **FAIL** = a real failure;
49
- **BLOCKED** = the host gate refused the install (not a pass); **partial** =
50
- the probe passed but did not model the package's real install path;
51
- **not-run** = deliberately not executed.
52
-
53
- | id | J1 install/remove | J2 disable/enable | J4 keyless tree-load | J6 upgrade/rollback | Adjudication |
54
- |---|---|---|---|---|---|
55
- | `ci-diet` | **PASS** (6/6) | **PASS** (2/2) | **PASS** | **PASS** (3/3) | 12 PASS, 0 FAIL, 4 not-run |
56
- | `DDDMUC__dsh-free-search` | **PASS** (6/6) | **PASS** (2/2) | **PASS** | not-run (no second version) | 9 PASS, 0 FAIL, 6 not-run |
57
- | `ui-auth` | **PASS** (6/6) | **PASS** (2/2) | **PASS** (with activation caveat) | not-run (no second version) | 9 PASS, 0 FAIL, 6 not-run |
58
- | `telemetry` | **BLOCKED** at install | not-run (nothing installed) | not-run (nothing installed) | not-run | 1 PASS, 1 BLOCKED, 13 not-run |
59
- | `YuJunZhiXue__dsh-purge` | **partial** (probe 6/6, postinstall skipped) | **partial** (only `dsh-purge-redteam`) | **PASS** (tree-load only; main plugin absent) | not-run | 9 PASS, 0 FAIL, 6 not-run; J1/J2 partial |
60
-
61
- ### `ci-diet` — dsh-ci-diet 0.5.2
62
-
63
- - J1: profile create, `plugin add`, dump, layer, remove, clean — all PASS.
64
- - J2: row `ciDiet.bootstrap` found from `--dump-config`; disable and enable both PASS.
65
- - J4: keyless boot reached `MISSING_CREDENTIAL` — PASS (tree-load only).
66
- - J6: **PASS**, using the published `0.5.1` tarball as `--previous`:
67
- `0.5.1 → 0.5.2 → 0.5.1`; installed version read from the profile each time.
68
- - No failure. Caveat: J6 did **not** exercise persisted data or a migration.
69
- - Raw probe summary: `{pass: 12, warn: 0, fail: 0, notRun: 4}`.
70
-
71
- ### `DDDMUC__dsh-free-search` — dsh-free-search 0.9.26
72
-
73
- - Clone HEAD `7c30dd059e1d9de4ffc8b779978b2152af84b0ec`.
74
- - J1/J2/J4 all PASS; J2 row `web-search-free` toggled correctly.
75
- - J6 `not-run`: only one version was fetched. No second version was invented.
76
- - Raw probe summary: `{pass: 9, warn: 0, fail: 0, notRun: 6}`.
77
-
78
- ### `ui-auth` — dsh-ui-auth 0.7.1
79
-
80
- - J1/J2/J4 all PASS; J2 row `dsh-ui-auth` toggled correctly.
81
- - J4 reached `MISSING_CREDENTIAL`, but the probe stderr contains:
82
-
83
- ```text
84
- dsh: warning: 1 entry did not activate
85
- dsh-ui-auth (dsh-ui-auth): pending (waiting for services: webServer, connection)
86
- dsh: MISSING_CREDENTIAL: llm-deepseek: no API key ...
87
- ```
88
-
89
- This is a **tree-load PASS**, not proof that the client-side UI works. The
90
- headless profile has no `webServer`/`connection` services, so the host entry
91
- is pending. J8 (client shapes) remains not-run.
92
- - J6 `not-run`: no second version.
93
- - Raw probe summary: `{pass: 9, warn: 0, fail: 0, notRun: 6}`.
94
-
95
- ### `telemetry` — dsh-telemetry-redactor 0.1.0 (BLOCKED)
96
-
97
- The install was refused by the host compatibility gate. **No exemption was
98
- requested or granted**, and the preflight never called `allow-version`; the
99
- `compatibility.json` file was absent after the attempt.
100
-
101
- Exact command and result:
102
-
103
- ```console
104
- $ /tmp/dsh022/node_modules/@deepseek-ai/dsh/lib/bin.js plugin \
105
- --profile flow-gate add /tmp/flow-sample/telemetry
106
- exit=1
107
- dsh: installation rejected: Plugin dsh-telemetry-redactor@0.1.0 is incompatible
108
- with dsh 0.2.2-alpha.2: requirements
109
- {"@deepseek-ai/dsh-session-telemetry":">=0.1.0-rc.5 <0.2.0"}.
110
- ...
111
- dsh: nothing was installed.
112
- ```
113
-
114
- The host has `@deepseek-ai/dsh-session-telemetry@0.2.2-alpha.2`, which is
115
- outside the plugin's `<0.2.0` peer range. This is a **host gate**, not a plugin
116
- defect and not a fixture PASS. J2/J4 were not run because nothing was installed.
117
- The hint printed by the gate (`dsh plugin allow-version ... --accept-risk`) was
118
- deliberately **not** executed.
119
-
120
- ### `YuJunZhiXue__dsh-purge` — dsh-purge 1.1.86 (J1/J2 partial)
121
-
122
- The probe's raw J1/J2 checks passed, but the probe's `plugin add` installs a
123
- **local link**, and the package's `postinstall` was deliberately skipped
124
- (`--ignore-scripts`). The package's `cordis.patch.yml` says the main
125
- `dsh-purge` insert is written by the postinstall/user layer; without it, the
126
- main row is absent. A separate layer probe recorded:
127
-
128
- - `mainRowPresent: false`
129
- - `profileBundles: ["@deepseek-ai/dsh-base", "@deepseek-ai/dsh-headless", "dsh-purge"]`
130
- (the bundle is selected, but its body insert is missing)
131
- - rows present: `dsh-purge-redteam`, `dsh-purge-redteam-store`, `dsh-purge-redteam-ui`
132
- - dump stderr: `entry "dsh-purge" not found`, plus five legacy redteam rows
133
-
134
- Therefore:
135
-
136
- - **J1 = partial**: add/dump/remove/clean work, but the profile layer the plugin
137
- documents is incomplete. The probe's `J1.layer` substring check would
138
- otherwise be a false PASS (the string `dsh-purge` appears in the redteam rows).
139
- - **J2 = partial**: the overlay toggled `dsh-purge-redteam`; it did not toggle
140
- the main `dsh-purge` row, which does not exist.
141
- - **J4 = PASS with caveat**: boot reached `MISSING_CREDENTIAL`, but only the
142
- redteam UI entry was pending; the main plugin was not mounted.
143
- - J6 `not-run`: no second version was fetched.
144
-
145
- This is a **harness/fixture limitation**, not a confirmed plugin defect. The
146
- plugin expects a real profile install; the probe cannot run third-party
147
- postinstall scripts by policy. The version mismatch (entry18 1.1.85 vs clone
148
- 1.1.86) is recorded as drift.
149
-
150
- ## Aggregate counts
151
-
152
- ### Raw probe checks (all saved checks, 5 packages)
153
-
154
- | PASS | FAIL | BLOCKED | WARN | not-run | total |
155
- |---:|---:|---:|---:|---:|---:|
156
- | 40 | 0 | 1 | 0 | 35 | 76 |
157
-
158
- The single `telemetry` PASS in this row is `J1.profile` (fresh profile creation);
159
- its `J1.install` is the BLOCKED check. It is **not** an install pass.
160
-
161
- ### Package-level verdicts (J1/J2/J4/J6 × 5 packages = 20 cells)
162
-
163
- | Check | PASS | FAIL | BLOCKED | partial | not-run | total |
164
- |---|---:|---:|---:|---:|---:|---:|
165
- | J1 install/remove | 3 | 0 | 1 | 1 | 0 | 5 |
166
- | J2 disable/enable | 3 | 0 | 0 | 1 | 1 | 5 |
167
- | J4 keyless tree-load | 4 | 0 | 0 | 0 | 1 | 5 |
168
- | J6 upgrade/rollback | 1 | 0 | 0 | 0 | 4 | 5 |
169
- | **Total** | **11** | **0** | **1** | **2** | **6** | **20** |
170
-
171
- `ci-diet` is the only package with a real J6 run. `telemetry` contributes the
172
- one BLOCKED; `YuJunZhiXue__dsh-purge` contributes the two partials. **There is
173
- no FAIL in this sample, and there is no invented PASS.**
174
-
175
- ## What this proves
176
-
177
- - On dsh 0.2.2-alpha.2, four real packages (`ci-diet`, `dsh-free-search`,
178
- `dsh-ui-auth`, `dsh-purge`) can be added to a fresh headless profile, appear
179
- in `--dump-config`, be removed, and leave no layer/dependency residue.
180
- - For three of them, the inserted row id is discoverable from the dump and a
181
- `--patch` overlay can disable and re-enable it.
182
- - Four real packages load far enough, with no API key, to reach the
183
- `MISSING_CREDENTIAL` boundary — including a client bundle (`ui-auth`). This
184
- proves tree-load, not a successful task.
185
- - One real upgrade/rollback works with two published versions
186
- (`dsh-ci-diet` 0.5.1 ↔ 0.5.2).
187
- - One real host-gate rejection is recorded honestly as **BLOCKED**, with the
188
- exact incompatibility and no exemption.
189
-
190
- ## What this does not prove
191
-
192
- - **J3, J5, J7 and J8 are still not covered.** No invalid-config harness, no
193
- permissions/disclosure review, no observability probe, and no client-shape
194
- probe was run. This evidence must not be used to claim `FLOW=runtime` or
195
- full J1–J8 coverage for any package.
196
- - **The install path is a local directory link, not a registry tarball.**
197
- Every journey run used `dsh plugin add /tmp/flow-sample/<id>`. pnpm `link:`
198
- semantics differ from installing a packed tarball: peer resolution, lifecycle
199
- scripts and postinstall behavior are not exercised. This is exactly why
200
- `dsh-purge` is partial.
201
- - **No third-party lifecycle scripts were run.** All dependency installs used
202
- `--ignore-scripts`; `dsh-purge`'s `postinstall` was not executed.
203
- - **No credential/real-task success.** J4 only proves the tree reaches the
204
- credential boundary; it does not prove a first successful task.
205
- - **Headless only.** The web/client runtime, `webServer` services and the
206
- Windows host were not tested.
207
- - **Not representative of all 18.** Five packages were chosen to cover
208
- npm/GitHub/client/gate/postinstall cases; this is not a random or complete
209
- sample. `dsh-ci-diet` has a client too, so the "client" coverage is not
210
- limited to `ui-auth`.
211
-
212
- ## J3/J5/J7/J8 status
213
-
214
- **J3 (config validation), J5 (permissions), J7 (observability) and J8 (client
215
- shapes) remain `not-run` in every JSON.** The probe marks them `not-run` with
216
- the reasons `invalid-config harness not implemented`, `permissions/disclosure
217
- review is manual`, `observability probe not implemented`, and `client-shape
218
- probe not implemented`. This report does not upgrade them.
219
-
220
- ## Classification: plugin defect vs host gate vs fixture
221
-
222
- | Package | Classification | Reason |
223
- |---|---|---|
224
- | `ci-diet` | clean | all J1/J2/J4/J6 checks PASS; no defect observed |
225
- | `dsh-free-search` | clean | all J1/J2/J4 checks PASS; J6 not attempted |
226
- | `dsh-ui-auth` | clean (with caveat) | install/toggle/tree-load PASS; client activation unproven (J8 not-run) |
227
- | `dsh-telemetry-redactor` | **host gate** | peer `@deepseek-ai/dsh-session-telemetry <0.2.0` vs host 0.2.2-alpha.2; nothing installed |
228
- | `dsh-purge` | **harness/fixture partial** | local link + skipped postinstall; main profile insert absent; not confirmed as a plugin defect |
229
- | `journey-runtime.mjs` | no edit | no confirmed bug; two harness limitations observed |
230
-
231
- ### Harness limitations observed (not edited)
232
-
233
- 1. `journey-runtime.mjs` automatically calls `allow-version --accept-risk` when
234
- `plugin add` prints `installation rejected`. That would have converted the
235
- telemetry gate rejection into an exemption and a retry. The driver therefore
236
- performs its own preflight for that sample and **never runs the probe** on a
237
- known-rejected package. If the probe is to be used for gate evidence, this
238
- behavior needs an explicit opt-out flag; it was not changed here.
239
- 2. `J1.layer` is a substring check (`dump.includes(manifest.name)`), so it
240
- reports PASS for `dsh-purge` even though the main row is absent. The driver
241
- adds a separate dump probe for that sample; the probe itself was not changed.
242
- 3. `rowIdFromDump` also accepts **any** row whose `name` starts with `./` (or
243
- merely contains the package name), so a different local row could be
244
- selected first. No mismatch was observed in this sample, but it is a
245
- heuristic, not an identity check.
246
-
247
- No real bug in `journey-runtime.mjs` justified changing semantics, so the file
248
- is untouched.
249
-
250
- ## Exact commands (rerun)
251
-
252
- Run the whole sample set (downloads, dependency installs, journey probes, the
253
- gate preflight and the purge layer probe):
254
-
255
- ```bash
256
- cd <standards>
257
- node 40-checker/scripts/flow-sample-ci.mjs
258
- ```
259
-
260
- Useful flags: `--only ci-diet,ui-auth`, `--refresh` (delete/re-fetch the
261
- `/tmp/flow-sample/<id>` copies only), `--dsh <bin>`, `--out <dir>`,
262
- `--timeout <ms>`.
263
-
264
- Per-package raw probe command (the saved JSON wraps this output):
265
-
266
- ```bash
267
- node 40-checker/scripts/journey-runtime.mjs \
268
- --package /tmp/flow-sample/ci-diet \
269
- --previous /tmp/flow-sample/ci-diet-v0.5.1 \
270
- --dsh /tmp/dsh022/node_modules/@deepseek-ai/dsh/lib/bin.js --json
271
- ```
272
-
273
- Other packages use the same command without `--previous`:
274
- `/tmp/flow-sample/DDDMUC__dsh-free-search`, `/tmp/flow-sample/ui-auth`,
275
- `/tmp/flow-sample/YuJunZhiXue__dsh-purge`.
276
-
277
- Gate preflight for `telemetry` (no `allow-version`; replace the home with a new
278
- `mktemp -d`):
279
-
280
- ```bash
281
- DSH_HOME=/tmp/dsh-flow-gate-manual \
282
- /tmp/dsh022/node_modules/@deepseek-ai/dsh/lib/bin.js \
283
- --profile flow-gate --from-default-profile headless --dump-config
284
- DSH_HOME=/tmp/dsh-flow-gate-manual \
285
- /tmp/dsh022/node_modules/@deepseek-ai/dsh/lib/bin.js \
286
- plugin --profile flow-gate add /tmp/flow-sample/telemetry
287
- # exit=1, "installation rejected"; do NOT run the printed allow-version hint
288
- ```
289
-
290
- Download/install commands used by the driver:
291
-
292
- ```bash
293
- # npm samples
294
- npm pack dsh-ci-diet@0.5.2 --pack-destination /tmp/flow-sample/_cache
295
- tar -xzf /tmp/flow-sample/_cache/dsh-ci-diet-0.5.2.tgz \
296
- -C /tmp/flow-sample/ci-diet --strip-components=1
297
- npm install --omit=dev --ignore-scripts --legacy-peer-deps --no-package-lock
298
- # GitHub samples
299
- git clone --depth 1 https://github.com/DDDMUC/dsh-free-search.git \
300
- /tmp/flow-sample/DDDMUC__dsh-free-search
301
- git clone --depth 1 https://github.com/YuJunZhiXue/dsh-purge.git \
302
- /tmp/flow-sample/YuJunZhiXue__dsh-purge
303
- ```
304
-
305
- Read the envelope:
306
-
307
- ```bash
308
- node -e "const r=require('./40-checker/results/flow/real/ci-diet.json');
309
- console.log(r.verdicts, r.summary, r.journey.result.checks)"
310
- ```
311
-
312
- ## Files
313
-
314
- - [`40-checker/scripts/flow-sample-ci.mjs`](../../../scripts/flow-sample-ci.mjs) — driver; writes the envelopes and `index.json`.
315
- - [`ci-diet.json`](./ci-diet.json)
316
- - [`DDDMUC__dsh-free-search.json`](./DDDMUC__dsh-free-search.json)
317
- - [`ui-auth.json`](./ui-auth.json)
318
- - [`telemetry.json`](./telemetry.json)
319
- - [`YuJunZhiXue__dsh-purge.json`](./YuJunZhiXue__dsh-purge.json)
320
- - [`index.json`](./index.json)
321
-
322
- No commit or push was made. `journey-runtime.mjs` is unmodified.
323
-
324
-
325
- ## Second-wave summary (2026-11-02)
326
-
327
- | id | J1 | J2 | J4 | J6 | Note |
328
- |---|---|---|---|---|---|
329
- | `daily-log` | PASS | PASS | PASS | not-run | — |
330
- | `project-memory` | PASS | PASS | PASS | not-run | — |
331
- | `qiushi` | PASS | PASS | PASS | not-run | — |
332
- | `status-rotator` | PASS | PASS | PASS | not-run | — |
333
- | `verification` | FAIL | not-run | FAIL | not-run | install failure; no PASS invented |
334
-
335
- Aggregate over all 10 packages: **78 PASS / 4 FAIL / 2 BLOCKED / 66 not-run** checks (see `index.json`). The single second-wave failure (`verification`) is recorded as `FAIL`; the other four second-wave packages pass J1/J2/J4.
@@ -1,317 +0,0 @@
1
- {
2
- "schema": "dsh-flow-real/1",
3
- "generatedAt": "2026-11-01T04:24:20.297Z",
4
- "id": "YuJunZhiXue__dsh-purge",
5
- "package": "dsh-purge",
6
- "version": "1.1.86",
7
- "entry18Version": "1.1.85",
8
- "source": "github",
9
- "spec": "YuJunZhiXue/dsh-purge",
10
- "why": "postinstall/profile behavior",
11
- "packageDir": "/tmp/flow-sample/YuJunZhiXue__dsh-purge",
12
- "download": {
13
- "kind": "git-clone",
14
- "command": "git clone --depth 1 https://github.com/YuJunZhiXue/dsh-purge.git /tmp/flow-sample/YuJunZhiXue__dsh-purge",
15
- "url": "https://github.com/YuJunZhiXue/dsh-purge",
16
- "gitHead": "1bdf2399701ddea298adac8d0fad52314251ca7b",
17
- "gitSubject": "fix: 回收流程防 PID 复用误杀并等待端口释放,版本 1.1.86(#197/#198)",
18
- "actualVersion": "1.1.86"
19
- },
20
- "manifest": {
21
- "name": "dsh-purge",
22
- "version": "1.1.86",
23
- "engines": {
24
- "node": ">=18"
25
- },
26
- "peerDependencies": {
27
- "@deepseek-ai/cordis": "^4.0.1"
28
- },
29
- "dependencies": null,
30
- "scripts": {
31
- "postinstall": "node scripts/ensure-profile-bundle.mjs"
32
- },
33
- "dsh": {
34
- "bundle": {
35
- "patch": "./cordis.patch.yml"
36
- },
37
- "client": {
38
- "platform": "web",
39
- "inject": [
40
- "@deepseek-ai/dsh-client-connection",
41
- "@deepseek-ai/dsh-client-runtime",
42
- "@deepseek-ai/dsh-client-locale",
43
- "@deepseek-ai/dsh-client-ui-slots",
44
- "@deepseek-ai/dsh-client-ui-settings",
45
- "@deepseek-ai/dsh-client-ui-conversation"
46
- ]
47
- },
48
- "install": {
49
- "preferred": "tarball",
50
- "tarball": "https://codeload.github.com/YuJunZhiXue/dsh-purge/tar.gz/refs/heads/master",
51
- "zip": "https://codeload.github.com/YuJunZhiXue/dsh-purge/zip/refs/heads/master",
52
- "git": "https://github.com/YuJunZhiXue/dsh-purge.git"
53
- }
54
- }
55
- },
56
- "dependencyInstall": {
57
- "needed": false,
58
- "command": null,
59
- "exit": 0,
60
- "ignoredScripts": true,
61
- "note": "no dependencies in package.json; npm install skipped"
62
- },
63
- "previous": null,
64
- "gate": null,
65
- "journey": {
66
- "command": "<home>/opt/node-v24.22.1-linux-x64/bin/node <standards>/40-checker/scripts/journey-runtime.mjs --package /tmp/flow-sample/YuJunZhiXue__dsh-purge --dsh /tmp/dsh022/node_modules/@deepseek-ai/dsh/lib/bin.js --json",
67
- "exit": 0,
68
- "parseError": null,
69
- "stderr": "",
70
- "result": {
71
- "schema": "dsh-flow-runtime/1",
72
- "package": "dsh-purge",
73
- "version": "1.1.86",
74
- "previous": null,
75
- "mode": "j1-j2-j4-j6-runtime",
76
- "checks": [
77
- {
78
- "id": "J1.profile",
79
- "result": "PASS",
80
- "reason": "create profile exit=0",
81
- "stderr": ""
82
- },
83
- {
84
- "id": "J1.install",
85
- "result": "PASS",
86
- "reason": "add exit=0",
87
- "stderr": "[WARN] The package dsh-purge, which you have just pnpm linked, has the following peerDependencies specified in its package.json:\n\n - @deepseek-ai/cordis@^4.0.1\n\nThe linked in dependency will not resolve the peer dependencies from the target node_modules.\nThis might cause issues in your project. To resolve this, you may use the \"file:\" protocol to reference the local dependency.\nAlready up to date\n\ndependencies:\n+ dsh-purge <- ../../../flow-sample/YuJunZhiXue__dsh-purge\n\nDone in 25ms using pnpm v12.15.0\n"
88
- },
89
- {
90
- "id": "J1.dump",
91
- "result": "PASS",
92
- "reason": "dump exit=0",
93
- "stderr": "dsh: [dsh-purge] patch: entry \"redteam-store\" not found\ndsh: [dsh-purge] patch: entry \"redteam-ui\" not found\ndsh: [dsh-purge] patch: entry \"redteam-mode\" not found\ndsh: [dsh-purge] patch: entry \"redteam-mode-store\" not found\ndsh: [dsh-purge] patch: entry \"redteam-mode-ui\" not found\ndsh: [dsh-purge] patch: entry \"dsh-purge\" not found\n"
94
- },
95
- {
96
- "id": "J1.layer",
97
- "result": "PASS",
98
- "reason": "layer/entry appears in dump"
99
- },
100
- {
101
- "id": "J2.disable",
102
- "result": "PASS",
103
- "reason": "row dsh-purge-redteam disabled",
104
- "stderr": "dsh: [dsh-purge] patch: entry \"redteam-store\" not found\ndsh: [dsh-purge] patch: entry \"redteam-ui\" not found\ndsh: [dsh-purge] patch: entry \"redteam-mode\" not found\ndsh: [dsh-purge] patch: entry \"redteam-mode-store\" not found\ndsh: [dsh-purge] patch: entry \"redteam-mode-ui\" not found\ndsh: [dsh-purge] patch: entry \"dsh-purge\" not found\n"
105
- },
106
- {
107
- "id": "J2.enable",
108
- "result": "PASS",
109
- "reason": "row dsh-purge-redteam enabled again",
110
- "stderr": "dsh: [dsh-purge] patch: entry \"redteam-store\" not found\ndsh: [dsh-purge] patch: entry \"redteam-ui\" not found\ndsh: [dsh-purge] patch: entry \"redteam-mode\" not found\ndsh: [dsh-purge] patch: entry \"redteam-mode-store\" not found\ndsh: [dsh-purge] patch: entry \"redteam-mode-ui\" not found\ndsh: [dsh-purge] patch: entry \"dsh-purge\" not found\n"
111
- },
112
- {
113
- "id": "J1.remove",
114
- "result": "PASS",
115
- "reason": "remove exit=0",
116
- "stderr": "Already up to date\n\ndependencies:\n- dsh-purge link:/tmp/flow-sample/YuJunZhiXue__dsh-purge\n\nDone in 17ms using pnpm v12.15.0\n"
117
- },
118
- {
119
- "id": "J1.clean",
120
- "result": "PASS",
121
- "reason": "layer/dependency gone after remove"
122
- },
123
- {
124
- "id": "J4.tree-load",
125
- "result": "PASS",
126
- "reason": "keyless boot reached the credential boundary",
127
- "stderr": "\ndsh: warning: 1 entry did not activate\ndsh-purge-redteam-ui (dsh-purge/redteam/ui): pending (waiting for service: webServer)\ndsh: MISSING_CREDENTIAL: llm-deepseek: no API key for provider route \"deepseek-official\"; store DEEPSEEK_API_KEY through the credentials service (the web Models page writes it), or export DEEPSEEK_API_KEY in the launching environment\n"
128
- },
129
- {
130
- "id": "J6.upgrade",
131
- "result": "not-run",
132
- "reason": "no --previous package supplied"
133
- },
134
- {
135
- "id": "J6.rollback",
136
- "result": "not-run",
137
- "reason": "no --previous package supplied"
138
- },
139
- {
140
- "id": "J3.config",
141
- "result": "not-run",
142
- "reason": "invalid-config harness not implemented; do not claim J3"
143
- },
144
- {
145
- "id": "J5.permissions",
146
- "result": "not-run",
147
- "reason": "permissions/disclosure review is manual"
148
- },
149
- {
150
- "id": "J7.observe",
151
- "result": "not-run",
152
- "reason": "observability probe not implemented"
153
- },
154
- {
155
- "id": "J8.client",
156
- "result": "not-run",
157
- "reason": "client-shape probe not implemented"
158
- }
159
- ],
160
- "summary": {
161
- "pass": 9,
162
- "warn": 0,
163
- "fail": 0,
164
- "notRun": 6
165
- },
166
- "conclusion": "flow-warn"
167
- }
168
- },
169
- "layerProbe": {
170
- "command": "/tmp/dsh022/node_modules/@deepseek-ai/dsh/lib/bin.js --profile flow-layer --dump-config",
171
- "dshHome": "/tmp/dsh-flow-layer-ZwrR4e",
172
- "profile": "flow-layer",
173
- "createExit": 0,
174
- "addExit": 0,
175
- "dumpExit": 0,
176
- "mainRowPresent": false,
177
- "redteamRowIds": [
178
- "dsh-purge-redteam",
179
- "dsh-purge-redteam-store",
180
- "dsh-purge-redteam-ui"
181
- ],
182
- "missingPatchEntries": [
183
- "redteam-store",
184
- "redteam-ui",
185
- "redteam-mode",
186
- "redteam-mode-store",
187
- "redteam-mode-ui",
188
- "dsh-purge"
189
- ],
190
- "profileBundles": [
191
- "@deepseek-ai/dsh-base",
192
- "@deepseek-ai/dsh-headless",
193
- "dsh-purge"
194
- ],
195
- "dumpStderr": "dsh: [dsh-purge] patch: entry \"redteam-store\" not found\ndsh: [dsh-purge] patch: entry \"redteam-ui\" not found\ndsh: [dsh-purge] patch: entry \"redteam-mode\" not found\ndsh: [dsh-purge] patch: entry \"redteam-mode-store\" not found\ndsh: [dsh-purge] patch: entry \"redteam-mode-ui\" not found\ndsh: [dsh-purge] patch: entry \"dsh-purge\" not found\n",
196
- "cleanedUp": true
197
- },
198
- "checks": [
199
- {
200
- "id": "J1.profile",
201
- "result": "PASS",
202
- "reason": "create profile exit=0",
203
- "stderr": ""
204
- },
205
- {
206
- "id": "J1.install",
207
- "result": "PASS",
208
- "reason": "add exit=0",
209
- "stderr": "[WARN] The package dsh-purge, which you have just pnpm linked, has the following peerDependencies specified in its package.json:\n\n - @deepseek-ai/cordis@^4.0.1\n\nThe linked in dependency will not resolve the peer dependencies from the target node_modules.\nThis might cause issues in your project. To resolve this, you may use the \"file:\" protocol to reference the local dependency.\nAlready up to date\n\ndependencies:\n+ dsh-purge <- ../../../flow-sample/YuJunZhiXue__dsh-purge\n\nDone in 25ms using pnpm v12.15.0\n"
210
- },
211
- {
212
- "id": "J1.dump",
213
- "result": "PASS",
214
- "reason": "dump exit=0",
215
- "stderr": "dsh: [dsh-purge] patch: entry \"redteam-store\" not found\ndsh: [dsh-purge] patch: entry \"redteam-ui\" not found\ndsh: [dsh-purge] patch: entry \"redteam-mode\" not found\ndsh: [dsh-purge] patch: entry \"redteam-mode-store\" not found\ndsh: [dsh-purge] patch: entry \"redteam-mode-ui\" not found\ndsh: [dsh-purge] patch: entry \"dsh-purge\" not found\n"
216
- },
217
- {
218
- "id": "J1.layer",
219
- "result": "PASS",
220
- "reason": "layer/entry appears in dump"
221
- },
222
- {
223
- "id": "J2.disable",
224
- "result": "PASS",
225
- "reason": "row dsh-purge-redteam disabled",
226
- "stderr": "dsh: [dsh-purge] patch: entry \"redteam-store\" not found\ndsh: [dsh-purge] patch: entry \"redteam-ui\" not found\ndsh: [dsh-purge] patch: entry \"redteam-mode\" not found\ndsh: [dsh-purge] patch: entry \"redteam-mode-store\" not found\ndsh: [dsh-purge] patch: entry \"redteam-mode-ui\" not found\ndsh: [dsh-purge] patch: entry \"dsh-purge\" not found\n"
227
- },
228
- {
229
- "id": "J2.enable",
230
- "result": "PASS",
231
- "reason": "row dsh-purge-redteam enabled again",
232
- "stderr": "dsh: [dsh-purge] patch: entry \"redteam-store\" not found\ndsh: [dsh-purge] patch: entry \"redteam-ui\" not found\ndsh: [dsh-purge] patch: entry \"redteam-mode\" not found\ndsh: [dsh-purge] patch: entry \"redteam-mode-store\" not found\ndsh: [dsh-purge] patch: entry \"redteam-mode-ui\" not found\ndsh: [dsh-purge] patch: entry \"dsh-purge\" not found\n"
233
- },
234
- {
235
- "id": "J1.remove",
236
- "result": "PASS",
237
- "reason": "remove exit=0",
238
- "stderr": "Already up to date\n\ndependencies:\n- dsh-purge link:/tmp/flow-sample/YuJunZhiXue__dsh-purge\n\nDone in 17ms using pnpm v12.15.0\n"
239
- },
240
- {
241
- "id": "J1.clean",
242
- "result": "PASS",
243
- "reason": "layer/dependency gone after remove"
244
- },
245
- {
246
- "id": "J4.tree-load",
247
- "result": "PASS",
248
- "reason": "keyless boot reached the credential boundary",
249
- "stderr": "\ndsh: warning: 1 entry did not activate\ndsh-purge-redteam-ui (dsh-purge/redteam/ui): pending (waiting for service: webServer)\ndsh: MISSING_CREDENTIAL: llm-deepseek: no API key for provider route \"deepseek-official\"; store DEEPSEEK_API_KEY through the credentials service (the web Models page writes it), or export DEEPSEEK_API_KEY in the launching environment\n"
250
- },
251
- {
252
- "id": "J6.upgrade",
253
- "result": "not-run",
254
- "reason": "no --previous package supplied"
255
- },
256
- {
257
- "id": "J6.rollback",
258
- "result": "not-run",
259
- "reason": "no --previous package supplied"
260
- },
261
- {
262
- "id": "J3.config",
263
- "result": "not-run",
264
- "reason": "invalid-config harness not implemented; do not claim J3"
265
- },
266
- {
267
- "id": "J5.permissions",
268
- "result": "not-run",
269
- "reason": "permissions/disclosure review is manual"
270
- },
271
- {
272
- "id": "J7.observe",
273
- "result": "not-run",
274
- "reason": "observability probe not implemented"
275
- },
276
- {
277
- "id": "J8.client",
278
- "result": "not-run",
279
- "reason": "client-shape probe not implemented"
280
- }
281
- ],
282
- "verdicts": {
283
- "J1": "partial",
284
- "J2": "partial",
285
- "J4": "pass",
286
- "J6": "not-run"
287
- },
288
- "classification": "harness-partial",
289
- "caveats": [
290
- "J1 is partial: the package postinstall was not run (`--ignore-scripts`); the main `dsh-purge` profile row is absent even though add/dump/remove succeeded.",
291
- "J2 is partial: the overlay toggled `dsh-purge-redteam`, not the main `dsh-purge` row.",
292
- "J4 reached the credential boundary, but the main plugin was not mounted; this proves tree-load only.",
293
- "Actual package version 1.1.86 differs from entry18.json 1.1.85."
294
- ],
295
- "limitations": [
296
- "J3/J5/J7/J8 are not covered by journey-runtime.",
297
- "This is a local-directory install (`dsh plugin add <dir>`), not a registry tarball install."
298
- ],
299
- "summary": {
300
- "checks": {
301
- "pass": 9,
302
- "warn": 0,
303
- "fail": 0,
304
- "blocked": 0,
305
- "partial": 0,
306
- "notRun": 6
307
- },
308
- "verdicts": {
309
- "pass": 1,
310
- "fail": 0,
311
- "blocked": 0,
312
- "partial": 2,
313
- "notRun": 1
314
- }
315
- },
316
- "conclusion": "flow-partial"
317
- }