fix(cli): drop retired link-mode override after master integration
The release branch still passed resolutionMode: link from the source CLI and documented a separate link/runtime selector. The integrated master has removed that selector and its materializer in favor of one runtime resolver that also supports source launches. The spread kept compiling because excess-property checking did not reject it, but the property was ignored by runProfile and the retained prose contradicted the runtime. Remove the dead option/comment and its obsolete bilingual paragraph. The CLI entry and the architecture note now match the integrated master; keep source-module identity verified through its real source-launch and tool-execution tests. This retires an old integration workaround, without changing Session V4 or restoring a second profile resolution backend.
This commit is contained in:
1 parent
5da1515286
commit
fdff56c293
4 files changed
+2
-8
No files matched your search
+2
-2
@@ -2,5 +2,5 @@
|
||||
# side as of the last confirmed-consistent state. Both languages carry equal authority;
|
||||
# after editing either side, bring the other along and re-record with:
|
||||
# pnpm run verify-translation-pairing --write .agents/notes/implemented/architecture/2026-09-09-profile-resolution-generations.md
|
||||
2026-09-09-profile-resolution-generations.md: 1a83955b9c79458c31b8aff78eb05a2235f544e8
|
||||
2026-09-09-profile-resolution-generations.zh.md: d634ac9119bc5c0110077451c03086ee5d1fffb8
|
||||
2026-09-09-profile-resolution-generations.md: ced79eefc8c46a43cabd5b6a79db2644526c022f
|
||||
2026-09-09-profile-resolution-generations.zh.md: 98c509488aaeaa8d1b5e722bf6e3ea6346d45c46
|
||||
@@ -14,8 +14,6 @@ The runtime design keeps installation-first, ordered-bundle, and local-before-fa
|
||||
|
||||
Profile startup computes one immutable `RuntimeResolution` and installs it into Node's ESM and CommonJS resolvers. Runtime is the only resolution backend; there is no mode selector or disk materializer. `PluginPackages.replace()` publishes a complete additive successor with one reference replacement.
|
||||
|
||||
The TypeScript CLI entry explicitly selects link mode. Its tsx workspace imports and profile plugins must share module URLs; combining `src/index.ts` and `lib/index.js` creates distinct private Symbols and service identities. The built CLI keeps runtime mode, and explicit `runProfile` resolution overrides remain available.
|
||||
|
||||
### One selection algorithm
|
||||
|
||||
The package traversal belongs to `@deepseek-ai/dsh-app-boot` beside profile loading. Ordinary Node, source launches, packaged executables, and the Electron Host consume the same runtime resolution and interception.
|
||||
|
||||
@@ -14,8 +14,6 @@ profile 从自己的包项目加载插件配置项,而 Harness 包和所选 bu
|
||||
|
||||
profile 启动生成一个不可变 `RuntimeResolution`,并将其安装到 Node 的 ESM 与 CommonJS 解析器。runtime 是唯一的解析后端,不提供模式选择器或磁盘物化器。`PluginPackages.replace()` 通过一次引用替换发布完整的新增型后继 generation。
|
||||
|
||||
TypeScript CLI 入口显式选择 link 模式。其 tsx workspace 导入与 profile 插件必须共享模块 URL;同时加载 `src/index.ts` 与 `lib/index.js` 会产生不同的私有 Symbol 和服务身份。构建后的 CLI 保持 runtime 模式,`runProfile` 的显式解析模式覆盖仍然可用。
|
||||
|
||||
### 唯一选包算法
|
||||
|
||||
包遍历属于 `@deepseek-ai/dsh-app-boot`,与 profile 加载代码放在一起。普通 Node、源码启动、打包可执行文件和 Electron Host 消费相同的 runtime resolution 与拦截。
|
||||
|
||||
@@ -40,8 +40,6 @@ export async function runCli(): Promise<void> {
|
||||
profile: invocation.profile,
|
||||
fromDefaultProfile: invocation.fromDefaultProfile,
|
||||
patchFiles: invocation.patches,
|
||||
// Keep tsx workspace imports and profile plugins in the same source module graph.
|
||||
...(import.meta.url.endsWith('.ts') ? { resolutionMode: 'link' as const } : {}),
|
||||
args: invocation.args,
|
||||
})
|
||||
} catch (error) {
|
||||
|
||||
Reference in new issue
Block a user