@lark-base-open/base-database-cli 1.3.7 → 1.3.9

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 (105) hide show
  1. package/CHANGELOG.md +42 -0
  2. package/README.md +2 -0
  3. package/dist/ai-functions.d.ts +11 -0
  4. package/dist/ai-functions.d.ts.map +1 -1
  5. package/dist/ai-functions.js +118 -9
  6. package/dist/ai-functions.js.map +1 -1
  7. package/dist/archive.d.ts +16 -2
  8. package/dist/archive.d.ts.map +1 -1
  9. package/dist/archive.js +63 -13
  10. package/dist/archive.js.map +1 -1
  11. package/dist/deploy.d.ts +4 -0
  12. package/dist/deploy.d.ts.map +1 -1
  13. package/dist/deploy.js +26 -8
  14. package/dist/deploy.js.map +1 -1
  15. package/dist/function-description.d.ts +6 -0
  16. package/dist/function-description.d.ts.map +1 -0
  17. package/dist/function-description.js +29 -0
  18. package/dist/function-description.js.map +1 -0
  19. package/dist/init.d.ts +1 -1
  20. package/dist/init.d.ts.map +1 -1
  21. package/dist/init.js +4 -3
  22. package/dist/init.js.map +1 -1
  23. package/dist/lark-cli-error.d.ts +2 -0
  24. package/dist/lark-cli-error.d.ts.map +1 -1
  25. package/dist/lark-cli-error.js +42 -7
  26. package/dist/lark-cli-error.js.map +1 -1
  27. package/dist/lark-cli.d.ts.map +1 -1
  28. package/dist/lark-cli.js +16 -4
  29. package/dist/lark-cli.js.map +1 -1
  30. package/dist/mutation.d.ts +1 -1
  31. package/dist/mutation.d.ts.map +1 -1
  32. package/dist/mutation.js +5 -5
  33. package/dist/mutation.js.map +1 -1
  34. package/dist/program.d.ts.map +1 -1
  35. package/dist/program.js +7 -2
  36. package/dist/program.js.map +1 -1
  37. package/dist/project-context.d.ts.map +1 -1
  38. package/dist/project-context.js +42 -6
  39. package/dist/project-context.js.map +1 -1
  40. package/dist/public-sql-error.d.ts.map +1 -1
  41. package/dist/public-sql-error.js +2 -18
  42. package/dist/public-sql-error.js.map +1 -1
  43. package/dist/pull.d.ts +1 -0
  44. package/dist/pull.d.ts.map +1 -1
  45. package/dist/pull.js +13 -0
  46. package/dist/pull.js.map +1 -1
  47. package/package.json +1 -1
  48. package/skills/lark-base-database/SKILL.md +32 -12
  49. package/skills/lark-base-database/references/ai-function.md +19 -7
  50. package/skills/lark-base-database/references/base-capability-routing.md +4 -4
  51. package/skills/lark-base-database/references/base-sql-errors.generated.md +845 -0
  52. package/skills/lark-base-database/references/database-function-limitations.md +20 -37
  53. package/skills/lark-base-database/references/database-function.md +39 -42
  54. package/skills/lark-base-database/references/development.md +4 -2
  55. package/skills/lark-base-database/references/faas.md +9 -7
  56. package/skills/lark-base-database/references/file-transfer.md +1 -1
  57. package/skills/lark-base-database/references/frontend-design-guide.md +163 -33
  58. package/skills/lark-base-database/references/mutations.md +4 -4
  59. package/skills/lark-base-database/references/notifications.md +9 -9
  60. package/skills/lark-base-database/references/release.md +10 -10
  61. package/skills/lark-base-database/references/style-guide.md +2 -2
  62. package/skills/lark-base-database/references/verification.md +6 -4
  63. package/skills/lark-base-database/references/workspace.md +15 -13
  64. package/templates/database-starter/gitignore +7 -0
  65. package/templates/database-starter/mutations/README.md +1 -1
  66. package/templates/database-starter/page/package-lock.json +4 -4
  67. package/templates/database-starter/page/package.json +1 -1
  68. package/templates/database-starter/page/src/components/floating-button/assets/toast-close.svg +3 -0
  69. package/templates/database-starter/page/src/components/floating-button/assets/toast-info.svg +5 -0
  70. package/templates/database-starter/page/src/components/floating-button/assets/tooltip-caret.svg +3 -0
  71. package/templates/database-starter/page/src/components/floating-button/index.tsx +140 -25
  72. package/templates/database-starter/page/src/components/floating-button/utils/request-edit.test.ts +42 -0
  73. package/templates/database-starter/page/src/components/floating-button/utils/request-edit.ts +21 -0
  74. package/templates/database-starter/page/src/main.test.ts +28 -0
  75. package/templates/database-starter/page/src/main.tsx +2 -0
  76. package/skills/lark-base-database/references/design/components/actions-fields.md +0 -16
  77. package/skills/lark-base-database/references/design/components/code/controls.css +0 -122
  78. package/skills/lark-base-database/references/design/components/code/controls.tsx +0 -73
  79. package/skills/lark-base-database/references/design/components/code/date-picker.tsx +0 -42
  80. package/skills/lark-base-database/references/design/components/code/floating.tsx +0 -41
  81. package/skills/lark-base-database/references/design/components/code/overlays.tsx +0 -19
  82. package/skills/lark-base-database/references/design/components/code/select.tsx +0 -34
  83. package/skills/lark-base-database/references/design/components/code/styles.d.ts +0 -1
  84. package/skills/lark-base-database/references/design/components/code/theme.css +0 -49
  85. package/skills/lark-base-database/references/design/components/code/usage.tsx +0 -38
  86. package/skills/lark-base-database/references/design/components/date-time-number.md +0 -9
  87. package/skills/lark-base-database/references/design/components/feedback-navigation.md +0 -9
  88. package/skills/lark-base-database/references/design/components/index.md +0 -18
  89. package/skills/lark-base-database/references/design/components/overlays.md +0 -9
  90. package/skills/lark-base-database/references/design/components/patterns/flat-business.md +0 -7
  91. package/skills/lark-base-database/references/design/components/selection.md +0 -24
  92. package/skills/lark-base-database/references/design/components.md +0 -91
  93. package/skills/lark-base-database/references/design/composition.md +0 -90
  94. package/skills/lark-base-database/references/design/control-recipes.md +0 -107
  95. package/skills/lark-base-database/references/design/examples.md +0 -172
  96. package/skills/lark-base-database/references/design/foundations.md +0 -126
  97. package/skills/lark-base-database/references/design/review.md +0 -82
  98. package/skills/lark-base-database/references/design/scenes/analysis-report.md +0 -66
  99. package/skills/lark-base-database/references/design/scenes/brand-showcase.md +0 -70
  100. package/skills/lark-base-database/references/design/scenes/business-operations.md +0 -85
  101. package/skills/lark-base-database/references/design/scenes/campaign-report.md +0 -66
  102. package/skills/lark-base-database/references/design/scenes/dashboard.md +0 -77
  103. package/skills/lark-base-database/references/design/scenes/festive-campaign.md +0 -69
  104. package/skills/lark-base-database/references/design/theme.md +0 -27
  105. package/skills/lark-base-database/references/design/typography.md +0 -56
