typert-generator 0.0.1-rc.1 does not recognize DSH 0.1.1-rc.2 Remote API #4350
Replies: 3 comments
|
这个大概率不是生成器不支持新 API,是你装到了一个一年前的版本。
已发布的版本里有 试试显式指定: npm i -D @deepseek-ai/dsh-typert-generator@0.1.1-rc.2
# 或 @next这是一个系统性的发布流程问题,不是这一个包的事。 我核过其它几个: 建议:如果换版本后问题消失,这帖可以转成"给所有子包的 latest 打对标签"的诉求并入 #2233——那比逐个包报兼容问题有用得多,而且这个坑会持续劝退每一个想写插件的人。 顺带一句,如果换完版本你仍要往 typert Remote 上接:仓外插件其实不一定要走它。typert Remote 是一等公民的代码生成契约;插件想给自己的浏览器半边供数据,用 利益相关:我维护 pi2dsh。上面第一节(版本标签)跟我的东西完全无关,是可以自己 |
|
Thanks for pointing out the dist-tag skew. I re-ran the probe with the exact published version The external-plugin failure still reproduces, and the remaining cause is narrower:
Source-level inspection explains the difference between the Harness monorepo and an external npm consumer. In generator
The Harness Host build explicitly references I now have a deterministic regression test that creates an isolated external plugin workspace, links the published protocol and Cordis packages, confirms service discovery, then asserts the empty invocation list and exact generation error. Could |
Uh oh!
There was an error while loading. Please reload this page.
Summary
@deepseek-ai/dsh-typert-generator@0.0.1-rc.1does not recognize the Remote service API exposed by@deepseek-ai/dsh@0.1.1-rc.2.The generator appears to detect the older
GatewayService/bindTypeRTGatewaypattern, while the current DSH Typert packages exposeTypertRemoteService/bindTypertRemote. As a result, an external package following the current API cannot produce the strict generated Remote contribution required by the Client gateway.Versions
@deepseek-ai/dsh:0.1.1-rc.2(currentlatestandnextnpm tags)@deepseek-ai/dsh-typert-generator:0.0.1-rc.122.23.211.7.0Reproduction
packages/<package>/package.json.tsconfig.host.jsonandtsconfig.client.json).TypertRemoteService,bindTypertRemote, and annotated Remote methods.@deepseek-ai/dsh-typert-generator@0.0.1-rc.1against the workspace.The generator discovers the package and service. Its intermediate model contains the service and annotated methods, but the generated
invocationslist is empty. Validation then fails with:Inspection of the installed generator shows matching for the older
GatewayService/bindTypeRTGatewayform. Inspection of the DSH0.1.1-rc.2declarations shows only the newerTypertRemoteService/bindTypertRemoteform for this contract.Expected behavior
The published generator should recognize the Remote API exported by the current published DSH version and emit a non-empty strict Remote contribution, or the project should publish/document a compatible version matrix.
Impact
External
dsh.clientplugins cannot safely expose a typed Host Remote while following the current published packages. The documented Client gateway requires strict generated contributions, so the alternatives would be an unsupported generator fork or a private transport, neither of which is suitable for a public plugin.Requested resolution
Please either:
TypertRemoteServiceandbindTypertRemote; orI can provide a minimized reproduction repository if that would help.
All reactions