DSH HUB
HomePlugin StorePlugin PacksCommunityRankingsResourcesPublish Guide
Plugin source
Back to catalog

wodaimnd /

wodaimnd/market-verdict

Verified

DSH 装前判定闸门 + 安装进度:装前做 tool/slot/service 冲突扫描与缓存成本估算,装中流式回放真实 pnpm 进度。功能插件,不做人工审核。

★ 0 Stars0 Forks0 IssuesN/A Community rating0 Confirmed installs
View on GitHubProject homepage
READMESource: main@2b5c800d

@local/market-verdict

DSH 市场层的判定闸门 + 安装进度。功能插件,不做人工审核。

它做什么

两件事,都是它能真做到的:

  1. 装前判定 —— 扫描 profile 里已装插件的 tool id 与 provided service 声明,找出能力级冲突; 顺带估算缓存成本(工具说明书段数)。
  2. 安装进度 —— 包装 pluginManager.installBundle,回放 .plugin-manager/logs/<op>/pnpm.log 的真实输出与进度。

它明确不做什么

不做 为什么
版本权威性判定(archive-authoritative / stale-disk 四态) 打包桌面端从自己的 archive 提供 bundle,profiles/node_modules 可能是另一代;没有可信基准时任何版本结论都是噪音。宁可弃权,不报假冲突
slot 冲突判定 DSH 允许多个插件向同一 slot 注入不同 id;把 slot 名当冲突键在本机实测产出 5 条假阳性,全是正常注入
来源可信度 / 编辑推荐 / 安全评级 目录源的职责(@local/market-lens 已在做)。本插件没有人工审核能力,不假装有
写 patch 文件 依据 dsh-market#1043:插件开关把包内所有行写成 disabled: false 会覆盖 bundle 的 !!js 条件并导致安装回滚。治理插件自己成为故障源是荒谬的

接线位置

market-lens(雷达,只读)
        │  installSpecFor(row) → spec
        ▼
market-verdict(判定 + 进度)   ← 本插件
        │  approve / warn / veto
        ▼
pluginManager.installBundle(官方安装引擎,dsh-plugin 也用它)
        │
        ▼
.ui-market(资产仓,skin/pet/preset,独立泳道,不经本插件)

market-lens 与 dsh-plugin 两者都已 ctx.inject(['pluginManager']), 所以本插件包装的是同一个官方服务 —— 从任一入口发起的安装都会经过判定。

配置

cordis.patch.yml 里的 config:

键 默认 说明
mode warn off 只报告 / warn 报告并放行 / veto critical 时硬拦
costWarnSections 8 工具+服务说明书段数超过此值才提示缓存成本
route /api/market-verdict host 侧 HTTP 端点,只接受回环
minPollMs 150 进度轮询最小间隔,防 UI 打爆宿主

HTTP 端点(只接受 loopback + POST)

op 作用
active 全部未终态安装任务(UI 刷新后可恢复队列)
status + id 单个任务快照
verdict + spec 手动判定一个候选目标

模型工具

plugin_install_verdict { spec } —— 返回 decision / findings / cost。

UI

设置页新增一节「安装判定」(settings.section,order 61,排在 dsh-plugin 的 60 之后): 输入候选 spec 点判定,下方实时显示正在跑的安装进度条与 pnpm 原始输出。

能力边界(诚实声明)

  • 静态扫描只认字面量:defineTool({ name: 'x' })、.provide('x')。 拼接出来的名字(defineTool({ name: dynName }))不在视野内。
  • 报告措辞因此是「声明于源码」,不是「运行期已注册」。
  • 进度数值取自 pnpm Progress: 行解析(规则照抄 dsh-plugin,MIT);解析不到时按时间 单调兜底,封顶 90 —— 成功只能由 installBundle 真实返回才置 100。
  • 跨包不 import dsh-plugin:它是独立 npm 包,未安装时会导致本插件崩溃。

验证

$node = 'D:\tools conection\node\node.exe'
& $node --check index.js
& $node --check lib/progress.js
& $node --check lib/collide.js
& $node --check client.js

期望:四个文件 exit 0。

真实数据自检(扫描本机 profile):

& $node (Join-Path $env:TEMP 'mv-collide-test2.mjs')

本机实测输出:scannedPackages: 106, tools: 3, provides: 1, collisions: 3, 3 条全部是真阳性(purge_status / purge_apply / purge_revert 被 Xsdsh-purge 与 Xsdsh-purge-next 同时声明)。

回滚

$env:ELECTRON_RUN_AS_NODE='1'
& 'D:\work tools\AI\DSH\DSH\DeepSeek Harness.exe' --expose-internals `
  'D:\work tools\AI\DSH\DSH\resources\app.asar\dsh\node_modules\@deepseek-ai\dsh-desktop-host\lib\cli.js' `
  plugin --profile desktop remove '@local/market-verdict'

或从 .plugin-manager\backups\verdict-<ts>\ 恢复 package.json / cordis.patch.yml。

—/ 5

No ratings yet

Verified DSH bundle

Commit 2b5c800d6361

Community comments

No comments yet. Be the first to write one.

DSH HUB

A community index for DSH plugins. Not an official GitHub or DeepSeek AI product.

CommunityResourcesAPIAbout