@succsoft/succapp 5.0.5 → 5.0.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.
@@ -6,6 +6,8 @@
6
6
  "err.net.connectionFailed": "无法连接到服务器:{url}{causeMessage}",
7
7
  "err.net.connectionFailed.desc": "请检查服务器地址和网络连接,然后重试或重新登录。",
8
8
  "err.login.notlogin": "认证失败,请重新登录",
9
+ "err.login.busy": "系统繁忙,暂无法登录,请稍后再试!",
10
+ "err.login.busy.desc": "可能原因包括在线会话或用户数达到许可限制,也可能是数据库连接或查询失败。",
9
11
  "err.oauth2.tokenExpired": "OAuth2 访问令牌已过期。",
10
12
  "err.login.oauthTimeout": "OAuth2 授权超时。",
11
13
  "err.login.oauthTimeout.desc": "请重新登录并在浏览器中完成授权;无浏览器环境可改用 PAT 登录。",
@@ -37,6 +39,12 @@
37
39
  "err.net.invalidUrl": "URL 无效:{url}",
38
40
  "err.meta.invalidPath": "元数据路径不合法",
39
41
  "err.meta.invalidPath.desc": "请使用合法的绝对元数据路径后重试。",
42
+ "err.meta.invalidPath.relativeSearchQuery": "不支持相对搜索路径:{path}",
43
+ "err.meta.invalidPath.relativeSearchQuery.hint": "请使用以 '/' 开头的绝对路径,或使用不含 '/' 的文件名。",
44
+ "err.meta.invalidPath.parentDirGlob": "--parent-dir 不支持 glob 通配符:{path}",
45
+ "err.meta.invalidPath.parentDirGlob.hint": "--parent-dir 已默认递归搜索;只匹配直接子项时使用 --path='/DIR/*',其他 glob 也请使用 --path。",
46
+ "err.meta.invalidPath.parentProjectMismatch": "父目录 {path} 不属于项目 {projectName}。",
47
+ "err.meta.invalidPath.parentProjectMismatch.hint": "请让父目录的第一个路径段与 --project 一致。",
40
48
  "err.meta.projectExist": "已存在同名项目。",
41
49
  "err.meta.projectname.illegal": "项目名不合法。只能使用字母、数字和下划线,长度不能超过 16。",
42
50
  "err.meta.projectname.reservedwords": "项目名是系统保留字,不能使用。",
@@ -61,7 +69,8 @@
61
69
  "err.workspace.issue.E402": "SuccApp .gitignore 规则缺失",
62
70
  "err.workspace.issue.E403": "AI agent 工作区文件缺失",
63
71
  "err.workspace.issue.E404": "TypeScript 辅助文件缺失",
64
- "err.workspace.issue.E405": "JSON Schema 辅助文件缺失",
72
+ "err.workspace.issue.E405": "元数据校验辅助文件缺失",
73
+ "err.workspace.issue.E405.hint": "请先执行 'succapp workspace init --scope dev',然后重试当前命令。",
65
74
  "err.workspace.issue.E407": "SuccApp 官方文档 skill 文件缺失",
66
75
  "err.lock.busy": "无法{attemptedCommand}:工作区范围 {conflictScope} 正被另一个进程持有。",
67
76
  "err.lock.busy.desc": "请停止正在运行的进程后重试;崩溃进程留下的锁会在下次尝试时自动清理。",
@@ -86,6 +95,8 @@
86
95
  "err.cli.missingArgument.hint": "用法:{usage}。",
87
96
  "err.cli.tooManyArguments": "{command} 的参数过多。",
88
97
  "err.cli.tooManyArguments.hint": "此命令最多接受 {max} 个位置参数。",
98
+ "err.cli.tooManyValues": "{input} 的值过多:收到 {actualItems} 个。",
99
+ "err.cli.tooManyValues.hint": "最多传入 {maxItems} 个值。",
89
100
  "err.cli.missingInput": "缺少必填输入:{input}。",
90
101
  "err.cli.missingInput.hint": "请提供必填输入后重试。",
91
102
  "err.cli.missingInput.hintWithSources": "请提供 {sources} 后重试。",
@@ -95,7 +106,7 @@
95
106
  "err.cli.invalidUrl.hint": "请传入完整的 http:// 或 https:// 地址。",
96
107
  "err.cli.invalidPositiveInteger": "{input} 必须是正整数:{value}。",
97
108
  "err.cli.invalidNonNegativeInteger": "{input} 必须是非负整数:{value}。",
98
- "err.cli.invalidNonNegativeIntegerRange": "{input} 必须是不大于 {max} 的非负整数:{value}。",
109
+ "err.cli.invalidNonNegativeIntegerRange": "{input} 必须是 {min} 到 {max} 之间的整数:{value}。",
99
110
  "err.cli.invalidChoice": "{input} 的值无效:{value}。",
100
111
  "err.cli.invalidChoice.hint": "可用值:{allowedValues}。",
101
112
  "err.cli.invalidKeyValue": "{input} 的 key=value 无效:{value}。",
@@ -200,8 +211,6 @@
200
211
  "workspace.sync.progress.upgradeMeta.checked": "已检查 {0} 个元数据文件:{1} 个可升级。",
201
212
  "workspace.sync.progress.upgradeMeta.done": "已升级元数据文件:变更 {0} 个,失败 {1} 个,检查 {2} 个。",
