@lovrabet/rabetbase-cli 2.5.4-beta.4 → 2.5.4

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 (388) hide show
  1. package/README.md +8 -2
  2. package/lib/api/api-doc.js +1 -1
  3. package/lib/api/api-group.js +1 -1
  4. package/lib/api/fetch-model-list.js +1 -1
  5. package/lib/api/generate-api-file.js +1 -1
  6. package/lib/api/generate-sdk-config-file.js +1 -1
  7. package/lib/api/legacy-api-file.js +1 -1
  8. package/lib/api/model-registry-file.js +1 -1
  9. package/lib/api/model-registry-scaffold.js +1 -1
  10. package/lib/api/model-source.js +1 -1
  11. package/lib/auth/auth-server-ui.js +1 -1
  12. package/lib/auth/auth-server.js +1 -1
  13. package/lib/auth/constant.js +1 -1
  14. package/lib/auth/get-cookie.js +1 -1
  15. package/lib/auth/get-session-user.js +1 -1
  16. package/lib/auth/is-session-valid.js +1 -1
  17. package/lib/auth/login-success-html.js +1 -1
  18. package/lib/auth/logout.js +1 -1
  19. package/lib/cli-flags.js +1 -1
  20. package/lib/cli.js +1 -1
  21. package/lib/commands/api/generate.js +1 -1
  22. package/lib/commands/api/index.js +1 -1
  23. package/lib/commands/api/list.js +1 -1
  24. package/lib/commands/api/pull.js +1 -1
  25. package/lib/commands/api/shared.js +1 -1
  26. package/lib/commands/app/detail.d.ts +2 -0
  27. package/lib/commands/app/detail.js +1 -0
  28. package/lib/commands/app/index.js +1 -1
  29. package/lib/commands/app/list.js +1 -1
  30. package/lib/commands/app/members-list.js +1 -1
  31. package/lib/commands/app/remote-directory.js +1 -1
  32. package/lib/commands/app/shared.js +1 -1
  33. package/lib/commands/app-config/delete.js +1 -1
  34. package/lib/commands/app-config/get.js +1 -1
  35. package/lib/commands/app-config/index.js +1 -1
  36. package/lib/commands/app-config/list.js +1 -1
  37. package/lib/commands/app-config/set.js +1 -1
  38. package/lib/commands/app-config/shared.js +1 -1
  39. package/lib/commands/auth/index.js +1 -1
  40. package/lib/commands/bff/create.js +1 -1
  41. package/lib/commands/bff/delete.js +1 -1
  42. package/lib/commands/bff/detail.js +1 -1
  43. package/lib/commands/bff/index.js +1 -1
  44. package/lib/commands/bff/list.js +1 -1
  45. package/lib/commands/bff/logs.js +1 -1
  46. package/lib/commands/bff/pull.js +1 -1
  47. package/lib/commands/bff/push.js +1 -1
  48. package/lib/commands/bff/status.js +1 -1
  49. package/lib/commands/cli-skill/index.js +1 -1
  50. package/lib/commands/cli-update.js +1 -1
  51. package/lib/commands/codegen/index.js +1 -1
  52. package/lib/commands/codegen/sdk.js +1 -1
  53. package/lib/commands/codegen/sql.js +1 -1
  54. package/lib/commands/common/app-registry.js +1 -1
  55. package/lib/commands/common/app-selector.js +1 -1
  56. package/lib/commands/common/async-task.js +1 -1
  57. package/lib/commands/common/dry-run.js +1 -1
  58. package/lib/commands/common/flags.js +1 -1
  59. package/lib/commands/common/local-file.js +1 -1
  60. package/lib/commands/common/validate.js +1 -1
  61. package/lib/commands/config/delete.js +1 -1
  62. package/lib/commands/config/get.js +1 -1
  63. package/lib/commands/config/index.js +1 -1
  64. package/lib/commands/config/init.js +1 -1
  65. package/lib/commands/config/list.js +1 -1
  66. package/lib/commands/config/set.js +1 -1
  67. package/lib/commands/config/shared.js +1 -1
  68. package/lib/commands/dataset/batch-design.js +1 -1
  69. package/lib/commands/dataset/business-group-update.js +1 -1
  70. package/lib/commands/dataset/business-groups.js +1 -1
  71. package/lib/commands/dataset/capability.js +1 -1
  72. package/lib/commands/dataset/cross-relation-create.js +1 -1
  73. package/lib/commands/dataset/cross-relation-delete.js +1 -1
  74. package/lib/commands/dataset/cross-relation-list.js +1 -1
  75. package/lib/commands/dataset/cross-relation-shared.js +1 -1
  76. package/lib/commands/dataset/cross-relation-update.js +1 -1
  77. package/lib/commands/dataset/delete.js +1 -1
  78. package/lib/commands/dataset/detail.js +1 -1
  79. package/lib/commands/dataset/extend-update.js +1 -1
  80. package/lib/commands/dataset/field-restore.js +1 -1
  81. package/lib/commands/dataset/field-update.js +1 -1
  82. package/lib/commands/dataset/generate.js +1 -1
  83. package/lib/commands/dataset/index.js +1 -1
  84. package/lib/commands/dataset/list.js +1 -1
  85. package/lib/commands/dataset/operations.js +1 -1
  86. package/lib/commands/dataset/relation-audit.js +1 -1
  87. package/lib/commands/dataset/relation-create.js +1 -1
  88. package/lib/commands/dataset/relation-delete.js +1 -1
  89. package/lib/commands/dataset/relation-shared.js +1 -1
  90. package/lib/commands/dataset/relation-update.js +1 -1
  91. package/lib/commands/dataset/relations.js +1 -1
  92. package/lib/commands/dataset/rename.js +1 -1
  93. package/lib/commands/dataset/restore.js +1 -1
  94. package/lib/commands/dataset/user-deleted-field-list.js +1 -1
  95. package/lib/commands/db/analysis-batching.js +1 -1
  96. package/lib/commands/db/analyze-batch-plan.js +1 -1
  97. package/lib/commands/db/analyze-cancel.js +1 -1
  98. package/lib/commands/db/analyze-start.js +1 -1
  99. package/lib/commands/db/analyze-status.js +1 -1
  100. package/lib/commands/db/create.js +1 -1
  101. package/lib/commands/db/delete.js +1 -1
  102. package/lib/commands/db/detail.js +1 -1
  103. package/lib/commands/db/diff-refresh-start.js +1 -1
  104. package/lib/commands/db/diff-refresh-status.js +1 -1
  105. package/lib/commands/db/diff.js +1 -1
  106. package/lib/commands/db/index.js +1 -1
  107. package/lib/commands/db/list.js +1 -1
  108. package/lib/commands/db/shared.js +1 -1
  109. package/lib/commands/db/table-diff-shared.js +1 -1
  110. package/lib/commands/db/tables.js +1 -1
  111. package/lib/commands/db/test.js +1 -1
  112. package/lib/commands/db/update.js +1 -1
  113. package/lib/commands/deployment/index.js +1 -1
  114. package/lib/commands/deployment/sync-all.js +1 -1
  115. package/lib/commands/deployment/sync-jobs.js +1 -1
  116. package/lib/commands/deployment/sync-status.js +1 -1
  117. package/lib/commands/doctor.js +1 -1
  118. package/lib/commands/file/index.js +1 -1
  119. package/lib/commands/flow/create.js +1 -1
  120. package/lib/commands/flow/detail.js +1 -1
  121. package/lib/commands/flow/index.js +1 -1
  122. package/lib/commands/flow/list.js +1 -1
  123. package/lib/commands/flow/publish.js +1 -1
  124. package/lib/commands/flow/runtime-resources-shared.js +1 -1
  125. package/lib/commands/flow/runtime-role-list.js +1 -1
  126. package/lib/commands/flow/runtime-role-user-list.js +1 -1
  127. package/lib/commands/flow/runtime-user-search.js +1 -1
  128. package/lib/commands/flow/shared.js +1 -1
  129. package/lib/commands/flow/update.js +1 -1
  130. package/lib/commands/flow/validate.js +1 -1
  131. package/lib/commands/instant-api-policy/current.js +1 -1
  132. package/lib/commands/instant-api-policy/index.js +1 -1
  133. package/lib/commands/instant-api-policy/init.js +1 -1
  134. package/lib/commands/instant-api-policy/publish.js +1 -1
  135. package/lib/commands/instant-api-policy/pull.js +1 -1
  136. package/lib/commands/instant-api-policy/revision.js +1 -1
  137. package/lib/commands/instant-api-policy/revisions.js +1 -1
  138. package/lib/commands/instant-api-policy/rollback.js +1 -1
  139. package/lib/commands/instant-api-policy/shared.js +1 -1
  140. package/lib/commands/instant-api-policy/validate.js +1 -1
  141. package/lib/commands/issue/index.js +1 -1
  142. package/lib/commands/issue/nudge.js +1 -1
  143. package/lib/commands/issue/report.js +1 -1
  144. package/lib/commands/issue/shared.js +1 -1
  145. package/lib/commands/kb/create.js +1 -1
  146. package/lib/commands/kb/delete.js +1 -1
  147. package/lib/commands/kb/detail.js +1 -1
  148. package/lib/commands/kb/index.js +1 -1
  149. package/lib/commands/kb/list.js +1 -1
  150. package/lib/commands/kb/search.js +1 -1
  151. package/lib/commands/kb/shared.js +1 -1
  152. package/lib/commands/kb/update.js +1 -1
  153. package/lib/commands/logs/index.js +1 -1
  154. package/lib/commands/menu/asset-update.js +1 -1
  155. package/lib/commands/menu/delete.js +1 -1
  156. package/lib/commands/menu/external-link-create.js +1 -1
  157. package/lib/commands/menu/external-link-update.js +1 -1
  158. package/lib/commands/menu/group-create.js +1 -1
  159. package/lib/commands/menu/group-update.js +1 -1
  160. package/lib/commands/menu/index.js +1 -1
  161. package/lib/commands/menu/list.js +1 -1
  162. package/lib/commands/menu/move.js +1 -1
  163. package/lib/commands/menu/regroup-start.js +1 -1
  164. package/lib/commands/menu/rename.js +1 -1
  165. package/lib/commands/menu/shared/compare-table.js +1 -1
  166. package/lib/commands/menu/shared/delete-plan.js +1 -1
  167. package/lib/commands/menu/shared/facts.js +1 -1
  168. package/lib/commands/menu/shared/index.js +1 -1
  169. package/lib/commands/menu/shared/inquirer.js +1 -1
  170. package/lib/commands/menu/shared/local-pages.d.ts +1 -1
  171. package/lib/commands/menu/shared/local-pages.js +1 -1
  172. package/lib/commands/menu/shared/logic.d.ts +3 -1
  173. package/lib/commands/menu/shared/logic.js +1 -1
  174. package/lib/commands/menu/shared/mutations.js +1 -1
  175. package/lib/commands/menu/shared/path.d.ts +2 -0
  176. package/lib/commands/menu/shared/path.js +1 -0
  177. package/lib/commands/menu/shared/service.d.ts +6 -1
  178. package/lib/commands/menu/shared/service.js +1 -1
  179. package/lib/commands/menu/shared/subapp-assets.d.ts +28 -0
  180. package/lib/commands/menu/shared/subapp-assets.js +1 -0
  181. package/lib/commands/menu/shared/sync-core.d.ts +2 -1
  182. package/lib/commands/menu/shared/sync-core.js +1 -1
  183. package/lib/commands/menu/shared/types.d.ts +14 -4
  184. package/lib/commands/menu/shared/update-core.js +1 -1
  185. package/lib/commands/menu/shared/valid-url.js +1 -1
  186. package/lib/commands/menu/subapp-assets-status.d.ts +2 -0
  187. package/lib/commands/menu/subapp-assets-status.js +1 -0
  188. package/lib/commands/menu/subapp-assets-update.d.ts +2 -0
  189. package/lib/commands/menu/subapp-assets-update.js +1 -0
  190. package/lib/commands/menu/sync.js +1 -1
  191. package/lib/commands/menu/visibility-update.js +1 -1
  192. package/lib/commands/notification/config-create.js +1 -1
  193. package/lib/commands/notification/config-delete.js +1 -1
  194. package/lib/commands/notification/config-list.js +1 -1
  195. package/lib/commands/notification/config-update.js +1 -1
  196. package/lib/commands/notification/index.js +1 -1
  197. package/lib/commands/notification/shared.js +1 -1
  198. package/lib/commands/ocr/index.js +1 -1
  199. package/lib/commands/page/create.js +1 -1
  200. package/lib/commands/page/custom/detail.js +1 -1
  201. package/lib/commands/page/custom/list.js +1 -1
  202. package/lib/commands/page/custom/publish.js +1 -1
  203. package/lib/commands/page/custom/shared.js +1 -1
  204. package/lib/commands/page/custom/syntax.js +1 -1
  205. package/lib/commands/page/custom/update.js +1 -1
  206. package/lib/commands/page/data-list-status.js +1 -1
  207. package/lib/commands/page/generate-start.js +1 -1
  208. package/lib/commands/page/generate-status.js +1 -1
  209. package/lib/commands/page/index.js +1 -1
  210. package/lib/commands/page/pull.js +1 -1
  211. package/lib/commands/page/push.js +1 -1
  212. package/lib/commands/page/relation-audit.js +1 -1
  213. package/lib/commands/page/restore.js +1 -1
  214. package/lib/commands/page/shared.js +1 -1
  215. package/lib/commands/page/sync.js +1 -1
  216. package/lib/commands/project/api-architecture-upgrade.js +1 -1
  217. package/lib/commands/project/create/enhanced-guided-create.js +1 -1
  218. package/lib/commands/project/create/format-elapsed.js +1 -1
  219. package/lib/commands/project/create/main.js +1 -1
  220. package/lib/commands/project/create/materialize-project-template.js +1 -1
  221. package/lib/commands/project/create/project-name.js +1 -1
  222. package/lib/commands/project/create/project-template-archive.js +1 -1
  223. package/lib/commands/project/create/project-template-path.js +1 -1
  224. package/lib/commands/project/create/use-copy-project-template.js +1 -1
  225. package/lib/commands/project/create/use-format-code.js +1 -1
  226. package/lib/commands/project/create/use-install-dependencies.js +1 -1
  227. package/lib/commands/project/domain-routing-sync.js +1 -1
  228. package/lib/commands/project/index.js +1 -1
  229. package/lib/commands/project/upgrade.js +1 -1
  230. package/lib/commands/registry.js +1 -1
  231. package/lib/commands/role/delete.js +1 -1
  232. package/lib/commands/role/detail.js +1 -1
  233. package/lib/commands/role/index.js +1 -1
  234. package/lib/commands/role/list.js +1 -1
  235. package/lib/commands/role/shared.js +1 -1
  236. package/lib/commands/role/update.js +1 -1
  237. package/lib/commands/role/user-add.js +1 -1
  238. package/lib/commands/role/user-remove.js +1 -1
  239. package/lib/commands/role/user-resolve.js +1 -1
  240. package/lib/commands/rule/get.js +1 -1
  241. package/lib/commands/rule/index.js +1 -1
  242. package/lib/commands/rule/list.js +1 -1
  243. package/lib/commands/rule/set.js +1 -1
  244. package/lib/commands/rule/shared.js +1 -1
  245. package/lib/commands/run/index.js +1 -1
  246. package/lib/commands/schema.js +1 -1
  247. package/lib/commands/sql/create.js +1 -1
  248. package/lib/commands/sql/delete.js +1 -1
  249. package/lib/commands/sql/detail.js +1 -1
  250. package/lib/commands/sql/exec.js +1 -1
  251. package/lib/commands/sql/index.js +1 -1
  252. package/lib/commands/sql/list.js +1 -1
  253. package/lib/commands/sql/pull.js +1 -1
  254. package/lib/commands/sql/push.js +1 -1
  255. package/lib/commands/sql/shared.js +1 -1
  256. package/lib/commands/sql/status.js +1 -1
  257. package/lib/commands/sql/validate.js +1 -1
  258. package/lib/commands/task/index.js +1 -1
  259. package/lib/commands/task/status.js +1 -1
  260. package/lib/commands/tenant/index.js +1 -1
  261. package/lib/commands/tenant/members-list.js +1 -1
  262. package/lib/commands/tenant/shared.js +1 -1
  263. package/lib/commands/user-account/dingding-sandbox-bind.js +1 -1
  264. package/lib/commands/user-account/feishu-bind.js +1 -1
  265. package/lib/commands/user-account/index.js +1 -1
  266. package/lib/commands/workspace/add.js +1 -1
  267. package/lib/commands/workspace/index.js +1 -1
  268. package/lib/commands/workspace/remove.js +1 -1
  269. package/lib/config/domain-config.js +1 -1
  270. package/lib/config/project-domain-routing.js +1 -1
  271. package/lib/config/region-config.js +1 -1
  272. package/lib/config/schema.js +1 -1
  273. package/lib/constant/cdn.js +1 -1
  274. package/lib/constant/cli.js +1 -1
  275. package/lib/constant/defaults.js +1 -1
  276. package/lib/constant/domain.js +1 -1
  277. package/lib/constant/env.js +1 -1
  278. package/lib/constant/output.js +1 -1
  279. package/lib/constant/paths.js +1 -1
  280. package/lib/constant/region.js +1 -1
  281. package/lib/constant/risk.js +1 -1
  282. package/lib/constant/routing-profile.js +1 -1
  283. package/lib/context/app-resolver.js +1 -1
  284. package/lib/context/auth-resolver.js +1 -1
  285. package/lib/context/config-loader.js +1 -1
  286. package/lib/context.js +1 -1
  287. package/lib/core/alias-resolver.js +1 -1
  288. package/lib/core/api-client.d.ts +15 -0
  289. package/lib/core/api-client.js +1 -1
  290. package/lib/core/bff/config.js +1 -1
  291. package/lib/core/bff/file-system.js +1 -1
  292. package/lib/core/bff/hash.js +1 -1
  293. package/lib/core/bff/hook-directory.js +1 -1
  294. package/lib/core/bff/lock.js +1 -1
  295. package/lib/core/bff/utils.js +1 -1
  296. package/lib/core/cross-db-relation.js +1 -1
  297. package/lib/core/db-resolver.js +1 -1
  298. package/lib/core/flow-config.js +1 -1
  299. package/lib/core/instant-api-policy/config.js +1 -1
  300. package/lib/core/kb-search-client.js +1 -1
  301. package/lib/core/page/file-system.js +1 -1
  302. package/lib/core/page/hash.js +1 -1
  303. package/lib/core/page/lock.js +1 -1
  304. package/lib/core/page/lr-smart-jsx.js +1 -1
  305. package/lib/core/sql-index-auditor.js +1 -1
  306. package/lib/core/sql-sync/config.js +1 -1
  307. package/lib/core/sql-sync/file-system.js +1 -1
  308. package/lib/core/sql-sync/hash.js +1 -1
  309. package/lib/core/sql-sync/lock.js +1 -1
  310. package/lib/core/sql-sync/utils.js +1 -1
  311. package/lib/core/sql-validator.js +1 -1
  312. package/lib/errors.js +1 -1
  313. package/lib/framework/build-all-flags.js +1 -1
  314. package/lib/framework/error-output.js +1 -1
  315. package/lib/framework/explicit-yes.js +1 -1
  316. package/lib/framework/flags.js +1 -1
  317. package/lib/framework/help.js +1 -1
  318. package/lib/framework/index.js +1 -1
  319. package/lib/framework/output.js +1 -1
  320. package/lib/framework/response.js +1 -1
  321. package/lib/framework/runner-alias.js +1 -1
  322. package/lib/framework/runner.js +1 -1
  323. package/lib/framework/schema-export.js +1 -1
  324. package/lib/framework/supported-flags.js +1 -1
  325. package/lib/framework/types.js +1 -1
  326. package/lib/generated/build-info.d.ts +4 -4
  327. package/lib/generated/build-info.js +1 -1
  328. package/lib/generated/official-routing.js +1 -1
  329. package/lib/generated/routing-contract.js +1 -1
  330. package/lib/help.js +1 -1
  331. package/lib/postinstall.js +1 -1
  332. package/lib/runtime/confirmation.js +1 -1
  333. package/lib/runtime/event.js +1 -1
  334. package/lib/runtime/index.js +1 -1
  335. package/lib/runtime/queue.js +1 -1
  336. package/lib/runtime/resolve.js +1 -1
  337. package/lib/skills/builtin-skill.js +1 -1
  338. package/lib/skills/main.js +1 -1
  339. package/lib/skills/npx-skills-add.js +1 -1
  340. package/lib/skills/skill-presence.js +1 -1
  341. package/lib/telemetry/cli-command-trace.js +1 -1
  342. package/lib/telemetry/cli-help-trace.js +1 -1
  343. package/lib/telemetry/ensure-cli-otel-config.js +1 -1
  344. package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
  345. package/lib/telemetry/send-cli-trace-log.js +1 -1
  346. package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
  347. package/lib/utils/ai_config.js +1 -1
  348. package/lib/utils/apply-jq-filter.js +1 -1
  349. package/lib/utils/cdn-config.js +1 -1
  350. package/lib/utils/check-sdk-version.js +1 -1
  351. package/lib/utils/cli-version-check.js +1 -1
  352. package/lib/utils/cli-version-policy.js +1 -1
  353. package/lib/utils/config.js +1 -1
  354. package/lib/utils/entity-with-id.js +1 -1
  355. package/lib/utils/file-utils.js +1 -1
  356. package/lib/utils/guides-cdn.js +1 -1
  357. package/lib/utils/http-client.js +1 -1
  358. package/lib/utils/is-non-interactive.js +1 -1
  359. package/lib/utils/logger.js +1 -1
  360. package/lib/utils/params.js +1 -1
  361. package/lib/utils/platform.js +1 -1
  362. package/lib/utils/sleep.js +1 -1
  363. package/lib/utils/template-replacer.js +1 -1
  364. package/lib/utils/update-notice.js +1 -1
  365. package/lib/utils/version.js +1 -1
  366. package/lib/utils/with-active-cookie.js +1 -1
  367. package/lib/utils/write-cli-side-channel.js +1 -1
  368. package/package.json +1 -1
  369. package/skills/rabetbase/SKILL.md +21 -12
  370. package/skills/rabetbase/guides/backend-function.md +2 -7
  371. package/skills/rabetbase/guides/bff-creation-workflow.md +24 -23
  372. package/skills/rabetbase/guides/host-frontend-integration.md +62 -0
  373. package/skills/rabetbase/guides/independent-deployment.md +45 -0
  374. package/skills/rabetbase/guides/troubleshooting.md +9 -1
  375. package/skills/rabetbase/references/rabetbase-app-detail.md +31 -0
  376. package/skills/rabetbase/references/rabetbase-bff-detail.md +1 -1
  377. package/skills/rabetbase/references/rabetbase-bff-push.md +2 -2
  378. package/skills/rabetbase/references/rabetbase-data-list-status.md +1 -0
  379. package/skills/rabetbase/references/rabetbase-deployment-sync-all.md +5 -1
  380. package/skills/rabetbase/references/rabetbase-menu-asset-update.md +9 -7
  381. package/skills/rabetbase/references/rabetbase-menu-list.md +2 -2
  382. package/skills/rabetbase/references/rabetbase-menu-subapp-assets-status.md +19 -0
  383. package/skills/rabetbase/references/rabetbase-menu-subapp-assets-update.md +27 -0
  384. package/skills/rabetbase/references/rabetbase-menu-sync.md +40 -14
  385. package/skills/rabetbase/references/rabetbase-page-create.md +1 -1
  386. package/skills/rabetbase/references/rabetbase-page-generate-start.md +5 -3
  387. package/skills/rabetbase/references/rabetbase-page-generate-status.md +1 -0
  388. package/skills/rabetbase.manifest.json +8 -3
