diff --git a/.agents/notes/implemented/architecture/2026-09-09-profile-resolution-generations.i18n.yaml b/.agents/notes/implemented/architecture/2026-09-09-profile-resolution-generations.i18n.yaml index 4954b13269..9e68a09547 100644 --- a/.agents/notes/implemented/architecture/2026-09-09-profile-resolution-generations.i18n.yaml +++ b/.agents/notes/implemented/architecture/2026-09-09-profile-resolution-generations.i18n.yaml @@ -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 diff --git a/.agents/notes/implemented/architecture/2026-09-09-profile-resolution-generations.md b/.agents/notes/implemented/architecture/2026-09-09-profile-resolution-generations.md index 1a83955b9c..ced79eefc8 100644 --- a/.agents/notes/implemented/architecture/2026-09-09-profile-resolution-generations.md +++ b/.agents/notes/implemented/architecture/2026-09-09-profile-resolution-generations.md @@ -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. diff --git a/.agents/notes/implemented/architecture/2026-09-09-profile-resolution-generations.zh.md b/.agents/notes/implemented/architecture/2026-09-09-profile-resolution-generations.zh.md index d634ac9119..98c509488a 100644 --- a/.agents/notes/implemented/architecture/2026-09-09-profile-resolution-generations.zh.md +++ b/.agents/notes/implemented/architecture/2026-09-09-profile-resolution-generations.zh.md @@ -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 与拦截。 diff --git a/apps/cli/src/bin.ts b/apps/cli/src/bin.ts index b02ab5a467..7ca9f302e1 100644 --- a/apps/cli/src/bin.ts +++ b/apps/cli/src/bin.ts @@ -40,8 +40,6 @@ export async function runCli(): Promise { 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) {