@whispering233/ai-editor-server 0.0.15 → 0.0.20

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 (45) hide show
  1. package/client-dist/assets/index-B51Kcb1K.css +1 -0
  2. package/client-dist/assets/index-zgl3whdc.js +104 -0
  3. package/client-dist/index.html +2 -2
  4. package/dist/backup.d.ts +25 -3
  5. package/dist/backup.d.ts.map +1 -1
  6. package/dist/backup.js +110 -13
  7. package/dist/backup.js.map +1 -1
  8. package/dist/index.d.ts.map +1 -1
  9. package/dist/index.js +5 -0
  10. package/dist/index.js.map +1 -1
  11. package/dist/middleware/project.d.ts +3 -2
  12. package/dist/middleware/project.d.ts.map +1 -1
  13. package/dist/middleware/project.js +8 -4
  14. package/dist/middleware/project.js.map +1 -1
  15. package/dist/reference-files.d.ts +87 -0
  16. package/dist/reference-files.d.ts.map +1 -0
  17. package/dist/reference-files.js +267 -0
  18. package/dist/reference-files.js.map +1 -0
  19. package/dist/routes/chat.d.ts.map +1 -1
  20. package/dist/routes/chat.js +4 -2
  21. package/dist/routes/chat.js.map +1 -1
  22. package/dist/routes/entity.d.ts.map +1 -1
  23. package/dist/routes/entity.js +122 -5
  24. package/dist/routes/entity.js.map +1 -1
  25. package/dist/routes/names.d.ts +4 -0
  26. package/dist/routes/names.d.ts.map +1 -0
  27. package/dist/routes/names.js +61 -0
  28. package/dist/routes/names.js.map +1 -0
  29. package/dist/routes/project.d.ts.map +1 -1
  30. package/dist/routes/project.js +45 -5
  31. package/dist/routes/project.js.map +1 -1
  32. package/dist/routes/reference.d.ts +4 -0
  33. package/dist/routes/reference.d.ts.map +1 -0
  34. package/dist/routes/reference.js +24 -0
  35. package/dist/routes/reference.js.map +1 -0
  36. package/dist/routes/settings.d.ts +5 -8
  37. package/dist/routes/settings.d.ts.map +1 -1
  38. package/dist/routes/settings.js +9 -3
  39. package/dist/routes/settings.js.map +1 -1
  40. package/dist/routes/trash.d.ts.map +1 -1
  41. package/dist/routes/trash.js +25 -1
  42. package/dist/routes/trash.js.map +1 -1
  43. package/package.json +6 -6
  44. package/client-dist/assets/index-Dw_YYehf.css +0 -1
  45. package/client-dist/assets/index-Z8xntmCT.js +0 -14
@@ -8,10 +8,14 @@
8
8
  // type 参数非法 / 参数校验失败 → 400 VALIDATION_ERROR(zod 抛错由 errorHandler 统一映射,含 fields)
9
9
  // 实体不存在或已软删 → 404 ENTITY_NOT_FOUND
10
10
  import { Hono } from "hono";
11
- import { countDeltasForEntity, createEntity, createRelation, deleteRelation, eventOccursAt, getEntity, listEntities, listRelations, moveEvent, moveTimepoint, nowIso, softDeleteEntity, updateEntity, withTransaction, } from "@whispering233/ai-editor-db";
12
- import { ENTITY_DATA_SCHEMAS, entityCreateReqSchema, entityListQuerySchema, entityMoveReqSchema, entityTypeSchema, entityUpdateReqSchema, eventMoveToReqSchema } from "@whispering233/ai-editor-shared/schemas";
11
+ import { existsSync } from "node:fs";
12
+ import { join } from "node:path";
13
+ import { countDeltasForEntity, createEntity, createRelation, deleteRelation, eventOccursAt, getEntity, listEntities, listRelations, moveEvent, moveSetting, moveTimepoint, nowIso, RelationError, softDeleteEntity, updateEntity, withTransaction, } from "@whispering233/ai-editor-db";
14
+ import { sanitizeReferenceFileName } from "@whispering233/ai-editor-shared";
15
+ import { ENTITY_DATA_SCHEMAS, entityCreateReqSchema, entityListQuerySchema, entityMoveReqSchema, entityTypeSchema, entityUpdateReqSchema, eventMoveToReqSchema, settingMoveReqSchema } from "@whispering233/ai-editor-shared/schemas";
13
16
  import { HttpError, ok } from "../middleware/error.js";
14
17
  import { requireCurrentProject } from "../middleware/project.js";
18
+ import { getReferenceRow, moveReferenceToTrash, readReferenceFile, REFERENCE_DIR, uniqueFileNameIn, writeReferenceFile, } from "../reference-files.js";
15
19
  import { mapRelationError } from "./relation.js";
16
20
  /** 实体路由(挂载于 /api/v1/entity,index.ts) */
17
21
  export const entityRoutes = new Hono();
@@ -110,6 +114,8 @@ entityRoutes.get("/:type/:id", (c) => {
110
114
  }));
111
115
  });
112
116
  // POST /api/v1/entity/:type —— 创建(name 必填 1-100;data 按类型精确校验;201)
