@whispering233/ai-editor-shared 0.0.14 → 0.0.17
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/constants/entity.d.ts +6 -2
- package/dist/constants/entity.d.ts.map +1 -1
- package/dist/constants/entity.js +4 -2
- package/dist/constants/entity.js.map +1 -1
- package/dist/constants/tool.d.ts +5 -5
- package/dist/constants/tool.d.ts.map +1 -1
- package/dist/constants/tool.js +3 -1
- package/dist/constants/tool.js.map +1 -1
- package/dist/types/api.d.ts +99 -6
- package/dist/types/api.d.ts.map +1 -1
- package/dist/types/api.js +61 -6
- package/dist/types/api.js.map +1 -1
- package/dist/types/entity.d.ts +2 -2
- package/dist/types/entity.d.ts.map +1 -1
- package/dist/types/project.d.ts +19 -3
- package/dist/types/project.d.ts.map +1 -1
- package/dist/types/tool.d.ts +37 -0
- package/dist/types/tool.d.ts.map +1 -1
- package/dist/types/tool.js +27 -1
- package/dist/types/tool.js.map +1 -1
- package/dist/utils/id.d.ts.map +1 -1
- package/dist/utils/id.js +1 -0
- package/dist/utils/id.js.map +1 -1
- package/dist/utils/index.d.ts +1 -0
- package/dist/utils/index.d.ts.map +1 -1
- package/dist/utils/index.js +1 -0
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/mapping.d.ts +4 -2
- package/dist/utils/mapping.d.ts.map +1 -1
- package/dist/utils/mapping.js +4 -4
- package/dist/utils/mapping.js.map +1 -1
- package/dist/utils/reference-file.d.ts +39 -0
- package/dist/utils/reference-file.d.ts.map +1 -0
- package/dist/utils/reference-file.js +131 -0
- package/dist/utils/reference-file.js.map +1 -0
- package/package.json +1 -1
|
@@ -1,7 +1,11 @@
|
|
|
1
|
-
/** 实体类型(entities 表 type 列 CHECK 约束,schema.md)——event 为时间轴事件(决策 26);timepoint 为 G2 时间标签点(name=时间标签文本,data 空,决策 26 G2
|
|
2
|
-
export declare const ENTITY_TYPES: readonly ["character", "setting", "location", "hook", "event", "timepoint"];
|
|
1
|
+
/** 实体类型(entities 表 type 列 CHECK 约束,schema.md)——event 为时间轴事件(决策 26);timepoint 为 G2 时间标签点(name=时间标签文本,data 空,决策 26 G2 修订);reference 为参考资料(决策 36) */
|
|
2
|
+
export declare const ENTITY_TYPES: readonly ["character", "setting", "location", "hook", "event", "timepoint", "reference"];
|
|
3
3
|
/** 实体类型(单数,从常量派生;与 types/entity.ts 的 EntityType 一致,测试断言保证) */
|
|
4
4
|
export type EntityTypeValue = (typeof ENTITY_TYPES)[number];
|
|
5
|
+
/** 参考资料分类枚举(决策 36:外部素材/灵感笔记,非本书正文;data.type 取值) */
|
|
6
|
+
export declare const REFERENCE_TYPES: readonly ["material", "inspiration", "theory", "reference"];
|
|
7
|
+
/** 参考资料分类(从 REFERENCE_TYPES 派生) */
|
|
8
|
+
export type ReferenceTypeValue = (typeof REFERENCE_TYPES)[number];
|
|
5
9
|
/**
|
|
6
10
|
* 预定义关系类型(schema.md 关系类型表,共 17 个)
|
|
7
11
|
* belongs_to 所属 / owns 拥有 / masters 掌握 / ally·rival·mentor·family 人物间 /
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entity.d.ts","sourceRoot":"","sources":["../../src/constants/entity.ts"],"names":[],"mappings":"AAIA,
|
|
1
|
+
{"version":3,"file":"entity.d.ts","sourceRoot":"","sources":["../../src/constants/entity.ts"],"names":[],"mappings":"AAIA,kJAAkJ;AAClJ,eAAO,MAAM,YAAY,0FAA2F,CAAC;AAErH,8DAA8D;AAC9D,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC;AAE5D,mDAAmD;AACnD,eAAO,MAAM,eAAe,6DAA8D,CAAC;AAE3F,mCAAmC;AACnC,MAAM,MAAM,kBAAkB,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,CAAC,CAAC;AAElE;;;;;;;;GAQG;AACH,eAAO,MAAM,cAAc,2MAkBjB,CAAC;AAEX,gCAAgC;AAChC,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC;AAE3D,qDAAqD;AACrD,eAAO,MAAM,cAAc,EAAG,WAAoB,CAAC;AAEnD,0CAA0C;AAC1C,eAAO,MAAM,mBAAmB,6CAA8C,CAAC;AAE/E,eAAe;AACf,MAAM,MAAM,gBAAgB,GAAG,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,CAAC,CAAC"}
|
package/dist/constants/entity.js
CHANGED
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
// 实体 / 关系常量
|
|
2
2
|
// 契约来源:doc/database/schema.md(entities 表 type CHECK、预定义关系类型表第 66-80 行)
|
|
3
3
|
// 常量命名 UPPER_SNAKE_CASE,as const 保持字面量类型
|
|
4
|
-
/** 实体类型(entities 表 type 列 CHECK 约束,schema.md)——event 为时间轴事件(决策 26);timepoint 为 G2 时间标签点(name=时间标签文本,data 空,决策 26 G2
|
|
5
|
-
export const ENTITY_TYPES = ["character", "setting", "location", "hook", "event", "timepoint"];
|
|
4
|
+
/** 实体类型(entities 表 type 列 CHECK 约束,schema.md)——event 为时间轴事件(决策 26);timepoint 为 G2 时间标签点(name=时间标签文本,data 空,决策 26 G2 修订);reference 为参考资料(决策 36) */
|
|
5
|
+
export const ENTITY_TYPES = ["character", "setting", "location", "hook", "event", "timepoint", "reference"];
|
|
6
|
+
/** 参考资料分类枚举(决策 36:外部素材/灵感笔记,非本书正文;data.type 取值) */
|
|
7
|
+
export const REFERENCE_TYPES = ["material", "inspiration", "theory", "reference"];
|
|
6
8
|
/**
|
|
7
9
|
* 预定义关系类型(schema.md 关系类型表,共 17 个)
|
|
8
10
|
* belongs_to 所属 / owns 拥有 / masters 掌握 / ally·rival·mentor·family 人物间 /
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entity.js","sourceRoot":"","sources":["../../src/constants/entity.ts"],"names":[],"mappings":"AAAA,YAAY;AACZ,uEAAuE;AACvE,yCAAyC;AAEzC,
|
|
1
|
+
{"version":3,"file":"entity.js","sourceRoot":"","sources":["../../src/constants/entity.ts"],"names":[],"mappings":"AAAA,YAAY;AACZ,uEAAuE;AACvE,yCAAyC;AAEzC,kJAAkJ;AAClJ,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,WAAW,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,WAAW,CAAU,CAAC;AAKrH,mDAAmD;AACnD,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,UAAU,EAAE,aAAa,EAAE,QAAQ,EAAE,WAAW,CAAU,CAAC;AAK3F;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,YAAY;IACZ,MAAM;IACN,SAAS;IACT,MAAM;IACN,OAAO;IACP,QAAQ;IACR,QAAQ;IACR,OAAO;IACP,YAAY;IACZ,WAAW;IACX,WAAW;IACX,QAAQ;IACR,UAAU;IACV,UAAU;IACV,YAAY;IACZ,UAAU;IACV,WAAW;CACH,CAAC;AAKX,qDAAqD;AACrD,MAAM,CAAC,MAAM,cAAc,GAAG,WAAoB,CAAC;AAEnD,0CAA0C;AAC1C,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,QAAQ,EAAE,UAAU,EAAE,UAAU,CAAU,CAAC"}
|
package/dist/constants/tool.d.ts
CHANGED
|
@@ -9,17 +9,17 @@ export declare const TOOL_PERMISSION: {
|
|
|
9
9
|
/** 工具权限级别 */
|
|
10
10
|
export type ToolPermission = (typeof TOOL_PERMISSION)[keyof typeof TOOL_PERMISSION];
|
|
11
11
|
/** 查询类工具(自动,tools.md「查询类」):默认过滤软删对象(决策 12 修订) */
|
|
12
|
-
export declare const QUERY_TOOLS: readonly ["get_entity", "search_entities", "query_relationships", "get_outline", "get_outline_path", "compute_state", "get_delta_history", "get_entity_summary"];
|
|
12
|
+
export declare const QUERY_TOOLS: readonly ["get_entity", "search_entities", "search_references", "query_relationships", "get_outline", "get_outline_path", "compute_state", "get_delta_history", "get_entity_summary"];
|
|
13
13
|
/** 分析类工具(自动,tools.md「分析类」):结构化分析,不操作数据 */
|
|
14
14
|
export declare const ANALYSIS_TOOLS: readonly ["analyze_consistency", "detect_conflicts", "trace_plot_paths", "find_orphan_elements", "suggest_connections"];
|
|
15
15
|
/** 伏笔分析工具(自动,hooks.md「工具扩展」分析类) */
|
|
16
16
|
export declare const HOOK_ANALYSIS_TOOLS: readonly ["analyze_hook_health", "trace_hook_lifecycle", "suggest_hook_payoff", "find_hook_opportunities", "detect_hook_conflicts"];
|
|
17
17
|
/**
|
|
18
|
-
* 提案类工具(需确认,tools.md「提案类」+ hooks.md「工具扩展」提案类,共
|
|
18
|
+
* 提案类工具(需确认,tools.md「提案类」+ hooks.md「工具扩展」提案类,共 16 个)
|
|
19
19
|
* AI 不能直接修改数据,propose_* 仅发出提案(proposal_id + 一句话摘要),
|
|
20
20
|
* tool_result 不含预览细节(2026-08 修订);完整预览经 SSE proposal 事件推送 GUI
|
|
21
21
|
*/
|
|
22
|
-
export declare const PROPOSAL_TOOLS: readonly ["propose_create_entity", "propose_update_entity", "propose_delete_entity", "propose_add_relation", "propose_remove_relation", "propose_add_delta", "propose_outline_node", "propose_move_node", "propose_delete_node", "propose_create_hook", "propose_update_hook", "propose_advance_hook", "propose_resolve_hook", "propose_abandon_hook", "propose_reorder_timepoints"];
|
|
22
|
+
export declare const PROPOSAL_TOOLS: readonly ["propose_create_entity", "propose_update_entity", "propose_delete_entity", "propose_add_relation", "propose_remove_relation", "propose_add_delta", "propose_outline_node", "propose_move_node", "propose_delete_node", "propose_create_hook", "propose_update_hook", "propose_advance_hook", "propose_resolve_hook", "propose_abandon_hook", "propose_reorder_timepoints", "propose_create_reference"];
|
|
23
23
|
/**
|
|
24
24
|
* 执行类工具(不暴露给 LLM,tools.md「执行类」,共 13 个)
|
|
25
25
|
* 用户确认提案后由 Tool Executor 调用;advance_hook/resolve_hook/abandon_hook 为复合写
|
|
@@ -28,9 +28,9 @@ export declare const PROPOSAL_TOOLS: readonly ["propose_create_entity", "propose
|
|
|
28
28
|
*/
|
|
29
29
|
export declare const EXECUTOR_TOOLS: readonly ["create_entity", "update_entity", "delete_entity", "add_relation", "remove_relation", "add_delta", "create_outline_node", "move_node", "delete_node", "advance_hook", "resolve_hook", "abandon_hook", "reorder_timepoints"];
|
|
30
30
|
/** 自动级工具(查询 + 分析 + 伏笔分析,共 18 个) */
|
|
31
|
-
export declare const AUTO_TOOLS: readonly ["get_entity", "search_entities", "query_relationships", "get_outline", "get_outline_path", "compute_state", "get_delta_history", "get_entity_summary", "analyze_consistency", "detect_conflicts", "trace_plot_paths", "find_orphan_elements", "suggest_connections", "analyze_hook_health", "trace_hook_lifecycle", "suggest_hook_payoff", "find_hook_opportunities", "detect_hook_conflicts"];
|
|
31
|
+
export declare const AUTO_TOOLS: readonly ["get_entity", "search_entities", "search_references", "query_relationships", "get_outline", "get_outline_path", "compute_state", "get_delta_history", "get_entity_summary", "analyze_consistency", "detect_conflicts", "trace_plot_paths", "find_orphan_elements", "suggest_connections", "analyze_hook_health", "trace_hook_lifecycle", "suggest_hook_payoff", "find_hook_opportunities", "detect_hook_conflicts"];
|
|
32
32
|
/** 全部工具名(自动 18 + 提案 15 + 执行 13 = 46 个) */
|
|
33
|
-
export declare const TOOL_NAMES: readonly ["get_entity", "search_entities", "query_relationships", "get_outline", "get_outline_path", "compute_state", "get_delta_history", "get_entity_summary", "analyze_consistency", "detect_conflicts", "trace_plot_paths", "find_orphan_elements", "suggest_connections", "analyze_hook_health", "trace_hook_lifecycle", "suggest_hook_payoff", "find_hook_opportunities", "detect_hook_conflicts", "propose_create_entity", "propose_update_entity", "propose_delete_entity", "propose_add_relation", "propose_remove_relation", "propose_add_delta", "propose_outline_node", "propose_move_node", "propose_delete_node", "propose_create_hook", "propose_update_hook", "propose_advance_hook", "propose_resolve_hook", "propose_abandon_hook", "propose_reorder_timepoints", "create_entity", "update_entity", "delete_entity", "add_relation", "remove_relation", "add_delta", "create_outline_node", "move_node", "delete_node", "advance_hook", "resolve_hook", "abandon_hook", "reorder_timepoints"];
|
|
33
|
+
export declare const TOOL_NAMES: readonly ["get_entity", "search_entities", "search_references", "query_relationships", "get_outline", "get_outline_path", "compute_state", "get_delta_history", "get_entity_summary", "analyze_consistency", "detect_conflicts", "trace_plot_paths", "find_orphan_elements", "suggest_connections", "analyze_hook_health", "trace_hook_lifecycle", "suggest_hook_payoff", "find_hook_opportunities", "detect_hook_conflicts", "propose_create_entity", "propose_update_entity", "propose_delete_entity", "propose_add_relation", "propose_remove_relation", "propose_add_delta", "propose_outline_node", "propose_move_node", "propose_delete_node", "propose_create_hook", "propose_update_hook", "propose_advance_hook", "propose_resolve_hook", "propose_abandon_hook", "propose_reorder_timepoints", "propose_create_reference", "create_entity", "update_entity", "delete_entity", "add_relation", "remove_relation", "add_delta", "create_outline_node", "move_node", "delete_node", "advance_hook", "resolve_hook", "abandon_hook", "reorder_timepoints"];
|
|
34
34
|
/** 工具名(从 TOOL_NAMES 派生) */
|
|
35
35
|
export type ToolName = (typeof TOOL_NAMES)[number];
|
|
36
36
|
//# sourceMappingURL=tool.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool.d.ts","sourceRoot":"","sources":["../../src/constants/tool.ts"],"names":[],"mappings":"AAGA;;;GAGG;AACH,eAAO,MAAM,eAAe;;;CAGlB,CAAC;AAEX,aAAa;AACb,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,OAAO,eAAe,CAAC,CAAC;AAEpF,iDAAiD;AACjD,eAAO,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"tool.d.ts","sourceRoot":"","sources":["../../src/constants/tool.ts"],"names":[],"mappings":"AAGA;;;GAGG;AACH,eAAO,MAAM,eAAe;;;CAGlB,CAAC;AAEX,aAAa;AACb,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,eAAe,CAAC,CAAC,MAAM,OAAO,eAAe,CAAC,CAAC;AAEpF,iDAAiD;AACjD,eAAO,MAAM,WAAW,uLAUd,CAAC;AAEX,0CAA0C;AAC1C,eAAO,MAAM,cAAc,yHAMjB,CAAC;AAEX,mCAAmC;AACnC,eAAO,MAAM,mBAAmB,qIAMtB,CAAC;AAEX;;;;GAIG;AACH,eAAO,MAAM,cAAc,kZAiBjB,CAAC;AAEX;;;;;GAKG;AACH,eAAO,MAAM,cAAc,uOAcjB,CAAC;AAEX,mCAAmC;AACnC,eAAO,MAAM,UAAU,+ZAAuE,CAAC;AAE/F,0CAA0C;AAC1C,eAAO,MAAM,UAAU,kgCAAiE,CAAC;AAEzF,2BAA2B;AAC3B,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC"}
|
package/dist/constants/tool.js
CHANGED
|
@@ -12,6 +12,7 @@ export const TOOL_PERMISSION = {
|
|
|
12
12
|
export const QUERY_TOOLS = [
|
|
13
13
|
"get_entity",
|
|
14
14
|
"search_entities",
|
|
15
|
+
"search_references", // 决策 36(批次九):参考资料搜索(自动权限)
|
|
15
16
|
"query_relationships",
|
|
16
17
|
"get_outline",
|
|
17
18
|
"get_outline_path",
|
|
@@ -36,7 +37,7 @@ export const HOOK_ANALYSIS_TOOLS = [
|
|
|
36
37
|
"detect_hook_conflicts",
|
|
37
38
|
];
|
|
38
39
|
/**
|
|
39
|
-
* 提案类工具(需确认,tools.md「提案类」+ hooks.md「工具扩展」提案类,共
|
|
40
|
+
* 提案类工具(需确认,tools.md「提案类」+ hooks.md「工具扩展」提案类,共 16 个)
|
|
40
41
|
* AI 不能直接修改数据,propose_* 仅发出提案(proposal_id + 一句话摘要),
|
|
41
42
|
* tool_result 不含预览细节(2026-08 修订);完整预览经 SSE proposal 事件推送 GUI
|
|
42
43
|
*/
|
|
@@ -56,6 +57,7 @@ export const PROPOSAL_TOOLS = [
|
|
|
56
57
|
"propose_resolve_hook",
|
|
57
58
|
"propose_abandon_hook",
|
|
58
59
|
"propose_reorder_timepoints", // G2(决策 26 修订注记):LLM 按时间点 name(时间标签)语义排序 → 提案确认
|
|
60
|
+
"propose_create_reference", // 决策 36(批次九):AI 建议保存参考资料(外部素材/灵感笔记)
|
|
59
61
|
];
|
|
60
62
|
/**
|
|
61
63
|
* 执行类工具(不暴露给 LLM,tools.md「执行类」,共 13 个)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool.js","sourceRoot":"","sources":["../../src/constants/tool.ts"],"names":[],"mappings":"AAAA,uBAAuB;AACvB,oEAAoE;AAEpE;;;GAGG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,IAAI,EAAE,MAAM;IACZ,QAAQ,EAAE,UAAU;CACZ,CAAC;AAKX,iDAAiD;AACjD,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,YAAY;IACZ,iBAAiB;IACjB,qBAAqB;IACrB,aAAa;IACb,kBAAkB;IAClB,eAAe;IACf,mBAAmB;IACnB,oBAAoB;CACZ,CAAC;AAEX,0CAA0C;AAC1C,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,qBAAqB;IACrB,kBAAkB;IAClB,kBAAkB;IAClB,sBAAsB;IACtB,qBAAqB;CACb,CAAC;AAEX,mCAAmC;AACnC,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,qBAAqB;IACrB,sBAAsB;IACtB,qBAAqB;IACrB,yBAAyB;IACzB,uBAAuB;CACf,CAAC;AAEX;;;;GAIG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,uBAAuB;IACvB,uBAAuB;IACvB,uBAAuB;IACvB,sBAAsB;IACtB,yBAAyB;IACzB,mBAAmB;IACnB,sBAAsB;IACtB,mBAAmB;IACnB,qBAAqB;IACrB,qBAAqB;IACrB,qBAAqB;IACrB,sBAAsB;IACtB,sBAAsB;IACtB,sBAAsB;IACtB,4BAA4B,EAAE,gDAAgD;
|
|
1
|
+
{"version":3,"file":"tool.js","sourceRoot":"","sources":["../../src/constants/tool.ts"],"names":[],"mappings":"AAAA,uBAAuB;AACvB,oEAAoE;AAEpE;;;GAGG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,IAAI,EAAE,MAAM;IACZ,QAAQ,EAAE,UAAU;CACZ,CAAC;AAKX,iDAAiD;AACjD,MAAM,CAAC,MAAM,WAAW,GAAG;IACzB,YAAY;IACZ,iBAAiB;IACjB,mBAAmB,EAAE,0BAA0B;IAC/C,qBAAqB;IACrB,aAAa;IACb,kBAAkB;IAClB,eAAe;IACf,mBAAmB;IACnB,oBAAoB;CACZ,CAAC;AAEX,0CAA0C;AAC1C,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,qBAAqB;IACrB,kBAAkB;IAClB,kBAAkB;IAClB,sBAAsB;IACtB,qBAAqB;CACb,CAAC;AAEX,mCAAmC;AACnC,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,qBAAqB;IACrB,sBAAsB;IACtB,qBAAqB;IACrB,yBAAyB;IACzB,uBAAuB;CACf,CAAC;AAEX;;;;GAIG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,uBAAuB;IACvB,uBAAuB;IACvB,uBAAuB;IACvB,sBAAsB;IACtB,yBAAyB;IACzB,mBAAmB;IACnB,sBAAsB;IACtB,mBAAmB;IACnB,qBAAqB;IACrB,qBAAqB;IACrB,qBAAqB;IACrB,sBAAsB;IACtB,sBAAsB;IACtB,sBAAsB;IACtB,4BAA4B,EAAE,gDAAgD;IAC9E,0BAA0B,EAAE,oCAAoC;CACxD,CAAC;AAEX;;;;;GAKG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,eAAe;IACf,eAAe;IACf,eAAe;IACf,cAAc;IACd,iBAAiB;IACjB,WAAW;IACX,qBAAqB;IACrB,WAAW;IACX,aAAa;IACb,cAAc;IACd,cAAc;IACd,cAAc;IACd,oBAAoB;CACZ,CAAC;AAEX,mCAAmC;AACnC,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,GAAG,WAAW,EAAE,GAAG,cAAc,EAAE,GAAG,mBAAmB,CAAU,CAAC;AAE/F,0CAA0C;AAC1C,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,GAAG,UAAU,EAAE,GAAG,cAAc,EAAE,GAAG,cAAc,CAAU,CAAC"}
|
package/dist/types/api.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
|
-
import type { ComputeStateResult, DeltaRecord, EntitySummary, ProjectConfig, RelationRecord } from "./index.js";
|
|
2
|
+
import type { ComputeStateResult, DeltaRecord, EntitySummary, ProjectAgents, ProjectConfig, RelationRecord } from "./index.js";
|
|
3
3
|
/** 实体类型(schema.md entities 表 CHECK 约束;与 ENTITY_TYPES 常量对齐) */
|
|
4
4
|
export declare const entityTypeSchema: z.ZodEnum<{
|
|
5
5
|
character: "character";
|
|
@@ -8,6 +8,7 @@ export declare const entityTypeSchema: z.ZodEnum<{
|
|
|
8
8
|
hook: "hook";
|
|
9
9
|
event: "event";
|
|
10
10
|
timepoint: "timepoint";
|
|
11
|
+
reference: "reference";
|
|
11
12
|
}>;
|
|
12
13
|
/** 项目语言(schema.md project.json 契约) */
|
|
13
14
|
export declare const projectLanguageSchema: z.ZodEnum<{
|
|
@@ -20,7 +21,7 @@ export declare const projectLanguageSchema: z.ZodEnum<{
|
|
|
20
21
|
* (computeState 改为 skipped/conflicts 字段呈现,不再返回 409——保留枚举兼容历史引用);
|
|
21
22
|
* 末尾四个为 tools.md 决策 15/16 补充命名(文档未给具体码名,按语义命名,供 SSE error 事件使用)
|
|
22
23
|
*/
|
|
23
|
-
export declare const ERROR_CODES: readonly ["VALIDATION_ERROR", "ENTITY_NOT_FOUND", "RELATION_EXISTS", "EVENT_ALREADY_MOUNTED", "RELATION_NOT_FOUND", "OUTLINE_NODE_NOT_FOUND", "OUTLINE_ANCESTOR_DELETED", "INVALID_PROJECT_PATH", "PROPOSAL_STALE", "PROPOSAL_NOT_FOUND", "PROPOSAL_PROJECT_MISMATCH", "SCHEMA_VERSION_MISMATCH", "PROJECT_VERSION_NEWER", "BACKUP_TARGET_EXISTS", "DELTA_CONFLICT", "TOOL_RESULT_TOO_LARGE", "AGENT_DISPATCH_ERROR", "AGENT_INTERNAL_ERROR", "AGENT_MAX_ITERATIONS", "AGENT_TIMEOUT", "AGENT_TOKEN_BUDGET"];
|
|
24
|
+
export declare const ERROR_CODES: readonly ["VALIDATION_ERROR", "ENTITY_NOT_FOUND", "RELATION_EXISTS", "EVENT_ALREADY_MOUNTED", "RELATION_NOT_FOUND", "OUTLINE_NODE_NOT_FOUND", "OUTLINE_ANCESTOR_DELETED", "INVALID_PROJECT_PATH", "PROPOSAL_STALE", "PROPOSAL_NOT_FOUND", "PROPOSAL_PROJECT_MISMATCH", "SCHEMA_VERSION_MISMATCH", "PROJECT_VERSION_NEWER", "BACKUP_TARGET_EXISTS", "REFERENCE_FILE_MISSING", "DELTA_CONFLICT", "TOOL_RESULT_TOO_LARGE", "AGENT_DISPATCH_ERROR", "AGENT_INTERNAL_ERROR", "AGENT_MAX_ITERATIONS", "AGENT_TIMEOUT", "AGENT_TOKEN_BUDGET"];
|
|
24
25
|
/** ErrorCode 枚举 schema */
|
|
25
26
|
export declare const errorCodeSchema: z.ZodEnum<{
|
|
26
27
|
VALIDATION_ERROR: "VALIDATION_ERROR";
|
|
@@ -37,6 +38,7 @@ export declare const errorCodeSchema: z.ZodEnum<{
|
|
|
37
38
|
SCHEMA_VERSION_MISMATCH: "SCHEMA_VERSION_MISMATCH";
|
|
38
39
|
PROJECT_VERSION_NEWER: "PROJECT_VERSION_NEWER";
|
|
39
40
|
BACKUP_TARGET_EXISTS: "BACKUP_TARGET_EXISTS";
|
|
41
|
+
REFERENCE_FILE_MISSING: "REFERENCE_FILE_MISSING";
|
|
40
42
|
DELTA_CONFLICT: "DELTA_CONFLICT";
|
|
41
43
|
TOOL_RESULT_TOO_LARGE: "TOOL_RESULT_TOO_LARGE";
|
|
42
44
|
AGENT_DISPATCH_ERROR: "AGENT_DISPATCH_ERROR";
|
|
@@ -71,6 +73,7 @@ export declare const apiErrorSchema: z.ZodObject<{
|
|
|
71
73
|
SCHEMA_VERSION_MISMATCH: "SCHEMA_VERSION_MISMATCH";
|
|
72
74
|
PROJECT_VERSION_NEWER: "PROJECT_VERSION_NEWER";
|
|
73
75
|
BACKUP_TARGET_EXISTS: "BACKUP_TARGET_EXISTS";
|
|
76
|
+
REFERENCE_FILE_MISSING: "REFERENCE_FILE_MISSING";
|
|
74
77
|
DELTA_CONFLICT: "DELTA_CONFLICT";
|
|
75
78
|
TOOL_RESULT_TOO_LARGE: "TOOL_RESULT_TOO_LARGE";
|
|
76
79
|
AGENT_DISPATCH_ERROR: "AGENT_DISPATCH_ERROR";
|
|
@@ -145,6 +148,28 @@ export declare const eventDataSchema: z.ZodObject<{
|
|
|
145
148
|
}, z.core.$loose>;
|
|
146
149
|
/** timepoint 专属字段(G2 时间标签点,决策 26 修订):data 空——时间标签文本 = name,可重命名,YAGNI 不加 data 字段 */
|
|
147
150
|
export declare const timepointDataSchema: z.ZodObject<{}, z.core.$loose>;
|
|
151
|
+
/** reference 专属字段(决策 36 参考资料:type 分类枚举 / content 全文长文本 / source 来源 / tags 标签数组;
|
|
152
|
+
* 决策 43 修订:两类承载——kind = file(本地 md 文档:file_name 相对路径 + content 正文镜像 + file_mtime
|
|
153
|
+
* 上次同步快照)/ link(外源链接:url 必填 + content 可选备注);kind 缺省视为 link(存量条目运行时兼容);
|
|
154
|
+
* source 仅存量旧条目使用(新建不再写入)) */
|
|
155
|
+
export declare const referenceDataSchema: z.ZodObject<{
|
|
156
|
+
type: z.ZodOptional<z.ZodEnum<{
|
|
157
|
+
reference: "reference";
|
|
158
|
+
material: "material";
|
|
159
|
+
inspiration: "inspiration";
|
|
160
|
+
theory: "theory";
|
|
161
|
+
}>>;
|
|
162
|
+
kind: z.ZodOptional<z.ZodEnum<{
|
|
163
|
+
file: "file";
|
|
164
|
+
link: "link";
|
|
165
|
+
}>>;
|
|
166
|
+
file_name: z.ZodOptional<z.ZodString>;
|
|
167
|
+
file_mtime: z.ZodOptional<z.ZodString>;
|
|
168
|
+
url: z.ZodOptional<z.ZodString>;
|
|
169
|
+
content: z.ZodOptional<z.ZodString>;
|
|
170
|
+
source: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
171
|
+
tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
172
|
+
}, z.core.$loose>;
|
|
148
173
|
/**
|
|
149
174
|
* 各类型 data schema 注册表(服务端按实体 type 选用精确 schema 校验)
|
|
150
175
|
* 创建/更新请求中的 data 本体使用宽松 record(entityCreateReqSchema),
|
|
@@ -199,8 +224,27 @@ export declare const ENTITY_DATA_SCHEMAS: {
|
|
|
199
224
|
tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
200
225
|
}, z.core.$loose>;
|
|
201
226
|
readonly timepoint: z.ZodObject<{}, z.core.$loose>;
|
|
227
|
+
readonly reference: z.ZodObject<{
|
|
228
|
+
type: z.ZodOptional<z.ZodEnum<{
|
|
229
|
+
reference: "reference";
|
|
230
|
+
material: "material";
|
|
231
|
+
inspiration: "inspiration";
|
|
232
|
+
theory: "theory";
|
|
233
|
+
}>>;
|
|
234
|
+
kind: z.ZodOptional<z.ZodEnum<{
|
|
235
|
+
file: "file";
|
|
236
|
+
link: "link";
|
|
237
|
+
}>>;
|
|
238
|
+
file_name: z.ZodOptional<z.ZodString>;
|
|
239
|
+
file_mtime: z.ZodOptional<z.ZodString>;
|
|
240
|
+
url: z.ZodOptional<z.ZodString>;
|
|
241
|
+
content: z.ZodOptional<z.ZodString>;
|
|
242
|
+
source: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
243
|
+
tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
|
|
244
|
+
}, z.core.$loose>;
|
|
202
245
|
};
|
|
203
|
-
/** ProjectConfig 响应(GET /api/v1/project/config;与 types/project.ts 的 ProjectConfig
|
|
246
|
+
/** ProjectConfig 响应(GET /api/v1/project/config;与 types/project.ts 的 ProjectConfig 对齐;
|
|
247
|
+
* `prompt` 已废弃(决策 41)不再返回——项目规则唯一事实源改为项目目录 AGENTS.md) */
|
|
204
248
|
export declare const projectConfigSchema: z.ZodType<ProjectConfig>;
|
|
205
249
|
export declare const projectCreateReqSchema: z.ZodObject<{
|
|
206
250
|
path: z.ZodString;
|
|
@@ -210,8 +254,7 @@ export declare const projectCreateReqSchema: z.ZodObject<{
|
|
|
210
254
|
zh: "zh";
|
|
211
255
|
en: "en";
|
|
212
256
|
}>>;
|
|
213
|
-
|
|
214
|
-
}, z.core.$strip>>;
|
|
257
|
+
}, z.core.$strict>>;
|
|
215
258
|
}, z.core.$strict>;
|
|
216
259
|
export declare const projectCreateResSchema: z.ZodObject<{
|
|
217
260
|
id: z.ZodString;
|
|
@@ -249,13 +292,20 @@ export declare const projectConfigUpdateReqSchema: z.ZodObject<{
|
|
|
249
292
|
zh: "zh";
|
|
250
293
|
en: "en";
|
|
251
294
|
}>>;
|
|
252
|
-
prompt: z.ZodOptional<z.ZodString>;
|
|
253
295
|
current_position: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
254
296
|
backup_frequency_minutes: z.ZodOptional<z.ZodNullable<z.ZodUnion<z.ZodLiteral<5 | 15 | 10 | 30 | 60>[]>>>;
|
|
255
297
|
}, z.core.$strict>;
|
|
256
298
|
export declare const projectConfigUpdateResSchema: z.ZodObject<{
|
|
257
299
|
updated: z.ZodLiteral<true>;
|
|
258
300
|
}, z.core.$strip>;
|
|
301
|
+
export declare const projectAgentsGetResSchema: z.ZodType<ProjectAgents>;
|
|
302
|
+
export declare const projectAgentsPutReqSchema: z.ZodObject<{
|
|
303
|
+
content: z.ZodString;
|
|
304
|
+
}, z.core.$strict>;
|
|
305
|
+
export declare const projectAgentsPutResSchema: z.ZodObject<{
|
|
306
|
+
saved: z.ZodLiteral<true>;
|
|
307
|
+
updatedAt: z.ZodString;
|
|
308
|
+
}, z.core.$strip>;
|
|
259
309
|
export declare const projectBackupReqSchema: z.ZodObject<{
|
|
260
310
|
name: z.ZodOptional<z.ZodString>;
|
|
261
311
|
}, z.core.$strict>;
|
|
@@ -331,6 +381,7 @@ export declare const entityDetailResSchema: z.ZodObject<{
|
|
|
331
381
|
hook: "hook";
|
|
332
382
|
event: "event";
|
|
333
383
|
timepoint: "timepoint";
|
|
384
|
+
reference: "reference";
|
|
334
385
|
}>;
|
|
335
386
|
name: z.ZodString;
|
|
336
387
|
data: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
@@ -352,6 +403,7 @@ export declare const entityCreateResSchema: z.ZodObject<{
|
|
|
352
403
|
hook: "hook";
|
|
353
404
|
event: "event";
|
|
354
405
|
timepoint: "timepoint";
|
|
406
|
+
reference: "reference";
|
|
355
407
|
}>;
|
|
356
408
|
name: z.ZodString;
|
|
357
409
|
data: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
@@ -673,6 +725,7 @@ export declare const chatSendReqSchema: z.ZodObject<{
|
|
|
673
725
|
hook: "hook";
|
|
674
726
|
event: "event";
|
|
675
727
|
timepoint: "timepoint";
|
|
728
|
+
reference: "reference";
|
|
676
729
|
}>>;
|
|
677
730
|
focus_entity_id: z.ZodOptional<z.ZodString>;
|
|
678
731
|
focus_node_id: z.ZodOptional<z.ZodString>;
|
|
@@ -716,13 +769,52 @@ export declare const proposalConfirmResSchema: z.ZodObject<{
|
|
|
716
769
|
export declare const proposalRejectResSchema: z.ZodObject<{
|
|
717
770
|
rejected: z.ZodLiteral<true>;
|
|
718
771
|
}, z.core.$strip>;
|
|
772
|
+
/** 思考强度(决策 34:参考 pi 的 ThinkingLevel 档位——off / minimal / low / medium / high / xhigh / max;off = 不加 reasoning 参数) */
|
|
773
|
+
export declare const THINKING_LEVELS: readonly ["off", "minimal", "low", "medium", "high", "xhigh", "max"];
|
|
774
|
+
export type ThinkingLevel = (typeof THINKING_LEVELS)[number];
|
|
775
|
+
/** 模型目录条目(GET /settings/llm 返回,供前端模型下拉与上下文占用分母) */
|
|
776
|
+
export declare const modelInfoSchema: z.ZodObject<{
|
|
777
|
+
id: z.ZodString;
|
|
778
|
+
provider: z.ZodString;
|
|
779
|
+
displayName: z.ZodString;
|
|
780
|
+
contextWindow: z.ZodNumber;
|
|
781
|
+
maxTokens: z.ZodNumber;
|
|
782
|
+
reasoning: z.ZodBoolean;
|
|
783
|
+
}, z.core.$strip>;
|
|
784
|
+
export type LlmModelInfo = z.infer<typeof modelInfoSchema>;
|
|
719
785
|
export declare const settingsLlmGetResSchema: z.ZodObject<{
|
|
720
786
|
model: z.ZodString;
|
|
787
|
+
thinkingLevel: z.ZodEnum<{
|
|
788
|
+
off: "off";
|
|
789
|
+
minimal: "minimal";
|
|
790
|
+
low: "low";
|
|
791
|
+
medium: "medium";
|
|
792
|
+
high: "high";
|
|
793
|
+
xhigh: "xhigh";
|
|
794
|
+
max: "max";
|
|
795
|
+
}>;
|
|
721
796
|
apiKeySet: z.ZodBoolean;
|
|
722
797
|
apiKeyMasked: z.ZodOptional<z.ZodString>;
|
|
798
|
+
models: z.ZodArray<z.ZodObject<{
|
|
799
|
+
id: z.ZodString;
|
|
800
|
+
provider: z.ZodString;
|
|
801
|
+
displayName: z.ZodString;
|
|
802
|
+
contextWindow: z.ZodNumber;
|
|
803
|
+
maxTokens: z.ZodNumber;
|
|
804
|
+
reasoning: z.ZodBoolean;
|
|
805
|
+
}, z.core.$strip>>;
|
|
723
806
|
}, z.core.$strip>;
|
|
724
807
|
export declare const settingsLlmPutReqSchema: z.ZodObject<{
|
|
725
808
|
model: z.ZodOptional<z.ZodString>;
|
|
809
|
+
thinking_level: z.ZodOptional<z.ZodEnum<{
|
|
810
|
+
off: "off";
|
|
811
|
+
minimal: "minimal";
|
|
812
|
+
low: "low";
|
|
813
|
+
medium: "medium";
|
|
814
|
+
high: "high";
|
|
815
|
+
xhigh: "xhigh";
|
|
816
|
+
max: "max";
|
|
817
|
+
}>>;
|
|
726
818
|
api_key: z.ZodOptional<z.ZodString>;
|
|
727
819
|
}, z.core.$strict>;
|
|
728
820
|
export declare const settingsLlmPutResSchema: z.ZodObject<{
|
|
@@ -773,6 +865,7 @@ export declare const sseErrorEventSchema: z.ZodObject<{
|
|
|
773
865
|
SCHEMA_VERSION_MISMATCH: "SCHEMA_VERSION_MISMATCH";
|
|
774
866
|
PROJECT_VERSION_NEWER: "PROJECT_VERSION_NEWER";
|
|
775
867
|
BACKUP_TARGET_EXISTS: "BACKUP_TARGET_EXISTS";
|
|
868
|
+
REFERENCE_FILE_MISSING: "REFERENCE_FILE_MISSING";
|
|
776
869
|
DELTA_CONFLICT: "DELTA_CONFLICT";
|
|
777
870
|
TOOL_RESULT_TOO_LARGE: "TOOL_RESULT_TOO_LARGE";
|
|
778
871
|
AGENT_DISPATCH_ERROR: "AGENT_DISPATCH_ERROR";
|
package/dist/types/api.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/types/api.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,OAAO,KAAK,EAAE,kBAAkB,EAAE,WAAW,EAAE,aAAa,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/types/api.ts"],"names":[],"mappings":"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"}
|
package/dist/types/api.js
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
// client 只消费推断出的类型与常量,不打包校验函数(避免 50KB 级依赖进浏览器包)。
|
|
8
8
|
// zod 版本:^4(注意 v4 API:z.record 必须两参、z.enum 接受 readonly 数组)
|
|
9
9
|
import { z } from "zod";
|
|
10
|
-
import { ENTITY_TYPES, RELATION_TYPES } from "../constants/entity.js";
|
|
10
|
+
import { ENTITY_TYPES, REFERENCE_TYPES, RELATION_TYPES } from "../constants/entity.js";
|
|
11
11
|
import { HOOK_STATUSES, PAYOFF_TIMING } from "../constants/hook.js";
|
|
12
12
|
import { CONFLICT_LEVELS } from "../constants/outline.js";
|
|
13
13
|
import { BACKUP_FREQUENCIES } from "../constants/backup.js";
|
|
@@ -39,6 +39,7 @@ export const ERROR_CODES = [
|
|
|
39
39
|
"SCHEMA_VERSION_MISMATCH", // 409 导入 zip 的 data.db user_version 与当前程序版本不匹配(E2;拒绝导入,不静默重建,release-review §二)
|
|
40
40
|
"PROJECT_VERSION_NEWER", // 409 open 时项目 data.db user_version 高于当前程序版本(E4;拒绝打开并提示升级程序,堵降级数据丢失,release-review §一)
|
|
41
41
|
"BACKUP_TARGET_EXISTS", // 409 重命名备份目标文件名已存在(决策 29,B2.6:renameSync 目标存在会静默覆盖——显式拒绝防数据丢失)
|
|
42
|
+
"REFERENCE_FILE_MISSING", // 409 参考资料 file 类文件缺失(决策 43:PUT 更新时读原文件失败——外部删除,提示先扫描同步)
|
|
42
43
|
// ---- 废弃(保留兼容)----
|
|
43
44
|
"DELTA_CONFLICT", // 已废弃(2026-08 修订:computeState 以 conflicts 字段替代 409)
|
|
44
45
|
// ---- tools.md 决策 15/16 补充命名(SSE error 事件用)----
|
|
@@ -128,6 +129,22 @@ export const eventDataSchema = z
|
|
|
128
129
|
.passthrough(); // 允许未知字段(创作工具,用户自定义字段自由)
|
|
129
130
|
/** timepoint 专属字段(G2 时间标签点,决策 26 修订):data 空——时间标签文本 = name,可重命名,YAGNI 不加 data 字段 */
|
|
130
131
|
export const timepointDataSchema = z.object({}).passthrough();
|
|
132
|
+
/** reference 专属字段(决策 36 参考资料:type 分类枚举 / content 全文长文本 / source 来源 / tags 标签数组;
|
|
133
|
+
* 决策 43 修订:两类承载——kind = file(本地 md 文档:file_name 相对路径 + content 正文镜像 + file_mtime
|
|
134
|
+
* 上次同步快照)/ link(外源链接:url 必填 + content 可选备注);kind 缺省视为 link(存量条目运行时兼容);
|
|
135
|
+
* source 仅存量旧条目使用(新建不再写入)) */
|
|
136
|
+
export const referenceDataSchema = z
|
|
137
|
+
.object({
|
|
138
|
+
type: z.enum(REFERENCE_TYPES).optional(), // 缺省 material(写入侧兜底)
|
|
139
|
+
kind: z.enum(["file", "link"]).optional(), // 决策 43:缺省视为 link
|
|
140
|
+
file_name: z.string().optional(), // file 类:references/ 下相对路径(服务端写入,客户端只读)
|
|
141
|
+
file_mtime: z.string().optional(), // file 类:上次同步时文件 mtime(scan 比对基准,服务端写入)
|
|
142
|
+
url: z.string().optional(), // link 类:外源链接 URL(创建时必填校验在服务端 route 层)
|
|
143
|
+
content: z.string().optional(),
|
|
144
|
+
source: z.string().nullable().optional(), // 存量旧条目兼容(决策 43:新建不再写入)
|
|
145
|
+
tags: z.array(z.string()).optional(),
|
|
146
|
+
})
|
|
147
|
+
.passthrough(); // 允许未知字段(创作工具,用户自定义字段自由)
|
|
131
148
|
/**
|
|
132
149
|
* 各类型 data schema 注册表(服务端按实体 type 选用精确 schema 校验)
|
|
133
150
|
* 创建/更新请求中的 data 本体使用宽松 record(entityCreateReqSchema),
|
|
@@ -140,14 +157,15 @@ export const ENTITY_DATA_SCHEMAS = {
|
|
|
140
157
|
hook: hookDataSchema,
|
|
141
158
|
event: eventDataSchema,
|
|
142
159
|
timepoint: timepointDataSchema, // G2 时间标签点:data 空
|
|
160
|
+
reference: referenceDataSchema, // 参考资料(决策 36)
|
|
143
161
|
};
|
|
144
162
|
// ============ project 端点(endpoints.md「项目管理」) ============
|
|
145
|
-
/** ProjectConfig 响应(GET /api/v1/project/config;与 types/project.ts 的 ProjectConfig
|
|
163
|
+
/** ProjectConfig 响应(GET /api/v1/project/config;与 types/project.ts 的 ProjectConfig 对齐;
|
|
164
|
+
* `prompt` 已废弃(决策 41)不再返回——项目规则唯一事实源改为项目目录 AGENTS.md) */
|
|
146
165
|
export const projectConfigSchema = z.object({
|
|
147
166
|
id: z.string(),
|
|
148
167
|
name: z.string(),
|
|
149
168
|
language: projectLanguageSchema,
|
|
150
|
-
prompt: z.string(), // 项目级提示词(决策 7)
|
|
151
169
|
schemaVersion: z.number().int(), // 决策 13
|
|
152
170
|
currentPosition: z.string().nullable(), // 「当前位置」节点 id;null = 未设置(决策 21)
|
|
153
171
|
backupFrequencyMinutes: z.number().int().nullable(), // 自动备份频率(决策 27);null = 关闭;缺省 10 由读侧兜底
|
|
@@ -162,8 +180,10 @@ export const projectCreateReqSchema = z
|
|
|
162
180
|
.object({
|
|
163
181
|
name: z.string().optional(),
|
|
164
182
|
language: projectLanguageSchema.optional(),
|
|
165
|
-
prompt
|
|
183
|
+
// prompt 已废弃(决策 41):不再接受(strict schema 传入 → 400 VALIDATION_ERROR);
|
|
184
|
+
// 项目规则改由 PUT /api/v1/project/agents 写入 AGENTS.md
|
|
166
185
|
})
|
|
186
|
+
.strict()
|
|
167
187
|
.optional(),
|
|
168
188
|
})
|
|
169
189
|
.strict();
|
|
@@ -209,7 +229,8 @@ export const projectConfigUpdateReqSchema = z
|
|
|
209
229
|
.object({
|
|
210
230
|
name: z.string().optional(),
|
|
211
231
|
language: projectLanguageSchema.optional(),
|
|
212
|
-
prompt
|
|
232
|
+
// prompt 已废弃(决策 41):不再接受(strict schema 传入 → 400 VALIDATION_ERROR);
|
|
233
|
+
// 项目规则改由 PUT /api/v1/project/agents 写入 AGENTS.md
|
|
213
234
|
current_position: z.string().nullable().optional(), // 须指向存在的非软删大纲节点(服务端校验)
|
|
214
235
|
/**
|
|
215
236
|
* 自动备份频率(决策 27):仅接受枚举 5/10/15/30/60(BACKUP_FREQUENCIES),其他(含 0)→ 400
|
|
@@ -221,6 +242,26 @@ export const projectConfigUpdateReqSchema = z
|
|
|
221
242
|
export const projectConfigUpdateResSchema = z.object({
|
|
222
243
|
updated: z.literal(true),
|
|
223
244
|
});
|
|
245
|
+
// GET /api/v1/project/agents(决策 41:项目规则文件 AGENTS.md——唯一事实源,取代 project.json `prompt`)
|
|
246
|
+
// 语义:无当前项目 → 409 NO_PROJECT_OPEN;文件不存在不报错(exists:false + 空串);
|
|
247
|
+
// updatedAt = 文件 mtime(ISO 8601,外部修改检测依据);读取每次实时读文件不缓存
|
|
248
|
+
export const projectAgentsGetResSchema = z.object({
|
|
249
|
+
content: z.string(), // AGENTS.md 文件内容(文件不存在 → 空串)
|
|
250
|
+
exists: z.boolean(), // 文件是否存在(false 时 content 为空串)
|
|
251
|
+
updatedAt: z.string().nullable(), // 文件 mtime(ISO 8601;文件不存在 → null)
|
|
252
|
+
});
|
|
253
|
+
// PUT /api/v1/project/agents(决策 41:设置页直接编辑 AGENTS.md 文件内容)
|
|
254
|
+
// 语义:整体替换(非追加);空串 = 清空规则(保留空文件不删除);文件不存在自动创建;
|
|
255
|
+
// 写入走原子写(决策 11 同款);写入后返回新 mtime(前端更新本地比对基线)
|
|
256
|
+
export const projectAgentsPutReqSchema = z
|
|
257
|
+
.object({
|
|
258
|
+
content: z.string(), // AGENTS.md 完整内容(整体替换;空串 = 清空规则文件,保留空文件不删除)
|
|
259
|
+
})
|
|
260
|
+
.strict();
|
|
261
|
+
export const projectAgentsPutResSchema = z.object({
|
|
262
|
+
saved: z.literal(true),
|
|
263
|
+
updatedAt: z.string(), // 写入后的文件 mtime(ISO 8601)——前端更新本地比对基线
|
|
264
|
+
});
|
|
224
265
|
// POST /api/v1/project/backup(决策 28 新增:手动备份可携带自定义名称)
|
|
225
266
|
// - 请求体可选 `name`(string);空串/缺省 → 无自定义名称(纯时间戳文件名)。
|
|
226
267
|
// - **形状校验仅限类型**(oracle 审核 P2-1:zod 与 sanitize 的「.zip 剥离 + 长度」判定
|
|
@@ -722,16 +763,30 @@ export const proposalRejectResSchema = z.object({
|
|
|
722
763
|
rejected: z.literal(true),
|
|
723
764
|
});
|
|
724
765
|
// ============ settings 端点(endpoints.md「系统设置」,决策 17) ============
|
|
725
|
-
|
|
766
|
+
/** 思考强度(决策 34:参考 pi 的 ThinkingLevel 档位——off / minimal / low / medium / high / xhigh / max;off = 不加 reasoning 参数) */
|
|
767
|
+
export const THINKING_LEVELS = ["off", "minimal", "low", "medium", "high", "xhigh", "max"];
|
|
768
|
+
/** 模型目录条目(GET /settings/llm 返回,供前端模型下拉与上下文占用分母) */
|
|
769
|
+
export const modelInfoSchema = z.object({
|
|
770
|
+
id: z.string(),
|
|
771
|
+
provider: z.string(),
|
|
772
|
+
displayName: z.string(),
|
|
773
|
+
contextWindow: z.number(),
|
|
774
|
+
maxTokens: z.number(),
|
|
775
|
+
reasoning: z.boolean(),
|
|
776
|
+
});
|
|
777
|
+
// GET /api/v1/settings/llm(key 不回传明文;models 为可用模型目录,当前 model 必在 list 内)
|
|
726
778
|
export const settingsLlmGetResSchema = z.object({
|
|
727
779
|
model: z.string(), // 默认 "deepseek-v4-flash"
|
|
780
|
+
thinkingLevel: z.enum(THINKING_LEVELS), // 思考强度(决策 34;缺省 high)
|
|
728
781
|
apiKeySet: z.boolean(),
|
|
729
782
|
apiKeyMasked: z.string().optional(), // 掩码展示(utils/format.ts maskApiKey)
|
|
783
|
+
models: z.array(modelInfoSchema), // 模型目录(决策 34 getAvailableModels)
|
|
730
784
|
});
|
|
731
785
|
// PUT /api/v1/settings/llm(写入 ~/.ai-editor/config.json,绝不入项目文件,决策 17)
|
|
732
786
|
export const settingsLlmPutReqSchema = z
|
|
733
787
|
.object({
|
|
734
788
|
model: z.string().optional(),
|
|
789
|
+
thinking_level: z.enum(THINKING_LEVELS).optional(),
|
|
735
790
|
api_key: z.string().optional(), // 空字符串 = 清除已保存 key
|
|
736
791
|
})
|
|
737
792
|
.strict();
|