@aalis/plugin-package-manager 0.6.0 → 0.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # @aalis/plugin-package-manager
2
2
 
3
- 插件包管理:从 npm 安装/卸载插件到 packages/
3
+ 插件包管理:从 npm 安装/卸载/更新到项目根 dependencies
4
4
 
5
5
  ## 安装
6
6
 
@@ -12,14 +12,16 @@ pnpm add @aalis/plugin-package-manager
12
12
 
13
13
  `definePlugin` 默认导出:
14
14
 
15
- - provides:`packageManager`(服务名 `package-manager`;描述符由本包导出)
16
- - uses:`proc`(`process`)、`logger`、`config`、`provide`、`services`;可选 `app`、`plugins`、`hostConfig`
15
+ - provides:`packageManager`(服务名 `package-manager`;描述符来自 `@aalis/api-package-manager`)
16
+ - uses:`proc`(`process`)、`logger`、`config`、`provide`、`services`;可选 `app`、`plugins`、`hostConfig`(`host-config`)、`source`(`plugin-source`)
17
17
 
18
- 装卸落在项目根 `dependencies`,随后 `rescan` 让加载器发现。
18
+ 装卸落在项目根 `dependencies`,随后经宿主的 `plugin-source` 服务 `rescan()` 让加载器发现;宿主不提供插件来源时视同本次没有新插件。卸载后经 `host-config` 清理配置块与禁用标记,宿主未提供配置文档时不清理。
19
+
20
+ 装卸只接受插件(`aalis-plugin`)与前端界面(`aalis-interface`)包;卸载会让其它插件失去所需服务的唯一提供者时拒绝。插件写入存储根的数据不随卸载删除。
19
21
 
20
22
  ## 文档
21
23
 
22
- 详见 [docs/extensions/index.md](../../docs/extensions/index.md)。
24
+ 服务契约见 [docs/api/api-package-manager.md](../../docs/api/api-package-manager.md),扩展总览见 [docs/extensions/index.md](../../docs/extensions/index.md)。
23
25
 
24
26
  ## 许可
25
27
 
package/dist/index.d.ts CHANGED
@@ -1,54 +1,6 @@
1
+ import { type PackageManagerService, type UpdateTarget } from '@aalis/api-package-manager';
1
2
  import { type ProcessService } from '@aalis/api-process';
2
- import { type AppService } from '@aalis/core';
3
- /**
4
- * 包管理服务:在项目根 `dependencies` 里装卸插件。
5
- *
6
- * 消费方在 uses 里声明本包导出的 {@link packageManager} 描述符。
7
- *
8
- * 根 `dependencies` 是加载器**唯一**的发现来源,所以装卸都落在那里——不再有「解包到
9
- * packages/ 目录」那条路径(它按 `pnpm-workspace.yaml` 猜部署形态,而那个文件与真正
10
- * 生效的加载器无因果关系,猜错时会把包装进加载器永不查看的地方并静默失败)。
11
- *
12
- * 这些操作涉及子进程(npm),不属于 core 内核职责,因此从 App 抽出到独立插件;
13
- * 底层子进程统一走 api-process。
14
- */
15
- export interface PackageManagerService {
16
- /** 装进根 `dependencies` + node_modules,随后 rescan 让加载器发现它 */
17
- install(npmPkg: string): Promise<{
18
- ok: boolean;
19
- message: string;
20
- }>;
21
- /** 从根 `dependencies` 摘掉并 npm uninstall;只接受插件与前端界面包(见 uninstallOne 的两道闸) */
22
- uninstall(pluginName: string): Promise<{
23
- ok: boolean;
24
- message: string;
25
- }>;
26
- /**
27
- * 批量更新到指定版本,随后重启进程接管。
28
- *
29
- * **必须整批提交**,不能每个包各调一次:
30
- * - peer 冲突只有对整张版本映射一次预检才能发现(A@new 要 core>=0.10、B@new 要
31
- * core<0.10,逐个预检各自都过,一起装才冲突);
32
- * - 更新是文件系统操作而进程只在启动那一刻读文件系统,所以重启次数恒为 1,
33
- * 与改了多少个包无关。逐个更新 = 重启 N 次,且中间态是半新半旧。
34
- *
35
- * 返回 `ok: true` 表示已提交安装并即将重启——此时 HTTP 响应要抢在进程退出前发出。
36
- */
37
- update(targets: UpdateTarget[]): Promise<UpdateResult>;
38
- }
39
- /** 一个待更新目标:包名 + 目标版本(不带范围符,由调用方从市场卡片取 npm latest)。 */
40
- export interface UpdateTarget {
41
- name: string;
42
- version: string;
43
- }
44
- export interface UpdateResult {
45
- ok: boolean;
46
- message: string;
47
- /** 预检失败时的逐条冲突说明(npm dry-run 的报告摘要),供前端直接展示。 */
48
- conflicts?: string[];
49
- /** 本次是否会重启进程。ok 且 restarting 时前端应进入「等待重连」状态。 */
50
- restarting?: boolean;
51
- }
3
+ import { type AppService, type PluginStatusEntry } from '@aalis/core';
52
4
  /**
53
5
  * 根依赖里是否含 `workspace:` 协议。
54
6
  *
@@ -66,6 +18,19 @@ export declare function hasWorkspaceProtocol(pkgJson: Record<string, unknown> |
66
18
  * 纯函数,便于单测。
67
19
  */