202
213
  "workspace.sync.progress.upgradeMeta.scan": "正在扫描元数据文件",
203
- "workspace.validation.json.invalidJson": "JSON 格式不正确:{0}。",
204
- "workspace.validation.json.jsonFileEmpty": "JSON 文件为空。",
205
214
  "cli.cmd.common.desc": "常用命令。",
206
215
  "cli.cmd.common.summary": "常用命令",
207
216
  "cli.cmd.common.title": "常用",
@@ -212,6 +221,7 @@
212
221
  "cli.opt.locale": "使用指定区域语言显示 CLI 文案。",
213
222
  "cli.opt.lockTimeout": "失败前等待 workspace 锁释放。",
214
223
  "cli.opt.logLevel": "设置日志级别:trace、debug、info、warn 或 error。",
224
+ "cli.opt.prettyJson": "输出便于人工阅读的格式化 JSON;不适合按行解析脚本。",
215
225
  "cli.opt.quiet": "隐藏进度和普通信息输出。",
216
226
  "cli.opt.server": "为支持该选项的命令指定服务器。",
217
227
  "cli.opt.verbose": "启用调试日志。",
@@ -246,7 +256,13 @@
246
256
  "cli.cmd.db.summary": "查看和操作服务器数据库与数据源",
247
257
  "cli.cmd.db.desc": "查看和操作服务器数据库与数据源。",
248
258
  "cli.cmd.db.dataSource": "数据源",
249
- "cli.cmd.db.defaultSchema": "默认 schema",
259
+ "cli.cmd.db.connection": "连接",
260
+ "cli.cmd.db.defaultSchema": "逻辑默认 schema",
261
+ "cli.cmd.db.databaseProduct": "数据库产品",
262
+ "cli.cmd.db.databaseVersion": "数据库版本",
263
+ "cli.cmd.db.databaseFullVersion": "数据库完整版本",
264
+ "cli.cmd.db.driver": "JDBC 驱动",
265
+ "cli.cmd.db.driverVersion": "驱动版本",
250
266
  "cli.cmd.db.dryImport": "试运行导入",
251
267
  "cli.cmd.db.dsConfigMust": "数据源配置必须是 JSON 对象:{0}",
252
268
  "cli.cmd.db.imported": "已导入",
@@ -268,18 +284,23 @@
268
284
  "cli.cmd.db.sqlExecutedSuccess": "SQL 执行成功。",
269
285
  "cli.cmd.db.sqlOrFileConflict": "SQL 只能通过 <sql> 或 --file 传入,不能同时使用。",
270
286
  "cli.cmd.db.sqlUpdateCount": "SQL 影响行数:{0}",
287
+ "cli.cmd.db.query.empty": "查询成功,返回 0 行。",
271
288
  "cli.cmd.db.tableOrQueryConflict": "<table> 与 --query/--query-file 不能同时传。",
272
289
  "cli.cmd.db.source.title": "数据库源",
273
290
  "cli.cmd.db.source.summary": "查看和管理数据库源",
274
291
  "cli.cmd.db.source.desc": "查看和管理数据库源。",
275
292
  "cli.cmd.db.source.list.summary": "列出可见数据源。",
276
293
  "cli.cmd.db.source.list.desc": "列出当前 SuccApp 服务器会话可见的数据源。",
294
+ "cli.cmd.db.source.list.empty": "没有可用的数据源。",
277
295
  "cli.cmd.db.source.show.summary": "查看数据源配置。",
278
296
  "cli.cmd.db.source.show.desc": "显示数据源配置。",
279
- "cli.cmd.db.source.test.summary": "测试数据源连接。",
280
- "cli.cmd.db.source.test.desc": "根据 JSON 配置测试数据源连接。",
297
+ "cli.cmd.db.source.probe.summary": "验证已有数据源连接,并显示逻辑默认 schema、数据库及驱动信息。",
298
+ "cli.cmd.db.source.probe.desc": "打开并验证已有数据源连接,返回逻辑默认 schema、数据库产品、标准及完整版本和 JDBC 驱动信息;JSON 输出还会包含脱敏后的数据源配置。",
299
+ "cli.cmd.db.source.probe.datasource": "要探测的已有数据源名称。",
300
+ "cli.cmd.db.source.test.summary": "测试已有数据源或未保存的 JSON 配置能否建立连接。",
301
+ "cli.cmd.db.source.test.desc": "验证已有数据源,或在不保存的情况下验证 JSON 配置能否建立连接;两种方式都会返回逻辑默认 schema、数据库及驱动信息。",
302
+ "cli.cmd.db.source.test.datasource": "要测试的已有数据源名称。",
281
303
  "cli.cmd.db.source.test.config": "从文件读取数据源配置 JSON,或使用 - 读取标准输入。",
282
- "cli.cmd.db.source.test.testOk": "数据源连接测试成功:{0}",
283
304
  "cli.cmd.db.source.create.summary": "新建数据源。",
284
305
  "cli.cmd.db.source.create.desc": "根据 JSON 配置创建数据源。",
285
306
  "cli.cmd.db.source.create.config": "从文件读取数据源配置 JSON,或使用 - 读取标准输入。",
@@ -301,12 +322,15 @@
301
322
  "cli.cmd.db.schema.list.summary": "列出数据源 schema。",
