@longzai-intelligence-bun/config 0.1.4 → 0.1.6
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/dist/index.d.ts +81 -52
- package/dist/index.js +3 -2
- package/package.json +4 -4
package/dist/index.d.ts
CHANGED
|
@@ -1,15 +1,16 @@
|
|
|
1
|
-
//#region src/types/bun.types.d.ts
|
|
2
1
|
/**
|
|
3
2
|
* bun test 工具配置类型定义
|
|
4
3
|
*
|
|
5
4
|
* 扩展 bun:test 原生配置语义,提供项目特定的便捷配置层。
|
|
6
5
|
*
|
|
7
6
|
* 设计对齐 longzai-intelligence-vitest 的类型分层:
|
|
7
|
+
*
|
|
8
8
|
* - 原生字段收进 {@link BunTestConfig}(命名对齐 bun:test 原生 `[test]` 段)
|
|
9
9
|
* - 便捷字段平铺在 {@link BunProjectSpecificOptions}(对齐 vitest ProjectSpecificOptions)
|
|
10
10
|
* - 默认值合并发生在 {@link createBaseBunConfig},而非 defineConfig 工厂层
|
|
11
11
|
*
|
|
12
12
|
* 字段命名差异说明(bun vs vitest,生成的 bunfig.toml 必须合法):
|
|
13
|
+
*
|
|
13
14
|
* - bun 用 `coveragePathIgnorePatterns`(vitest 用 `coverage.exclude`)
|
|
14
15
|
* - bun 用 `coverageThreshold`(vitest 用 `coverage.thresholds`)
|
|
15
16
|
* - bun 的 `coverageThreshold` 不支持 `branches`(vitest 支持)
|
|
@@ -19,7 +20,7 @@
|
|
|
19
20
|
*
|
|
20
21
|
* 每个分层预设子路径在返回值上盖章自身分层名,`custom` 即未走预设子路径的兜底值。
|
|
21
22
|
* 分层名与固定分层目录形态一一对应即封层规则,声明文件无法手工伪造该标记,
|
|
22
|
-
* lzi-bun
|
|
23
|
+
* lzi-bun 据此执法豁免位内容义务与门控位零测试声明制。
|
|
23
24
|
* 预设实现见 @longzai-intelligence-bun/presets 子路径包,范式正本为决策 0006。
|
|
24
25
|
*/
|
|
25
26
|
type BunPresetKind = 'root' | 'type-only' | 'contract' | 'main' | 'docs' | 'domain' | 'implementation' | 'infrastructure' | 'api' | 'ui' | 'capability' | 'mcp' | 'desktop-host' | 'mobile' | 'miniprogram' | 'package' | 'server' | 'web' | 'desktop' | 'cli' | 'custom';
|
|
@@ -37,7 +38,7 @@ type BunInstallScopes = Record<string, string>;
|
|
|
37
38
|
* globals 仓 bun install 预设数据形状(lzi-bun-install.config.ts 的 default export 类型)
|
|
38
39
|
*
|
|
39
40
|
* longzai-intelligence-globals 仓以 `import type` 引用本类型获得强类型编写体验
|
|
40
|
-
* (运行时被擦除,globals 仓不依赖本包 node_modules);lzi-bun
|
|
41
|
+
* (运行时被擦除,globals 仓不依赖本包 node_modules);lzi-bun 动态加载该文件
|
|
41
42
|
* 后经运行时类型守卫校验再消费。
|
|
42
43
|
*
|
|
43
44
|
* 只承载 scope 清单数据;registry 分流语义由 config 包代码常量持有(ADR 0081)。
|
|
@@ -51,7 +52,7 @@ type InstallScopesPreset = {
|
|
|
51
52
|
/**
|
|
52
53
|
* bunfig.toml [install] 段配置
|
|
53
54
|
*
|
|
54
|
-
* 对齐 bunfig.toml `[install]` 段语义。lzi-bun
|
|
55
|
+
* 对齐 bunfig.toml `[install]` 段语义。lzi-bun 在 monorepo root(含 workspaces 字段)
|
|
55
56
|
* 生成 bunfig.toml 时,基于 DEFAULT_REGISTRY 与 globals 仓 scope 预设(lzi-bun-install.config.ts,
|
|
56
57
|
* ADR 0081)组装本段并注入。
|
|
57
58
|
*
|
|
@@ -78,7 +79,7 @@ type BunInstallConfig = {
|
|
|
78
79
|
* - `isolated`:每个包独立 node_modules/.bun/<pkg>@<ver> 条目,globalStore 才生效
|
|
79
80
|
* - `hoisted`:传统扁平 node_modules,globalStore 无意义
|
|
80
81
|
*
|
|
81
|
-
* @default 'isolated'(由 lzi-bun
|
|
82
|
+
* @default 'isolated'(由 lzi-bun 在 root bunfig 注入)
|
|
82
83
|
*/
|
|
83
84
|
linker?: 'isolated' | 'hoisted';
|
|
84
85
|
/**
|
|
@@ -91,7 +92,7 @@ type BunInstallConfig = {
|
|
|
91
92
|
* store 位置(缓存目录)由 `.env` 的 `BUN_INSTALL_CACHE_DIR` 指定(跨机器路径不同,不入源码),
|
|
92
93
|
* 不在 bunfig 物化——bunfig.toml 不支持 `${VAR}` 插值,且写死路径会污染其他机器。
|
|
93
94
|
*
|
|
94
|
-
* @default true(由 lzi-bun
|
|
95
|
+
* @default true(由 lzi-bun 在 root bunfig 注入)
|
|
95
96
|
*/
|
|
96
97
|
globalStore?: boolean;
|
|
97
98
|
};
|
|
@@ -163,8 +164,8 @@ type CoverageThreshold = {
|
|
|
163
164
|
* 参考:https://bun.sh/docs/runtime/bunfig
|
|
164
165
|
*
|
|
165
166
|
* @remarks
|
|
166
|
-
* `coverageThreshold` 例外即不写入 bunfig.toml,由 lzi-bun
|
|
167
|
-
* 口径消费,见该字段注释。`passWithNoTests` 与 `include` 为 lzi-bun
|
|
167
|
+
* `coverageThreshold` 例外即不写入 bunfig.toml,由 lzi-bun 按全局汇总
|
|
168
|
+
* 口径消费,见该字段注释。`passWithNoTests` 与 `include` 为 lzi-bun
|
|
168
169
|
* 自有字段,同样不进入 bunfig.toml。
|
|
169
170
|
*/
|
|
170
171
|
type BunTestConfig = {
|
|
@@ -181,12 +182,12 @@ type BunTestConfig = {
|
|
|
181
182
|
*/
|
|
182
183
|
coverage?: boolean;
|
|
183
184
|
/**
|
|
184
|
-
* 覆盖率阈值,由 lzi-bun
|
|
185
|
+
* 覆盖率阈值,由 lzi-bun 在测试全过后按全局汇总口径消费
|
|
185
186
|
*
|
|
186
187
|
* @remarks
|
|
187
188
|
* bun 原生对 bunfig.toml 同名字段按逐文件判定,任一源文件低于阈值即令
|
|
188
189
|
* `bun test` 非零退出,即使测试全过且包级汇总达标,退出码与测试事实不符即
|
|
189
|
-
* issue 0003。故本字段不序列化进 bunfig.toml,lzi-bun
|
|
190
|
+
* issue 0003。故本字段不序列化进 bunfig.toml,lzi-bun 读取 lcov 报告
|
|
190
191
|
* 按包级全局汇总判定,口径对齐 coverage.md 与 vitest `thresholds`。
|
|
191
192
|
* 支持单数值即应用于三维,或对象即分别设置。
|
|
192
193
|
*/
|
|
@@ -249,7 +250,7 @@ type BunTestConfig = {
|
|
|
249
250
|
/**
|
|
250
251
|
* 项目特定的便捷配置选项
|
|
251
252
|
*
|
|
252
|
-
* 这些字段不是 bun 原生,而是 lzi-bun
|
|
253
|
+
* 这些字段不是 bun 原生,而是 lzi-bun 封装层提供的快捷键,
|
|
253
254
|
* 由 {@link createBaseBunConfig} 映射为对应的 bun 原生字段。
|
|
254
255
|
*
|
|
255
256
|
* 设计对齐 vitest ProjectSpecificOptions:便捷字段平铺顶层,
|
|
@@ -259,7 +260,7 @@ type BunProjectSpecificOptions = {
|
|
|
259
260
|
/**
|
|
260
261
|
* 是否启用覆盖率配置注入,默认 true
|
|
261
262
|
*
|
|
262
|
-
* 设为 false 时,即使运行 `lzi-bun
|
|
263
|
+
* 设为 false 时,即使运行 `lzi-bun test --coverage`,
|
|
263
264
|
* 也不会生成覆盖率相关的 bunfig.toml 段。
|
|
264
265
|
*
|
|
265
266
|
* @default true
|
|
@@ -309,7 +310,7 @@ type BunConfigOptions = BunProjectSpecificOptions & {
|
|
|
309
310
|
* 与 {@link BunConfigOptions} 的区别:此处所有字段已合并到最终值,
|
|
310
311
|
* 无 undefined;是「待序列化」的中间态。
|
|
311
312
|
*
|
|
312
|
-
* install 段为可选:仅 monorepo root 的 bunfig.toml 才注入(由 lzi-bun
|
|
313
|
+
* install 段为可选:仅 monorepo root 的 bunfig.toml 才注入(由 lzi-bun 基于
|
|
313
314
|
* workspaces 字段检测决定),子包 bunfig 仅含 test 段。
|
|
314
315
|
*/
|
|
315
316
|
type BunConfigResult = {
|
|
@@ -321,19 +322,19 @@ type BunConfigResult = {
|
|
|
321
322
|
* 预设意图标记,由预设工厂盖章
|
|
322
323
|
*
|
|
323
324
|
* @remarks
|
|
324
|
-
* 不序列化进 bunfig.toml,仅供 lzi-bun
|
|
325
|
+
* 不序列化进 bunfig.toml,仅供 lzi-bun 执法消费,
|
|
325
326
|
* `createBaseBunConfig` 直连产物不盖章即该字段缺省
|
|
326
327
|
*/
|
|
327
328
|
preset?: BunPresetKind;
|
|
328
329
|
/**
|
|
329
|
-
* bun 安装配置(仅 root 注入,由 lzi-bun
|
|
330
|
+
* bun 安装配置(仅 root 注入,由 lzi-bun 基于 globals 仓预设组装,ADR 0081)
|
|
330
331
|
*
|
|
331
332
|
* 子包配置不包含此字段。
|
|
332
333
|
*/
|
|
333
334
|
install?: BunInstallConfig;
|
|
334
335
|
};
|
|
335
336
|
/**
|
|
336
|
-
* lzi-bun
|
|
337
|
+
* lzi-bun 配置
|
|
337
338
|
*
|
|
338
339
|
* @remarks
|
|
339
340
|
* 定义 lzi-bun.config.ts 配置文件的顶层结构,声明形态为预设子路径 `defineConfig` 的产物即
|
|
@@ -341,7 +342,7 @@ type BunConfigResult = {
|
|
|
341
342
|
* 的可选入参声明 `install`
|
|
342
343
|
* 此类型与 {@link BunConfigResult} 兼容即预设产物对象可直接作为此类型使用,
|
|
343
344
|
* 因为 {@link BunConfigResult} 是 `{ test: BunTestConfig }` 的超集结构
|
|
344
|
-
* `registry` 与全量 `scopes` 不在此类型暴露,基座由 lzi-bun
|
|
345
|
+
* `registry` 与全量 `scopes` 不在此类型暴露,基座由 lzi-bun 基于双真源即 ADR 0081 自动注入
|
|
345
346
|
*/
|
|
346
347
|
type LziBunConfig = {
|
|
347
348
|
/**
|
|
@@ -359,7 +360,7 @@ type LziBunConfig = {
|
|
|
359
360
|
* 仓根 install 声明,经 root 子路径 `defineConfig({ install })` 透传
|
|
360
361
|
*
|
|
361
362
|
* @remarks
|
|
362
|
-
* 仅 monorepo root 的 bunfig 消费,子包声明无效,物化的 `[install]` 段由 lzi-bun
|
|
363
|
+
* 仅 monorepo root 的 bunfig 消费,子包声明无效,物化的 `[install]` 段由 lzi-bun
|
|
363
364
|
* 以本声明为用户输入叠加真源基座组装
|
|
364
365
|
*/
|
|
365
366
|
install?: LziBunInstallConfig;
|
|
@@ -382,11 +383,9 @@ type LziBunRootConfigInput = {
|
|
|
382
383
|
*
|
|
383
384
|
* @remarks
|
|
384
385
|
* 合并完成的 `test` 段加预设标记加原样透传的 `install` 声明,可直接作为
|
|
385
|
-
* {@link LziBunConfig} 消费,物化的 install 段不在此处即由 lzi-bun
|
|
386
|
+
* {@link LziBunConfig} 消费,物化的 install 段不在此处即由 lzi-bun 组装
|
|
386
387
|
*/
|
|
387
388
|
type LziBunRootConfigResult = Omit<BunConfigResult, 'install'> & Pick<LziBunConfig, 'install'>;
|
|
388
|
-
//#endregion
|
|
389
|
-
//#region src/core/defaults.constants.d.ts
|
|
390
389
|
/**
|
|
391
390
|
* 默认配置常量
|
|
392
391
|
*
|
|
@@ -417,8 +416,6 @@ declare const DEFAULT_COVERAGE_DIR = "coverage";
|
|
|
417
416
|
* 用于「零测试预检」的 glob 来源(不影响 bun test 实际扫描范围)。
|
|
418
417
|
*/
|
|
419
418
|
declare const DEFAULT_INCLUDE_PATTERNS: string[];
|
|
420
|
-
//#endregion
|
|
421
|
-
//#region src/core/convention-preload.utils.d.ts
|
|
422
419
|
/**
|
|
423
420
|
* 约定式测试引导文件路径
|
|
424
421
|
*
|
|
@@ -450,8 +447,33 @@ declare const CONVENTION_TEST_BOOTSTRAP_PRELOAD = "./src/__tests__/helpers/boots
|
|
|
450
447
|
* @returns 合入约定预载项后的新配置对象,入参不被改写
|
|
451
448
|
*/
|
|
452
449
|
declare function mergeConventionTestPreload(config: LziBunConfig | null, preload?: string): LziBunConfig;
|
|
453
|
-
|
|
454
|
-
|
|
450
|
+
/**
|
|
451
|
+
* 测试内存护栏纯函数设施
|
|
452
|
+
*
|
|
453
|
+
* @remarks
|
|
454
|
+
* 依据 ADR 0008 即 test 命令内存护栏,峰值解析与判定为无 IO 纯函数,
|
|
455
|
+
* IO 接线在 lzi-bun cli 的 test 执行链,与覆盖率阈值门禁即
|
|
456
|
+
* enforceCoverageThreshold 结构同构
|
|
457
|
+
*/
|
|
458
|
+
/**
|
|
459
|
+
* 从 `/usr/bin/time -l` 输出解析峰值常驻内存
|
|
460
|
+
*
|
|
461
|
+
* @remarks
|
|
462
|
+
* darwin 实际输出为数值在前的 `值 标签` 形态,另兼容 `标签: 值` 与
|
|
463
|
+
* `标签 (bytes): 值` 形态,两种标签方言均识别,非整数行跳过继续扫描,
|
|
464
|
+
* 全量无命中返回 undefined
|
|
465
|
+
* @param output - time 命令的 stderr 输出全文
|
|
466
|
+
* @returns 峰值字节数,解析不到为 undefined
|
|
467
|
+
*/
|
|
468
|
+
declare function parseMaxResidentSetBytes(output: string): number | undefined;
|
|
469
|
+
/**
|
|
470
|
+
* 格式化内存护栏判定报告
|
|
471
|
+
*
|
|
472
|
+
* @param maxBytes - 实测峰值常驻内存字节数
|
|
473
|
+
* @param budgetBytes - 预算字节数
|
|
474
|
+
* @returns 报告行数组,首行为实测与预算对照,次行为治理指引
|
|
475
|
+
*/
|
|
476
|
+
declare function formatMemoryGuardReport(maxBytes: number, budgetBytes: number): string[];
|
|
455
477
|
/**
|
|
456
478
|
* bunfig.toml [install] 段共享预设常量(registry 分流 + LZI_SCOPES 真源 A + globals 定位常量)
|
|
457
479
|
*
|
|
@@ -470,7 +492,7 @@ declare function mergeConventionTestPreload(config: LziBunConfig | null, preload
|
|
|
470
492
|
* 维护约定:
|
|
471
493
|
*
|
|
472
494
|
* 1. 新增 scope:本常量与 globals 仓 lzi-bun-install.config.ts 双写追加。
|
|
473
|
-
* 2. 严禁局部手改项目 bunfig.toml 补 scope(违背真源,且会被 lzi-bun
|
|
495
|
+
* 2. 严禁局部手改项目 bunfig.toml 补 scope(违背真源,且会被 lzi-bun 覆盖)。
|
|
474
496
|
* 3. scope key 必须与项目目录名(`longzai-intelligence-<suffix>`)的发布 scope 一致。
|
|
475
497
|
*
|
|
476
498
|
* 参考文档:
|
|
@@ -518,13 +540,11 @@ declare const GLOBALS_ENV_KEY: 'LZI_GLOBALS_ROOT';
|
|
|
518
540
|
* globals 仓内 bun install 预设文件名
|
|
519
541
|
*
|
|
520
542
|
* scope 清单优先真源(双真源并行设计真源 B,globals 设置即生效)的落点(globals 仓根,
|
|
521
|
-
* `lzi-*.config.ts` 标准命名)。lzi-bun
|
|
543
|
+
* `lzi-*.config.ts` 标准命名)。lzi-bun 经 shared-config 的
|
|
522
544
|
* `loadConfigFile` 原语加载(默认导出强制,全局 ADR 0118),
|
|
523
545
|
* 加载后经运行时类型守卫校验再消费;未配置定位时不读本文件(回落真源 A)。
|
|
524
546
|
*/
|
|
525
547
|
declare const LZI_BUN_INSTALL_CONFIG_FILE: 'lzi-bun-install.config.ts';
|
|
526
|
-
//#endregion
|
|
527
|
-
//#region src/install/scopes.factory.d.ts
|
|
528
548
|
/**
|
|
529
549
|
* 定义 globals 仓的 bun install scopes 预设
|
|
530
550
|
*
|
|
@@ -535,15 +555,13 @@ declare const LZI_BUN_INSTALL_CONFIG_FILE: 'lzi-bun-install.config.ts';
|
|
|
535
555
|
* @returns 原样返回的预设对象
|
|
536
556
|
*/
|
|
537
557
|
declare function defineInstallScopesPreset(preset: InstallScopesPreset): InstallScopesPreset;
|
|
538
|
-
//#endregion
|
|
539
|
-
//#region src/install/scopes.utils.d.ts
|
|
540
558
|
/**
|
|
541
559
|
* install scopes 合并与校验错误
|
|
542
560
|
*
|
|
543
561
|
* extraScopes 存在非法项或与 globals 预设冲突时由 {@link mergeInstallScopes} 抛出;
|
|
544
562
|
* globals 预设文件自身校验失败时由 {@link validateInstallScopesPreset} 抛出。
|
|
545
563
|
*
|
|
546
|
-
* lzi-bun
|
|
564
|
+
* lzi-bun 的命令层捕获后 exit(1)(单包模式)或收集为该包失败(递归模式),
|
|
547
565
|
* 处理方式与 BunfigProtectedError 一致(具名类,供 instanceof 分流)。
|
|
548
566
|
*/
|
|
549
567
|
declare class InstallScopesError extends Error {
|
|
@@ -576,7 +594,7 @@ declare function mergeInstallScopes(extraScopes?: BunInstallScopes): BunInstallS
|
|
|
576
594
|
* 合并 globals 预设 scope 清单与用户自定义追加 scope,并应用私有轨排除名单
|
|
577
595
|
*
|
|
578
596
|
* 基座 = globals 仓 lzi-bun-install.config.ts 预设(双真源并行设计真源 B,ADR 0081),
|
|
579
|
-
* 由 lzi-bun
|
|
597
|
+
* 由 lzi-bun 经 LZI_GLOBALS_ROOT 定位加载并传入(globals 设置即生效)。
|
|
580
598
|
*
|
|
581
599
|
* selfScope(本仓自身 scope 兜底注入,issue 0008):合并完成后仍缺位且未被
|
|
582
600
|
* privateScopes 排除时,以 {@link NPMJS_REGISTRY} 兜底注入。动机:bun publish
|
|
@@ -597,7 +615,7 @@ declare function mergeInstallScopesWithPreset(presetScopes: BunInstallScopes, ex
|
|
|
597
615
|
/**
|
|
598
616
|
* globals 预设加载值的运行时校验(lzi-bun-install.config.ts 的 default export)
|
|
599
617
|
*
|
|
600
|
-
* lzi-bun
|
|
618
|
+
* lzi-bun 动态 `import()` globals 仓预设文件后,以本函数做运行时类型守卫:
|
|
601
619
|
* 结构(对象 + scopes 映射)与逐条键值(scope key 模式、http/https URL、非空)
|
|
602
620
|
* 全部聚合一次校验,通过则返回规范化的 scope 映射,存在问题则抛 {@link InstallScopesError}。
|
|
603
621
|
*
|
|
@@ -609,8 +627,6 @@ declare function mergeInstallScopesWithPreset(presetScopes: BunInstallScopes, ex
|
|
|
609
627
|
* @throws {@link InstallScopesError} 结构缺失、键值非法或清单为空时抛出(聚合一次报出)
|
|
610
628
|
*/
|
|
611
629
|
declare function validateInstallScopesPreset(value: unknown): BunInstallScopes;
|
|
612
|
-
//#endregion
|
|
613
|
-
//#region src/exemptions/domain/minimal-exemption.patterns.d.ts
|
|
614
630
|
/**
|
|
615
631
|
* 领域层最小豁免模式
|
|
616
632
|
*
|
|
@@ -625,8 +641,6 @@ declare function validateInstallScopesPreset(value: unknown): BunInstallScopes;
|
|
|
625
641
|
* 每条 pattern 对应 bunfig.toml coveragePathIgnorePatterns 的一项。
|
|
626
642
|
*/
|
|
627
643
|
declare const DOMAIN_MINIMAL_EXEMPTION_PATTERNS: string[];
|
|
628
|
-
//#endregion
|
|
629
|
-
//#region src/exemptions/domain/moderate-exemption.patterns.d.ts
|
|
630
644
|
/**
|
|
631
645
|
* 领域层中等豁免模式
|
|
632
646
|
*
|
|
@@ -641,8 +655,6 @@ declare const DOMAIN_MINIMAL_EXEMPTION_PATTERNS: string[];
|
|
|
641
655
|
* minimal 的真超集:minimal ⊂ moderate(由 exemptions.test.ts 锁定)。
|
|
642
656
|
*/
|
|
643
657
|
declare const DOMAIN_MODERATE_EXEMPTION_PATTERNS: string[];
|
|
644
|
-
//#endregion
|
|
645
|
-
//#region src/exemptions/server/minimal-exemption.patterns.d.ts
|
|
646
658
|
/**
|
|
647
659
|
* apps/server 最小豁免模式
|
|
648
660
|
*
|
|
@@ -655,8 +667,6 @@ declare const DOMAIN_MODERATE_EXEMPTION_PATTERNS: string[];
|
|
|
655
667
|
* apps/server 最小豁免模式覆盖率忽略路径列表
|
|
656
668
|
*/
|
|
657
669
|
declare const SERVER_MINIMAL_EXEMPTION_PATTERNS: string[];
|
|
658
|
-
//#endregion
|
|
659
|
-
//#region src/exemptions/server/moderate-exemption.patterns.d.ts
|
|
660
670
|
/**
|
|
661
671
|
* apps/server 中等豁免模式
|
|
662
672
|
*
|
|
@@ -671,8 +681,6 @@ declare const SERVER_MINIMAL_EXEMPTION_PATTERNS: string[];
|
|
|
671
681
|
* SERVER_MINIMAL_EXEMPTION_PATTERNS 的真超集(由 exemptions.test.ts 锁定)。
|
|
672
682
|
*/
|
|
673
683
|
declare const SERVER_MODERATE_EXEMPTION_PATTERNS: string[];
|
|
674
|
-
//#endregion
|
|
675
|
-
//#region src/exemptions/web/minimal-exemption.patterns.d.ts
|
|
676
684
|
/**
|
|
677
685
|
* apps/web / apps/desktop 最小豁免模式
|
|
678
686
|
*
|
|
@@ -684,8 +692,6 @@ declare const SERVER_MODERATE_EXEMPTION_PATTERNS: string[];
|
|
|
684
692
|
* apps/web / apps/desktop 最小豁免模式覆盖率忽略路径列表
|
|
685
693
|
*/
|
|
686
694
|
declare const WEB_MINIMAL_EXEMPTION_PATTERNS: string[];
|
|
687
|
-
//#endregion
|
|
688
|
-
//#region src/exemptions/web/moderate-exemption.patterns.d.ts
|
|
689
695
|
/**
|
|
690
696
|
* apps/web / apps/desktop 中等豁免模式
|
|
691
697
|
*
|
|
@@ -700,8 +706,34 @@ declare const WEB_MINIMAL_EXEMPTION_PATTERNS: string[];
|
|
|
700
706
|
* WEB_MINIMAL_EXEMPTION_PATTERNS 的真超集(由 exemptions.test.ts 锁定)。
|
|
701
707
|
*/
|
|
702
708
|
declare const WEB_MODERATE_EXEMPTION_PATTERNS: string[];
|
|
703
|
-
|
|
704
|
-
|
|
709
|
+
/**
|
|
710
|
+
* 内存预算覆盖环境变量名
|
|
711
|
+
*/
|
|
712
|
+
declare const MEMORY_BUDGET_ENV_KEY = "LZI_TEST_MEMORY_BUDGET_BYTES";
|
|
713
|
+
/**
|
|
714
|
+
* 默认测试内存预算字节数即 1 GB
|
|
715
|
+
*
|
|
716
|
+
* @default 1073741824
|
|
717
|
+
*/
|
|
718
|
+
declare const DEFAULT_MEMORY_BUDGET_BYTES = 1073741824;
|
|
719
|
+
/**
|
|
720
|
+
* 重界面层测试内存预算字节数即 1.5 GB
|
|
721
|
+
*
|
|
722
|
+
* @remarks
|
|
723
|
+
* 覆盖 web、desktop、desktop-host、mobile、miniprogram、ui 六层,happy-dom 整页挂载
|
|
724
|
+
* 与图表库在测试环境的常驻开销显著高于纯逻辑层
|
|
725
|
+
* @default 1610612736
|
|
726
|
+
*/
|
|
727
|
+
declare const HEAVY_DOM_MEMORY_BUDGET_BYTES = 1610612736;
|
|
728
|
+
/**
|
|
729
|
+
* 解析预设层的测试内存预算
|
|
730
|
+
*
|
|
731
|
+
* @remarks
|
|
732
|
+
* 环境变量 `LZI_TEST_MEMORY_BUDGET_BYTES` 优先,未设置或非正整数回落分层常量
|
|
733
|
+
* @param preset - 预设意图标记,缺省与未知层一律默认档
|
|
734
|
+
* @returns 预算字节数
|
|
735
|
+
*/
|
|
736
|
+
declare function resolveMemoryBudgetBytes(preset: BunPresetKind | undefined): number;
|
|
705
737
|
/**
|
|
706
738
|
* Domain 层覆盖率阈值
|
|
707
739
|
*
|
|
@@ -807,8 +839,6 @@ declare const MINIPROGRAM_COVERAGE_THRESHOLDS: CoverageThreshold;
|
|
|
807
839
|
* preset 中会据此跳过 coverage 配置生成。
|
|
808
840
|
*/
|
|
809
841
|
declare const TYPE_ONLY_COVERAGE_THRESHOLDS: CoverageThreshold;
|
|
810
|
-
//#endregion
|
|
811
|
-
//#region src/config/base.config.d.ts
|
|
812
842
|
/**
|
|
813
843
|
* 创建基础 bun 配置
|
|
814
844
|
*
|
|
@@ -829,5 +859,4 @@ declare const TYPE_ONLY_COVERAGE_THRESHOLDS: CoverageThreshold;
|
|
|
829
859
|
* @returns BunConfigResult 配置对象
|
|
830
860
|
*/
|
|
831
861
|
declare function createBaseBunConfig(options?: BunConfigOptions): BunConfigResult;
|
|
832
|
-
|
|
833
|
-
export { API_COVERAGE_THRESHOLDS, type BunConfigOptions, type BunConfigResult, type BunInstallConfig, type BunInstallScopes, type BunPresetKind, type BunProjectSpecificOptions, type BunTestConfig, CAPABILITY_COVERAGE_THRESHOLDS, CLI_COVERAGE_THRESHOLDS, SERVER_MINIMAL_EXEMPTION_PATTERNS as CLI_MINIMAL_EXEMPTION_PATTERNS, SERVER_MINIMAL_EXEMPTION_PATTERNS, SERVER_MODERATE_EXEMPTION_PATTERNS as CLI_MODERATE_EXEMPTION_PATTERNS, SERVER_MODERATE_EXEMPTION_PATTERNS, CONVENTION_TEST_BOOTSTRAP_PATH, CONVENTION_TEST_BOOTSTRAP_PRELOAD, type CoverageThreshold, DEFAULT_COVERAGE_DIR, DEFAULT_COVERAGE_IGNORE_PATTERNS, DEFAULT_COVERAGE_REPORTERS, DEFAULT_INCLUDE_PATTERNS, DEFAULT_REGISTRY, DESKTOP_COVERAGE_THRESHOLDS, DESKTOP_HOST_COVERAGE_THRESHOLDS, WEB_MINIMAL_EXEMPTION_PATTERNS as DESKTOP_MINIMAL_EXEMPTION_PATTERNS, WEB_MINIMAL_EXEMPTION_PATTERNS, WEB_MODERATE_EXEMPTION_PATTERNS as DESKTOP_MODERATE_EXEMPTION_PATTERNS, WEB_MODERATE_EXEMPTION_PATTERNS, DOMAIN_COVERAGE_THRESHOLDS, DOMAIN_MINIMAL_EXEMPTION_PATTERNS, DOMAIN_MODERATE_EXEMPTION_PATTERNS, GLOBALS_ENV_KEY, IMPLEMENTATION_COVERAGE_THRESHOLDS, INFRASTRUCTURE_COVERAGE_THRESHOLDS, InstallScopesError, type InstallScopesPreset, LZI_BUN_INSTALL_CONFIG_FILE, LZI_SCOPES, type LziBunConfig, type LziBunInstallConfig, type LziBunRootConfigInput, type LziBunRootConfigResult, MCP_COVERAGE_THRESHOLDS, MINIPROGRAM_COVERAGE_THRESHOLDS, MOBILE_COVERAGE_THRESHOLDS, NPMJS_REGISTRY, PACKAGE_COVERAGE_THRESHOLDS, SERVER_COVERAGE_THRESHOLDS, TYPE_ONLY_COVERAGE_THRESHOLDS, UI_COVERAGE_THRESHOLDS, WEB_COVERAGE_THRESHOLDS, createBaseBunConfig, defineInstallScopesPreset, mergeConventionTestPreload, mergeInstallScopes, mergeInstallScopesWithPreset, validateInstallScopesPreset };
|
|
862
|
+
export { API_COVERAGE_THRESHOLDS, type BunConfigOptions, type BunConfigResult, type BunInstallConfig, type BunInstallScopes, type BunPresetKind, type BunProjectSpecificOptions, type BunTestConfig, CAPABILITY_COVERAGE_THRESHOLDS, CLI_COVERAGE_THRESHOLDS, SERVER_MINIMAL_EXEMPTION_PATTERNS as CLI_MINIMAL_EXEMPTION_PATTERNS, SERVER_MINIMAL_EXEMPTION_PATTERNS, SERVER_MODERATE_EXEMPTION_PATTERNS as CLI_MODERATE_EXEMPTION_PATTERNS, SERVER_MODERATE_EXEMPTION_PATTERNS, CONVENTION_TEST_BOOTSTRAP_PATH, CONVENTION_TEST_BOOTSTRAP_PRELOAD, type CoverageThreshold, DEFAULT_COVERAGE_DIR, DEFAULT_COVERAGE_IGNORE_PATTERNS, DEFAULT_COVERAGE_REPORTERS, DEFAULT_INCLUDE_PATTERNS, DEFAULT_MEMORY_BUDGET_BYTES, DEFAULT_REGISTRY, DESKTOP_COVERAGE_THRESHOLDS, DESKTOP_HOST_COVERAGE_THRESHOLDS, WEB_MINIMAL_EXEMPTION_PATTERNS as DESKTOP_MINIMAL_EXEMPTION_PATTERNS, WEB_MINIMAL_EXEMPTION_PATTERNS, WEB_MODERATE_EXEMPTION_PATTERNS as DESKTOP_MODERATE_EXEMPTION_PATTERNS, WEB_MODERATE_EXEMPTION_PATTERNS, DOMAIN_COVERAGE_THRESHOLDS, DOMAIN_MINIMAL_EXEMPTION_PATTERNS, DOMAIN_MODERATE_EXEMPTION_PATTERNS, GLOBALS_ENV_KEY, HEAVY_DOM_MEMORY_BUDGET_BYTES, IMPLEMENTATION_COVERAGE_THRESHOLDS, INFRASTRUCTURE_COVERAGE_THRESHOLDS, InstallScopesError, type InstallScopesPreset, LZI_BUN_INSTALL_CONFIG_FILE, LZI_SCOPES, type LziBunConfig, type LziBunInstallConfig, type LziBunRootConfigInput, type LziBunRootConfigResult, MCP_COVERAGE_THRESHOLDS, MEMORY_BUDGET_ENV_KEY, MINIPROGRAM_COVERAGE_THRESHOLDS, MOBILE_COVERAGE_THRESHOLDS, NPMJS_REGISTRY, PACKAGE_COVERAGE_THRESHOLDS, SERVER_COVERAGE_THRESHOLDS, TYPE_ONLY_COVERAGE_THRESHOLDS, UI_COVERAGE_THRESHOLDS, WEB_COVERAGE_THRESHOLDS, createBaseBunConfig, defineInstallScopesPreset, formatMemoryGuardReport, mergeConventionTestPreload, mergeInstallScopes, mergeInstallScopesWithPreset, parseMaxResidentSetBytes, resolveMemoryBudgetBytes, validateInstallScopesPreset };
|
package/dist/index.js
CHANGED
|
@@ -1,2 +1,3 @@
|
|
|
1
|
-
const e=[`**/node_modules/**`,`**/dist/**`,`**/out/**`],t=[`text`,`lcov`],n=`coverage`,r=[`src/**/*.test.ts`,`src/**/*.test.tsx`,`__tests__/**/*.test.ts`],i=`src/__tests__/helpers/bootstrap.ts`,a=`./${i}`;function o(e,t=a){let n=[t,...(e?.test?.preload??[]).filter(e=>e!==t)];return{...e,test:{...e?.test,preload:n}}}const s=`https://mirrors.cloud.tencent.com/npm/`,c=`https://registry.npmjs.org/`,l=/* @__PURE__ */ new Map([[`longzai-intelligence`,c],[`longzai-intelligence-agent-tools`,c],[`longzai-intelligence-audit`,c],[`longzai-intelligence-auth`,c],[`longzai-intelligence-builder`,c],[`longzai-intelligence-bun`,c],[`longzai-intelligence-cache`,c],[`longzai-intelligence-cli`,c],[`longzai-intelligence-config`,c],[`longzai-intelligence-dependencies`,c],[`longzai-intelligence-design-system`,c],[`longzai-intelligence-dev-tools`,c],[`longzai-intelligence-electron`,c],[`longzai-intelligence-error`,c],[`longzai-intelligence-event-bus`,c],[`longzai-intelligence-lint`,c],[`longzai-intelligence-logger`,c],[`longzai-intelligence-okr`,c],[`longzai-intelligence-oxfmt`,c],[`longzai-intelligence-oxlint`,c],[`longzai-intelligence-plugin`,c],[`longzai-intelligence-shared-config`,c],[`longzai-intelligence-shared-kernel`,c],[`longzai-intelligence-scripts`,c],[`longzai-intelligence-standards`,c],[`longzai-intelligence-transport`,c],[`longzai-intelligence-typescript`,c],[`longzai-intelligence-vscode`,c],[`longzai-intelligence-zod`,c],[`longzai-intelligence-prettier`,c],[`longzai-intelligence-tsdown`,c],[`longzai-intelligence-vitest`,c],[`longzai-intelligence-academy`,c],[`longzai-intelligence-accounting`,c],[`longzai-intelligence-activity`,c],[`longzai-intelligence-administration`,c],[`longzai-intelligence-agent`,c],[`longzai-intelligence-agent-broadcast`,c],[`longzai-intelligence-agent-collaboration`,c],[`longzai-intelligence-agent-endless`,c],[`longzai-intelligence-agent-migrator`,c],[`longzai-intelligence-agent-monitor`,c],[`longzai-intelligence-agent-prompts`,c],[`longzai-intelligence-agent-relation`,c],[`longzai-intelligence-agent-session`,c],[`longzai-intelligence-agent-swarm`,c],[`longzai-intelligence-agent-tasks`,c],[`longzai-intelligence-agent-tasks-data`,c],[`longzai-intelligence-agent-ui`,c],[`longzai-intelligence-analytics`,c],[`longzai-intelligence-api`,c],[`longzai-intelligence-app-gallery`,c],[`longzai-intelligence-app-store`,c],[`longzai-intelligence-architecture`,c],[`longzai-intelligence-architecture-expert`,c],[`longzai-intelligence-arkts`,c],[`longzai-intelligence-art`,c],[`longzai-intelligence-artifact`,c],[`longzai-intelligence-artifact-registry`,c],[`longzai-intelligence-arxiv`,c],[`longzai-intelligence-arxiv-data`,c],[`longzai-intelligence-arxiv-markdown`,c],[`longzai-intelligence-atomic`,c],[`longzai-intelligence-attention`,c],[`longzai-intelligence-audio`,c],[`longzai-intelligence-audio-assistant`,c],[`longzai-intelligence-augmented-reality`,c],[`longzai-intelligence-auto-research`,c],[`longzai-intelligence-automate`,c],[`longzai-intelligence-benchmark`,c],[`longzai-intelligence-bilibili`,c],[`longzai-intelligence-bilibili-data`,c],[`longzai-intelligence-bilibili-markdown`,c],[`longzai-intelligence-billing`,c],[`longzai-intelligence-blackboard`,c],[`longzai-intelligence-blackboard-data`,c],[`longzai-intelligence-blackboard-markdown`,c],[`longzai-intelligence-bluetooth`,c],[`longzai-intelligence-board`,c],[`longzai-intelligence-bootstrap`,c],[`longzai-intelligence-bootstrap-registry`,c],[`longzai-intelligence-bounty-registry`,c],[`longzai-intelligence-brawl-stars`,c],[`longzai-intelligence-broker`,c],[`longzai-intelligence-bt`,c],[`longzai-intelligence-business-plan`,c],[`longzai-intelligence-calendar`,c],[`longzai-intelligence-camera`,c],[`longzai-intelligence-canvas`,c],[`longzai-intelligence-capture`,c],[`longzai-intelligence-change-maker`,c],[`longzai-intelligence-changelog`,c],[`longzai-intelligence-changeset`,c],[`longzai-intelligence-chat`,c],[`longzai-intelligence-chess`,c],[`longzai-intelligence-circuit`,c],[`longzai-intelligence-claude-code`,c],[`longzai-intelligence-claude-knowledge`,c],[`longzai-intelligence-clipboard-share`,c],[`longzai-intelligence-closed-loop`,c],[`longzai-intelligence-closed-loop-data`,c],[`longzai-intelligence-closed-loop-markdown`,c],[`longzai-intelligence-cloud`,c],[`longzai-intelligence-code`,c],[`longzai-intelligence-code-agent`,c],[`longzai-intelligence-code-reviewer`,c],[`longzai-intelligence-codebase-research`,c],[`longzai-intelligence-coding-expert`,c],[`longzai-intelligence-collaboration`,c],[`longzai-intelligence-collective`,c],[`longzai-intelligence-commerce`,c],[`longzai-intelligence-commit`,c],[`longzai-intelligence-competition-registry`,c],[`longzai-intelligence-composer`,c],[`longzai-intelligence-concrete`,c],[`longzai-intelligence-concrete-industry`,c],[`longzai-intelligence-config-registry`,c],[`longzai-intelligence-context`,c],[`longzai-intelligence-contract`,c],[`longzai-intelligence-contract-parity`,c],[`longzai-intelligence-cookery`,c],[`longzai-intelligence-country`,c],[`longzai-intelligence-creativity`,c],[`longzai-intelligence-cross-platform`,c],[`longzai-intelligence-crossref`,c],[`longzai-intelligence-crossref-markdown`,c],[`longzai-intelligence-crypto`,c],[`longzai-intelligence-customer-service`,c],[`longzai-intelligence-cut`,c],[`longzai-intelligence-dag`,c],[`longzai-intelligence-dashboard`,c],[`longzai-intelligence-data`,c],[`longzai-intelligence-data-science`,c],[`longzai-intelligence-database`,c],[`longzai-intelligence-decenterlization`,c],[`longzai-intelligence-decision`,c],[`longzai-intelligence-deepseek`,c],[`longzai-intelligence-deepseek-harness`,c],[`longzai-intelligence-deepseek-harness-knowledge`,c],[`longzai-intelligence-delta`,c],[`longzai-intelligence-deploy`,c],[`longzai-intelligence-design`,c],[`longzai-intelligence-design-lab`,c],[`longzai-intelligence-design-registry`,c],[`longzai-intelligence-design-trending`,c],[`longzai-intelligence-device`,c],[`longzai-intelligence-dimensions`,c],[`longzai-intelligence-discipline`,c],[`longzai-intelligence-discovery`,c],[`longzai-intelligence-disk-space`,c],[`longzai-intelligence-disk-space-data`,c],[`longzai-intelligence-disk-space-markdown`,c],[`longzai-intelligence-distill`,c],[`longzai-intelligence-docs`,c],[`longzai-intelligence-docs-registry`,c],[`longzai-intelligence-document`,c],[`longzai-intelligence-douyin`,c],[`longzai-intelligence-douyin-data`,c],[`longzai-intelligence-douyin-markdown`,c],[`longzai-intelligence-drone`,c],[`longzai-intelligence-edge`,c],[`longzai-intelligence-electrobun`,c],[`longzai-intelligence-elysia`,c],[`longzai-intelligence-embodied`,c],[`longzai-intelligence-empowerment`,c],[`longzai-intelligence-engineering`,c],[`longzai-intelligence-env`,c],[`longzai-intelligence-env-registry`,c],[`longzai-intelligence-equilibrium`,c],[`longzai-intelligence-eslint`,c],[`longzai-intelligence-event`,c],[`longzai-intelligence-event-tracking`,c],[`longzai-intelligence-evolution`,c],[`longzai-intelligence-excel`,c],[`longzai-intelligence-exchange-rate`,c],[`longzai-intelligence-execution`,c],[`longzai-intelligence-experience`,c],[`longzai-intelligence-expert`,c],[`longzai-intelligence-expert-thinking`,c],[`longzai-intelligence-fde`,c],[`longzai-intelligence-feature-flags`,c],[`longzai-intelligence-features`,c],[`longzai-intelligence-federation`,c],[`longzai-intelligence-feed`,c],[`longzai-intelligence-feishu`,c],[`longzai-intelligence-fields-medal-knowledge`,c],[`longzai-intelligence-file-processing`,c],[`longzai-intelligence-findings`,c],[`longzai-intelligence-fitness`,c],[`longzai-intelligence-font`,c],[`longzai-intelligence-game`,c],[`longzai-intelligence-game-studio`,c],[`longzai-intelligence-gantt`,c],[`longzai-intelligence-gateway`,c],[`longzai-intelligence-geo`,c],[`longzai-intelligence-gesture`,c],[`longzai-intelligence-git`,c],[`longzai-intelligence-git-commit`,c],[`longzai-intelligence-git-insight`,c],[`longzai-intelligence-git-reviewer`,c],[`longzai-intelligence-git-swarm`,c],[`longzai-intelligence-git-swarm-registry`,c],[`longzai-intelligence-gitcode`,c],[`longzai-intelligence-github-data`,c],[`longzai-intelligence-github-markdown`,c],[`longzai-intelligence-github-trending`,c],[`longzai-intelligence-github-trending-data`,c],[`longzai-intelligence-github-trending-markdown`,c],[`longzai-intelligence-globals`,c],[`longzai-intelligence-growth`,c],[`longzai-intelligence-growth-registry`,c],[`longzai-intelligence-handover`,c],[`longzai-intelligence-hardware`,c],[`longzai-intelligence-harness`,c],[`longzai-intelligence-healthcare`,c],[`longzai-intelligence-history`,c],[`longzai-intelligence-horizon`,c],[`longzai-intelligence-human-resource`,c],[`longzai-intelligence-i18n`,c],[`longzai-intelligence-idea`,c],[`longzai-intelligence-identity`,c],[`longzai-intelligence-ime`,c],[`longzai-intelligence-impact-maker`,c],[`longzai-intelligence-inbox`,c],[`longzai-intelligence-inbox-registry`,c],[`longzai-intelligence-input-data`,c],[`longzai-intelligence-input-markdown`,c],[`longzai-intelligence-insight`,c],[`longzai-intelligence-intellectual-property`,c],[`longzai-intelligence-intent`,c],[`longzai-intelligence-intentionomics`,c],[`longzai-intelligence-interview`,c],[`longzai-intelligence-issues`,c],[`longzai-intelligence-jev`,c],[`longzai-intelligence-jev-knowledge`,c],[`longzai-intelligence-jev-system`,c],[`longzai-intelligence-journal-of-finance-data`,c],[`longzai-intelligence-journal-of-financial-and-quantitative-analysis-data`,c],[`longzai-intelligence-journal-of-financial-economics-data`,c],[`longzai-intelligence-journals`,c],[`longzai-intelligence-journals-2026-10`,c],[`longzai-intelligence-journals-markdown`,c],[`longzai-intelligence-journals-registry`,c],[`longzai-intelligence-key-management`,c],[`longzai-intelligence-knowledge`,c],[`longzai-intelligence-knowledge-graph`,c],[`longzai-intelligence-knowledge-markdown`,c],[`longzai-intelligence-kol`,c],[`longzai-intelligence-kol-data`,c],[`longzai-intelligence-kol-markdown`,c],[`longzai-intelligence-kol-registry`,c],[`longzai-intelligence-language-model`,c],[`longzai-intelligence-law`,c],[`longzai-intelligence-law-data`,c],[`longzai-intelligence-law-markdown`,c],[`longzai-intelligence-lean`,c],[`longzai-intelligence-ledger`,c],[`longzai-intelligence-legal`,c],[`longzai-intelligence-liquid-glass`,c],[`longzai-intelligence-living-previewer`,c],[`longzai-intelligence-loop`,c],[`longzai-intelligence-machine-learning`,c],[`longzai-intelligence-mail`,c],[`longzai-intelligence-mandala`,c],[`longzai-intelligence-map`,c],[`longzai-intelligence-markdown`,c],[`longzai-intelligence-marketing`,c],[`longzai-intelligence-marketplace`,c],[`longzai-intelligence-math`,c],[`longzai-intelligence-mcn`,c],[`longzai-intelligence-mcp`,c],[`longzai-intelligence-mechanisms`,c],[`longzai-intelligence-mechanisms-registry`,c],[`longzai-intelligence-media`,c],[`longzai-intelligence-meditation`,c],[`longzai-intelligence-meeting-notes`,c],[`longzai-intelligence-memory`,c],[`longzai-intelligence-mentor`,c],[`longzai-intelligence-messaging`,c],[`longzai-intelligence-mindset`,c],[`longzai-intelligence-minimax-knowldege`,c],[`longzai-intelligence-mission-control`,c],[`longzai-intelligence-model-fusion`,c],[`longzai-intelligence-model-gateway`,c],[`longzai-intelligence-moment`,c],[`longzai-intelligence-montage`,c],[`longzai-intelligence-movie`,c],[`longzai-intelligence-music-video`,c],[`longzai-intelligence-music-video-data`,c],[`longzai-intelligence-narrative-analyzer`,c],[`longzai-intelligence-nation`,c],[`longzai-intelligence-nginx`,c],[`longzai-intelligence-nginx-cli`,c],[`longzai-intelligence-nobel-prize-knowledge`,c],[`longzai-intelligence-notification`,c],[`longzai-intelligence-npm`,c],[`longzai-intelligence-npm-registry`,c],[`longzai-intelligence-npm-registry-data`,c],[`longzai-intelligence-observability`,c],[`longzai-intelligence-office-industry`,c],[`longzai-intelligence-okr-data`,c],[`longzai-intelligence-okr-markdown`,c],[`longzai-intelligence-older`,c],[`longzai-intelligence-one`,c],[`longzai-intelligence-one-digest`,c],[`longzai-intelligence-one-digest-data`,c],[`longzai-intelligence-one-digest-markdown`,c],[`longzai-intelligence-one-digest-registry`,c],[`longzai-intelligence-one-trae-works`,c],[`longzai-intelligence-ontology`,c],[`longzai-intelligence-open-pencil`,c],[`longzai-intelligence-open-router`,c],[`longzai-intelligence-open-router-data`,c],[`longzai-intelligence-open-router-markdown`,c],[`longzai-intelligence-opencode`,c],[`longzai-intelligence-opencode-knowledge`,c],[`longzai-intelligence-opportunity`,c],[`longzai-intelligence-orchestry`,c],[`longzai-intelligence-organization`,c],[`longzai-intelligence-orm`,c],[`longzai-intelligence-outfit`,c],[`longzai-intelligence-outsourcing`,c],[`longzai-intelligence-overseas`,c],[`longzai-intelligence-pagination`,c],[`longzai-intelligence-panel`,c],[`longzai-intelligence-paper-reader`,c],[`longzai-intelligence-parametric-industry`,c],[`longzai-intelligence-partner`,c],[`longzai-intelligence-pay`,c],[`longzai-intelligence-payment`,c],[`longzai-intelligence-permission`,c],[`longzai-intelligence-personal-assistant`,c],[`longzai-intelligence-philosophy`,c],[`longzai-intelligence-philosophy-markdown`,c],[`longzai-intelligence-philosophy-ontology`,c],[`longzai-intelligence-pi-knowledge`,c],[`longzai-intelligence-pii`,c],[`longzai-intelligence-pipeline`,c],[`longzai-intelligence-pitfalls`,c],[`longzai-intelligence-plugin-registry`,c],[`longzai-intelligence-pm2`,c],[`longzai-intelligence-policy-research`,c],[`longzai-intelligence-port`,c],[`longzai-intelligence-portal`,c],[`longzai-intelligence-previewer`,c],[`longzai-intelligence-prezi`,c],[`longzai-intelligence-prisma`,c],[`longzai-intelligence-process-monitor`,c],[`longzai-intelligence-product-requirement`,c],[`longzai-intelligence-product-research`,c],[`longzai-intelligence-programming-language`,c],[`longzai-intelligence-project`,c],[`longzai-intelligence-project-data`,c],[`longzai-intelligence-project-markdown`,c],[`longzai-intelligence-project-portfolio`,c],[`longzai-intelligence-project-registry`,c],[`longzai-intelligence-promotion`,c],[`longzai-intelligence-proposals`,c],[`longzai-intelligence-prospect`,c],[`longzai-intelligence-psychoanalyst`,c],[`longzai-intelligence-publication`,c],[`longzai-intelligence-qcloud`,c],[`longzai-intelligence-quant`,c],[`longzai-intelligence-queue`,c],[`longzai-intelligence-quick-notes`,c],[`longzai-intelligence-react-devtools`,c],[`longzai-intelligence-react-native`,c],[`longzai-intelligence-reader`,c],[`longzai-intelligence-reading-distinction`,c],[`longzai-intelligence-reading-shanhaijing`,c],[`longzai-intelligence-readme`,c],[`longzai-intelligence-reasoning`,c],[`longzai-intelligence-records`,c],[`longzai-intelligence-recruitment`,c],[`longzai-intelligence-reflections`,c],[`longzai-intelligence-release`,c],[`longzai-intelligence-release-markdown`,c],[`longzai-intelligence-reliability`,c],[`longzai-intelligence-remote-desktop`,c],[`longzai-intelligence-remote-machine`,c],[`longzai-intelligence-remote-machine-registry`,c],[`longzai-intelligence-remotion`,c],[`longzai-intelligence-report`,c],[`longzai-intelligence-repository`,c],[`longzai-intelligence-repository-handover`,c],[`longzai-intelligence-research-report`,c],[`longzai-intelligence-research-report-data`,c],[`longzai-intelligence-research-report-markdown`,c],[`longzai-intelligence-research-report-registry`,c],[`longzai-intelligence-resilience`,c],[`longzai-intelligence-reverse-engineering`,c],[`longzai-intelligence-review-of-financial-studies-data`,c],[`longzai-intelligence-reviewer`,c],[`longzai-intelligence-risk`,c],[`longzai-intelligence-roadmap`,c],[`longzai-intelligence-roadmap-data`,c],[`longzai-intelligence-roadmap-markdown`,c],[`longzai-intelligence-router`,c],[`longzai-intelligence-rss`,c],[`longzai-intelligence-rss-markdown`,c],[`longzai-intelligence-runtime`,c],[`longzai-intelligence-runtime-registry`,c],[`longzai-intelligence-sales`,c],[`longzai-intelligence-scanner`,c],[`longzai-intelligence-schedule-markdown`,c],[`longzai-intelligence-schedule-registry`,c],[`longzai-intelligence-scheduler`,c],[`longzai-intelligence-schema`,c],[`longzai-intelligence-scope`,c],[`longzai-intelligence-scrape`,c],[`longzai-intelligence-screenshots`,c],[`longzai-intelligence-scripts-registry`,c],[`longzai-intelligence-search`,c],[`longzai-intelligence-security`,c],[`longzai-intelligence-security-bounty-registry`,c],[`longzai-intelligence-security-inventory`,c],[`longzai-intelligence-serverless`,c],[`longzai-intelligence-share`,c],[`longzai-intelligence-sheet`,c],[`longzai-intelligence-short-video`,c],[`longzai-intelligence-skill`,c],[`longzai-intelligence-slider`,c],[`longzai-intelligence-smart-transition`,c],[`longzai-intelligence-sms`,c],[`longzai-intelligence-software-factory`,c],[`longzai-intelligence-soul`,c],[`longzai-intelligence-specs`,c],[`longzai-intelligence-spline`,c],[`longzai-intelligence-sports`,c],[`longzai-intelligence-ssl`,c],[`longzai-intelligence-startup`,c],[`longzai-intelligence-state-machine`,c],[`longzai-intelligence-storage`,c],[`longzai-intelligence-strategy`,c],[`longzai-intelligence-strategy-consulting`,c],[`longzai-intelligence-strategy-consulting-data`,c],[`longzai-intelligence-strategy-consulting-markdown`,c],[`longzai-intelligence-supply-chain`,c],[`longzai-intelligence-support`,c],[`longzai-intelligence-survey`,c],[`longzai-intelligence-system`,c],[`longzai-intelligence-system-data`,c],[`longzai-intelligence-system-markdown`,c],[`longzai-intelligence-system-registry`,c],[`longzai-intelligence-talk`,c],[`longzai-intelligence-taro`,c],[`longzai-intelligence-task`,c],[`longzai-intelligence-task-data`,c],[`longzai-intelligence-task-markdown`,c],[`longzai-intelligence-telemetry`,c],[`longzai-intelligence-templates`,c],[`longzai-intelligence-tenant`,c],[`longzai-intelligence-terminal`,c],[`longzai-intelligence-testing`,c],[`longzai-intelligence-thinking`,c],[`longzai-intelligence-token-exchange`,c],[`longzai-intelligence-token-finance`,c],[`longzai-intelligence-token-handover`,c],[`longzai-intelligence-toolchain`,c],[`longzai-intelligence-topology`,c],[`longzai-intelligence-tracking-bennett-brassard`,c],[`longzai-intelligence-tracking-deng-yu`,c],[`longzai-intelligence-tracking-hong-wang`,c],[`longzai-intelligence-tracking-jacob-tsimerman`,c],[`longzai-intelligence-tracking-john-clarke`,c],[`longzai-intelligence-tracking-john-martinis`,c],[`longzai-intelligence-tracking-john-pardon`,c],[`longzai-intelligence-tracking-michel-devoret`,c],[`longzai-intelligence-tracking-nation`,c],[`longzai-intelligence-tracking-qbitai`,c],[`longzai-intelligence-tracking-terrytao`,c],[`longzai-intelligence-tracking-xiao-lin`,c],[`longzai-intelligence-tracking-yu-bo`,c],[`longzai-intelligence-trader`,c],[`longzai-intelligence-trae`,c],[`longzai-intelligence-training-data`,c],[`longzai-intelligence-translator`,c],[`longzai-intelligence-travel`,c],[`longzai-intelligence-trending`,c],[`longzai-intelligence-tsconfig`,c],[`longzai-intelligence-tsdoc`,c],[`longzai-intelligence-tsgo`,c],[`longzai-intelligence-turbo`,c],[`longzai-intelligence-turing-award-knowledge`,c],[`longzai-intelligence-twitter`,c],[`longzai-intelligence-twitter-data`,c],[`longzai-intelligence-twitter-markdown`,c],[`longzai-intelligence-typeorm`,c],[`longzai-intelligence-usecase`,c],[`longzai-intelligence-user-experience`,c],[`longzai-intelligence-user-research`,c],[`longzai-intelligence-userscript`,c],[`longzai-intelligence-utils`,c],[`longzai-intelligence-value-chain`,c],[`longzai-intelligence-vector-search`,c],[`longzai-intelligence-vendor`,c],[`longzai-intelligence-venture-capital`,c],[`longzai-intelligence-version`,c],[`longzai-intelligence-video-generation`,c],[`longzai-intelligence-video-player`,c],[`longzai-intelligence-vite`,c],[`longzai-intelligence-voice`,c],[`longzai-intelligence-voice-recorder`,c],[`longzai-intelligence-vscode-developer`,c],[`longzai-intelligence-vuln`,c],[`longzai-intelligence-vuln-data`,c],[`longzai-intelligence-vuln-markdown`,c],[`longzai-intelligence-vuln-registry`,c],[`longzai-intelligence-warehouse`,c],[`longzai-intelligence-wealth`,c],[`longzai-intelligence-web3`,c],[`longzai-intelligence-webhook`,c],[`longzai-intelligence-websocket`,c],[`longzai-intelligence-wechat`,c],[`longzai-intelligence-wechat-miniprogram`,c],[`longzai-intelligence-wechat-pay`,c],[`longzai-intelligence-wifi`,c],[`longzai-intelligence-wiki`,c],[`longzai-intelligence-word`,c],[`longzai-intelligence-work`,c],[`longzai-intelligence-worker`,c],[`longzai-intelligence-workflow`,c],[`longzai-intelligence-workflow-data`,c],[`longzai-intelligence-workflow-markdown`,c],[`longzai-intelligence-workflow-registry`,c],[`longzai-intelligence-workspace`,c],[`longzai-intelligence-writer`,c],[`longzai-intelligence-xiaohongshu`,c],[`longzai-intelligence-xiaohongshu-data`,c],[`longzai-intelligence-xiaohongshu-markdown`,c],[`longzai-intelligence-youtube`,c],[`longzai-intelligence-youtube-data`,c],[`longzai-intelligence-youtube-markdown`,c],[`longzai-intelligence-zcode`,c],[`longzai-intelligence-zcode-cleaner`,c],[`longzai-intelligence-zcode-commit`,c],[`longzai-intelligence-zcode-knowledge`,c],[`longzai-intelligence-zcode-remote`,c],[`longzai-intelligence-zcode-security`,c],[`longzai-intelligence-zed-delta-knowledge`,c],[`longzai-intelligence-zhihu`,c],[`longzai-intelligence-zhihu-data`,c],[`longzai-intelligence-zhihu-markdown`,c]]),u=`LZI_GLOBALS_ROOT`,d=`lzi-bun-install.config.ts`;function f(e){return e}const p=/^[a-zA-Z0-9][a-zA-Z0-9._-]*$/;var m=class extends Error{details;constructor(e,t=`install.extraScopes`){super(`${t} 校验失败:\n${e.map(e=>`- ${e}`).join(`
|
|
2
|
-
`)}`),this.name=`InstallScopesError`,this.details=e}};function h(e){if(typeof e!=`string`)return!1;try{let t=new URL(e);return t.protocol===`http:`||t.protocol===`https:`}catch{return!1}}function g(e,t,n,r){let i=e instanceof Map?Object.fromEntries(e):{...e},a=[],o={};for(let[n,i]of Object.entries(t??{})){let t=n.replace(/^@+/,``);t.length===0||!p.test(t)?a.push(`\`${n}\` 不是合法 scope 名(仅允许字母/数字开头,后接字母/数字与 . _ -,@ 前缀可省略)`):h(i)?o[t]!==void 0&&o[t]!==i?a.push(`\`${t}\` 在 extraScopes 内重复声明且安装源不一致`):(e instanceof Map?e.has(t):Object.hasOwn(e,t))?a.push(`\`${t}\` 与预定义 scope 冲突(预定义不可覆盖,如需调整请在 ${r} 维护)`):o[t]=i:a.push(`\`${n}\` 的安装源 \`${String(i)}\` 不是合法的 http/https URL`)}let s=/* @__PURE__ */ new Set;for(let e of n??[]){let t=e.replace(/^@+/,``);t.length===0||!p.test(t)?a.push(`\`${e}\` 不是合法 scope 名(仅允许字母/数字开头,后接字母/数字与 . _ -,@ 前缀可省略)`):o[t]===void 0?s.add(t):a.push(`\`${t}\` 同时出现在 extraScopes 与 privateScopes(追加公网安装源与私有轨声明矛盾)`)}if(a.length>0)throw new m(a);for(let[e,t]of Object.entries(o))i[e]=t;for(let e of s)delete i[e];return i}function _(e){return g(l,e,void 0,`LZI_SCOPES 包内真源`)}function v(e,t,n,r){let i=g(e,t,n,`globals 仓 lzi-bun-install.config.ts`),a=r?.replace(/^@+/,``),o=new Set((n??[]).map(e=>e.replace(/^@+/,``)));return a!==void 0&&p.test(a)&&!Object.hasOwn(i,a)&&!o.has(a)&&(i[a]=c),i}function y(e){let t=[];if(typeof e!=`object`||!e)throw new m([`default export 必须是对象({ scopes: { ... } })`],`globals 预设 lzi-bun-install.config.ts`);let n=typeof e==`object`&&e&&`scopes`in e?e.scopes:void 0;if(typeof n!=`object`||!n||Array.isArray(n))throw new m([`scopes 必须是 scope → registry 的对象映射`],`globals 预设 lzi-bun-install.config.ts`);let r={};for(let[e,i]of Object.entries(n))p.test(e)?typeof i!=`string`||!h(i)?t.push(`\`${e}\` 的安装源 \`${String(i)}\` 不是合法的 http/https URL`):r[e]=i:t.push(`\`${e}\` 不是合法 scope 名(仅允许字母/数字开头,后接字母/数字与 . _ -,不含 @ 前缀)`);if(t.length>0)throw new m(t,`globals 预设 lzi-bun-install.config.ts`);if(Object.keys(r).length===0)throw new m([`scopes 清单为空(真源不允许空清单)`],`globals 预设 lzi-bun-install.config.ts`);return r}const b=[`**/infrastructure/entities/**`,`**/infrastructure/repositories/**`,`**/infrastructure/mappers/**`,`**/infrastructure/schemas/**`,`**/infrastructure/adapters/**`,`**/typeorm.ts`,`**/application/tokens.ts`,`**/application/index.ts`,`**/domain/index.ts`,`**/domain/entities/index.ts`,`**/domain/repositories/**`,`**/domain/types/**`,`**/domain/schemas/**`,`**/domain/events/**`,`**/domain/errors/**`,`src/index.ts`],x=[`**/infrastructure/**`,`**/typeorm.ts`,`**/application/tokens.ts`,`**/application/index.ts`,`**/application/port-adapters/**`,`**/application/mappers/**`,`**/application/dtos/**`,`**/domain/index.ts`,`**/domain/entities/index.ts`,`**/domain/repositories/**`,`**/domain/types/**`,`**/domain/events/**`,`**/domain/errors/**`,`src/index.ts`],S=[`**/*.module.ts`,`**/index.ts`,`src/index.ts`],C=[`**/*.module.ts`,`**/*.dto.ts`,`**/*.controller.ts`,`**/*.handler.ts`,`**/*.guard.ts`,`**/*.interceptor.ts`,`**/*.filter.ts`,`**/*.strategy.ts`,`**/*.scheduler.ts`,`**/*.provider.ts`,`**/*.gateway.ts`,`**/*.decorator.ts`,`**/infrastructure/**`,`**/migrations/**`,`**/index.ts`,`src/index.ts`],w=[`**/index.ts`,`src/index.ts`],T=[`src/app/**`,`src/components/**`,`src/features/**/components/**`,`src/hooks/**`,`src/providers/**`,`src/i18n/**`,`src/types/**`,`**/*.css`,`**/*.d.ts`,`**/index.ts`,`src/index.ts`],E={lines:.9,functions:.9,statements:.9},D={lines:.8,functions:.8,statements:.8},O={lines:.85,functions:.85,statements:.85},k={lines:.7,functions:.7,statements:.7},A={lines:.6,functions:.6,statements:.6},j={lines:.6,functions:.6,statements:.6},M={lines:.7,functions:.7,statements:.7},N={lines:.7,functions:.7,statements:.7},P={lines:.7,functions:.7,statements:.7},F={lines:.7,functions:.7,statements:.7},I={lines:.7,functions:.7,statements:.7},L={lines:.7,functions:.7,statements:.7},R={lines:.6,functions:.6,statements:.6},z={lines:.6,functions:.6,statements:.6},B={lines:.6,functions:.6,statements:.6},V={lines:0,functions:0,statements:0};function H(e){if(e!==void 0)return typeof e==`number`?{lines:e,functions:e,statements:e}:{...e}}function U(t,n,r){let i=n??[],a=r===void 0?[]:Array.isArray(r)?r:[r];return[...e,...t,...i,...a]}function W(e){let{enableCoverage:n=!0,coverageThresholds:i,extraCoverageIgnorePatterns:a,test:o}=e,s=o?.include??r,c={passWithNoTests:o?.passWithNoTests??!0,include:s,...o};if(!n)return c;let l=H(i),u=H(o?.coverageThreshold),d={...l,...u},f=d.lines!==void 0||d.functions!==void 0||d.statements!==void 0,p=U([],a,o?.coveragePathIgnorePatterns);return c.coverage=!0,c.coverageSkipTestFiles=o?.coverageSkipTestFiles??!0,c.coverageReporter=o?.coverageReporter??t,c.coverageDir=o?.coverageDir??`coverage`,c.coveragePathIgnorePatterns=p,f&&(c.coverageThreshold=d),o?.coverageIgnoreSourcemaps!==void 0&&(c.coverageIgnoreSourcemaps=o.coverageIgnoreSourcemaps),c}function G(e={}){return{test:W(e)}}export{P as API_COVERAGE_THRESHOLDS,F as CAPABILITY_COVERAGE_THRESHOLDS,M as CLI_COVERAGE_THRESHOLDS,S as CLI_MINIMAL_EXEMPTION_PATTERNS,S as SERVER_MINIMAL_EXEMPTION_PATTERNS,C as CLI_MODERATE_EXEMPTION_PATTERNS,C as SERVER_MODERATE_EXEMPTION_PATTERNS,i as CONVENTION_TEST_BOOTSTRAP_PATH,a as CONVENTION_TEST_BOOTSTRAP_PRELOAD,n as DEFAULT_COVERAGE_DIR,e as DEFAULT_COVERAGE_IGNORE_PATTERNS,t as DEFAULT_COVERAGE_REPORTERS,r as DEFAULT_INCLUDE_PATTERNS,s as DEFAULT_REGISTRY,j as DESKTOP_COVERAGE_THRESHOLDS,L as DESKTOP_HOST_COVERAGE_THRESHOLDS,w as DESKTOP_MINIMAL_EXEMPTION_PATTERNS,w as WEB_MINIMAL_EXEMPTION_PATTERNS,T as DESKTOP_MODERATE_EXEMPTION_PATTERNS,T as WEB_MODERATE_EXEMPTION_PATTERNS,E as DOMAIN_COVERAGE_THRESHOLDS,b as DOMAIN_MINIMAL_EXEMPTION_PATTERNS,x as DOMAIN_MODERATE_EXEMPTION_PATTERNS,u as GLOBALS_ENV_KEY,D as IMPLEMENTATION_COVERAGE_THRESHOLDS,N as INFRASTRUCTURE_COVERAGE_THRESHOLDS,m as InstallScopesError,d as LZI_BUN_INSTALL_CONFIG_FILE,l as LZI_SCOPES,I as MCP_COVERAGE_THRESHOLDS,B as MINIPROGRAM_COVERAGE_THRESHOLDS,z as MOBILE_COVERAGE_THRESHOLDS,c as NPMJS_REGISTRY,O as PACKAGE_COVERAGE_THRESHOLDS,k as SERVER_COVERAGE_THRESHOLDS,V as TYPE_ONLY_COVERAGE_THRESHOLDS,R as UI_COVERAGE_THRESHOLDS,A as WEB_COVERAGE_THRESHOLDS,G as createBaseBunConfig,f as defineInstallScopesPreset,o as mergeConventionTestPreload,_ as mergeInstallScopes,v as mergeInstallScopesWithPreset,y as validateInstallScopesPreset};
|
|
1
|
+
const e=[`**/node_modules/**`,`**/dist/**`,`**/out/**`],t=[`text`,`lcov`],n=`coverage`,r=[`src/**/*.test.ts`,`src/**/*.test.tsx`,`__tests__/**/*.test.ts`],i=`src/__tests__/helpers/bootstrap.ts`,a=`./${i}`;function o(e,t=a){let n=[t,...(e?.test?.preload??[]).filter(e=>e!==t)];return{...e,test:{...e?.test,preload:n}}}const s=[`maximum resident set size`,`peak memory footprint`];function c(e){for(let t of e.split(`
|
|
2
|
+
`)){let e=t.trim();for(let t of s){let n;if(e.startsWith(t)){let t=e.slice(e.indexOf(`:`)+1).trim();n=Number.parseInt(t,10)}else if(e.endsWith(t))n=Number.parseInt(e,10);else continue;if(Number.isInteger(n)&&n>=0)return n}}}function l(e,t){let n=e=>`${Math.round(e/1048576)} MB`;return[`内存峰值 ${n(e)},预算 ${n(t)}`,`超预算即测试用例形态违例,请合并整页挂载用例的只读断言并把断言下放组件级,预算可经环境变量 LZI_TEST_MEMORY_BUDGET_BYTES 临时覆盖`]}const u=`https://mirrors.cloud.tencent.com/npm/`,d=`https://registry.npmjs.org/`,f=/* @__PURE__ */ new Map([[`longzai-intelligence`,d],[`longzai-intelligence-agent-tools`,d],[`longzai-intelligence-audit`,d],[`longzai-intelligence-auth`,d],[`longzai-intelligence-builder`,d],[`longzai-intelligence-bun`,d],[`longzai-intelligence-cache`,d],[`longzai-intelligence-cli`,d],[`longzai-intelligence-config`,d],[`longzai-intelligence-dependencies`,d],[`longzai-intelligence-design-system`,d],[`longzai-intelligence-dev-tools`,d],[`longzai-intelligence-electron`,d],[`longzai-intelligence-error`,d],[`longzai-intelligence-event-bus`,d],[`longzai-intelligence-lint`,d],[`longzai-intelligence-logger`,d],[`longzai-intelligence-okr`,d],[`longzai-intelligence-oxfmt`,d],[`longzai-intelligence-oxlint`,d],[`longzai-intelligence-plugin`,d],[`longzai-intelligence-shared-config`,d],[`longzai-intelligence-shared-kernel`,d],[`longzai-intelligence-scripts`,d],[`longzai-intelligence-standards`,d],[`longzai-intelligence-transport`,d],[`longzai-intelligence-typescript`,d],[`longzai-intelligence-vscode`,d],[`longzai-intelligence-zod`,d],[`longzai-intelligence-prettier`,d],[`longzai-intelligence-tsdown`,d],[`longzai-intelligence-vitest`,d],[`longzai-intelligence-academy`,d],[`longzai-intelligence-accounting`,d],[`longzai-intelligence-activity`,d],[`longzai-intelligence-administration`,d],[`longzai-intelligence-agent`,d],[`longzai-intelligence-agent-broadcast`,d],[`longzai-intelligence-agent-collaboration`,d],[`longzai-intelligence-agent-endless`,d],[`longzai-intelligence-agent-migrator`,d],[`longzai-intelligence-agent-monitor`,d],[`longzai-intelligence-agent-prompts`,d],[`longzai-intelligence-agent-relation`,d],[`longzai-intelligence-agent-session`,d],[`longzai-intelligence-agent-swarm`,d],[`longzai-intelligence-agent-tasks`,d],[`longzai-intelligence-agent-tasks-data`,d],[`longzai-intelligence-agent-ui`,d],[`longzai-intelligence-analytics`,d],[`longzai-intelligence-api`,d],[`longzai-intelligence-app-gallery`,d],[`longzai-intelligence-app-store`,d],[`longzai-intelligence-architecture`,d],[`longzai-intelligence-architecture-expert`,d],[`longzai-intelligence-arkts`,d],[`longzai-intelligence-art`,d],[`longzai-intelligence-artifact`,d],[`longzai-intelligence-artifact-registry`,d],[`longzai-intelligence-arxiv`,d],[`longzai-intelligence-arxiv-data`,d],[`longzai-intelligence-arxiv-markdown`,d],[`longzai-intelligence-atomic`,d],[`longzai-intelligence-attention`,d],[`longzai-intelligence-audio`,d],[`longzai-intelligence-audio-assistant`,d],[`longzai-intelligence-augmented-reality`,d],[`longzai-intelligence-auto-research`,d],[`longzai-intelligence-automate`,d],[`longzai-intelligence-benchmark`,d],[`longzai-intelligence-bilibili`,d],[`longzai-intelligence-bilibili-data`,d],[`longzai-intelligence-bilibili-markdown`,d],[`longzai-intelligence-billing`,d],[`longzai-intelligence-blackboard`,d],[`longzai-intelligence-blackboard-data`,d],[`longzai-intelligence-blackboard-markdown`,d],[`longzai-intelligence-bluetooth`,d],[`longzai-intelligence-board`,d],[`longzai-intelligence-bootstrap`,d],[`longzai-intelligence-bootstrap-registry`,d],[`longzai-intelligence-bounty-registry`,d],[`longzai-intelligence-brawl-stars`,d],[`longzai-intelligence-broker`,d],[`longzai-intelligence-bt`,d],[`longzai-intelligence-business-plan`,d],[`longzai-intelligence-calendar`,d],[`longzai-intelligence-camera`,d],[`longzai-intelligence-canvas`,d],[`longzai-intelligence-capture`,d],[`longzai-intelligence-change-maker`,d],[`longzai-intelligence-changelog`,d],[`longzai-intelligence-changeset`,d],[`longzai-intelligence-chat`,d],[`longzai-intelligence-chess`,d],[`longzai-intelligence-circuit`,d],[`longzai-intelligence-claude-code`,d],[`longzai-intelligence-claude-knowledge`,d],[`longzai-intelligence-clipboard-share`,d],[`longzai-intelligence-closed-loop`,d],[`longzai-intelligence-closed-loop-data`,d],[`longzai-intelligence-closed-loop-markdown`,d],[`longzai-intelligence-cloud`,d],[`longzai-intelligence-code`,d],[`longzai-intelligence-code-agent`,d],[`longzai-intelligence-code-reviewer`,d],[`longzai-intelligence-codebase-research`,d],[`longzai-intelligence-coding-expert`,d],[`longzai-intelligence-collaboration`,d],[`longzai-intelligence-collective`,d],[`longzai-intelligence-commerce`,d],[`longzai-intelligence-commit`,d],[`longzai-intelligence-competition-registry`,d],[`longzai-intelligence-composer`,d],[`longzai-intelligence-concrete`,d],[`longzai-intelligence-concrete-industry`,d],[`longzai-intelligence-config-registry`,d],[`longzai-intelligence-context`,d],[`longzai-intelligence-contract`,d],[`longzai-intelligence-contract-parity`,d],[`longzai-intelligence-cookery`,d],[`longzai-intelligence-country`,d],[`longzai-intelligence-creativity`,d],[`longzai-intelligence-cross-platform`,d],[`longzai-intelligence-crossref`,d],[`longzai-intelligence-crossref-markdown`,d],[`longzai-intelligence-crypto`,d],[`longzai-intelligence-customer-service`,d],[`longzai-intelligence-cut`,d],[`longzai-intelligence-dag`,d],[`longzai-intelligence-dashboard`,d],[`longzai-intelligence-data`,d],[`longzai-intelligence-data-science`,d],[`longzai-intelligence-database`,d],[`longzai-intelligence-decenterlization`,d],[`longzai-intelligence-decision`,d],[`longzai-intelligence-deepseek`,d],[`longzai-intelligence-deepseek-harness`,d],[`longzai-intelligence-deepseek-harness-knowledge`,d],[`longzai-intelligence-delta`,d],[`longzai-intelligence-deploy`,d],[`longzai-intelligence-design`,d],[`longzai-intelligence-design-lab`,d],[`longzai-intelligence-design-registry`,d],[`longzai-intelligence-design-trending`,d],[`longzai-intelligence-device`,d],[`longzai-intelligence-dimensions`,d],[`longzai-intelligence-discipline`,d],[`longzai-intelligence-discovery`,d],[`longzai-intelligence-disk-space`,d],[`longzai-intelligence-disk-space-data`,d],[`longzai-intelligence-disk-space-markdown`,d],[`longzai-intelligence-distill`,d],[`longzai-intelligence-docs`,d],[`longzai-intelligence-docs-registry`,d],[`longzai-intelligence-document`,d],[`longzai-intelligence-douyin`,d],[`longzai-intelligence-douyin-data`,d],[`longzai-intelligence-douyin-markdown`,d],[`longzai-intelligence-drone`,d],[`longzai-intelligence-edge`,d],[`longzai-intelligence-electrobun`,d],[`longzai-intelligence-elysia`,d],[`longzai-intelligence-embodied`,d],[`longzai-intelligence-empowerment`,d],[`longzai-intelligence-engineering`,d],[`longzai-intelligence-env`,d],[`longzai-intelligence-env-registry`,d],[`longzai-intelligence-equilibrium`,d],[`longzai-intelligence-eslint`,d],[`longzai-intelligence-event`,d],[`longzai-intelligence-event-tracking`,d],[`longzai-intelligence-evolution`,d],[`longzai-intelligence-excel`,d],[`longzai-intelligence-exchange-rate`,d],[`longzai-intelligence-execution`,d],[`longzai-intelligence-experience`,d],[`longzai-intelligence-expert`,d],[`longzai-intelligence-expert-thinking`,d],[`longzai-intelligence-fde`,d],[`longzai-intelligence-feature-flags`,d],[`longzai-intelligence-features`,d],[`longzai-intelligence-federation`,d],[`longzai-intelligence-feed`,d],[`longzai-intelligence-feishu`,d],[`longzai-intelligence-fields-medal-knowledge`,d],[`longzai-intelligence-file-processing`,d],[`longzai-intelligence-findings`,d],[`longzai-intelligence-fitness`,d],[`longzai-intelligence-font`,d],[`longzai-intelligence-game`,d],[`longzai-intelligence-game-studio`,d],[`longzai-intelligence-gantt`,d],[`longzai-intelligence-gateway`,d],[`longzai-intelligence-geo`,d],[`longzai-intelligence-gesture`,d],[`longzai-intelligence-git`,d],[`longzai-intelligence-git-commit`,d],[`longzai-intelligence-git-insight`,d],[`longzai-intelligence-git-reviewer`,d],[`longzai-intelligence-git-swarm`,d],[`longzai-intelligence-git-swarm-registry`,d],[`longzai-intelligence-gitcode`,d],[`longzai-intelligence-github-data`,d],[`longzai-intelligence-github-markdown`,d],[`longzai-intelligence-github-trending`,d],[`longzai-intelligence-github-trending-data`,d],[`longzai-intelligence-github-trending-markdown`,d],[`longzai-intelligence-globals`,d],[`longzai-intelligence-growth`,d],[`longzai-intelligence-growth-registry`,d],[`longzai-intelligence-handover`,d],[`longzai-intelligence-hardware`,d],[`longzai-intelligence-harness`,d],[`longzai-intelligence-healthcare`,d],[`longzai-intelligence-history`,d],[`longzai-intelligence-horizon`,d],[`longzai-intelligence-human-resource`,d],[`longzai-intelligence-i18n`,d],[`longzai-intelligence-idea`,d],[`longzai-intelligence-identity`,d],[`longzai-intelligence-ime`,d],[`longzai-intelligence-impact-maker`,d],[`longzai-intelligence-inbox`,d],[`longzai-intelligence-inbox-registry`,d],[`longzai-intelligence-input-data`,d],[`longzai-intelligence-input-markdown`,d],[`longzai-intelligence-insight`,d],[`longzai-intelligence-intellectual-property`,d],[`longzai-intelligence-intent`,d],[`longzai-intelligence-intentionomics`,d],[`longzai-intelligence-interview`,d],[`longzai-intelligence-issues`,d],[`longzai-intelligence-jev`,d],[`longzai-intelligence-jev-knowledge`,d],[`longzai-intelligence-jev-system`,d],[`longzai-intelligence-journal-of-finance-data`,d],[`longzai-intelligence-journal-of-financial-and-quantitative-analysis-data`,d],[`longzai-intelligence-journal-of-financial-economics-data`,d],[`longzai-intelligence-journals`,d],[`longzai-intelligence-journals-2026-10`,d],[`longzai-intelligence-journals-markdown`,d],[`longzai-intelligence-journals-registry`,d],[`longzai-intelligence-key-management`,d],[`longzai-intelligence-knowledge`,d],[`longzai-intelligence-knowledge-graph`,d],[`longzai-intelligence-knowledge-markdown`,d],[`longzai-intelligence-kol`,d],[`longzai-intelligence-kol-data`,d],[`longzai-intelligence-kol-markdown`,d],[`longzai-intelligence-kol-registry`,d],[`longzai-intelligence-language-model`,d],[`longzai-intelligence-law`,d],[`longzai-intelligence-law-data`,d],[`longzai-intelligence-law-markdown`,d],[`longzai-intelligence-lean`,d],[`longzai-intelligence-ledger`,d],[`longzai-intelligence-legal`,d],[`longzai-intelligence-liquid-glass`,d],[`longzai-intelligence-living-previewer`,d],[`longzai-intelligence-loop`,d],[`longzai-intelligence-machine-learning`,d],[`longzai-intelligence-mail`,d],[`longzai-intelligence-mandala`,d],[`longzai-intelligence-map`,d],[`longzai-intelligence-markdown`,d],[`longzai-intelligence-marketing`,d],[`longzai-intelligence-marketplace`,d],[`longzai-intelligence-math`,d],[`longzai-intelligence-mcn`,d],[`longzai-intelligence-mcp`,d],[`longzai-intelligence-mechanisms`,d],[`longzai-intelligence-mechanisms-registry`,d],[`longzai-intelligence-media`,d],[`longzai-intelligence-meditation`,d],[`longzai-intelligence-meeting-notes`,d],[`longzai-intelligence-memory`,d],[`longzai-intelligence-mentor`,d],[`longzai-intelligence-messaging`,d],[`longzai-intelligence-mindset`,d],[`longzai-intelligence-minimax-knowldege`,d],[`longzai-intelligence-mission-control`,d],[`longzai-intelligence-model-fusion`,d],[`longzai-intelligence-model-gateway`,d],[`longzai-intelligence-moment`,d],[`longzai-intelligence-montage`,d],[`longzai-intelligence-movie`,d],[`longzai-intelligence-music-video`,d],[`longzai-intelligence-music-video-data`,d],[`longzai-intelligence-narrative-analyzer`,d],[`longzai-intelligence-nation`,d],[`longzai-intelligence-nginx`,d],[`longzai-intelligence-nginx-cli`,d],[`longzai-intelligence-nobel-prize-knowledge`,d],[`longzai-intelligence-notification`,d],[`longzai-intelligence-npm`,d],[`longzai-intelligence-npm-registry`,d],[`longzai-intelligence-npm-registry-data`,d],[`longzai-intelligence-observability`,d],[`longzai-intelligence-office-industry`,d],[`longzai-intelligence-okr-data`,d],[`longzai-intelligence-okr-markdown`,d],[`longzai-intelligence-older`,d],[`longzai-intelligence-one`,d],[`longzai-intelligence-one-digest`,d],[`longzai-intelligence-one-digest-data`,d],[`longzai-intelligence-one-digest-markdown`,d],[`longzai-intelligence-one-digest-registry`,d],[`longzai-intelligence-one-trae-works`,d],[`longzai-intelligence-ontology`,d],[`longzai-intelligence-open-pencil`,d],[`longzai-intelligence-open-router`,d],[`longzai-intelligence-open-router-data`,d],[`longzai-intelligence-open-router-markdown`,d],[`longzai-intelligence-opencode`,d],[`longzai-intelligence-opencode-knowledge`,d],[`longzai-intelligence-opportunity`,d],[`longzai-intelligence-orchestry`,d],[`longzai-intelligence-organization`,d],[`longzai-intelligence-orm`,d],[`longzai-intelligence-outfit`,d],[`longzai-intelligence-outsourcing`,d],[`longzai-intelligence-overseas`,d],[`longzai-intelligence-pagination`,d],[`longzai-intelligence-panel`,d],[`longzai-intelligence-paper-reader`,d],[`longzai-intelligence-parametric-industry`,d],[`longzai-intelligence-partner`,d],[`longzai-intelligence-pay`,d],[`longzai-intelligence-payment`,d],[`longzai-intelligence-permission`,d],[`longzai-intelligence-personal-assistant`,d],[`longzai-intelligence-philosophy`,d],[`longzai-intelligence-philosophy-markdown`,d],[`longzai-intelligence-philosophy-ontology`,d],[`longzai-intelligence-pi-knowledge`,d],[`longzai-intelligence-pii`,d],[`longzai-intelligence-pipeline`,d],[`longzai-intelligence-pitfalls`,d],[`longzai-intelligence-plugin-registry`,d],[`longzai-intelligence-pm2`,d],[`longzai-intelligence-policy-research`,d],[`longzai-intelligence-port`,d],[`longzai-intelligence-portal`,d],[`longzai-intelligence-previewer`,d],[`longzai-intelligence-prezi`,d],[`longzai-intelligence-prisma`,d],[`longzai-intelligence-process-monitor`,d],[`longzai-intelligence-product-requirement`,d],[`longzai-intelligence-product-research`,d],[`longzai-intelligence-programming-language`,d],[`longzai-intelligence-project`,d],[`longzai-intelligence-project-data`,d],[`longzai-intelligence-project-markdown`,d],[`longzai-intelligence-project-portfolio`,d],[`longzai-intelligence-project-registry`,d],[`longzai-intelligence-promotion`,d],[`longzai-intelligence-proposals`,d],[`longzai-intelligence-prospect`,d],[`longzai-intelligence-psychoanalyst`,d],[`longzai-intelligence-publication`,d],[`longzai-intelligence-qcloud`,d],[`longzai-intelligence-quant`,d],[`longzai-intelligence-queue`,d],[`longzai-intelligence-quick-notes`,d],[`longzai-intelligence-react-devtools`,d],[`longzai-intelligence-react-native`,d],[`longzai-intelligence-reader`,d],[`longzai-intelligence-reading-distinction`,d],[`longzai-intelligence-reading-shanhaijing`,d],[`longzai-intelligence-readme`,d],[`longzai-intelligence-reasoning`,d],[`longzai-intelligence-records`,d],[`longzai-intelligence-recruitment`,d],[`longzai-intelligence-reflections`,d],[`longzai-intelligence-release`,d],[`longzai-intelligence-release-markdown`,d],[`longzai-intelligence-reliability`,d],[`longzai-intelligence-remote-desktop`,d],[`longzai-intelligence-remote-machine`,d],[`longzai-intelligence-remote-machine-registry`,d],[`longzai-intelligence-remotion`,d],[`longzai-intelligence-report`,d],[`longzai-intelligence-repository`,d],[`longzai-intelligence-repository-handover`,d],[`longzai-intelligence-research-report`,d],[`longzai-intelligence-research-report-data`,d],[`longzai-intelligence-research-report-markdown`,d],[`longzai-intelligence-research-report-registry`,d],[`longzai-intelligence-resilience`,d],[`longzai-intelligence-reverse-engineering`,d],[`longzai-intelligence-review-of-financial-studies-data`,d],[`longzai-intelligence-reviewer`,d],[`longzai-intelligence-risk`,d],[`longzai-intelligence-roadmap`,d],[`longzai-intelligence-roadmap-data`,d],[`longzai-intelligence-roadmap-markdown`,d],[`longzai-intelligence-router`,d],[`longzai-intelligence-rss`,d],[`longzai-intelligence-rss-markdown`,d],[`longzai-intelligence-runtime`,d],[`longzai-intelligence-runtime-registry`,d],[`longzai-intelligence-sales`,d],[`longzai-intelligence-scanner`,d],[`longzai-intelligence-schedule-markdown`,d],[`longzai-intelligence-schedule-registry`,d],[`longzai-intelligence-scheduler`,d],[`longzai-intelligence-schema`,d],[`longzai-intelligence-scope`,d],[`longzai-intelligence-scrape`,d],[`longzai-intelligence-screenshots`,d],[`longzai-intelligence-scripts-registry`,d],[`longzai-intelligence-search`,d],[`longzai-intelligence-security`,d],[`longzai-intelligence-security-bounty-registry`,d],[`longzai-intelligence-security-inventory`,d],[`longzai-intelligence-serverless`,d],[`longzai-intelligence-share`,d],[`longzai-intelligence-sheet`,d],[`longzai-intelligence-short-video`,d],[`longzai-intelligence-skill`,d],[`longzai-intelligence-slider`,d],[`longzai-intelligence-smart-transition`,d],[`longzai-intelligence-sms`,d],[`longzai-intelligence-software-factory`,d],[`longzai-intelligence-soul`,d],[`longzai-intelligence-specs`,d],[`longzai-intelligence-spline`,d],[`longzai-intelligence-sports`,d],[`longzai-intelligence-ssl`,d],[`longzai-intelligence-startup`,d],[`longzai-intelligence-state-machine`,d],[`longzai-intelligence-storage`,d],[`longzai-intelligence-strategy`,d],[`longzai-intelligence-strategy-consulting`,d],[`longzai-intelligence-strategy-consulting-data`,d],[`longzai-intelligence-strategy-consulting-markdown`,d],[`longzai-intelligence-supply-chain`,d],[`longzai-intelligence-support`,d],[`longzai-intelligence-survey`,d],[`longzai-intelligence-system`,d],[`longzai-intelligence-system-data`,d],[`longzai-intelligence-system-markdown`,d],[`longzai-intelligence-system-registry`,d],[`longzai-intelligence-talk`,d],[`longzai-intelligence-taro`,d],[`longzai-intelligence-task`,d],[`longzai-intelligence-task-data`,d],[`longzai-intelligence-task-markdown`,d],[`longzai-intelligence-telemetry`,d],[`longzai-intelligence-templates`,d],[`longzai-intelligence-tenant`,d],[`longzai-intelligence-terminal`,d],[`longzai-intelligence-testing`,d],[`longzai-intelligence-thinking`,d],[`longzai-intelligence-token-exchange`,d],[`longzai-intelligence-token-finance`,d],[`longzai-intelligence-token-handover`,d],[`longzai-intelligence-toolchain`,d],[`longzai-intelligence-topology`,d],[`longzai-intelligence-tracking-bennett-brassard`,d],[`longzai-intelligence-tracking-deng-yu`,d],[`longzai-intelligence-tracking-hong-wang`,d],[`longzai-intelligence-tracking-jacob-tsimerman`,d],[`longzai-intelligence-tracking-john-clarke`,d],[`longzai-intelligence-tracking-john-martinis`,d],[`longzai-intelligence-tracking-john-pardon`,d],[`longzai-intelligence-tracking-michel-devoret`,d],[`longzai-intelligence-tracking-nation`,d],[`longzai-intelligence-tracking-qbitai`,d],[`longzai-intelligence-tracking-terrytao`,d],[`longzai-intelligence-tracking-xiao-lin`,d],[`longzai-intelligence-tracking-yu-bo`,d],[`longzai-intelligence-trader`,d],[`longzai-intelligence-trae`,d],[`longzai-intelligence-training-data`,d],[`longzai-intelligence-translator`,d],[`longzai-intelligence-travel`,d],[`longzai-intelligence-trending`,d],[`longzai-intelligence-tsconfig`,d],[`longzai-intelligence-tsdoc`,d],[`longzai-intelligence-tsgo`,d],[`longzai-intelligence-turbo`,d],[`longzai-intelligence-turing-award-knowledge`,d],[`longzai-intelligence-twitter`,d],[`longzai-intelligence-twitter-data`,d],[`longzai-intelligence-twitter-markdown`,d],[`longzai-intelligence-typeorm`,d],[`longzai-intelligence-usecase`,d],[`longzai-intelligence-user-experience`,d],[`longzai-intelligence-user-research`,d],[`longzai-intelligence-userscript`,d],[`longzai-intelligence-utils`,d],[`longzai-intelligence-value-chain`,d],[`longzai-intelligence-vector-search`,d],[`longzai-intelligence-vendor`,d],[`longzai-intelligence-venture-capital`,d],[`longzai-intelligence-version`,d],[`longzai-intelligence-video-generation`,d],[`longzai-intelligence-video-player`,d],[`longzai-intelligence-vite`,d],[`longzai-intelligence-voice`,d],[`longzai-intelligence-voice-recorder`,d],[`longzai-intelligence-vscode-developer`,d],[`longzai-intelligence-vuln`,d],[`longzai-intelligence-vuln-data`,d],[`longzai-intelligence-vuln-markdown`,d],[`longzai-intelligence-vuln-registry`,d],[`longzai-intelligence-warehouse`,d],[`longzai-intelligence-wealth`,d],[`longzai-intelligence-web3`,d],[`longzai-intelligence-webhook`,d],[`longzai-intelligence-websocket`,d],[`longzai-intelligence-wechat`,d],[`longzai-intelligence-wechat-miniprogram`,d],[`longzai-intelligence-wechat-pay`,d],[`longzai-intelligence-wifi`,d],[`longzai-intelligence-wiki`,d],[`longzai-intelligence-word`,d],[`longzai-intelligence-work`,d],[`longzai-intelligence-worker`,d],[`longzai-intelligence-workflow`,d],[`longzai-intelligence-workflow-data`,d],[`longzai-intelligence-workflow-markdown`,d],[`longzai-intelligence-workflow-registry`,d],[`longzai-intelligence-workspace`,d],[`longzai-intelligence-writer`,d],[`longzai-intelligence-xiaohongshu`,d],[`longzai-intelligence-xiaohongshu-data`,d],[`longzai-intelligence-xiaohongshu-markdown`,d],[`longzai-intelligence-youtube`,d],[`longzai-intelligence-youtube-data`,d],[`longzai-intelligence-youtube-markdown`,d],[`longzai-intelligence-zcode`,d],[`longzai-intelligence-zcode-cleaner`,d],[`longzai-intelligence-zcode-commit`,d],[`longzai-intelligence-zcode-knowledge`,d],[`longzai-intelligence-zcode-remote`,d],[`longzai-intelligence-zcode-security`,d],[`longzai-intelligence-zed-delta-knowledge`,d],[`longzai-intelligence-zhihu`,d],[`longzai-intelligence-zhihu-data`,d],[`longzai-intelligence-zhihu-markdown`,d]]),p=`LZI_GLOBALS_ROOT`,m=`lzi-bun-install.config.ts`;function h(e){return e}const g=/^[a-zA-Z0-9][a-zA-Z0-9._-]*$/;var _=class extends Error{details;constructor(e,t=`install.extraScopes`){super(`${t} 校验失败:\n${e.map(e=>`- ${e}`).join(`
|
|
3
|
+
`)}`),this.name=`InstallScopesError`,this.details=e}};function v(e){if(typeof e!=`string`)return!1;try{let t=new URL(e);return t.protocol===`http:`||t.protocol===`https:`}catch{return!1}}function y(e,t,n,r){let i=e instanceof Map?Object.fromEntries(e):{...e},a=[],o={};for(let[n,i]of Object.entries(t??{})){let t=n.replace(/^@+/,``);t.length===0||!g.test(t)?a.push(`\`${n}\` 不是合法 scope 名(仅允许字母/数字开头,后接字母/数字与 . _ -,@ 前缀可省略)`):v(i)?o[t]!==void 0&&o[t]!==i?a.push(`\`${t}\` 在 extraScopes 内重复声明且安装源不一致`):(e instanceof Map?e.has(t):Object.hasOwn(e,t))?a.push(`\`${t}\` 与预定义 scope 冲突(预定义不可覆盖,如需调整请在 ${r} 维护)`):o[t]=i:a.push(`\`${n}\` 的安装源 \`${String(i)}\` 不是合法的 http/https URL`)}let s=/* @__PURE__ */ new Set;for(let e of n??[]){let t=e.replace(/^@+/,``);t.length===0||!g.test(t)?a.push(`\`${e}\` 不是合法 scope 名(仅允许字母/数字开头,后接字母/数字与 . _ -,@ 前缀可省略)`):o[t]===void 0?s.add(t):a.push(`\`${t}\` 同时出现在 extraScopes 与 privateScopes(追加公网安装源与私有轨声明矛盾)`)}if(a.length>0)throw new _(a);for(let[e,t]of Object.entries(o))i[e]=t;for(let e of s)delete i[e];return i}function b(e){return y(f,e,void 0,`LZI_SCOPES 包内真源`)}function x(e,t,n,r){let i=y(e,t,n,`globals 仓 lzi-bun-install.config.ts`),a=r?.replace(/^@+/,``),o=new Set((n??[]).map(e=>e.replace(/^@+/,``)));return a!==void 0&&g.test(a)&&!Object.hasOwn(i,a)&&!o.has(a)&&(i[a]=d),i}function S(e){let t=[];if(typeof e!=`object`||!e)throw new _([`default export 必须是对象({ scopes: { ... } })`],`globals 预设 lzi-bun-install.config.ts`);let n=typeof e==`object`&&e&&`scopes`in e?e.scopes:void 0;if(typeof n!=`object`||!n||Array.isArray(n))throw new _([`scopes 必须是 scope → registry 的对象映射`],`globals 预设 lzi-bun-install.config.ts`);let r={};for(let[e,i]of Object.entries(n))g.test(e)?typeof i!=`string`||!v(i)?t.push(`\`${e}\` 的安装源 \`${String(i)}\` 不是合法的 http/https URL`):r[e]=i:t.push(`\`${e}\` 不是合法 scope 名(仅允许字母/数字开头,后接字母/数字与 . _ -,不含 @ 前缀)`);if(t.length>0)throw new _(t,`globals 预设 lzi-bun-install.config.ts`);if(Object.keys(r).length===0)throw new _([`scopes 清单为空(真源不允许空清单)`],`globals 预设 lzi-bun-install.config.ts`);return r}const C=[`**/infrastructure/entities/**`,`**/infrastructure/repositories/**`,`**/infrastructure/mappers/**`,`**/infrastructure/schemas/**`,`**/infrastructure/adapters/**`,`**/typeorm.ts`,`**/application/tokens.ts`,`**/application/index.ts`,`**/domain/index.ts`,`**/domain/entities/index.ts`,`**/domain/repositories/**`,`**/domain/types/**`,`**/domain/schemas/**`,`**/domain/events/**`,`**/domain/errors/**`,`src/index.ts`],w=[`**/infrastructure/**`,`**/typeorm.ts`,`**/application/tokens.ts`,`**/application/index.ts`,`**/application/port-adapters/**`,`**/application/mappers/**`,`**/application/dtos/**`,`**/domain/index.ts`,`**/domain/entities/index.ts`,`**/domain/repositories/**`,`**/domain/types/**`,`**/domain/events/**`,`**/domain/errors/**`,`src/index.ts`],T=[`**/*.module.ts`,`**/index.ts`,`src/index.ts`],E=[`**/*.module.ts`,`**/*.dto.ts`,`**/*.controller.ts`,`**/*.handler.ts`,`**/*.guard.ts`,`**/*.interceptor.ts`,`**/*.filter.ts`,`**/*.strategy.ts`,`**/*.scheduler.ts`,`**/*.provider.ts`,`**/*.gateway.ts`,`**/*.decorator.ts`,`**/infrastructure/**`,`**/migrations/**`,`**/index.ts`,`src/index.ts`],D=[`**/index.ts`,`src/index.ts`],O=[`src/app/**`,`src/components/**`,`src/features/**/components/**`,`src/hooks/**`,`src/providers/**`,`src/i18n/**`,`src/types/**`,`**/*.css`,`**/*.d.ts`,`**/index.ts`,`src/index.ts`],k=`LZI_TEST_MEMORY_BUDGET_BYTES`,A=1073741824,j=1610612736,M=/* @__PURE__ */ new Set([`web`,`desktop`,`desktop-host`,`mobile`,`miniprogram`,`ui`]);function N(e){let t=process.env[k];if(t!==void 0){let e=Number.parseInt(t,10);if(Number.isInteger(e)&&e>0)return e}return e!==void 0&&M.has(e)?j:A}const P={lines:.9,functions:.9,statements:.9},F={lines:.8,functions:.8,statements:.8},I={lines:.85,functions:.85,statements:.85},L={lines:.7,functions:.7,statements:.7},R={lines:.6,functions:.6,statements:.6},z={lines:.6,functions:.6,statements:.6},B={lines:.7,functions:.7,statements:.7},V={lines:.7,functions:.7,statements:.7},H={lines:.7,functions:.7,statements:.7},U={lines:.7,functions:.7,statements:.7},W={lines:.7,functions:.7,statements:.7},G={lines:.7,functions:.7,statements:.7},K={lines:.6,functions:.6,statements:.6},q={lines:.6,functions:.6,statements:.6},J={lines:.6,functions:.6,statements:.6},Y={lines:0,functions:0,statements:0};function X(e){if(e!==void 0)return typeof e==`number`?{lines:e,functions:e,statements:e}:{...e}}function Z(t,n,r){let i=n??[],a=r===void 0?[]:Array.isArray(r)?r:[r];return[...e,...t,...i,...a]}function Q(e){let{enableCoverage:n=!0,coverageThresholds:i,extraCoverageIgnorePatterns:a,test:o}=e,s=o?.include??r,c={passWithNoTests:o?.passWithNoTests??!0,include:s,...o};if(!n)return c;let l=X(i),u=X(o?.coverageThreshold),d={...l,...u},f=d.lines!==void 0||d.functions!==void 0||d.statements!==void 0,p=Z([],a,o?.coveragePathIgnorePatterns);return c.coverage=!0,c.coverageSkipTestFiles=o?.coverageSkipTestFiles??!0,c.coverageReporter=o?.coverageReporter??t,c.coverageDir=o?.coverageDir??`coverage`,c.coveragePathIgnorePatterns=p,f&&(c.coverageThreshold=d),o?.coverageIgnoreSourcemaps!==void 0&&(c.coverageIgnoreSourcemaps=o.coverageIgnoreSourcemaps),c}function $(e={}){return{test:Q(e)}}export{H as API_COVERAGE_THRESHOLDS,U as CAPABILITY_COVERAGE_THRESHOLDS,B as CLI_COVERAGE_THRESHOLDS,T as CLI_MINIMAL_EXEMPTION_PATTERNS,T as SERVER_MINIMAL_EXEMPTION_PATTERNS,E as CLI_MODERATE_EXEMPTION_PATTERNS,E as SERVER_MODERATE_EXEMPTION_PATTERNS,i as CONVENTION_TEST_BOOTSTRAP_PATH,a as CONVENTION_TEST_BOOTSTRAP_PRELOAD,n as DEFAULT_COVERAGE_DIR,e as DEFAULT_COVERAGE_IGNORE_PATTERNS,t as DEFAULT_COVERAGE_REPORTERS,r as DEFAULT_INCLUDE_PATTERNS,A as DEFAULT_MEMORY_BUDGET_BYTES,u as DEFAULT_REGISTRY,z as DESKTOP_COVERAGE_THRESHOLDS,G as DESKTOP_HOST_COVERAGE_THRESHOLDS,D as DESKTOP_MINIMAL_EXEMPTION_PATTERNS,D as WEB_MINIMAL_EXEMPTION_PATTERNS,O as DESKTOP_MODERATE_EXEMPTION_PATTERNS,O as WEB_MODERATE_EXEMPTION_PATTERNS,P as DOMAIN_COVERAGE_THRESHOLDS,C as DOMAIN_MINIMAL_EXEMPTION_PATTERNS,w as DOMAIN_MODERATE_EXEMPTION_PATTERNS,p as GLOBALS_ENV_KEY,j as HEAVY_DOM_MEMORY_BUDGET_BYTES,F as IMPLEMENTATION_COVERAGE_THRESHOLDS,V as INFRASTRUCTURE_COVERAGE_THRESHOLDS,_ as InstallScopesError,m as LZI_BUN_INSTALL_CONFIG_FILE,f as LZI_SCOPES,W as MCP_COVERAGE_THRESHOLDS,k as MEMORY_BUDGET_ENV_KEY,J as MINIPROGRAM_COVERAGE_THRESHOLDS,q as MOBILE_COVERAGE_THRESHOLDS,d as NPMJS_REGISTRY,I as PACKAGE_COVERAGE_THRESHOLDS,L as SERVER_COVERAGE_THRESHOLDS,Y as TYPE_ONLY_COVERAGE_THRESHOLDS,K as UI_COVERAGE_THRESHOLDS,R as WEB_COVERAGE_THRESHOLDS,$ as createBaseBunConfig,h as defineInstallScopesPreset,l as formatMemoryGuardReport,o as mergeConventionTestPreload,b as mergeInstallScopes,x as mergeInstallScopesWithPreset,c as parseMaxResidentSetBytes,N as resolveMemoryBudgetBytes,S as validateInstallScopesPreset};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@longzai-intelligence-bun/config",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.6",
|
|
4
4
|
"description": "Longzai Intelligence Bun 工具配置",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"bun",
|
|
@@ -32,8 +32,8 @@
|
|
|
32
32
|
"typecheck:test": "lzi-tsgo typecheck tsconfig/test.json",
|
|
33
33
|
"lint": "oxlint && oxfmt --check",
|
|
34
34
|
"lint:fix": "oxlint --fix && oxfmt",
|
|
35
|
-
"test": "bun test",
|
|
36
|
-
"test:watch": "bun test --watch",
|
|
37
|
-
"test:coverage": "bun test --coverage"
|
|
35
|
+
"test": "lzi-bun test",
|
|
36
|
+
"test:watch": "lzi-bun test --watch",
|
|
37
|
+
"test:coverage": "lzi-bun test --coverage"
|
|
38
38
|
}
|
|
39
39
|
}
|