@hedgehog-finance/hedgehog-plugin 1.0.21 → 1.0.22
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/dist/index.d.ts +4 -3
- package/dist/index.js +49 -6
- package/dist/index.js.map +1 -1
- package/dist/setup-api.d.ts +2 -0
- package/dist/setup-api.js +8 -0
- package/dist/setup-api.js.map +1 -0
- package/dist/src/channel.js +25 -23
- package/dist/src/channel.js.map +1 -1
- package/dist/src/core/database.js +449 -39
- package/dist/src/core/database.js.map +1 -1
- package/dist/src/dailyMorningBriefingCron.d.ts +46 -0
- package/dist/src/dailyMorningBriefingCron.js +82 -0
- package/dist/src/dailyMorningBriefingCron.js.map +1 -0
- package/dist/src/features/chartOutput.d.ts +2 -0
- package/dist/src/features/chartOutput.js +35 -0
- package/dist/src/features/chartOutput.js.map +1 -0
- package/dist/src/features/dailyMorningBriefing/schema.d.ts +56 -0
- package/dist/src/features/dailyMorningBriefing/schema.js +22 -0
- package/dist/src/features/dailyMorningBriefing/schema.js.map +1 -0
- package/dist/src/features/dailyMorningBriefing/tools.d.ts +12 -0
- package/dist/src/features/dailyMorningBriefing/tools.js +204 -0
- package/dist/src/features/dailyMorningBriefing/tools.js.map +1 -0
- package/dist/src/features/deepReasoning/schema.d.ts +43 -0
- package/dist/src/features/deepReasoning/schema.js +17 -0
- package/dist/src/features/deepReasoning/schema.js.map +1 -0
- package/dist/src/features/deepReasoning/tools.d.ts +12 -0
- package/dist/src/features/deepReasoning/tools.js +163 -0
- package/dist/src/features/deepReasoning/tools.js.map +1 -0
- package/dist/src/features/index.d.ts +2 -1
- package/dist/src/features/index.js +9 -1
- package/dist/src/features/index.js.map +1 -1
- package/dist/src/features/informationVerification/schema.d.ts +43 -0
- package/dist/src/features/informationVerification/schema.js +17 -0
- package/dist/src/features/informationVerification/schema.js.map +1 -0
- package/dist/src/features/informationVerification/tools.d.ts +12 -0
- package/dist/src/features/informationVerification/tools.js +162 -0
- package/dist/src/features/informationVerification/tools.js.map +1 -0
- package/dist/src/features/notes/schema.d.ts +136 -39
- package/dist/src/features/notes/schema.js +13 -10
- package/dist/src/features/notes/schema.js.map +1 -1
- package/dist/src/features/notes/tools.d.ts +1 -0
- package/dist/src/features/notes/tools.js +47 -14
- package/dist/src/features/notes/tools.js.map +1 -1
- package/dist/src/features/pluginInfo/schema.d.ts +79 -0
- package/dist/src/features/pluginInfo/schema.js +14 -0
- package/dist/src/features/pluginInfo/schema.js.map +1 -0
- package/dist/src/features/pluginInfo/tools.d.ts +1 -0
- package/dist/src/features/pluginInfo/tools.js +157 -2
- package/dist/src/features/pluginInfo/tools.js.map +1 -1
- package/dist/src/features/profileLibrary/schema.d.ts +34 -6
- package/dist/src/features/profileLibrary/schema.js +1 -1
- package/dist/src/features/profileLibrary/schema.js.map +1 -1
- package/dist/src/features/stockAnalysis/schema.d.ts +224 -31
- package/dist/src/features/stockAnalysis/schema.js +76 -12
- package/dist/src/features/stockAnalysis/schema.js.map +1 -1
- package/dist/src/features/stockAnalysis/tools.d.ts +6 -4
- package/dist/src/features/stockAnalysis/tools.js +389 -44
- package/dist/src/features/stockAnalysis/tools.js.map +1 -1
- package/dist/src/features/stockBasic/schema.d.ts +149 -0
- package/dist/src/features/stockBasic/schema.js +26 -0
- package/dist/src/features/stockBasic/schema.js.map +1 -0
- package/dist/src/features/stockBasic/tools.d.ts +12 -0
- package/dist/src/features/stockBasic/tools.js +124 -0
- package/dist/src/features/stockBasic/tools.js.map +1 -0
- package/dist/src/features/watchlist/logic.d.ts +3 -3
- package/dist/src/features/watchlist/logic.js +47 -46
- package/dist/src/features/watchlist/logic.js.map +1 -1
- package/dist/src/features/watchlist/schema.d.ts +89 -54
- package/dist/src/features/watchlist/schema.js +7 -4
- package/dist/src/features/watchlist/schema.js.map +1 -1
- package/dist/src/features/watchlist/tools.d.ts +106 -59
- package/dist/src/features/watchlist/tools.js +182 -104
- package/dist/src/features/watchlist/tools.js.map +1 -1
- package/dist/src/openclawConfig.d.ts +6 -0
- package/dist/src/openclawConfig.js +74 -0
- package/dist/src/openclawConfig.js.map +1 -0
- package/dist/src/openclawConstants.d.ts +4 -0
- package/dist/src/openclawConstants.js +10 -0
- package/dist/src/openclawConstants.js.map +1 -0
- package/dist/src/runtime.js +20 -0
- package/dist/src/runtime.js.map +1 -1
- package/index.ts +52 -5
- package/openclaw.plugin.json +24 -0
- package/package.json +21 -6
- package/setup-api.ts +10 -0
- package/src/channel.ts +26 -25
- package/src/core/database.ts +447 -40
- package/src/dailyMorningBriefingCron.ts +129 -0
- package/src/features/chartOutput.ts +35 -0
- package/src/features/dailyMorningBriefing/schema.ts +38 -0
- package/src/features/dailyMorningBriefing/tools.ts +246 -0
- package/src/features/deepReasoning/schema.ts +22 -0
- package/src/features/deepReasoning/tools.ts +182 -0
- package/src/features/index.ts +11 -2
- package/src/features/informationVerification/schema.ts +22 -0
- package/src/features/informationVerification/tools.ts +181 -0
- package/src/features/notes/schema.ts +17 -12
- package/src/features/notes/tools.ts +54 -17
- package/src/features/pluginInfo/schema.ts +19 -0
- package/src/features/pluginInfo/tools.ts +173 -2
- package/src/features/profileLibrary/schema.ts +1 -1
- package/src/features/stockAnalysis/schema.ts +99 -17
- package/src/features/stockAnalysis/tools.ts +447 -49
- package/src/features/stockBasic/schema.ts +33 -0
- package/src/features/stockBasic/tools.ts +157 -0
- package/src/features/watchlist/logic.ts +56 -53
- package/src/features/watchlist/schema.ts +11 -6
- package/src/features/watchlist/tools.ts +191 -106
- package/src/openclawConfig.ts +101 -0
- package/src/openclawConstants.ts +11 -0
- package/src/runtime.ts +19 -0
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
import * as fs from "node:fs";
|
|
2
2
|
import * as path from "node:path";
|
|
3
3
|
import { fileURLToPath } from "node:url";
|
|
4
|
-
import {
|
|
5
|
-
|
|
4
|
+
import { getDB } from "../../core/database.js";
|
|
5
|
+
import { BuildUpdateSkillVersionsMessageParamsSchema, GetPluginVersionParamsSchema, GetSkillVersionsParamsSchema, UpdateSkillVersionsParamsSchema } from "./schema.js";
|
|
6
|
+
const UPDATE_SKILL_VERSIONS_TOOL_NAME = "update_hedgehog_skill_versions";
|
|
7
|
+
const HEDGEHOG_INIT_SKILL_NAME = "hedgehog-init";
|
|
6
8
|
let cachedPluginVersion = null;
|
|
7
9
|
function findPackageJsonPath(startDir) {
|
|
8
10
|
let currentDir = startDir;
|
|
@@ -31,6 +33,111 @@ function getPluginVersion() {
|
|
|
31
33
|
cachedPluginVersion = packageJson.version.trim();
|
|
32
34
|
return cachedPluginVersion;
|
|
33
35
|
}
|
|
36
|
+
function getSkillVersions() {
|
|
37
|
+
const rows = getDB().prepare(`
|
|
38
|
+
SELECT skillName, version, createdAt, updatedAt
|
|
39
|
+
FROM skill_versions
|
|
40
|
+
ORDER BY skillName ASC
|
|
41
|
+
`).all();
|
|
42
|
+
const versions = {};
|
|
43
|
+
const skills = rows.map(row => {
|
|
44
|
+
versions[row.skillName] = row.version;
|
|
45
|
+
return {
|
|
46
|
+
name: row.skillName,
|
|
47
|
+
version: row.version,
|
|
48
|
+
createdAt: row.createdAt,
|
|
49
|
+
updatedAt: row.updatedAt
|
|
50
|
+
};
|
|
51
|
+
});
|
|
52
|
+
return {
|
|
53
|
+
skills,
|
|
54
|
+
versions
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
function normalizeSkillVersionUpdates(params) {
|
|
58
|
+
const updates = new Map();
|
|
59
|
+
if (params.versions) {
|
|
60
|
+
for (const [name, version] of Object.entries(params.versions)) {
|
|
61
|
+
const trimmedName = name.trim();
|
|
62
|
+
const trimmedVersion = version.trim();
|
|
63
|
+
if (trimmedName && trimmedVersion)
|
|
64
|
+
updates.set(trimmedName, trimmedVersion);
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
if (params.skills) {
|
|
68
|
+
for (const skill of params.skills) {
|
|
69
|
+
const trimmedName = skill.name.trim();
|
|
70
|
+
const trimmedVersion = skill.version.trim();
|
|
71
|
+
if (trimmedName && trimmedVersion)
|
|
72
|
+
updates.set(trimmedName, trimmedVersion);
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
return Array.from(updates.entries()).map(([name, version]) => ({ name, version }));
|
|
76
|
+
}
|
|
77
|
+
function updateSkillVersions(params) {
|
|
78
|
+
const updates = normalizeSkillVersionUpdates(params);
|
|
79
|
+
const db = getDB();
|
|
80
|
+
const stmt = db.prepare(`
|
|
81
|
+
INSERT INTO skill_versions (skillName, version, updatedAt)
|
|
82
|
+
VALUES (?, ?, STRFTIME('%Y-%m-%dT%H:%M:%fZ', 'NOW'))
|
|
83
|
+
ON CONFLICT(skillName) DO UPDATE SET
|
|
84
|
+
version = excluded.version,
|
|
85
|
+
updatedAt = excluded.updatedAt
|
|
86
|
+
`);
|
|
87
|
+
db.exec("BEGIN");
|
|
88
|
+
try {
|
|
89
|
+
for (const update of updates) {
|
|
90
|
+
stmt.run(update.name, update.version);
|
|
91
|
+
}
|
|
92
|
+
db.exec("COMMIT");
|
|
93
|
+
}
|
|
94
|
+
catch (e) {
|
|
95
|
+
if (db.inTransaction)
|
|
96
|
+
db.exec("ROLLBACK");
|
|
97
|
+
throw e;
|
|
98
|
+
}
|
|
99
|
+
return {
|
|
100
|
+
updated: updates,
|
|
101
|
+
...getSkillVersions()
|
|
102
|
+
};
|
|
103
|
+
}
|
|
104
|
+
function buildUpdateSkillVersionsMessage(params) {
|
|
105
|
+
const updates = normalizeSkillVersionUpdates(params);
|
|
106
|
+
const toolParams = {
|
|
107
|
+
skills: updates
|
|
108
|
+
};
|
|
109
|
+
const includesHedgehogInit = updates.some(update => update.name === HEDGEHOG_INIT_SKILL_NAME);
|
|
110
|
+
if (includesHedgehogInit) {
|
|
111
|
+
return JSON.stringify({
|
|
112
|
+
cw_system_prompt: [
|
|
113
|
+
"必须触发并使用 hedgehog-init skill 更新 hedgehog-workspace 的系统提示词到最新版本。",
|
|
114
|
+
`只有在 hedgehog-init skill 的系统提示词更新流程成功后,才可以调用 ${UPDATE_SKILL_VERSIONS_TOOL_NAME} 工具。`,
|
|
115
|
+
`成功后必须调用 ${UPDATE_SKILL_VERSIONS_TOOL_NAME} 工具更新本地数据库中的 skill 版本号,参数为 ${JSON.stringify(toolParams)}。`,
|
|
116
|
+
"如果系统提示词更新失败,禁止调用 update_hedgehog_skill_versions,必须直接说明失败原因。"
|
|
117
|
+
].join("\n"),
|
|
118
|
+
cw_context: JSON.stringify({
|
|
119
|
+
action: "update_hedgehog_init_system_prompt",
|
|
120
|
+
skills: updates
|
|
121
|
+
}),
|
|
122
|
+
cw_content: "Skill升级了,帮我更新`hedgehog-workspace`系统提示词到最新版本。",
|
|
123
|
+
cw_output: "系统提示词更新成功后,调用 update_hedgehog_skill_versions 工具写入版本,并返回简短结果。"
|
|
124
|
+
});
|
|
125
|
+
}
|
|
126
|
+
return JSON.stringify({
|
|
127
|
+
cw_system_prompt: [
|
|
128
|
+
"必须先更新 hedgehog-workspace 中的 hedgehog skills。",
|
|
129
|
+
`只有在 hedgehog skills 更新成功后,才可以调用 ${UPDATE_SKILL_VERSIONS_TOOL_NAME} 工具。`,
|
|
130
|
+
`更新成功后必须调用 ${UPDATE_SKILL_VERSIONS_TOOL_NAME} 工具更新本地数据库中的 skill 版本号,参数为 ${JSON.stringify(toolParams)}。`,
|
|
131
|
+
"如果 hedgehog skills 更新失败,禁止调用 update_hedgehog_skill_versions,必须直接说明失败原因。"
|
|
132
|
+
].join("\n"),
|
|
133
|
+
cw_context: JSON.stringify({
|
|
134
|
+
action: "update_hedgehog_skills",
|
|
135
|
+
skills: updates
|
|
136
|
+
}),
|
|
137
|
+
cw_content: "帮我更新`hedgehog-workspace`的hedgehog skills",
|
|
138
|
+
cw_output: "hedgehog skills 更新成功后,调用 update_hedgehog_skill_versions 工具写入版本,并返回简短结果。"
|
|
139
|
+
});
|
|
140
|
+
}
|
|
34
141
|
export const pluginInfoTools = {
|
|
35
142
|
get_plugin_version: {
|
|
36
143
|
name: "get_plugin_version",
|
|
@@ -44,6 +151,54 @@ export const pluginInfoTools = {
|
|
|
44
151
|
version: getPluginVersion()
|
|
45
152
|
});
|
|
46
153
|
}
|
|
154
|
+
},
|
|
155
|
+
get_skill_versions: {
|
|
156
|
+
name: "get_skill_versions",
|
|
157
|
+
description: "获取数据库中记录的所有 skill 版本号",
|
|
158
|
+
parameters: GetSkillVersionsParamsSchema,
|
|
159
|
+
registerTool: false,
|
|
160
|
+
async execute(params) {
|
|
161
|
+
GetSkillVersionsParamsSchema.parse(params);
|
|
162
|
+
return JSON.stringify({
|
|
163
|
+
success: true,
|
|
164
|
+
...getSkillVersions()
|
|
165
|
+
});
|
|
166
|
+
}
|
|
167
|
+
},
|
|
168
|
+
update_hedgehog_skill_versions: {
|
|
169
|
+
name: "update_hedgehog_skill_versions",
|
|
170
|
+
description: "更新数据库中记录的 skill 版本号",
|
|
171
|
+
parameters: UpdateSkillVersionsParamsSchema,
|
|
172
|
+
registerTool: false,
|
|
173
|
+
agentToolTarget: "main",
|
|
174
|
+
async execute(params) {
|
|
175
|
+
const parsed = UpdateSkillVersionsParamsSchema.parse(params);
|
|
176
|
+
return JSON.stringify({
|
|
177
|
+
success: true,
|
|
178
|
+
...updateSkillVersions(parsed)
|
|
179
|
+
});
|
|
180
|
+
}
|
|
181
|
+
},
|
|
182
|
+
build_update_skill_versions_message: {
|
|
183
|
+
name: "build_update_skill_versions_message",
|
|
184
|
+
description: "构建用于主动 RPC 发起 Agent 更新数据库 skill 版本号任务的标准消息。该方法只返回提示词消息体,不直接更新数据库。",
|
|
185
|
+
parameters: BuildUpdateSkillVersionsMessageParamsSchema,
|
|
186
|
+
registerTool: false,
|
|
187
|
+
async execute(params) {
|
|
188
|
+
const parsed = BuildUpdateSkillVersionsMessageParamsSchema.parse(params);
|
|
189
|
+
const message = buildUpdateSkillVersionsMessage(parsed);
|
|
190
|
+
return JSON.stringify({
|
|
191
|
+
success: true,
|
|
192
|
+
data: {
|
|
193
|
+
message,
|
|
194
|
+
payload: JSON.parse(message),
|
|
195
|
+
tool: UPDATE_SKILL_VERSIONS_TOOL_NAME,
|
|
196
|
+
updateParams: {
|
|
197
|
+
skills: normalizeSkillVersionUpdates(parsed)
|
|
198
|
+
}
|
|
199
|
+
}
|
|
200
|
+
});
|
|
201
|
+
}
|
|
47
202
|
}
|
|
48
203
|
};
|
|
49
204
|
//# sourceMappingURL=tools.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../../../../src/features/pluginInfo/tools.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"tools.js","sourceRoot":"","sources":["../../../../src/features/pluginInfo/tools.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,27 +1,55 @@
|
|
|
1
|
-
import { z } from "
|
|
1
|
+
import { z } from "zod";
|
|
2
2
|
export declare const AddProfileLibraryParamsSchema: z.ZodObject<{
|
|
3
3
|
id: z.ZodOptional<z.ZodString>;
|
|
4
4
|
title: z.ZodString;
|
|
5
|
-
}, z.
|
|
5
|
+
}, "strip", z.ZodTypeAny, {
|
|
6
|
+
title: string;
|
|
7
|
+
id?: string | undefined;
|
|
8
|
+
}, {
|
|
9
|
+
title: string;
|
|
10
|
+
id?: string | undefined;
|
|
11
|
+
}>;
|
|
6
12
|
export type AddProfileLibraryParams = z.infer<typeof AddProfileLibraryParamsSchema>;
|
|
7
13
|
export declare const DeleteProfileLibraryParamsSchema: z.ZodObject<{
|
|
8
14
|
id: z.ZodString;
|
|
9
|
-
}, z.
|
|
15
|
+
}, "strip", z.ZodTypeAny, {
|
|
16
|
+
id: string;
|
|
17
|
+
}, {
|
|
18
|
+
id: string;
|
|
19
|
+
}>;
|
|
10
20
|
export type DeleteProfileLibraryParams = z.infer<typeof DeleteProfileLibraryParamsSchema>;
|
|
11
21
|
export declare const GetProfileLibraryByIdParamsSchema: z.ZodObject<{
|
|
12
22
|
id: z.ZodString;
|
|
13
|
-
}, z.
|
|
23
|
+
}, "strip", z.ZodTypeAny, {
|
|
24
|
+
id: string;
|
|
25
|
+
}, {
|
|
26
|
+
id: string;
|
|
27
|
+
}>;
|
|
14
28
|
export type GetProfileLibraryByIdParams = z.infer<typeof GetProfileLibraryByIdParamsSchema>;
|
|
15
29
|
export declare const QueryProfileLibrariesParamsSchema: z.ZodObject<{
|
|
16
30
|
keyword: z.ZodOptional<z.ZodString>;
|
|
17
31
|
page: z.ZodOptional<z.ZodNumber>;
|
|
18
32
|
pageSize: z.ZodOptional<z.ZodNumber>;
|
|
19
|
-
}, z.
|
|
33
|
+
}, "strip", z.ZodTypeAny, {
|
|
34
|
+
keyword?: string | undefined;
|
|
35
|
+
page?: number | undefined;
|
|
36
|
+
pageSize?: number | undefined;
|
|
37
|
+
}, {
|
|
38
|
+
keyword?: string | undefined;
|
|
39
|
+
page?: number | undefined;
|
|
40
|
+
pageSize?: number | undefined;
|
|
41
|
+
}>;
|
|
20
42
|
export type QueryProfileLibrariesParams = z.infer<typeof QueryProfileLibrariesParamsSchema>;
|
|
21
43
|
export declare const GetProfileLibrariesParamsSchema: z.ZodObject<{
|
|
22
44
|
page: z.ZodOptional<z.ZodNumber>;
|
|
23
45
|
pageSize: z.ZodOptional<z.ZodNumber>;
|
|
24
|
-
}, z.
|
|
46
|
+
}, "strip", z.ZodTypeAny, {
|
|
47
|
+
page?: number | undefined;
|
|
48
|
+
pageSize?: number | undefined;
|
|
49
|
+
}, {
|
|
50
|
+
page?: number | undefined;
|
|
51
|
+
pageSize?: number | undefined;
|
|
52
|
+
}>;
|
|
25
53
|
export type GetProfileLibrariesParams = z.infer<typeof GetProfileLibrariesParamsSchema>;
|
|
26
54
|
export interface ProfileLibraryRow {
|
|
27
55
|
id: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../../src/features/profileLibrary/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../../src/features/profileLibrary/schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,CAAC,MAAM,6BAA6B,GAAG,CAAC,CAAC,MAAM,CAAC;IACrD,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;IAClE,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC;CACjD,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,gCAAgC,GAAG,CAAC,CAAC,MAAM,CAAC;IACxD,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC;CAC/C,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,iCAAiC,GAAG,CAAC,CAAC,MAAM,CAAC;IACzD,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC;CAC/C,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,iCAAiC,GAAG,CAAC,CAAC,MAAM,CAAC;IACzD,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC;IACnE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;IACnE,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC;CACnF,CAAC,CAAC;AAGH,MAAM,CAAC,MAAM,+BAA+B,GAAG,CAAC,CAAC,MAAM,CAAC;IACvD,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gBAAgB,CAAC;IACnE,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC;CACnF,CAAC,CAAC"}
|
|
@@ -1,60 +1,253 @@
|
|
|
1
|
-
import { z } from "
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
export declare const AiAnalysisStatusSchema: z.ZodEnum<["generating", "completed", "failed"]>;
|
|
3
|
+
export declare const BuildStockAiAnalysisMessageParamsSchema: z.ZodObject<{
|
|
4
|
+
stock_code: z.ZodString;
|
|
5
|
+
stock_name: z.ZodString;
|
|
6
|
+
market: z.ZodDefault<z.ZodString>;
|
|
7
|
+
}, "strip", z.ZodTypeAny, {
|
|
8
|
+
stock_code: string;
|
|
9
|
+
stock_name: string;
|
|
10
|
+
market: string;
|
|
11
|
+
}, {
|
|
12
|
+
stock_code: string;
|
|
13
|
+
stock_name: string;
|
|
14
|
+
market?: string | undefined;
|
|
15
|
+
}>;
|
|
16
|
+
export type BuildStockAiAnalysisMessageParams = z.infer<typeof BuildStockAiAnalysisMessageParamsSchema>;
|
|
2
17
|
export declare const GetStockAiAnalysisParamsSchema: z.ZodObject<{
|
|
3
|
-
|
|
18
|
+
stock_code: z.ZodString;
|
|
4
19
|
market: z.ZodDefault<z.ZodString>;
|
|
5
|
-
}, z.
|
|
20
|
+
}, "strip", z.ZodTypeAny, {
|
|
21
|
+
stock_code: string;
|
|
22
|
+
market: string;
|
|
23
|
+
}, {
|
|
24
|
+
stock_code: string;
|
|
25
|
+
market?: string | undefined;
|
|
26
|
+
}>;
|
|
6
27
|
export type GetStockAiAnalysisParams = z.infer<typeof GetStockAiAnalysisParamsSchema>;
|
|
28
|
+
export declare const GetStockAiAnalysisDetailParamsSchema: z.ZodObject<{
|
|
29
|
+
id: z.ZodString;
|
|
30
|
+
}, "strip", z.ZodTypeAny, {
|
|
31
|
+
id: string;
|
|
32
|
+
}, {
|
|
33
|
+
id: string;
|
|
34
|
+
}>;
|
|
35
|
+
export type GetStockAiAnalysisDetailParams = z.infer<typeof GetStockAiAnalysisDetailParamsSchema>;
|
|
7
36
|
export declare const QueryStockAiAnalysisHistoryParamsSchema: z.ZodObject<{
|
|
8
|
-
|
|
37
|
+
stock_code: z.ZodOptional<z.ZodString>;
|
|
9
38
|
market: z.ZodDefault<z.ZodString>;
|
|
10
39
|
page: z.ZodDefault<z.ZodNumber>;
|
|
11
40
|
pageSize: z.ZodDefault<z.ZodNumber>;
|
|
12
|
-
}, z.
|
|
41
|
+
}, "strip", z.ZodTypeAny, {
|
|
42
|
+
market: string;
|
|
43
|
+
page: number;
|
|
44
|
+
pageSize: number;
|
|
45
|
+
stock_code?: string | undefined;
|
|
46
|
+
}, {
|
|
47
|
+
stock_code?: string | undefined;
|
|
48
|
+
market?: string | undefined;
|
|
49
|
+
page?: number | undefined;
|
|
50
|
+
pageSize?: number | undefined;
|
|
51
|
+
}>;
|
|
13
52
|
export type QueryStockAiAnalysisHistoryParams = z.infer<typeof QueryStockAiAnalysisHistoryParamsSchema>;
|
|
14
|
-
export declare const
|
|
15
|
-
|
|
16
|
-
|
|
53
|
+
export declare const QueryStockAiAnalysisStocksParamsSchema: z.ZodObject<{
|
|
54
|
+
market: z.ZodDefault<z.ZodString>;
|
|
55
|
+
page: z.ZodDefault<z.ZodNumber>;
|
|
56
|
+
pageSize: z.ZodDefault<z.ZodNumber>;
|
|
57
|
+
}, "strip", z.ZodTypeAny, {
|
|
58
|
+
market: string;
|
|
59
|
+
page: number;
|
|
60
|
+
pageSize: number;
|
|
61
|
+
}, {
|
|
62
|
+
market?: string | undefined;
|
|
63
|
+
page?: number | undefined;
|
|
64
|
+
pageSize?: number | undefined;
|
|
65
|
+
}>;
|
|
66
|
+
export type QueryStockAiAnalysisStocksParams = z.infer<typeof QueryStockAiAnalysisStocksParamsSchema>;
|
|
67
|
+
export declare const SaveStockAiAnalysisParamsSchema: z.ZodEffects<z.ZodEffects<z.ZodObject<{
|
|
68
|
+
stock_code: z.ZodString;
|
|
69
|
+
stock_name: z.ZodDefault<z.ZodOptional<z.ZodString>>;
|
|
17
70
|
market: z.ZodDefault<z.ZodString>;
|
|
18
|
-
content: z.ZodString
|
|
19
|
-
|
|
71
|
+
content: z.ZodDefault<z.ZodString>;
|
|
72
|
+
status: z.ZodDefault<z.ZodEnum<["generating", "completed", "failed"]>>;
|
|
73
|
+
}, "strict", z.ZodTypeAny, {
|
|
74
|
+
stock_code: string;
|
|
75
|
+
stock_name: string;
|
|
76
|
+
market: string;
|
|
77
|
+
status: "generating" | "completed" | "failed";
|
|
78
|
+
content: string;
|
|
79
|
+
}, {
|
|
80
|
+
stock_code: string;
|
|
81
|
+
stock_name?: string | undefined;
|
|
82
|
+
market?: string | undefined;
|
|
83
|
+
status?: "generating" | "completed" | "failed" | undefined;
|
|
84
|
+
content?: string | undefined;
|
|
85
|
+
}>, {
|
|
86
|
+
stock_code: string;
|
|
87
|
+
stock_name: string;
|
|
88
|
+
market: string;
|
|
89
|
+
status: "generating" | "completed" | "failed";
|
|
90
|
+
content: string;
|
|
91
|
+
}, {
|
|
92
|
+
stock_code: string;
|
|
93
|
+
stock_name?: string | undefined;
|
|
94
|
+
market?: string | undefined;
|
|
95
|
+
status?: "generating" | "completed" | "failed" | undefined;
|
|
96
|
+
content?: string | undefined;
|
|
97
|
+
}>, {
|
|
98
|
+
stock_code: string;
|
|
99
|
+
stock_name: string;
|
|
100
|
+
market: string;
|
|
101
|
+
status: "generating" | "completed" | "failed";
|
|
102
|
+
content: string;
|
|
103
|
+
}, {
|
|
104
|
+
stock_code: string;
|
|
105
|
+
stock_name?: string | undefined;
|
|
106
|
+
market?: string | undefined;
|
|
107
|
+
status?: "generating" | "completed" | "failed" | undefined;
|
|
108
|
+
content?: string | undefined;
|
|
109
|
+
}>;
|
|
20
110
|
export type SaveStockAiAnalysisParams = z.infer<typeof SaveStockAiAnalysisParamsSchema>;
|
|
21
111
|
export interface StockAiAnalysis {
|
|
22
112
|
id: string;
|
|
23
|
-
|
|
24
|
-
|
|
113
|
+
stock_code: string;
|
|
114
|
+
stock_name: string;
|
|
25
115
|
market: string;
|
|
116
|
+
status: string;
|
|
26
117
|
content: string;
|
|
27
118
|
createdAt: string;
|
|
28
119
|
updatedAt: string;
|
|
29
120
|
}
|
|
30
|
-
export
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
121
|
+
export interface StockAiAnalysisStockSummary {
|
|
122
|
+
stock_code: string;
|
|
123
|
+
stock_name: string;
|
|
124
|
+
market: string;
|
|
125
|
+
latestAnalysisId: string;
|
|
126
|
+
latestStatus: string;
|
|
127
|
+
latestCreatedAt: string;
|
|
128
|
+
latestUpdatedAt: string;
|
|
129
|
+
analysisCount: number;
|
|
130
|
+
}
|
|
131
|
+
export declare const ArticleAiAnalysisKindSchema: z.ZodEnum<["verification", "deduction"]>;
|
|
34
132
|
export declare const GetArticleAiAnalysisParamsSchema: z.ZodObject<{
|
|
35
|
-
|
|
36
|
-
analysisType: z.ZodEnum<
|
|
37
|
-
verification: "verification";
|
|
38
|
-
deduction: "deduction";
|
|
39
|
-
}>;
|
|
133
|
+
sourceId: z.ZodString;
|
|
134
|
+
analysisType: z.ZodEnum<["verification", "deduction"]>;
|
|
40
135
|
market: z.ZodDefault<z.ZodString>;
|
|
41
|
-
}, z.
|
|
136
|
+
}, "strip", z.ZodTypeAny, {
|
|
137
|
+
market: string;
|
|
138
|
+
sourceId: string;
|
|
139
|
+
analysisType: "verification" | "deduction";
|
|
140
|
+
}, {
|
|
141
|
+
sourceId: string;
|
|
142
|
+
analysisType: "verification" | "deduction";
|
|
143
|
+
market?: string | undefined;
|
|
144
|
+
}>;
|
|
42
145
|
export type GetArticleAiAnalysisParams = z.infer<typeof GetArticleAiAnalysisParamsSchema>;
|
|
43
|
-
export declare const
|
|
44
|
-
|
|
45
|
-
analysisType: z.ZodEnum<{
|
|
46
|
-
verification: "verification";
|
|
47
|
-
deduction: "deduction";
|
|
48
|
-
}>;
|
|
146
|
+
export declare const QueryArticleAiAnalysisHistoryParamsSchema: z.ZodObject<{
|
|
147
|
+
analysisType: z.ZodEnum<["verification", "deduction"]>;
|
|
49
148
|
market: z.ZodDefault<z.ZodString>;
|
|
50
|
-
|
|
51
|
-
|
|
149
|
+
page: z.ZodDefault<z.ZodNumber>;
|
|
150
|
+
pageSize: z.ZodDefault<z.ZodNumber>;
|
|
151
|
+
}, "strip", z.ZodTypeAny, {
|
|
152
|
+
market: string;
|
|
153
|
+
page: number;
|
|
154
|
+
pageSize: number;
|
|
155
|
+
analysisType: "verification" | "deduction";
|
|
156
|
+
}, {
|
|
157
|
+
analysisType: "verification" | "deduction";
|
|
158
|
+
market?: string | undefined;
|
|
159
|
+
page?: number | undefined;
|
|
160
|
+
pageSize?: number | undefined;
|
|
161
|
+
}>;
|
|
162
|
+
export type QueryArticleAiAnalysisHistoryParams = z.infer<typeof QueryArticleAiAnalysisHistoryParamsSchema>;
|
|
163
|
+
export declare const SaveArticleAiAnalysisParamsSchema: z.ZodEffects<z.ZodEffects<z.ZodObject<{
|
|
164
|
+
sourceId: z.ZodString;
|
|
165
|
+
sourceTitle: z.ZodDefault<z.ZodOptional<z.ZodString>>;
|
|
166
|
+
content: z.ZodDefault<z.ZodString>;
|
|
167
|
+
status: z.ZodDefault<z.ZodEnum<["generating", "completed", "failed"]>>;
|
|
168
|
+
}, "strict", z.ZodTypeAny, {
|
|
169
|
+
status: "generating" | "completed" | "failed";
|
|
170
|
+
sourceId: string;
|
|
171
|
+
sourceTitle: string;
|
|
172
|
+
content: string;
|
|
173
|
+
}, {
|
|
174
|
+
sourceId: string;
|
|
175
|
+
status?: "generating" | "completed" | "failed" | undefined;
|
|
176
|
+
sourceTitle?: string | undefined;
|
|
177
|
+
content?: string | undefined;
|
|
178
|
+
}>, {
|
|
179
|
+
status: "generating" | "completed" | "failed";
|
|
180
|
+
sourceId: string;
|
|
181
|
+
sourceTitle: string;
|
|
182
|
+
content: string;
|
|
183
|
+
}, {
|
|
184
|
+
sourceId: string;
|
|
185
|
+
status?: "generating" | "completed" | "failed" | undefined;
|
|
186
|
+
sourceTitle?: string | undefined;
|
|
187
|
+
content?: string | undefined;
|
|
188
|
+
}>, {
|
|
189
|
+
status: "generating" | "completed" | "failed";
|
|
190
|
+
sourceId: string;
|
|
191
|
+
sourceTitle: string;
|
|
192
|
+
content: string;
|
|
193
|
+
}, {
|
|
194
|
+
sourceId: string;
|
|
195
|
+
status?: "generating" | "completed" | "failed" | undefined;
|
|
196
|
+
sourceTitle?: string | undefined;
|
|
197
|
+
content?: string | undefined;
|
|
198
|
+
}>;
|
|
52
199
|
export type SaveArticleAiAnalysisParams = z.infer<typeof SaveArticleAiAnalysisParamsSchema>;
|
|
200
|
+
export declare const SaveArticleDeepReasoningParamsSchema: z.ZodEffects<z.ZodEffects<z.ZodObject<{
|
|
201
|
+
sourceId: z.ZodString;
|
|
202
|
+
sourceTitle: z.ZodDefault<z.ZodOptional<z.ZodString>>;
|
|
203
|
+
market: z.ZodDefault<z.ZodString>;
|
|
204
|
+
content: z.ZodDefault<z.ZodString>;
|
|
205
|
+
status: z.ZodDefault<z.ZodEnum<["generating", "completed", "failed"]>>;
|
|
206
|
+
}, "strict", z.ZodTypeAny, {
|
|
207
|
+
market: string;
|
|
208
|
+
status: "generating" | "completed" | "failed";
|
|
209
|
+
sourceId: string;
|
|
210
|
+
sourceTitle: string;
|
|
211
|
+
content: string;
|
|
212
|
+
}, {
|
|
213
|
+
sourceId: string;
|
|
214
|
+
market?: string | undefined;
|
|
215
|
+
status?: "generating" | "completed" | "failed" | undefined;
|
|
216
|
+
sourceTitle?: string | undefined;
|
|
217
|
+
content?: string | undefined;
|
|
218
|
+
}>, {
|
|
219
|
+
market: string;
|
|
220
|
+
status: "generating" | "completed" | "failed";
|
|
221
|
+
sourceId: string;
|
|
222
|
+
sourceTitle: string;
|
|
223
|
+
content: string;
|
|
224
|
+
}, {
|
|
225
|
+
sourceId: string;
|
|
226
|
+
market?: string | undefined;
|
|
227
|
+
status?: "generating" | "completed" | "failed" | undefined;
|
|
228
|
+
sourceTitle?: string | undefined;
|
|
229
|
+
content?: string | undefined;
|
|
230
|
+
}>, {
|
|
231
|
+
market: string;
|
|
232
|
+
status: "generating" | "completed" | "failed";
|
|
233
|
+
sourceId: string;
|
|
234
|
+
sourceTitle: string;
|
|
235
|
+
content: string;
|
|
236
|
+
}, {
|
|
237
|
+
sourceId: string;
|
|
238
|
+
market?: string | undefined;
|
|
239
|
+
status?: "generating" | "completed" | "failed" | undefined;
|
|
240
|
+
sourceTitle?: string | undefined;
|
|
241
|
+
content?: string | undefined;
|
|
242
|
+
}>;
|
|
243
|
+
export type SaveArticleDeepReasoningParams = z.infer<typeof SaveArticleDeepReasoningParamsSchema>;
|
|
53
244
|
export interface ArticleAiAnalysis {
|
|
54
245
|
id: string;
|
|
55
246
|
sourceId: string;
|
|
56
247
|
analysisType: GetArticleAiAnalysisParams["analysisType"];
|
|
57
|
-
|
|
248
|
+
sourceTitle?: string;
|
|
249
|
+
market?: string;
|
|
250
|
+
status: string;
|
|
58
251
|
content: string;
|
|
59
252
|
createdAt: string;
|
|
60
253
|
updatedAt: string;
|
|
@@ -1,30 +1,94 @@
|
|
|
1
|
-
import { z } from "
|
|
1
|
+
import { z } from "zod";
|
|
2
|
+
export const AiAnalysisStatusSchema = z.enum(["generating", "completed", "failed"]);
|
|
3
|
+
export const BuildStockAiAnalysisMessageParamsSchema = z.object({
|
|
4
|
+
stock_code: z.string().trim().min(1).describe("股票代码"),
|
|
5
|
+
stock_name: z.string().trim().min(1).describe("股票名称"),
|
|
6
|
+
market: z.string().trim().min(1).default("CN").describe("市场类型,默认 CN")
|
|
7
|
+
});
|
|
2
8
|
export const GetStockAiAnalysisParamsSchema = z.object({
|
|
3
|
-
|
|
9
|
+
stock_code: z.string().trim().min(1).describe("股票代码"),
|
|
4
10
|
market: z.string().trim().min(1).default("CN").describe("市场类型,默认 CN")
|
|
5
11
|
});
|
|
12
|
+
export const GetStockAiAnalysisDetailParamsSchema = z.object({
|
|
13
|
+
id: z.string().trim().min(1).describe("分析记录 ID")
|
|
14
|
+
});
|
|
6
15
|
export const QueryStockAiAnalysisHistoryParamsSchema = z.object({
|
|
7
|
-
|
|
16
|
+
stock_code: z.string().trim().min(1).optional().describe("股票代码,不传则查询全部"),
|
|
17
|
+
market: z.string().trim().min(1).default("CN").describe("市场类型,默认 CN"),
|
|
18
|
+
page: z.number().int().min(1).default(1).describe("页码"),
|
|
19
|
+
pageSize: z.number().int().min(1).max(50).default(10).describe("每页数量,默认 10")
|
|
20
|
+
});
|
|
21
|
+
export const QueryStockAiAnalysisStocksParamsSchema = z.object({
|
|
8
22
|
market: z.string().trim().min(1).default("CN").describe("市场类型,默认 CN"),
|
|
9
23
|
page: z.number().int().min(1).default(1).describe("页码"),
|
|
10
|
-
pageSize: z.number().int().min(1).max(
|
|
24
|
+
pageSize: z.number().int().min(1).max(100).default(50).describe("每页数量,默认 50")
|
|
11
25
|
});
|
|
12
26
|
export const SaveStockAiAnalysisParamsSchema = z.object({
|
|
13
|
-
|
|
14
|
-
|
|
27
|
+
stock_code: z.string().trim().min(1).describe("股票代码"),
|
|
28
|
+
stock_name: z.string().trim().optional().default("").describe("股票名称;status=generating 时必须提供"),
|
|
15
29
|
market: z.string().trim().min(1).default("CN").describe("市场类型,默认 CN"),
|
|
16
|
-
content: z.string().
|
|
30
|
+
content: z.string().default("").describe("AI 分析内容;status=generating 时为空,status=failed 时存入错误信息"),
|
|
31
|
+
status: AiAnalysisStatusSchema.default("completed").describe("保存状态:generating 生成中,completed 成功,failed 失败")
|
|
32
|
+
}).strict().refine((value) => {
|
|
33
|
+
if (value.status === "completed")
|
|
34
|
+
return value.content.trim().length > 0;
|
|
35
|
+
return true;
|
|
36
|
+
}, {
|
|
37
|
+
message: "completed 状态必须提供 content"
|
|
38
|
+
}).refine((value) => {
|
|
39
|
+
if (value.status !== "generating")
|
|
40
|
+
return true;
|
|
41
|
+
return value.stock_name.trim().length > 0;
|
|
42
|
+
}, {
|
|
43
|
+
message: "generating 状态必须提供 stock_name"
|
|
17
44
|
});
|
|
18
45
|
export const ArticleAiAnalysisKindSchema = z.enum(["verification", "deduction"]);
|
|
19
46
|
export const GetArticleAiAnalysisParamsSchema = z.object({
|
|
20
|
-
|
|
47
|
+
sourceId: z.string().trim().min(1).describe("文章来源 ID,例如 news-5、report-5、announce-5"),
|
|
21
48
|
analysisType: ArticleAiAnalysisKindSchema.describe("分析类型:verification 信息求证,deduction 深度推演"),
|
|
22
|
-
market: z.string().trim().min(1).default("CN").describe("
|
|
49
|
+
market: z.string().trim().min(1).default("CN").describe("市场类型;深度推演使用,信息求证忽略")
|
|
23
50
|
});
|
|
24
|
-
export const
|
|
25
|
-
id: z.string().trim().min(1).describe("文章来源 ID,例如 news-5、report-5、announce-5"),
|
|
51
|
+
export const QueryArticleAiAnalysisHistoryParamsSchema = z.object({
|
|
26
52
|
analysisType: ArticleAiAnalysisKindSchema.describe("分析类型:verification 信息求证,deduction 深度推演"),
|
|
53
|
+
market: z.string().trim().min(1).default("CN").describe("市场类型;深度推演使用,信息求证忽略"),
|
|
54
|
+
page: z.number().int().min(1).default(1).describe("页码"),
|
|
55
|
+
pageSize: z.number().int().min(1).max(50).default(10).describe("每页数量,默认 10")
|
|
56
|
+
});
|
|
57
|
+
export const SaveArticleAiAnalysisParamsSchema = z.object({
|
|
58
|
+
sourceId: z.string().trim().min(1).describe("新闻来源 ID,例如 news-5"),
|
|
59
|
+
sourceTitle: z.string().trim().optional().default("").describe("新闻标题;status=generating 时必须提供"),
|
|
60
|
+
content: z.string().default("").describe("AI 分析内容;status=generating 时为空,status=failed 时存入错误信息"),
|
|
61
|
+
status: AiAnalysisStatusSchema.default("completed").describe("保存状态:generating 生成中,completed 成功,failed 失败")
|
|
62
|
+
}).strict().refine((value) => {
|
|
63
|
+
if (value.status === "completed")
|
|
64
|
+
return value.content.trim().length > 0;
|
|
65
|
+
return true;
|
|
66
|
+
}, {
|
|
67
|
+
message: "completed 状态必须提供 content"
|
|
68
|
+
}).refine((value) => {
|
|
69
|
+
if (value.status !== "generating")
|
|
70
|
+
return true;
|
|
71
|
+
return value.sourceTitle.trim().length > 0;
|
|
72
|
+
}, {
|
|
73
|
+
message: "generating 状态必须提供 sourceTitle"
|
|
74
|
+
});
|
|
75
|
+
export const SaveArticleDeepReasoningParamsSchema = z.object({
|
|
76
|
+
sourceId: z.string().trim().min(1).describe("新闻来源 ID,例如 news-5"),
|
|
77
|
+
sourceTitle: z.string().trim().optional().default("").describe("新闻标题;status=generating 时必须提供"),
|
|
27
78
|
market: z.string().trim().min(1).default("CN").describe("市场类型,默认 CN"),
|
|
28
|
-
content: z.string().
|
|
79
|
+
content: z.string().default("").describe("AI 分析内容;status=generating 时为空,status=failed 时存入错误信息"),
|
|
80
|
+
status: AiAnalysisStatusSchema.default("completed").describe("保存状态:generating 生成中,completed 成功,failed 失败")
|
|
81
|
+
}).strict().refine((value) => {
|
|
82
|
+
if (value.status === "completed")
|
|
83
|
+
return value.content.trim().length > 0;
|
|
84
|
+
return true;
|
|
85
|
+
}, {
|
|
86
|
+
message: "completed 状态必须提供 content"
|
|
87
|
+
}).refine((value) => {
|
|
88
|
+
if (value.status !== "generating")
|
|
89
|
+
return true;
|
|
90
|
+
return value.sourceTitle.trim().length > 0;
|
|
91
|
+
}, {
|
|
92
|
+
message: "generating 状态必须提供 sourceTitle"
|
|
29
93
|
});
|
|
30
94
|
//# sourceMappingURL=schema.js.map
|