302
323
  "cli.cmd.db.schema.list.desc": "列出数据源中的 schema。",
303
324
  "cli.cmd.db.schema.list.catalog": "目录",
325
+ "cli.cmd.db.schema.list.empty": "数据源 '{0}' 中没有 schema。",
304
326
  "cli.cmd.db.table.title": "数据库表",
305
327
  "cli.cmd.db.table.summary": "查看数据库表",
306
328
  "cli.cmd.db.table.desc": "查看数据库表。",
307
329
  "cli.cmd.db.table.list.summary": "列出数据源中的表。",
308
330
  "cli.cmd.db.table.list.desc": "列出数据源中的表。",
309
331
  "cli.cmd.db.table.list.tableNameContains": "按名称过滤表。支持 * 和 ? 通配符。",
332
+ "cli.cmd.db.table.list.empty": "没有可用的数据库表。",
333
+ "cli.cmd.db.table.list.noMatches": "当前条件没有匹配的数据库表。",
310
334
  "cli.cmd.db.table.describe.summary": "查看数据库表结构。",
311
335
  "cli.cmd.db.table.describe.desc": "查看数据库表的字段和元数据。",
312
336
  "cli.cmd.db.table.describe.schema": "schema 名称。",
@@ -360,14 +384,19 @@
360
384
  "cli.cmd.server.cache.title": "服务器缓存",
361
385
  "cli.cmd.server.cache.summary": "管理服务器缓存",
362
386
  "cli.cmd.server.cache.desc": "管理服务器缓存。",
363
- "cli.cmd.server.cache.refresh.summary": "刷新服务器缓存。",
364
- "cli.cmd.server.cache.refresh.desc": "刷新服务端 Dev Tool 元数据缓存。",
365
- "cli.cmd.server.cache.refresh.refreshed": "已刷新服务器缓存:{0}",
387
+ "cli.cmd.server.cache.list.summary": "列出服务器缓存条目。",
388
+ "cli.cmd.server.cache.list.desc": "列出服务端系统缓存条目(条数、磁盘/内存占用、命中率)。",
389
+ "cli.cmd.server.cache.list.empty": "无服务器缓存条目。",
390
+ "cli.cmd.server.cache.clean.summary": "清空服务器缓存。",
391
+ "cli.cmd.server.cache.clean.desc": "按 <name> 清空指定服务端系统缓存,或用 --all 清空全部。",
392
+ "cli.cmd.server.cache.clean.all": "清空全部服务器缓存条目。",
393
+ "cli.cmd.server.cache.clean.cleaned": "已清空服务器缓存:{1}({0})",
366
394
  "cli.cmd.server.proj.title": "服务器项目",
367
395
  "cli.cmd.server.proj.summary": "查看服务器项目",
368
396
  "cli.cmd.server.proj.desc": "查看服务器项目。",
369
397
  "cli.cmd.server.proj.list.summary": "列出服务器项目。",
370
398
  "cli.cmd.server.proj.list.desc": "列出服务器上的可见项目。",
399
+ "cli.cmd.server.proj.list.empty": "未找到可见项目。",
371
400
  "cli.cmd.server.proj.create.summary": "创建服务器项目。",
372
401
  "cli.cmd.server.proj.create.desc": "在服务器上创建元数据项目。",
373
402
  "cli.cmd.server.proj.create.descOption": "设置项目描述。",
@@ -387,19 +416,28 @@
387
416
  "cli.cmd.server.file.unknownServerFile": "未知服务器文件错误。",
388
417
  "cli.cmd.server.file.list.summary": "列出服务器文件。",
389
418
  "cli.cmd.server.file.list.desc": "列出服务器元数据目录的直接子项。",
419
+ "cli.cmd.server.file.list.empty": "目录为空:{0}",
390
420
  "cli.cmd.server.file.search.summary": "搜索服务器文件。",
391
- "cli.cmd.server.file.search.desc": "按关键词、路径、名称、类型和大小搜索可读取的服务器元数据文件。",
392
- "cli.cmd.server.file.search.path": "按完整元数据路径 glob 搜索。",
393
- "cli.cmd.server.file.search.name": "按文件名 glob 搜索。",
394
- "cli.cmd.server.file.search.parentDir": "按父目录 glob 搜索。",
395
- "cli.cmd.server.file.search.project": "只搜索指定项目。",
421
+ "cli.cmd.server.file.search.desc": "按完整路径,或按可组合的项目、父目录和文件名条件搜索可读取的服务器元数据文件。",
422
+ "cli.cmd.server.file.search.url": "可选的服务器 URL。只传一个非 URL 参数时,该参数按 <query> 处理。",
423
+ "cli.cmd.server.file.search.query": "以 '/' 开头时按完整路径或路径 glob 搜索;包含 '*' 或 '?' 时按文件名 glob 搜索;其他输入按文件元数据关键词搜索。",
424
+ "cli.cmd.server.file.search.path": "按元数据绝对路径 glob 搜索,项目根路径默认递归搜索;可以与关键词 <query> 组合,不能与路径型 <query>、--project、--parent-dir 或 --name 组合。",
425
+ "cli.cmd.server.file.search.name": "按文件名 glob 搜索;不含通配符时精确匹配。可以与关键词 <query>、--project、--parent-dir 组合,不能与 glob 型 <query> 或 --path 组合。",
426
+ "cli.cmd.server.file.search.parentDir": "递归搜索一个绝对目录范围,不支持 glob 通配符;只搜索直接子项时使用 --path='/DIR/*'。与 --project 同时使用时,第一个路径段必须等于项目名。",
427
+ "cli.cmd.server.file.search.project": "精确匹配一个项目名,可与 --parent-dir 和 --name 组合。",
396
428
  "cli.cmd.server.file.search.type": "只搜索指定元数据类型。可重复使用或用逗号分隔。",
