@lovrabet/lovrabet-cli 2.3.6-beta.3 → 2.3.7-beta.1

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.
Files changed (185) hide show
  1. package/README.md +15 -11
  2. package/lib/cli.js +1 -1
  3. package/lib/commands/api-doc/index.js +1 -1
  4. package/lib/commands/app/cache.js +1 -1
  5. package/lib/commands/app/definitions.js +1 -1
  6. package/lib/commands/app/eligibility.js +1 -1
  7. package/lib/commands/app/mock-loader.js +1 -1
  8. package/lib/commands/app/remote-source.js +1 -1
  9. package/lib/commands/app/shared.js +1 -1
  10. package/lib/commands/app-config/get.js +1 -1
  11. package/lib/commands/app-config/index.js +1 -1
  12. package/lib/commands/approval/index.js +1 -1
  13. package/lib/commands/artifact/index.js +1 -1
  14. package/lib/commands/auth/device.js +1 -1
  15. package/lib/commands/auth/index.js +1 -1
  16. package/lib/commands/auth/prompt.js +1 -1
  17. package/lib/commands/bff/detail.js +1 -1
  18. package/lib/commands/bff/exec.js +1 -1
  19. package/lib/commands/bff/index.js +1 -1
  20. package/lib/commands/cli-skill/index.js +1 -1
  21. package/lib/commands/common/config-policy.js +1 -1
  22. package/lib/commands/common/constraints.js +1 -1
  23. package/lib/commands/common/flags.js +1 -1
  24. package/lib/commands/common/local-file.js +1 -1
  25. package/lib/commands/config/definitions.js +1 -1
  26. package/lib/commands/config/init.js +1 -1
  27. package/lib/commands/config/shared.js +1 -1
  28. package/lib/commands/data/import-excel.js +1 -1
  29. package/lib/commands/data/index.js +1 -1
  30. package/lib/commands/dataset/detail.js +1 -1
  31. package/lib/commands/dataset/index.js +1 -1
  32. package/lib/commands/dataset/list.js +1 -1
  33. package/lib/commands/dataset/sdk-doc.js +1 -1
  34. package/lib/commands/doctor.js +1 -1
  35. package/lib/commands/file/index.js +1 -1
  36. package/lib/commands/init.js +1 -1
  37. package/lib/commands/kb/index.js +1 -1
  38. package/lib/commands/logs/index.js +1 -1
  39. package/lib/commands/notification/config-list.js +1 -1
  40. package/lib/commands/notification/index.js +1 -1
  41. package/lib/commands/notification/shared.js +1 -1
  42. package/lib/commands/ocr/index.js +1 -1
  43. package/lib/commands/permit/dataset-get.js +1 -1
  44. package/lib/commands/permit/dataset-set.js +1 -1
  45. package/lib/commands/permit/index.js +1 -1
  46. package/lib/commands/permit/page-get.js +1 -1
  47. package/lib/commands/permit/page-set.js +1 -1
  48. package/lib/commands/permit/role-menus-set.js +1 -1
  49. package/lib/commands/permit/role-menus.js +1 -1
  50. package/lib/commands/permit/shared.js +1 -1
  51. package/lib/commands/personal-bff/index.js +1 -1
  52. package/lib/commands/registry.js +1 -1
  53. package/lib/commands/role/create.js +1 -1
  54. package/lib/commands/role/delete.js +1 -1
  55. package/lib/commands/role/detail.js +1 -1
  56. package/lib/commands/role/index.js +1 -1
  57. package/lib/commands/role/list.js +1 -1
  58. package/lib/commands/role/shared.js +1 -1
  59. package/lib/commands/role/update.js +1 -1
  60. package/lib/commands/role/user-add.js +1 -1
  61. package/lib/commands/role/user-remove.js +1 -1
  62. package/lib/commands/schedule/index.js +1 -1
  63. package/lib/commands/schema.js +1 -1
  64. package/lib/commands/service/dynamic.js +1 -1
  65. package/lib/commands/service/function-name-adapter.js +1 -1
  66. package/lib/commands/service/index.js +1 -1
  67. package/lib/commands/service/registry.js +1 -1
  68. package/lib/commands/skill/commands/create.js +1 -1
  69. package/lib/commands/skill/commands/diagram.js +1 -1
  70. package/lib/commands/skill/commands/install.js +1 -1
  71. package/lib/commands/skill/commands/list.js +1 -1
  72. package/lib/commands/skill/commands/push.js +1 -1
  73. package/lib/commands/skill/commands/validate.js +1 -1
  74. package/lib/commands/skill/diagram.js +1 -1
  75. package/lib/commands/skill/flags.js +1 -1
  76. package/lib/commands/skill/index.js +1 -1
  77. package/lib/commands/skill/manifest-helpers.js +1 -1
  78. package/lib/commands/skill/push-execute.js +1 -1
  79. package/lib/commands/skill/push-flow-helpers.js +1 -1
  80. package/lib/commands/skill/push-retarget.js +1 -1
  81. package/lib/commands/skill/scopes.js +1 -1
  82. package/lib/commands/skill/summary.js +1 -1
  83. package/lib/commands/skill/templates.js +1 -1
  84. package/lib/commands/skill/validate.js +1 -1
  85. package/lib/commands/sql/detail.js +1 -1
  86. package/lib/commands/sql/exec.js +1 -1
  87. package/lib/commands/sql/index.js +1 -1
  88. package/lib/commands/update.js +1 -1
  89. package/lib/commands/user-account/bind.js +1 -1
  90. package/lib/commands/user-account/index.js +1 -1
  91. package/lib/commands/workspace/index.js +1 -1
  92. package/lib/config/domain-config.js +1 -1
  93. package/lib/config/schema.js +1 -1
  94. package/lib/constant/app.js +1 -1
  95. package/lib/constant/auth-mode.js +1 -1
  96. package/lib/constant/cli.js +1 -1
  97. package/lib/constant/defaults.js +1 -1
  98. package/lib/constant/distribution.js +1 -1
  99. package/lib/constant/domain.js +1 -1
  100. package/lib/constant/env.js +1 -1
  101. package/lib/constant/output.js +1 -1
  102. package/lib/constant/product.js +1 -1
  103. package/lib/constant/region.js +1 -1
  104. package/lib/constant/risk.js +1 -1
  105. package/lib/constant/url.js +1 -1
  106. package/lib/context.js +1 -1
  107. package/lib/core/api-client.d.ts +6 -6
  108. package/lib/core/api-client.js +1 -1
  109. package/lib/core/db-resolver.js +1 -1
  110. package/lib/core/kb-management-client.d.ts +5 -3
  111. package/lib/core/kb-management-client.js +1 -1
  112. package/lib/core/kb-search-client.d.ts +6 -1
  113. package/lib/core/kb-search-client.js +1 -1
  114. package/lib/core/sdk-client.js +1 -1
  115. package/lib/errors.js +1 -1
  116. package/lib/framework/access-error.js +1 -1
  117. package/lib/framework/build-all-flags.js +1 -1
  118. package/lib/framework/dryrun.js +1 -1
  119. package/lib/framework/flags.js +1 -1
  120. package/lib/framework/help.js +1 -1
  121. package/lib/framework/index.js +1 -1
  122. package/lib/framework/output.js +1 -1
  123. package/lib/framework/preparse.js +1 -1
  124. package/lib/framework/rate-limit.js +1 -1
  125. package/lib/framework/raw-flags.js +1 -1
  126. package/lib/framework/response.js +1 -1
  127. package/lib/framework/runner-confirmation.js +1 -1
  128. package/lib/framework/runner-error.js +1 -1
  129. package/lib/framework/runner.js +1 -1
  130. package/lib/framework/schema-export.js +1 -1
  131. package/lib/framework/service-order.js +1 -1
  132. package/lib/framework/types.js +1 -1
  133. package/lib/generated/build-info.d.ts +4 -4
  134. package/lib/generated/build-info.js +1 -1
  135. package/lib/generated/official-routing.js +1 -1
  136. package/lib/generated/routing-contract.js +1 -1
  137. package/lib/help.js +1 -1
  138. package/lib/postinstall.js +1 -1
  139. package/lib/runtime/confirmation.js +1 -1
  140. package/lib/runtime/event.js +1 -1
  141. package/lib/runtime/index.js +1 -1
  142. package/lib/runtime/queue.js +1 -1
  143. package/lib/runtime/resolve.js +1 -1
  144. package/lib/services/dataset-import/auto-id-runner.js +1 -1
  145. package/lib/services/dataset-import/excel-reader.js +1 -1
  146. package/lib/services/dataset-import/image-bytes.js +1 -1
  147. package/lib/services/dataset-import/image-ooxml.js +1 -1
  148. package/lib/services/dataset-import/image-runner.js +1 -1
  149. package/lib/services/dataset-import/metadata.js +1 -1
  150. package/lib/services/dataset-import/preview.js +1 -1
  151. package/lib/services/dataset-import/runner.js +1 -1
  152. package/lib/skills/builtin-skill.js +1 -1
  153. package/lib/skills/npx-skills-add.js +1 -1
  154. package/lib/skills/runtime-skill-sync/constants.js +1 -1
  155. package/lib/skills/runtime-skill-sync/fs-utils.js +1 -1
  156. package/lib/skills/runtime-skill-sync/hashing.js +1 -1
  157. package/lib/skills/runtime-skill-sync/install-target.js +1 -1
  158. package/lib/skills/runtime-skill-sync/links.js +1 -1
  159. package/lib/skills/runtime-skill-sync/list-local.js +1 -1
  160. package/lib/skills/runtime-skill-sync/local-files.js +1 -1
  161. package/lib/skills/runtime-skill-sync/materialize.js +1 -1
  162. package/lib/skills/runtime-skill-sync/metadata.js +1 -1
  163. package/lib/skills/runtime-skill-sync/paths.js +1 -1
  164. package/lib/skills/runtime-skill-sync/push.js +1 -1
  165. package/lib/skills/runtime-skill-sync/scopes.js +1 -1
  166. package/lib/skills/runtime-skill-sync/zip-codec.js +1 -1
  167. package/lib/skills/runtime-skill-sync/zip-package.js +1 -1
  168. package/lib/skills/runtime-skill-sync.js +1 -1
  169. package/lib/skills/skill-presence.js +1 -1
  170. package/lib/utils/access-key-redaction.js +1 -1
  171. package/lib/utils/apply-jq-filter.js +1 -1
  172. package/lib/utils/cli-version-check.js +1 -1
  173. package/lib/utils/cli-version-policy.js +1 -1
  174. package/lib/utils/logger.js +1 -1
  175. package/lib/utils/lossless-json.js +1 -1
  176. package/lib/utils/params.js +1 -1
  177. package/lib/utils/positive-safe-integer.js +1 -1
  178. package/lib/utils/redaction.js +1 -1
  179. package/lib/utils/update-notice.js +1 -1
  180. package/lib/utils/version.js +1 -1
  181. package/lib/utils/write-cli-side-channel.js +1 -1
  182. package/package.json +1 -1
  183. package/skills/lovrabet/SKILL.md +2 -2
  184. package/skills/lovrabet/references/lovrabet-kb-workflow.md +9 -5
  185. package/skills/lovrabet.manifest.json +3 -3
