You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
OpenBKN is an open business knowledge-network platform. Its independently published DeepSeek Harness bundle lets a business user sign in to OpenBKN, bind one DSH session to one authorized knowledge network, and analyze that network through scoped platform OSDK operations.
The bundle needs a typed Host-to-Client Remote only for safe control-plane state: OpenBKN authentication status and session-scoped network selection. The browser never receives a platform token, SQL execution entry point, or unrestricted network capability.
Problem
A normal external package imports Remote, TypertRemoteService, and related declarations from the published @deepseek-ai/dsh-typert-protocol package in node_modules.
Today, WorkspaceTypertGenerator.isTypeMetaSymbol() recognizes that metadata only when the declaration belongs to a registered DSH workspace package or an ambient declaration. An independently published plugin matches neither condition, so its Remote methods are not discovered and no Remote artifact is generated.
This appears to be the same external-package boundary described in:
Keep the existing workspace and ambient-declaration checks. Add one exact identity check using the existing externalModuleIdentityForFile() helper: recognize a declaration only when its resolved external package name is exactly @deepseek-ai/dsh-typert-protocol.
This is deliberately not a symbol-name fallback. An unrelated npm package that exports a decorator named Remote must remain unrecognized.
Candidate patch and validation
I prepared and pushed a small, self-contained patch:
A regression fixture that models a normal external node_modules/@deepseek-ai/dsh-typert-protocol package and verifies Remote artifacts are generated.
A negative fixture proving an unrelated external lookalike package is not treated as the protocol.
An English/Chinese Agent Note explaining scope, alternatives, acceptance criteria, and risks.
Validation completed:
53 focused Typert tests
pnpm run typecheck
Agent Note format and translation-pairing checks
The upstream repository has pull-request creation disabled, so I am opening this Discussion to request guidance on the preferred contribution path and whether this narrow package-identity rule is acceptable.
Why this matters beyond OpenBKN
This is a general external-plugin capability. Independently published plugins often need a typed Remote for settings, authorization state, and small UI-control-plane interactions, while retaining DSH-owned rendering and keeping sensitive operations on the Host. Without generated Remote artifacts, these plugins either cannot ship as ordinary npm packages or must avoid a useful typed boundary.
I would welcome maintainer feedback on the patch shape and the appropriate route for contribution.
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
Uh oh!
There was an error while loading. Please reload this page.
Context
OpenBKN is an open business knowledge-network platform. Its independently published DeepSeek Harness bundle lets a business user sign in to OpenBKN, bind one DSH session to one authorized knowledge network, and analyze that network through scoped platform OSDK operations.
The bundle needs a typed Host-to-Client
Remoteonly for safe control-plane state: OpenBKN authentication status and session-scoped network selection. The browser never receives a platform token, SQL execution entry point, or unrestricted network capability.Problem
A normal external package imports
Remote,TypertRemoteService, and related declarations from the published@deepseek-ai/dsh-typert-protocolpackage innode_modules.Today,
WorkspaceTypertGenerator.isTypeMetaSymbol()recognizes that metadata only when the declaration belongs to a registered DSH workspace package or an ambient declaration. An independently published plugin matches neither condition, so its Remote methods are not discovered and no Remote artifact is generated.This appears to be the same external-package boundary described in:
Narrow proposal
Keep the existing workspace and ambient-declaration checks. Add one exact identity check using the existing
externalModuleIdentityForFile()helper: recognize a declaration only when its resolved external package name is exactly@deepseek-ai/dsh-typert-protocol.This is deliberately not a symbol-name fallback. An unrelated npm package that exports a decorator named
Remotemust remain unrecognized.Candidate patch and validation
I prepared and pushed a small, self-contained patch:
leecky:fix/third-party-remote-compat105cf46It includes:
node_modules/@deepseek-ai/dsh-typert-protocolpackage and verifies Remote artifacts are generated.Validation completed:
pnpm run typecheckThe upstream repository has pull-request creation disabled, so I am opening this Discussion to request guidance on the preferred contribution path and whether this narrow package-identity rule is acceptable.
Why this matters beyond OpenBKN
This is a general external-plugin capability. Independently published plugins often need a typed Remote for settings, authorization state, and small UI-control-plane interactions, while retaining DSH-owned rendering and keeping sensitive operations on the Host. Without generated Remote artifacts, these plugins either cannot ship as ordinary npm packages or must avoid a useful typed boundary.
I would welcome maintainer feedback on the patch shape and the appropriate route for contribution.
All reactions