397
429
  "cli.cmd.server.file.search.subType": "只搜索指定元数据子类型。可重复使用或用逗号分隔。",
398
430
  "cli.cmd.server.file.search.minSize": "原始内容最小字节数。",
399
431
  "cli.cmd.server.file.search.maxSize": "原始内容最大字节数。",
400
- "cli.cmd.server.file.search.limit": "限制返回文件数。默认 50,最大 200。",
401
- "cli.cmd.server.file.search.offset": "跳过指定数量的匹配文件。",
432
+ "cli.cmd.server.file.search.limit": "最多返回指定数量的最相关文件。默认 50,最大 1000。",
402
433
  "cli.cmd.server.file.search.includeFolders": "结果中包含文件夹。",
434
+ "cli.cmd.server.file.search.contentContains": "文本文件正文必须包含每个重复传入的普通文本或 /pattern/flags 正则;普通文本忽略大小写且不解析通配符,正则无 flags 时默认多行;参数值不会按逗号拆分。",
435
+ "cli.cmd.server.file.search.contentContainsAny": "文本文件正文至少包含一个重复传入的普通文本或 /pattern/flags 正则;普通文本忽略大小写且不解析通配符,正则无 flags 时默认多行;参数值不会按逗号拆分。",
436
+ "cli.cmd.server.file.search.empty": "未找到匹配的文件。",
437
+ "cli.cmd.server.file.search.pathHint": "'{0}' 是精确元数据路径。使用 '{1}' 递归搜索。",
438
+ "cli.cmd.server.file.search.nameHint": "没有通配符时文件名按精确值匹配,CLI 不会自动补通配符。",
439
+ "cli.cmd.server.file.search.hasMore": "仅显示最相关的 {0} 个文件;请增加项目、目录、类型或更准确的关键词来缩小范围。",
440
+ "cli.cmd.server.file.search.warningDetails": "正文未检查;请使用 --json 查看完整原因。",
403
441
  "cli.cmd.server.file.locate.summary": "根据元数据 ID 定位服务器文件。",
404
442
  "cli.cmd.server.file.locate.desc": "把元数据 ID 解析为当前服务器文件路径。",
405
443
  "cli.cmd.server.file.locate.url": "只打印服务器查看或编辑 URL。",
@@ -419,8 +457,10 @@
419
457
  "cli.cmd.server.file.download.force": "如果本地输出文件已存在则覆盖。",
420
458
  "cli.cmd.server.file.download.downloaded": "已下载 {0} 到 {1}",
421
459
  "cli.cmd.server.file.open.summary": "打开服务器文件页面。",
422
- "cli.cmd.server.file.open.desc": "打开服务器文件路径对应的查看或编辑页面。",
423
- "cli.cmd.server.file.open.edit": "打开服务器编辑页面。",
460
+ "cli.cmd.server.file.open.desc": "在系统浏览器中打开服务器文件的查看或编辑页面,也可以只返回页面 URL 而不打开浏览器。",
461
+ "cli.cmd.server.file.open.edit": "打开服务器编辑页面,而不是默认的查看页面。",
462
+ "cli.cmd.server.file.open.noOpen": "只返回页面 URL,不启动系统浏览器。",
463
+ "cli.cmd.server.file.open.path": "服务器元数据绝对路径。命令只构造页面 URL,不检查文件是否存在。",
424
464
  "cli.cmd.server.file.open.openedEdit": "已打开服务器编辑页面:{0}",
425
465
  "cli.cmd.server.file.open.openedView": "已打开服务器查看页面:{0}",
426
466
  "cli.cmd.server.file.history.summary": "显示服务器文件历史。",
@@ -556,6 +596,7 @@
556
596
  "cli.cmd.workspace.proj.desc": "管理工作区项目。",
557
597
  "cli.cmd.workspace.proj.list.summary": "列出本地工作区项目。",
558
598
  "cli.cmd.workspace.proj.list.desc": "列出本地工作区项目。",
599
+ "cli.cmd.workspace.proj.list.empty": "当前工作区没有跟踪项目。",
559
600
  "cli.cmd.workspace.proj.clone.summary": "克隆服务器项目到工作区。",
560
601
  "cli.cmd.workspace.proj.clone.desc": "从活跃服务器克隆项目到当前工作区。",
561
602
  "cli.cmd.workspace.proj.clone.force": "允许 clone 覆盖已有本地工作区项目。",
@@ -597,8 +638,10 @@
597
638
  "cli.cmd.workspace.file.resolve.remote": "远程路径:{0}",
598
639
  "cli.cmd.workspace.file.resolve.viewUrl": "查看 URL:{0}",
599
640
  "cli.cmd.workspace.file.open.summary": "打开服务器文件页面。",