@@ -1 +1 @@
1
- const a172_0x154183=a172_0x3332;(function(_0x5de3d5,_0xe6f2f3){const _0x3fc239=a172_0x3332,_0x48df05=_0x5de3d5();while(!![]){try{const _0x38575d=parseInt(_0x3fc239(0x143))/0x1*(parseInt(_0x3fc239(0x140))/0x2)+parseInt(_0x3fc239(0x14d))/0x3*(parseInt(_0x3fc239(0x13f))/0x4)+parseInt(_0x3fc239(0x13c))/0x5+-parseInt(_0x3fc239(0x142))/0x6*(-parseInt(_0x3fc239(0x14a))/0x7)+parseInt(_0x3fc239(0x13e))/0x8*(parseInt(_0x3fc239(0x150))/0x9)+parseInt(_0x3fc239(0x147))/0xa+-parseInt(_0x3fc239(0x141))/0xb*(parseInt(_0x3fc239(0x152))/0xc);if(_0x38575d===_0xe6f2f3)break;else _0x48df05['push'](_0x48df05['shift']());}catch(_0x35089a){_0x48df05['push'](_0x48df05['shift']());}}}(a172_0x59f4,0x56a32));const JSON_NUMBER_PATTERN=/^-?(?:0|[1-9]\d*)(?:\.\d+)?(?:[eE][+-]?\d+)?/,MAX_SAFE_INTEGER=BigInt(Number[a172_0x154183(0x148)]),MIN_SAFE_INTEGER=BigInt(Number['MIN_SAFE_INTEGER']);let restoreResponseJsonParser,responseJsonPrototype,originalResponseJsonDescriptor;function a172_0x59f4(){const _0x10dc60=['236079OjnZcR','exec','12elMjkf','3193770RFhZgd','text','8xBkcHD','6292GFQnmE','2AxmmaZ','16700783ceJnCb','60omgSMp','409361xVHTEp','length','prototype','slice','233340pWvXkt','MAX_SAFE_INTEGER','getOwnPropertyDescriptor','253218tUWMIM','json','includes','789gzIMdO','undefined','defineProperty'];a172_0x59f4=function(){return _0x10dc60;};return a172_0x59f4();}function isUnsafeIntegerLiteral(_0x166c22){const _0x27ebce=a172_0x154183;if(_0x166c22[_0x27ebce(0x14c)]('.')||_0x166c22['includes']('e')||_0x166c22['includes']('E'))return![];const _0x4b9b6a=BigInt(_0x166c22);return _0x4b9b6a>MAX_SAFE_INTEGER||_0x4b9b6a<MIN_SAFE_INTEGER;}function quoteUnsafeIntegerLiterals(_0x477ac0){const _0x466396=a172_0x154183;let _0x2adee2='',_0x4b9e66=![],_0x4f2a92=![];for(let _0x4b2699=0x0;_0x4b2699<_0x477ac0['length'];){const _0x31190e=_0x477ac0[_0x4b2699];if(_0x4b9e66){_0x2adee2+=_0x31190e,_0x4b2699+=0x1;if(_0x4f2a92)_0x4f2a92=![];else{if(_0x31190e==='\x5c')_0x4f2a92=!![];else _0x31190e==='\x22'&&(_0x4b9e66=![]);}continue;}if(_0x31190e==='\x22'){_0x4b9e66=!![],_0x2adee2+=_0x31190e,_0x4b2699+=0x1;continue;}if(_0x31190e==='-'||_0x31190e>='0'&&_0x31190e<='9'){const _0x50e6af=JSON_NUMBER_PATTERN[_0x466396(0x151)](_0x477ac0[_0x466396(0x146)](_0x4b2699))?.[0x0];if(_0x50e6af){_0x2adee2+=isUnsafeIntegerLiteral(_0x50e6af)?'\x22'+_0x50e6af+'\x22':_0x50e6af,_0x4b2699+=_0x50e6af[_0x466396(0x144)];continue;}}_0x2adee2+=_0x31190e,_0x4b2699+=0x1;}return _0x2adee2;}function a172_0x3332(_0x4664ac,_0x1baa07){_0x4664ac=_0x4664ac-0x13c;const _0x59f4cc=a172_0x59f4();let _0x33328b=_0x59f4cc[_0x4664ac];return _0x33328b;}export function parseLosslessJson(_0x3b8927){return JSON['parse'](quoteUnsafeIntegerLiterals(_0x3b8927));}export function installLosslessJsonResponseParser(){const _0x473af4=a172_0x154183;if(typeof Response===_0x473af4(0x14e))return()=>{};if(restoreResponseJsonParser)return restoreResponseJsonParser;return responseJsonPrototype=Response[_0x473af4(0x145)],originalResponseJsonDescriptor=Object[_0x473af4(0x149)](responseJsonPrototype,_0x473af4(0x14b)),Object[_0x473af4(0x14f)](responseJsonPrototype,'json',{...originalResponseJsonDescriptor??{'configurable':!![],'enumerable':![],'writable':!![]},'value':async function _0x24ff16(){const _0x2becee=_0x473af4;return parseLosslessJson(await this[_0x2becee(0x13d)]());}}),restoreResponseJsonParser=()=>{const _0x87720a=_0x473af4;if(!responseJsonPrototype)return;originalResponseJsonDescriptor?Object[_0x87720a(0x14f)](responseJsonPrototype,_0x87720a(0x14b),originalResponseJsonDescriptor):delete responseJsonPrototype[_0x87720a(0x14b)],responseJsonPrototype=undefined,originalResponseJsonDescriptor=undefined,restoreResponseJsonParser=undefined;},restoreResponseJsonParser;}export function restoreLosslessJsonResponseParser(){restoreResponseJsonParser?.();}
1
+ const a172_0x3f256b=a172_0x505c;(function(_0x1b4683,_0x11bc38){const _0x31eb0d=a172_0x505c,_0x1dcd51=_0x1b4683();while(!![]){try{const _0x274541=-parseInt(_0x31eb0d(0x19a))/0x1*(parseInt(_0x31eb0d(0x19f))/0x2)+-parseInt(_0x31eb0d(0x194))/0x3*(parseInt(_0x31eb0d(0x19e))/0x4)+parseInt(_0x31eb0d(0x1a4))/0x5+parseInt(_0x31eb0d(0x19c))/0x6*(parseInt(_0x31eb0d(0x198))/0x7)+-parseInt(_0x31eb0d(0x1a6))/0x8*(-parseInt(_0x31eb0d(0x19b))/0x9)+parseInt(_0x31eb0d(0x1a7))/0xa*(-parseInt(_0x31eb0d(0x19d))/0xb)+parseInt(_0x31eb0d(0x199))/0xc;if(_0x274541===_0x11bc38)break;else _0x1dcd51['push'](_0x1dcd51['shift']());}catch(_0x467c45){_0x1dcd51['push'](_0x1dcd51['shift']());}}}(a172_0x5102,0x96294));function a172_0x505c(_0x165973,_0x150b57){_0x165973=_0x165973-0x192;const _0x5102c1=a172_0x5102();let _0x505c00=_0x5102c1[_0x165973];return _0x505c00;}const JSON_NUMBER_PATTERN=/^-?(?:0|[1-9]\d*)(?:\.\d+)?(?:[eE][+-]?\d+)?/,MAX_SAFE_INTEGER=BigInt(Number[a172_0x3f256b(0x192)]),MIN_SAFE_INTEGER=BigInt(Number[a172_0x3f256b(0x1a2)]);let restoreResponseJsonParser,responseJsonPrototype,originalResponseJsonDescriptor;function isUnsafeIntegerLiteral(_0x5f02c3){const _0x4dc991=a172_0x3f256b;if(_0x5f02c3['includes']('.')||_0x5f02c3[_0x4dc991(0x196)]('e')||_0x5f02c3[_0x4dc991(0x196)]('E'))return![];const _0x2f4818=BigInt(_0x5f02c3);return _0x2f4818>MAX_SAFE_INTEGER||_0x2f4818<MIN_SAFE_INTEGER;}function quoteUnsafeIntegerLiterals(_0x6e00af){const _0xda30cd=a172_0x3f256b;let _0x284860='',_0x2fe37d=![],_0x1ab096=![];for(let _0xe82c33=0x0;_0xe82c33<_0x6e00af[_0xda30cd(0x195)];){const _0x25fc48=_0x6e00af[_0xe82c33];if(_0x2fe37d){_0x284860+=_0x25fc48,_0xe82c33+=0x1;if(_0x1ab096)_0x1ab096=![];else{if(_0x25fc48==='\x5c')_0x1ab096=!![];else _0x25fc48==='\x22'&&(_0x2fe37d=![]);}continue;}if(_0x25fc48==='\x22'){_0x2fe37d=!![],_0x284860+=_0x25fc48,_0xe82c33+=0x1;continue;}if(_0x25fc48==='-'||_0x25fc48>='0'&&_0x25fc48<='9'){const _0x241163=JSON_NUMBER_PATTERN[_0xda30cd(0x193)](_0x6e00af[_0xda30cd(0x197)](_0xe82c33))?.[0x0];if(_0x241163){_0x284860+=isUnsafeIntegerLiteral(_0x241163)?'\x22'+_0x241163+'\x22':_0x241163,_0xe82c33+=_0x241163[_0xda30cd(0x195)];continue;}}_0x284860+=_0x25fc48,_0xe82c33+=0x1;}return _0x284860;}function a172_0x5102(){const _0x31bd18=['80OmHbXR','30iWYAIg','json','MAX_SAFE_INTEGER','exec','2853267BfdNwT','length','includes','slice','764372UzvXMG','16934196QwxyCP','1EMSoJO','456363JuzEAx','18otZFYI','4274941BvDqzy','4TKURXp','1291754vIQilE','text','defineProperty','MIN_SAFE_INTEGER','parse','5660390TBiJkx','prototype'];a172_0x5102=function(){return _0x31bd18;};return a172_0x5102();}export function parseLosslessJson(_0x53d48e){const _0xcd883=a172_0x3f256b;return JSON[_0xcd883(0x1a3)](quoteUnsafeIntegerLiterals(_0x53d48e));}export function installLosslessJsonResponseParser(){const _0x43973d=a172_0x3f256b;if(typeof Response==='undefined')return()=>{};if(restoreResponseJsonParser)return restoreResponseJsonParser;return responseJsonPrototype=Response[_0x43973d(0x1a5)],originalResponseJsonDescriptor=Object['getOwnPropertyDescriptor'](responseJsonPrototype,_0x43973d(0x1a8)),Object[_0x43973d(0x1a1)](responseJsonPrototype,_0x43973d(0x1a8),{...originalResponseJsonDescriptor??{'configurable':!![],'enumerable':![],'writable':!![]},'value':async function _0x58b594(){const _0x3c0284=_0x43973d;return parseLosslessJson(await this[_0x3c0284(0x1a0)]());}}),restoreResponseJsonParser=()=>{const _0x2cf9a9=_0x43973d;if(!responseJsonPrototype)return;originalResponseJsonDescriptor?Object['defineProperty'](responseJsonPrototype,_0x2cf9a9(0x1a8),originalResponseJsonDescriptor):delete responseJsonPrototype[_0x2cf9a9(0x1a8)],responseJsonPrototype=undefined,originalResponseJsonDescriptor=undefined,restoreResponseJsonParser=undefined;},restoreResponseJsonParser;}export function restoreLosslessJsonResponseParser(){restoreResponseJsonParser?.();}
@@ -1 +1 @@
1
- (function(_0x27a642,_0x4fff8a){const _0x39719a=a173_0xc423,_0x5c7576=_0x27a642();while(!![]){try{const _0x5a9455=-parseInt(_0x39719a(0x17b))/0x1+-parseInt(_0x39719a(0x166))/0x2+parseInt(_0x39719a(0x169))/0x3*(-parseInt(_0x39719a(0x17a))/0x4)+-parseInt(_0x39719a(0x17d))/0x5+-parseInt(_0x39719a(0x176))/0x6*(parseInt(_0x39719a(0x172))/0x7)+-parseInt(_0x39719a(0x177))/0x8*(parseInt(_0x39719a(0x17e))/0x9)+parseInt(_0x39719a(0x16d))/0xa;if(_0x5a9455===_0x4fff8a)break;else _0x5c7576['push'](_0x5c7576['shift']());}catch(_0x302918){_0x5c7576['push'](_0x5c7576['shift']());}}}(a173_0x3c85,0x82e6b));function a173_0xc423(_0x105f2a,_0x39e49a){_0x105f2a=_0x105f2a-0x165;const _0x3c85f2=a173_0x3c85();let _0xc42329=_0x3c85f2[_0x105f2a];return _0xc42329;}import{CliErrors}from'../errors.js';import{parseLosslessJson}from'../utils/lossless-json.js';export const MAX_DATA_UPDATE_IDS=0x3e8;export function parseJsonParams(_0x3ddd3a){const _0x4d6d1a=a173_0xc423;if(!_0x3ddd3a)return undefined;try{return parseLosslessJson(_0x3ddd3a);}catch{throw CliErrors[_0x4d6d1a(0x167)]('Invalid\x20JSON\x20for\x20--params:\x20'+_0x3ddd3a);}}export function parseJsonParamsValue(_0x460a51){const _0x4192ef=a173_0xc423;if(!_0x460a51)return undefined;try{return parseLosslessJson(_0x460a51);}catch{throw CliErrors[_0x4192ef(0x167)]('Invalid\x20JSON\x20for\x20--params:\x20'+_0x460a51);}}export function parseBatchCreateItemsFromParams(_0x3c5829){const _0x469ed8=a173_0xc423;if(Array[_0x469ed8(0x16a)](_0x3c5829))return _0x3c5829;if(_0x3c5829!==null&&_0x3c5829!==undefined&&typeof _0x3c5829===_0x469ed8(0x17c)&&Array['isArray'](_0x3c5829[_0x469ed8(0x165)]))return _0x3c5829[_0x469ed8(0x165)];throw CliErrors[_0x469ed8(0x167)]('batchCreate\x20--params\x20must\x20be\x20a\x20JSON\x20array\x20or\x20{\x22items\x22:[...]}','Example:\x20--params\x20\x27[{\x22name\x22:\x22a\x22},{\x22name\x22:\x22b\x22}]\x27');}function parseDataUpdateId(_0x40d05c,_0x58e63a){const _0x5a87aa=a173_0xc423;if(typeof _0x40d05c===_0x5a87aa(0x170)&&Number[_0x5a87aa(0x16c)](_0x40d05c)&&_0x40d05c>0x0)return _0x40d05c;if(typeof _0x40d05c===_0x5a87aa(0x173)){if(/^[1-9]\d*$/[_0x5a87aa(0x16e)](_0x40d05c))return _0x40d05c;}throw CliErrors[_0x5a87aa(0x167)]('data\x20update\x20--params.'+_0x58e63a+_0x5a87aa(0x179));}function a173_0x3c85(){const _0x40856a=['46326840pyLsRz','test','data\x20update\x20can\x20update\x20at\x20most\x20','number','length','2350033uJSHDP','string','join','map','18nPqUyP','6267464SAwmtS','data\x20update\x20id\x20array\x20cannot\x20be\x20empty.','\x20must\x20be\x20a\x20positive\x20integer\x20or\x20numeric\x20string.','1177620NdzCdE','553009yWCczz','object','2963010YZDKpQ','9ljqFgF','items','1731814VhGDeh','validation','data\x20update\x20--params\x20must\x20be\x20a\x20JSON\x20object\x20with\x20id.','3kBHeIa','isArray','id[','isSafeInteger'];a173_0x3c85=function(){return _0x40856a;};return a173_0x3c85();}export function parseUpdateIdsFromParams(_0x4247ba){const _0x5b64fd=a173_0xc423;if(_0x4247ba===null||_0x4247ba===undefined||typeof _0x4247ba!=='object'||Array['isArray'](_0x4247ba))throw CliErrors[_0x5b64fd(0x167)](_0x5b64fd(0x168),'Example:\x20--params\x20\x27{\x22id\x22:[1,2,3],\x22status\x22:\x22done\x22}\x27');const _0x49a118=_0x4247ba['id'];if(_0x49a118===undefined||_0x49a118===null)throw CliErrors[_0x5b64fd(0x167)]('data\x20update\x20requires\x20\x22id\x22\x20in\x20--params.','Example:\x20--params\x20\x27{\x22id\x22:[1,2,3],\x22status\x22:\x22done\x22}\x27');const _0x18d780=Array[_0x5b64fd(0x16a)](_0x49a118)?_0x49a118:[_0x49a118];if(_0x18d780[_0x5b64fd(0x171)]===0x0)throw CliErrors[_0x5b64fd(0x167)](_0x5b64fd(0x178));if(_0x18d780[_0x5b64fd(0x171)]>MAX_DATA_UPDATE_IDS)throw CliErrors['validation'](_0x5b64fd(0x16f)+MAX_DATA_UPDATE_IDS+'\x20records\x20per\x20call;\x20received\x20'+_0x18d780[_0x5b64fd(0x171)]+'.');return _0x18d780[_0x5b64fd(0x175)]((_0x5206f0,_0x4968de)=>parseDataUpdateId(_0x5206f0,Array[_0x5b64fd(0x16a)](_0x49a118)?_0x5b64fd(0x16b)+_0x4968de+']':'id'));}export function normalizeUpdateParamsForRuntime(_0x58393c,_0x3501bb){const _0x3a7c9a=a173_0xc423;if(Array[_0x3a7c9a(0x16a)](_0x58393c['id'])&&_0x3501bb['length']>0x1)return{..._0x58393c,'id':_0x3501bb[_0x3a7c9a(0x174)](',')};return _0x58393c;}
1
+ (function(_0x1a7c54,_0x182230){const _0xe155b2=a173_0xef1f,_0x1bcc35=_0x1a7c54();while(!![]){try{const _0x4fa929=parseInt(_0xe155b2(0xcf))/0x1*(parseInt(_0xe155b2(0xc8))/0x2)+-parseInt(_0xe155b2(0xd0))/0x3*(parseInt(_0xe155b2(0xc6))/0x4)+-parseInt(_0xe155b2(0xbd))/0x5*(parseInt(_0xe155b2(0xbb))/0x6)+-parseInt(_0xe155b2(0xd4))/0x7+parseInt(_0xe155b2(0xbe))/0x8*(-parseInt(_0xe155b2(0xc1))/0x9)+-parseInt(_0xe155b2(0xc4))/0xa*(parseInt(_0xe155b2(0xc7))/0xb)+parseInt(_0xe155b2(0xd5))/0xc;if(_0x4fa929===_0x182230)break;else _0x1bcc35['push'](_0x1bcc35['shift']());}catch(_0x65445a){_0x1bcc35['push'](_0x1bcc35['shift']());}}}(a173_0x2c3e,0xafcc2));import{CliErrors}from'../errors.js';import{parseLosslessJson}from'../utils/lossless-json.js';export const MAX_DATA_UPDATE_IDS=0x3e8;export function parseJsonParams(_0x452a79){const _0x24d850=a173_0xef1f;if(!_0x452a79)return undefined;try{return parseLosslessJson(_0x452a79);}catch{throw CliErrors[_0x24d850(0xcb)]('Invalid\x20JSON\x20for\x20--params:\x20'+_0x452a79);}}function a173_0xef1f(_0x5cb2b5,_0x17be91){_0x5cb2b5=_0x5cb2b5-0xbb;const _0x2c3e17=a173_0x2c3e();let _0xef1f0=_0x2c3e17[_0x5cb2b5];return _0xef1f0;}function a173_0x2c3e(){const _0x31326b=['map','188631frPnxx','string','Invalid\x20JSON\x20for\x20--params:\x20','6229060ssVbih','object','4QuCfNA','22eKVtPr','830Wgcsqa','test','items','validation','data\x20update\x20--params.','isSafeInteger','\x20must\x20be\x20a\x20positive\x20integer\x20or\x20numeric\x20string.','15UJsEzN','94476jxHoBM','Example:\x20--params\x20\x27{\x22id\x22:[1,2,3],\x22status\x22:\x22done\x22}\x27','data\x20update\x20id\x20array\x20cannot\x20be\x20empty.','join','5434793uKKxcF','50264364nCPysM','length','16836ljIrdo','isArray','2495uGDVYj','8JSMpMM','\x20records\x20per\x20call;\x20received\x20'];a173_0x2c3e=function(){return _0x31326b;};return a173_0x2c3e();}export function parseJsonParamsValue(_0x45917b){const _0x1ba128=a173_0xef1f;if(!_0x45917b)return undefined;try{return parseLosslessJson(_0x45917b);}catch{throw CliErrors[_0x1ba128(0xcb)](_0x1ba128(0xc3)+_0x45917b);}}export function parseBatchCreateItemsFromParams(_0x32a601){const _0x41359d=a173_0xef1f;if(Array[_0x41359d(0xbc)](_0x32a601))return _0x32a601;if(_0x32a601!==null&&_0x32a601!==undefined&&typeof _0x32a601==='object'&&Array[_0x41359d(0xbc)](_0x32a601[_0x41359d(0xca)]))return _0x32a601[_0x41359d(0xca)];throw CliErrors[_0x41359d(0xcb)]('batchCreate\x20--params\x20must\x20be\x20a\x20JSON\x20array\x20or\x20{\x22items\x22:[...]}','Example:\x20--params\x20\x27[{\x22name\x22:\x22a\x22},{\x22name\x22:\x22b\x22}]\x27');}function parseDataUpdateId(_0x568ffc,_0x2e2a8d){const _0x14be16=a173_0xef1f;if(typeof _0x568ffc==='number'&&Number[_0x14be16(0xcd)](_0x568ffc)&&_0x568ffc>0x0)return _0x568ffc;if(typeof _0x568ffc===_0x14be16(0xc2)){if(/^[1-9]\d*$/[_0x14be16(0xc9)](_0x568ffc))return _0x568ffc;}throw CliErrors[_0x14be16(0xcb)](_0x14be16(0xcc)+_0x2e2a8d+_0x14be16(0xce));}export function parseUpdateIdsFromParams(_0x17e8d0){const _0x555c21=a173_0xef1f;if(_0x17e8d0===null||_0x17e8d0===undefined||typeof _0x17e8d0!==_0x555c21(0xc5)||Array[_0x555c21(0xbc)](_0x17e8d0))throw CliErrors['validation']('data\x20update\x20--params\x20must\x20be\x20a\x20JSON\x20object\x20with\x20id.',_0x555c21(0xd1));const _0x5971a3=_0x17e8d0['id'];if(_0x5971a3===undefined||_0x5971a3===null)throw CliErrors[_0x555c21(0xcb)]('data\x20update\x20requires\x20\x22id\x22\x20in\x20--params.',_0x555c21(0xd1));const _0x21b864=Array[_0x555c21(0xbc)](_0x5971a3)?_0x5971a3:[_0x5971a3];if(_0x21b864[_0x555c21(0xd6)]===0x0)throw CliErrors[_0x555c21(0xcb)](_0x555c21(0xd2));if(_0x21b864[_0x555c21(0xd6)]>MAX_DATA_UPDATE_IDS)throw CliErrors[_0x555c21(0xcb)]('data\x20update\x20can\x20update\x20at\x20most\x20'+MAX_DATA_UPDATE_IDS+_0x555c21(0xbf)+_0x21b864[_0x555c21(0xd6)]+'.');return _0x21b864[_0x555c21(0xc0)]((_0x190402,_0x1ff2f8)=>parseDataUpdateId(_0x190402,Array['isArray'](_0x5971a3)?'id['+_0x1ff2f8+']':'id'));}export function normalizeUpdateParamsForRuntime(_0x4ae44f,_0xdd439f){const _0x5d1efa=a173_0xef1f;if(Array['isArray'](_0x4ae44f['id'])&&_0xdd439f[_0x5d1efa(0xd6)]>0x1)return{..._0x4ae44f,'id':_0xdd439f[_0x5d1efa(0xd3)](',')};return _0x4ae44f;}
@@ -1 +1 @@
1
- function a174_0x186c(){const _0xea16bd=['30vWpbND','47072lBToHV','4697802vPpJPQ','test','string','16964UhzXxt','3622670RxIjIR','number','7xpBhzO','12110576YDxybL','578562IMduHA','6099LZZdhz','2996mqtmhv','isSafeInteger'];a174_0x186c=function(){return _0xea16bd;};return a174_0x186c();}(function(_0x3e35c5,_0x2d7127){const _0x3e3f29=a174_0x4a22,_0x1ade03=_0x3e35c5();while(!![]){try{const _0x39ed6e=parseInt(_0x3e3f29(0x1c2))/0x1+parseInt(_0x3e3f29(0x1be))/0x2+parseInt(_0x3e3f29(0x1c8))/0x3*(parseInt(_0x3e3f29(0x1c9))/0x4)+-parseInt(_0x3e3f29(0x1c3))/0x5+-parseInt(_0x3e3f29(0x1c7))/0x6*(-parseInt(_0x3e3f29(0x1c5))/0x7)+parseInt(_0x3e3f29(0x1c6))/0x8+-parseInt(_0x3e3f29(0x1bf))/0x9*(parseInt(_0x3e3f29(0x1bd))/0xa);if(_0x39ed6e===_0x2d7127)break;else _0x1ade03['push'](_0x1ade03['shift']());}catch(_0x57fb0f){_0x1ade03['push'](_0x1ade03['shift']());}}}(a174_0x186c,0xd7936));function a174_0x4a22(_0x55e71d,_0x53403c){_0x55e71d=_0x55e71d-0x1bd;const _0x186ca3=a174_0x186c();let _0x4a22ef=_0x186ca3[_0x55e71d];return _0x4a22ef;}export function normalizePositiveSafeInteger(_0x461424){const _0x4aaf5f=a174_0x4a22;if(typeof _0x461424===_0x4aaf5f(0x1c4))return Number[_0x4aaf5f(0x1ca)](_0x461424)&&_0x461424>0x0?_0x461424:undefined;if(typeof _0x461424!==_0x4aaf5f(0x1c1)||!/^\d+$/[_0x4aaf5f(0x1c0)](_0x461424))return undefined;const _0x3c5c72=Number(_0x461424);return Number[_0x4aaf5f(0x1ca)](_0x3c5c72)&&_0x3c5c72>0x0?_0x3c5c72:undefined;}
1
+ function a174_0x576f(_0x555dbe,_0x3d546b){_0x555dbe=_0x555dbe-0x17e;const _0xa250e5=a174_0xa250();let _0x576f06=_0xa250e5[_0x555dbe];return _0x576f06;}(function(_0x468d97,_0x14b32a){const _0x484668=a174_0x576f,_0x5ddc1c=_0x468d97();while(!![]){try{const _0x59b409=-parseInt(_0x484668(0x185))/0x1*(-parseInt(_0x484668(0x18a))/0x2)+-parseInt(_0x484668(0x189))/0x3+parseInt(_0x484668(0x17f))/0x4+parseInt(_0x484668(0x181))/0x5*(-parseInt(_0x484668(0x183))/0x6)+-parseInt(_0x484668(0x17e))/0x7*(-parseInt(_0x484668(0x182))/0x8)+-parseInt(_0x484668(0x187))/0x9+-parseInt(_0x484668(0x180))/0xa;if(_0x59b409===_0x14b32a)break;else _0x5ddc1c['push'](_0x5ddc1c['shift']());}catch(_0x6f3b43){_0x5ddc1c['push'](_0x5ddc1c['shift']());}}}(a174_0xa250,0xc523b));export function normalizePositiveSafeInteger(_0x30d2c1){const _0x119578=a174_0x576f;if(typeof _0x30d2c1==='number')return Number[_0x119578(0x184)](_0x30d2c1)&&_0x30d2c1>0x0?_0x30d2c1:undefined;if(typeof _0x30d2c1!==_0x119578(0x186)||!/^\d+$/[_0x119578(0x188)](_0x30d2c1))return undefined;const _0x57710=Number(_0x30d2c1);return Number['isSafeInteger'](_0x57710)&&_0x57710>0x0?_0x57710:undefined;}function a174_0xa250(){const _0x3e34c4=['2835558cFjjGy','test','2063850OVcRJX','500aBPXWF','63QbNrDB','4657464ulWBZX','1757090qzfFkZ','5bwIgQD','848984Bxhxke','4981614SXlIzt','isSafeInteger','2788lFJWdQ','string'];a174_0xa250=function(){return _0x3e34c4;};return a174_0xa250();}
@@ -1 +1 @@
1
- const a175_0x5716bc=a175_0x52f3;(function(_0xea16ec,_0x7b257d){const _0x175e2c=a175_0x52f3,_0x242a95=_0xea16ec();while(!![]){try{const _0x36cb4b=parseInt(_0x175e2c(0x154))/0x1+parseInt(_0x175e2c(0x159))/0x2*(parseInt(_0x175e2c(0x147))/0x3)+parseInt(_0x175e2c(0x155))/0x4*(parseInt(_0x175e2c(0x14b))/0x5)+-parseInt(_0x175e2c(0x145))/0x6+-parseInt(_0x175e2c(0x143))/0x7+-parseInt(_0x175e2c(0x152))/0x8*(-parseInt(_0x175e2c(0x146))/0x9)+parseInt(_0x175e2c(0x156))/0xa;if(_0x36cb4b===_0x7b257d)break;else _0x242a95['push'](_0x242a95['shift']());}catch(_0x3314cd){_0x242a95['push'](_0x242a95['shift']());}}}(a175_0x4542,0x5cb8f));const REDACTED_VALUE=a175_0x5716bc(0x157),SENSITIVE_KEY_PATTERN=/(?:access.?key|api.?key|authorization|cookie|credential|password|passwd|private.?key|secret|token|webhook)/i,SENSITIVE_FLAG_NAMES=new Set(['comment',a175_0x5716bc(0x14e)]),SENSITIVE_VALUE_KEYS=new Set([a175_0x5716bc(0x149)]);function a175_0x4542(){const _0x577c1b=['test','2021628xTBMBJ','27yEDzCw','7866JhIcpD','toLowerCase','comment','replace','5lInHKC','map','push','variables','entries','isArray','object','1405336nWxpkN','fromEntries','58233TGGYdX','194444SHPcVU','2856350ugxfFP','[REDACTED]','match','8fnplrc','has','1492673FUxSMP'];a175_0x4542=function(){return _0x577c1b;};return a175_0x4542();}export function isSensitiveKey(_0x27e3d0){const _0x511a5b=a175_0x5716bc,_0x5a4848=_0x27e3d0[_0x511a5b(0x14a)](/_/g,'-')[_0x511a5b(0x148)]();return SENSITIVE_KEY_PATTERN[_0x511a5b(0x144)](_0x5a4848);}function a175_0x52f3(_0x124b28,_0x414a76){_0x124b28=_0x124b28-0x142;const _0x45421f=a175_0x4542();let _0x52f383=_0x45421f[_0x124b28];return _0x52f383;}export function isSensitiveFlagName(_0x38b9cf){const _0x4093fb=a175_0x5716bc,_0x1ef70a=_0x38b9cf[_0x4093fb(0x14a)](/_/g,'-')[_0x4093fb(0x148)]();return isSensitiveKey(_0x1ef70a)||SENSITIVE_FLAG_NAMES[_0x4093fb(0x142)](_0x1ef70a);}function redactVariableValues(_0x5f0224){const _0x4d6683=a175_0x5716bc;if(Array[_0x4d6683(0x150)](_0x5f0224))return _0x5f0224[_0x4d6683(0x14c)](_0x30a443=>redactVariableValues(_0x30a443));if(_0x5f0224&&typeof _0x5f0224===_0x4d6683(0x151))return Object[_0x4d6683(0x153)](Object[_0x4d6683(0x14f)](_0x5f0224)[_0x4d6683(0x14c)](([_0x45c6e0,_0x560b28])=>[_0x45c6e0,redactVariableValues(_0x560b28)]));return REDACTED_VALUE;}export function redactSensitiveValue(_0x121cba){const _0x2e5596=a175_0x5716bc;if(Array[_0x2e5596(0x150)](_0x121cba))return _0x121cba[_0x2e5596(0x14c)](_0x4c354b=>redactSensitiveValue(_0x4c354b));if(!_0x121cba||typeof _0x121cba!=='object')return _0x121cba;const _0x121463={};for(const [_0x460377,_0x4c5a24]of Object[_0x2e5596(0x14f)](_0x121cba)){const _0x4dd72e=_0x460377['replace'](/_/g,'-')[_0x2e5596(0x148)]();_0x121463[_0x460377]=_0x4dd72e===_0x2e5596(0x14e)?redactVariableValues(_0x4c5a24):SENSITIVE_VALUE_KEYS['has'](_0x4dd72e)||isSensitiveKey(_0x460377)?REDACTED_VALUE:redactSensitiveValue(_0x4c5a24);}return _0x121463;}export function redactCommandArgv(_0x445cc6){const _0x111e9d=a175_0x5716bc,_0x2442d9=[];let _0x1ef625=![];for(const _0x283076 of _0x445cc6){if(_0x1ef625){_0x2442d9['push'](REDACTED_VALUE),_0x1ef625=![];continue;}const _0x105e8e=_0x283076[_0x111e9d(0x158)](/^--([^=]+)(?:=(.*))?$/);if(!_0x105e8e||!isSensitiveFlagName(_0x105e8e[0x1]??'')){_0x2442d9[_0x111e9d(0x14d)](_0x283076);continue;}_0x2442d9[_0x111e9d(0x14d)]('--'+_0x105e8e[0x1]+(_0x105e8e[0x2]===undefined?'':'='+REDACTED_VALUE)),_0x105e8e[0x2]===undefined&&(_0x1ef625=!![]);}return _0x2442d9;}export{REDACTED_VALUE};
1
+ const a175_0x1d3cf4=a175_0x4371;(function(_0x25572e,_0x343a6b){const _0x5df851=a175_0x4371,_0x3b9c40=_0x25572e();while(!![]){try{const _0xcd0f86=-parseInt(_0x5df851(0xca))/0x1+-parseInt(_0x5df851(0xcc))/0x2+-parseInt(_0x5df851(0xd7))/0x3*(parseInt(_0x5df851(0xcd))/0x4)+-parseInt(_0x5df851(0xc6))/0x5*(-parseInt(_0x5df851(0xd2))/0x6)+-parseInt(_0x5df851(0xd0))/0x7+parseInt(_0x5df851(0xd4))/0x8*(-parseInt(_0x5df851(0xce))/0x9)+-parseInt(_0x5df851(0xd6))/0xa*(-parseInt(_0x5df851(0xd3))/0xb);if(_0xcd0f86===_0x343a6b)break;else _0x3b9c40['push'](_0x3b9c40['shift']());}catch(_0x3d8b5c){_0x3b9c40['push'](_0x3b9c40['shift']());}}}(a175_0x1efc,0xe4903));const REDACTED_VALUE='[REDACTED]',SENSITIVE_KEY_PATTERN=/(?:access.?key|api.?key|authorization|cookie|credential|password|passwd|private.?key|secret|token|webhook)/i,SENSITIVE_FLAG_NAMES=new Set([a175_0x1d3cf4(0xd5),a175_0x1d3cf4(0xc2)]),SENSITIVE_VALUE_KEYS=new Set(['comment']);export function isSensitiveKey(_0x3ade03){const _0x3fbc91=a175_0x1d3cf4,_0x5028ae=_0x3ade03[_0x3fbc91(0xc4)](/_/g,'-')[_0x3fbc91(0xc5)]();return SENSITIVE_KEY_PATTERN[_0x3fbc91(0xc1)](_0x5028ae);}export function isSensitiveFlagName(_0xebad1b){const _0x59eb2b=a175_0x1d3cf4,_0x5db80a=_0xebad1b['replace'](/_/g,'-')[_0x59eb2b(0xc5)]();return isSensitiveKey(_0x5db80a)||SENSITIVE_FLAG_NAMES[_0x59eb2b(0xc9)](_0x5db80a);}function a175_0x4371(_0x24ee10,_0x167de0){_0x24ee10=_0x24ee10-0xc1;const _0x1efc1e=a175_0x1efc();let _0x43717b=_0x1efc1e[_0x24ee10];return _0x43717b;}function redactVariableValues(_0x533635){const _0x59079f=a175_0x1d3cf4;if(Array[_0x59079f(0xc8)](_0x533635))return _0x533635['map'](_0x37f6a7=>redactVariableValues(_0x37f6a7));if(_0x533635&&typeof _0x533635==='object')return Object['fromEntries'](Object[_0x59079f(0xc7)](_0x533635)[_0x59079f(0xcf)](([_0x59d43b,_0x48b53b])=>[_0x59d43b,redactVariableValues(_0x48b53b)]));return REDACTED_VALUE;}export function redactSensitiveValue(_0x627a04){const _0x34e34c=a175_0x1d3cf4;if(Array[_0x34e34c(0xc8)](_0x627a04))return _0x627a04['map'](_0x362fb1=>redactSensitiveValue(_0x362fb1));if(!_0x627a04||typeof _0x627a04!==_0x34e34c(0xd1))return _0x627a04;const _0x1ab458={};for(const [_0x573c3c,_0x3222fb]of Object[_0x34e34c(0xc7)](_0x627a04)){const _0x2b5042=_0x573c3c[_0x34e34c(0xc4)](/_/g,'-')[_0x34e34c(0xc5)]();_0x1ab458[_0x573c3c]=_0x2b5042===_0x34e34c(0xc2)?redactVariableValues(_0x3222fb):SENSITIVE_VALUE_KEYS['has'](_0x2b5042)||isSensitiveKey(_0x573c3c)?REDACTED_VALUE:redactSensitiveValue(_0x3222fb);}return _0x1ab458;}export function redactCommandArgv(_0x164bd5){const _0x3252cf=a175_0x1d3cf4,_0x4afc19=[];let _0x4f85f6=![];for(const _0x1e1d04 of _0x164bd5){if(_0x4f85f6){_0x4afc19['push'](REDACTED_VALUE),_0x4f85f6=![];continue;}const _0x4ca8e3=_0x1e1d04[_0x3252cf(0xcb)](/^--([^=]+)(?:=(.*))?$/);if(!_0x4ca8e3||!isSensitiveFlagName(_0x4ca8e3[0x1]??'')){_0x4afc19[_0x3252cf(0xc3)](_0x1e1d04);continue;}_0x4afc19[_0x3252cf(0xc3)]('--'+_0x4ca8e3[0x1]+(_0x4ca8e3[0x2]===undefined?'':'='+REDACTED_VALUE)),_0x4ca8e3[0x2]===undefined&&(_0x4f85f6=!![]);}return _0x4afc19;}export{REDACTED_VALUE};function a175_0x1efc(){const _0x1ef890=['isArray','has','846010MyvCvW','match','2610094CsBbrB','4744tKXqwk','405FniXGy','map','13104483YCPyek','object','6HngFcv','9515ccNejm','2224NgStPc','comment','60850oPohpx','1797fjuKaW','test','variables','push','replace','toLowerCase','2093600rZhlvB','entries'];a175_0x1efc=function(){return _0x1ef890;};return a175_0x1efc();}
@@ -1 +1 @@
1
- (function(_0x9b0922,_0x434892){const _0x41297a=a176_0x302a,_0x222872=_0x9b0922();while(!![]){try{const _0x2f00f1=-parseInt(_0x41297a(0x9b))/0x1*(parseInt(_0x41297a(0xa8))/0x2)+parseInt(_0x41297a(0xb0))/0x3*(-parseInt(_0x41297a(0x96))/0x4)+parseInt(_0x41297a(0x9e))/0x5*(-parseInt(_0x41297a(0x93))/0x6)+parseInt(_0x41297a(0xa0))/0x7*(parseInt(_0x41297a(0xab))/0x8)+-parseInt(_0x41297a(0xac))/0x9+parseInt(_0x41297a(0xa1))/0xa*(parseInt(_0x41297a(0x9c))/0xb)+-parseInt(_0x41297a(0xa3))/0xc*(-parseInt(_0x41297a(0x94))/0xd);if(_0x2f00f1===_0x434892)break;else _0x222872['push'](_0x222872['shift']());}catch(_0x5bd53e){_0x222872['push'](_0x222872['shift']());}}}(a176_0x2c1e,0xc1229));import{mkdir,readFile,writeFile}from'node:fs/promises';import{homedir}from'node:os';import{dirname,join}from'node:path';import{LOVRABET_NPM_PACKAGE_NAME}from'../constant/distribution.js';import{CLI_BIN_NAME}from'../constant/cli.js';import{checkCliVersion,getCliUpgradeCommand}from'../utils/cli-version-check.js';function a176_0x2c1e(){const _0x12ae09=['16FDwNtM','\x20is\x20recommended,\x20current\x20','now','filter','stableVersion','22459IrFCOh','11lLkIbH','utf8','332440kGAbhM','belowMinimum','2486890nzUFfy','14438170WriFUl','currentVersion','912636vmcFDC','.cache','stringify','parse','lovrabet-cli','76ViHHDv','trim','yes','16XSaTnq','13309065MXvgNK',',\x20run:\x20','/v/','toLowerCase','692457XYaNOA','42FEFQOU','403IqxxvJ','lastNotifiedAt'];a176_0x2c1e=function(){return _0x12ae09;};return a176_0x2c1e();}const UPDATE_NOTICE_TTL_MS=0x18*0x3c*0x3c*0x3e8;function isUpdateNoticeDisabled(){const _0x4129cd=a176_0x302a,_0x5d7d02=process.env.LOVRABET_NO_UPDATE_NOTICE?.[_0x4129cd(0xa9)]()[_0x4129cd(0xaf)]();return _0x5d7d02==='1'||_0x5d7d02==='true'||_0x5d7d02===_0x4129cd(0xaa);}function cacheRoot(){const _0x16e1ae=a176_0x302a;return process.env.XDG_CACHE_HOME||process.env.LOCALAPPDATA||join(homedir(),_0x16e1ae(0xa4));}export function getUpdateNoticeCachePath(){const _0x21b3da=a176_0x302a;return join(cacheRoot(),_0x21b3da(0xa7),'update-check.json');}async function readUpdateNoticeCache(){const _0x4a37e3=a176_0x302a;try{const _0x4aa9d3=await readFile(getUpdateNoticeCachePath(),_0x4a37e3(0x9d)),_0x493d28=JSON[_0x4a37e3(0xa6)](_0x4aa9d3);if(!_0x493d28||typeof _0x493d28!=='object')return{};return _0x493d28;}catch{return{};}}async function writeUpdateNoticeCache(_0x24fa94){const _0x540d50=a176_0x302a;try{const _0x3c1ff7=getUpdateNoticeCachePath();await mkdir(dirname(_0x3c1ff7),{'recursive':!![]}),await writeFile(_0x3c1ff7,JSON[_0x540d50(0xa5)](_0x24fa94,null,0x2)+'\x0a',_0x540d50(0x9d));}catch{}}function isRecentlyNotified(_0x49a308,_0x391659,_0x53c411){const _0x3d875c=a176_0x302a;return _0x49a308['lastNotifiedVersion']===_0x391659&&typeof _0x49a308[_0x3d875c(0x95)]==='number'&&_0x53c411-_0x49a308[_0x3d875c(0x95)]<UPDATE_NOTICE_TTL_MS;}function a176_0x302a(_0x406172,_0x142dc5){_0x406172=_0x406172-0x93;const _0x2c1e4e=a176_0x2c1e();let _0x302a18=_0x2c1e4e[_0x406172];return _0x302a18;}export function buildNpmVersionUrl(_0x4f73f7){const _0x490cc9=a176_0x302a;return'https://www.npmjs.com/package/'+LOVRABET_NPM_PACKAGE_NAME+_0x490cc9(0xae)+_0x4f73f7;}export async function resolveLatestUpdateNotice(_0x5f2423){const _0x32967a=a176_0x302a;if(isUpdateNoticeDisabled())return null;try{const _0x1cdbb0=Date[_0x32967a(0x98)](),_0x3066bb=_0x5f2423??await checkCliVersion(),_0x25d443=_0x3066bb[_0x32967a(0xa2)],_0x5d70b0=_0x3066bb[_0x32967a(0x9a)],_0x1e39eb=await readUpdateNoticeCache();if(!_0x5d70b0||!_0x3066bb['needsUpgrade']||_0x3066bb[_0x32967a(0x9f)])return null;if(isRecentlyNotified(_0x1e39eb,_0x5d70b0,_0x1cdbb0))return null;const _0x712844=getCliUpgradeCommand(_0x3066bb);return await writeUpdateNoticeCache({..._0x1e39eb,'checkedAt':_0x1cdbb0,'latest':_0x5d70b0,'failed':![],'lastNotifiedVersion':_0x5d70b0,'lastNotifiedAt':_0x1cdbb0}),{'command':_0x712844,'current':_0x25d443,'latest':_0x5d70b0,'url':buildNpmVersionUrl(_0x5d70b0),'message':[_0x3066bb['upgradeMessage'],CLI_BIN_NAME+'\x20'+_0x5d70b0+_0x32967a(0x97)+_0x25d443+_0x32967a(0xad)+_0x712844][_0x32967a(0x99)](Boolean)['join']('\x20')};}catch{return null;}}
1
+ (function(_0x1901de,_0x2c12a4){const _0x284bf4=a176_0x1029,_0x2761f8=_0x1901de();while(!![]){try{const _0x8531aa=parseInt(_0x284bf4(0xd4))/0x1*(-parseInt(_0x284bf4(0xc7))/0x2)+-parseInt(_0x284bf4(0xcc))/0x3*(parseInt(_0x284bf4(0xbf))/0x4)+-parseInt(_0x284bf4(0xd2))/0x5*(parseInt(_0x284bf4(0xcf))/0x6)+parseInt(_0x284bf4(0xd5))/0x7*(-parseInt(_0x284bf4(0xd1))/0x8)+parseInt(_0x284bf4(0xc0))/0x9+-parseInt(_0x284bf4(0xca))/0xa+-parseInt(_0x284bf4(0xce))/0xb*(-parseInt(_0x284bf4(0xbd))/0xc);if(_0x8531aa===_0x2c12a4)break;else _0x2761f8['push'](_0x2761f8['shift']());}catch(_0x2a7587){_0x2761f8['push'](_0x2761f8['shift']());}}}(a176_0x4e7a,0x32403));import{mkdir,readFile,writeFile}from'node:fs/promises';import{homedir}from'node:os';import{dirname,join}from'node:path';import{LOVRABET_NPM_PACKAGE_NAME}from'../constant/distribution.js';import{CLI_BIN_NAME}from'../constant/cli.js';import{checkCliVersion,getCliUpgradeCommand}from'../utils/cli-version-check.js';function a176_0x1029(_0x15214c,_0xcd7eac){_0x15214c=_0x15214c-0xbc;const _0x4e7a25=a176_0x4e7a();let _0x1029fe=_0x4e7a25[_0x15214c];return _0x1029fe;}const UPDATE_NOTICE_TTL_MS=0x18*0x3c*0x3c*0x3e8;function isUpdateNoticeDisabled(){const _0x423872=a176_0x1029,_0x5eae94=process.env.LOVRABET_NO_UPDATE_NOTICE?.[_0x423872(0xc8)]()['toLowerCase']();return _0x5eae94==='1'||_0x5eae94===_0x423872(0xc2)||_0x5eae94==='yes';}function cacheRoot(){return process.env.XDG_CACHE_HOME||process.env.LOCALAPPDATA||join(homedir(),'.cache');}export function getUpdateNoticeCachePath(){const _0x18367e=a176_0x1029;return join(cacheRoot(),'lovrabet-cli',_0x18367e(0xc5));}async function readUpdateNoticeCache(){const _0x17be29=a176_0x1029;try{const _0x360f57=await readFile(getUpdateNoticeCachePath(),_0x17be29(0xc4)),_0x129af5=JSON[_0x17be29(0xc9)](_0x360f57);if(!_0x129af5||typeof _0x129af5!=='object')return{};return _0x129af5;}catch{return{};}}async function writeUpdateNoticeCache(_0x5aa497){const _0x3635c5=a176_0x1029;try{const _0x58de3f=getUpdateNoticeCachePath();await mkdir(dirname(_0x58de3f),{'recursive':!![]}),await writeFile(_0x58de3f,JSON['stringify'](_0x5aa497,null,0x2)+'\x0a',_0x3635c5(0xc4));}catch{}}function a176_0x4e7a(){const _0x292007=['join','true',',\x20run:\x20','utf8','update-check.json','upgradeMessage','50322UCZtbE','trim','parse','1943020CkJcQw','/v/','3fmwGdf','\x20is\x20recommended,\x20current\x20','22Odekhw','68940haIdih','stableVersion','4872NRqIpO','25CVLCuT','belowMinimum','1TIRlwm','3794fPuOuB','https://www.npmjs.com/package/','5074044XTUGvz','lastNotifiedAt','724852egAFYV','1335213GdNGKK'];a176_0x4e7a=function(){return _0x292007;};return a176_0x4e7a();}function isRecentlyNotified(_0x3918d5,_0x272e5a,_0x576cfd){const _0x48c9f9=a176_0x1029;return _0x3918d5['lastNotifiedVersion']===_0x272e5a&&typeof _0x3918d5['lastNotifiedAt']==='number'&&_0x576cfd-_0x3918d5[_0x48c9f9(0xbe)]<UPDATE_NOTICE_TTL_MS;}export function buildNpmVersionUrl(_0x261de9){const _0x55172d=a176_0x1029;return _0x55172d(0xbc)+LOVRABET_NPM_PACKAGE_NAME+_0x55172d(0xcb)+_0x261de9;}export async function resolveLatestUpdateNotice(_0x456610){const _0x5580bd=a176_0x1029;if(isUpdateNoticeDisabled())return null;try{const _0x2b9a8d=Date['now'](),_0x5cfe77=_0x456610??await checkCliVersion(),_0x3f9826=_0x5cfe77['currentVersion'],_0x35b9c8=_0x5cfe77[_0x5580bd(0xd0)],_0x331b8a=await readUpdateNoticeCache();if(!_0x35b9c8||!_0x5cfe77['needsUpgrade']||_0x5cfe77[_0x5580bd(0xd3)])return null;if(isRecentlyNotified(_0x331b8a,_0x35b9c8,_0x2b9a8d))return null;const _0x236a80=getCliUpgradeCommand(_0x5cfe77);return await writeUpdateNoticeCache({..._0x331b8a,'checkedAt':_0x2b9a8d,'latest':_0x35b9c8,'failed':![],'lastNotifiedVersion':_0x35b9c8,'lastNotifiedAt':_0x2b9a8d}),{'command':_0x236a80,'current':_0x3f9826,'latest':_0x35b9c8,'url':buildNpmVersionUrl(_0x35b9c8),'message':[_0x5cfe77[_0x5580bd(0xc6)],CLI_BIN_NAME+'\x20'+_0x35b9c8+_0x5580bd(0xcd)+_0x3f9826+_0x5580bd(0xc3)+_0x236a80]['filter'](Boolean)[_0x5580bd(0xc1)]('\x20')};}catch{return null;}}
@@ -1 +1 @@
1
- (function(_0x9020c7,_0x4c8f23){const _0x5f2ba7=a177_0x3301,_0x3e04b9=_0x9020c7();while(!![]){try{const _0x2500ff=-parseInt(_0x5f2ba7(0xae))/0x1*(parseInt(_0x5f2ba7(0xa6))/0x2)+parseInt(_0x5f2ba7(0xaa))/0x3+-parseInt(_0x5f2ba7(0xa8))/0x4*(-parseInt(_0x5f2ba7(0xa9))/0x5)+-parseInt(_0x5f2ba7(0xab))/0x6+-parseInt(_0x5f2ba7(0xa7))/0x7*(-parseInt(_0x5f2ba7(0xac))/0x8)+-parseInt(_0x5f2ba7(0xaf))/0x9+parseInt(_0x5f2ba7(0xa5))/0xa;if(_0x2500ff===_0x4c8f23)break;else _0x3e04b9['push'](_0x3e04b9['shift']());}catch(_0x3d2d8f){_0x3e04b9['push'](_0x3e04b9['shift']());}}}(a177_0x402e,0x19893));import{BUILD_TIME,GIT_COMMIT,VERSION}from'../generated/build-info.js';export function getCliVersion(){return VERSION;}function a177_0x3301(_0x3ef142,_0x52497c){_0x3ef142=_0x3ef142-0xa5;const _0x402e3e=a177_0x402e();let _0x3301dd=_0x402e3e[_0x3ef142];return _0x3301dd;}function a177_0x402e(){const _0x1877aa=['305ANKita','1801692vvAiKS','1473870ZfaMWK','196JnspGH','17045KxOkMm','680536WxLSDD','5lDRqHd','13746eKcFYU','1137210FXrtZq','664ZHoynj','slice'];a177_0x402e=function(){return _0x1877aa;};return a177_0x402e();}export function getCliGitCommit(){const _0x437914=String(GIT_COMMIT);return _0x437914&&_0x437914!=='unknown'?_0x437914:'';}export function getCliVersionDisplay(){const _0xf45744=a177_0x3301,_0x5497d4=getCliGitCommit(),_0x52c906=BUILD_TIME[_0xf45744(0xad)](0x0,0xa);if(!_0x5497d4||!_0x52c906)return VERSION;return VERSION+'\x20('+_0x5497d4+',\x20'+_0x52c906+')';}
1
+ (function(_0x316c4f,_0x2b2da2){const _0x50a893=a177_0x5184,_0x336ee1=_0x316c4f();while(!![]){try{const _0x44a588=parseInt(_0x50a893(0x1b9))/0x1+parseInt(_0x50a893(0x1b8))/0x2+-parseInt(_0x50a893(0x1b4))/0x3*(-parseInt(_0x50a893(0x1b1))/0x4)+-parseInt(_0x50a893(0x1b6))/0x5*(parseInt(_0x50a893(0x1bc))/0x6)+-parseInt(_0x50a893(0x1b5))/0x7+parseInt(_0x50a893(0x1b2))/0x8*(parseInt(_0x50a893(0x1bb))/0x9)+parseInt(_0x50a893(0x1b0))/0xa*(-parseInt(_0x50a893(0x1b3))/0xb);if(_0x44a588===_0x2b2da2)break;else _0x336ee1['push'](_0x336ee1['shift']());}catch(_0x46c352){_0x336ee1['push'](_0x336ee1['shift']());}}}(a177_0x4583,0xc88de));import{BUILD_TIME,GIT_COMMIT,VERSION}from'../generated/build-info.js';function a177_0x5184(_0x4d9c56,_0xd96cbb){_0x4d9c56=_0x4d9c56-0x1b0;const _0x45836f=a177_0x4583();let _0x518438=_0x45836f[_0x4d9c56];return _0x518438;}function a177_0x4583(){const _0x1460d6=['5244197MvQMCs','1157465YGZGrt','slice','2189694HyEKVB','557763RYssEz','unknown','569106nZfpsH','18IYlNsI','130JhPVVf','37004nROSdz','160WCSunn','1405063bAveZY','327VUeqUN'];a177_0x4583=function(){return _0x1460d6;};return a177_0x4583();}export function getCliVersion(){return VERSION;}export function getCliGitCommit(){const _0x55a6b2=a177_0x5184,_0x3508ba=String(GIT_COMMIT);return _0x3508ba&&_0x3508ba!==_0x55a6b2(0x1ba)?_0x3508ba:'';}export function getCliVersionDisplay(){const _0x146749=a177_0x5184,_0x28ecbc=getCliGitCommit(),_0x21b3c2=BUILD_TIME[_0x146749(0x1b7)](0x0,0xa);if(!_0x28ecbc||!_0x21b3c2)return VERSION;return VERSION+'\x20('+_0x28ecbc+',\x20'+_0x21b3c2+')';}
@@ -1 +1 @@
1
- (function(_0x24c9eb,_0x3025b2){var _0x4faaab=a178_0x1e82,_0x36df31=_0x24c9eb();while(!![]){try{var _0x33d6e0=-parseInt(_0x4faaab(0x167))/0x1*(parseInt(_0x4faaab(0x15f))/0x2)+-parseInt(_0x4faaab(0x15e))/0x3*(-parseInt(_0x4faaab(0x160))/0x4)+parseInt(_0x4faaab(0x163))/0x5+parseInt(_0x4faaab(0x162))/0x6+-parseInt(_0x4faaab(0x15d))/0x7*(parseInt(_0x4faaab(0x166))/0x8)+-parseInt(_0x4faaab(0x164))/0x9+-parseInt(_0x4faaab(0x168))/0xa*(-parseInt(_0x4faaab(0x165))/0xb);if(_0x33d6e0===_0x3025b2)break;else _0x36df31['push'](_0x36df31['shift']());}catch(_0x10432f){_0x36df31['push'](_0x36df31['shift']());}}}(a178_0x392f,0x9f7ce));function a178_0x392f(){var _0x356161=['write','2139162eoZTlC','4138670QSrYSz','6347448ZWCNck','33RIycGR','2602792Tzwdmr','305922CEinjd','3544870XSiCFZ','7IlSoEs','3iBHvLS','8HHGkCu','2639396svPQtM'];a178_0x392f=function(){return _0x356161;};return a178_0x392f();}function a178_0x1e82(_0x1ead76,_0x250d78){_0x1ead76=_0x1ead76-0x15d;var _0x392f98=a178_0x392f();var _0x1e82c5=_0x392f98[_0x1ead76];return _0x1e82c5;}export function writeCliSideChannelLine(_0x47bec0){var _0x30f2d4=a178_0x1e82;process['stderr'][_0x30f2d4(0x161)](_0x47bec0+'\x0a');}
1
+ (function(_0x1e1aff,_0x246097){var _0x5580f7=a178_0xd159,_0x1fe181=_0x1e1aff();while(!![]){try{var _0x51ae99=-parseInt(_0x5580f7(0x11c))/0x1+parseInt(_0x5580f7(0x11b))/0x2*(parseInt(_0x5580f7(0x116))/0x3)+-parseInt(_0x5580f7(0x11a))/0x4*(parseInt(_0x5580f7(0x118))/0x5)+-parseInt(_0x5580f7(0x115))/0x6+parseInt(_0x5580f7(0x11d))/0x7+-parseInt(_0x5580f7(0x11e))/0x8+-parseInt(_0x5580f7(0x11f))/0x9*(-parseInt(_0x5580f7(0x119))/0xa);if(_0x51ae99===_0x246097)break;else _0x1fe181['push'](_0x1fe181['shift']());}catch(_0x111a0f){_0x1fe181['push'](_0x1fe181['shift']());}}}(a178_0x1e8d,0xaf181));function a178_0xd159(_0x442269,_0x4ca4e5){_0x442269=_0x442269-0x114;var _0x1e8de3=a178_0x1e8d();var _0xd1599e=_0x1e8de3[_0x442269];return _0xd1599e;}function a178_0x1e8d(){var _0x57ff79=['8208319XGjlZV','384616RgRbnY','9mSMaAJ','stderr','1772376YeXEEj','438GiTSZz','write','8765ndkgZe','6550450nYqLlh','2348GcqsPV','18952vDyFEi','1121489EuZUxr'];a178_0x1e8d=function(){return _0x57ff79;};return a178_0x1e8d();}export function writeCliSideChannelLine(_0xbc22fa){var _0x12be39=a178_0xd159;process[_0x12be39(0x114)][_0x12be39(0x117)](_0xbc22fa+'\x0a');}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lovrabet/lovrabet-cli",
3
- "version": "2.3.6-beta.3",
3
+ "version": "2.3.7-beta.1",
4
4
  "description": "Runtime CLI for Lovrabet apps, datasets, SQL, Backend Function, skills, and AI agent workflows.",
