@lark-base-open/base-database-cli 1.6.0 → 1.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +21 -0
- package/README.md +4 -0
- package/dist/agent-tools.d.ts +1 -0
- package/dist/agent-tools.d.ts.map +1 -1
- package/dist/agent-tools.js +3 -1
- package/dist/agent-tools.js.map +1 -1
- package/dist/app-builder/core.d.mts.map +1 -1
- package/dist/app-builder/core.mjs +8 -4
- package/dist/app-builder/core.mjs.map +1 -1
- package/dist/app-builder/package.json +1 -1
- package/dist/bot-handoff.d.ts +16 -0
- package/dist/bot-handoff.d.ts.map +1 -0
- package/dist/bot-handoff.js +165 -0
- package/dist/bot-handoff.js.map +1 -0
- package/dist/check.d.ts.map +1 -1
- package/dist/check.js +13 -1
- package/dist/check.js.map +1 -1
- package/dist/contract-conversion.d.ts +1 -0
- package/dist/contract-conversion.d.ts.map +1 -1
- package/dist/contract-conversion.js +11 -0
- package/dist/contract-conversion.js.map +1 -1
- package/dist/contract-dependencies.d.ts +16 -0
- package/dist/contract-dependencies.d.ts.map +1 -0
- package/dist/contract-dependencies.js +52 -0
- package/dist/contract-dependencies.js.map +1 -0
- package/dist/distribution-commands.d.ts.map +1 -1
- package/dist/distribution-commands.js +10 -5
- package/dist/distribution-commands.js.map +1 -1
- package/dist/function-contracts.d.ts.map +1 -1
- package/dist/function-contracts.js +10 -15
- package/dist/function-contracts.js.map +1 -1
- package/dist/init-journal.d.ts +10 -0
- package/dist/init-journal.d.ts.map +1 -1
- package/dist/init-journal.js +5 -2
- package/dist/init-journal.js.map +1 -1
- package/dist/init.d.ts +29 -1
- package/dist/init.d.ts.map +1 -1
- package/dist/init.js +201 -19
- package/dist/init.js.map +1 -1
- package/dist/lark-cli.d.ts +7 -0
- package/dist/lark-cli.d.ts.map +1 -1
- package/dist/lark-cli.js +113 -17
- package/dist/lark-cli.js.map +1 -1
- package/dist/program.d.ts.map +1 -1
- package/dist/program.js +12 -1
- package/dist/program.js.map +1 -1
- package/dist/sdk-codegen.d.ts +3 -1
- package/dist/sdk-codegen.d.ts.map +1 -1
- package/dist/sdk-codegen.js +37 -13
- package/dist/sdk-codegen.js.map +1 -1
- package/dist/sdk-compatibility.js +1 -1
- package/dist/sdk-compatibility.js.map +1 -1
- package/package.json +1 -1
- package/skills/lark-base-database/SKILL.md +3 -1
- package/skills/lark-base-database/references/base-table-design.md +37 -0
- package/skills/lark-base-database/references/collaborator-handoff.md +62 -0
- package/skills/lark-base-database/references/database-function.md +1 -1
- package/skills/lark-base-database/references/development.md +13 -1
- package/skills/lark-base-database/references/faas.md +6 -3
- package/skills/lark-base-database/references/mutations.md +1 -1
- package/skills/lark-base-database/references/permission-design.md +1 -0
- package/skills/lark-base-database/references/release.md +1 -1
- package/skills/lark-base-database/references/style-guide.md +1 -1
- package/skills/lark-base-database/references/workspace.md +18 -5
- package/templates/database-starter-v2/README.md +1 -1
- package/templates/database-starter-v2/package-lock.json +5 -5
- package/templates/database-starter-v2/page/package.json +1 -1
- package/templates/database-starter-v2/server/package.json +1 -1
package/dist/program.js
CHANGED
|
@@ -8,6 +8,7 @@ import { DIAGNOSTIC_PLATFORMS } from './diagnostic-platforms.js';
|
|
|
8
8
|
import { resolve } from 'node:path';
|
|
9
9
|
import { diagnosticSummary, queryDiagnostics, importDiagnostics, } from './diagnostics.js';
|
|
10
10
|
import { prepareFunctionContracts } from './function-contracts.js';
|
|
11
|
+
import { ContractDependencyError, prepareContractDependencies, } from './contract-dependencies.js';
|
|
11
12
|
import { authCommandEnvironment, LarkCliError } from './lark-cli-error.js';
|
|
12
13
|
import { functionEnv } from './unified-functions.js';
|
|
13
14
|
import { readFileSync } from 'node:fs';
|
|
@@ -19,7 +20,7 @@ import { deploymentStatus, deployProject } from './deploy.js';
|
|
|
19
20
|
import { clearEnvironmentVariable, declareEnvironmentVariable, ENVIRONMENT_VARIABLE_TARGETS, ENVIRONMENT_VARIABLE_TYPES, listEnvironmentVariables, setEnvironmentVariable, } from './environment-variables.js';
|
|
20
21
|
import { initializeProject } from './init.js';
|
|
21
22
|
import { InitFailureError } from './init-journal.js';
|
|
22
|
-
import { runProjectLarkCli } from './lark-cli.js';
|
|
23
|
+
import { runProjectLarkCli, setExplicitIdentity } from './lark-cli.js';
|
|
23
24
|
import { LarkCliPassthroughError } from './lark-cli-passthrough.js';
|
|
24
25
|
import { validateLarkProfile } from './profile-name.js';
|
|
25
26
|
import { pullProject } from './pull.js';
|
|
@@ -74,6 +75,7 @@ export function createBaseDatabaseProgram(options) {
|
|
|
74
75
|
.description(options.description)
|
|
75
76
|
.version(options.version)
|
|
76
77
|
.option('--profile <name>', 'Use an existing lark-cli profile (overrides project selection)', validateLarkProfile)
|
|
78
|
+
.addOption(new Option('--as <identity>', 'lark-cli identity: user (UAT) or bot (TAT). Defaults to the identity declared by lark-cli strict mode or default-as, otherwise user').choices(['user', 'bot']))
|
|
77
79
|
.showSuggestionAfterError()
|
|
78
80
|
.showHelpAfterError();
|
|
79
81
|
const printJson = (value) => {
|
|
@@ -81,6 +83,10 @@ export function createBaseDatabaseProgram(options) {
|
|
|
81
83
|
process.stdout.write(`${JSON.stringify(update ? { ...value, update } : value, null, 2)}\n`);
|
|
82
84
|
};
|
|
83
85
|
const selectedLarkProfile = () => program.opts().profile;
|
|
86
|
+
// 显式身份对本进程全部 lark-cli api/base 调用生效;未显式传入时由 resolveLarkIdentity 按 lark-cli 声明解析。
|
|
87
|
+
program.hook('preAction', () => {
|
|
88
|
+
setExplicitIdentity(program.opts().as);
|
|
89
|
+
});
|
|
84
90
|
program
|
|
85
91
|
.command('tables')
|
|
86
92
|
.description('Manage application table bindings')
|
|
@@ -139,9 +145,11 @@ export function createBaseDatabaseProgram(options) {
|
|
|
139
145
|
.description('Manage defineFunction contracts')
|
|
140
146
|
.command('generate [directory]')
|
|
141
147
|
.description('Generate contracts, metadata and typed Page clients')
|
|
148
|
+
.option('--no-install', 'Reuse installed dependencies without running npm ci')
|
|
142
149
|
.option('--runtime-only', 'Omit backend discovery schemas (does not change identity or FG)')
|
|
143
150
|
.action(async (directory = '.', opts) => {
|
|
144
151
|
const workspace = resolve(directory);
|
|
152
|
+
await prepareContractDependencies(workspace, opts.install);
|
|
145
153
|
const sdkCompatibility = checkSDKCompatibility(workspace, program.name());
|
|
146
154
|
for (const warning of sdkCompatibility)
|
|
147
155
|
process.stderr.write(warning.message + '\n');
|
|
@@ -247,6 +255,7 @@ export function createBaseDatabaseProgram(options) {
|
|
|
247
255
|
.option('--description <description>', 'Application description')
|
|
248
256
|
.option('--time-zone <timeZone>', 'Time zone for a Base created from --schema, e.g. Asia/Shanghai; defaults to the server-side tenant default')
|
|
249
257
|
.option('--resume', 'Resume the matching initialization receipt after read-only reconciliation', false)
|
|
258
|
+
.option('--grant-admin <openId>', 'With --as bot: also grant this user (open_id ou_...) admin on the Base and app created by this run; the current lark-cli user, if any, is still granted both')
|
|
250
259
|
.addOption(environmentOption())
|
|
251
260
|
.action(async (directory, commandOptions) => {
|
|
252
261
|
const profile = runtimeProfile(commandOptions.env);
|
|
@@ -262,6 +271,7 @@ export function createBaseDatabaseProgram(options) {
|
|
|
262
271
|
timeZone: commandOptions.timeZone,
|
|
263
272
|
environment: commandOptions.env,
|
|
264
273
|
resume: commandOptions.resume,
|
|
274
|
+
grantAdmin: commandOptions.grantAdmin,
|
|
265
275
|
runtimeProfile: profile,
|
|
266
276
|
}));
|
|
267
277
|
});
|
|
@@ -642,6 +652,7 @@ export function runBaseDatabaseProgram(program) {
|
|
|
642
652
|
printJson(withUpdate(error.output));
|
|
643
653
|
else {
|
|
644
654
|
if (error instanceof SDKCodegenError ||
|
|
655
|
+
error instanceof ContractDependencyError ||
|
|
645
656
|
error instanceof SDKCompatibilityError)
|
|
646
657
|
printJson(withUpdate({ ok: false, error: error.toJSON() }));
|
|
647
658
|
if (error instanceof FunctionDeclarationError)
|
package/dist/program.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"program.js","sourceRoot":"","sources":["../src/program.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"program.js","sourceRoot":"","sources":["../src/program.ts"],"names":[],"mappings":"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"}
|
package/dist/sdk-codegen.d.ts
CHANGED
|
@@ -4,10 +4,12 @@ export interface CodegenFile {
|
|
|
4
4
|
}
|
|
5
5
|
export declare class SDKCodegenError extends Error {
|
|
6
6
|
readonly code: string;
|
|
7
|
-
|
|
7
|
+
readonly nextActions: string[];
|
|
8
|
+
constructor(code: string, message: string, nextActions?: string[]);
|
|
8
9
|
toJSON(): {
|
|
9
10
|
code: string;
|
|
10
11
|
message: string;
|
|
12
|
+
nextActions?: string[] | undefined;
|
|
11
13
|
};
|
|
12
14
|
}
|
|
13
15
|
export declare function requiresSDKCodegen(root: string): boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sdk-codegen.d.ts","sourceRoot":"","sources":["../src/sdk-codegen.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"sdk-codegen.d.ts","sourceRoot":"","sources":["../src/sdk-codegen.ts"],"names":[],"mappings":"AAmBA,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB;AACD,qBAAa,eAAgB,SAAQ,KAAK;aAEtB,IAAI,EAAE,MAAM;aAEZ,WAAW,EAAE,MAAM,EAAE;IAHvC,YACkB,IAAI,EAAE,MAAM,EAC5B,OAAO,EAAE,MAAM,EACC,WAAW,GAAE,MAAM,EAAO,EAI3C;IACD,MAAM;;;;MAML;CACF;AAGD,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAExD;AA2BD,uGAAuG;AACvG,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,GAAG,WAAW,EAAE,CAyIxE"}
|
package/dist/sdk-codegen.js
CHANGED
|
@@ -1,29 +1,51 @@
|
|
|
1
|
-
import { sdkInstallGuidance } from './sdk-install.js';
|
|
2
1
|
import { projectCapabilities } from './project-capabilities.js';
|
|
3
2
|
import { createRequire } from 'node:module';
|
|
4
3
|
import { execFileSync } from 'node:child_process';
|
|
5
4
|
import { existsSync, lstatSync, cpSync, mkdirSync, realpathSync, symlinkSync, mkdtempSync, readFileSync, rmSync, writeFileSync, } from 'node:fs';
|
|
6
5
|
import { tmpdir } from 'node:os';
|
|
7
|
-
import { join, dirname, relative } from 'node:path';
|
|
8
|
-
import { serverDirectory } from './project-layout.js';
|
|
6
|
+
import { join, dirname, relative, isAbsolute, sep } from 'node:path';
|
|
7
|
+
import { projectLayout, serverDirectory } from './project-layout.js';
|
|
9
8
|
const SDK = '@lark-base-open/base-database-app-sdk';
|
|
10
9
|
export class SDKCodegenError extends Error {
|
|
11
10
|
code;
|
|
12
|
-
|
|
11
|
+
nextActions;
|
|
12
|
+
constructor(code, message, nextActions = []) {
|
|
13
13
|
super(`${code}: ${message}`);
|
|
14
14
|
this.code = code;
|
|
15
|
+
this.nextActions = nextActions;
|
|
15
16
|
this.name = 'SDKCodegenError';
|
|
16
17
|
}
|
|
17
18
|
toJSON() {
|
|
18
|
-
return {
|
|
19
|
+
return {
|
|
20
|
+
code: this.code,
|
|
21
|
+
message: this.message,
|
|
22
|
+
...(this.nextActions.length ? { nextActions: this.nextActions } : {}),
|
|
23
|
+
};
|
|
19
24
|
}
|
|
20
25
|
}
|
|
21
26
|
const locations = (root) => ['page', serverDirectory(root), ''].map((p) => join(root, p, 'package.json'));
|
|
22
27
|
export function requiresSDKCodegen(root) {
|
|
23
28
|
return projectCapabilities(root).sdkCodegen;
|
|
24
29
|
}
|
|
25
|
-
function
|
|
26
|
-
|
|
30
|
+
function dependencyRecovery(root) {
|
|
31
|
+
const layout = projectLayout(root);
|
|
32
|
+
const install = layout.version === 2
|
|
33
|
+
? 'npm ci'
|
|
34
|
+
: layout.dependencies
|
|
35
|
+
.map((directory) => `npm ci --prefix ${directory}`)
|
|
36
|
+
.join('; ');
|
|
37
|
+
return [
|
|
38
|
+
`From the project root, restore dependencies from the existing manifests and lockfiles: ${install}. Keep the declared SDK version unchanged.`,
|
|
39
|
+
'If dependencies are already installed but the SDK lacks codegen, keep the current SDK and upgrade only with user authorization; follow its Migration instructions.',
|
|
40
|
+
'Once codegen is available, use the same CLI and environment to run contracts generate, then check --json.',
|
|
41
|
+
];
|
|
42
|
+
}
|
|
43
|
+
function unavailable(root, missingExport = false) {
|
|
44
|
+
throw new SDKCodegenError('SDK_CODEGEN_UNAVAILABLE', missingExport
|
|
45
|
+
? 'The installed SDK codegen does not export generateFunctionClients.'
|
|
46
|
+
: 'Cannot resolve the installed SDK codegen entry. Project dependencies may not be installed, or the installed SDK may not provide codegen.', missingExport
|
|
47
|
+
? dependencyRecovery(root).slice(1)
|
|
48
|
+
: dependencyRecovery(root));
|
|
27
49
|
}
|
|
28
50
|
/** Resolve/snapshot reads package bytes only; project modules execute only in the restricted child. */
|
|
29
51
|
export function runSDKCodegen(root, data) {
|
|
@@ -38,7 +60,7 @@ export function runSDKCodegen(root, data) {
|
|
|
38
60
|
catch { }
|
|
39
61
|
}
|
|
40
62
|
if (!entry)
|
|
41
|
-
unavailable();
|
|
63
|
+
unavailable(root);
|
|
42
64
|
const temp = mkdtempSync(join(tmpdir(), 'base-codegen-'));
|
|
43
65
|
try {
|
|
44
66
|
let packageRoot = dirname(entry);
|
|
@@ -47,7 +69,7 @@ export function runSDKCodegen(root, data) {
|
|
|
47
69
|
.name !== SDK) {
|
|
48
70
|
const parent = dirname(packageRoot);
|
|
49
71
|
if (parent === packageRoot)
|
|
50
|
-
unavailable();
|
|
72
|
+
unavailable(root);
|
|
51
73
|
packageRoot = parent;
|
|
52
74
|
}
|
|
53
75
|
snapshotPackage(packageRoot, join(temp, 'node_modules', SDK), new Map());
|
|
@@ -87,8 +109,10 @@ globalThis.WebSocket = undefined;
|
|
|
87
109
|
catch {
|
|
88
110
|
throw new SDKCodegenError('SDK_CODEGEN_FAILED', 'Isolated SDK codegen failed, timed out, or returned invalid JSON');
|
|
89
111
|
}
|
|
90
|
-
if (!result.ok &&
|
|
91
|
-
|
|
112
|
+
if (!result.ok &&
|
|
113
|
+
result.code === 'SDK_CODEGEN_UNAVAILABLE' &&
|
|
114
|
+
result.message === 'SDK codegen export missing')
|
|
115
|
+
unavailable(root, true);
|
|
92
116
|
if (!result.ok)
|
|
93
117
|
throw new SDKCodegenError(result.code ?? 'SDK_CODEGEN_FAILED', (result.message ?? 'SDK codegen failed') +
|
|
94
118
|
(result.code === 'CONTRACT_DATA_INVALID'
|
|
@@ -139,7 +163,7 @@ function resolvePackage(name, from) {
|
|
|
139
163
|
return realpathSync(candidate);
|
|
140
164
|
const parent = dirname(directory);
|
|
141
165
|
if (parent === directory)
|
|
142
|
-
throw new SDKCodegenError('SDK_CODEGEN_UNAVAILABLE', `Missing installed SDK dependency
|
|
166
|
+
throw new SDKCodegenError('SDK_CODEGEN_UNAVAILABLE', `Missing installed SDK dependency: ${name}. Restore this project's existing locked dependencies and keep the SDK version unchanged.`);
|
|
143
167
|
directory = parent;
|
|
144
168
|
}
|
|
145
169
|
}
|
|
@@ -170,7 +194,7 @@ function snapshotPackage(source, destination, copied) {
|
|
|
170
194
|
p.startsWith('.env.')))
|
|
171
195
|
return false;
|
|
172
196
|
const real = realpathSync(path), rel = relative(source, real);
|
|
173
|
-
if (rel
|
|
197
|
+
if (rel === '..' || rel.startsWith(`..${sep}`) || isAbsolute(rel))
|
|
174
198
|
throw new SDKCodegenError('SDK_CODEGEN_UNAVAILABLE', 'SDK package contains external symbolic links');
|
|
175
199
|
return true;
|
|
176
200
|
},
|
package/dist/sdk-codegen.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sdk-codegen.js","sourceRoot":"","sources":["../src/sdk-codegen.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"sdk-codegen.js","sourceRoot":"","sources":["../src/sdk-codegen.ts"],"names":[],"mappings":"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"}
|
|
@@ -57,7 +57,7 @@ export function checkSDKCompatibility(workspace, command = 'base-database-cli')
|
|
|
57
57
|
const nextActions = [
|
|
58
58
|
`Keep the installed SDK by default: use its package-local docs and examples; do not apply newer Skill API examples.`,
|
|
59
59
|
`Only with user authorization, upgrade: ${upgradeCommand}`,
|
|
60
|
-
`For an authorized upgrade, read the target SDK CHANGELOG.md
|
|
60
|
+
`For an authorized upgrade, read the target SDK CHANGELOG.md and package-local docs for upgrade and compatibility guidance on every crossed incompatible version, migrate affected calls, then run ${command} contracts generate, ${command} check --json and the project build. Do not use type assertions or caller-supplied generics to bypass migration errors.`,
|
|
61
61
|
];
|
|
62
62
|
warnings.push({
|
|
63
63
|
code: 'SDK_BEHIND_CLI',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sdk-compatibility.js","sourceRoot":"","sources":["../src/sdk-compatibility.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"sdk-compatibility.js","sourceRoot":"","sources":["../src/sdk-compatibility.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -22,7 +22,7 @@ metadata:
|
|
|
22
22
|
|
|
23
23
|
| 用户任务 | 执行路径 | 主要命令 | 进入阶段前读取 |
|
|
24
24
|
| ------------------------ | ------------------------------------------------------------------ | --------------------------------------------------------- | ----------------------------------------------------------------------------------------- |
|
|
25
|
-
| 新建系统 | 明确需求与访问模型 → 确定 Base 来源 → 初始化 → 开发 → Preview 交付 | `init` → `deploy` | [工程与环境](references/workspace.md)、[权限设计](references/permission-design.md) |
|
|
25
|
+
| 新建系统 | 明确需求与访问模型 → 确定 Base 来源 → 设计底表 → 初始化 → 开发 → Preview 交付 | `init` → `deploy` | [工程与环境](references/workspace.md)、[底表设计](references/base-table-design.md)、[权限设计](references/permission-design.md) |
|
|
26
26
|
| 修改已有系统 | 确认现有工程 → 判断影响范围 → 增量修改 → 验证与交付 | 按影响范围修改,必要时 `deploy` | [增量修改与追加绑定](references/workspace.md#增量修改与追加绑定),再读取受影响的协议 |
|
|
27
27
|
| 恢复远端工程 | 确认本地状态和应用 → 恢复源码与 Catalog → 继续原任务 | 按来源选择 `pull` 或 `init` | [工程与环境](references/workspace.md) |
|
|
28
28
|
| 设计或评审 | 按评审范围分析并输出,不创建资源或发布 | 只读分析 | [工程质量](references/style-guide.md),涉及权限、查询或视觉时读取对应专项 |
|
|
@@ -57,9 +57,11 @@ metadata:
|
|
|
57
57
|
| 为 Page 或 FaaS 添加、升级第三方 npm 依赖 | [Page 开发中的依赖策略](references/development.md#第三方依赖策略) |
|
|
58
58
|
| 附件上传、展示、下载、追加或移除 | [文件传输](references/file-transfer.md),实现前核对目标环境能力 |
|
|
59
59
|
| binding、身份过滤、角色或数据可见性 | [权限设计](references/permission-design.md) |
|
|
60
|
+
| 以机器人(bot)身份搭建,并把新建的 Base 与应用管理员交给发起人 | [bot 建站与交接](references/collaborator-handoff.md):显式声明 bot 身份,向用户报告 init 返回的 `handoff` 授权结果 |
|
|
60
61
|
| 自动化、表单、仪表盘等原生能力,或能力归属不明 | [原生 Base 能力路由](references/base-capability-routing.md) |
|
|
61
62
|
| 原生 workflow 通知与站内入口 | [通知集成](references/notifications.md) |
|
|
62
63
|
| 固定单表的基础创建、更新、删除、附件增量或批量写入 | [Mutation Function](references/mutations.md) |
|
|
64
|
+
| 新建表、新增字段,或调整底表的视图、选项颜色、公式字段 | [底表设计](references/base-table-design.md) |
|
|
63
65
|
|
|
64
66
|
新建或整体改版先在内部规划中确定视觉方案,再实现设计变量和组件。业务建模与通用工程取舍按[工程质量](references/style-guide.md)执行;默认不创建额外设计文件。新建站点或修改业务能力时,按[站点 README](references/release.md#站点-readme)维护随源码制品上传的项目说明;用户要求其他文档时按要求交付。
|
|
65
67
|
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
# 底表设计
|
|
2
|
+
|
|
3
|
+
从零建 Base、在已有 Base 中新增表或字段时读取。
|
|
4
|
+
|
|
5
|
+
## 前提:人也会直接看底表
|
|
6
|
+
|
|
7
|
+
应用页面不是数据的唯一入口。底表的 Base 协作者会长期直接打开 Base 浏览、筛选、修改和统计数据,底表是这个应用的第二个界面。设计表结构时同时考虑两类读者:Database Function、Mutation、FaaS 和外部 Agent 读写字段,人在表格里看视图。
|
|
8
|
+
|
|
9
|
+
## 两层设计
|
|
10
|
+
|
|
11
|
+
- **存储层**:有类型的业务事实。金额、数量用数字,时间用日期,人用人员,引用其他实体用关联,有限取值用单选或多选。这一层给程序读写,保持规范化:一个事实只存一处,不存 JSON、拼接串或带单位、币种符号的格式化文本。
|
|
12
|
+
- **呈现层**:主字段的选择、字段顺序、选项颜色、数字和日期格式、视图,以及只读的公式字段。它们决定人打开表格时能否看懂,不改变存储字段的读写方式;写入仍按 [Mutation](mutations.md) 或 [FaaS](faas.md) 协议处理。
|
|
13
|
+
|
|
14
|
+
人习惯在一行里看全一件事。规范化拆表后,人需要在主表上长期看到的子表汇总或跨表信息,用公式字段带回主表,不要为了好看把它存成文本。
|
|
15
|
+
|
|
16
|
+
## 判定
|
|
17
|
+
|
|
18
|
+
对每张业务表问:Base 协作者会不会长期直接打开它浏览或处理?会的话,他打开时能否不借助应用页面,就回答这张表最常被问到的问题?
|
|
19
|
+
|
|
20
|
+
- 能回答,不需要额外呈现。
|
|
21
|
+
- 缺的是事实,补存储字段;缺的是汇总或跨表信息,补公式字段;缺的是"只看一部分记录"的入口,补视图。
|
|
22
|
+
|
|
23
|
+
不会被人长期浏览的表保持默认即可。
|
|
24
|
+
|
|
25
|
+
## 默认做法
|
|
26
|
+
|
|
27
|
+
- 主字段用人能认出这一行的业务名称或标题,不用流水号、外部 ID 或机器键。
|
|
28
|
+
- 字段按阅读顺序排列:判断状态最需要的字段(状态、负责人、关键日期、金额)靠前,技术辅助字段(排序值、外部 ID、同步标记)靠后或在视图里隐藏。
|
|
29
|
+
- 选项颜色与含义一致:完成或通过用绿,阻塞、风险或驳回用红或橙,进行中用蓝,未开始、暂停或归档用灰;含义不同、需要区分的选项不共用同一颜色。
|
|
30
|
+
- 视图围绕人的高频任务建,视图类型按 lark-base 的视图选型执行。
|
|
31
|
+
- 跨表引用、汇总和计算按 lark-base 的默认策略使用公式字段。
|
|
32
|
+
|
|
33
|
+
## 例外:应用内部数据
|
|
34
|
+
|
|
35
|
+
应用运行需要的技术数据,例如页面与 Agent 之间的状态同步、调用队列、游标、缓存、键值配置,本身不是业务事实,人也不需要浏览。优先不放进 Base:能由页面状态、Function 参数或环境变量承载的就不建表。确实需要持久化时,用单独的表与业务表分开,字段仍按存储层要求选用正确类型。
|
|
36
|
+
|
|
37
|
+
复用已有 Base 时,呈现层的新增和调整只在用户授权修改的范围内进行;未经授权不改动用户已有的视图、颜色和字段顺序。
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
# 以机器人身份建站与交接
|
|
2
|
+
|
|
3
|
+
以机器人(bot)身份搭建时,新建 Base 与应用的属主是机器人,不是发起搭建的人。CLI 在资源创建后把管理员授权交给一个明确的人,让对方能直接打开 Base、管理应用。
|
|
4
|
+
|
|
5
|
+
## 声明身份
|
|
6
|
+
|
|
7
|
+
CLI 只采用明确声明的身份,不根据登录状态猜测:
|
|
8
|
+
|
|
9
|
+
| 场景 | 声明方式 |
|
|
10
|
+
|------|----------|
|
|
11
|
+
| 单次命令 | 任意命令加 `--as bot`(或 `--as user`) |
|
|
12
|
+
| 本机 profile 默认用 bot | `lark-cli config default-as bot` |
|
|
13
|
+
| 团队共享 bot | `lark-cli config bind --identity bot-only`,自带 strict-mode,无需再传参数 |
|
|
14
|
+
| 宿主通过环境变量注入凭证 | 只注入 `LARKSUITE_CLI_TENANT_ACCESS_TOKEN` 时自动只允许 bot;注入 App ID/Secret 时设置 `LARKSUITE_CLI_DEFAULT_AS=bot` |
|
|
15
|
+
|
|
16
|
+
未声明时一律以用户身份执行;用户登录失效会直接报错并提示登录,不会改用 bot 建站。
|
|
17
|
+
|
|
18
|
+
## 授权对象与结果
|
|
19
|
+
|
|
20
|
+
```bash
|
|
21
|
+
base-database-cli init . --schema schema.json --name <名称> --as bot
|
|
22
|
+
base-database-cli init . --schema schema.json --name <名称> --as bot --grant-admin <ou_...>
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
- 授权对象:当前 lark-cli 登录用户,加上 `--grant-admin` 指定的用户(追加,不替代)。
|
|
26
|
+
- 新建资源前必须有授权对象:两者都没有时 init 在任何写入前以 `blocked` 退出,否则建出的资源无人能打开。此时请用户按 `nextAction` 登录 lark-cli 后重跑原命令;open_id 按应用区分,用户无从得知,不要向用户索要。
|
|
27
|
+
- `--grant-admin` 指定了其他人时,两人都获得 Base `full_access` 与应用管理员:`userOpenId` 为指定用户,当前登录用户在 `alsoGrantedOpenId` 中报告。当前登录用户的 Base 授权由 lark-cli 建 Base 时自动授予,无法跳过;不希望其获得权限时,在没有用户登录的 bot profile 中执行。
|
|
28
|
+
- 范围:只针对本次 init 新建的 Base(`full_access`)与应用(管理员)。通过 `--base-token` / `--app-token` 绑定的已有资源不做任何授权。
|
|
29
|
+
- `--grant-admin` 供团队 Agent 等宿主使用:只在以 bot 搭建时可用,只接受同一应用下来自可信来源(如宿主收到的消息事件)的发起人 `open_id`;不从对话或通讯录推断。
|
|
30
|
+
|
|
31
|
+
返回的 `handoff` 分别报告 `base` 与 `app`:
|
|
32
|
+
|
|
33
|
+
| status | 含义 | 处理 |
|
|
34
|
+
|--------|------|------|
|
|
35
|
+
| `granted` | 已授权给 `userOpenId` | 告知用户可直接打开 |
|
|
36
|
+
| `skipped` | 续跑时没有授权对象 | 登录 lark-cli 后用原命令加 `--resume` |
|
|
37
|
+
| `failed` | 授权请求失败,`hint` 给出原因 | 按 `hint` 修复后用原命令加 `--resume` 重试,或按下文手动补加 |
|
|
38
|
+
| `not_applicable` | 资源不是本次新建 | 无需处理 |
|
|
39
|
+
|
|
40
|
+
授权失败不影响建站结果(`ok` 仍为 true),但必须把 `handoff` 的每一项如实告诉用户。应用授权失败后重试前,先确认对方是否已是应用管理员(超时的请求可能已生效)。初始化已完成时,原命令加 `--resume` 只重试未完成的授权,不再发出任何建站写入。
|
|
41
|
+
|
|
42
|
+
## 手动补加 / 核对
|
|
43
|
+
|
|
44
|
+
| 目标 | 命令 |
|
|
45
|
+
|------|------|
|
|
46
|
+
| 加 Base 管理员 | `lark-cli drive +member-add --token <base> --type bitable --member-type openid --member-id <ou_...> --perm full_access --as bot --yes` |
|
|
47
|
+
| 列/移除 Base 协作者 | `lark-cli drive +member-list` / `+member-remove`(同参) |
|
|
48
|
+
| 加/移除应用管理员 | `lark-cli api POST /open-apis/base/v3/sites/<app-token>/members --data '{"add":[{"member_id":"<ou_...>","member_type":"openid","role":3}]}' --as bot`(移除用 `{"remove":[...]}`,不传 role) |
|
|
49
|
+
|
|
50
|
+
- `member_type` 是 id 种类(`openid` / `openchat` / `opendepartmentid`),`member_id` 是对应的开放平台 id,不传内部数字 id。
|
|
51
|
+
- 应用成员接口需要 `base:appmode:update` scope,调用者须为该应用管理员(新建应用的 bot 默认满足);暂不支持添加其他租户的成员。
|
|
52
|
+
- 高危写前可 `--dry-run` 核对;`opendepartmentid` 只支持 `--as user`。
|
|
53
|
+
|
|
54
|
+
## 安全边界
|
|
55
|
+
|
|
56
|
+
- 共享宿主不要在 bot profile 中保留某个人的用户登录,否则授权会落到这个人。
|
|
57
|
+
- 授权不改变运行态数据边界:加管理员只影响能否直接打开、管理资源,不放开页面数据访问(Mutation / FaaS / Database Function 边界不变)。Preview/Prod 准入见[权限设计](permission-design.md#preview-与-prod-准入)。
|
|
58
|
+
- 移除协作者、下调权限同为危险操作,按 [Skill 主流程](../SKILL.md#外部操作与授权)核对目标与影响。
|
|
59
|
+
|
|
60
|
+
## bot 的 scope 前置
|
|
61
|
+
|
|
62
|
+
以 bot 走 `init` 建站,应用需申请:`base:app:create`、`base:appmode:create/read/update`、`base:table:read/create/update`、`base:field:read/create/update`、`base:record:create/read/update`、`base:site:create`、`bitable:app`;交接 Base 管理员另需 `docs:permission.member:create`。缺少时服务端返回 `99991672` 并给出申请链接(租户 scope 自动审批,应用管理员一次性配置)。
|
|
@@ -377,4 +377,4 @@ Page 新入口 HTTP body:
|
|
|
377
377
|
|
|
378
378
|
`base-database-cli deploy` 统一调用服务端查询校验。编译成功仅证明编译阶段;实际读取按[发布与交付](release.md)或用户要求的[专项验收](verification.md)执行。失败时保留具体错误节点和 LogID,按 Catalog、参数与支持边界修复,不猜测响应 envelope 绕过。
|
|
379
379
|
|
|
380
|
-
workspace 或已安装 SDK 的工程,`contracts generate` 使用工程内 SDK `/codegen`。CLI 提取契约并隔离执行生成器;check
|
|
380
|
+
workspace 或已安装 SDK 的工程,`contracts generate` 使用工程内 SDK `/codegen`。CLI 提取契约并隔离执行生成器;check 只比较生成内容。依赖准备、契约过期及 `SDK_CODEGEN_UNAVAILABLE` 的处理统一见[Check 与契约生成](development.md#check-与契约生成),不能通过跳过生成或回退 CLI 模板修复。未安装 SDK 的 classic 工程保留旧输入类型生成行为。
|
|
@@ -221,7 +221,7 @@ workspace 的输入类型与 `DatabaseFunctionParameterOptions` 统一生成在
|
|
|
221
221
|
|
|
222
222
|
- `SDK_BEHIND_CLI` 是非阻断的版本提醒。默认保留 SDK,读取警告 `packagePath` 所在包的 docs 和示例,不套用标注较新适用版本的 Skill 示例。
|
|
223
223
|
- `SDK_VERSION_INVALID` 表示已安装 SDK 的包信息损坏,先修复工程依赖。`doctor` 将此错误记录在 `sdkCompatibility` 中(`severity: error`),继续检查登录、scope 和服务;`check`、`contracts generate`、`deploy` 则停止并报告该错误。
|
|
224
|
-
- 用户已授权升级 SDK 时,执行警告给出的 `upgradeCommand`。读取目标 SDK `CHANGELOG.md`
|
|
224
|
+
- 用户已授权升级 SDK 时,执行警告给出的 `upgradeCommand`。读取目标 SDK `CHANGELOG.md` 及包内 docs 的升级与兼容说明,核对跨过的每个不兼容版本:确认会坏什么、定位受影响调用、按步骤修改源码。涉及默认写后读行为时,按目标包 `docs/page.md` 和[写后读指引](mutations.md#写后读)处理同步中状态。然后依次运行 `base-database-cli contracts generate`、`base-database-cli check --json` 和工程 build;失败时按诊断继续迁移,不用 `as` 强转或自行指定返回泛型绕过迁移错误。
|
|
225
225
|
|
|
226
226
|
CLI 不自动升级依赖或改写业务代码。工程结构和 helper 改动由 coding agent 按[工程迁移指南](workspace-migration.md)执行;结构迁移另需用户授权,不因 SDK 警告擅自进行。
|
|
227
227
|
|
|
@@ -231,6 +231,18 @@ CLI 不自动升级依赖或改写业务代码。工程结构和 helper 改动
|
|
|
231
231
|
|
|
232
232
|
## Check 与契约生成
|
|
233
233
|
|
|
234
|
+
workspace 或 SDK 工程修改 Function 声明后,在项目根目录执行:
|
|
235
|
+
|
|
236
|
+
<!-- example: prepare-workspace-contracts -->
|
|
237
|
+
```bash
|
|
238
|
+
base-database-cli contracts generate
|
|
239
|
+
base-database-cli check --json
|
|
240
|
+
```
|
|
241
|
+
|
|
242
|
+
`contracts generate` 默认校验依赖声明与锁文件,复用 check/deploy 的安装缓存;依赖缺失或安装指纹变化时,使用 CLI 自带 npm 按现有锁文件执行 npm ci,再生成契约。workspace 使用根依赖,classic SDK 工程分别准备 Page 和服务端依赖;无 SDK 的 classic 保留原有输入类型生成,不安装依赖。仅改页面且不影响契约时直接 check。
|
|
243
|
+
|
|
244
|
+
已准备好依赖、需要保留当前安装现场或独立管理安装步骤时,可执行 `base-database-cli contracts generate --no-install`;该选项直接使用现有依赖,不运行 npm ci、不更新安装缓存,缺少生成所需依赖时仍会报错。`CONTRACT_DEPENDENCIES_FAILED` 表示安装前的锁文件校验或依赖安装失败,按具体诊断修复后重试同一命令;不删除锁文件或切换 SDK 版本。`SDK_CODEGEN_UNAVAILABLE` 表示生成入口不可用,实际安装包缺少 codegen 能力时按[SDK 升级](#工程迁移与-sdk-升级)取得授权后处理。
|
|
245
|
+
|
|
234
246
|
`check` 先在本地读取全部 Function 声明,按需安装依赖、核对 Function 契约,再用与 deploy 相同的本次 kind 集合调用统一 `/functions/validate`,最后构建 Page/FaaS。payload 始终声明 `sql/edge/mutation`;存在 `ai/` 根时还声明 ai kind,其中空根表示明确校验空集合。Validate 不修改 binding、draft、Artifact 或发布状态。workspace 或 SDK 工程的契约发生变化时会报告 `CONTRACT_STALE`;先在项目根显式执行 `base-database-cli contracts generate`,再运行 `base-database-cli check --json`,不要反复 check 或手改生成物。
|
|
235
247
|
|
|
236
248
|
只有无 App SDK 的 classic 使用本地 metadata 自动更新输入类型。生成形态仍按[Function 调用契约](#function-调用契约)选择;check 的自动生成不改变 helper 路由。`--no-install` 要求依赖已经就绪,不能绕过契约核对。只有明确没有应用 API 访问条件的离线检查才使用 `--local-only`;结果中的 `serverValidation.status=not_run` 表示 SQL 编译、Catalog、AI model profile 和其他服务端语义均未验证。显式 `--skip-ai-functions` 时,AI 声明不进入本次校验 payload,结果中的 AI 数量为 0,不能报告 AI 已校验。旧工程缺少整个 `ai/` 根时同样不声明 ai kind,但结果会给出 `AI_FUNCTION_ROOT_ABSENT_PRESERVED`,表示远端 AI 被保留且未校验、未同步;先用公共 `pull` 恢复,而不是把缺失根当成空集合。
|
|
@@ -162,13 +162,16 @@ type DownstreamOutcome<T> =
|
|
|
162
162
|
|
|
163
163
|
FaaS 使用 `context.fetch` 调用固定的批量写入路由;只使用线上 origin:
|
|
164
164
|
|
|
165
|
-
|
|
|
165
|
+
| 环境/品牌 | Origin |
|
|
166
166
|
|---|---|
|
|
167
|
-
| Online | `https://open.feishu.cn` |
|
|
167
|
+
| Online 飞书 | `https://open.feishu.cn` |
|
|
168
|
+
| Online Lark(海外) | `https://open.larksuite.com` |
|
|
169
|
+
|
|
170
|
+
使用 SDK 的 `ctx.records` 时,地址由 SDK 自动选择,无需手动配置。后文的 `context.fetch` 示例以飞书为例,Lark 使用上表对应的地址,路径及请求体相同。
|
|
168
171
|
|
|
169
172
|
#### 应用记录写入协议
|
|
170
173
|
|
|
171
|
-
|
|
174
|
+
站点记录与附件写入使用以下五个固定路由,均为 `POST`,请求头为
|
|
172
175
|
`Content-Type: application/json; charset=utf-8`:
|
|
173
176
|
|
|
174
177
|
```http
|
|
@@ -303,7 +303,7 @@ workspace 从已安装 SDK `/page` 导入两个 helper,并按包内 docs 核
|
|
|
303
303
|
|
|
304
304
|
### 写后读
|
|
305
305
|
|
|
306
|
-
Page 示例适用版本:SDK 0.
|
|
306
|
+
Page 示例适用版本:SDK 0.4.0 起(workspace 工程的默认写后读、`DataNotReadyError` 与 `readYourWrites: false` 选项)。先读已安装 SDK 的 `package.json` 版本;未满足时按[SDK 升级流程](development.md#工程迁移与-sdk-升级)处理,升级前页面的读按普通查询发起。
|
|
307
307
|
|
|
308
308
|
Page 的读默认读到本会话此前的写入,包括写后由刷新结果联动触发的查询;数据尚未追上时由服务端等待、SDK 重试。
|
|
309
309
|
|
|
@@ -130,6 +130,7 @@ FaaS 调用 Database Function 与写入的协议见[FaaS 协议](faas.md#faas-
|
|
|
130
130
|
- 对外分发或扩大分享范围前,提醒用户核对应用文档的分享设置——该设置决定访问准入,不能由页面代码代替。
|
|
131
131
|
- Preview 可验证已授权管理者的行为,不能据此证明普通成员/访客的行为;身份和覆盖边界见[Preview 与 Prod 准入](#preview-与-prod-准入)。普通成员多角色验收在已授权的 Prod 任务中用真实账号完成。
|
|
132
132
|
- 修改原生 Base 角色或高级权限、删除 binding 属于危险操作,按 [Skill 主流程](../SKILL.md#外部操作与授权)核对具体目标和影响范围的授权。
|
|
133
|
+
- 以机器人(bot)身份搭建的 Base 与应用属主是机器人;init 只把本次新建的资源交给当前 CLI 用户及 `--grant-admin` 追加指定的人,结果与补救见[bot 建站与交接](collaborator-handoff.md)。加管理员不改变运行态数据边界。
|
|
133
134
|
|
|
134
135
|
## Preview 与 Prod 准入
|
|
135
136
|
|