600
- "cli.cmd.workspace.file.open.desc": "打开当前工作区文件的服务器查看或编辑页面。",
601
- "cli.cmd.workspace.file.open.edit": "打开服务器编辑页面。",
641
+ "cli.cmd.workspace.file.open.desc": "打开当前工作区文件的服务器查看或编辑页面,也可以只返回页面 URL 而不打开浏览器。",
642
+ "cli.cmd.workspace.file.open.edit": "打开服务器编辑页面,而不是默认的查看页面。",
643
+ "cli.cmd.workspace.file.open.noOpen": "只返回页面 URL,不启动系统浏览器。",
644
+ "cli.cmd.workspace.file.open.path": "工作区相对文件路径或服务器元数据绝对路径。",
602
645
  "cli.cmd.workspace.file.open.force": "即使本地文件有未推送变化,也打开服务器页面。",
603
646
  "cli.cmd.workspace.file.open.localChangedForce": "本地文件有未推送变化。浏览器将打开 {0} 的服务器版本。",
604
647
  "cli.cmd.workspace.file.open.openedEdit": "已打开服务器编辑页面:{0}",
@@ -611,19 +654,26 @@
611
654
  "cli.cmd.workspace.file.show.badSource": "--source 的值无效:{0}",
612
655
  "cli.cmd.workspace.file.show.revSource": "--revision 只支持和 --source=server 一起使用。",
613
656
  "cli.cmd.workspace.file.diff.summary": "显示工作区文件与服务器内容的差异。",
614
- "cli.cmd.workspace.file.diff.desc": "显示工作区文件与服务器内容的差异。",
657
+ "cli.cmd.workspace.file.diff.desc": "对比本地工作区元数据文件和服务器内容。可以传入文件、目录(递归目录下所有文件)或 glob。",
615
658
  "cli.cmd.workspace.file.diff.source": "与服务器内容比较。",
616
659
  "cli.cmd.workspace.file.diff.badSource": "--source 的值无效:{0}",
617
660
  "cli.cmd.workspace.file.history.summary": "显示服务器文件历史。",
618
661
  "cli.cmd.workspace.file.history.desc": "显示当前工作区文件的服务器端历史。",
619
662
  "cli.cmd.workspace.file.history.limit": "限制历史记录返回条数。",
620
- "cli.cmd.workspace.file.compile.summary": "在服务器编译校验工作区元数据内容。",
621
- "cli.cmd.workspace.file.compile.desc": "将本地工作区元数据内容发送到服务器进行编译校验。",
663
+ "cli.cmd.workspace.file.compile.summary": "校验工作区元数据文件。",
664
+ "cli.cmd.workspace.file.compile.desc": "校验本地工作区元数据文件。可以传入文件、目录(递归目录下所有文件)或 glob。",
622
665
  "cli.cmd.workspace.file.compile.compiler": "编译器",
666
+ "cli.cmd.workspace.file.compile.done": "已完成 {0} 个工作区元数据文件的编译校验。",
623
667
  "cli.cmd.workspace.file.compile.failed": "失败文件:{0}",
624
- "cli.cmd.workspace.file.compile.result": "元数据编译结果:共 {0} 个文件,通过 {1},失败 {2}",
668
+ "cli.cmd.workspace.file.compile.newerVersion": "{0} 个文件的版本高于当前服务器,已跳过。请连接匹配版本的服务器后重新校验。",
669
+ "cli.cmd.workspace.file.compile.result": "元数据校验结果:共 {0} 个文件,通过 {1},失败 {2}",
670
+ "cli.cmd.workspace.file.compile.running": "正在编译校验工作区元数据文件",
671
+ "cli.cmd.workspace.file.compile.schemaFailed": "元数据校验失败。",
672
+ "cli.cmd.workspace.file.compile.schemaFailedMsg": "元数据校验失败:{0}",
673
+ "cli.cmd.workspace.file.compile.skipped": "跳过文件:{0}",
674
+ "cli.cmd.workspace.file.compile.upgradeRequired": "{0} 个文件需要先升级。请使用相同的 pathspec 执行 `{1}`,升级完成后重新校验。",
625
675
  "cli.cmd.workspace.file.upgrade.summary": "升级旧版 SuccApp 元数据文件。",
626
- "cli.cmd.workspace.file.upgrade.desc": "预演或升级本地工作区项目中的旧版 SuccApp 元数据文件。不指定路径时处理所有本地项目。",
676
+ "cli.cmd.workspace.file.upgrade.desc": "预演或升级本地工作区旧版 SuccApp 元数据文件。可以传入文件、目录(递归目录下所有文件)或 glob;不传时处理所有本地项目。",
627
677
  "cli.cmd.workspace.file.upgrade.dryRun": "预演升级候选文件,不修改文件。",
628
678
  "cli.cmd.workspace.file.upgrade.cands": "升级候选文件:{0}",
629
679
  "cli.cmd.workspace.file.upgrade.dryRunRes": "元数据升级 dry-run:已检查 {0},候选 {1},跳过 {2},失败 {3}",
@@ -639,6 +689,7 @@
639
689
  "cli.cmd.workspace.lock.list.summary": "列出当前被锁定的工作区范围。",
640
690
  "cli.cmd.workspace.lock.list.desc": "列出当前 SuccApp 工作区中已被锁定的范围。",
641
691
  "cli.cmd.workspace.lock.list.scope": "范围",
692
+ "cli.cmd.workspace.lock.list.empty": "当前没有被占用的工作区锁。",
642
693
  "cli.cmd.workspace.lock.status.summary": "显示工作区锁持有者。",