68
20
  export declare function declaresPlugin(pkgJson: Record<string, unknown> | undefined): boolean;
21
+ /**
22
+ * 包类型是否归市场装卸:插件(判据同 {@link declaresPlugin})与前端界面(`aalis-interface`)
23
+ * 归市场管,返回 `undefined`;其余返回拒绝时展示的类别名。装与卸共用这一份判据——同一件事
24
+ * 维护两份同义判据,正是本仓已出事四次的形态(依赖来源判据、定级数学、包名正则、关键词分类)。
25
+ * 纯函数,便于单测。
26
+ */
27
+ export declare function nonMarketKind(keywords: unknown): string | undefined;
28
+ /**
29
+ * 找出「卸载 target 会断其服务依赖」的插件:target 提供的某服务 S 没有别的插件正在提供(只认 active 与
30
+ * activating;disabled / error / pending 的同类提供者不在提供),且有别的插件 requiredServices 含 S → 这些插件
31
+ * 会被打断。已禁用(disabled / disposed)的依赖者不算。纯函数,便于单测。
32
+ */
33
+ export declare function findServiceDependents(targetName: string, status: ReadonlyArray<Pick<PluginStatusEntry, 'name' | 'state' | 'provides' | 'requiredServices'>>): string[];
69
34
  /**
70
35
  * 校验单个包 spec,合法返回 `undefined`、非法返回可读理由。
71
36
  *
@@ -77,7 +42,6 @@ export declare function declaresPlugin(pkgJson: Record<string, unknown> | undefi
77
42
  * 纯函数,便于单测。
78
43
  */
79
44
  export declare function validatePackageSpec(spec: unknown): string | undefined;
80
- export declare const packageManager: import("@aalis/core").ServiceDescriptor<PackageManagerService, import("@aalis/core").ServiceRef<PackageManagerService>>;
81
45
  /** install/uninstall 的显式依赖(从能力/网关解耦,便于集成测试) */