@@ -0,0 +1,27 @@
1
+ # menu subapp-assets-update
2
+
3
+ 更新指定菜单宿主中一个已存在的前端子应用共享资源 URL。只替换该条目的 `resources`,保留读取到的加载方式、基础路径、其他条目以及 `extend` 中的其他配置(包括直连数据库设置)。通过 `--resources` 提供完整资源 URL 列表。
4
+
5
+ 正式写入需要目标宿主应用的应用管理员权限。系统管理员、所属租户管理员沿用平台现有权限规则。“宿主”只表示目标应用,不是独立权限角色;其他业务应用的权限不能替代目标宿主应用的权限。仅具有该应用的应用开发者权限时可以查询和预演,但不能更新;预演成功不代表具有写权限。遇到权限不足时说明所需权限,不通过逐菜单更新或切换业务 appCode 绕过。
6
+
7
+ ```bash
8
+ rabetbase menu subapp-assets-update --app-name store --resources '["https://cdn.example.com/store/2/app.js","https://cdn.example.com/store/2/app.css"]' --dry-run --format json
9
+ rabetbase menu subapp-assets-update --app-name store --resources '["https://cdn.example.com/store/2/app.js","https://cdn.example.com/store/2/app.css"]' --expected-hash <data.body.preview.expectedHash> --format json
10
+ rabetbase menu subapp-assets-status --app-name store --format json
11
+ ```
12
+
13
+ `--app-name` 必填,去除首尾空白后精确匹配宿主中已有的 `extend.assets[].appName`。标识沿用平台已有绑定,不随包名或版本变化;CLI 不自动从工程推导,来源与冲突处理见[宿主前端集成指南](../guides/host-frontend-integration.md)。菜单宿主沿用 CLI 的应用选择:可用 `--appcode` / `--app` 指定,否则使用工作区默认应用或唯一应用;多应用未选定目标时提示选择。`defaultApp` 是默认应用上下文,在本命令中作为菜单宿主。前端子应用访问哪些业务 appCode 是独立关系,不根据业务应用列表批量更新。默认应用与目标宿主不同时,用参数覆盖。
14
+
15
+ 本命令不创建子应用条目、不改名、不修改菜单绑定。已有菜单绑定但缺少共享条目时,保留原绑定和菜单资源,使用平台已有配置入口建立同名共享条目,再查询核对;不能因为共享配置缺失就自动改成逐菜单更新。
16
+
17
+ 用户要求更新“子应用版本/子应用资源”时使用本命令;只有明确要求修改菜单自身资源时才使用 `menu asset-update`。同名子应用在不同宿主下分别配置,本次只修改选中的宿主。预演与正式写入必须保持同一宿主、子应用和目标 URL 列表;修改其中任何一项后应重新预演。
18
+
19
+ 用户只给版本号或要求“从 A 升到 B”时,先按[资源版本核验](../guides/host-frontend-integration.md#子应用资源版本核验)确认完整资源 URL 和当前起点;不猜测目标 URL。起始版本不符或无法确认时先澄清,当前配置已匹配目标 URL 时不重复写入。预演指纹用于检测配置漂移,不证明当前配置对应用户指定的起始版本。
20
+
21
+ `--resources` 必填,值为资源 URL 的 JSON 字符串数组。JSON/compress 预演结果位于 `data.body.preview`,返回 `preview.appCode`、`preview.appName`、`preview.before`、`preview.after`、`preview.expectedHash`,不写入。正式结果返回 `data.appCode` 与 `data.appName` 标明实际目标。指纹同时绑定宿主、子应用、目标 URL 列表和当前应用配置;正式执行要求 `--expected-hash` 与本次输入及写前回读配置匹配,写后再次读取管理端应用并核对资源和扩展字段;URL 未变化时不重复写入。命令要求目标子应用条目唯一、应用发布状态可读、资源 URL 为绝对 HTTPS 地址且至少包含一个 JS 入口。
22
+
23
+ 现有应用更新接口整列替换 `extend`,不提供原子并发比较;预演摘要只能阻止已发生的变化,不能消除写前检查与实际写入之间的竞争窗口。更新期间应避免并发修改同一宿主配置。
24
+
25
+ CLI 的保留和回读校验范围是应用读取接口返回的配置,无法证明数据库中未被接口返回的字段得到保留。直接访问数据库不是日常更新的通用前置条件;若发现未知扩展字段或有具体证据表明接口遗漏字段,应单独协调有权限的维护人员进行只读核查,核清后再决定是否更新,不得据管理端回读声称所有数据库字段均已保留。
26
+
27
+ 服务端保存应用时可能触发独立部署自动同步,但命令仅确认管理端回读,`independentDeploymentVerified=false` 不表示目标已生效。本命令不上传文件,也不校验 CDN 文件字节;写入前需确认 CDN 资源已就绪。若写入结果或回读验证不确定,先用 `menu subapp-assets-status` 按相同宿主和子应用核查,不要直接重试。
@@ -1,33 +1,56 @@
1
1
  # menu sync
2
2
 
3
- 扫描本地 `src/pages/**/*.tsx`,把线上缺失的路由注册为平台 `procode` 菜单。
3
+ 将前端子应用工程中平台缺失的页面路由注册为 `procode` 菜单。优先读取 `src/features/routing/routes.json` 中声明的页面路由,包括 `visible: false`;没有该清单时沿用 `src/pages/**/*.tsx` 扫描。命令只注册菜单与资源引用,不上传页面源码或构建资源。
4
+
5
+ 数据列表页和自定义页面走各自的页面创建与发布流程,不使用本命令接入;操作入口见[宿主前端集成指南](../guides/host-frontend-integration.md)。
4
6
 
5
7
  > **风险等级:write** — 修改平台菜单配置。
6
8
 
7
- ## 命令
9
+ ## 默认引导:Agent 按菜单树注册
10
+
11
+ 前端子应用优先由 Agent 按业务菜单树规划,再调用 `menu sync` 注册页面并引用子应用共享资源。`menu sync` 是新旧流程共用的注册命令;作为兼容兜底保留的是手动扫描、逐菜单填写资源及原有批量操作方式。交互向导、`--yes` 全量同步、`--paths` 精确选择及默认根级创建均保持兼容,不增加 CLI 参数门禁。
12
+
13
+ 1. 读取项目路由和 `menu list --verbose` 的 `id / parentId / type / path / extend.appName`,核实菜单宿主,按[宿主前端集成指南](../guides/host-frontend-integration.md) 确定本工程的绑定,优先复用现有分组。源码目录和 URL 层次不等于业务菜单层次。
14
+ 2. 展示拟创建的菜单树,注明新增分组、页面显隐和子应用绑定。只有业务归属不明确时才询问用户;已明确的根级页面可正常创建。
15
+ 3. 缺失分组用 `menu group-create` 按父子顺序创建并回读,取得真实 ID。分组重名时按父链定位,不猜测名称对应关系。
16
+ 4. 用 `menu subapp-assets-status` 核查共享资源。子应用页面优先传 `appName`,通常不传菜单 JS/CSS。查询失败或共享资源缺失不等于用户选择了旧路径,不自动改写成逐菜单资源。
17
+ 5. Agent 默认按明确 `--paths`、`parentId` 或路由清单里的 `group` 预演和创建。不同父节点分批处理,或复用清单中能唯一匹配的分组;不要给跨组页面统一覆盖一个父节点。用户明确采用原有全量或交互流程时,沿用其选择。
18
+ 6. 用 `menu list --verbose` 回读父节点、排序、显隐及 `extend.appName` 绑定,不只按创建数量报告成功。请求结果未知时先回读,不盲目重试。已有菜单默认保留层次,移动或重组是独立操作。
19
+
20
+ 子应用版本升级使用 `menu subapp-assets-update`,不批量更新菜单 URL。共享资源与菜单兜底 URL 不同,应分别报告,不能直接判断子应用版本不一致。
21
+
22
+ ```bash
23
+ # 示例中的 42 应替换为已核实的目录 ID
24
+ rabetbase menu list --appcode <host-appcode> --verbose --format compress
25
+ rabetbase menu subapp-assets-status --appcode <host-appcode> --app-name store-app --format compress
26
+ rabetbase menu sync --appcode <host-appcode> --paths "/record-detail" --params '{"appName":"store-app","parentId":42,"visible":false}' --dry-run --format compress
27
+ rabetbase menu sync --appcode <host-appcode> --paths "/record-detail" --params '{"appName":"store-app","parentId":42,"visible":false}' --yes --format compress
28
+ ```
29
+
30
+ ## 兜底:原有终端与脚本路径
31
+
32
+ 这些用法保持兼容。没有分组信息的新页面按原行为创建到根级,不会把已有菜单打平或移动。涉及业务分组时先核对预演结果,避免误把新页面全部放到根级。
8
33
 
9
34
  ```bash
10
- # 交互模式(TTY)
35
+ # 交互向导仍可使用
11
36
  rabetbase menu sync
12
37
 
13
- # 发现待同步页面的真实 path,不写入
38
+ # 查看全部待同步页面,不写入
14
39
  rabetbase menu sync --dry-run --format json
15
40
 
16
- # 按 targetPages[].path 精确预览
17
- rabetbase menu sync --paths "<local-page-path>" --params '{"jsUrl":"https://cdn.example.com/app.js"}' --dry-run --format compress
18
-
19
- # 静默全量同步
41
+ # 原有全量同步仍可使用
20
42
  rabetbase menu sync --yes
21
43
 
22
- # 静默部分同步(预填 URL 和精确 path)
23
- rabetbase menu sync --paths "<local-page-path-1>,<local-page-path-2>" --params '{"jsUrl":"https://...js","cssUrl":"https://...css"}' --yes
44
+ # 原有指定路径、菜单资源用法仍可使用
45
+ rabetbase menu sync --paths "<local-page-path>" --params '{"jsUrl":"https://cdn.example.com/app.js"}' --dry-run --format compress
46
+ rabetbase menu sync --paths "<local-page-path>" --params '{"jsUrl":"https://cdn.example.com/app.js"}' --yes --format compress
24
47
  ```
25
48
 
26
49
  ## 参数
27
50
 
28
51
  | Flag | 类型 | 必填 | 默认 | 说明 |
29
52
  |------|------|------|------|------|
30
- | `--params <json>` | string | 否 | — | 预填 JS/CSS URL。JSON 格式:`{"jsUrl":"...","cssUrl":"..."}` |
53
+ | `--params <json>` | string | 否 | — | 可填 `jsUrl`、`cssUrl`、`appName`、`visible`、`parentId`。`visible` 为布尔值,`parentId` 为非负整数 |
31
54
  | `--paths <csv>` | string | 否 | — | 按本地页面 path 精确选择;值来自 dry-run 的 `targetPages[].path` |
32
55
  | `--yes` | boolean | 否 | — | 确认非交互执行;未传 `--paths` 时创建全部本地未上线页面 |
33
56
  | `--dry-run` | boolean | 否 | `false` | 复用真实扫描、线上 diff 和 URL 校验,返回计划但不创建菜单 |
@@ -37,7 +60,7 @@ rabetbase menu sync --paths "<local-page-path-1>,<local-page-path-2>" --params '
37
60
 
38
61
  1. **`--yes`** — 非交互同步;未传 `--paths` 时创建全部本地未在平台上的页面
39
62
  2. **`--paths` + `--yes`** — 按本地 path 精确同步指定页面
40
- 3. **TTY 交互式** — 展示名称、path 与线上状态 → checkbox 选择未注册页面 → 输入 JS/CSS URL → 确认 → 执行创建
63
+ 3. **TTY 交互式** — 展示名称、path 与线上状态 → checkbox 选择未注册页面 → 填写 JS/CSS URL 或使用已配置子应用 → 确认 → 执行创建
41
64
 
42
65
  ## 输出
43
66
 
@@ -47,12 +70,15 @@ rabetbase menu sync --paths "<local-page-path-1>,<local-page-path-2>" --params '
47
70
 
48
71
  ## 提示
49
72
 
50
- - 本地页面扫描 `src/pages` 目录
73
+ - 有 `src/features/routing/routes.json` 时只同步清单中的有效页面;每项必须有存在的 `pageFile`、一致的 `path`、非空 `label` 和布尔 `visible`。隐藏页面也必须注册菜单,`visible: false` 只控制导航显隐
74
+ - 清单可选 `group` 与 `order`。显式 `--params.parentId` 优先于清单 `group`:非零 ID 指向的节点不存在或不是当前宿主中的 folder 时拒绝,`0` 表示根节点。未指定 `parentId` 时,若提供了 `group`,则必须匹配宿主中唯一的 folder;两者均未提供时,保留原有根级创建行为
75
+ - 无清单时扫描 `src/pages`,保持原有项目兼容
51
76
  - 同步前会获取线上菜单列表做 diff
52
77
  - path 是稳定选择器,名称只用于展示;多个 path 必须全部匹配
53
- - 已在平台存在的 path 不会重复创建
78
+ - path 比较统一忽略首尾斜杠,重复选择同一路径只创建一次;已在平台存在的 path 不会重复创建
54
79
  - 交互模式下会展示 compare table(名称、path、本地与线上状态)
55
80
  - CLI 只注册菜单和资源引用,不构建、不上传源码或静态资源
81
+ - `--params.appName` 将页面绑定到菜单宿主的同名前端子应用共享资源。菜单宿主使用 CLI 当前选中的应用,支持工作区默认应用或唯一应用,也可用 `--appcode` / `--app` 覆盖;子应用访问的业务 appCode 是独立关系。子应用资源在支持该机制的宿主中优先生效;不填 JS/CSS 时 CLI 会先确认同名共享资源非空,菜单资源留空。仍须核对目标宿主支持共享资源
56
82
  - 当前 React/Vite 模板使用 `loadScriptMode=import`;资源 URL 指向已部署的 CDN 构建产物
57
83
 
58
84
  ## 参考
@@ -1,6 +1,6 @@
1
1
  # page create
2
2
 
3
- 创建 JSX 自定义页面,并同时创建菜单入口。命令固定返回 `pageType=CUSTOM`。
3
+ 创建自定义页面,并同时创建菜单入口。命令固定返回 `pageType=CUSTOM`。
4
4
 
5
5
  该命令不接受 `--page-type`。工作台、看板、门户或复杂交互仍然属于 CUSTOM 页面;`rabetbase project` 管理独立子应用工程,不是页面类型或复杂页面的兜底入口。
6
6
 
@@ -2,10 +2,12 @@
2
2
 
3
3
  异步提交或复用数据列表页(Data List Page)生成任务。
4
4
 
5
+ 生成流程会在生成页面后自动创建菜单入口,无需额外绑定子应用 appName 或执行 `menu sync`。提交成功仅表示任务已受理;跟进原任务,并核对完整页面组及对应菜单事实后,再报告页面和菜单已就绪。
6
+
5
7
  ## 命令
6
8
 
7
9
  ```bash
8
- # 默认行为:仅预览,不调用平台 API
10
+ # 默认行为:仅预览,会读取前置事实,不提交生成任务
9
11
  rabetbase page generate-start --datasetcode 097b7361b76c42bcb12b923fa5a08861 --format json
10
12
  rabetbase page generate-start --alias order --format json
11
13
  rabetbase page generate-start --datasetcode 097b7361b76c42bcb12b923fa5a08861 --dry-run --format json
@@ -22,8 +24,8 @@ rabetbase page generate-start --alias order --apply --format json
22
24
  - CLI 会先执行 `page data-list-status` 做前置判定;底层仍调用既有服务端 `standard-page-status` 接口。
23
25
  - 若允许生成且传入 `--apply`,CLI 会自动生成 `clientOperationId`,并调用 Java 侧 `generate-standard-pages/start`。
24
26
  - 提交结果固定返回 `pageType=DATA_LIST` 与 `pagePattern=CRUD_PAGE_SET`;命令不接受 `--page-type` 或 `--page-pattern`。
25
- - 返回结果里的 `operationId` 是服务端 job 主标识;`clientOperationId` 是调用方恢复 / 幂等锚点。
26
- - `query.command` 默认给出 `operationId` 查询;调用方若只保留了 `clientOperationId`,也可以用它恢复到同一条任务查询。
27
+ - 返回结果里的 `taskId` 是首选查询标识;`operationId` 用于兼容旧响应,`clientOperationId` 是调用方恢复 / 幂等锚点。
28
+ - `query.command` 优先使用 `taskId`,缺失时使用 `operationId`,再回退到 `clientOperationId`,查询时只携带其中一个标识。
27
29
  - Agent / 自动化编排优先直接复用返回值里的 `query.command`,不要自己重新拼接恢复查询命令。
28
30
  - Agent 自动化场景下,编排器应先跑一次默认预览校验候选数据集,再带 `--apply` 提交;不应直接对所有数据集跑 `--apply`。
29
31
 
@@ -21,6 +21,7 @@ rabetbase page generate-status --datasetcode 097b7361b76c42bcb12b923fa5a08861 --
21
21
 
22
22
  - 命令查询的是**任务状态**,不是页面事实。
23
23
  - 当任务进入成功终态时,CLI 会补查 `page data-list-status`,把页面事实一并附在结果里,方便你直接判断是否形成完整数据列表页组。
24
+ - 生成流程自动创建菜单入口;成功终态仍需核对完整页面组及对应菜单事实。预期菜单入口缺失时如实报告并核查,不报告整体就绪,也不自动用 `menu sync` 补建。
24
25
  - 若任务仍在 `PENDING/PROCESSING/RUNNING`,结果会保持机器可读的 `status / nextAction / query`。
25
26
  - 提交生成后保存 `taskId`、`operationId` 与 `clientOperationId`;超时、未知状态或网络失败时复用原标识查询,不重新执行 `generate-start --apply`,不得自动重提。
26
27
  - 成功终态时,页面组锚点位于 `data.dataListPageStatus.pageSets[].versionTag`。存在多个完整组、残留页或冲突时交给用户确认,不猜测 `versionTag`。
@@ -2,8 +2,8 @@
2
2
  "schemaVersion": 1,
3
3
  "name": "rabetbase",
4
4
  "packageName": "@lovrabet/rabetbase-cli",
5
- "packageVersion": "2.5.4-beta.4",
6
- "skillVersion": "2.5.4-beta.4",
5
+ "packageVersion": "2.5.4",
6
+ "skillVersion": "2.5.4",
7
7
  "files": [
8
8
  "SKILL.md",
9
9
  "guides/approval-flow-development-workflow.md",
@@ -18,6 +18,8 @@
18
18
  "guides/data-api-guidelines.md",
19
19
  "guides/database-connection-workflow.md",
20
20
  "guides/frontend-development.md",
21
+ "guides/host-frontend-integration.md",
22
+ "guides/independent-deployment.md",
21
23
  "guides/legacy-application-blueprint-workflow.md",
22
24
  "guides/menu-anomaly-manual-cleanup.md",
23
25
  "guides/page-development-workflow.md",
@@ -43,6 +45,7 @@
43
45
  "references/rabetbase-api-list.md",
44
46
  "references/rabetbase-api-pull.md",
45
47
  "references/rabetbase-app-config.md",
48
+ "references/rabetbase-app-detail.md",
46
49
  "references/rabetbase-app-list.md",
47
50
  "references/rabetbase-app-members-list.md",
48
51
  "references/rabetbase-auth-login.md",
@@ -109,6 +112,8 @@
109
112
  "references/rabetbase-menu-move.md",
110
113
  "references/rabetbase-menu-regroup-start.md",
111
114
  "references/rabetbase-menu-rename.md",
115
+ "references/rabetbase-menu-subapp-assets-status.md",
116
+ "references/rabetbase-menu-subapp-assets-update.md",
112
117
  "references/rabetbase-menu-sync.md",
113
118
  "references/rabetbase-menu-visibility-update.md",
114
119
  "references/rabetbase-notification-config-list.md",
@@ -150,5 +155,5 @@
150
155
  "references/rabetbase-user-account.md",
151
156
  "references/rabetbase-workspace.md"
152
157
  ],
153
- "digest": "e1381f35f9285560710dd0866fe6a155b9c0fed7ed937c8da8f723eafd12eaa1"
158
+ "digest": "74a9c0d783a16c3b0881f4bfcbae651c32b3c540d5c9d1cbe24ecf80f0bda0b4"
154
159
  }