@lark-base-open/base-database-cli 1.3.8 → 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.
- package/CHANGELOG.md +19 -0
- package/dist/archive.d.ts +16 -2
- package/dist/archive.d.ts.map +1 -1
- package/dist/archive.js +59 -13
- package/dist/archive.js.map +1 -1
- package/dist/function-description.d.ts +6 -0
- package/dist/function-description.d.ts.map +1 -0
- package/dist/function-description.js +29 -0
- package/dist/function-description.js.map +1 -0
- package/dist/lark-cli-error.d.ts +1 -0
- package/dist/lark-cli-error.d.ts.map +1 -1
- package/dist/lark-cli-error.js +5 -0
- package/dist/lark-cli-error.js.map +1 -1
- package/dist/mutation.d.ts +1 -1
- package/dist/mutation.d.ts.map +1 -1
- package/dist/mutation.js +5 -5
- package/dist/mutation.js.map +1 -1
- package/dist/project-context.d.ts.map +1 -1
- package/dist/project-context.js +42 -6
- package/dist/project-context.js.map +1 -1
- package/package.json +1 -1
- package/skills/lark-base-database/SKILL.md +2 -0
- package/skills/lark-base-database/references/ai-function.md +7 -3
- package/skills/lark-base-database/references/base-sql-errors.generated.md +482 -40
- package/skills/lark-base-database/references/database-function.md +26 -3
- package/skills/lark-base-database/references/development.md +2 -0
- package/skills/lark-base-database/references/faas.md +3 -1
- package/skills/lark-base-database/references/mutations.md +4 -4
- package/templates/database-starter/mutations/README.md +1 -1
- package/templates/database-starter/page/package-lock.json +4 -4
- package/templates/database-starter/page/package.json +1 -1
- package/templates/database-starter/page/src/components/floating-button/index.tsx +18 -20
- package/templates/database-starter/page/src/components/floating-button/utils/request-edit.test.ts +42 -0
- package/templates/database-starter/page/src/components/floating-button/utils/request-edit.ts +21 -0
- package/templates/database-starter/page/src/main.test.ts +28 -0
- package/templates/database-starter/page/src/main.tsx +2 -0
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,24 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## [1.3.9] - 2026-10-08
|
|
4
|
+
|
|
5
|
+
### Changed
|
|
6
|
+
|
|
7
|
+
- Database Function、Mutation 和 FaaS Function 的描述改为必填;`check` 与 Preview 部署会统一校验并汇总问题。
|
|
8
|
+
- `context` 在函数描述不合规时保留函数摘要,并提供完整修复提示。
|
|
9
|
+
- AI Function 指引补充 `reasoning_depth: "off"` 的用法与模型支持条件。
|
|
10
|
+
- 新建站点使用 Channel SDK `0.1.5`。
|
|
11
|
+
- 更新 SQL 错误参考与查询规范,明确数组、空值、文本排序、聚合及多选名称筛选的支持边界。
|
|
12
|
+
|
|
13
|
+
### Fixed
|
|
14
|
+
|
|
15
|
+
- 新建站点打开管理页失败时显示错误提示。
|
|
16
|
+
- SQL 错误缺少结构化详情时,从服务端文案恢复错误码与 LogID。
|
|
17
|
+
|
|
18
|
+
### Security
|
|
19
|
+
|
|
20
|
+
- 新建站点的外部链接接入宿主安全检查。
|
|
21
|
+
|
|
3
22
|
## [1.3.8] - 2026-09-29
|
|
4
23
|
|
|
5
24
|
### Added
|
package/dist/archive.d.ts
CHANGED
|
@@ -18,8 +18,22 @@ export interface DatabaseMetadataArtifacts {
|
|
|
18
18
|
metaList: string;
|
|
19
19
|
sqlValidation: SQLValidationArtifact[];
|
|
20
20
|
}
|
|
21
|
-
|
|
22
|
-
|
|
21
|
+
export interface FunctionDescriptionProblem {
|
|
22
|
+
/** Absolute meta.json path. */
|
|
23
|
+
path: string;
|
|
24
|
+
reason: string;
|
|
25
|
+
}
|
|
26
|
+
/** List every Function whose meta.json description violates the contract, without throwing on them. */
|
|
27
|
+
export declare function readFunctionDescriptionProblems(workspace: string): FunctionDescriptionProblem[];
|
|
28
|
+
/**
|
|
29
|
+
* Read the validated Function input contracts used by Page type generation and context.
|
|
30
|
+
* check/deploy rely on this read to reject invalid descriptions early; only context
|
|
31
|
+
* passes enforceDescriptions=false so it can still summarize Functions and report the
|
|
32
|
+
* description problems separately via readFunctionDescriptionProblems.
|
|
33
|
+
*/
|
|
34
|
+
export declare function readDatabaseFunctionInputContracts(workspace: string, { enforceDescriptions }?: {
|
|
35
|
+
enforceDescriptions?: boolean;
|
|
36
|
+
}): DatabaseFunctionInputContract[];
|
|
23
37
|
/** Validate Function contracts without changing metadata or publish artifacts. */
|
|
24
38
|
export declare function validateDatabaseMetadata(workspace: string): {
|
|
25
39
|
sql: number;
|
package/dist/archive.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"archive.d.ts","sourceRoot":"","sources":["../src/archive.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"archive.d.ts","sourceRoot":"","sources":["../src/archive.ts"],"names":[],"mappings":"AAiCA,UAAU,QAAQ;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,6BAA6B;IAC5C,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,QAAQ,CAAC,cAAc,CAAC,CAAC;IACvC,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACtC;AAED,MAAM,WAAW,qBAAqB;IACpC,UAAU,EAAE,MAAM,CAAC;IACnB,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,yBAAyB;IACxC,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,qBAAqB,EAAE,CAAC;CACxC;AAyHD,MAAM,WAAW,0BAA0B;IACzC,+BAA+B;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;CAChB;AA8BD,uGAAuG;AACvG,wBAAgB,+BAA+B,CAC7C,SAAS,EAAE,MAAM,GAChB,0BAA0B,EAAE,CAE9B;AAgCD;;;;;GAKG;AACH,wBAAgB,kCAAkC,CAChD,SAAS,EAAE,MAAM,EACjB,EAAE,mBAA0B,EAAE,GAAE;IAAE,mBAAmB,CAAC,EAAE,OAAO,CAAA;CAAO,GACrE,6BAA6B,EAAE,CAgBjC;AAED,kFAAkF;AAClF,wBAAgB,wBAAwB,CAAC,SAAS,EAAE,MAAM;IAGtD,GAAG;IACH,IAAI;IACJ,QAAQ;EAEX;AAmFD,wBAAgB,uBAAuB,CACrC,SAAS,EAAE,MAAM,GAChB,yBAAyB,CAK3B;AAED,wBAAsB,eAAe,CACnC,SAAS,EAAE,MAAM,EACjB,QAAQ,GAAE,yBAA8D;;;;;GAczE"}
|
package/dist/archive.js
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { createWriteStream, existsSync, lstatSync, mkdirSync, readdirSync, readFileSync, rmSync, statSync, writeFileSync, } from 'node:fs';
|
|
2
2
|
import { basename, dirname, join, relative, resolve } from 'node:path';
|
|
3
3
|
import { ZipArchive } from 'archiver';
|
|
4
|
-
import { readMutationMetaItem } from './mutation.js';
|
|
4
|
+
import { readMutationJSON, readMutationMetaItem } from './mutation.js';
|
|
5
|
+
import { FUNCTION_DESCRIPTION_GUIDANCE, functionDescriptionProblem, validateFunctionDescription, } from './function-description.js';
|
|
5
6
|
import { deriveSQLInputSchema, normalizeFunctionInputSchema, } from './function-schema.js';
|
|
6
7
|
import { DATABASE_FUNCTIONS_DIRECTORY, requireDatabaseFunctionsDirectory, } from './project-layout.js';
|
|
7
8
|
const FUNCTION_ID_PATTERN = /^[A-Za-z0-9_-]+$/;
|
|
@@ -16,7 +17,7 @@ function findMetaFiles(directory) {
|
|
|
16
17
|
return existsSync(path) && statSync(path).isFile() ? [path] : [];
|
|
17
18
|
});
|
|
18
19
|
}
|
|
19
|
-
function readMetaItem(type, path) {
|
|
20
|
+
function readMetaItem(type, path, enforceDescription = true) {
|
|
20
21
|
const manifest = JSON.parse(readFileSync(path, 'utf8'));
|
|
21
22
|
const functionId = basename(dirname(path));
|
|
22
23
|
if (functionId.length > 64 ||
|
|
@@ -27,15 +28,13 @@ function readMetaItem(type, path) {
|
|
|
27
28
|
if (typeof manifest.name !== 'string' || manifest.name === '') {
|
|
28
29
|
throw new Error(`Function name must be a non-empty string: ${path}`);
|
|
29
30
|
}
|
|
30
|
-
if (
|
|
31
|
-
|
|
32
|
-
throw new Error(`Function description must be a string: ${path}`);
|
|
33
|
-
}
|
|
31
|
+
if (enforceDescription)
|
|
32
|
+
validateFunctionDescription(manifest.description, manifest.name, path);
|
|
34
33
|
const item = {
|
|
35
34
|
functionId,
|
|
36
35
|
functionType: type === 'sql' ? 1 : 2,
|
|
37
36
|
name: manifest.name,
|
|
38
|
-
description: manifest.description
|
|
37
|
+
description: typeof manifest.description === 'string' ? manifest.description : '',
|
|
39
38
|
sourceCode: '',
|
|
40
39
|
};
|
|
41
40
|
if (type === 'sql') {
|
|
@@ -72,7 +71,7 @@ function readMetaItem(type, path) {
|
|
|
72
71
|
}
|
|
73
72
|
return item;
|
|
74
73
|
}
|
|
75
|
-
function
|
|
74
|
+
function listMetaFiles(workspace) {
|
|
76
75
|
const databaseFunctions = requireDatabaseFunctionsDirectory(workspace);
|
|
77
76
|
const mutationRoot = join(workspace, 'mutations');
|
|
78
77
|
if (existsSync(mutationRoot)) {
|
|
@@ -101,11 +100,50 @@ function readMetadata(workspace) {
|
|
|
101
100
|
if (files.length > MAX_FUNCTIONS) {
|
|
102
101
|
throw new Error(`Functions cannot exceed ${MAX_FUNCTIONS}`);
|
|
103
102
|
}
|
|
103
|
+
return files;
|
|
104
|
+
}
|
|
105
|
+
// Files that are not valid JSON objects are left to the per-file readers, which report them with their path.
|
|
106
|
+
function scanFunctionDescriptions(files) {
|
|
107
|
+
const problems = [];
|
|
108
|
+
for (const { type, path } of files) {
|
|
109
|
+
let manifest;
|
|
110
|
+
try {
|
|
111
|
+
manifest =
|
|
112
|
+
type === 'mutation'
|
|
113
|
+
? readMutationJSON(path)
|
|
114
|
+
: JSON.parse(readFileSync(path, 'utf8'));
|
|
115
|
+
}
|
|
116
|
+
catch {
|
|
117
|
+
continue;
|
|
118
|
+
}
|
|
119
|
+
if (!manifest || typeof manifest !== 'object' || Array.isArray(manifest)) {
|
|
120
|
+
continue;
|
|
121
|
+
}
|
|
122
|
+
const { name, description } = manifest;
|
|
123
|
+
const reason = functionDescriptionProblem(description, name);
|
|
124
|
+
if (reason)
|
|
125
|
+
problems.push({ path, reason });
|
|
126
|
+
}
|
|
127
|
+
return problems;
|
|
128
|
+
}
|
|
129
|
+
/** List every Function whose meta.json description violates the contract, without throwing on them. */
|
|
130
|
+
export function readFunctionDescriptionProblems(workspace) {
|
|
131
|
+
return scanFunctionDescriptions(listMetaFiles(databaseProject(workspace)));
|
|
132
|
+
}
|
|
133
|
+
function readMetadata(workspace, { enforceDescriptions = true } = {}) {
|
|
134
|
+
const files = listMetaFiles(workspace);
|
|
135
|
+
if (enforceDescriptions) {
|
|
136
|
+
// Collect all description failures before parsing source contracts or producing artifacts.
|
|
137
|
+
const problems = scanFunctionDescriptions(files);
|
|
138
|
+
if (problems.length) {
|
|
139
|
+
throw new Error(`Invalid Function descriptions:\n${problems.map(({ path, reason }) => `${path}: description ${reason}`).join('\n')}\n${FUNCTION_DESCRIPTION_GUIDANCE}`);
|
|
140
|
+
}
|
|
141
|
+
}
|
|
104
142
|
const ids = new Set();
|
|
105
143
|
const items = files.map(({ type, path }) => {
|
|
106
144
|
const item = type === 'mutation'
|
|
107
|
-
? readMutationMetaItem(path, workspace)
|
|
108
|
-
: readMetaItem(type, path);
|
|
145
|
+
? readMutationMetaItem(path, workspace, enforceDescriptions)
|
|
146
|
+
: readMetaItem(type, path, enforceDescriptions);
|
|
109
147
|
if (ids.has(item.functionId)) {
|
|
110
148
|
throw new Error(`Duplicate Function ID: ${item.functionId}`);
|
|
111
149
|
}
|
|
@@ -114,9 +152,16 @@ function readMetadata(workspace) {
|
|
|
114
152
|
});
|
|
115
153
|
return items;
|
|
116
154
|
}
|
|
117
|
-
/**
|
|
118
|
-
|
|
119
|
-
|
|
155
|
+
/**
|
|
156
|
+
* Read the validated Function input contracts used by Page type generation and context.
|
|
157
|
+
* check/deploy rely on this read to reject invalid descriptions early; only context
|
|
158
|
+
* passes enforceDescriptions=false so it can still summarize Functions and report the
|
|
159
|
+
* description problems separately via readFunctionDescriptionProblems.
|
|
160
|
+
*/
|
|
161
|
+
export function readDatabaseFunctionInputContracts(workspace, { enforceDescriptions = true } = {}) {
|
|
162
|
+
return readMetadata(databaseProject(workspace), {
|
|
163
|
+
enforceDescriptions,
|
|
164
|
+
}).map((item) => ({
|
|
120
165
|
functionId: item.functionId,
|
|
121
166
|
functionType: item.functionType,
|
|
122
167
|
// Mutation uses spec.params rather than discovery inputSchema; keep its local call input as an array.
|
|
@@ -209,6 +254,7 @@ export async function archiveDatabase(workspace, metadata = prepareDatabaseMetad
|
|
|
209
254
|
const project = databaseProject(workspace);
|
|
210
255
|
const artifacts = join(project, '.base-database-cli/state/artifacts');
|
|
211
256
|
mkdirSync(artifacts, { recursive: true });
|
|
257
|
+
validateDatabaseMetadata(project);
|
|
212
258
|
const archive = join(artifacts, 'site.zip');
|
|
213
259
|
await createArchive(project, archive);
|
|
214
260
|
return {
|
package/dist/archive.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"archive.js","sourceRoot":"","sources":["../src/archive.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"archive.js","sourceRoot":"","sources":["../src/archive.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/** Shared discovery contract for SQL, Mutation and FaaS (AI Functions are separate). */
|
|
2
|
+
export declare const FUNCTION_DESCRIPTION_GUIDANCE = "Write the description field in each listed meta.json: state who uses the function or when, what data it reads or writes, and whether it has side effects (writes/external calls) or is read-only. Example: \"Employees view their subscriptions and transfer status for each period (read-only)\".";
|
|
3
|
+
/** Returns why description is invalid, or undefined when it satisfies the contract. */
|
|
4
|
+
export declare function functionDescriptionProblem(description: unknown, name: unknown): string | undefined;
|
|
5
|
+
export declare function validateFunctionDescription(description: unknown, name: unknown, path: string): asserts description is string;
|
|
6
|
+
//# sourceMappingURL=function-description.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"function-description.d.ts","sourceRoot":"","sources":["../src/function-description.ts"],"names":[],"mappings":"AAAA,wFAAwF;AACxF,eAAO,MAAM,6BAA6B,uSAC0P,CAAC;AAErS,uFAAuF;AACvF,wBAAgB,0BAA0B,CACxC,WAAW,EAAE,OAAO,EACpB,IAAI,EAAE,OAAO,GACZ,MAAM,GAAG,SAAS,CAkBpB;AAED,wBAAgB,2BAA2B,CACzC,WAAW,EAAE,OAAO,EACpB,IAAI,EAAE,OAAO,EACb,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,WAAW,IAAI,MAAM,CAO/B"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/** Shared discovery contract for SQL, Mutation and FaaS (AI Functions are separate). */
|
|
2
|
+
export const FUNCTION_DESCRIPTION_GUIDANCE = 'Write the description field in each listed meta.json: state who uses the function or when, what data it reads or writes, and whether it has side effects (writes/external calls) or is read-only. Example: "Employees view their subscriptions and transfer status for each period (read-only)".';
|
|
3
|
+
/** Returns why description is invalid, or undefined when it satisfies the contract. */
|
|
4
|
+
export function functionDescriptionProblem(description, name) {
|
|
5
|
+
if (typeof description !== 'string') {
|
|
6
|
+
return 'is required and must be a string';
|
|
7
|
+
}
|
|
8
|
+
if (description.trim() === '') {
|
|
9
|
+
return 'must not be blank';
|
|
10
|
+
}
|
|
11
|
+
if ([...description.trim()].length < 8) {
|
|
12
|
+
return 'must contain at least 8 Unicode characters after trimming';
|
|
13
|
+
}
|
|
14
|
+
if ([...description].length > 500) {
|
|
15
|
+
// Match the server limit on the actual submitted value, including whitespace.
|
|
16
|
+
return 'must contain at most 500 Unicode characters';
|
|
17
|
+
}
|
|
18
|
+
if (typeof name === 'string' && description.trim() === name.trim()) {
|
|
19
|
+
return 'must differ from name after trimming';
|
|
20
|
+
}
|
|
21
|
+
return undefined;
|
|
22
|
+
}
|
|
23
|
+
export function validateFunctionDescription(description, name, path) {
|
|
24
|
+
const reason = functionDescriptionProblem(description, name);
|
|
25
|
+
if (reason) {
|
|
26
|
+
throw new Error(`${path}: description ${reason}. ${FUNCTION_DESCRIPTION_GUIDANCE}`);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=function-description.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"function-description.js","sourceRoot":"","sources":["../src/function-description.ts"],"names":[],"mappings":"AAAA,wFAAwF;AACxF,MAAM,CAAC,MAAM,6BAA6B,GACxC,kSAAkS,CAAC;AAErS,uFAAuF;AACvF,MAAM,UAAU,0BAA0B,CACxC,WAAoB,EACpB,IAAa;IAEb,IAAI,OAAO,WAAW,KAAK,QAAQ,EAAE,CAAC;QACpC,OAAO,kCAAkC,CAAC;IAC5C,CAAC;IACD,IAAI,WAAW,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QAC9B,OAAO,mBAAmB,CAAC;IAC7B,CAAC;IACD,IAAI,CAAC,GAAG,WAAW,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvC,OAAO,2DAA2D,CAAC;IACrE,CAAC;IACD,IAAI,CAAC,GAAG,WAAW,CAAC,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC;QAClC,8EAA8E;QAC9E,OAAO,6CAA6C,CAAC;IACvD,CAAC;IACD,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,WAAW,CAAC,IAAI,EAAE,KAAK,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;QACnE,OAAO,sCAAsC,CAAC;IAChD,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,2BAA2B,CACzC,WAAoB,EACpB,IAAa,EACb,IAAY;IAEZ,MAAM,MAAM,GAAG,0BAA0B,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;IAC7D,IAAI,MAAM,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CACb,GAAG,IAAI,iBAAiB,MAAM,KAAK,6BAA6B,EAAE,CACnE,CAAC;IACJ,CAAC;AACH,CAAC"}
|
package/dist/lark-cli-error.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lark-cli-error.d.ts","sourceRoot":"","sources":["../src/lark-cli-error.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,KAAK,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAChF,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,SAAS,GAAG,QAAQ,GAAG,eAAe,CAAC;IAC/C,KAAK,CAAC,EAAE;QAAE,EAAE,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACtD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,WAAW;IAC1B,WAAW,CAAC,EAAE,cAAc,CAAC;IAC7B,IAAI,EAAE,KAAK,GAAG,WAAW,GAAG,kBAAkB,CAAC;IAC/C,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,KAAK,CAAC,EAAE,WAAW,EAAE,CAAC;IACtB,OAAO,CAAC,EAAE,eAAe,EAAE,CAAC;CAC7B;AAED,MAAM,WAAW,eAAe;IAC9B,WAAW,CAAC,EAAE,cAAc,CAAC;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAEzE;AAgBD,wBAAgB,cAAc,CAC5B,KAAK,EAAE,OAAO,EACd,GAAG,GAAE,MAAM,CAAC,UAAe,GAC1B,MAAM,CAoBR;AA4BD,wBAAgB,YAAY,CAC1B,IAAI,EAAE,OAAO,EACb,GAAG,GAAE,MAAM,CAAC,UAAe,GAC1B,WAAW,EAAE,GAAG,SAAS,CAkD3B;AAmCD,wBAAgB,YAAY,CAC1B,IAAI,EAAE,OAAO,EACb,GAAG,GAAE,MAAM,CAAC,UAAe,GAC1B,eAAe,EAAE,GAAG,SAAS,CAQ/B;AAUD,qBAAa,YAAa,SAAQ,KAAK;IACzB,QAAQ,CAAC,OAAO,EAAE,WAAW;IAAzC,YAAqB,OAAO,EAAE,WAAW,EASxC;IAED,IAAI,sBAAsB,IAAI,OAAO,CAKpC;IAED,MAAM,CAAC,QAAQ,CACb,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,MAAM,EAChB,GAAG,EAAE,MAAM,CAAC,UAAU,GACrB,YAAY,
|
|
1
|
+
{"version":3,"file":"lark-cli-error.d.ts","sourceRoot":"","sources":["../src/lark-cli-error.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,KAAK,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAChF,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,SAAS,GAAG,QAAQ,GAAG,eAAe,CAAC;IAC/C,KAAK,CAAC,EAAE;QAAE,EAAE,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACtD,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,WAAW;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,cAAc,CAAC;IAC7B,IAAI,EAAE,KAAK,GAAG,WAAW,GAAG,kBAAkB,CAAC;IAC/C,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,KAAK,CAAC,EAAE,WAAW,EAAE,CAAC;IACtB,OAAO,CAAC,EAAE,eAAe,EAAE,CAAC;CAC7B;AAED,MAAM,WAAW,eAAe;IAC9B,WAAW,CAAC,EAAE,cAAc,CAAC;IAC7B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAEzE;AAgBD,wBAAgB,cAAc,CAC5B,KAAK,EAAE,OAAO,EACd,GAAG,GAAE,MAAM,CAAC,UAAe,GAC1B,MAAM,CAoBR;AA4BD,wBAAgB,YAAY,CAC1B,IAAI,EAAE,OAAO,EACb,GAAG,GAAE,MAAM,CAAC,UAAe,GAC1B,WAAW,EAAE,GAAG,SAAS,CAkD3B;AAmCD,wBAAgB,YAAY,CAC1B,IAAI,EAAE,OAAO,EACb,GAAG,GAAE,MAAM,CAAC,UAAe,GAC1B,eAAe,EAAE,GAAG,SAAS,CAQ/B;AAUD,qBAAa,YAAa,SAAQ,KAAK;IACzB,QAAQ,CAAC,OAAO,EAAE,WAAW;IAAzC,YAAqB,OAAO,EAAE,WAAW,EASxC;IAED,IAAI,sBAAsB,IAAI,OAAO,CAKpC;IAED,MAAM,CAAC,QAAQ,CACb,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,MAAM,EAChB,GAAG,EAAE,MAAM,CAAC,UAAU,GACrB,YAAY,CAgDd;CACF"}
|
package/dist/lark-cli-error.js
CHANGED
|
@@ -165,6 +165,10 @@ export class LarkCliError extends Error {
|
|
|
165
165
|
const data = isRecord(body.data) ? body.data : {};
|
|
166
166
|
const publicError = readPublicSQLError(data.error);
|
|
167
167
|
const responseMessage = error.message ?? error.msg;
|
|
168
|
+
// 宿主失败信封可能丢掉 data;仅恢复服务端固定后缀中的码和 LogID,不推断诊断、重试或参数对象。
|
|
169
|
+
const suffix = typeof responseMessage === 'string'
|
|
170
|
+
? /(?:^|\. )Code: (BASE_SQL_[A-Z_]+)(?: \/ SQL_[A-Z_]+)?\. LogID: ([A-Za-z0-9]{16,128})$/.exec(responseMessage)
|
|
171
|
+
: null;
|
|
168
172
|
const sqlMessage = publicError || isSQLFailure(error.code, responseMessage);
|
|
169
173
|
const items = fieldResults(body.data, env);
|
|
170
174
|
const results = batchResults(body.data, env);
|
|
@@ -184,6 +188,7 @@ export class LarkCliError extends Error {
|
|
|
184
188
|
: publicError?.message || safeDiagnostic(responseMessage, env)) ||
|
|
185
189
|
safeDiagnostic(fallback, env) ||
|
|
186
190
|
'lark-cli request failed',
|
|
191
|
+
...(suffix ? { semanticCode: suffix[1], logId: suffix[2] } : {}),
|
|
187
192
|
...errorFields(error, env),
|
|
188
193
|
...(typeof data.log_id === 'string' ? { logId: data.log_id } : {}),
|
|
189
194
|
...(publicError
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lark-cli-error.js","sourceRoot":"","sources":["../src/lark-cli-error.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAuB,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"lark-cli-error.js","sourceRoot":"","sources":["../src/lark-cli-error.ts"],"names":[],"mappings":"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"}
|
package/dist/mutation.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
export declare function readMutationJSON(path: string): unknown;
|
|
2
2
|
export declare function validateMutationDefinition(definition: unknown): void;
|
|
3
|
-
export declare function readMutationMetaItem(path: string, workspace: string): {
|
|
3
|
+
export declare function readMutationMetaItem(path: string, workspace: string, enforceDescription?: boolean): {
|
|
4
4
|
functionId: string;
|
|
5
5
|
functionType: 5;
|
|
6
6
|
name: string;
|
package/dist/mutation.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mutation.d.ts","sourceRoot":"","sources":["../src/mutation.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"mutation.d.ts","sourceRoot":"","sources":["../src/mutation.ts"],"names":[],"mappings":"AAwEA,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEtD;AAED,wBAAgB,0BAA0B,CAAC,UAAU,EAAE,OAAO,GAAG,IAAI,CAgEpE;AAED,wBAAgB,oBAAoB,CAClC,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,MAAM,EACjB,kBAAkB,UAAO;;kBAsCT,CAAC;;;;EAKlB"}
|
package/dist/mutation.js
CHANGED
|
@@ -2,6 +2,7 @@ import { readFileSync } from 'node:fs';
|
|
|
2
2
|
import { basename, dirname, join } from 'node:path';
|
|
3
3
|
import { Ajv } from 'ajv';
|
|
4
4
|
import { parseTree } from 'jsonc-parser';
|
|
5
|
+
import { validateFunctionDescription } from './function-description.js';
|
|
5
6
|
import { mutationSchema } from './mutation-schema.js';
|
|
6
7
|
const validate = new Ajv({ allErrors: true, strict: false }).compile(mutationSchema);
|
|
7
8
|
const maxMutationSourceBytes = 2 * 1024 * 1024;
|
|
@@ -96,7 +97,7 @@ export function validateMutationDefinition(definition) {
|
|
|
96
97
|
if (id !== 'rec_id' && !Object.hasOwn(s.set ?? {}, id))
|
|
97
98
|
throw new Error('Mutation returning may only include rec_id and set fields');
|
|
98
99
|
}
|
|
99
|
-
export function readMutationMetaItem(path, workspace) {
|
|
100
|
+
export function readMutationMetaItem(path, workspace, enforceDescription = true) {
|
|
100
101
|
const meta = readMutationJSON(path);
|
|
101
102
|
if (!meta ||
|
|
102
103
|
typeof meta !== 'object' ||
|
|
@@ -108,9 +109,8 @@ export function readMutationMetaItem(path, workspace) {
|
|
|
108
109
|
throw new Error(`Invalid Function ID: ${functionId}`);
|
|
109
110
|
if (typeof meta.name !== 'string' || !meta.name || [...meta.name].length > 64)
|
|
110
111
|
throw new Error('Mutation name must contain 1 to 64 characters');
|
|
111
|
-
if (
|
|
112
|
-
(
|
|
113
|
-
throw new Error('Mutation description must be a string up to 500 characters');
|
|
112
|
+
if (enforceDescription)
|
|
113
|
+
validateFunctionDescription(meta.description, meta.name, path);
|
|
114
114
|
const specPath = join(dirname(path), 'spec.json');
|
|
115
115
|
const sourceCode = `{"spec":${readFileSync(specPath, 'utf8')}}`;
|
|
116
116
|
const definition = parseMutationJSON(sourceCode, specPath);
|
|
@@ -124,7 +124,7 @@ export function readMutationMetaItem(path, workspace) {
|
|
|
124
124
|
functionId,
|
|
125
125
|
functionType: 5,
|
|
126
126
|
name: meta.name,
|
|
127
|
-
description: meta.description
|
|
127
|
+
description: typeof meta.description === 'string' ? meta.description : '',
|
|
128
128
|
sourceCode,
|
|
129
129
|
};
|
|
130
130
|
}
|
package/dist/mutation.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mutation.js","sourceRoot":"","sources":["../src/mutation.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"mutation.js","sourceRoot":"","sources":["../src/mutation.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"project-context.d.ts","sourceRoot":"","sources":["../src/project-context.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"project-context.d.ts","sourceRoot":"","sources":["../src/project-context.ts"],"names":[],"mappings":"AAeA,OAAO,EASL,KAAK,iCAAiC,EACvC,MAAM,4BAA4B,CAAC;AAEpC,eAAO,MAAM,8BAA8B,qCACP,CAAC;AACrC,eAAO,MAAM,sCAAsC,6CACP,CAAC;AAE7C,KAAK,OAAO,GAAG;IACb,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,KAAK,SAAS,GAAG;IACf,KAAK,EAAE,OAAO,CAAC;IACf,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB,CAAC;AAEF,KAAK,UAAU,GAAG;IAChB,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAIF,MAAM,WAAW,qBAAqB;IACpC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAyeD,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,qBAAqB;;;QAtC1D,OAAO;QACP,WAAW;QACX,WAAW;;;gBAGH,eAAe;;;;;;;QAMV,QAAQ;;;QACX,SAAS;QAAQ,MAAM;;;QACtB,QAAQ;QAAM,QAAQ;QAAM,IAAI;;;QAE3C,cAAc;;;QACd,OAAO;YAAI,MAAM,EAAE,SAAS;;;;QAG5B,IAAI;QACJ,KAAK;YAAI,KAAK;YAAS,QAAQ;;QAC/B,MAAM;YAAI,KAAK;YAAS,QAAQ;;;;;;;;;;;;QArBhC,OAAO;QACP,WAAW;QACX,WAAW;;;QASE,QAAQ;;;QACX,SAAS;QAAQ,MAAM;;;QACtB,QAAQ;QAAM,QAAQ;QAAM,IAAI;;;QAE3C,cAAc;;;QACd,OAAO;YAAI,MAAM,EAAE,SAAS;;;;;;;;;gBAiDU,SAAS;;;QAE7C,IAAI;YAAI,KAAK;YAAS,QAAQ;;QAC9B,KAAK;YAAI,KAAK;YAAS,QAAQ;;QAC/B,MAAM;YAAI,KAAK;YAAS,QAAQ;;;;;;;;;;;QAkFlC,OAAO;QACP,WAAW;QACX,WAAW;;;;;;;;;;QASE,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oBA3Se,SAAS;;;;oBAiB5B,SAAS;;;;;;;;;;;YAkSlB,KAAK;YAAS,QAAQ;;;;;;;;;;;;;EAOnC;AAED,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,UAAU,CAAC,OAAO,iBAAiB,CAAC;;;;QAMvC,MAAM;QACN,KAAK;QACL,WAAW;;;;;;;;QAIX,SAAS;QACT,UAAU;;;QAGV,aAAa;QACb,aAAa;QACb,SAAS;;;;;;;YAtLE,MAAM,EAAE,SAAS;;;;;;;oBAzJQ,SAAS;;;;oBAiB5B,SAAS;;;;;;;;;;;;YA4IjB,KAAK;YAAS,QAAQ;;;YACrB,KAAK;YAAS,QAAQ;;;;YA8CtB,KAAK;YAAS,QAAQ;;;YACrB,KAAK;YAAS,QAAQ;;;YACrB,KAAK;YAAS,QAAQ;;;;YAqG1B,KAAK;YAAS,QAAQ;;;;;;;;;;;;;;;;;;;;;EAmCnC"}
|
package/dist/project-context.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { existsSync, readFileSync, readdirSync, statSync } from 'node:fs';
|
|
2
|
-
import { basename, join, resolve } from 'node:path';
|
|
3
|
-
import { readDatabaseFunctionInputContracts } from './archive.js';
|
|
2
|
+
import { basename, join, relative, resolve } from 'node:path';
|
|
3
|
+
import { readDatabaseFunctionInputContracts, readFunctionDescriptionProblems, } from './archive.js';
|
|
4
|
+
import { FUNCTION_DESCRIPTION_GUIDANCE } from './function-description.js';
|
|
4
5
|
import { DATABASE_FUNCTIONS_DIRECTORY, databaseFunctionsDirectory, } from './project-layout.js';
|
|
5
6
|
import { CONFIG_FILE_NAME, readConfig } from './config.js';
|
|
6
7
|
import { validateSiteReadme } from './site-readme.js';
|
|
@@ -149,6 +150,24 @@ function inputShape(schema) {
|
|
|
149
150
|
}
|
|
150
151
|
return { type };
|
|
151
152
|
}
|
|
153
|
+
function reportFunctionDescriptionProblems(workspace, warnings) {
|
|
154
|
+
let descriptionProblems;
|
|
155
|
+
try {
|
|
156
|
+
descriptionProblems = readFunctionDescriptionProblems(workspace);
|
|
157
|
+
}
|
|
158
|
+
catch {
|
|
159
|
+
// Structural errors (missing spec.json, too many Functions) are reported by the summary below.
|
|
160
|
+
return;
|
|
161
|
+
}
|
|
162
|
+
if (descriptionProblems.length === 0)
|
|
163
|
+
return;
|
|
164
|
+
// Not compacted: the agent needs every file and the writing guidance to fix them in one pass.
|
|
165
|
+
warnings.push(warning('FUNCTION_DESCRIPTION_INVALID', [
|
|
166
|
+
`${descriptionProblems.length} Function description(s) are invalid; check and deploy will reject them:`,
|
|
167
|
+
...descriptionProblems.map(({ path, reason }) => `- ${relative(workspace, path)}: description ${reason}`),
|
|
168
|
+
FUNCTION_DESCRIPTION_GUIDANCE,
|
|
169
|
+
].join('\n')));
|
|
170
|
+
}
|
|
152
171
|
function functionSummary(workspace, warnings) {
|
|
153
172
|
const missingRoots = ['page', 'server-functions'].filter((directory) => !existsSync(join(workspace, directory)));
|
|
154
173
|
try {
|
|
@@ -166,8 +185,13 @@ function functionSummary(workspace, warnings) {
|
|
|
166
185
|
warnings.push(warning('SOURCE_ROOTS_MISSING', `Project source roots are missing: ${missingRoots.join(', ')}`));
|
|
167
186
|
return { database: [], mutation: [], faas: [] };
|
|
168
187
|
}
|
|
188
|
+
// Report description problems even when other metadata errors hide the summary,
|
|
189
|
+
// so the agent can fix every file in the same pass as check would.
|
|
190
|
+
reportFunctionDescriptionProblems(workspace, warnings);
|
|
169
191
|
try {
|
|
170
|
-
const contracts = readDatabaseFunctionInputContracts(workspace
|
|
192
|
+
const contracts = readDatabaseFunctionInputContracts(workspace, {
|
|
193
|
+
enforceDescriptions: false,
|
|
194
|
+
});
|
|
171
195
|
const database = contracts
|
|
172
196
|
.filter((contract) => contract.functionType === 1)
|
|
173
197
|
.map((contract) => ({
|
|
@@ -401,7 +425,12 @@ export function getProjectContext(options) {
|
|
|
401
425
|
'SOURCE_FINGERPRINT_UNAVAILABLE',
|
|
402
426
|
'README_INVALID',
|
|
403
427
|
].includes(item.code));
|
|
404
|
-
const
|
|
428
|
+
const descriptionsInvalid = warnings.some((item) => item.code === 'FUNCTION_DESCRIPTION_INVALID');
|
|
429
|
+
const blockers = !sourceReady
|
|
430
|
+
? ['PROJECT_INCOMPLETE']
|
|
431
|
+
: descriptionsInvalid
|
|
432
|
+
? ['FUNCTION_DESCRIPTION_INVALID']
|
|
433
|
+
: [];
|
|
405
434
|
const preview = previewReceiptSummary(workspace, config.appToken, currentFingerprint, warnings);
|
|
406
435
|
const nextActions = [];
|
|
407
436
|
if (!sourceReady) {
|
|
@@ -411,6 +440,13 @@ export function getProjectContext(options) {
|
|
|
411
440
|
reasonCode: 'PROJECT_INCOMPLETE',
|
|
412
441
|
});
|
|
413
442
|
}
|
|
443
|
+
else if (descriptionsInvalid) {
|
|
444
|
+
nextActions.push({
|
|
445
|
+
id: 'fix-function-descriptions',
|
|
446
|
+
command: 'edit description in the meta.json files listed in warnings, then run base-database-cli check',
|
|
447
|
+
reasonCode: 'FUNCTION_DESCRIPTION_INVALID',
|
|
448
|
+
});
|
|
449
|
+
}
|
|
414
450
|
else if (preview.status !== 'published') {
|
|
415
451
|
nextActions.push({
|
|
416
452
|
id: 'check',
|
|
@@ -450,8 +486,8 @@ export function getProjectContext(options) {
|
|
|
450
486
|
},
|
|
451
487
|
readiness: {
|
|
452
488
|
init: { ready: false, blockers: ['PROJECT_ALREADY_INITIALIZED'] },
|
|
453
|
-
check: { ready:
|
|
454
|
-
deploy: { ready:
|
|
489
|
+
check: { ready: blockers.length === 0, blockers },
|
|
490
|
+
deploy: { ready: blockers.length === 0, blockers },
|
|
455
491
|
},
|
|
456
492
|
warnings,
|
|
457
493
|
nextActions,
|