82
46
  export interface PackageManagerDeps {
83
47
  proc: ProcessService;
@@ -86,7 +50,7 @@ export interface PackageManagerDeps {
86
50
  error(msg: string): void;
87
51
  warn?(msg: string): void;
88
52
  };
89
- /** 项目根绝对路径(= `<cwd>`):形态探测、根 package.json 读取、npm 的 cwd。 */
53
+ /** 项目根绝对路径(= `<cwd>`):根 package.json 读取、npm 的 cwd。 */
90
54
  projectRoot(): string;
91
55
  /** 读文本文件;不存在或读失败返回 undefined。注入以便单测。 */
92
56
  readText(absPath: string): Promise<string | undefined>;
@@ -95,7 +59,7 @@ export interface PackageManagerDeps {
95
59
  * 目标插件此刻是否已在运行时注册表里。
96
60
  *
97
61
  * 这是判定「本次安装是否就位」的**唯一正确判据**。不能用 `rescanPlugins()` 的返回值:
98
- * 它是全局副作用的产物——core 的 rescan 对已注册插件直接跳过,返回的是「本次扫描新
62
+ * 它是全局副作用的产物——宿主的 rescan 对已注册插件直接跳过,返回的是「本次扫描新
99
63
  * 加载的**全部**插件」,与本次目标无对应关系。用它会在两个场景下给出错误结论:
100
64
  * 重装已注册插件时恒返回空(误报失败);两个安装并发时先跑完的那个会把对方的战果
101
65
  * 一并算作自己的(谎报),后跑的则拿到空数组(误报失败)。
@@ -104,6 +68,8 @@ export interface PackageManagerDeps {
104
68
  * 不是 npm 包名——二者可以不同。
105
69
  */
106
70
  isPluginRegistered(name: string): boolean;
71
+ /** 运行时插件状态,供服务依赖者判定({@link findServiceDependents})。缺省视为没有活跃插件。 */
72
+ pluginStatus?(): ReadonlyArray<Pick<PluginStatusEntry, 'name' | 'state' | 'provides' | 'requiredServices'>>;
107
73
  /** 彻底卸载插件(dispose + 从注册表移除)。plugins 服务缺席则 no-op。 */
108
74
  unloadPlugin(name: string): Promise<void>;
109
75
  /**
@@ -114,7 +80,7 @@ export interface PackageManagerDeps {
114
80
  /** 卸载后清理残留配置(删配置块 + 解除禁用标记 + 持久化)。可选:缺省则不清理。 */
115
81
  cleanupConfig?(name: string): void;
116
82
  /**
117
- * 解析已装 npm 包的插件定义 name(与 `@aalis/core` 的 `pluginDefinitionOf` 同一口径:入口 default.name)。
83
+ * 解析已装 npm 包的插件定义 name(与 `@aalis/api-plugin-source` 的 `pluginDefinitionOf` 同一口径:入口 default.name)。
118
84
  * 解析不到则返回 undefined,调用方回退到包名。name≠包名时由 createPackageManager warn。
119
85
  */
120
86
  resolveDefinitionName?(pkgName: string): Promise<string | undefined>;
@@ -152,7 +118,8 @@ export declare function buildUpdateSpecs(targets: readonly UpdateTarget[]): {
152
118
  error?: string;
153
119
  };
154
120
  /**
155
- * 从 npm 的失败输出里摘出冲突要点,供前端直接展示。纯函数,便于单测。
121
+ * 从 npm 的失败输出里摘出冲突要点,供前端直接展示。保留根项目的声明行(`… from the root project`),看得出冲突由
122
+ * 哪条根依赖引起;完整报告的路径行(`…-eresolve-report.txt`)随不分大小写的 ERESOLVE 一并保留。纯函数,便于单测。
156
123
  */
157
124
  export declare function extractPeerConflicts(output: string): string[];
158
125
  /**
@@ -170,8 +137,8 @@ export declare function extractPeerConflicts(output: string): string[];
170
137
  export declare function findUnmetPeers(output: string, targetNames: readonly string[]): string[];
171
138
  /**
172
139
  * 包管理核心:install/uninstall 的纯依赖实现(不碰能力/网关,可单测)。
173
- * 所有文件操作走 process 网关(子进程:npm/tar/mkdir/rm/test),目标是真实
174
- * `<cwd>/packages`——不经 storage 沙盒(沙盒根是 workspace,够不到 packages)。
140
+ * 所有文件操作走 process 网关(子进程:npm/cp/test),目标是项目根 package.json 与
141
+ * node_modules——不经 storage 沙盒。
175
142
  * 能力组装层见 createService。
176
143
  */
177
144
  export declare function createPackageManager(deps: PackageManagerDeps): PackageManagerService;
@@ -181,9 +148,10 @@ declare const _default: import("@aalis/core").PluginDefinition<{
181
148
  config: import("@aalis/core").ServiceDescriptor<(identity: symbol) => Readonly<Record<string, unknown>>, Readonly<Record<string, unknown>>>;
182
149
  provide: import("@aalis/core").ServiceDescriptor<(identity: symbol) => import("@aalis/core").Provide, import("@aalis/core").Provide>;
183
150
  services: import("@aalis/core").ServiceDescriptor<(identity: symbol) => import("@aalis/core").Services, import("@aalis/core").Services>;
184
- app: import("@aalis/core/dist/composition/descriptors").OptionalUse<AppService, import("@aalis/core").ServiceRef<AppService>>;
185
- plugins: import("@aalis/core/dist/composition/descriptors").OptionalUse<import("@aalis/core").PluginManagerService, import("@aalis/core").ServiceRef<import("@aalis/core").PluginManagerService>>;
186
- hostConfig: import("@aalis/core/dist/composition/descriptors").OptionalUse<import("@aalis/core").HostConfig, import("@aalis/core").ServiceRef<import("@aalis/core").HostConfig>>;
151
+ app: import("@aalis/core").OptionalUse<AppService, import("@aalis/core").ServiceRef<AppService>>;
152
+ plugins: import("@aalis/core").OptionalUse<import("@aalis/core").PluginManagerService, import("@aalis/core").ServiceRef<import("@aalis/core").PluginManagerService>>;
153
+ hostConfig: import("@aalis/core").OptionalUse<import("@aalis/api-host-config").HostConfig, import("@aalis/core").ServiceRef<import("@aalis/api-host-config").HostConfig>>;
154
+ source: import("@aalis/core").OptionalUse<import("@aalis/api-plugin-source").PluginSourceService, import("@aalis/core").ServiceRef<import("@aalis/api-plugin-source").PluginSourceService>>;
187
155
  }>;
188
156
  export default _default;
189
157
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -1,9 +1,12 @@
1
1
  import { createRequire } from 'node:module';
2
+ import { hostConfig } from '@aalis/api-host-config';
3
+ import { packageManager, } from '@aalis/api-package-manager';
4
+ import { pluginDefinitionOf, pluginSource } from '@aalis/api-plugin-source';
2
5
  import { createProcessGateway, processService } from '@aalis/api-process';
3
- import { appService, config, definePlugin, defineService, hostConfig, logger, optional, pluginDefinitionOf, pluginsService, provide, services, } from '@aalis/core';
6
+ import { appService, config, definePlugin, logger, optional, pluginsService, provide, services, } from '@aalis/core';
4
7
  import { classifyDepSpec, isRegistryDep, isUpgrade } from '@aalis/util-dep-spec';
5
8
  // ===== 实现 =====
6
- /** 短命令(mkdir/tar/rm/test/npm pack)的超时。 */
9
+ /** 短命令(cp、npm view 等)的超时。 */
7
10
  const QUICK_TIMEOUT_MS = 120_000;
8
11
  /**
9
12
  * 安装类命令的超时。`npm install` 要装全依赖树 + 原生编译(better-sqlite3、puppeteer
@@ -11,6 +14,12 @@ const QUICK_TIMEOUT_MS = 120_000;
11
14
  * 否则会在半装状态下被杀。
12
15
  */
13
16
  const INSTALL_TIMEOUT_MS = 600_000;
17
+ /**
18
+ * 压掉 `legacy-peer-deps` 的环境变量。用户或项目 `.npmrc` 里的 `legacy-peer-deps=true`(React
19
+ * 生态常见的 workaround)会让 npm 对 peer 不满足**完全不报**,安装与更新预检的 peer 护栏就此
20
+ * 静默失效。环境变量优先于项目根的 `.npmrc`(install-chain 里有真 npm 用例)。
21
+ */
22
+ const STRICT_PEERS_ENV = { npm_config_legacy_peer_deps: 'false' };
14
23
  async function execProc(proc, cmd, args, cwd, timeout = QUICK_TIMEOUT_MS) {
15
24
  return (await execProcBoth(proc, cmd, args, cwd, timeout)).stdout;
16
25
  }
@@ -63,6 +72,54 @@ export function declaresPlugin(pkgJson) {
63
72
  const kw = pkgJson?.keywords;
64
73
  return Array.isArray(kw) && kw.includes('aalis-plugin');
65
74
  }
75
+ /**
76
+ * 包类型是否归市场装卸:插件(判据同 {@link declaresPlugin})与前端界面(`aalis-interface`)
77
+ * 归市场管,返回 `undefined`;其余返回拒绝时展示的类别名。装与卸共用这一份判据——同一件事
78
+ * 维护两份同义判据,正是本仓已出事四次的形态(依赖来源判据、定级数学、包名正则、关键词分类)。
79
+ * 纯函数,便于单测。
80
+ */
81
+ export function nonMarketKind(keywords) {
82
+ const kw = Array.isArray(keywords) ? keywords : [];
83
+ if (declaresPlugin({ keywords: kw }) || kw.includes('aalis-interface'))
84
+ return undefined;
85
+ if (kw.includes('aalis-core'))
86
+ return '内核';
87
+ if (kw.includes('aalis-runtime'))
88
+ return '宿主';
89
+ if (kw.includes('aalis-api'))
90
+ return '服务契约';
91
+ if (kw.includes('aalis-schema'))
92
+ return '数据规范';
93
+ if (kw.includes('aalis-util'))
94
+ return '工具库';
95
+ return '非插件包';
96
+ }
97
+ /**
98
+ * 找出「卸载 target 会断其服务依赖」的插件:target 提供的某服务 S 没有别的插件正在提供(只认 active 与
99
+ * activating;disabled / error / pending 的同类提供者不在提供),且有别的插件 requiredServices 含 S → 这些插件
100
+ * 会被打断。已禁用(disabled / disposed)的依赖者不算。纯函数,便于单测。
101
+ */
102
+ export function findServiceDependents(targetName, status) {
103
+ const target = status.find(p => p.name === targetName);
104
+ const provided = target?.provides ?? [];
105
+ if (provided.length === 0)
106
+ return [];
107
+ const dependents = new Set();
108
+ for (const svc of provided) {
109
+ const otherProvider = status.some(p => p.name !== targetName && (p.state === 'active' || p.state === 'activating') && (p.provides ?? []).includes(svc));
110
+ if (otherProvider)
111
+ continue; // 还有别的提供者在提供,删了不致命
112
+ for (const p of status) {
113
+ if (p.name !== targetName &&
114
+ p.state !== 'disabled' &&
115
+ p.state !== 'disposed' &&
116
+ (p.requiredServices ?? []).includes(svc)) {
117
+ dependents.add(p.name);
118
+ }
119
+ }
120
+ }
121
+ return [...dependents];
122
+ }
66
123
  /** 从项目 node_modules 解析已装包入口并取出定义 name;解析失败返回 undefined。 */
67
124
  async function resolveInstalledDefinitionName(root, pkgName) {
68
125
  try {
@@ -102,8 +159,6 @@ export function validatePackageSpec(spec) {
102
159
  return `非法包名: ${JSON.stringify(spec)}`;
103
160
  return undefined;
104
161
  }
105
- // ----- 服务描述符(按激活绑定;调用型:绑定接口是 ServiceRef)-----
106
- export const packageManager = defineService('package-manager');
107
162
  // ===== 插件入口 =====
108
163
  const uses = {
109
164
  proc: processService,
@@ -114,6 +169,7 @@ const uses = {
114
169
  app: optional(appService),
115
170
  plugins: optional(pluginsService),
116
171
  hostConfig: optional(hostConfig),
172
+ source: optional(pluginSource),
117
173
  };
118
174
  function createService(caps) {
119
175
  const log = caps.logger;
@@ -154,11 +210,13 @@ function createService(caps) {
154
210
  return undefined;
155
211
  }
156
212
  },
157
- rescanPlugins: () => getApp().rescanPlugins(),
213
+ // 宿主不提供插件来源(打包宿主)时视同本次没有新插件;随后仍按注册表判定,声明为插件的包会报「未被加载」
214
+ rescanPlugins: async () => (await caps.source.current?.rescan()) ?? [],
158
215
  // 判据取运行时注册表而非 rescan 返回值(理由见 PackageManagerDeps.isPluginRegistered)。
159
216
  // plugins 服务缺席时保守返回 false——宁可让「声明为插件却没加载」的诊断多报一次,
160
217
  // 也不要在真没装上时谎报成功。
161
218
  isPluginRegistered: name => caps.plugins.current?.getStatus().some(p => p.name === name) ?? false,
219
+ pluginStatus: () => caps.plugins.current?.getStatus() ?? [],
162
220
  resolveDefinitionName: pkgName => resolveInstalledDefinitionName(projectRoot(), pkgName),
163
221
  listPluginInstanceIds: definitionName => (caps.plugins.current?.getStatus() ?? []).filter(p => p.name === definitionName).map(p => p.instanceId),
164
222
  // 重启并交付回滚凭据。core 只透传 rollback(不解释形状),由 runtime 的重启策略
@@ -189,13 +247,15 @@ function createService(caps) {
189
247
  await caps.plugins.current?.unload(name);
190
248
  },
191
249
  // 卸载后清残留配置:删 plugins.<name> 配置块 + 从 disabledPlugins 移除
192
- // (否则重装会被"上次禁用"标记带成已禁用状态),并持久化。
250
+ // (否则重装会被"上次禁用"标记带成已禁用状态),并持久化。宿主没提供配置文档时无可清理。
193
251
  cleanupConfig: name => {
194
- const hostCfg = caps.hostConfig.require();
195
- hostCfg.removePluginConfig(name);
196
- hostCfg.setPluginEnabled(name, true);
252
+ const doc = caps.hostConfig.current;
253
+ if (!doc)
254
+ return;
255
+ doc.removePluginConfig(name);
256
+ doc.setPluginEnabled(name, true);
197
257
  // cleanupConfig 契约返 void;落盘失败只 warn,内存态已清、下次保存会带上
198
- caps.app.current?.saveConfig().catch(err => log.warn(`${name}: 卸载后配置清理落盘失败:`, err));
258
+ doc.save().catch(err => log.warn(`${name}: 卸载后配置清理落盘失败:`, err));
199
259
  },
200
260
  });
201
261
  }
@@ -301,11 +361,12 @@ export function buildUpdateSpecs(targets) {
301
361
  return { specs };
302
362
  }
303
363
  /**
304
- * 从 npm 的失败输出里摘出冲突要点,供前端直接展示。纯函数,便于单测。
364
+ * 从 npm 的失败输出里摘出冲突要点,供前端直接展示。保留根项目的声明行(`… from the root project`),看得出冲突由
365
+ * 哪条根依赖引起;完整报告的路径行(`…-eresolve-report.txt`)随不分大小写的 ERESOLVE 一并保留。纯函数,便于单测。
305
366
  */
306
367
  export function extractPeerConflicts(output) {
307
368
  const lines = output.split('\n');
308
- const picked = lines.filter(l => /ERESOLVE|peer |Conflicting peer|Found:|Could not resolve/i.test(l));
369
+ const picked = lines.filter(l => /ERESOLVE|peer |Conflicting peer|Found:|Could not resolve|from the root project/i.test(l));
309
370
  return picked.map(l => l.replace(/^npm (ERR!|error|warn)\s*/i, '').trim()).filter(l => l.length > 0);
310
371
  }
311
372
  /**
@@ -337,8 +398,8 @@ export function findUnmetPeers(output, targetNames) {
337
398
  }
338
399
  /**
339
400
  * 包管理核心:install/uninstall 的纯依赖实现(不碰能力/网关,可单测)。
340
- * 所有文件操作走 process 网关(子进程:npm/tar/mkdir/rm/test),目标是真实
341
- * `<cwd>/packages`——不经 storage 沙盒(沙盒根是 workspace,够不到 packages)。
401
+ * 所有文件操作走 process 网关(子进程:npm/cp/test),目标是项目根 package.json 与
402
+ * node_modules——不经 storage 沙盒。
342
403
  * 能力组装层见 createService。
343
404
  */
344
405
  export function createPackageManager(deps) {
@@ -382,6 +443,24 @@ export function createPackageManager(deps) {
382
443
  inflight = null;
383
444
  }
384
445
  }
446
+ /** 安装源查询的缓存:只留成功的结果,失败时清掉,下次调用重查 */
447
+ let registryUrl;
448
+ function registry() {
449
+ if (!registryUrl) {
450
+ // 与 install / update 同一 cwd:项目根的 .npmrc 一并生效
451
+ registryUrl = execProc(proc, 'npm', ['config', 'get', 'registry'], deps.projectRoot()).then(out => {
452
+ const url = out.trim().replace(/\/+$/, '');
453
+ if (!/^https?:\/\/\S+$/i.test(url)) {
454
+ throw new Error(`npm config get registry 的输出不是 http(s) 地址: ${JSON.stringify(out.trim())}`);
455
+ }
456
+ return url;
457
+ });
458
+ registryUrl.catch(() => {
459
+ registryUrl = undefined;
460
+ });
461
+ }
462
+ return registryUrl;
463
+ }
385
464
  /** 路径存在性:`test -d|-f <abs>`(不存在 → exit 1 → 抛 → false)。绝对路径,cwd 无关。 */
386
465
  async function pathExists(absPath, kind) {
387
466
  try {
@@ -404,7 +483,7 @@ export function createPackageManager(deps) {
404
483
  return undefined;
405
484
  }
406
485
  }
407
- /** 加载器口径的定义 name;解析不到则回退包名。name≠包名时 warn(与 core `pluginDefinitionOf` 加载包装同文案)。 */
486
+ /** 加载器口径的定义 name;解析不到则回退包名。name≠包名时 warn(与 runtime 加载包装同文案)。 */
408
487
  async function definitionNameFor(pkgName) {
409
488
  const resolved = await deps.resolveDefinitionName?.(pkgName);
410
489
  const defName = typeof resolved === 'string' && resolved.length > 0 ? resolved : pkgName;
@@ -419,6 +498,24 @@ export function createPackageManager(deps) {
419
498
  const ids = [...new Set(listed.filter(id => id.length > 0))];
420
499
  return ids.length > 0 ? ids : [defName];
421
500
  }
501
+ /**
502
+ * 装前类型闸:经 `npm view <spec> keywords --json` 读 registry 上的类型关键词(在项目根跑,
503
+ * 沿用项目与本机的 npm 源配置),判据与卸载同一份({@link nonMarketKind})。闸放服务层而非
504
+ * HTTP 路由——本服务对外公开,任何插件都能绕过路由直接调。返回拒绝理由,`undefined` = 放行。
505
+ */
506
+ async function installKindRefusal(npmPkg, root) {
507
+ const out = (await execProc(proc, 'npm', ['view', npmPkg, 'keywords', '--json'], root)).trim();
508
+ // 包没有 keywords 字段时 npm 什么都不输出;spec 是版本范围时按版本逐个给出、返回二维数组
509
+ const parsed = out ? JSON.parse(out) : [];
510
+ const perVersion = Array.isArray(parsed) && parsed.length > 0 && parsed.every(Array.isArray) ? parsed : [parsed];
511
+ const kind = perVersion.map(kw => nonMarketKind(kw)).find(k => k !== undefined);
512
+ if (!kind)
513
+ return undefined;
514
+ return (`${npmPkg} 是${kind},不是可装卸的插件,市场不负责它的安装。` +
515
+ (kind === '非插件包'
516
+ ? '市场只安装带 aalis-plugin / aalis-interface 关键词的包。'
517
+ : '它随脚手架或依赖它的插件自动就位;要升级已装的版本,请在市场勾选它后用「更新所选」提交。'));
518
+ }
422
519
  /**
423
520
  * 装完的统一判定:rescan 出新插件即成功;没出新插件时按目标是否**声明自己是插件**分流。
424
521
  * 「声明了插件却没被发现」正是那条静默假成功——必须报失败,否则用户看到 ok 却什么也没装上。
@@ -457,6 +554,9 @@ export function createPackageManager(deps) {
457
554
  message: '根依赖含 workspace: 协议,拒绝在此运行 npm install(会写出 package-lock.json 并搅坏 pnpm 工作区)',
458
555
  };
459
556
  }
557
+ const refused = await installKindRefusal(npmPkg, root);
558
+ if (refused)
559
+ return { ok: false, message: refused };
460
560
  log.info(`正在安装: ${npmPkg} → 根依赖 + node_modules`);
461
561
  // **刻意不加 `--ignore-scripts`**:依赖树的 preinstall/install/postinstall 会照常执行。
462
562
  // 三条理由:脚手架自身就是裸 `npm install`(其生成的 README 也教用户裸装),加了会让
@@ -464,7 +564,18 @@ export function createPackageManager(deps) {
464
564
  // (better-sqlite3,脚手架默认勾选)与 plugin-tool-browser(puppeteer);而真正的增量
465
565
  // 风险只有传递依赖的 install 脚本这一片——入口是 owner 级、包名由用户自己点选、包本体
466
566
  // 反正会被动态 import 执行(插件与内核同进程同权限,见 docs/concepts/security-model.md §1)。
467
- await execProc(proc, 'npm', ['install', npmPkg, '--no-audit', '--no-fund'], root, INSTALL_TIMEOUT_MS);
567
+ //
568
+ // peer 护栏与更新预检相同(STRICT_PEERS_ENV)。代价:本就靠 legacy-peer-deps 容忍既有
569
+ // peer 冲突的项目,市场安装会整体失败,故失败文案要点明原因。
570
+ try {
571
+ await execProcBoth(proc, 'npm', ['install', npmPkg, '--no-audit', '--no-fund'], root, INSTALL_TIMEOUT_MS, STRICT_PEERS_ENV);
572
+ }
573
+ catch (err) {
574
+ const raw = err instanceof Error ? err.message : String(err);
575
+ if (!raw.includes('ERESOLVE'))
576
+ throw err;
577
+ throw new Error(`peer 依赖冲突,未安装(市场安装不沿用 .npmrc 里的 legacy-peer-deps):${extractPeerConflicts(raw).join(';')}`);
578
+ }
468
579
  const bare = stripVersion(npmPkg);
469
580
  return settleInstall(npmPkg, `${root}/node_modules/${bare}/package.json`, 'node_modules');
470
581
  }
@@ -482,11 +593,10 @@ export function createPackageManager(deps) {
482
593
  * 配置;再用 `npm_config_legacy_peer_deps=false` 压掉用户级与全局配置(已实测:
483
594
  * 即便副本里放了 `legacy-peer-deps=true` 的 `.npmrc`,该环境变量也能翻回来)。
484
595
  *
485
- * **不要把项目 `.npmrc` cp 进副本**。动机是对的——不带它,私有源用户的
486
- * 预检会跑去公共源解析(包只在私有源上就 404/401 → 更新被永久挡住且报错文不对题)。但
487
- * `test/integration/install-chain.test.ts` 的真实 npm 用例证伪了这条路:带上 `.npmrc` 后
488
- * 上面第 2 条护栏失效,而隔离复现里 env 明明压得过项目级 `.npmrc`,**机制未查清**。
489
- * 要做的话先解释清楚这个矛盾,别直接 cp。
596
+ * 项目 `.npmrc` 目前不拷进副本。代价:私有源用户的预检会跑去公共源解析(包只在私有源上
597
+ * 就 404/401 → 更新被挡住且报错文不对题)。早先 `test/integration/install-chain.test.ts` 的
598
+ * 真实 npm 用例显示「带上 `.npmrc` 后第 2 条护栏失效」,成因是当时测试夹具的进程桩没有转发
599
+ * `opts.env`,并非环境变量压不过项目级 `.npmrc`(见 STRICT_PEERS_ENV)。是否拷入另议。
490
600
  *
491
601
  * 判据只能是解析告警文本:`--dry-run --json` 实测只给 `{added, removed, changed,
492
602
  * audited, funding}`,无任何冲突信息;退出码在本场景恒为 0(npm 把命令行显式 spec
@@ -503,7 +613,7 @@ export function createPackageManager(deps) {
503
613
  if (await pathExists(lock, 'f')) {
504
614
  await execProc(proc, 'cp', [lock, `${tmp.path}/package-lock.json`], tmp.path);
505
615
  }
506
- const { stdout, stderr } = await execProcBoth(proc, 'npm', ['install', ...specs, '--dry-run', '--no-audit', '--no-fund'], tmp.path, INSTALL_TIMEOUT_MS, { npm_config_legacy_peer_deps: 'false' });
616
+ const { stdout, stderr } = await execProcBoth(proc, 'npm', ['install', ...specs, '--dry-run', '--no-audit', '--no-fund'], tmp.path, INSTALL_TIMEOUT_MS, STRICT_PEERS_ENV);
507
617
  const unmet = findUnmetPeers(`${stderr}\n${stdout}`, specs.map(stripVersion));
508
618
  return unmet.length > 0 ? unmet : undefined;
509
619
  }
@@ -683,9 +793,11 @@ export function createPackageManager(deps) {
683
793
  }
684
794
  }),
685
795
  uninstall: pluginName => exclusive(`卸载 ${pluginName}`, () => uninstallOne(pluginName)),
796
+ serviceDependents: name => findServiceDependents(name, deps.pluginStatus?.() ?? []),
797
+ registry,
686
798
  };
687
799
  /**
688
- * 卸载:两道服务层闸 + npm uninstall。
800
+ * 卸载:服务层各道闸 + npm uninstall。
689
801
  *
690
802
  * 闸放服务层而非 HTTP 路由——本服务对外公开,任何插件都能绕过路由直接调
691
803
  * (与 `buildUpdateSpecs`、`isRegistryDep` 同一理由)。前端早就有正确策略
@@ -706,27 +818,13 @@ export function createPackageManager(deps) {
706
818
  // 「**这个操作会把你用来撤销它的那条通道一起销毁**」:卸掉插件,实例照常跑、市场里点
707
819
  // 一下就能装回来(带内可恢复);卸掉内核或宿主,实例起不来、市场随之消失,只能开
708
820
  // shell 修(带外)。更新不在此列——它保留实例且失败会自动回滚。
709
- const kw = Array.isArray(meta.keywords) ? meta.keywords : [];
710
- // 走 declaresPlugin 而非再内联一次 `kw.includes('aalis-plugin')`:同一文件里维护两份
711
- // 同义判据,正是本仓已出事四次的形态(依赖来源判据、定级数学、包名正则、关键词分类)。
712
- const isPlugin = declaresPlugin(meta);
713
- const isInterface = kw.includes('aalis-interface');
714
- if (!isPlugin && !isInterface) {
715
- const kind = kw.includes('aalis-core')
716
- ? '内核'
717
- : kw.includes('aalis-runtime')
718
- ? '宿主'
719
- : kw.includes('aalis-api')
720
- ? '服务契约'
721
- : kw.includes('aalis-schema')
722
- ? '数据规范'
723
- : kw.includes('aalis-util')
724
- ? '工具库'
725
- : '非插件包';
821
+ // 判据与安装同一份(nonMarketKind)。
822
+ const kind = nonMarketKind(meta.keywords);
823
+ if (kind) {
726
824
  return {
727
825
  ok: false,
728
826
  message: `${pluginName} 是${kind},不是可装卸的插件,市场不负责它的卸载。` +
729
- (kw.includes('aalis-core') || kw.includes('aalis-runtime')
827
+ (kind === '内核' || kind === '宿主'
730
828
  ? '删掉它实例将无法启动、市场也随之消失,只能在终端里恢复;确需如此请手动执行 npm uninstall。'
731
829
  : '它随依赖它的插件被 npm 自动剪枝;确需单独删除请手动执行 npm uninstall。'),
732
830
  };
@@ -770,6 +868,16 @@ export function createPackageManager(deps) {
770
868
  // 先解析定义 name 并枚举实例:npm uninstall 会拆掉 node_modules,之后就读不到入口了。
771
869
  const defName = await definitionNameFor(pluginName);
772
870
  const instanceIds = instanceIdsFor(defName);
871
+ // ── 闸三:服务依赖者 ──
872
+ // 某服务没有别的插件正在提供时,卸掉它的提供者会打断 required 该服务的插件(已禁用的不算)。
873
+ // 与市场卸载前的预警同一份判定(serviceDependents),按加载器解析出的定义 name 查。
874
+ const dependents = findServiceDependents(defName, deps.pluginStatus?.() ?? []);
875
+ if (dependents.length > 0) {
876
+ return {
877
+ ok: false,
878
+ message: `卸载会破坏依赖:${dependents.join('、')} 依赖此插件提供的服务,且没有别的插件正在提供。请先停用它们,或启用 / 安装替代提供者。`,
879
+ };
880
+ }
773
881
  try {
774
882
  await execProc(proc, 'npm', ['uninstall', pluginName, '--no-audit', '--no-fund'], root, INSTALL_TIMEOUT_MS);
775
883
  for (const id of instanceIds) {
@@ -777,7 +885,10 @@ export function createPackageManager(deps) {
777
885
  deps.cleanupConfig?.(id); // 清残留配置(含禁用标记)
778
886
  }
779
887
  log.info(`${pluginName}: 已从根依赖与 node_modules 移除`);
780
- return { ok: true, message: `插件 ${pluginName} 已卸载(已从根依赖与 node_modules 移除)` };
888
+ return {
889
+ ok: true,
890
+ message: `插件 ${pluginName} 已卸载(已从根依赖与 node_modules 移除)。它写入 data/ 等存储根的数据不会删除,需要时请手动清理。`,
891
+ };
781
892
  }
782
893
  catch (err) {
783
894
  return { ok: false, message: err instanceof Error ? err.message : String(err) };
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aalis/plugin-package-manager",
3
- "version": "0.6.0",
3
+ "version": "0.7.0",
4
4
  "license": "MIT",
5
5
  "repository": {
6
6
  "type": "git",
@@ -12,7 +12,7 @@
12
12
  "url": "https://github.com/AalisLabs/Aalis/issues"
13
13
  },
14
14
  "homepage": "https://github.com/AalisLabs/Aalis#readme",
15
- "description": "插件包管理:从 npm 安装/卸载插件到 packages/",
15
+ "description": "插件包管理:从 npm 安装/卸载/更新到项目根 dependencies",
16
16
  "type": "module",
17
17
  "keywords": [
18
18
  "aalis",
@@ -24,16 +24,19 @@
24
24
  "dist"
25
25
  ],
26
26
  "dependencies": {
27
- "@aalis/api-process": ">=0.7.0 <1.0.0",
28
- "@aalis/util-dep-spec": ">=0.1.0 <1.0.0"
27
+ "@aalis/api-process": ">=0.8.0 <1.0.0",
28
+ "@aalis/util-dep-spec": ">=0.1.1 <1.0.0",
29
+ "@aalis/api-plugin-source": ">=0.1.0 <1.0.0",
30
+ "@aalis/api-host-config": ">=0.1.0 <1.0.0",
31
+ "@aalis/api-package-manager": ">=0.1.0 <1.0.0"
29
32
  },
30
33
  "devDependencies": {
31
34
  "@types/node": "^22.0.0",
32
35
  "typescript": "^5.7.0",
33
- "@aalis/core": "0.17.0"
36
+ "@aalis/core": "0.18.0"
34
37
  },
35
38
  "peerDependencies": {
36
- "@aalis/core": ">=0.17.0 <1.0.0"
39
+ "@aalis/core": ">=0.18.0 <1.0.0"
37
40
  },
38
41
  "aalis": {
39
42
  "service": {
@@ -47,7 +50,8 @@
47
50
  "optional": [
48
51
  "app",
49
52
  "plugins",
50
- "host-config"
53
+ "host-config",
54
+ "plugin-source"
51
55
  ],
52
56
  "provides": [
53
57
  "package-manager"