643
694
  "cli.cmd.workspace.lock.status.desc": "工作区锁状态",
644
695
  "cli.cmd.workspace.lock.status.heartbeat": "最近心跳",
@@ -657,6 +708,7 @@
657
708
  "cli.cmd.workspace.backup.cleared": "合并备份清理:已清理 {0},剩余 {1}。",
658
709
  "cli.cmd.workspace.backup.list.summary": "列出已保存的合并备份。",
659
710
  "cli.cmd.workspace.backup.list.desc": "列出拉取冲突处理前保存的本地版本。",
711
+ "cli.cmd.workspace.backup.list.empty": "未找到合并备份。",
660
712
  "cli.cmd.workspace.backup.clear.summary": "清理已保存的合并备份。",
661
713
  "cli.cmd.workspace.backup.clear.desc": "清理由拉取冲突处理前保存的本地版本。",
662
714
  "cli.cmd.workspace.ext.title": "工作区扩展",
@@ -678,6 +730,7 @@
678
730
  "cli.cmd.workspace.ext.push.force": "允许本地扩展文件覆盖远端变化。",
679
731
  "cli.cmd.workspace.ext.push.needNamePath": "请传入扩展名或 --path=<path>。",
680
732
  "cli.cmd.workspace.ext.push.onlyOne": "<name> 和 --path=<path> 只能使用一个。",
733
+ "cli.out.search.score": "相关度",
681
734
  "cli.out.common.active": "活跃",
682
735
  "cli.out.common.api": "Dev Tool 接口",
683
736
  "cli.out.common.baseline": "基线",
@@ -686,6 +739,7 @@
686
739
  "cli.out.common.id": "ID",
687
740
  "cli.out.common.jvmInfo": "JVM 属性",
688
741
  "cli.out.common.metaVersions": "元数据版本",
742
+ "cli.out.common.noResults": "没有结果。",
689
743
  "cli.out.common.noServers": "尚未配置任何服务器。",
690
744
  "cli.out.common.product": "产品",
691
745
  "cli.out.common.productInfo": "产品信息",
@@ -728,14 +782,41 @@
728
782
  "cli.out.model.extractMode": "提取模式",
729
783
  "cli.out.model.fields": "字段数",
730
784
  "cli.out.model.kind": "类别",
785
+ "cli.out.model.matchedFields": "命中字段",
731
786
  "cli.out.model.primary": "主键",
732
787
  "cli.out.model.primaryKeys": "主键",
788
+ "cli.out.model.profile": "数据画像",
789
+ "cli.out.model.profile.profiledRowCount": "统计行数",
790
+ "cli.out.model.profile.sampled": "是否抽样",
791
+ "cli.out.model.profile.nullCount": "空值数",
792
+ "cli.out.model.profile.nullRate": "空值率",
793
+ "cli.out.model.profile.distinctCount": "不同值数",
794
+ "cli.out.model.profile.minValue": "最小值",
795
+ "cli.out.model.profile.maxValue": "最大值",
796
+ "cli.out.model.profile.sum": "合计",
797
+ "cli.out.model.profile.avg": "平均值",
798
+ "cli.out.model.profile.median": "中位数",
799
+ "cli.out.model.profile.p90": "第 90 百分位",
800
+ "cli.out.model.profile.p95": "第 95 百分位",
801
+ "cli.out.model.profile.zeroCount": "零值数",
802
+ "cli.out.model.profile.negativeCount": "负值数",
803
+ "cli.out.model.profile.topValues": "高频值",
804
+ "cli.out.model.profile.sampleValues": "示例值",
805
+ "cli.out.model.profile.estimatedProperties": "估算属性",
806
+ "cli.out.model.profile.unavailableProperties": "不可用属性",
807
+ "cli.out.model.role": "分析角色",
808
+ "cli.out.model.rowCount": "数据行数",
733
809
  "cli.out.model.targetTable": "目标表",
734
810
  "cli.out.model.title": "标题",
735
811
  "cli.out.model.type": "模型类型",
736
812
  "cli.out.model.unique": "唯一",
737
813
  "cli.out.model.writable": "可写",
738
814
  "cli.out.header.action": "操作",
815
+ "cli.out.header.cacheDisk": "磁盘",
816
+ "cli.out.header.cacheEntries": "条数",
817
+ "cli.out.header.cacheHitRate": "命中率",
818
+ "cli.out.header.cacheMem": "内存",
819
+ "cli.out.header.cacheName": "缓存",
739
820
  "cli.out.header.column": "列",
740
821
  "cli.out.header.command": "命令",
741
822
  "cli.out.header.comment": "备注",
@@ -769,8 +850,16 @@
769
850
  "cli.out.help.commandHelpRead": "运行 'succapp {0} <command> --help' 查看具体命令帮助。",
770
851
  "cli.out.help.commandHelpSee": "运行 'succapp <command> --help' 查看命令帮助。",
771
852
  "cli.out.help.commands": "命令",
853
+ "cli.out.help.arguments": "参数:",
772
854
  "cli.out.help.examples": "示例:",
