@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.
Files changed (36) hide show
  1. package/CHANGELOG.md +19 -0
  2. package/dist/archive.d.ts +16 -2
  3. package/dist/archive.d.ts.map +1 -1
  4. package/dist/archive.js +59 -13
  5. package/dist/archive.js.map +1 -1
  6. package/dist/function-description.d.ts +6 -0
  7. package/dist/function-description.d.ts.map +1 -0
  8. package/dist/function-description.js +29 -0
  9. package/dist/function-description.js.map +1 -0
  10. package/dist/lark-cli-error.d.ts +1 -0
  11. package/dist/lark-cli-error.d.ts.map +1 -1
  12. package/dist/lark-cli-error.js +5 -0
  13. package/dist/lark-cli-error.js.map +1 -1
  14. package/dist/mutation.d.ts +1 -1
  15. package/dist/mutation.d.ts.map +1 -1
  16. package/dist/mutation.js +5 -5
  17. package/dist/mutation.js.map +1 -1
  18. package/dist/project-context.d.ts.map +1 -1
  19. package/dist/project-context.js +42 -6
  20. package/dist/project-context.js.map +1 -1
  21. package/package.json +1 -1
  22. package/skills/lark-base-database/SKILL.md +2 -0
  23. package/skills/lark-base-database/references/ai-function.md +7 -3
  24. package/skills/lark-base-database/references/base-sql-errors.generated.md +482 -40
  25. package/skills/lark-base-database/references/database-function.md +26 -3
  26. package/skills/lark-base-database/references/development.md +2 -0
  27. package/skills/lark-base-database/references/faas.md +3 -1
  28. package/skills/lark-base-database/references/mutations.md +4 -4
  29. package/templates/database-starter/mutations/README.md +1 -1
  30. package/templates/database-starter/page/package-lock.json +4 -4
  31. package/templates/database-starter/page/package.json +1 -1
  32. package/templates/database-starter/page/src/components/floating-button/index.tsx +18 -20
  33. package/templates/database-starter/page/src/components/floating-button/utils/request-edit.test.ts +42 -0
  34. package/templates/database-starter/page/src/components/floating-button/utils/request-edit.ts +21 -0
  35. package/templates/database-starter/page/src/main.test.ts +28 -0
  36. 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
- /** Read the validated Function input contracts used by Page type generation. */
22
- export declare function readDatabaseFunctionInputContracts(workspace: string): DatabaseFunctionInputContract[];
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;
@@ -1 +1 @@
1
- {"version":3,"file":"archive.d.ts","sourceRoot":"","sources":["../src/archive.ts"],"names":[],"mappings":"AA4BA,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;AAqID,gFAAgF;AAChF,wBAAgB,kCAAkC,CAChD,SAAS,EAAE,MAAM,GAChB,6BAA6B,EAAE,CAcjC;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;;;;;GAazE"}
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 (manifest.description !== undefined &&
31
- typeof manifest.description !== 'string') {
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 readMetadata(workspace) {
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
- /** Read the validated Function input contracts used by Page type generation. */
118
- export function readDatabaseFunctionInputContracts(workspace) {
119
- return readMetadata(databaseProject(workspace)).map((item) => ({
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 {
@@ -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"}
@@ -17,6 +17,7 @@ export interface FieldResult {
17
17
  attempts?: number;
18
18
  }
19
19
  export interface LarkFailure {
20
+ semanticCode?: string;
20
21
  publicError?: PublicSQLError;
21
22
  kind: 'api' | 'transport' | 'invalid_response';
22
23
  message: string;
@@ -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,CAwCd;CACF"}
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"}
@@ -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":"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"}
1
+ {"version":3,"file":"lark-cli-error.js","sourceRoot":"","sources":["../src/lark-cli-error.ts"],"names":[],"mappings":"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"}
@@ -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;
@@ -1 +1 @@
1
- {"version":3,"file":"mutation.d.ts","sourceRoot":"","sources":["../src/mutation.ts"],"names":[],"mappings":"AAuEA,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEtD;AAED,wBAAgB,0BAA0B,CAAC,UAAU,EAAE,OAAO,GAAG,IAAI,CAgEpE;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM;;kBA0ClD,CAAC;;;;EAKlB"}
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 (meta.description !== undefined &&
112
- (typeof meta.description !== 'string' || [...meta.description].length > 500))
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
  }
@@ -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":"AAWA,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;AAwcD,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;;;;;;;;;;;QAoElC,OAAO;QACP,WAAW;QACX,WAAW;;;;;;;;;;QASE,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;oBA7Re,SAAS;;;;oBAiB5B,SAAS;;;;;;;;;;;YAoRlB,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;;;;;;;YAxKE,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;;;;YAuF1B,KAAK;YAAS,QAAQ;;;;;;;;;;;;;;;;;;;;;EAmCnC"}
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"}
@@ -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 blockers = sourceReady ? [] : ['PROJECT_INCOMPLETE'];
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: sourceReady, blockers },
454
- deploy: { ready: sourceReady, blockers },
489
+ check: { ready: blockers.length === 0, blockers },
490
+ deploy: { ready: blockers.length === 0, blockers },
455
491
  },
456
492
  warnings,
457
493
  nextActions,