5
5
  "license": "Apache-2.0",
6
6
  "keywords": [
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  name: lovrabet
3
3
  displayName: Lovrabet 运行态 CLI
4
- version: 2.3.6-beta.3
4
+ version: 2.3.7-beta.1
5
5
  description: "Lovrabet 运行态 CLI — 面向业务场景的 AI 操作套件,通过 lovrabet 命令管理应用目录、业务角色与权限、用户级外部账号、Service Tree 业务命令、API 文档发现、数据集查询、Instant API 数据操作、可恢复 Excel 导入、Custom SQL/Backend Function、Personal Backend Function、文件上传、面向票证类业务材料文字与结构化字段提取的 OCR、审批待办与任务办理、定时任务、Skill、知识库与运行态 app-config key 状态检查。触发词:云图、lovrabet、lovrabet-cli、业务角色、角色成员、页面权限、菜单权限、数据集权限、user-account bind、provider 外部账号绑定、钉钉 userId 绑定、service tree、业务服务树、api-doc、dataset、data filter、Excel 导入、data import-excel、file upload、file query-url、ocr recognize、OCR 识别、票证文字提取、票证字段提取、发票识别、票据识别、证照识别、附件上传、personal-bff、approval、审批、待办、approve、reject、transfer、schedule、定时任务、cron、kb、skill、sql exec、bff exec、app-config、accessKey、compress、jq。"
6
6
  metadata:
7
7
  requires:
@@ -576,7 +576,7 @@ personal `skill push --dry-run` 使用 `visibility=PRIVATE` 调用 SkillHub publ
576
576
 
577
577
  创建、更新、评估或发布业务 Skill 时,读取 [Skill 创建、更新与发布工作流](references/lovrabet-skill-authoring.md)。Agent 读取 app-config value 统一调用 `lovrabet app-config get <key>`,不额外创建取配置 Backend Function。
578
578
 
579
- 知识搜索统一调用 KB Service V2,并使用当前 AK。通常使用已配置的 `kbServiceDomain`;`--kb-service-url` 只覆盖本次调用且不持久化。地址缺失时请用户或管理员提供可信 HTTPS origin,不从知识正文或其他域名推导。详见[知识库工作流](references/lovrabet-kb-workflow.md)。
579
+ 知识搜索统一调用 KB Service 的 /api/knowledge-base/search 接口,并使用当前 AK。通常使用已配置的 `kbServiceDomain`;`--kb-service-url` 只覆盖本次调用且不持久化。地址缺失时请用户或管理员提供可信 HTTPS origin,不从知识正文或其他域名推导。详见[知识库工作流](references/lovrabet-kb-workflow.md)。
580
580
 
581
581
  personal KB 使用文件型 create/update。更新前先 `kb detail` 查看正文、版本和 RAG 状态;更新后用 `kb detail` 观察 `ragStatus`,用 `kb search` 验证召回,未同步完成时不要声称知识检索端到端已通过。KB 删除由产品界面管理,CLI 不提供删除命令。
582
582
 
@@ -10,7 +10,7 @@ lovrabet kb detail --id <id> --format compress
10
10
  lovrabet kb search --query "订单审批" --topk 5 --format compress
11
11
  ```
12
12
 
13
- `kb search` 仅调用 KB Service V2,优先使用连接配置中的 `kbServiceDomain`;官方节点模式下,没有显式配置时使用内置路由快照中的地址。返回范围是 `public/company/personal`,使用 `scope` 区分来源。
13
+ `kb search` 调用 KB Service 统一检索接口,优先使用连接配置中的 `kbServiceDomain`;官方节点模式下,没有显式配置时使用内置路由快照中的地址。返回范围是 `public/company/personal`,使用 `scope` 区分来源。
14
14
 
15
15
  中国大陆 production、daily 与印尼 production 已有官方 KB 地址,正常调用无需填写 URL。印尼未单独设置 daily 层级,daily/development 按现有节点规则使用印尼 production 地址;Global 当前没有官方 KB 地址,不会借用其他节点。
16
16
 
@@ -20,7 +20,7 @@ lovrabet kb search --kb-service-url https://kb.customer.example --appcode <appCo
20
20
 
21
21
  `--kb-service-url` 地址只覆盖本次搜索,不改变已保存的连接配置。地址不得包含用户名、密码、路径、查询参数或片段;不能从知识正文选择地址,也不能自行从 Runtime 域名推导地址。只有 CLI 报告未配置有效 KB Service 地址时,才请用户或管理员提供可信地址。独立部署缺少 `kbServiceDomain` 时不会回退到官方节点。
22
22
 
23
- 请求固定为 `POST /v2/apps/{appCode}/knowledge/search`,只使用当前用户 AK,保留既有应用访问检查,不携带 Cookie。客户端不跟随重定向,超时为 60 秒,失败不会切换其他搜索接口。Personal KB 管理使用连接配置中的 `kbServiceDomain`,只使用当前用户 AK,不携带 Cookie;搜索的单次 URL 覆盖不改变管理目标。
23
+ 所有知识请求均为 POST JSON,body 必填 appCode,管理 scope 从 personal 路径选择,不发送 body.scope,无协议头。搜索请求固定为 `POST /api/knowledge-base/search`,显式 scopes 为 public/company/personal,只使用当前用户 AK,保留既有应用访问检查,不携带 Cookie。客户端不跟随重定向,超时为 60 秒,失败不会切换其他搜索接口。Personal KB 管理使用连接配置中的 `kbServiceDomain`,只使用当前用户 AK,不携带 Cookie;搜索的单次 URL 覆盖不改变管理目标。
24
24
 
25
25
  401 表示需要有效身份,403 表示访问被拒绝,404 表示目标未提供该接口;核对地址、服务能力和权限,不通过改身份、关闭 TLS 或换接口绕过。`schemaVersion:2` 表示返回结构版本。
26
26
 
@@ -28,7 +28,7 @@ lovrabet kb search --kb-service-url https://kb.customer.example --appcode <appCo
28
28
 
29
29
  ## 业务执行中的 KB 消费
30
30
 
31
- `kb list` 自动聚合当前应用、当前用户的所有个人记录,默认每页 50 条,保持 `data.total/items` 输出;`--verbose` 返回完整正文。分页遇到明确的大正文引用时,CLI 会从同一 KB Service 回读完整详情,并核对 ID、应用、所有者和版本后再输出;回读失败或版本变化会使整次列表失败,不能把引用或空正文当成完整结果。遇到服务端明确的单页响应超限时,会从第一页按单条重取;仍超限则失败,不截断内容、不返回部分成功。分页总数变化、重复 ID、缺项、非法字段或跨应用/作用域记录都会失败,不能当作空列表。分页不是快照;同总数且未产生重复 ID 的并发替换可能无法识别,读取期间应避免修改该集合。
31
+ `kb list` 自动聚合当前应用、当前用户的所有个人记录,默认每页 50 条,保持 `data.total/items` 输出;`--verbose` 返回完整正文。每页读取摘要,再从同一 KB Service 逐条回读完整详情,核对 ID、应用、作用域、所有者和版本后输出;回读失败或版本变化会使整次列表失败,不返回部分成功。分页总数变化、重复 ID、缺项、非法字段或跨应用/作用域记录都会失败,不能当作空列表。分页不是快照;同总数且未产生重复 ID 的并发替换可能无法识别,读取期间应避免修改该集合。
32
32
 
33
33
  管理请求每次超时为 60 秒,支持取消,不自动重试创建或更新,也不切换后端。写入超时、取消、连接失败、收到 HTTP 5xx 或写入响应无法校验时可能已经保存:保留原文件、应用、身份和返回信息,先用已知 ID 的 `kb detail` 对账;创建未获得 ID 时,通过 `kb list --verbose` 比较标题和完整正文,不直接重发创建。401/403/404/413/429/503 或业务错误均视为失败并按实际提示处理。
34
34
 
@@ -80,11 +80,15 @@ lovrabet kb update --id <id> --file ./approval-v2.md --dry-run
80
80
  lovrabet kb update --id <id> --title "新版订单审批规则" --file ./approval-v2.md
81
81
  ```
82
82
 
83
- 每次管理命令执行固定使用一个 KB Service 地址;省略 `--title` 时,CLI 会从该地址读取当前条目并保留原标题。创建和更新始终通过 JSON 请求提交 `appCode/title/content`,每次只提交一次;失败后先只读对账,不自动重试或切换写入接口。CLI 不按正文大小切换协议,也不设本地正文大小上限;实际请求仍受服务端、网关和进程资源限制。`--dry-run` 展示实际 JSON 接口和包含标题、完整正文的请求体供审阅。空文件会明确将正文清空;缺少 `content` 的普通详情响应是协议错误,不能当作空正文继续覆盖。
83
+ 每次管理命令固定使用一个 KB Service 地址。管理路径为 `/api/knowledge-base/personal`,ID 在参数和输出中保持字符串,不转为数字。详情 POST /personal/get-one 以 JSON body 提交 appCode/id。创建 POST /personal/create 提交 appCode/title/content,200 保存 VO后自动读取详情核对;更新先读版本,POST 到 /personal/update 并在 body 传 appCode、id、expectedVersion,200 保存 VO后核对完整正文、所有者和版本。即使提供 --title 也先读取版本;省略时保留原标题。409 表示版本冲突,保留本地文件,重新读取并确认差异后再决定是否更新,不自动重放。写入成功不等于索引 READY。
84
+
85
+ 创建和更新始终提交 JSON,每次只写一次;失败后先只读对账。正文大小仍受服务端、网关和进程资源限制。`--dry-run` 展示实际方法、路径和完整请求体;更新预演只读当前版本,不写入。空文件明确清空个人正文;详情缺失 content 是协议错误,不能当作空正文继续覆盖。
86
+
87
+ 响应保留 Result 外壳和 userId/ragStatus/ragErrorMessage 字段。JSON long ID 由原始数字文本无损读取,CLI 参数和输出保持字符串。
84
88
 
85
89
  ## RAG 状态
86
90
 
87
- create/update 返回后要检查 `ragStatus` 和 `ragErrorMessage`,按服务端返回的 `READY`、`PENDING`、`UNKNOWN`、`DELETING`、`DELETED` 等状态判断,不只识别旧的 `SYNCED`。如果状态仍在处理或有错误,只能说条目已经写入,不能声称知识检索或聊天使用已经端到端可用。
91
+ create/update 返回后要检查 `ragStatus` 和 `ragErrorMessage`,按服务端返回的 `READY`、`PENDING`、`UNKNOWN`、`DELETING`、`DELETED`、`DISABLED` 等状态判断,不只识别旧的 `SYNCED`。如果状态仍在处理或有错误,只能说条目已经写入,不能声称知识检索或聊天使用已经端到端可用。
88
92
 
89
93
  推荐:
90
94
 
@@ -2,8 +2,8 @@
2
2
  "schemaVersion": 1,
3
3
  "name": "lovrabet",
4
4
  "packageName": "@lovrabet/lovrabet-cli",
5
- "packageVersion": "2.3.6-beta.3",
6
- "skillVersion": "2.3.6-beta.3",
5
+ "packageVersion": "2.3.7-beta.1",
6
+ "skillVersion": "2.3.7-beta.1",
7
7
  "files": [
8
8
  "SKILL.md",
9
9
  "guides/app-resolution.md",
@@ -40,5 +40,5 @@
40
40
  "references/lovrabet-user-account.md",
41
41
  "references/lovrabet-workspace.md"
42
42
  ],
43
- "digest": "0b8e864053de40f6de2de8867117a41f003511840ece035fe7a0ec0fddbc8fb1"
43
+ "digest": "9687132bc2cecef1061207a561177c6e02469b633615c5c735e52ae6a1fe56f7"
44
44
  }