773
- "cli.out.help.options": "选项:",
855
+ "cli.out.help.group.content": "正文选项:",
856
+ "cli.out.help.group.field": "字段选项:",
857
+ "cli.out.help.group.global": "全局选项:",
858
+ "cli.out.help.group.input": "输入选项:",
859
+ "cli.out.help.group.options": "选项:",
860
+ "cli.out.help.group.output": "输出选项:",
861
+ "cli.out.help.group.query": "查询选项:",
862
+ "cli.out.help.group.search": "搜索选项:",
774
863
  "cli.out.help.usageHeader": "用法:",
775
864
  "cli.out.help.usageLine": "用法: succapp {command} {usageArgs}",
776
865
  "cli.out.human.error": "错误:{0}",
@@ -832,6 +921,7 @@
832
921
  "cli.input.activeServer": "活跃服务器",
833
922
  "cli.input.contentSource": "内容来源",
834
923
  "cli.input.dataSourceConfig": "数据源配置",
924
+ "cli.input.dataSourceTestTarget": "已有数据源或数据源配置",
835
925
  "cli.input.exportTarget": "导出目标",
836
926
  "cli.input.extensionName": "扩展名",
837
927
  "cli.input.extensionNameOrPath": "扩展名或路径",
@@ -1111,23 +1201,48 @@
1111
1201
  "cli.cmd.model.title": "模型",
1112
1202
  "cli.cmd.model.summary": "查看和查询语义数据模型",
1113
1203
  "cli.cmd.model.desc": "查看和查询 SuccApp 语义数据模型。",
1114
- "cli.cmd.model.list.summary": "列出语义模型。",
1115
- "cli.cmd.model.list.desc": "列出可见的 .tbl 语义模型。",
1116
- "cli.cmd.model.list.project": "按项目过滤模型。",
1117
- "cli.cmd.model.list.type": "按模型类型过滤模型。",
1118
- "cli.cmd.model.list.contains": "按文本过滤模型。",
1119
- "cli.cmd.model.list.limit": "最大返回模型数。",
1204
+ "cli.cmd.model.search.summary": "搜索语义模型。",
1205
+ "cli.cmd.model.search.desc": "按完整路径,或按可组合的位置、模型属性和字段属性条件搜索可见的 .tbl 语义模型。",
1206
+ "cli.cmd.model.search.query": "以 '/' 开头时按完整模型路径或路径 glob 搜索;包含 '*' 或 '?' 时按模型文件名 glob 搜索;其他输入按关键词宽搜索模型属性或默认可见字段属性。",
1207
+ "cli.cmd.model.search.path": "按模型元数据绝对路径 glob 搜索,项目根路径默认递归搜索;可以与关键词 <query> 组合,不能与路径型 <query>、--project、--parent-dir 或 --name 组合。",
1208
+ "cli.cmd.model.search.name": "按模型文件名 glob 搜索;不含通配符时精确匹配。可以与关键词 <query>、--project、--parent-dir 组合,不能与 glob 型 <query> 或 --path 组合。",
1209
+ "cli.cmd.model.search.parentDir": "递归搜索一个绝对目录范围,不支持 glob 通配符;只搜索直接子模型时使用 --path='/DIR/*'。与 --project 同时使用时,第一个路径段必须等于项目名。",
1210
+ "cli.cmd.model.search.project": "精确匹配一个项目名,可与 --parent-dir 和 --name 组合。",
1211
+ "cli.cmd.model.search.type": "匹配 Table.tableType。可重复使用或用逗号分隔,多个值按 OR 组合。",
1212
+ "cli.cmd.model.search.contains": "要求模型名称、描述或物理表名匹配每个传入值(AND):普通文本按忽略大小写的包含匹配;/pattern/flags 按正则匹配,支持 i(忽略大小写)、m(多行)和 g(仅兼容,无实际影响)。",
1213
+ "cli.cmd.model.search.containsAny": "模型名称、描述或物理表名匹配任一传入值即可(OR):普通文本按忽略大小写的包含匹配;/pattern/flags 按正则匹配,支持 i、m 和 g(仅兼容,无实际影响)。",
1214
+ "cli.cmd.model.search.fieldContains": "要求字段名称、描述、物理名或关键字匹配每个传入值(AND):普通文本按忽略大小写的包含匹配;/pattern/flags 按正则匹配,支持 i(忽略大小写)、m(多行)和 g(仅兼容,无实际影响)。",
1215
+ "cli.cmd.model.search.fieldContainsAny": "字段名称、描述、物理名或关键字匹配任一传入值即可(OR):普通文本按忽略大小写的包含匹配;/pattern/flags 按正则匹配,支持 i、m 和 g(仅兼容,无实际影响)。",
1216
+ "cli.cmd.model.search.fieldMatch": "将字段文本匹配范围限定为 dim、measure 或 all,默认 all。",
1217
+ "cli.cmd.model.search.allFields": "让隐藏字段和扩展字段参与字段文本匹配。",
1218
+ "cli.cmd.model.search.fieldLimit": "每个模型最多返回的命中字段数,默认 5,有效范围为 1 到 50。",
1219
+ "cli.cmd.model.search.limit": "最多返回指定数量的最相关模型,默认 50,有效范围为 1 到 200。",
1220
+ "cli.cmd.model.search.empty": "未找到匹配的模型。",
1221
+ "cli.cmd.model.search.pathHint": "'{0}' 是精确模型路径。使用 '{1}' 递归搜索。",
1222
+ "cli.cmd.model.search.nameHint": "没有通配符时模型名按精确值匹配,CLI 不会自动补通配符或 .tbl 后缀。",
1223
+ "cli.cmd.model.search.hasMore": "仅显示最相关的 {0} 个模型;请增加项目、目录、类型或更准确的关键词来缩小范围。",
1120
1224
  "cli.cmd.model.show.summary": "查看模型元数据摘要。",