@@ -58,24 +58,8 @@ export function readPublicSQLError(value) {
58
58
  }
59
59
  return result;
60
60
  }
61
+ // The server owns the complete agent-facing message, including semantic code and LogID.
61
62
  export function formatPublicSQLError(error) {
62
- const lines = [error.code + ' (' + error.category + '): ' + error.message];
63
- for (const d of error.diagnostics ?? []) {
64
- lines.push([
65
- d.code,
66
- d.phase,
67
- d.position === undefined ? undefined : 'position=' + d.position,
68
- d.message,
69
- d.hint,
70
- d.action,
71
- ]
72
- .filter((v) => v !== undefined && v !== '')
73
- .join('; '));
74
- }
75
- if (error.parameter)
76
- lines.push('parameter=' + JSON.stringify(error.parameter));
77
- if (error.logid)
78
- lines.push('LogID: ' + error.logid);
79
- return lines.join('\n');
63
+ return error.message;
80
64
  }
81
65
  //# sourceMappingURL=public-sql-error.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"public-sql-error.js","sourceRoot":"","sources":["../src/public-sql-error.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"public-sql-error.js","sourceRoot":"","sources":["../src/public-sql-error.ts"],"names":[],"mappings":"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"}
package/dist/pull.d.ts CHANGED
@@ -15,6 +15,7 @@ export declare function pullProject(options: PullOptions): Promise<{
15
15
  source: 'artifact';
16
16
  config: string;
17
17
  catalog: string;
18
+ aiFunctions: import("./ai-functions.js").AIFunctionRestoreResult;
18
19
  }>;
19
20
  export {};
20
21
  //# sourceMappingURL=pull.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"pull.d.ts","sourceRoot":"","sources":["../src/pull.ts"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AA+BvD,UAAU,WAAW;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,cAAc,CAAC;CACjC;AA2ZD,wBAAsB,WAAW,CAAC,OAAO,EAAE,WAAW;;;;;;YAsGxC,UAAU;;;GASvB"}
1
+ {"version":3,"file":"pull.d.ts","sourceRoot":"","sources":["../src/pull.ts"],"names":[],"mappings":"AAuBA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAsCvD,UAAU,WAAW;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,cAAc,CAAC;CACjC;AAiaD,wBAAsB,WAAW,CAAC,OAAO,EAAE,WAAW;;;;;;YA6GxC,UAAU;;;;GAUvB"}
package/dist/pull.js CHANGED
@@ -4,6 +4,7 @@ import { basename, dirname, join, posix, resolve } from 'node:path';
4
4
  import { pipeline } from 'node:stream/promises';
5
5
  import CRC32 from 'crc-32';
6
6
  import yauzl from 'yauzl';
7
+ import { restoreRemoteAIFunctions } from './ai-functions.js';
7
8
  import { starterRoot } from './assets.js';
8
9
  import { CONFIG_FILE_NAME, writeConfig } from './config.js';
9
10
  import { ONLINE_RUNTIME_PROFILE, resolveRuntimeProfile, } from './environment.js';
@@ -12,6 +13,12 @@ import { DATABASE_FUNCTIONS_DIRECTORY, LEGACY_DATABASE_FUNCTIONS_DIRECTORY, } fr
12
13
  const MAX_ARCHIVE_BYTES = 32 * 1024 * 1024;
13
14
  const MAX_FILES = 20_000;
14
15
  const MAX_EXPANDED_BYTES = 512 * 1024 * 1024;
16
+ const PACKAGE_MANAGER_CONFIG_FILES = new Set([
17
+ '.npmrc',
18
+ '.yarnrc',
19
+ '.yarnrc.yml',
20
+ '.pnpmrc',
21
+ ]);
15
22
  const ALLOWED_ROOTS = new Set([
16
23
  'page',
17
24
  'server-functions',
@@ -76,6 +83,9 @@ function validateEntryName(fileName, directory) {
76
83
  if (rest.some((part) => part === '.env' || part.startsWith('.env.'))) {
77
84
  throw pullError('UNSAFE_SOURCE_ARCHIVE', `Environment files are not allowed in source archives: ${fileName}`);
78
85
  }
86
+ if (rest.some((part) => PACKAGE_MANAGER_CONFIG_FILES.has(part))) {
87
+ throw pullError('UNSAFE_SOURCE_ARCHIVE', `Package manager config files are not allowed in source archives: ${fileName}`);
88
+ }
79
89
  return normalized;
80
90
  }
81
91
  function entryKind(entry) {
@@ -345,6 +355,8 @@ export async function pullProject(options) {
345
355
  },
346
356
  },
347
357
  });
