dsh-standards 0.0.2 → 1.0.0
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.
- package/40-checker/.github/workflows/plugin-verify.yml +70 -0
- package/40-checker/README.md +251 -0
- package/40-checker/bin/dsh-levels.mjs +15 -0
- package/40-checker/bin/dsh-plugin-verify.mjs +8 -0
- package/40-checker/fixtures/bad/index.mjs +12 -0
- package/40-checker/fixtures/bad/package.json +15 -0
- package/40-checker/fixtures/bad-manifest/index.js +1 -0
- package/40-checker/fixtures/bad-manifest/package.json +5 -0
- package/40-checker/fixtures/bundle/cordis.patch.yml +3 -0
- package/40-checker/fixtures/bundle/package.json +15 -0
- package/40-checker/fixtures/bundle/server.mjs +7 -0
- package/40-checker/fixtures/bundle-v0/cordis.patch.yml +3 -0
- package/40-checker/fixtures/bundle-v0/package.json +21 -0
- package/40-checker/fixtures/bundle-v0/server.mjs +7 -0
- package/40-checker/fixtures/client-missing/client.js +1 -0
- package/40-checker/fixtures/client-missing/index.js +1 -0
- package/40-checker/fixtures/client-missing/package.json +6 -0
- package/40-checker/fixtures/flow-config/index.js +9 -0
- package/40-checker/fixtures/flow-config/package.json +10 -0
- package/40-checker/fixtures/fs-write/index.mjs +7 -0
- package/40-checker/fixtures/fs-write/package.json +10 -0
- package/40-checker/fixtures/good/index.mjs +10 -0
- package/40-checker/fixtures/good/package.json +19 -0
- package/40-checker/fixtures/hang/index.mjs +5 -0
- package/40-checker/fixtures/hang/package.json +10 -0
- package/40-checker/fixtures/known-answer/expected.json +18 -0
- package/40-checker/fixtures/market-index-real.json +18 -0
- package/40-checker/fixtures/market-index.json +18 -0
- package/40-checker/fixtures/negative/bad-entry/package.json +1 -0
- package/40-checker/fixtures/negative/no-entry/package.json +1 -0
- package/40-checker/fixtures/negative/no-patch/package.json +1 -0
- package/40-checker/fixtures/negative/root-missing/cordis.patch.yml +2 -0
- package/40-checker/fixtures/negative/root-missing/package.json +1 -0
- package/40-checker/fixtures/negative/workspace/package.json +1 -0
- package/40-checker/package.json +22 -0
- package/40-checker/results/boost/REPORT.md +304 -0
- package/40-checker/results/boost/lev12458.json +1747 -0
- package/40-checker/results/client/README.md +16 -0
- package/40-checker/results/entry/18/DDDMUC__dsh-free-search.json +381 -0
- package/40-checker/results/entry/18/DDDMUC__dsh-free-search.runtime.json +34 -0
- package/40-checker/results/entry/18/Ebony-Vinyl__dsh-our-free-model.json +361 -0
- package/40-checker/results/entry/18/Ebony-Vinyl__dsh-our-free-model.runtime.json +34 -0
- package/40-checker/results/entry/18/README.md +24 -0
- package/40-checker/results/entry/18/RUNTIME.md +18 -0
- package/40-checker/results/entry/18/SeaOf0__dsh-redteam-model.json +391 -0
- package/40-checker/results/entry/18/YuJunZhiXue__dsh-purge.json +432 -0
- package/40-checker/results/entry/18/ci-diet.json +365 -0
- package/40-checker/results/entry/18/ci-diet.runtime-attempt.json +38 -0
- package/40-checker/results/entry/18/daily-log.json +357 -0
- package/40-checker/results/entry/18/daily-log.runtime.json +519 -0
- package/40-checker/results/entry/18/fullbase/ATTRIBUTION.md +29 -0
- package/40-checker/results/entry/18/fullbase/DDDMUC__dsh-free-search.json +99 -0
- package/40-checker/results/entry/18/fullbase/Ebony-Vinyl__dsh-our-free-model.json +95 -0
- package/40-checker/results/entry/18/fullbase/REPORT.md +261 -0
- package/40-checker/results/entry/18/fullbase/SeaOf0__dsh-redteam-model.json +144 -0
- package/40-checker/results/entry/18/fullbase/YuJunZhiXue__dsh-purge.json +106 -0
- package/40-checker/results/entry/18/fullbase/ci-diet.json +99 -0
- package/40-checker/results/entry/18/fullbase/daily-log.json +94 -0
- package/40-checker/results/entry/18/fullbase/howmp__dsh-pentest.json +104 -0
- package/40-checker/results/entry/18/fullbase/kingcharleslzy-ai__dsh-purge.json +143 -0
- package/40-checker/results/entry/18/fullbase/liguobao__ds-harness-remote.json +134 -0
- package/40-checker/results/entry/18/fullbase/mmparko__dsh-purge.json +138 -0
- package/40-checker/results/entry/18/fullbase/project-memory.json +108 -0
- package/40-checker/results/entry/18/fullbase/qiushi.json +94 -0
- package/40-checker/results/entry/18/fullbase/shaobeichen__dsh-pocket.json +94 -0
- package/40-checker/results/entry/18/fullbase/status-rotator.json +94 -0
- package/40-checker/results/entry/18/fullbase/summary.json +297 -0
- package/40-checker/results/entry/18/fullbase/telemetry.json +94 -0
- package/40-checker/results/entry/18/fullbase/ui-auth.json +94 -0
- package/40-checker/results/entry/18/fullbase/verification.json +94 -0
- package/40-checker/results/entry/18/fullbase/ysr666__dsh-vision-router.json +106 -0
- package/40-checker/results/entry/18/howmp__dsh-pentest.json +361 -0
- package/40-checker/results/entry/18/kingcharleslzy-ai__dsh-purge.json +411 -0
- package/40-checker/results/entry/18/liguobao__ds-harness-remote.json +379 -0
- package/40-checker/results/entry/18/mmparko__dsh-purge.json +441 -0
- package/40-checker/results/entry/18/project-memory.json +361 -0
- package/40-checker/results/entry/18/project-memory.runtime.json +519 -0
- package/40-checker/results/entry/18/qiushi.json +353 -0
- package/40-checker/results/entry/18/qiushi.runtime.json +519 -0
- package/40-checker/results/entry/18/realweb/REPORT.md +73 -0
- package/40-checker/results/entry/18/realweb/SeaOf0__dsh-redteam-model.json +104 -0
- package/40-checker/results/entry/18/realweb/YuJunZhiXue__dsh-purge.json +64 -0
- package/40-checker/results/entry/18/realweb/howmp__dsh-pentest.json +65 -0
- package/40-checker/results/entry/18/realweb/kingcharleslzy-ai__dsh-purge.json +75 -0
- package/40-checker/results/entry/18/realweb/mmparko__dsh-purge.json +70 -0
- package/40-checker/results/entry/18/realweb/shaobeichen__dsh-pocket.json +56 -0
- package/40-checker/results/entry/18/realweb/summary.json +196 -0
- package/40-checker/results/entry/18/realweb/ui-auth.json +56 -0
- package/40-checker/results/entry/18/realweb/ysr666__dsh-vision-router.json +61 -0
- package/40-checker/results/entry/18/richbase/REPORT.md +70 -0
- package/40-checker/results/entry/18/richbase/SeaOf0__dsh-redteam-model.json +61 -0
- package/40-checker/results/entry/18/richbase/SeaOf0__dsh-redteam-model.log +38 -0
- package/40-checker/results/entry/18/shaobeichen__dsh-pocket.json +363 -0
- package/40-checker/results/entry/18/status-rotator.json +362 -0
- package/40-checker/results/entry/18/status-rotator.runtime.json +519 -0
- package/40-checker/results/entry/18/summary.json +266 -0
- package/40-checker/results/entry/18/targetonly/DDDMUC__dsh-free-search.json +34 -0
- package/40-checker/results/entry/18/targetonly/Ebony-Vinyl__dsh-our-free-model.json +34 -0
- package/40-checker/results/entry/18/targetonly/SeaOf0__dsh-redteam-model.json +84 -0
- package/40-checker/results/entry/18/targetonly/YuJunZhiXue__dsh-purge.json +52 -0
- package/40-checker/results/entry/18/targetonly/ci-diet.json +34 -0
- package/40-checker/results/entry/18/targetonly/daily-log.json +34 -0
- package/40-checker/results/entry/18/targetonly/howmp__dsh-pentest.json +46 -0
- package/40-checker/results/entry/18/targetonly/kingcharleslzy-ai__dsh-purge.json +61 -0
- package/40-checker/results/entry/18/targetonly/liguobao__ds-harness-remote.json +39 -0
- package/40-checker/results/entry/18/targetonly/mmparko__dsh-purge.json +57 -0
- package/40-checker/results/entry/18/targetonly/project-memory.json +34 -0
- package/40-checker/results/entry/18/targetonly/qiushi.json +34 -0
- package/40-checker/results/entry/18/targetonly/shaobeichen__dsh-pocket.json +34 -0
- package/40-checker/results/entry/18/targetonly/status-rotator.json +34 -0
- package/40-checker/results/entry/18/targetonly/summary.json +133 -0
- package/40-checker/results/entry/18/targetonly/telemetry.json +34 -0
- package/40-checker/results/entry/18/targetonly/ui-auth.json +34 -0
- package/40-checker/results/entry/18/targetonly/verification.json +34 -0
- package/40-checker/results/entry/18/targetonly/ysr666__dsh-vision-router.json +43 -0
- package/40-checker/results/entry/18/telemetry.json +349 -0
- package/40-checker/results/entry/18/ui-auth.json +369 -0
- package/40-checker/results/entry/18/verification.json +358 -0
- package/40-checker/results/entry/18/ysr666__dsh-vision-router.json +409 -0
- package/40-checker/results/fixtures/bad.json +347 -0
- package/40-checker/results/fixtures/bundle.json +378 -0
- package/40-checker/results/fixtures/good-listing.json +382 -0
- package/40-checker/results/fixtures/good-static.json +322 -0
- package/40-checker/results/fixtures/good.json +375 -0
- package/40-checker/results/fixtures/good.sarif +274 -0
- package/40-checker/results/flow/README.md +19 -0
- package/40-checker/results/flow/j3-j7-fixture.json +51 -0
- package/40-checker/results/flow/j5-j8-client-missing.json +45 -0
- package/40-checker/results/flow/j5-j8-good.json +45 -0
- package/40-checker/results/flow/journey-fixture-bundle.json +90 -0
- package/40-checker/results/flow/journey-fixture-j1-j2-j4-j6.json +107 -0
- package/40-checker/results/flow/real/DDDMUC__dsh-free-search.json +297 -0
- package/40-checker/results/flow/real/REPORT.md +335 -0
- package/40-checker/results/flow/real/YuJunZhiXue__dsh-purge.json +317 -0
- package/40-checker/results/flow/real/ci-diet.json +351 -0
- package/40-checker/results/flow/real/daily-log.json +286 -0
- package/40-checker/results/flow/real/index.json +325 -0
- package/40-checker/results/flow/real/project-memory.json +290 -0
- package/40-checker/results/flow/real/qiushi.json +277 -0
- package/40-checker/results/flow/real/status-rotator.json +275 -0
- package/40-checker/results/flow/real/telemetry.json +178 -0
- package/40-checker/results/flow/real/ui-auth.json +288 -0
- package/40-checker/results/flow/real/verification.json +265 -0
- package/40-checker/results/governance/co-maintainer-packet.md +85 -0
- package/40-checker/results/l1/ci-diet.json +406 -0
- package/40-checker/results/l1/npm-dsh-telemetry-redactor-0.1.0.json +390 -0
- package/40-checker/results/l1/npm-dsh-verification-receipt-0.1.0.json +406 -0
- package/40-checker/results/l1/npm-qiushi-dsh-evidence-audit-0.1.0.json +394 -0
- package/40-checker/results/l1/npm-zzerx-dsh-plugin-daily-log-0.4.3.json +405 -0
- package/40-checker/results/l1/project-memory.json +402 -0
- package/40-checker/results/l1/source-DDDMUC__dsh-free-search.json +422 -0
- package/40-checker/results/l1/source-Ebony-Vinyl__dsh-our-free-model.json +421 -0
- package/40-checker/results/l1/source-SeaOf0__dsh-redteam-model.json +432 -0
- package/40-checker/results/l1/source-YuJunZhiXue__dsh-purge.json +473 -0
- package/40-checker/results/l1/source-howmp__dsh-pentest.json +402 -0
- package/40-checker/results/l1/source-kingcharleslzy-ai__dsh-purge.json +452 -0
- package/40-checker/results/l1/source-liguobao__ds-harness-remote.json +420 -0
- package/40-checker/results/l1/source-mmparko__dsh-purge.json +482 -0
- package/40-checker/results/l1/source-shaobeichen__dsh-pocket.json +404 -0
- package/40-checker/results/l1/source-ysr666__dsh-vision-router.json +384 -0
- package/40-checker/results/l1/status-rotator.json +403 -0
- package/40-checker/results/l1/ui-auth.json +429 -0
- package/40-checker/results/l1/ysr666__dsh-vision-router.published.json +384 -0
- package/40-checker/results/lev3/REPORT.md +342 -0
- package/40-checker/results/lev3/lev3.json +4835 -0
- package/40-checker/results/lev6/REPORT.md +460 -0
- package/40-checker/results/lev6/capture-sample.json +241 -0
- package/40-checker/results/lev6/capture.jsonl +4 -0
- package/40-checker/results/lev6/lev6.json +245 -0
- package/40-checker/results/lev6/replication-r1.json +245 -0
- package/40-checker/results/levels/README.md +16 -0
- package/40-checker/results/levels/dsh-plugin-doctor.json +141 -0
- package/40-checker/results/levels/dsh-plugin-guide.json +136 -0
- package/40-checker/results/m1/dsh-ci-diet-0.5.2.json +352 -0
- package/40-checker/results/m1/dsh-status-rotator-0.38.0.json +349 -0
- package/40-checker/results/m1/dsh-telemetry-redactor-0.1.0.json +336 -0
- package/40-checker/results/m1/dsh-ui-auth-0.7.1.json +356 -0
- package/40-checker/results/m1/dsh-verification-receipt-0.1.0.json +344 -0
- package/40-checker/results/m1/index-level.json +13 -0
- package/40-checker/results/m1/levels.json +72100 -0
- package/40-checker/results/m1/qiushi-dsh-evidence-audit-0.1.0.json +339 -0
- package/40-checker/results/m1/yolk_vat-y-dsh-project-memory-0.6.7.json +348 -0
- package/40-checker/results/m1/zzerx-dsh-plugin-daily-log-0.4.3.json +344 -0
- package/40-checker/results/m2/dsh-ci-diet.json +421 -0
- package/40-checker/results/m2/dsh-ci-diet.unshare-landlock.json +424 -0
- package/40-checker/results/m2/dsh-ci-diet.unshare.json +423 -0
- package/40-checker/results/m2/fixture-bundle.image.json +404 -0
- package/40-checker/results/m2/fixture-bundle.json +392 -0
- package/40-checker/results/m2/fixture-bundle.landlock.json +396 -0
- package/40-checker/results/m2/fixture-bundle.unshare.json +395 -0
- package/40-checker/results/m2/fs-write.json +338 -0
- package/40-checker/results/m2/hang.json +31 -0
- package/40-checker/results/m2/hang.unshare-landlock.json +34 -0
- package/40-checker/results/m2/hang.unshare.json +33 -0
- package/40-checker/results/m2/project-memory.json +417 -0
- package/40-checker/results/m2/status-rotator.json +418 -0
- package/40-checker/results/m2/ui-auth.json +444 -0
- package/40-checker/results/negative/bad-entry.json +345 -0
- package/40-checker/results/negative/no-entry.json +345 -0
- package/40-checker/results/negative/no-patch.json +344 -0
- package/40-checker/results/negative/root-missing.json +344 -0
- package/40-checker/results/negative/root-missing.runtime.json +30 -0
- package/40-checker/results/negative/summary.json +51 -0
- package/40-checker/results/negative/workspace.json +344 -0
- package/40-checker/results/patched/Ebony-Vinyl__dsh-our-free-model.json +334 -0
- package/40-checker/results/patched/Ebony-Vinyl__dsh-our-free-model.overlay.json +335 -0
- package/40-checker/results/patched/SeaOf0__dsh-redteam-model.json +315 -0
- package/40-checker/results/patched/SeaOf0__dsh-redteam-model.overlay.json +316 -0
- package/40-checker/results/patched/mmparko__dsh-purge.json +357 -0
- package/40-checker/results/patched/mmparko__dsh-purge.overlay.json +358 -0
- package/40-checker/results/patched/shaobeichen__dsh-pocket.json +315 -0
- package/40-checker/results/patched/shaobeichen__dsh-pocket.overlay.json +316 -0
- package/40-checker/results/real/DDDMUC__dsh-free-search.json +344 -0
- package/40-checker/results/real/Ebony-Vinyl__dsh-our-free-model.json +343 -0
- package/40-checker/results/real/SeaOf0__dsh-redteam-model.json +354 -0
- package/40-checker/results/real/YuJunZhiXue__dsh-purge.json +395 -0
- package/40-checker/results/real/howmp__dsh-pentest.json +324 -0
- package/40-checker/results/real/kingcharleslzy-ai__dsh-purge.json +374 -0
- package/40-checker/results/real/liguobao__ds-harness-remote.json +342 -0
- package/40-checker/results/real/mmparko__dsh-purge.json +404 -0
- package/40-checker/results/real/shaobeichen__dsh-pocket.json +326 -0
- package/40-checker/results/real/ysr666__dsh-vision-router.json +372 -0
- package/40-checker/results/real/ysr666__dsh-vision-router.listing.json +378 -0
- package/40-checker/results/round-robin/compare.json +52 -0
- package/40-checker/results/round-robin/runner-a.json +9 -0
- package/40-checker/results/round-robin/runner-b.json +9 -0
- package/40-checker/results/sample20/123dbl__dsh-side-session.json +344 -0
- package/40-checker/results/sample20/173787247__dsh-wsl-dns.json +360 -0
- package/40-checker/results/sample20/863683348__dsh-insight.json +375 -0
- package/40-checker/results/sample20/Ansellwan__DSH-Custom-Wallpaper.json +344 -0
- package/40-checker/results/sample20/Jamailar__beav-deepseek-harness.json +341 -0
- package/40-checker/results/sample20/ManoloRemiddi__DSH-Metafolder-Plugin.json +344 -0
- package/40-checker/results/sample20/NEAZ71eve__dsh-tool-github.json +384 -0
- package/40-checker/results/sample20/README.md +3 -0
- package/40-checker/results/sample20/RINGOLINK__dsh-desktop-shell.json +352 -0
- package/40-checker/results/sample20/Zxznb666__dsh-qoder-cn-subagent.json +349 -0
- package/40-checker/results/sample20/agent-mobile__dsh-mobile-gateway.json +353 -0
- package/40-checker/results/sample20/fangqiing__dsh-knowledge-lite.json +359 -0
- package/40-checker/results/sample20/fzy0517__deepseek-harness-session-cleaner.json +344 -0
- package/40-checker/results/sample20/gjy1992__dsh-diagram.json +350 -0
- package/40-checker/results/sample20/mrme000m__dsh-prime-orchestrator.json +414 -0
- package/40-checker/results/sample20/redstonedust__dsh-solidworks-copilot.json +362 -0
- package/40-checker/results/sample20/summary.json +234 -0
- package/40-checker/results/sample20/w2112515__dsh-remote-host.json +344 -0
- package/40-checker/results/sample20/wkfedor__deepseek-harness-voice-input.json +350 -0
- package/40-checker/results/sample20/xfgil__dsh-hot-reloader.json +344 -0
- package/40-checker/results/sample20/yizhiyizhi0128__dsh-peak-scheduler.json +360 -0
- package/40-checker/results/sample20-ci/123dbl__dsh-side-session.json +344 -0
- package/40-checker/results/sample20-ci/173787247__dsh-wsl-dns.json +360 -0
- package/40-checker/results/sample20-ci/863683348__dsh-insight.json +375 -0
- package/40-checker/results/sample20-ci/Ansellwan__DSH-Custom-Wallpaper.json +344 -0
- package/40-checker/results/sample20-ci/Jamailar__beav-deepseek-harness.json +367 -0
- package/40-checker/results/sample20-ci/ManoloRemiddi__DSH-Metafolder-Plugin.json +344 -0
- package/40-checker/results/sample20-ci/NEAZ71eve__dsh-tool-github.json +392 -0
- package/40-checker/results/sample20-ci/README.md +5 -0
- package/40-checker/results/sample20-ci/RINGOLINK__dsh-desktop-shell.json +361 -0
- package/40-checker/results/sample20-ci/Zxznb666__dsh-qoder-cn-subagent.json +349 -0
- package/40-checker/results/sample20-ci/agent-mobile__dsh-mobile-gateway.json +384 -0
- package/40-checker/results/sample20-ci/fangqiing__dsh-knowledge-lite.json +360 -0
- package/40-checker/results/sample20-ci/fzy0517__deepseek-harness-session-cleaner.json +354 -0
- package/40-checker/results/sample20-ci/gjy1992__dsh-diagram.json +381 -0
- package/40-checker/results/sample20-ci/mrme000m__dsh-prime-orchestrator.json +452 -0
- package/40-checker/results/sample20-ci/redstonedust__dsh-solidworks-copilot.json +371 -0
- package/40-checker/results/sample20-ci/summary.json +195 -0
- package/40-checker/results/sample20-ci/w2112515__dsh-remote-host.json +399 -0
- package/40-checker/results/sample20-ci/wkfedor__deepseek-harness-voice-input.json +358 -0
- package/40-checker/results/sample20-ci/xfgil__dsh-hot-reloader.json +344 -0
- package/40-checker/results/sample20-ci/yizhiyizhi0128__dsh-peak-scheduler.json +370 -0
- package/40-checker/results/sample20-ci/zed1902209846-dotcom__DPwhale-plugin.json +231 -0
- package/40-checker/results/sample60/123dbl__dsh-side-session.json +344 -0
- package/40-checker/results/sample60/173787247__dsh-wsl-dns.json +360 -0
- package/40-checker/results/sample60/863683348__dsh-insight.json +375 -0
- package/40-checker/results/sample60/Anionex__dsh-turn-rewind.json +349 -0
- package/40-checker/results/sample60/Ansellwan__DSH-Custom-Wallpaper.json +344 -0
- package/40-checker/results/sample60/Ebony-Vinyl__EAC-Pack.json +352 -0
- package/40-checker/results/sample60/EricWang1358__dsh-web-studyhub.json +376 -0
- package/40-checker/results/sample60/GanyuanRan__Aegis.json +349 -0
- package/40-checker/results/sample60/HiSeax__dsh-codely.json +358 -0
- package/40-checker/results/sample60/Jamailar__beav-deepseek-harness.json +341 -0
- package/40-checker/results/sample60/ManoloRemiddi__DSH-Metafolder-Plugin.json +344 -0
- package/40-checker/results/sample60/MichengAI__dsh-archive-manager.json +357 -0
- package/40-checker/results/sample60/MichengAI__dsh-im-connect.json +347 -0
- package/40-checker/results/sample60/MindLab-Research__dsh-generative-ui.json +350 -0
- package/40-checker/results/sample60/NEAZ71eve__dsh-tool-github.json +384 -0
- package/40-checker/results/sample60/README.md +7 -0
- package/40-checker/results/sample60/RINGOLINK__dsh-desktop-shell.json +352 -0
- package/40-checker/results/sample60/SeanTolstoyevski__dsh-code-review.json +352 -0
- package/40-checker/results/sample60/Tasihi89__dsh-talk-map.json +344 -0
- package/40-checker/results/sample60/Tyan66666__billion-context-dsh.json +469 -0
- package/40-checker/results/sample60/V1ki__dsh-plugin-subscriptions.json +350 -0
- package/40-checker/results/sample60/Yu-tao-Li__dsh-computer-use-win.json +341 -0
- package/40-checker/results/sample60/ZSeven-W__dsh-ios.json +344 -0
- package/40-checker/results/sample60/Zxznb666__dsh-qoder-cn-subagent.json +349 -0
- package/40-checker/results/sample60/agent-mobile__dsh-mobile-gateway.json +353 -0
- package/40-checker/results/sample60/c3cvld7aag__fujiang-dsh.json +361 -0
- package/40-checker/results/sample60/cxzrdxy__dsh-file-explorer.json +389 -0
- package/40-checker/results/sample60/dhicoc__dsh-reverse-skill.json +341 -0
- package/40-checker/results/sample60/fangqiing__dsh-knowledge-lite.json +359 -0
- package/40-checker/results/sample60/fwerkor__local-shell-mcp.json +369 -0
- package/40-checker/results/sample60/fzy0517__deepseek-harness-session-cleaner.json +344 -0
- package/40-checker/results/sample60/gjy1992__dsh-diagram.json +350 -0
- package/40-checker/results/sample60/howmp__dsh-pentest.json +341 -0
- package/40-checker/results/sample60/linhay__harmony-next.skills.json +344 -0
- package/40-checker/results/sample60/liustack__modsearch.json +371 -0
- package/40-checker/results/sample60/mmparko__dsh-purge.json +372 -0
- package/40-checker/results/sample60/mrme000m__dsh-prime-orchestrator.json +414 -0
- package/40-checker/results/sample60/omdsh-dev__dsh_workflow.json +439 -0
- package/40-checker/results/sample60/redstonedust__dsh-solidworks-copilot.json +362 -0
- package/40-checker/results/sample60/seriousz158__dsh-memory.json +350 -0
- package/40-checker/results/sample60/shanliuling__dsh-image-gen.json +353 -0
- package/40-checker/results/sample60/shanliuling__skills-link.json +344 -0
- package/40-checker/results/sample60/shengsheng90__DSH-taskboard.json +341 -0
- package/40-checker/results/sample60/sjh9714__dsh-win32.json +374 -0
- package/40-checker/results/sample60/skymecode__deepseek-harness-for-vscode.json +351 -0
- package/40-checker/results/sample60/sopaco__terrain.json +352 -0
- package/40-checker/results/sample60/summary.json +658 -0
- package/40-checker/results/sample60/tinqiao-oss__engramory.json +352 -0
- package/40-checker/results/sample60/tong-io__tongflow.json +359 -0
- package/40-checker/results/sample60/vibeinging__dsh-desktop.json +382 -0
- package/40-checker/results/sample60/w2112515__dsh-remote-host.json +344 -0
- package/40-checker/results/sample60/wkfedor__deepseek-harness-voice-input.json +350 -0
- package/40-checker/results/sample60/wz20__dsh-dafeiyu-dot.json +349 -0
- package/40-checker/results/sample60/xfgil__dsh-hot-reloader.json +344 -0
- package/40-checker/results/sample60/yi-yezhiqiu__dsh-prompt-market.json +360 -0
- package/40-checker/results/sample60/yizhiyizhi0128__dsh-peak-scheduler.json +360 -0
- package/40-checker/results/sample60/yjh051108__dsh-routing-suite.json +366 -0
- package/40-checker/results/sample60-ci/123dbl__dsh-side-session.json +344 -0
- package/40-checker/results/sample60-ci/173787247__dsh-wsl-dns.json +360 -0
- package/40-checker/results/sample60-ci/863683348__dsh-insight.json +375 -0
- package/40-checker/results/sample60-ci/Anionex__dsh-turn-rewind.json +379 -0
- package/40-checker/results/sample60-ci/Ansellwan__DSH-Custom-Wallpaper.json +344 -0
- package/40-checker/results/sample60-ci/Ebony-Vinyl__EAC-Pack.json +362 -0
- package/40-checker/results/sample60-ci/EricWang1358__dsh-web-studyhub.json +378 -0
- package/40-checker/results/sample60-ci/GanyuanRan__Aegis.json +349 -0
- package/40-checker/results/sample60-ci/HiSeax__dsh-codely.json +368 -0
- package/40-checker/results/sample60-ci/Jamailar__beav-deepseek-harness.json +367 -0
- package/40-checker/results/sample60-ci/LiarMTTT__TavernWeave.json +231 -0
- package/40-checker/results/sample60-ci/ManoloRemiddi__DSH-Metafolder-Plugin.json +344 -0
- package/40-checker/results/sample60-ci/MichengAI__dsh-archive-manager.json +395 -0
- package/40-checker/results/sample60-ci/MichengAI__dsh-im-connect.json +404 -0
- package/40-checker/results/sample60-ci/MindLab-Research__dsh-generative-ui.json +410 -0
- package/40-checker/results/sample60-ci/NEAZ71eve__dsh-tool-github.json +392 -0
- package/40-checker/results/sample60-ci/README.md +7 -0
- package/40-checker/results/sample60-ci/RINGOLINK__dsh-desktop-shell.json +361 -0
- package/40-checker/results/sample60-ci/Ruler4396__dsh-launcher.json +231 -0
- package/40-checker/results/sample60-ci/SeanTolstoyevski__dsh-code-review.json +363 -0
- package/40-checker/results/sample60-ci/Tasihi89__dsh-talk-map.json +372 -0
- package/40-checker/results/sample60-ci/Tyan66666__billion-context-dsh.json +469 -0
- package/40-checker/results/sample60-ci/V1ki__dsh-plugin-subscriptions.json +368 -0
- package/40-checker/results/sample60-ci/Yu-tao-Li__dsh-computer-use-win.json +349 -0
- package/40-checker/results/sample60-ci/ZSeven-W__dsh-ios.json +344 -0
- package/40-checker/results/sample60-ci/Zxznb666__dsh-qoder-cn-subagent.json +349 -0
- package/40-checker/results/sample60-ci/agent-mobile__dsh-mobile-gateway.json +384 -0
- package/40-checker/results/sample60-ci/c3cvld7aag__fujiang-dsh.json +361 -0
- package/40-checker/results/sample60-ci/cxzrdxy__dsh-file-explorer.json +399 -0
- package/40-checker/results/sample60-ci/dhicoc__dsh-reverse-skill.json +352 -0
- package/40-checker/results/sample60-ci/fangqiing__dsh-knowledge-lite.json +360 -0
- package/40-checker/results/sample60-ci/fwerkor__local-shell-mcp.json +387 -0
- package/40-checker/results/sample60-ci/fzy0517__deepseek-harness-session-cleaner.json +354 -0
- package/40-checker/results/sample60-ci/gjy1992__dsh-diagram.json +381 -0
- package/40-checker/results/sample60-ci/howmp__dsh-pentest.json +361 -0
- package/40-checker/results/sample60-ci/linhay__harmony-next.skills.json +344 -0
- package/40-checker/results/sample60-ci/liustack__modsearch.json +382 -0
- package/40-checker/results/sample60-ci/mmparko__dsh-purge.json +441 -0
- package/40-checker/results/sample60-ci/mrme000m__dsh-prime-orchestrator.json +452 -0
- package/40-checker/results/sample60-ci/omdsh-dev__dsh_workflow.json +439 -0
- package/40-checker/results/sample60-ci/plastic-labs__honcho.json +231 -0
- package/40-checker/results/sample60-ci/redstonedust__dsh-solidworks-copilot.json +371 -0
- package/40-checker/results/sample60-ci/seriousz158__dsh-memory.json +351 -0
- package/40-checker/results/sample60-ci/shanliuling__dsh-image-gen.json +382 -0
- package/40-checker/results/sample60-ci/shanliuling__skills-link.json +344 -0
- package/40-checker/results/sample60-ci/shengsheng90__DSH-taskboard.json +370 -0
- package/40-checker/results/sample60-ci/sjh9714__dsh-win32.json +410 -0
- package/40-checker/results/sample60-ci/skymecode__deepseek-harness-for-vscode.json +391 -0
- package/40-checker/results/sample60-ci/sopaco__deepwiki-rs.json +231 -0
- package/40-checker/results/sample60-ci/sopaco__terrain.json +352 -0
- package/40-checker/results/sample60-ci/summary.json +555 -0
- package/40-checker/results/sample60-ci/tinqiao-oss__engramory.json +362 -0
- package/40-checker/results/sample60-ci/tong-io__tongflow.json +393 -0
- package/40-checker/results/sample60-ci/vibeinging__dsh-desktop.json +555 -0
- package/40-checker/results/sample60-ci/w2112515__dsh-remote-host.json +399 -0
- package/40-checker/results/sample60-ci/wkfedor__deepseek-harness-voice-input.json +358 -0
- package/40-checker/results/sample60-ci/wz20__dsh-dafeiyu-dot.json +390 -0
- package/40-checker/results/sample60-ci/xfgil__dsh-hot-reloader.json +344 -0
- package/40-checker/results/sample60-ci/yi-yezhiqiu__dsh-prompt-market.json +373 -0
- package/40-checker/results/sample60-ci/yizhiyizhi0128__dsh-peak-scheduler.json +370 -0
- package/40-checker/results/sample60-ci/yjh051108__dsh-routing-suite.json +437 -0
- package/40-checker/results/sample60-ci/zed1902209846-dotcom__DPwhale-plugin.json +231 -0
- package/40-checker/results/triage/REPORT.md +317 -0
- package/40-checker/results/triage/evidence/g2-rejections.txt +63 -0
- package/40-checker/results/triage/evidence/purge-baseline-0.2.1-rc.5.json +51 -0
- package/40-checker/results/triage/evidence/purge-baseline-0.2.2-alpha.2.json +51 -0
- package/40-checker/results/triage/evidence/purge-postinstall.txt +62 -0
- package/40-checker/results/triage/evidence/purge-with-profile-0.2.1-rc.5.json +71 -0
- package/40-checker/results/triage/evidence/purge-with-profile-0.2.2-alpha.2.json +71 -0
- package/40-checker/results/triage/evidence/semver-matrix.json +32 -0
- package/40-checker/results/triage/triage.json +295 -0
- package/40-checker/results/webapp/README.md +10 -0
- package/40-checker/results/webapp/summary.json +46 -0
- package/40-checker/results/webapp/web-auth.json +19 -0
- package/40-checker/results/webruntime/DDDMUC__dsh-free-search/client-export.json +7 -0
- package/40-checker/results/webruntime/DDDMUC__dsh-free-search/installed-package.json +123 -0
- package/40-checker/results/webruntime/DDDMUC__dsh-free-search/probe.json +129 -0
- package/40-checker/results/webruntime/DDDMUC__dsh-free-search/shot.png +0 -0
- package/40-checker/results/webruntime/DDDMUC__dsh-free-search/summary.md +16 -0
- package/40-checker/results/webruntime/Ebony-Vinyl__dsh-our-free-model/client-export.json +7 -0
- package/40-checker/results/webruntime/Ebony-Vinyl__dsh-our-free-model/installed-package.json +76 -0
- package/40-checker/results/webruntime/Ebony-Vinyl__dsh-our-free-model/probe.json +129 -0
- package/40-checker/results/webruntime/Ebony-Vinyl__dsh-our-free-model/shot.png +0 -0
- package/40-checker/results/webruntime/Ebony-Vinyl__dsh-our-free-model/summary.md +16 -0
- package/40-checker/results/webruntime/REPORT.md +253 -0
- package/40-checker/results/webruntime/SeaOf0__dsh-redteam-model/client-export.json +7 -0
- package/40-checker/results/webruntime/SeaOf0__dsh-redteam-model/installed-package.json +97 -0
- package/40-checker/results/webruntime/SeaOf0__dsh-redteam-model/probe.json +129 -0
- package/40-checker/results/webruntime/SeaOf0__dsh-redteam-model/shot.png +0 -0
- package/40-checker/results/webruntime/SeaOf0__dsh-redteam-model/summary.md +16 -0
- package/40-checker/results/webruntime/YuJunZhiXue__dsh-purge/client-export.json +7 -0
- package/40-checker/results/webruntime/YuJunZhiXue__dsh-purge/installed-package.json +98 -0
- package/40-checker/results/webruntime/YuJunZhiXue__dsh-purge/probe.json +136 -0
- package/40-checker/results/webruntime/YuJunZhiXue__dsh-purge/shot.png +0 -0
- package/40-checker/results/webruntime/YuJunZhiXue__dsh-purge/summary.md +16 -0
- package/40-checker/results/webruntime/ci-diet/client-export.json +10 -0
- package/40-checker/results/webruntime/ci-diet/installed-package.json +100 -0
- package/40-checker/results/webruntime/ci-diet/probe.json +129 -0
- package/40-checker/results/webruntime/ci-diet/shot.png +0 -0
- package/40-checker/results/webruntime/ci-diet/summary.md +16 -0
- package/40-checker/results/webruntime/daily-log/client-export.json +10 -0
- package/40-checker/results/webruntime/daily-log/installed-package.json +113 -0
- package/40-checker/results/webruntime/daily-log/probe.json +129 -0
- package/40-checker/results/webruntime/daily-log/shot.png +0 -0
- package/40-checker/results/webruntime/daily-log/summary.md +16 -0
- package/40-checker/results/webruntime/howmp__dsh-pentest/client-export.json +7 -0
- package/40-checker/results/webruntime/howmp__dsh-pentest/installed-package.json +90 -0
- package/40-checker/results/webruntime/howmp__dsh-pentest/probe.json +129 -0
- package/40-checker/results/webruntime/howmp__dsh-pentest/shot.png +0 -0
- package/40-checker/results/webruntime/howmp__dsh-pentest/summary.md +16 -0
- package/40-checker/results/webruntime/kingcharleslzy-ai__dsh-purge/client-export.json +7 -0
- package/40-checker/results/webruntime/kingcharleslzy-ai__dsh-purge/installed-package.json +164 -0
- package/40-checker/results/webruntime/kingcharleslzy-ai__dsh-purge/probe.json +129 -0
- package/40-checker/results/webruntime/kingcharleslzy-ai__dsh-purge/shot.png +0 -0
- package/40-checker/results/webruntime/kingcharleslzy-ai__dsh-purge/summary.md +16 -0
- package/40-checker/results/webruntime/liguobao__ds-harness-remote/client-export.json +7 -0
- package/40-checker/results/webruntime/liguobao__ds-harness-remote/installed-package.json +166 -0
- package/40-checker/results/webruntime/liguobao__ds-harness-remote/probe.json +129 -0
- package/40-checker/results/webruntime/liguobao__ds-harness-remote/shot.png +0 -0
- package/40-checker/results/webruntime/liguobao__ds-harness-remote/summary.md +16 -0
- package/40-checker/results/webruntime/local-pre-ci/README.md +67 -0
- package/40-checker/results/webruntime/local-pre-ci/client-exports.json +158 -0
- package/40-checker/results/webruntime/local-pre-ci/dsh-free-search.probe.json +119 -0
- package/40-checker/results/webruntime/local-pre-ci/dsh-pocket.probe.json +119 -0
- package/40-checker/results/webruntime/local-pre-ci/dsh-redteam-model.probe.json +119 -0
- package/40-checker/results/webruntime/local-pre-ci/qiushi-shell-only.probe.json +104 -0
- package/40-checker/results/webruntime/local-pre-ci/ui-auth-no-login.fail.json +52 -0
- package/40-checker/results/webruntime/local-pre-ci/ui-auth.probe.json +123 -0
- package/40-checker/results/webruntime/mmparko__dsh-purge/client-export.json +7 -0
- package/40-checker/results/webruntime/mmparko__dsh-purge/installed-package.json +95 -0
- package/40-checker/results/webruntime/mmparko__dsh-purge/probe.json +136 -0
- package/40-checker/results/webruntime/mmparko__dsh-purge/shot.png +0 -0
- package/40-checker/results/webruntime/mmparko__dsh-purge/summary.md +16 -0
- package/40-checker/results/webruntime/project-memory/client-export.json +7 -0
- package/40-checker/results/webruntime/project-memory/installed-package.json +118 -0
- package/40-checker/results/webruntime/project-memory/probe.json +129 -0
- package/40-checker/results/webruntime/project-memory/shot.png +0 -0
- package/40-checker/results/webruntime/project-memory/summary.md +16 -0
- package/40-checker/results/webruntime/qiushi/client-export.json +7 -0
- package/40-checker/results/webruntime/qiushi/installed-package.json +84 -0
- package/40-checker/results/webruntime/qiushi/probe.json +114 -0
- package/40-checker/results/webruntime/qiushi/shot.png +0 -0
- package/40-checker/results/webruntime/qiushi/summary.md +16 -0
- package/40-checker/results/webruntime/shaobeichen__dsh-pocket/client-export.json +7 -0
- package/40-checker/results/webruntime/shaobeichen__dsh-pocket/installed-package.json +85 -0
- package/40-checker/results/webruntime/shaobeichen__dsh-pocket/probe.json +129 -0
- package/40-checker/results/webruntime/shaobeichen__dsh-pocket/shot.png +0 -0
- package/40-checker/results/webruntime/shaobeichen__dsh-pocket/summary.md +16 -0
- package/40-checker/results/webruntime/status-rotator/client-export.json +7 -0
- package/40-checker/results/webruntime/status-rotator/installed-package.json +107 -0
- package/40-checker/results/webruntime/status-rotator/probe.json +129 -0
- package/40-checker/results/webruntime/status-rotator/shot.png +0 -0
- package/40-checker/results/webruntime/status-rotator/summary.md +16 -0
- package/40-checker/results/webruntime/summary.json +323 -0
- package/40-checker/results/webruntime/telemetry/probe.json +20 -0
- package/40-checker/results/webruntime/telemetry/summary.md +4 -0
- package/40-checker/results/webruntime/ui-auth/client-export.json +7 -0
- package/40-checker/results/webruntime/ui-auth/installed-package.json +94 -0
- package/40-checker/results/webruntime/ui-auth/probe.json +129 -0
- package/40-checker/results/webruntime/ui-auth/shot.png +0 -0
- package/40-checker/results/webruntime/ui-auth/summary.md +16 -0
- package/40-checker/results/webruntime/verification/probe.json +20 -0
- package/40-checker/results/webruntime/verification/summary.md +4 -0
- package/40-checker/results/webruntime/ysr666__dsh-vision-router/client-export.json +7 -0
- package/40-checker/results/webruntime/ysr666__dsh-vision-router/installed-package.json +142 -0
- package/40-checker/results/webruntime/ysr666__dsh-vision-router/probe.json +129 -0
- package/40-checker/results/webruntime/ysr666__dsh-vision-router/shot.png +0 -0
- package/40-checker/results/webruntime/ysr666__dsh-vision-router/summary.md +16 -0
- package/40-checker/samples/README.md +8 -0
- package/40-checker/samples/entry18.json +139 -0
- package/40-checker/samples/frame.json +485 -0
- package/40-checker/scripts/apply-overlay.mjs +59 -0
- package/40-checker/scripts/attestation-check.mjs +151 -0
- package/40-checker/scripts/bundle-smoke.mjs +126 -0
- package/40-checker/scripts/claim-check.mjs +145 -0
- package/40-checker/scripts/clause-map.mjs +94 -0
- package/40-checker/scripts/collect-fixtures.mjs +44 -0
- package/40-checker/scripts/dashboard.mjs +85 -0
- package/40-checker/scripts/dco-check.mjs +147 -0
- package/40-checker/scripts/dependabot-check.mjs +40 -0
- package/40-checker/scripts/doc-commands-check.mjs +92 -0
- package/40-checker/scripts/entry-scan.mjs +190 -0
- package/40-checker/scripts/entry-validate.mjs +291 -0
- package/40-checker/scripts/entry18-attribution.mjs +66 -0
- package/40-checker/scripts/entry18-ci.mjs +685 -0
- package/40-checker/scripts/entry18-realweb-summary.mjs +71 -0
- package/40-checker/scripts/entry18-web.mjs +307 -0
- package/40-checker/scripts/evidence-chain.mjs +100 -0
- package/40-checker/scripts/flow-index.mjs +82 -0
- package/40-checker/scripts/flow-sample-ci.mjs +529 -0
- package/40-checker/scripts/governance-check.mjs +210 -0
- package/40-checker/scripts/host-farm.mjs +165 -0
- package/40-checker/scripts/journey-config-observe.mjs +109 -0
- package/40-checker/scripts/journey-disclosure-shape.mjs +83 -0
- package/40-checker/scripts/journey-runtime.mjs +178 -0
- package/40-checker/scripts/journey.mjs +76 -0
- package/40-checker/scripts/label-drift.mjs +74 -0
- package/40-checker/scripts/label-sync.mjs +87 -0
- package/40-checker/scripts/label-verify.mjs +90 -0
- package/40-checker/scripts/landlock-exec.c +101 -0
- package/40-checker/scripts/level-audit.mjs +336 -0
- package/40-checker/scripts/m1-sidecar.mjs +126 -0
- package/40-checker/scripts/m2-runner.mjs +213 -0
- package/40-checker/scripts/round-robin.mjs +88 -0
- package/40-checker/scripts/sample-frame.mjs +72 -0
- package/40-checker/scripts/sample20-ci.mjs +25 -0
- package/40-checker/scripts/sample60-ci.mjs +25 -0
- package/40-checker/scripts/stale-check.mjs +59 -0
- package/40-checker/scripts/surveillance.mjs +88 -0
- package/40-checker/scripts/web-probe.mjs +504 -0
- package/40-checker/src/cli.mjs +300 -0
- package/40-checker/src/client-shape.mjs +37 -0
- package/40-checker/src/declarations.mjs +242 -0
- package/40-checker/src/index.mjs +8 -0
- package/40-checker/src/install-spec.mjs +67 -0
- package/40-checker/src/label.mjs +130 -0
- package/40-checker/src/manifest.mjs +364 -0
- package/40-checker/src/permissions.mjs +60 -0
- package/40-checker/src/report.mjs +204 -0
- package/40-checker/src/result.mjs +60 -0
- package/40-checker/src/runtime.mjs +299 -0
- package/40-checker/src/semver.mjs +128 -0
- package/40-checker/src/util.mjs +148 -0
- package/40-checker/test/attestation.test.mjs +59 -0
- package/40-checker/test/checks.test.mjs +172 -0
- package/40-checker/test/claim.test.mjs +28 -0
- package/40-checker/test/client-shape.test.mjs +35 -0
- package/40-checker/test/dco.test.mjs +51 -0
- package/40-checker/test/entry-validate.test.mjs +172 -0
- package/40-checker/test/governance.test.mjs +76 -0
- package/40-checker/test/label.test.mjs +97 -0
- package/40-checker/test/level-audit.test.mjs +99 -0
- package/40-checker/test/levels.test.mjs +31 -0
- package/40-checker/test/ops.test.mjs +117 -0
- package/40-checker/test/permissions.test.mjs +40 -0
- package/40-checker/test/semver.test.mjs +32 -0
- package/40-checker/test/verify.test.mjs +57 -0
- package/LICENSE +28 -0
- package/LICENSE-APACHE +190 -0
- package/LICENSE-CC-BY +23 -0
- package/NOTICE.md +11 -0
- package/README.md +146 -3
- package/bin/dsh-levels.mjs +4 -0
- package/bin/dsh-standards.mjs +17 -4
- package/docs/BOOST-FIXTURES-2026-11-02.md +38 -0
- package/docs/DEVELOPER-JOURNEY.md +40 -0
- package/docs/HOST-J3-BUG-REPORT-DRAFT.md +27 -0
- package/docs/HOST-J3-CONFIG-REPRO-2026-11-02.md +36 -0
- package/docs/NAMING-FALLBACK.md +11 -0
- package/docs/fork-policy.md +12 -0
- package/docs/full-test-plan-2026-11-02.md +207 -0
- package/docs/incident.md +37 -0
- package/docs/onboarding.md +27 -0
- package/docs/privacy.md +12 -0
- package/docs/release.md +16 -0
- package/docs/scope-security.md +62 -0
- package/docs/status-taxonomy.md +54 -0
- package/docs/sunset.md +44 -0
- package/docs/translating.md +12 -0
- package/package.json +49 -18
- package/spec/README.md +27 -0
- package/spec/boost/README.md +8 -0
- package/spec/clauses.json +253 -0
- package/spec/entry/README.md +9 -0
- package/spec/flow/README.md +8 -0
- package/spec/levels.json +371 -0
- package/spec/levels.schema.json +45 -0
- package/spec/reference-suite.json +35 -0
- package/spec/schemas/attestation.schema.json +284 -0
- package/spec/schemas/evidence.schema.json +331 -0
- package/spec/schemas/report.schema.json +64 -0
- package/index.mjs +0 -3
|
@@ -0,0 +1,335 @@
|
|
|
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.
|
|
@@ -0,0 +1,317 @@
|
|
|
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
|
+
}
|