1121
1225
  "cli.cmd.model.show.desc": "查看语义模型元数据摘要。",
1122
- "cli.cmd.model.show.detail": "显示更详细的模型摘要。",
1226
+ "cli.cmd.model.profile.summary": "获取单个语义模型画像。",
1227
+ "cli.cmd.model.profile.desc": "返回模型摘要、当前版本完整元数据和物理表真实行数。human 输出保持简洁,使用 --json 获取完整元数据。",
1228
+ "cli.cmd.model.fieldProfile.summary": "获取指定模型字段画像。",
1229
+ "cli.cmd.model.fieldProfile.desc": "查看指定字段、推断的分析角色、维属性和按需计算的数据统计。一次选择 1 到 20 个字段;解析到同一 fieldPath 的别名会自动去重。\n\n实际能力取决于字段类型、数据源、数据量、权限和脱敏设置。nullCount/nullRate 适用于可查询字段;数值字段可使用 distinctCount、minValue、maxValue、sum、avg、zeroCount、negativeCount、topValues 和 sampleValues;字符串和日期字段可使用 distinctCount、minValue、maxValue、topValues 和 sampleValues;布尔字段可使用 distinctCount、topValues 和 sampleValues。median、p90 和 p95 仅为协议兼容保留,当前返回 unsupported。请以 dataProfile.unavailableProperties 为准。数量级未知的模型只有在当前账号可见行数不超过 100,000 时才执行 distinctCount/topValues;百万级模型返回 costLimit。JSON 中 sum/avg 使用十进制字符串保留精度。",
1230
+ "cli.cmd.model.fieldProfile.field": "字段物理名、业务名或 fieldPath。可重复传入,最多选择 20 个字段;等价名称按 fieldPath 去重。",
1231
+ "cli.cmd.model.fieldProfile.dataProperty": "要计算的数据统计。可重复传入或用逗号分隔。可选值:nullCount、nullRate、distinctCount、minValue、maxValue、sum、avg、median、p90、p95、zeroCount、negativeCount、topValues、sampleValues。未传时计算 nullCount、nullRate、distinctCount、minValue 和 maxValue。",
1232
+ "cli.cmd.model.fieldProfile.noData": "不扫描字段数据,只返回字段语义和维属性。不能与 --data-property 同时使用。",
1233
+ "cli.cmd.model.fieldProfile.topN": "topValues 最大返回数量,默认 20,有效范围为 1 到 50。",
1234
+ "cli.cmd.model.fieldProfile.sampleLimit": "sampleValues 最大返回数量,默认 10,有效范围为 1 到 50。",
1235
+ "cli.cmd.model.fieldProfile.dimensionAttributeDepth": "维属性展开深度,默认 1,有效范围为 0 到 3。",
1123
1236
  "cli.cmd.model.fields.summary": "列出模型字段。",
1124
1237
  "cli.cmd.model.fields.desc": "列出语义模型字段。",
1125
1238
  "cli.cmd.model.fields.all": "包含隐藏字段和扩展属性。",
1126
- "cli.cmd.model.fields.contains": "按字段名、标题或物理字段过滤。",
1239
+ "cli.cmd.model.fields.contains": "按字段名、标题或物理字段匹配:普通文本按忽略大小写的包含匹配;/pattern/flags 按正则匹配,支持 i、m 和 g(仅兼容,无实际影响)。",
1127
1240
  "cli.cmd.model.fields.dim": "仅列出维键字段。",
1128
1241
  "cli.cmd.model.fields.measure": "仅列出度量字段。",
1242
+ "cli.cmd.model.fields.empty": "未找到匹配的字段。",
1129
1243
  "cli.cmd.model.indexes.summary": "列出模型索引。",
1130
1244
  "cli.cmd.model.indexes.desc": "列出主键、业务键和模型索引。",
1245
+ "cli.cmd.model.indexes.empty": "该模型没有索引。",
1131
1246
  "cli.cmd.model.select.summary": "查询单个模型数据。",
1132
1247
  "cli.cmd.model.select.desc": "使用 SuccApp 表达式过滤条件查询单个 .tbl 模型。",
1133
1248
  "cli.cmd.model.select.select": "查询字段,多个字段用逗号分隔,可重复传入。",
@@ -1141,7 +1256,7 @@
1141
1256
  "cli.cmd.model.query.queryFile": "从文件读取 Query DSL JSON。",
1142
1257
  "cli.cmd.model.query.stdin": "从标准输入读取 Query DSL JSON。",
1143
1258
  "cli.cmd.model.query.maxRows": "最大预览行数。",
1144
- "cli.cmd.model.query.empty": "查询执行成功。",
1259
+ "cli.cmd.model.query.empty": "查询成功,返回 0 行。",
1145
1260
  "cli.cmd.model.export.summary": "将模型查询结果导出为 CSV。",
1146
1261
  "cli.cmd.model.export.desc": "将单模型或 Query DSL 查询结果导出为 CSV。",
1147
1262
  "cli.cmd.model.export.select": "查询字段,多个字段用逗号分隔,可重复传入。",