358
+ // AI Function 配置不在源码制品里;由 pull 直接恢复,避免要求 Agent 自行判断何时 list/pull。
359
+ const aiFunctions = restoreRemoteAIFunctions(appToken, staging, env, staging);
348
360
  await addAuxiliaryFiles(staging);
349
361
  await replaceEmptyWorkspace(workspace, staging, workspaceExisted);
350
362
  return {
@@ -356,6 +368,7 @@ export async function pullProject(options) {
356
368
  source: 'artifact',
357
369
  config: join(workspace, CONFIG_FILE_NAME),
358
370
  catalog: join(workspace, 'catalog.json'),
371
+ aiFunctions,
359
372
  };
360
373
  }
361
374
  finally {
package/dist/pull.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"pull.js","sourceRoot":"","sources":["../src/pull.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pull.js","sourceRoot":"","sources":["../src/pull.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lark-base-open/base-database-cli",
3
- "version": "1.3.7",
3
+ "version": "1.3.9",
4
4
  "description": "CLI and Agent Skill for building database applications on Lark Base.",
5
5
  "type": "module",
6
6
  "bin": {
@@ -7,16 +7,23 @@ metadata:
7
7
 
8
8
  # Lark Base Database
9
9
 
10
- 将业务需求实现为基于真实 Base 数据、可维护且可验证的 应用。先选择任务路径,再读取所需协议;不要在任务开始时读取全部 reference。同一文件在首次进入相关阶段时读取,内容或任务范围变化后再补读。
10
+ 将业务需求实现为基于真实 Base 数据、可维护且可验证的应用。先选择任务路径,再读取所需协议;不要在任务开始时读取全部 reference。同一文件在首次进入相关阶段时读取,内容或任务范围变化后再补读。
11
11
 
12
12
  CLI 使用 `--app-token`、配置字段 `appToken`、`base-database.jsonc` 和 `.base-database-cli/state/`,不读取旧配置或旧状态,不接受旧参数。服务端 `/sites/` 路径、SDK 的 `siteToken` 和宿主 `BASE_SITE_BUILDER_*` 环境变量保持原协议;将宿主提供的应用 token 传给 `--app-token`,不改造外部协议。
13
13
 
14
14
  账号选择遵守[工程与环境的 profile 约定](references/workspace.md#账号选择);直接调用原生 lark-cli 时也使用同一个 profile。
15
15
  `lark-cli` 的账号管理和文档命令按环境提供,不是所有宿主的必备能力;首次选择入口及缺少命令时按[环境与依赖](references/workspace.md#环境与依赖)处理。
16
16
 
17
+ ### 首次使用前的环境准备
18
+
19
+ 本地公开环境首次使用时,先确认依赖再进入任务路由;托管环境使用宿主已提供的 CLI 与凭证,跳过本节。
20
+
21
+ 1. 确认 `lark-cli` 与 `base-database-cli` 都可执行;任一缺失时按[环境与依赖](references/workspace.md#环境与依赖)中的安装命令或回退入口处理,不猜测包名或全盘搜索。
22
+ 2. 执行 `base-database-cli doctor`。返回未配置或未登录(`not_configured`、`token_missing`、`need_user_authorization`)时执行 `base-database-cli auth login`,由用户在浏览器完成授权后重新执行 `doctor`;`ok` 为 `true` 后再执行 `init`。`init`、`pull` 不会自动触发登录。
23
+
17
24
  ### Base Database 权限不足时重新授权
18
25
 
19
- CLI 明确报告 `app_scope_not_applied`、`missing_scopes` 等 scope 权限不足错误时,向用户说明原因,并使用本任务已选定的 CLI 入口和同一 profile 执行 `base-database-cli auth login`,申请构建应用所需的权限。若错误另有应用权限开通或额外 scope 的处理要求,按错误提示处理。用户完成授权后只重试原命令一次;仍失败时停止并保留原错误,不循环授权。其他错误按其原因处理。
26
+ CLI 明确报告 `app_scope_not_applied`、`missing_scopes` 等 scope 权限不足错误时,向用户说明原因,并使用本任务已选定的 CLI 入口和同一 profile 执行 `base-database-cli auth login`,申请构建应用所需的权限。若错误另有应用权限开通或额外 scope 的处理要求,按错误提示处理。用户完成授权后只重试原命令一次;仍失败时停止并保留原错误,不循环授权。其他错误按其原因处理。AI Function 管理命令或 `deploy` 返回 `800004011`(`ai function feature is not enabled`)不是 scope 问题,`auth login` 无效;按[未开通 AI Function](references/ai-function.md#未开通-ai-function-时) 降级处理。
20
27
 
21
28
  ### 公开 CLI 版本预检
22
29
 
@@ -28,7 +35,7 @@ CLI 明确报告 `app_scope_not_applied`、`missing_scopes` 等 scope 权限不
28
35
  | ------------------------ | ------------------------------------------------------------------ | --------------------------------------------------------- | ----------------------------------------------------------------------------------------- |
29
36
  | 新建系统 | 明确需求与访问模型 → 确定 Base 来源 → 初始化 → 开发 → Preview 交付 | `init` → `deploy` | [工程与环境](references/workspace.md)、[权限设计](references/permission-design.md) |
30
37
  | 修改已有系统 | 确认现有工程 → 判断影响范围 → 增量修改 → 验证与交付 | 按影响范围修改,必要时 `deploy` | [工程与环境](references/workspace.md),再读取受影响的协议 |
31
- | 恢复远端工程 | 确认本地状态和 应用 → 恢复源码与 Catalog → 继续原任务 | 按来源选择 `pull` 或 `init` | [工程与环境](references/workspace.md) |
38
+ | 恢复远端工程 | 确认本地状态和应用 → 恢复源码与 Catalog → 继续原任务 | 按来源选择 `pull` 或 `init` | [工程与环境](references/workspace.md) |
32
39
  | 设计或评审 | 按评审范围分析并输出,不创建资源或发布 | 只读分析 | [工程质量](references/style-guide.md),涉及权限、查询或视觉时读取对应专项 |
33
40
  | 排查故障 | 收集证据 → 定位失败阶段 → 按用户要求诊断或修复 | `deployments status`、`doctor` 或项目级 `lark-cli -- ...` | [诊断与验收](references/verification.md),再读取失败链路的协议 |
34
41
  | 补齐新建 Base 的示例数据 | 读取字段与人员 → CLI 写入 → 页面 Database Function 回读 → 交付 | `lark-cli -- base +record-batch-create`,再按协议调用 Database Function | [示例数据验收](references/release.md#从零建站示例数据验收),即使 Preview 已发布也先读此节 |
@@ -41,9 +48,11 @@ CLI 明确报告 `app_scope_not_applied`、`missing_scopes` 等 scope 权限不
41
48
 
42
49
  ## 开发阶段路由
43
50
 
51
+ 新增或修改 Database Function、Mutation、FaaS 时,按[函数能力描述](references/database-function.md#函数能力描述)维护可供站点助手发现的用途与调用影响。
52
+
44
53
  | 需要完成的工作 | 必读协议 |
45
54
  | ----------------------------------------------------- | --------------------------------------------------------------------------------------- |
46
- | 首次实现页面、整体视觉改版或视觉评审 | [前端设计风格指导](references/frontend-design-guide.md) |
55
+ | 首次实现页面、整体视觉改版或视觉评审 | [前端设计指南](references/frontend-design-guide.md) |
47
56
  | 修改布局、颜色、排版或控件样式 | 上述设计指导的相关章节,沿用现有设计系统;与视觉无关的修改不重读 |
48
57
  | Page runtime、组件接入或 Function 调用 | [Page 开发](references/development.md) |
49
58
  | AI 对话、生成、分类、总结、文生图、文生视频或模型调用 | [AI Function](references/ai-function.md),并结合 [Page 开发](references/development.md) |
@@ -66,7 +75,9 @@ AI 能力路由统一使用版本化托管的 AI Function。Page 从 `database-r
66
75
 
67
76
  需要模型参与当前页面业务流程时,AI Function 是默认选择。例如点餐系统根据口味、预算、用餐人数和菜单生成点餐推荐,应建模为 AI Function,不创建 FaaS 模型代理。
68
77
 
69
- 修改已有应用前,先读取远端 AI Function 列表和每项完整配置并恢复到本地 `ai/`。`deploy` 时空 `ai/` 会跳过 AI Function 同步(`no_local_ai_functions`),本地全集非空时按全量覆盖写入草稿;`ai-functions sync` 是不管本地是否为空都立即全量覆盖,因此显式 `sync` 空集合会把远端 AI Function 全部删除。创建、配置、调用、调试 AI Function 的完整流程见 [AI Function](references/ai-function.md)。
78
+ **AI Function 是按需可选能力,不是建站或发布的前置条件。** 用户需求未涉及 AI 对话、生成、分类、总结、文生图或文生视频时,不创建 `ai/` 目录、不调用任何 `ai-functions` 命令,也不要求或提示用户开通 AI 能力;普通 `deploy` 在空 `ai/` 时自动跳过 AI Function 同步,Page/Database Function/FaaS 照常发布,不因此阻塞。
79
+
80
+ 远端 AI Function 的恢复与保护由 CLI 完成,不需要 Agent 判断:`pull` 会把远端 AI Function 草稿写回 `ai/`(当前账号未开通时不落 `ai/`);`deploy` 时空 `ai/` 会跳过 AI Function 同步(`no_local_ai_functions`),本地全集非空时先核对远端已有 key 都在本地,缺任何一个就拒绝发布而不是静默删除,通过后按全量覆盖写入草稿;需要让本次 deploy 完全跳过 AI Function 同步时使用显式参数 `deploy --skip-ai-functions`,并按[诊断与验收](references/verification.md)在报告中说明 AI Function 未同步、未验证。`ai-functions sync` 不管本地是否为空都立即全量覆盖,因此显式 `sync` 空集合会把远端 AI Function 全部删除。创建、配置、调用、调试 AI Function 的完整流程见 [AI Function](references/ai-function.md)。
70
81
 
71
82
  ### 增量绑定新 Table
72
83
 
@@ -81,13 +92,13 @@ base-database-cli lark-cli -- api GET /open-apis/base/v3/sites/Prjxxxxxxxx/catal
81
92
 
82
93
  ## 关键约束
83
94
 
84
- 1. 应用 资源与发布优先使用本机 `base-database-cli`;原生 Base 配置使用 `lark-cli base +...`。托管环境使用宿主提供的 CLI,不切换环境。命令选择与工程恢复见[工程与环境](references/workspace.md)。
95
+ 1. 应用资源与发布优先使用本机 `base-database-cli`;原生 Base 配置使用 `lark-cli base +...`。托管环境使用宿主提供的 CLI,不切换环境。命令选择与工程恢复见[工程与环境](references/workspace.md)。
85
96
  2. Base 是业务数据事实源,`catalog.json` 是已绑定表的 schema 事实源。表、字段、ID、类型、选项和关系来自真实结果,不由名称或建模输入猜测。
86
- 3. **权限边界**:应用 以 owner 身份访问 Base。访问者通过已发布 Function 使用业务能力;浏览器直接记录 CRUD 已关闭,固定写入由 Mutation 声明约束。FaaS ticket 内部记录回调保留兼容,需单独约束其输入。读取身份通过 Database Function 中的 `CURRENT_USER_ID()` 获取,Mutation 使用服务端 `current_user`。自定义角色和统一行列权限尚未接入。绑定与权限设计必须遵守[权限边界](references/permission-design.md)。
87
- 4. Page 读取走 Database Function;普通单表创建、按记录 ID 更新和删除(含批量及附件写入)优先使用 Mutation;需要声明之外的服务端业务校验、计算或编排时使用 FaaS,边界见[写入方式选择](references/mutations.md#写入方式选择)。Database Function 必须引用至少一个已绑定 Catalog 真实表;纯常量与无表依赖计算在 Page/FaaS 处理。输入只能进入声明的业务参数,不能决定查询语句、URL、method、Base token、table ID、字段名、Function ID 或凭证。
88
- 5. Database Function、Mutation 与 FaaS 的参数、返回值不同。Page 使用 `invokeDatabaseFunction<TData>`,`TData` 只描述顶层 `data`,不二次解包;协议见[Page 开发](references/development.md#function-调用契约)。部分成功与重试按 [Mutation 结果](references/mutations.md#调用与结果)或 [FaaS 记录协议](references/faas.md#应用记录-写入协议)处理。
89
- 6. AI 对话、生成、分类、总结、文生图或文生视频使用 Page 侧 AI Function 调用平台 AI 能力,不创建 FaaS 模型代理,不直连模型域名;完整契约见[AI Function](references/ai-function.md)。
90
- 7. 修改保留需求外源码、Base schema、metadata、bindings 和 Function。Functions 更新为全量覆盖,不能以只提交本次新增 Function 的方式更新已有 应用。
97
+ 3. **权限边界**:应用以 owner 身份访问 Base。访问者通过已发布 Function 使用业务能力;浏览器直接记录 CRUD 已关闭,固定写入由 Mutation 声明约束。FaaS ticket 内部记录回调保留兼容,需单独约束其输入。读取身份通过 Database Function 中的 `CURRENT_USER_ID()` 获取,Mutation 使用服务端 `current_user`。自定义角色和统一行列权限尚未接入。绑定与权限设计必须遵守[权限边界](references/permission-design.md)。
98
+ 4. Page 读取走 Database Function;普通单表创建、按记录 ID 更新和删除(含批量及附件写入)优先使用 Mutation;需要声明之外的服务端业务校验、计算或编排时使用 FaaS,边界见[写入方式选择](references/mutations.md#写入方式选择)。Database Function 必须引用至少一个已绑定 Catalog 真实表;纯常量与无表依赖计算按[SQL 外实现放在哪](#sql-外实现放在哪)选择位置。输入只能进入声明的业务参数,不能决定查询语句、URL、method、Base token、table ID、字段名、Function ID 或凭证。
99
+ 5. Database Function、Mutation 与 FaaS 的参数、返回值不同。Page 使用 `invokeDatabaseFunction<TData>`,`TData` 只描述顶层 `data`,不二次解包;协议见[Page 开发](references/development.md#function-调用契约)。部分成功与重试按 [Mutation 结果](references/mutations.md#调用与结果)或 [FaaS 记录协议](references/faas.md#应用记录写入协议)处理。
100
+ 6. AI 对话、生成、分类、总结、文生图或文生视频使用 Page 侧 AI Function 调用平台 AI 能力,不创建 FaaS 模型代理,不直连模型域名;需求不涉及 AI 时不创建 AI Function、不调用 AI 接口,也不把 AI Function 开通作为前置条件。完整契约见[AI Function](references/ai-function.md)。
101
+ 7. 修改保留需求外源码、Base schema、metadata、bindings 和 Function。Functions 更新为全量覆盖,不能以只提交本次新增 Function 的方式更新已有应用。
91
102
  8. 保留 starter 的 ready 上报及宿主组件接入。附件能力取决于目标环境的父页面、所选写入方式和服务端协议;按[文件传输](references/file-transfer.md)实现,不以模拟成功代替真实能力。
92
103
  9. 第三方 npm 依赖必须使用目标应用的服务端依赖策略判断;普通 registry 版本默认可用,受限来源只有被 `allowedValues` 中某条正则完整匹配时可用。详见[第三方依赖策略](references/development.md#第三方依赖策略)。
93
104
  10. **交付边界**:常规发布先 Preview。新建 Base 的示例记录必须写入真实 Base,并用页面实际调用的 Database Function 回读;不以静态 fixture、`localStorage` 或页面自动播种代替。之后完成相关通知配置再交付。完整顺序只在[发布与交付](references/release.md)维护。
@@ -118,6 +129,15 @@ workflow 启停及失败补偿按[通知集成](references/notifications.md#状
118
129
 
119
130
  - **Database Function**:通过固定查询语句读取 Base 数据的函数;查询定义位于 `database-functions/<functionId>/main.sql`。
120
131
  - **应用 appToken**:应用标识;协议字段 `appToken`、FaaS 的 `projectId` 与示例中的工程常量 `PROJECT_ID` 在相应入口指向该应用,不是 Base token。`PROJECT_ID` 由示例调用方定义,不是 starter 提供的标识。
121
- - **Catalog**:已绑定数据表的 schema;本地快照为 `catalog.json`,更新从 应用 catalog 接口获取。Base 的业务记录不保存在 Catalog。
132
+ - **Catalog**:已绑定数据表的 schema;本地快照为 `catalog.json`,更新从应用 catalog 接口获取。Base 的业务记录不保存在 Catalog。
122
133
  - **operation**:业务动作及其固定输入输出契约,例如查询任务或审批申请;不是任意 URL 或查询语句的代理。
123
134
  - **托管环境**:平台提供 CLI、登录态或工程的建站环境;使用其已提供的入口。自行安装 CLI 的本地环境按公开安装流程执行。
135
+
136
+
137
+ ## SQL 外实现放在哪
138
+
139
+ 原则:SQL 无法等价表达时,在消费查询结果的代码中完成计算;选择位置首先看数据可见性,再看规模与复用需求。
140
+
141
+ 判定:只有计算仅影响查看者本就有权看到的行的展示、结果集小且无需跨页面复用时,才适合放在 Page。若计算需要查看者不应看到的明细、数据量大、需要跨页面复用或写回,则放在 FaaS(SQL 报错中的 “Edge Function” 即指 FaaS),并沿用既有身份、权限和参数边界;FaaS 仍需在服务端校验调用者权限,只返回允许公开的结果。不能先把无权查看的明细发给浏览器,再靠 Page 过滤或隐藏。
142
+
143
+ 默认:拿不准时选 FaaS。把应在服务端处理的计算放到 Page,可能泄露数据;多一道服务端调用通常更容易纠正。SQL 报错中的“SQL 外实现”不等于一律新建 FaaS,也不构成绕过现有权限模型的授权。
@@ -2,6 +2,8 @@
2
2
 
3
3
  本文说明如何在 Page 中配置和调用 AI Function。AI Function 是随应用版本发布的 AI 能力:文本可以按页面需要使用流式或一次性结果;图像和视频生成始终先创建任务、再轮询结果。页面只按 `functionKey` 调用平台 AI 能力;Base 数据读取仍使用 Database Function,写入按[Mutation 与 FaaS 分工](mutations.md#写入方式选择)选择。
4
4
 
5
+ AI Function 是按需可选能力:需求不涉及模型或 AI 时不要创建 `ai/`,也不需要执行本文任何命令或开通 AI 能力;普通 `deploy` 在空 `ai/` 时自动跳过 AI Function 同步。只有需求包含 AI 对话、生成、分类、总结、文生图、文生视频或“查数据后让模型分析”时才读取本文。
6
+
5
7
  每个 AI Function 的配置保存在 `ai/<functionKey>/meta.json`。配置决定模型、System Prompt、思考深度、尺寸、时长和变量;页面只传入 `functionKey`、本次的 `variables` 与 `messages` 或 `input`。
6
8
 
7
9
  本文中的 `/sites/`、`siteToken` 和 `Site*` 是 SDK 与平台接口的既有名称;它们都指向当前 Base Database 应用,不需要额外创建或绑定其他产品对象。本地工程中的应用标识始终从 `base-database.jsonc` 的 `appToken` 读取。
@@ -10,7 +12,7 @@
10
12
 
11
13
  1. 第一次实现时先执行[零背景最短闭环](#零背景最短闭环)。
12
14
  2. 再按需求读取[四类能力与配置契约](#四类能力与配置契约)和[Page 调用方式](#page-调用方式)。
13
- 3. 修改已有应用时必须先执行[恢复已有 AI Function](#恢复已有-ai-function),不能直接部署。
15
+ 3. 修改已有应用时,工程若来自 `pull`,`ai/` 已与远端一致;工程不是 `pull` 得到而 `ai/` 又非空时,按[恢复已有 AI Function](#恢复已有-ai-function)核对。
14
16
  4. 最后按[页面实现检查](#页面实现检查)和[区分三种调试成功](#区分三种调试成功)验收。
15
17
 
16
18
  ## 零背景最短闭环
@@ -26,7 +28,7 @@ page/... # 使用同一个 functionKey 的页面调用
26
28
 
27
29
  从项目根目录按以下顺序完成:
28
30
 
29
- 1. 修改已有应用时,先按[恢复已有 AI Function](#恢复已有-ai-function)补齐远端配置;新建应用继续下一步。
31
+ 1. 修改已有应用且工程不是 `pull` 得到时,先按[恢复已有 AI Function](#恢复已有-ai-function)核对远端配置;新建应用或 `pull` 得到的工程继续下一步。
30
32
  2. 查询 `model_profiles`,按 `capability` 选择真实 `profile_id`;禁止猜测示例 ID。
31
33
  3. 为每个 AI 功能选择唯一、稳定的 `functionKey`,创建严格 JSON 文件 `ai/<functionKey>/meta.json`。`functionKey` 只能含字母、数字、下划线和连字符,长度 1~64;目录名就是调用 key。
32
34
  4. 在 Page 中从 `./lib/database-runtime` 导入 helper,使用完全相同的 `functionKey`。调用 `callSiteAIFunction` 时显式传 `capability`;不要依赖 SDK 按 `messages` 或 `input` 猜调用链路。
@@ -84,14 +86,14 @@ Prod 验证只能发生在用户明确确认并完成 `deploy --production --yes
84
86
 
85
87
  ### 恢复已有 AI Function
86
88
 
87
- `pull` 恢复的是应用源码制品,AI Function 配置不在源码归档中;`ai-functions sync` 把本地 `ai/` 当作全集立即写远端草稿(含空集合),而 `deploy` 只在本地存在 AI Function 声明时才做全量覆盖同步。修改已有应用时,在任何 deploy/sync 前执行:
89
+ `pull` 恢复源码制品的同时,会读取远端 AI Function 草稿并写回 `ai/<functionKey>/meta.json`,返回 `aiFunctions.status` 为 `restored` 或 `not_enabled`;当前账号未开通时不落 `ai/`,此后 deploy 不触碰远端 AI Function。`deploy` 在本地 `ai/` 非空时先核对远端已有 key 是否都在本地,缺失则拒绝并列出 key,不会静默删除;`ai-functions sync` 则把本地 `ai/` 当作全集立即全量覆盖(含空集合)。因此只有工程不是 `pull` 得到、且 `ai/` 非空时,才需要手工执行下列恢复:
88
90
 
89
91
  1. `ai-functions list` 取得草稿版本全部远端 key。
90
92
  2. 对每个 key 执行 `ai-functions pull <functionKey>`。该命令只把详情打印为 JSON,**不会写文件**;读取返回的 snake_case 字段 `function.name`、`function.description`、`function.config_json`,把 `config_json` 字符串解析成 JSON 对象后还原为 `ai/<functionKey>/meta.json`。`disabled` 位于这个 `config` 对象内,不在 `meta.json` 顶层。
91
93
  3. 比较远端 key 集合与本地 `ai/` 目录。需求外的远端 Function 必须保留所有配置值;JSON 缩进和字段顺序不影响语义。本地缺少任一远端 key,或 `config_json` 无法解析时,禁止 `ai-functions sync` 和显式删除操作,`deploy` 前也必须补齐。
92
94
  4. 只有用户明确授权删除具体 Function 后,才能让该 key 从本地全集缺失并执行全量同步。
93
95
 
94
- 空 `ai/` 在 `deploy` 里是“本次不修改 AI Function”:CLI 会返回 `{ skipped: true, reason: 'no_local_ai_functions' }` 并跳过 AI Function 同步;仅 Page/Database Function/FaaS 会随本次 deploy 发布。`ai-functions sync` 与 deploy 不同,只要执行就是立即写远端草稿的全量覆盖操作,空集合会把远端 AI Function **全部删除**;因此仅在用户明确授权删除或有强规划时使用。常规发布不必单独执行 `ai-functions sync`。
96
+ 空 `ai/` 在 `deploy` 里是“本次不修改 AI Function”:CLI 会返回 `{ skipped: true, reason: 'no_local_ai_functions' }` 并跳过 AI Function 同步;仅 Page/Database Function/FaaS 会随本次 deploy 发布。本地已存在 `ai/` 声明但本次发布要完全不动 AI Function 时,使用显式参数 `deploy --skip-ai-functions`(生产发布追加在 `--production --yes` 之后),返回中带 `aiFunctionsSkipped: true`,交付报告必须说明 AI Function 未同步且未验证。`ai-functions sync` 与 deploy 不同,只要执行就是立即写远端草稿的全量覆盖操作,空集合会把远端 AI Function **全部删除**;因此仅在用户明确授权删除或有强规划时使用。常规发布不必单独执行 `ai-functions sync`。
95
97
 
96
98
  ## 选择 AI Function
97
99
 
@@ -120,7 +122,7 @@ Prod 验证只能发生在用户明确确认并完成 `deploy --production --yes
120
122
 
121
123
  | capability_type | output_mode | 运行链路 | 专属配置字段 |
122
124
  | --------------- | ----------------- | ----------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- |
123
- | `text` | `stream` / `sync` | 通过 SDK 获取文本流或完整文本 | `text.reasoning_depth`(light/standard/deep) / `text.temperature` |
125
+ | `text` | `stream` / `sync` | 通过 SDK 获取文本流或完整文本 | `text.reasoning_depth`(off/light/standard/deep) / `text.temperature` |
124
126
  | `vision` | `stream` / `sync` | 多模态理解;输入受下文 SDK 类型限制 | 同 text,且模型 Profile 必须声明本次使用的 image / video / audio / file 输入 |
125
127
  | `image` | `sync` | 创建图片任务并轮询结果 | `image.size` / `image.response_format`(url/b64_json) / `image.sequential_image_generation`(auto/disabled) / `image.max_images` / `image.watermark` |
126
128
  | `video` | `async` | 创建视频任务并轮询结果 | `video.resolution` / `video.ratio` / `video.duration` / `video.watermark` / `video.seed` |
@@ -272,7 +274,11 @@ base-database-cli lark-cli -- \
272
274
 
273
275
  响应中的 `profiles[].profile_id` 才能作为 `model_profile_id`;每个 profile 带 `capability` 标记(text/vision/image/video)和 `input_modalities`。image/video 生成能力必须匹配同能力 Profile;vision 可使用 vision Profile,或使用声明了 image / video / audio / file 中至少一种媒体输入的 text Profile。页面只提交该 Profile 声明支持的 content parts,不需要模型服务地址或模型凭证。
274
276
 
275
- **profile 字段与 AI Function 配置字段不是一一对应**:profile 里的 `thinking_levels`(如 `minimal/low/medium/high/max`)描述的是上游模型自身能力,不能直接填进 `meta.json`。AI Function 配置只接受本文档列出的枚举值:`text.reasoning_depth` 只能是 `light` / `standard` / `deep`。把 profile 的 `thinking_levels` 值(例如 `low`)当作 `reasoning_depth` 会被 `ai-functions validate` 拒绝并返回 `[code=800004006] invalid reasoning_depth`。选参数看 profile 能力,配 `reasoning_depth` 用本文档枚举,两者不要混。
277
+ **profile 字段与 AI Function 配置字段不是一一对应**:profile 里的 `thinking_levels`(如 `off/minimal/low/medium/high/max`)描述的是上游模型自身能力,不能直接填进 `meta.json`。AI Function 配置只接受本文档列出的枚举值:`text.reasoning_depth` 只能是 `off` / `light` / `standard` / `deep`。把 profile 的其他 `thinking_levels` 值(例如 `low`)当作 `reasoning_depth` 会被 `ai-functions validate` 拒绝并返回 `[code=800004006] invalid reasoning_depth`。选参数看 profile 能力,配 `reasoning_depth` 用本文档枚举,两者不要混。
278
+
279
+ `reasoning_depth: "off"` 表示请求关闭深度思考,以缩短模型响应时间。只有所选 Profile 的 `thinking_levels` 包含 `off` 时才会真正向上游发送 `thinking.type=disabled`;如果该模型必须深度思考,服务端会忽略关闭意图并使用 Profile 的 `default_thinking_level` 保持思考开启。搭建页也只会为支持 `off` 的模型展示关闭选项;从可关闭模型切到强制思考模型时,页面改用“模型默认”,不把 `max` / `xhigh` / `minimal` 近似改写成可能不受支持的 `deep` / `light`。
280
+
281
+ `ai-functions validate` 校验的是跨 Profile 配置枚举,因此强制思考模型配置 `off` 仍会校验成功;这不代表关闭已经生效。CLI 搭建前必须同时检查 `model_profiles`:目标 Profile 不含 `off` 时,运行态会保持思考开启。平台后续新增或移除某个 Profile 的 `off` 会改变已持久化 `off` 配置的实际行为;发布这类 Profile 变更前先盘点对应 AI Function,并在目标环境回归原始 SSE 的 `reasoning_content` / `reasoning_tokens`。
276
282
 
277
283
  ## CLI 建模与调试
278
284
 
@@ -430,6 +436,12 @@ System Prompt 在 **AI Function 配置**里维护,随版本快照进入线上
430
436
  - 平台还可能因 AI credit 耗尽、并发已满或调用超时而拒绝调用。页面仍需防止重复提交。
431
437
  - 一个交互实例只维护一条活动流。发送期间禁用重复提交;用户取消、组件卸载或新请求替代旧请求时调用 `destroy()`。`onDone` / 返回结果表示正常结束;`onError` 表示失败;两者都必须结束 loading。
432
438
 
439
+ ### 未开通 AI Function 时
440
+
441
+ AI Function 的管理接口(`ai-functions list/pull/validate/sync/usage` 以及 `deploy` 内的同步)按当前用户做 feature gate。未开通的用户会收到业务码 `800004011`、消息 `ai function feature is not enabled`;CLI 会把它翻译为带降级路径的错误。它不是 scope 缺失,重新 `auth login` 不会改变结果,不要循环授权或重试。
442
+
443
+ 处理方式:向用户说明当前账号未开通 AI Function;需求中的 AI 部分标记为阻塞,恢复条件是账号开通后重新 `deploy`。其余 Page、Database Function、FaaS 用 `deploy --skip-ai-functions` 正常发布,交付报告写明 AI Function 未同步、页面中的 AI 入口在开通前不可用。`deploy` 在写入任何远端 Function 之前先同步 AI Function,因此收到该错误时远端没有中间态,可直接加参数重跑。
444
+
433
445
  ### 页面如何处理运行态错误
434
446
 
435
447
  页面只能可靠地按错误性质处理。收到 AI credit、并发限制或服务错误时,保留 `error.code`、`error.message` 和本次 `requestId`,结束 loading,并按错误是否可重试给出提示;不要在页面里自动重试,更不要绕过 AI Function 直连模型。
@@ -461,7 +473,7 @@ AI Function 调试至少有三种互不等价的「成功」,不能互相替
461
473
 
462
474
  ```text
463
475
  1. 查询 model_profiles,选择 capability 匹配的 profile_id。
464
- 2. 写 ai/<functionKey>/meta.json,先 validate(reasoning_depth 用 light/standard/deep,不用 profile 的 thinking_levels)。
476
+ 2. 写 ai/<functionKey>/meta.json,先 validate(reasoning_depth 用 off/light/standard/deep;仅当 profile 的 thinking_levels 含 off 时关闭才生效)。
465
477
  3. 文本流式 UI 同时消费 delta.reasoningContent 与 delta.content。
466
478
  4. `callSiteAIFunction` 显式传 capability;文生图/文生视频使用 create task + poll task,不走文本 stream。
467
479
  5. 修改已有应用时,远端全部 key 已恢复到本地,未意外触发全量删除。
@@ -53,21 +53,21 @@ lark-cli base +<resource-list-or-get> ... --as user
53
53
 
54
54
  查询完成后只选择以下一种结论:
55
55
 
56
- 1. **原生 Base 实现**:能力由多维表格本体提供。通过 `lark-cli base +...` 配置,应用 只提供需要的交互页面。
56
+ 1. **原生 Base 实现**:能力由多维表格本体提供。通过 `lark-cli base +...` 配置,应用只提供需要的交互页面。
57
57
  2. **Base Database 实现**:能力属于页面交互、Database Function 读取或由 Page 主动发起的即时业务写入,按 Page/Database Function 与[Mutation/FaaS 选择](mutations.md#写入方式选择)实现。
58
58
  3. **组合实现**:例如 Page 调用 Mutation/FaaS 创建记录,原生 workflow 监听记录并通知;分别配置并独立验收两段链路。
59
59
  4. **已证实的缺口或阻塞**:找不到当前 CLI 入口、命令明确不支持,或遇到权限或环境阻塞。准确描述为“当前 `lark-cli` 未暴露”“原生能力明确不支持”或“当前身份无权限”,不要互相替代。
60
60
 
61
61
  ## 执行边界
62
62
 
63
- 已在当前版本明确记录的限制,正常开发按对应协议处理,不重复查询相同能力。用户要求验证新能力、CLI 版本变化或新证据与文档冲突时再发现;原生能力存在不代表 应用 运行时代码可以直接调用其接口。
63
+ 已在当前版本明确记录的限制,正常开发按对应协议处理,不重复查询相同能力。用户要求验证新能力、CLI 版本变化或新证据与文档冲突时再发现;原生能力存在不代表应用运行时代码可以直接调用其接口。
64
64
 
65
65
  能力发现默认只读。用户要求的非破坏性原生配置可在取得真实 ID 后执行;已有资源的变更需在授权范围内。复杂 create/update 先读当前命令的 help 与 reference:完整替换使用可信现状做 read-modify-write,delta 只提交目标变更。读回必要结果,保留启停状态。授权规则见[主流程](../SKILL.md#外部操作与授权)。
66
66
 
67
- 涉及 应用 通知时,读取[通知集成](notifications.md)决定入口与状态;不得把原生通知样例的 recordLink 当作 应用 业务入口。
67
+ 涉及应用通知时,读取[通知集成](notifications.md)决定入口与状态;不得把原生通知样例的 recordLink 当作应用业务入口。
68
68
 
69
69
  ## 发现结束与交付
70
70
 
71
71
  候选命令、相关 reference 与必要只读查询已确认能力归属后,进入实现,不反复扫描整个资源目录。没有入口或权限不足时,记录查询过的命令、当前版本与证据,区分 CLI 未暴露、平台明确不支持和环境/权限阻塞。
72
72
 
73
- 交付原生配置时记录资源 ID、实际状态及它与 应用 的衔接点;配置成功不等于通知或业务链路已经验收。
73
+ 交付原生配置时记录资源 ID、实际状态及它与应用的衔接点;配置成功不等于通知或业务链路已经验收。