117
+ // reference 特例(决策 43):kind 缺省视为 link(url 必填校验);kind='file' → 先落盘
118
+ // references/<标题 sanitize>.md(frontmatter + 正文)再建索引(data 补 file_name/file_mtime/content 镜像)
113
119
  entityRoutes.post("/:type", async (c) => {
114
120
  const project = requireCurrentProject();
115
121
  const type = parseTypeParam(c.req.param("type"));
@@ -120,10 +126,38 @@ entityRoutes.post("/:type", async (c) => {
120
126
  if (parsed.data.data !== undefined) {
121
127
  validateDataByType(type, parsed.data.data);
122
128
  }
123
- const row = createEntity(project.db, { type, name: parsed.data.name, data: parsed.data.data });
129
+ let data = parsed.data.data ?? {};
130
+ if (type === "reference") {
131
+ const kind = data.kind === "file" ? "file" : "link"; // 缺省视为 link(决策 43)
132
+ if (kind === "link") {
133
+ // link 类:url 必填(trim 非空)
134
+ if (typeof data.url !== "string" || data.url.trim() === "") {
135
+ throw new HttpError(400, "VALIDATION_ERROR", "外源链接参考资料必须提供 url");
136
+ }
137
+ data = { ...data, kind: "link", url: data.url.trim() };
138
+ }
139
+ else {
140
+ // file 类:先原子写文件(frontmatter + 正文镜像),再建索引
141
+ const base = sanitizeReferenceFileName(parsed.data.name);
142
+ const fileName = uniqueFileNameIn(join(project.root, REFERENCE_DIR), base);
143
+ const body = typeof data.content === "string" ? data.content : "";
144
+ const { mtime } = writeReferenceFile(project.root, fileName, { title: parsed.data.name, category: data.type ?? "material", tags: Array.isArray(data.tags) ? data.tags : [] }, body);
145
+ data = {
146
+ ...data,
147
+ kind: "file",
148
+ file_name: fileName,
149
+ file_mtime: mtime,
150
+ content: body,
151
+ };
152
+ }
153
+ }
154
+ const row = createEntity(project.db, { type, name: parsed.data.name, data });
124
155
  return c.json(ok({ id: row.id, type: row.type, name: row.name, data: row.data, createdAt: row.created_at }), 201);
125
156
  });
126
157
  // PUT /api/v1/entity/:type/:id —— 部分更新(仅合并传入字段;data 浅合并)
158
+ // reference file 类特例(决策 43):**先原子写文件再更新 DB**——正文真相在文件:
159
+ // 请求未携带 data.content 时(行内编辑标题/分类/标签)读原文件正文与最新元数据重写 frontmatter 保留正文;
160
+ // 文件读失败(外部删除)→ 409 REFERENCE_FILE_MISSING 提示先扫描;文件名不随标题重命名(创建时确定)
127
161
  entityRoutes.put("/:type/:id", async (c) => {
128
162
  const project = requireCurrentProject();
129
163
  const type = parseTypeParam(c.req.param("type"));
@@ -135,7 +169,37 @@ entityRoutes.put("/:type/:id", async (c) => {
135
169
  if (parsed.data.data !== undefined) {
136
170
  validateDataByType(type, parsed.data.data);
137
171
  }
138
- const row = updateEntity(project.db, id, parsed.data);
172
+ let name = parsed.data.name;
173
+ let data = parsed.data.data;
174
+ if (type === "reference") {
175
+ const existing = getReferenceRow(project.db, id);
176
+ if (existing === null) {
177
+ throw new HttpError(404, "ENTITY_NOT_FOUND", `实体不存在: ${id}`);
178
+ }
179
+ if (existing.data.kind === "file" && typeof existing.data.file_name === "string") {
180
+ const fileName = existing.data.file_name;
181
+ const file = readReferenceFile(project.root, fileName);
182
+ if (file === null) {
183
+ throw new HttpError(409, "REFERENCE_FILE_MISSING", `参考资料文件缺失: references/${fileName}——可能已在文件管理器中被删除,请先扫描同步`);
184
+ }
185
+ // 元数据 = 请求新值 ?? 文件现状 ?? 索引现状;正文 = data.content 传入 ? 新值 : 文件正文
186
+ const nextTitle = name ?? file.title ?? existing.row.name;
187
+ const nextCategory = data?.type ?? file.category ?? "material";
188
+ const nextTags = Array.isArray(data?.tags) ? data.tags : file.tags;
189
+ const nextBody = typeof data?.content === "string" ? data.content : file.body;
190
+ const { mtime } = writeReferenceFile(project.root, fileName, { title: nextTitle, category: nextCategory, tags: nextTags, extraLines: file.extraLines }, nextBody);
191
+ // 服务端维护字段:kind/file_name/file_mtime 不接受客户端覆盖(防御)
192
+ data = {
193
+ ...(data ?? {}),
194
+ kind: "file",
195
+ file_name: fileName,
196
+ file_mtime: mtime,
197
+ content: nextBody,
198
+ };
199
+ name = nextTitle;
200
+ }
201
+ }
202
+ const row = updateEntity(project.db, id, { name, data });
139
203
  if (row === null) {
140
204
  throw new HttpError(404, "ENTITY_NOT_FOUND", `实体不存在: ${id}`);
141
205
  }
@@ -179,6 +243,38 @@ entityRoutes.put("/timepoint/:id/move", async (c) => {
179
243
  /** move_to 事务内哨兵:moveEvent 返回 null(事件不存在/已软删)→ 抛错回滚事务,路由映射 404 */
180
244
  class MoveToTargetNotFoundError extends Error {
181
245
  }
246
+ // PUT /api/v1/entity/setting/:id/move —— 设定同级重排 / 改父 + 重排(决策 46,2026-08 批次十三,
247
+ // 修订决策 42「设定无 sort_order 语义」约束;endpoints.md「PUT /entity/setting/:id/move」)
248
+ // 请求 { parent_id: string | null, order?: number }(settingMoveReqSchema,strict):
249
+ // 复合写端点(对齐 G2 event move_to 先例)——改父 + 目标同级组重排一次事务提交:
250
+ // 改父 = 事务内建新 belongs_to 边(防环沿用决策 30,违反 → 400 VALIDATION_ERROR)+ 删旧边;
251
+ // 重排 = 目标组内 sort_order 重写 0..n-1(NULL 沉底,仅被移行刷 updated_at——决策 14)。
252
+ // 响应 200 { moved: true };设定不存在/已软删 → 404 ENTITY_NOT_FOUND;
253
+ // 自指/成环/目标父不存在 → 400 VALIDATION_ERROR(RelationError SETTING_CYCLE/ENDPOINT_NOT_FOUND 映射)。
254
+ entityRoutes.put("/setting/:id/move", async (c) => {
255
+ const project = requireCurrentProject();
256
+ const id = c.req.param("id");
257
+ const raw = await c.req.json().catch(() => null);
258
+ const parsed = settingMoveReqSchema.safeParse(raw); // .strict():未知键 → 400
259
+ if (!parsed.success)
260
+ throw parsed.error;
261
+ try {
262
+ const result = moveSetting(project.db, id, { parentId: parsed.data.parent_id, order: parsed.data.order }, project.root);
263
+ if (result === null) {
264
+ throw new HttpError(404, "ENTITY_NOT_FOUND", `设定不存在: ${id}`);
265
+ }
266
+ return c.json(ok(result));
267
+ }
268
+ catch (err) {
269
+ // 防环/自指/目标父缺失 → 400(与 POST /relation 的设定层级校验同语义)
270
+ if (err instanceof RelationError) {
271
+ if (err.code === "SETTING_CYCLE" || err.code === "ENDPOINT_NOT_FOUND") {
272
+ throw new HttpError(400, "VALIDATION_ERROR", err.message);
273
+ }
274
+ }
275
+ throw mapRelationError(err);
276
+ }
277
+ });
182
278
  // POST /api/v1/entity/event/:id/move_to —— 事件跨组拖拽复合端点(G2,决策 26 修订,
183
279
  // endpoints.md「POST /entity/event/:id/move_to」)
184
280
  // 请求 { timepoint_id: string | null, order: number }(eventMoveToReqSchema):
@@ -245,10 +341,31 @@ entityRoutes.post("/event/:id/move_to", async (c) => {
245
341
  }
246
342
  });
247
343
  // DELETE /api/v1/entity/:type/:id —— 软删(决策 12:级联软删关系与 Delta,本体保留可还原)
344
+ // reference file 类特例(决策 43):先移文件入 references/.trash/(冲突递增命名)再 DB 软删——
345
+ // 文件移动失败 → 操作报错(文件未动、索引未删,可重试);DB 软删失败(罕见)→ 文件在 .trash/ 且
346
+ // 索引未软删,scan 反向规则(references/ 下缺失 → 软删)自愈
248
347
  entityRoutes.delete("/:type/:id", (c) => {
249
348
  const project = requireCurrentProject();
250
- parseTypeParam(c.req.param("type"));
349
+ const type = parseTypeParam(c.req.param("type"));
251
350
  const id = c.req.param("id");
351
+ if (type === "reference") {
352
+ const existing = getReferenceRow(project.db, id);
353
+ if (existing === null) {
354
+ throw new HttpError(404, "ENTITY_NOT_FOUND", `实体不存在: ${id}`);
355
+ }
356
+ if (existing.data.kind === "file" && typeof existing.data.file_name === "string") {
357
+ const fileName = existing.data.file_name;
358
+ // 文件缺失(外部已删)→ 不阻塞软删(索引照删,scan 语义一致);文件在 → 移入 .trash/
359
+ const full = join(project.root, REFERENCE_DIR, fileName);
360
+ if (existsSync(full)) {
361
+ const trashName = moveReferenceToTrash(project.root, fileName);
362
+ // 冲突递增导致 .trash/ 实际名 ≠ 原 file_name → 更新索引 file_name(软删后仅回收站展示)
363
+ if (trashName !== fileName) {
364
+ updateEntity(project.db, id, { data: { file_name: trashName } });
365
+ }
366
+ }
367
+ }
368
+ }
252
369
  const result = softDeleteEntity(project.db, id, nowIso());
253
370
  if (result === null) {
254
371
  throw new HttpError(404, "ENTITY_NOT_FOUND", `实体不存在: ${id}`);
@@ -1 +1 @@
1
- {"version":3,"file":"entity.js","sourceRoot":"","sources":["../../src/routes/entity.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"entity.js","sourceRoot":"","sources":["../../src/routes/entity.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import { Hono } from "hono";
2
+ /** 名称解析路由(挂载于 /api/v1/names,index.ts) */
3
+ export declare const namesRoutes: Hono<import("hono/types").BlankEnv, import("hono/types").BlankSchema, "/">;
4
+ //# sourceMappingURL=names.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"names.d.ts","sourceRoot":"","sources":["../../src/routes/names.ts"],"names":[],"mappings":"AAUA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAQ5B,yCAAyC;AACzC,eAAO,MAAM,WAAW,4EAAa,CAAC"}
@@ -0,0 +1,61 @@
1
+ // 名称解析路由(决策 47,批次十四):POST /api/v1/names/resolve
2
+ // 契约来源:doc/api/endpoints.md「POST /api/v1/names/resolve」节
3
+ // 用途:把工具调用参数中的 id 解析为人类可读名称(label = 类型中文,name = 实体名/节点标题),
4
+ // 供前端渲染摘要行(不暴露裸 id)。解析收敛服务端单点——按 id 前缀分流查库。
5
+ // 前缀分流(id 约定见 endpoints.md「id 约定」):
6
+ // char-/set-/loc-/hook-/ev-/tp-/ref- → entities 表(getEntity 已过滤软删)
7
+ // vol-/ch-/sc- → outline.json 节点(findOutlineNode 读侧不过滤软删——deleted: true 返回 null)
8
+ // rel- → null(关系无名称语义,决策 47)
9
+ // 其余前缀(proj-/prop_/sess_/call_/未知)→ null
10
+ // 响应 names 键集 = 请求 ids 去重后全集(每个 id 必有条目,未命中 = null)
11
+ import { Hono } from "hono";
12
+ import { getEntity, findOutlineNode, readOutlineFile } from "@whispering233/ai-editor-db";
13
+ import { ENTITY_TYPE_LABELS, OUTLINE_NODE_TYPE_LABELS } from "@whispering233/ai-editor-shared";
14
+ import { namesResolveReqSchema } from "@whispering233/ai-editor-shared/schemas";
15
+ import { ok } from "../middleware/error.js";
16
+ import { requireCurrentProject } from "../middleware/project.js";
17
+ /** 名称解析路由(挂载于 /api/v1/names,index.ts) */
18
+ export const namesRoutes = new Hono();
19
+ /** 实体 id 前缀(char-/set-/loc-/hook-/ev-/tp-/ref-,ENTITY_ID_PREFIX 同源) */
20
+ const ENTITY_PREFIXES = ["char-", "set-", "loc-", "hook-", "ev-", "tp-", "ref-"];
21
+ /** 大纲节点 id 前缀(vol-/ch-/sc-) */
22
+ const OUTLINE_PREFIXES = ["vol-", "ch-", "sc-"];
23
+ /** 解析单个 id:未命中/未知前缀 → null */
24
+ function resolveOne(id, project) {
25
+ // 实体前缀分流(getEntity 过滤已软删行,软删 → null)
26
+ for (const prefix of ENTITY_PREFIXES) {
27
+ if (id.startsWith(prefix)) {
28
+ const row = getEntity(project.db, id);
29
+ return row === null ? null : { label: ENTITY_TYPE_LABELS[row.type], name: row.name };
30
+ }
31
+ }
32
+ // 大纲节点前缀分流(findOutlineNode 读侧不过滤软删——deleted: true 视为不存在)
33
+ for (const prefix of OUTLINE_PREFIXES) {
34
+ if (id.startsWith(prefix)) {
35
+ const tree = readOutlineFile(project.root);
36
+ const node = findOutlineNode(tree, id);
37
+ if (node === undefined || node.deleted === true)
38
+ return null;
39
+ return { label: OUTLINE_NODE_TYPE_LABELS[node.type], name: node.title };
40
+ }
41
+ }
42
+ // rel- 与其他前缀(proj-/prop_/sess_/call_/未知):无名称语义 → null
43
+ return null;
44
+ }
45
+ // POST /api/v1/names/resolve —— 批量名称解析
46
+ namesRoutes.post("/resolve", async (c) => {
47
+ const project = requireCurrentProject();
48
+ const raw = await c.req.json().catch(() => null); // 空 body / 非法 JSON → 校验失败
49
+ const parsed = namesResolveReqSchema.safeParse(raw);
50
+ if (!parsed.success) {
51
+ throw parsed.error; // → app.onError → 400 VALIDATION_ERROR(含 fields)
52
+ }
53
+ // 去重(保持请求顺序)——重复 id 只解析一次
54
+ const uniqueIds = [...new Set(parsed.data.ids)];
55
+ const names = {};
56
+ for (const id of uniqueIds) {
57
+ names[id] = resolveOne(id, project);
58
+ }
59
+ return c.json(ok({ names }));
60
+ });
61
+ //# sourceMappingURL=names.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"names.js","sourceRoot":"","sources":["../../src/routes/names.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"project.d.ts","sourceRoot":"","sources":["../../src/routes/project.ts"],"names":[],"mappings":"AAqBA,OAAO,EAAE,IAAI,EAAgB,MAAM,MAAM,CAAC;AAwC1C,oDAAoD;AACpD,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,CAExD;AAED,wCAAwC;AACxC,eAAO,MAAM,cAAc,UAAU,CAAC;AAEtC;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAkBzD;AAED,yCAAyC;AACzC,eAAO,MAAM,aAAa,4EAAa,CAAC"}
1
+ {"version":3,"file":"project.d.ts","sourceRoot":"","sources":["../../src/routes/project.ts"],"names":[],"mappings":"AAqBA,OAAO,EAAE,IAAI,EAAgB,MAAM,MAAM,CAAC;AAmD1C,oDAAoD;AACpD,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,CAExD;AAED,wCAAwC;AACxC,eAAO,MAAM,cAAc,UAAU,CAAC;AAEtC;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAkBzD;AAED,yCAAyC;AACzC,eAAO,MAAM,aAAa,4EAAa,CAAC"}
@@ -18,10 +18,10 @@ import { ensureSchemaCompatible, DATA_DB_FILE_NAME } from "@whispering233/ai-edi
18
18
  import { SchemaVersionError } from "@whispering233/ai-editor-db";
19
19
  import { OUTLINE_FILE_NAME } from "@whispering233/ai-editor-db";
20
20
  import { PROJECT_FILE_NAME } from "@whispering233/ai-editor-db";
21
- import { findOutlineNode, readOutlineFile, readProjectFile, writeProjectFile } from "@whispering233/ai-editor-db";
21
+ import { agentsFileMtimeIso, findOutlineNode, readAgentsFile, readOutlineFile, readProjectFile, writeAgentsFile, writeProjectFile, } from "@whispering233/ai-editor-db";
22
22
  import { nowIso } from "@whispering233/ai-editor-db";
23
- import { projectBackupRenameReqSchema, projectBackupReqSchema, projectConfigUpdateReqSchema, projectCreateReqSchema, projectListResSchema, projectOpenReqSchema, } from "@whispering233/ai-editor-shared/schemas";
24
- import { createBackupZip, listBackups, overwriteProjectFiles, renameBackup, restoreBackup, snapshotBookDir, validateBackupPackage, writeBackup, writeProjectFilesFromBackup } from "../backup.js";
23
+ import { projectAgentsGetResSchema, projectAgentsPutReqSchema, projectAgentsPutResSchema, projectBackupRenameReqSchema, projectBackupReqSchema, projectConfigUpdateReqSchema, projectCreateReqSchema, projectListResSchema, projectOpenReqSchema, } from "@whispering233/ai-editor-shared/schemas";
24
+ import { createBackupZip, listBackups, migratePromptToAgents, overwriteProjectFiles, renameBackup, restoreBackup, snapshotBookDir, validateBackupPackage, writeBackup, writeProjectFilesFromBackup } from "../backup.js";
25
25
  import { HttpError, ok } from "../middleware/error.js";
26
26
  import { closeProject, getCurrentProject, initProject, requireCurrentProject, setCurrentProject, } from "../middleware/project.js";
27
27
  import { logSoftDeleteReconcile, reconcileSoftDelete } from "../consistency.js";
@@ -164,6 +164,9 @@ projectRoutes.post("/open", async (c) => {
164
164
  }
165
165
  const project = { root: dir, config, db: activeDb };
166
166
  setCurrentProject(project);
167
+ // 决策 41 自动迁移:project.json 有非空 prompt 且无 AGENTS.md → 迁移写入(原样,一次性;
168
+ // 失败不阻塞打开,记录日志下次 open 重试——schema.md「迁移在 open 流程内完成」)
169
+ migratePromptToAgents(project);
167
170
  // S4.2 启动一致性校验(决策 16 修订):打开项目即以大纲节点软删为准补标 DB 关联记录
168
171
  //(先 DB 后 JSON 崩溃窗口的幽灵形态兜底,幂等;无软删节点不输出日志)
169
172
  logSoftDeleteReconcile(reconcileSoftDelete(project));
@@ -442,6 +445,8 @@ projectRoutes.get("/config", (c) => {
442
445
  return c.json(ok(mapProjectFileToConfig(project.config)));
443
446
  });
444
447
  // PUT /api/v1/project/config —— 更新当前项目配置
448
+ // 注:`prompt` 已废弃(决策 41)——strict schema 不再接受该字段(传入 → 400 VALIDATION_ERROR);
449
+ // 项目规则改由 PUT /api/v1/project/agents 写入 AGENTS.md
445
450
  projectRoutes.put("/config", async (c) => {
446
451
  const project = requireCurrentProject();
447
452
  const raw = await c.req.json().catch(() => null);
@@ -449,7 +454,7 @@ projectRoutes.put("/config", async (c) => {
449
454
  if (!parsed.success) {
450
455
  throw parsed.error;
451
456
  }
452
- const { name, language, prompt, current_position, backup_frequency_minutes } = parsed.data;
457
+ const { name, language, current_position, backup_frequency_minutes } = parsed.data;
453
458
  // current_position 校验:须指向存在的**非软删**大纲节点(endpoints.md 第 115 行);
454
459
  // 400 + OUTLINE_NODE_NOT_FOUND(参数语义错误用 400,非资源访问 404)
455
460
  if (current_position !== undefined && current_position !== null) {
@@ -467,7 +472,6 @@ projectRoutes.put("/config", async (c) => {
467
472
  ...project.config,
468
473
  ...(name !== undefined ? { name } : {}),
469
474
  ...(language !== undefined ? { language } : {}),
470
- ...(prompt !== undefined ? { prompt } : {}),
471
475
  ...(current_position !== undefined ? { current_position } : {}),
472
476
  ...(backup_frequency_minutes !== undefined ? { backup_frequency_minutes } : {}),
473
477
  updated_at: nowIso(),
@@ -476,6 +480,42 @@ projectRoutes.put("/config", async (c) => {
476
480
  project.config = next;
477
481
  return c.json(ok({ updated: true }));
478
482
  });
483
+ // GET /api/v1/project/agents —— 读取项目规则文件 AGENTS.md(决策 41:项目规则唯一事实源)
484
+ //
485
+ // 语义(endpoints.md):
486
+ // - 无当前项目 → 409 NO_PROJECT_OPEN(与 /config 一致)
487
+ // - **文件不存在不报错**:AGENTS.md 是可选文件(新项目/未迁移项目可能没有),返回
488
+ // exists:false + 空串,前端据此展示空编辑区
489
+ // - updatedAt = 文件系统 mtime(ISO 8601)——外部修改检测依据(决策 41)
490
+ // - 读取为**每次实时读文件**(不缓存)——外部编辑立即可见
491
+ projectRoutes.get("/agents", (c) => {
492
+ const project = requireCurrentProject();
493
+ // 实时读文件(不缓存)——外部编辑立即可见;readAgentsFile 返回 null = 文件不存在
494
+ const fileContent = readAgentsFile(project.root);
495
+ const content = fileContent ?? "";
496
+ const exists = fileContent !== null; // 空文件(清空规则后保留)exists 仍为 true
497
+ const updatedAt = agentsFileMtimeIso(project.root);
498
+ return c.json(ok(projectAgentsGetResSchema.parse({ content, exists, updatedAt })));
499
+ });
500
+ // PUT /api/v1/project/agents —— 写入项目规则文件 AGENTS.md(决策 41:设置页直接编辑文件内容)
501
+ //
502
+ // 语义(endpoints.md):
503
+ // - 无当前项目 → 409 NO_PROJECT_OPEN
504
+ // - **整体替换**(非追加):content 为 AGENTS.md 完整内容;空串 = 清空规则(保留空文件不删除)
505
+ // - 文件不存在时自动创建;写入走**原子写**(临时文件 + fsync + rename,决策 11 同款)
506
+ // - 写入后返回新 mtime,前端更新本地比对基线(外部修改检测用)
507
+ // - 写入失败 → 500 INTERNAL_ERROR(errorHandler 兜底)
508
+ projectRoutes.put("/agents", async (c) => {
509
+ const project = requireCurrentProject();
510
+ const raw = await c.req.json().catch(() => null);
511
+ const parsed = projectAgentsPutReqSchema.safeParse(raw);
512
+ if (!parsed.success) {
513
+ throw parsed.error; // → app.onError → 400 VALIDATION_ERROR(含 fields)
514
+ }
515
+ writeAgentsFile(project.root, parsed.data.content);
516
+ const updatedAt = agentsFileMtimeIso(project.root);
517
+ return c.json(ok(projectAgentsPutResSchema.parse({ saved: true, updatedAt: updatedAt ?? nowIso() })));
518
+ });
479
519
  // ============ 备份管理(B2.2,决策 27:endpoints.md「备份管理」节) ============
480
520
  //
481
521
  // 备份管道/保留策略/校验/恢复逻辑集中 backup.ts(与自动定时器同模块);
@@ -1 +1 @@
1
- {"version":3,"file":"project.js","sourceRoot":"","sources":["../../src/routes/project.ts"],"names":[],"mappings":"AAAA,kFAAkF;AAClF,4FAA4F;AAC5F,4BAA4B;AAC5B,EAAE;AACF,iEAAiE;AACjE,kFAAkF;AAClF,uDAAuD;AACvD,WAAW;AACX,yEAAyE;AACzE,6EAA6E;AAC7E,kEAAkE;AAClE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACzE,OAAO,EACL,UAAU,EACV,SAAS,EACT,WAAW,EACX,YAAY,EACZ,UAAU,EACV,MAAM,GAEP,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,IAAI,EAAgB,MAAM,MAAM,CAAC;AAE1C,OAAO,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AACzE,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAE,sBAAsB,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AACxF,OAAO,EAAE,kBAAkB,EAAiC,MAAM,6BAA6B,CAAC;AAChG,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAClH,OAAO,EAAE,MAAM,EAAE,MAAM,6BAA6B,CAAC;AACrD,OAAO,EACL,4BAA4B,EAC5B,sBAAsB,EACtB,4BAA4B,EAC5B,sBAAsB,EACtB,oBAAoB,EACpB,oBAAoB,GACrB,MAAM,yCAAyC,CAAC;AACjD,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,qBAAqB,EAAE,YAAY,EAAE,aAAa,EAAE,eAAe,EAAE,qBAAqB,EAAE,WAAW,EAAE,2BAA2B,EAAE,MAAM,cAAc,CAAC;AAClM,OAAO,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,wBAAwB,CAAC;AACvD,OAAO,EACL,YAAY,EACZ,iBAAiB,EACjB,WAAW,EACX,qBAAqB,EACrB,iBAAiB,GAElB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,sBAAsB,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAEhF,2CAA2C;AAC3C,EAAE;AACF,gEAAgE;AAChE,6EAA6E;AAC7E,0DAA0D;AAC1D,mDAAmD;AAEnD,yDAAyD;AACzD,IAAI,WAAW,GAAkB,IAAI,CAAC;AAEtC,oDAAoD;AACpD,MAAM,UAAU,cAAc,CAAC,IAAmB;IAChD,WAAW,GAAG,IAAI,CAAC;AACrB,CAAC;AAED,wCAAwC;AACxC,MAAM,CAAC,MAAM,cAAc,GAAG,OAAO,CAAC;AAEtC;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAe;IAC/C,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QACzD,MAAM,IAAI,SAAS,CAAC,GAAG,EAAE,sBAAsB,EAAE,WAAW,CAAC,CAAC;IAChE,CAAC;IACD,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QACzB,MAAM,IAAI,SAAS,CAAC,GAAG,EAAE,sBAAsB,EAAE,cAAc,CAAC,CAAC;IACnE,CAAC;IACD,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAClC,IAAI,IAAY,CAAC;IACjB,IAAI,CAAC;QACH,IAAI,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC;IAChC,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,SAAS,CAAC,GAAG,EAAE,sBAAsB,EAAE,eAAe,QAAQ,EAAE,CAAC,CAAC;IAC9E,CAAC;IACD,IAAI,IAAI,KAAK,QAAQ,EAAE,CAAC;QACtB,MAAM,IAAI,SAAS,CAAC,GAAG,EAAE,sBAAsB,EAAE,kBAAkB,QAAQ,EAAE,CAAC,CAAC;IACjF,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,yCAAyC;AACzC,MAAM,CAAC,MAAM,aAAa,GAAG,IAAI,IAAI,EAAE,CAAC;AAExC,oDAAoD;AACpD,aAAa,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;IACxC,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,0BAA0B;IAC5E,MAAM,MAAM,GAAG,sBAAsB,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IACrD,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,MAAM,MAAM,CAAC,KAAK,CAAC,CAAC,iDAAiD;IACvE,CAAC;IACD,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC;IAE9C,yDAAyD;IACzD,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QACzB,MAAM,IAAI,SAAS,CAAC,GAAG,EAAE,sBAAsB,EAAE,cAAc,CAAC,CAAC;IACnE,CAAC;IACD,MAAM,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAClC,IAAI,CAAC;QACH,SAAS,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC3C,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,IAAI,SAAS,CAAC,GAAG,EAAE,sBAAsB,EAAE,WAAW,QAAQ,EAAE,CAAC,CAAC;IAC1E,CAAC;IACD,MAAM,GAAG,GAAG,iBAAiB,CAAC,QAAQ,CAAC,CAAC;IAExC,iEAAiE;IACjE,IAAI,eAAe,CAAC,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC;QAClC,MAAM,IAAI,SAAS,CAAC,GAAG,EAAE,wBAAwB,EAAE,sCAAsC,GAAG,EAAE,CAAC,CAAC;IAClG,CAAC;IAED,+EAA+E;IAC/E,0EAA0E;IAC1E,kEAAkE;IAClE,MAAM,OAAO,GAAG,WAAW,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IAEzC,yDAAyD;IACzD,YAAY,CAAC,OAAO,CAAC,CAAC;IAEtB,OAAO,CAAC,CAAC,IAAI,CACX,EAAE,CAAC;QACD,EAAE,EAAE,OAAO,CAAC,MAAM,CAAC,EAAE;QACrB,IAAI,EAAE,GAAG;QACT,OAAO,EAAE,IAAa;KACvB,CAAC,CACH,CAAC;AACJ,CAAC,CAAC,CAAC;AAEH,mEAAmE;AACnE,aAAa,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;IACtC,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;IACjD,MAAM,MAAM,GAAG,oBAAoB,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IACnD,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,MAAM,MAAM,CAAC,KAAK,CAAC;IACrB,CAAC;IACD,MAAM,GAAG,GAAG,iBAAiB,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,qBAAqB;IAEtE,8CAA8C;IAC9C,MAAM,MAAM,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;IACpC,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;QACpB,MAAM,IAAI,SAAS,CAAC,GAAG,EAAE,sBAAsB,EAAE,6BAA6B,GAAG,EAAE,CAAC,CAAC;IACvF,CAAC;IAED,yCAAyC;IACzC,sEAAsE;IACtE,mEAAmE;IACnE,8CAA8C;IAC9C,wEAAwE;IACxE,iEAAiE;IACjE,gDAAgD;IAChD,uDAAuD;IACvD,gEAAgE;IAChE,0BAA0B;IAC1B,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,EAAE,iBAAiB,CAAC,CAAC;QAC5C,MAAM,EAAE,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;QAChC,IAAI,QAAY,CAAC;QACjB,IAAI,MAAuB,CAAC;QAC5B,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,sBAAsB,CAAC,EAAE,EAAE,GAAG,EAAE,MAAM,CAAC,CAAC;YACpD,QAAQ,GAAG,GAAG,CAAC,EAAE,CAAC;YAClB,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC;QACtB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,sEAAsE;YACtE,oCAAoC;YACpC,IAAI,GAAG,YAAY,kBAAkB,EAAE,CAAC;gBACtC,MAAM,IAAI,SAAS,CAAC,GAAG,EAAE,uBAAuB,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC;YACjE,CAAC;YACD,MAAM,GAAG,CAAC;QACZ,CAAC;QAED,iDAAiD;QACjD,oBAAoB;QACpB,MAAM,IAAI,GAAG,iBAAiB,EAAE,CAAC;QACjC,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,CAAC,EAAE,KAAK,QAAQ,EAAE,CAAC;YAC1C,YAAY,CAAC,IAAI,CAAC,CAAC;QACrB,CAAC;QACD,MAAM,OAAO,GAAmB,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC;QACpE,iBAAiB,CAAC,OAAO,CAAC,CAAC;QAC3B,kDAAkD;QAClD,yCAAyC;QACzC,sBAAsB,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC,CAAC;QAErD,2EAA2E;QAC3E,4EAA4E;QAC5E,kEAAkE;QAClE,qDAAqD;QACrD,OAAO,CAAC,CAAC,IAAI,CACX,EAAE,CAAC;YACD,EAAE,EAAE,MAAM,CAAC,EAAE;YACb,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,MAAM,EAAE,sBAAsB,CAAC,MAAM,CAAC;YACtC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7E,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAChF,CAAC,CACH,CAAC;IACJ,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,qDAAqD;QACrD,2DAA2D;QAC3D,wEAAwE;QACxE,MAAM,IAAI,GAAG,iBAAiB,EAAE,CAAC;QACjC,IAAI,IAAI,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;YACnC,iBAAiB,CAAC,IAAI,CAAC,CAAC;QAC1B,CAAC;QACD,MAAM,GAAG,CAAC;IACZ,CAAC;AACH,CAAC,CAAC,CAAC;AAEH,yEAAyE;AACzE,aAAa,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE;IAC/B,IAAI,WAAW,KAAK,IAAI,EAAE,CAAC;QACzB,MAAM,IAAI,SAAS,CAAC,GAAG,EAAE,gBAAgB,EAAE,yCAAyC,CAAC,CAAC;IACxF,CAAC;IACD,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;IACnD,uCAAuC;IACvC,IAAI,OAAiB,CAAC;IACtB,IAAI,CAAC;QACH,OAAO,GAAG,WAAW,CAAC,QAAQ,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;IAC3D,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAK,GAA6B,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YACrD,OAAO,YAAY,CAAC,CAAC,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;QAC/D,CAAC;QACD,MAAM,GAAG,CAAC;IACZ,CAAC;IACD,uEAAuE;IACvE,uBAAuB;IACvB,MAAM,KAAK,GAAG,OAAO;SAClB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;SAC9B,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;SAC3D,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACT,MAAM,MAAM,GAAG,eAAe,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACtC,OAAO,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,EAAE,SAAS,EAAE,MAAM,CAAC,UAAU,EAAE,CAAC;IAC9F,CAAC,CAAC;SACD,MAAM,CAAC,CAAC,CAAC,EAA0D,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC;QAClF,mCAAmC;SAClC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;IAC1D,OAAO,YAAY,CAAC,CAAC,EAAE,EAAE,QAAQ,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC,CAAC;AAC3D,CAAC,CAAC,CAAC;AAEH;;;;;;;;GAQG;AACH,SAAS,YAAY,CAAC,CAAU,EAAE,MAA6F;IAC7H,IAAI,CAAC;QACH,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,oBAAoB,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IACxD,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,IAAI,SAAS,CACjB,GAAG,EACH,gBAAgB,EAChB,iBAAiB,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CACpE,CAAC;IACJ,CAAC;AACH,CAAC;AAED,gDAAgD;AAChD,aAAa,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE;IACjC,MAAM,OAAO,GAAG,iBAAiB,EAAE,CAAC;IACpC,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;QACrB,YAAY,CAAC,OAAO,CAAC,CAAC;QACtB,iBAAiB,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IACD,8CAA8C;IAC9C,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,IAAa,EAAE,CAAC,CAAC,CAAC;AAC9C,CAAC,CAAC,CAAC;AAEH,qEAAqE;AACrE,EAAE;AACF,8DAA8D;AAC9D,6EAA6E;AAC7E,oDAAoD;AACpD,6DAA6D;AAC7D,2CAA2C;AAC3C,oEAAoE;AACpE,4CAA4C;AAC5C,0BAA0B;AAC1B,aAAa,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE;IACjC,MAAM,OAAO,GAAG,qBAAqB,EAAE,CAAC;IACxC,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;IAEzB,4CAA4C;IAC5C,KAAK,MAAM,CAAC,IAAI,CAAC,iBAAiB,EAAE,iBAAiB,EAAE,iBAAiB,CAAC,EAAE,CAAC;QAC1E,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9B,MAAM,IAAI,SAAS,CAAC,GAAG,EAAE,gBAAgB,EAAE,kBAAkB,CAAC,EAAE,CAAC,CAAC;QACpE,CAAC;IACH,CAAC;IAED,wDAAwD;IACxD,MAAM,OAAO,GAAG,eAAe,CAAC,OAAO,CAAC,CAAC;IAEzC,uEAAuE;IACvE,MAAM,QAAQ,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC;IAC9C,CAAC,CAAC,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,CAAC;IAC5C,CAAC,CAAC,MAAM,CAAC,qBAAqB,EAAE,qDAAqD,kBAAkB,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC;IACrH,OAAO,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;AACzB,CAAC,CAAC,CAAC;AAEH,oDAAoD;AAEpD,sDAAsD;AACtD,MAAM,eAAe,GAAG,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC;AAEzC,oDAAoD;AACpD,SAAS,gBAAgB,CAAC,IAAY;IACpC,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,MAAM,IAAI,SAAS,CAAC,GAAG,EAAE,kBAAkB,EAAE,aAAa,CAAC,CAAC;IAC9D,CAAC;IACD,6DAA6D;IAC7D,uDAAuD;IACvD,IAAI,6BAA6B,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QAC7C,MAAM,IAAI,SAAS,CAAC,GAAG,EAAE,kBAAkB,EAAE,uBAAuB,CAAC,CAAC;IACxE,CAAC;AACH,CAAC;AAED,sDAAsD;AACtD,4EAA4E;AAC5E,0DAA0D;AAE1D;;;;GAIG;AACH,SAAS,eAAe,CAAC,IAAY,EAAE,EAAU;IAC/C,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;IAC5C,IAAI,OAAiB,CAAC;IACtB,IAAI,CAAC;QACH,OAAO,GAAG,WAAW,CAAC,QAAQ,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;IAC3D,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC,CAAC,mBAAmB;IAClC,CAAC;IACD,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;QACxB,IAAI,CAAC,CAAC,CAAC,WAAW,EAAE;YAAE,SAAS;QAC/B,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;QACnC,MAAM,MAAM,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;QACpC,IAAI,MAAM,KAAK,IAAI,IAAI,MAAM,CAAC,EAAE,KAAK,EAAE;YAAE,OAAO,GAAG,CAAC;IACtD,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;GAKG;AACH,SAAS,aAAa,CAAC,IAAY,EAAE,IAAY;IAC/C,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC;IAC5C,IAAI,SAAS,GAAG,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IACrC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3C,SAAS,GAAG,IAAI,CAAC,QAAQ,EAAE,GAAG,IAAI,KAAK,CAAC,GAAG,CAAC,CAAC;IAC/C,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,oEAAoE;AACpE,EAAE;AACF,gCAAgC;AAChC,yDAAyD;AACzD,wDAAwD;AACxD,0DAA0D;AAC1D,2CAA2C;AAC3C,wDAAwD;AACxD,8DAA8D;AAC9D,sEAAsE;AACtE,mEAAmE;AACnE,4CAA4C;AAC5C,4EAA4E;AAC5E,gDAAgD;AAChD,0DAA0D;AAC1D,kBAAkB;AAClB,aAAa,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;IACxC,IAAI,WAAW,KAAK,IAAI,EAAE,CAAC;QACzB,MAAM,IAAI,SAAS,CAAC,GAAG,EAAE,gBAAgB,EAAE,yCAAyC,CAAC,CAAC;IACxF,CAAC;IAED,2DAA2D;IAC3D,iEAAiE;IACjE,MAAM,aAAa,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,gBAAgB,CAAC,IAAI,GAAG,CAAC,CAAC;IACpE,IAAI,aAAa,GAAG,eAAe,EAAE,CAAC;QACpC,MAAM,IAAI,SAAS,CAAC,GAAG,EAAE,kBAAkB,EAAE,aAAa,eAAe,GAAG,IAAI,GAAG,IAAI,KAAK,CAAC,CAAC;IAChG,CAAC;IAED,wEAAwE;IACxE,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;IACvD,MAAM,IAAI,GAAG,OAAO,IAAI,EAAE,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IACpE,gBAAgB,CAAC,IAAI,CAAC,CAAC;IACvB,MAAM,IAAI,GAAG,IAAI,EAAE,IAAI,CAAC;IACxB,IAAI,CAAC,CAAC,IAAI,YAAY,IAAI,CAAC,EAAE,CAAC;QAC5B,MAAM,IAAI,SAAS,CAAC,GAAG,EAAE,kBAAkB,EAAE,sBAAsB,CAAC,CAAC;IACvE,CAAC;IACD,IAAI,IAAI,CAAC,IAAI,GAAG,eAAe,EAAE,CAAC;QAChC,MAAM,IAAI,SAAS,CAAC,GAAG,EAAE,kBAAkB,EAAE,aAAa,eAAe,GAAG,IAAI,GAAG,IAAI,KAAK,CAAC,CAAC;IAChG,CAAC;IAED,uEAAuE;IACvE,0DAA0D;IAC1D,yEAAyE;IACzE,wDAAwD;IACxD,sEAAsE;IACtE,IAAI,OAAmC,CAAC;IACxC,IAAI,SAAiB,CAAC;IACtB,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,qBAAqB,CAAC,IAAI,UAAU,CAAC,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;QAClF,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC;QAC5B,SAAS,GAAG,SAAS,CAAC,SAAS,CAAC;IAClC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,GAAG,YAAY,SAAS;YAAE,MAAM,GAAG,CAAC;QACxC,MAAM,IAAI,SAAS,CAAC,GAAG,EAAE,kBAAkB,EAAE,sBAAsB,CAAC,CAAC;IACvE,CAAC;IAED,yDAAyD;IACzD,kCAAkC;IAClC,MAAM,UAAU,GAAG,eAAe,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;IAC3D,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;QACxB,0BAA0B;QAC1B,6CAA6C;QAC7C,kDAAkD;QAClD,2CAA2C;QAC3C,MAAM,GAAG,GAAG,iBAAiB,EAAE,CAAC;QAChC,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;YAC5C,gDAAgD;YAChD,IAAI,CAAC;gBACH,MAAM,QAAQ,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,qBAAqB;gBACxD,qBAAqB,CAAC,GAAG,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,CAAC,UAAU,CAAC,EAAE,gBAAgB,EAAE,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC;YAC3G,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,sDAAsD;gBACtD,wDAAwD;gBACxD,IAAI,iBAAiB,EAAE,KAAK,IAAI,IAAI,CAAC,iBAAiB,EAAG,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;oBAClE,iBAAiB,CAAC,IAAI,CAAC,CAAC;gBAC1B,CAAC;gBACD,MAAM,GAAG,CAAC;YACZ,CAAC;QACH,CAAC;aAAM,CAAC;YACN,mCAAmC;YACnC,MAAM,QAAQ,GAAG,eAAe,CAAC,UAAU,CAAC,CAAC,CAAC,UAAU;YACxD,2BAA2B,CAAC,UAAU,EAAE,OAAO,EAAE;gBAC/C,MAAM,EAAE,SAAS;gBACjB,IAAI,EAAE,QAAQ,CAAC,UAAU,CAAC;gBAC1B,gBAAgB,EAAE,QAAQ,CAAC,QAAQ;aACpC,CAAC,CAAC;QACL,CAAC;QACD,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAE,IAAa,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,CAAC,UAAU,CAAC,EAAE,IAAI,EAAE,UAAmB,EAAE,CAAC,CAAC,CAAC;IACzI,CAAC;IAED,+BAA+B;IAC/B,+DAA+D;IAC/D,+CAA+C;IAC/C,MAAM,OAAO,GAAG,aAAa,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;IACjD,IAAI,CAAC;QACH,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACxC,qCAAqC;QACrC,2BAA2B,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAC7E,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS;QAC5D,MAAM,GAAG,CAAC,CAAC,oCAAoC;IACjD,CAAC;IAED,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAE,IAAa,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,KAAc,EAAE,CAAC,CAAC,CAAC;AAC9H,CAAC,CAAC,CAAC;AAEH,yCAAyC;AACzC,aAAa,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC,CAAC,EAAE,EAAE;IACjC,MAAM,OAAO,GAAG,qBAAqB,EAAE,CAAC,CAAC,8BAA8B;IACvE,6DAA6D;IAC7D,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,sBAAsB,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;AAC5D,CAAC,CAAC,CAAC;AAEH,yCAAyC;AACzC,aAAa,CAAC,GAAG,CAAC,SAAS,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;IACvC,MAAM,OAAO,GAAG,qBAAqB,EAAE,CAAC;IACxC,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;IACjD,MAAM,MAAM,GAAG,4BAA4B,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IAC3D,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,MAAM,MAAM,CAAC,KAAK,CAAC;IACrB,CAAC;IACD,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,gBAAgB,EAAE,wBAAwB,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC;IAE3F,+DAA+D;IAC/D,sDAAsD;IACtD,IAAI,gBAAgB,KAAK,SAAS,IAAI,gBAAgB,KAAK,IAAI,EAAE,CAAC;QAChE,MAAM,IAAI,GAAG,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAC3C,MAAM,IAAI,GAAG,eAAe,CAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC;QACrD,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;YAChD,MAAM,IAAI,SAAS,CACjB,GAAG,EACH,wBAAwB,EACxB,oCAAoC,gBAAgB,EAAE,CACvD,CAAC;QACJ,CAAC;IACH,CAAC;IAED,mEAAmE;IACnE,6DAA6D;IAC7D,+CAA+C;IAC/C,gCAAgC;IAChC,MAAM,IAAI,GAAsB;QAC9B,GAAG,OAAO,CAAC,MAAM;QACjB,GAAG,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvC,GAAG,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/C,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC3C,GAAG,CAAC,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/D,GAAG,CAAC,wBAAwB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,wBAAwB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC/E,UAAU,EAAE,MAAM,EAAE;KACrB,CAAC;IACF,gBAAgB,CAAC,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACrC,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAEtB,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,IAAa,EAAE,CAAC,CAAC,CAAC;AAChD,CAAC,CAAC,CAAC;AAEH,iEAAiE;AACjE,EAAE;AACF,4CAA4C;AAC5C,yEAAyE;AAEzE,mEAAmE;AACnE,aAAa,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC,EAAE,EAAE;IAClC,MAAM,OAAO,GAAG,qBAAqB,EAAE,CAAC;IACxC,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,WAAW,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;AACvD,CAAC,CAAC,CAAC;AAEH,0DAA0D;AAC1D,6DAA6D;AAC7D,wDAAwD;AACxD,mEAAmE;AACnE,aAAa,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;IACxC,MAAM,OAAO,GAAG,qBAAqB,EAAE,CAAC;IACxC,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;IACjD,MAAM,MAAM,GAAG,sBAAsB,CAAC,SAAS,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC;IAC3D,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,MAAM,IAAI,SAAS,CAAC,GAAG,EAAE,kBAAkB,EAAE,YAAY,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,OAAO,IAAI,QAAQ,EAAE,CAAC,CAAC;IAC1G,CAAC;IACD,2EAA2E;IAC3E,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,WAAW,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AAClG,CAAC,CAAC,CAAC;AAEH,wEAAwE;AACxE,EAAE;AACF,2CAA2C;AAC3C,qEAAqE;AACrE,8DAA8D;AAC9D,kEAAkE;AAClE,6CAA6C;AAC7C,aAAa,CAAC,IAAI,CAAC,gBAAgB,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;IAC/C,MAAM,OAAO,GAAG,qBAAqB,EAAE,CAAC,CAAC,4CAA4C;IACrF,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;IACjD,6FAA6F;IAC7F,MAAM,MAAM,GAAG,MAAM,4BAA4B,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;IAClE,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;AACrF,CAAC,CAAC,CAAC;AAEH,+DAA+D;AAC/D,EAAE;AACF,oBAAoB;AACpB,0EAA0E;AAC1E,oBAAoB;AACpB,4CAA4C;AAC5C,0DAA0D;AAC1D,+DAA+D;AAC/D,aAAa,CAAC,IAAI,CAAC,iBAAiB,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;IAChD,MAAM,OAAO,GAAG,qBAAqB,EAAE,CAAC;IACxC,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;IACjD,MAAM,QAAQ,GACZ,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,IAAI,OAAQ,GAA+B,CAAC,QAAQ,KAAK,QAAQ;QACtG,CAAC,CAAG,GAA+B,CAAC,QAAmB;QACvD,CAAC,CAAC,IAAI,CAAC;IACX,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;QACtB,MAAM,IAAI,SAAS,CAAC,GAAG,EAAE,kBAAkB,EAAE,yBAAyB,CAAC,CAAC;IAC1E,CAAC;IACD,IAAI,CAAC;QACH,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAE,IAAa,EAAE,GAAG,aAAa,CAAC,OAAO,EAAE,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC;IACtF,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,4DAA4D;QAC5D,wDAAwD;QACxD,IAAI,iBAAiB,EAAE,KAAK,IAAI,IAAI,CAAC,iBAAiB,EAAG,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;YAClE,iBAAiB,CAAC,IAAI,CAAC,CAAC;QAC1B,CAAC;QACD,MAAM,GAAG,CAAC;IACZ,CAAC;AACH,CAAC,CAAC,CAAC;AAEH,4DAA4D;AAC5D,gCAAgC;AAChC,EAAE;AACF,oBAAoB;AACpB,uDAAuD;AACvD,8DAA8D;AAC9D,4DAA4D;AAC5D,mDAAmD;AACnD,wDAAwD;AACxD,sDAAsD;AACtD,aAAa,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;IACxC,MAAM,OAAO,GAAG,qBAAqB,EAAE,CAAC,CAAC,8BAA8B;IACvE,IAAI,WAAW,KAAK,IAAI,EAAE,CAAC;QACzB,MAAM,IAAI,SAAS,CAAC,GAAG,EAAE,gBAAgB,EAAE,yCAAyC,CAAC,CAAC;IACxF,CAAC;IACD,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,CAAC;IACjD,MAAM,IAAI,GACR,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI,IAAI,OAAQ,GAA+B,CAAC,IAAI,KAAK,QAAQ;QAClG,CAAC,CAAG,GAA+B,CAAC,IAAe,CAAC,IAAI,EAAE;QAC1D,CAAC,CAAC,EAAE,CAAC;IACT,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,gBAAgB;IAExC,gDAAgD;IAChD,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;IACnD,IAAI,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,QAAQ,EAAE,CAAC;QACvC,MAAM,IAAI,SAAS,CAAC,GAAG,EAAE,kBAAkB,EAAE,qBAAqB,CAAC,CAAC;IACtE,CAAC;IACD,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAC5B,MAAM,SAAS,GAAG,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IACvC,IAAI,SAAS,KAAK,MAAM,EAAE,CAAC;QACzB,mCAAmC;QACnC,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,IAAa,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IACpE,CAAC;IACD,IAAI,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC1B,MAAM,IAAI,SAAS,CAAC,GAAG,EAAE,wBAAwB,EAAE,aAAa,IAAI,EAAE,CAAC,CAAC;IAC1E,CAAC;IAED,sDAAsD;IACtD,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC;IACpC,MAAM,OAAO,GAAG,EAAE,GAAG,OAAO,CAAC,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE,CAAC;IAClE,gBAAgB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,IAAI,CAAC;QACH,UAAU,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IAChC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,0CAA0C;QAC1C,gBAAgB,CAAC,MAAM,EAAE,EAAE,GAAG,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;QAC9E,MAAM,GAAG,CAAC,CAAC,oCAAoC;IACjD,CAAC;IAED,gDAAgD;IAChD,OAAO,CAAC,IAAI,GAAG,SAAS,CAAC;IACzB,OAAO,CAAC,MAAM,GAAG,OAAO,CAAC;IACzB,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,OAAO,EAAE,IAAa,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AACvE,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"project.js","sourceRoot":"","sources":["../../src/routes/project.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import { Hono } from "hono";
2
+ /** 参考资料路由(挂载于 /api/v1/reference,index.ts) */
3
+ export declare const referenceRoutes: Hono<import("hono/types").BlankEnv, import("hono/types").BlankSchema, "/">;
4
+ //# sourceMappingURL=reference.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reference.d.ts","sourceRoot":"","sources":["../../src/routes/reference.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAK5B,6CAA6C;AAC7C,eAAO,MAAM,eAAe,4EAAa,CAAC"}
@@ -0,0 +1,24 @@
1
+ // 参考资料专属路由(决策 43,批次十一):扫描重建索引端点
2
+ //
3
+ // 契约来源:doc/api/endpoints.md「POST /api/v1/reference/scan」、决策 43(文件 = 真相源,
4
+ // DB 索引 = 派生镜像;mtime 快照比对幂等全量)。实体 CRUD 走泛型 /api/v1/entity/reference
5
+ // (文件联动在 routes/entity.ts + routes/trash.ts 内部完成),本路由只承载参考资料专属端点。
6
+ import { Hono } from "hono";
7
+ import { ok } from "../middleware/error.js";
8
+ import { requireCurrentProject } from "../middleware/project.js";
9
+ import { countUnsyncedReferenceFiles, scanReferences } from "../reference-files.js";
10
+ /** 参考资料路由(挂载于 /api/v1/reference,index.ts) */
11
+ export const referenceRoutes = new Hono();
12
+ // POST /api/v1/reference/scan —— 扫描重建索引(幂等全量比对;返回统计)
13
+ // 无项目 → 409 NO_PROJECT_OPEN(requireCurrentProject);失败不抛错——errors 数组带回(解析容错)
14
+ referenceRoutes.post("/scan", (c) => {
15
+ const project = requireCurrentProject();
16
+ return c.json(ok(scanReferences(project.root, project.db)));
17
+ });
18
+ // GET /api/v1/reference/scan/status —— 只读探测:references/ 下未同步文件数(无副作用)
19
+ // 列表页打开项目提示条用(「检测到 N 个未同步的本地文档」);扫描按钮执行后应为 0
20
+ referenceRoutes.get("/scan/status", (c) => {
21
+ const project = requireCurrentProject();
22
+ return c.json(ok({ unsynced: countUnsyncedReferenceFiles(project.root, project.db) }));
23
+ });
24
+ //# sourceMappingURL=reference.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reference.js","sourceRoot":"","sources":["../../src/routes/reference.ts"],"names":[],"mappings":"AAAA,gCAAgC;AAChC,EAAE;AACF,yEAAyE;AACzE,oEAAoE;AACpE,kEAAkE;AAClE,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,EAAE,EAAE,MAAM,wBAAwB,CAAC;AAC5C,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,EAAE,2BAA2B,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAEpF,6CAA6C;AAC7C,MAAM,CAAC,MAAM,eAAe,GAAG,IAAI,IAAI,EAAE,CAAC;AAE1C,qDAAqD;AACrD,4EAA4E;AAC5E,eAAe,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,EAAE,EAAE;IAClC,MAAM,OAAO,GAAG,qBAAqB,EAAE,CAAC;IACxC,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,cAAc,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;AAC9D,CAAC,CAAC,CAAC;AAEH,sEAAsE;AACtE,6CAA6C;AAC7C,eAAe,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC,CAAC,EAAE,EAAE;IACxC,MAAM,OAAO,GAAG,qBAAqB,EAAE,CAAC;IACxC,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,QAAQ,EAAE,2BAA2B,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AACzF,CAAC,CAAC,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import { Hono } from "hono";
2
+ import type { UserConfigFile } from "@whispering233/ai-editor-shared";
2
3
  import { type ThinkingLevel } from "@whispering233/ai-editor-shared/schemas";
3
4
  /** 默认模型名(endpoints.md settings 端点) */
4
5
  export declare const DEFAULT_MODEL = "deepseek-v4-flash";
@@ -6,19 +7,15 @@ export declare const DEFAULT_MODEL = "deepseek-v4-flash";
6
7
  export declare const DEEPSEEK_API_KEY_ENV = "DEEPSEEK_API_KEY";
7
8
  /** 用户级配置文件相对 HOME 的路径(决策 17:不入项目文件) */
8
9
  export declare const USER_CONFIG_RELATIVE_PATH: string;
9
- /** 用户级配置文件结构(~/.ai-editor/config.json) */
10
- export interface UserConfigFile {
11
- model?: string;
12
- /** 思考强度(决策 34:pi-ai reasoning 统一接口;缺省 high——DeepSeek 默认推理) */
13
- thinking_level?: ThinkingLevel;
14
- api_key?: string;
15
- }
16
10
  /** 缺省思考强度(与 SharedConfig 缺省一致,读侧兜底) */
17
11
  export declare const DEFAULT_THINKING_LEVEL: ThinkingLevel;
18
12
  /** 用户级配置文件绝对路径(os.homedir() 读 $HOME,测试设 HOME 即可隔离) */
19
13
  export declare function userConfigPath(): string;
20
14
  /**
21
- * 读取用户级配置;文件不存在或 JSON 损坏 → 返回空配置(默认值语义,不抛错)
15
+ * 读取用户级配置;文件不存在 / JSON 损坏 / schema 不合法 返回空配置(默认值语义,不抛错)。
16
+ * 决策 48:schema 正式化(shared userConfigFileSchema,非 strict 宽松读取——用户自有文件,
17
+ * 未来版本追加字段不使整份配置失效);v0 旧格式(无 schema_version)与 v1 同结构直接兼容,
18
+ * 不迁移不写回(用户下次在设置页保存时自然落新格式)。
22
19
  */
23
20
  export declare function getUserConfig(): UserConfigFile;
24
21
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"settings.d.ts","sourceRoot":"","sources":["../../src/routes/settings.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAG5B,OAAO,EAAoD,KAAK,aAAa,EAAE,MAAM,yCAAyC,CAAC;AAI/H,sCAAsC;AACtC,eAAO,MAAM,aAAa,sBAAsB,CAAC;AAEjD,4CAA4C;AAC5C,eAAO,MAAM,oBAAoB,qBAAqB,CAAC;AAEvD,uCAAuC;AACvC,eAAO,MAAM,yBAAyB,QAAoC,CAAC;AAE3E,0CAA0C;AAC1C,MAAM,WAAW,cAAc;IAC7B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,8DAA8D;IAC9D,cAAc,CAAC,EAAE,aAAa,CAAC;IAC/B,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,uCAAuC;AACvC,eAAO,MAAM,sBAAsB,EAAE,aAAsB,CAAC;AAE5D,sDAAsD;AACtD,wBAAgB,cAAc,IAAI,MAAM,CAEvC;AAED;;GAEG;AACH,wBAAgB,aAAa,IAAI,cAAc,CAO9C;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,OAAO,CAAC,cAAc,CAAC,GAAG,cAAc,CAY/E;AAED;;;GAGG;AACH,wBAAgB,eAAe,IAAI;IAAE,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,CAKpF;AAED,iCAAiC;AACjC,eAAO,MAAM,cAAc,4EAAa,CAAC"}
1
+ {"version":3,"file":"settings.d.ts","sourceRoot":"","sources":["../../src/routes/settings.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAE5B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iCAAiC,CAAC;AAEtE,OAAO,EAIL,KAAK,aAAa,EACnB,MAAM,yCAAyC,CAAC;AAIjD,sCAAsC;AACtC,eAAO,MAAM,aAAa,sBAAsB,CAAC;AAEjD,4CAA4C;AAC5C,eAAO,MAAM,oBAAoB,qBAAqB,CAAC;AAEvD,uCAAuC;AACvC,eAAO,MAAM,yBAAyB,QAAoC,CAAC;AAE3E,uCAAuC;AACvC,eAAO,MAAM,sBAAsB,EAAE,aAAsB,CAAC;AAE5D,sDAAsD;AACtD,wBAAgB,cAAc,IAAI,MAAM,CAEvC;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,IAAI,cAAc,CAQ9C;AAED;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,OAAO,CAAC,cAAc,CAAC,GAAG,cAAc,CAc/E;AAED;;;GAGG;AACH,wBAAgB,eAAe,IAAI;IAAE,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAA;CAAE,CAKpF;AAED,iCAAiC;AACjC,eAAO,MAAM,cAAc,4EAAa,CAAC"}