@whispering233/ai-editor-db 0.0.48 → 0.0.50
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 +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/migrations/008_document_records.d.ts +4 -0
- package/dist/migrations/008_document_records.d.ts.map +1 -0
- package/dist/migrations/008_document_records.js +32 -0
- package/dist/migrations/008_document_records.js.map +1 -0
- package/dist/migrations/index.d.ts +1 -1
- package/dist/migrations/index.d.ts.map +1 -1
- package/dist/migrations/index.js +6 -3
- package/dist/migrations/index.js.map +1 -1
- package/dist/queries/document.d.ts +57 -0
- package/dist/queries/document.d.ts.map +1 -0
- package/dist/queries/document.js +98 -0
- package/dist/queries/document.js.map +1 -0
- package/dist/queries/entity.d.ts +2 -2
- package/dist/queries/entity.d.ts.map +1 -1
- package/dist/queries/entity.js +26 -24
- package/dist/queries/entity.js.map +1 -1
- package/dist/schema.d.ts +5 -1
- package/dist/schema.d.ts.map +1 -1
- package/dist/schema.js +5 -1
- package/dist/schema.js.map +1 -1
- package/dist/tables.d.ts +128 -2
- package/dist/tables.d.ts.map +1 -1
- package/dist/tables.js +26 -2
- package/dist/tables.js.map +1 -1
- package/package.json +2 -2
package/dist/index.d.ts
CHANGED
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAKA,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,qBAAqB,CAAC;AACpC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,uBAAuB,CAAC;AACtC,cAAc,oBAAoB,CAAC;AACnC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,oBAAoB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAKA,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,qBAAqB,CAAC;AACpC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,uBAAuB,CAAC;AACtC,cAAc,oBAAoB,CAAC;AACnC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC"}
|
package/dist/index.js
CHANGED
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,8DAA8D;AAC9D,4EAA4E;AAC5E,EAAE;AACF,sEAAsE;AACtE,gFAAgF;AAChF,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,qBAAqB,CAAC;AACpC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,uBAAuB,CAAC;AACtC,cAAc,oBAAoB,CAAC;AACnC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,oBAAoB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,8DAA8D;AAC9D,4EAA4E;AAC5E,EAAE;AACF,sEAAsE;AACtE,gFAAgF;AAChF,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,qBAAqB,CAAC;AACpC,cAAc,sBAAsB,CAAC;AACrC,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,qBAAqB,CAAC;AACpC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,uBAAuB,CAAC;AACtC,cAAc,oBAAoB,CAAC;AACnC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"008_document_records.d.ts","sourceRoot":"","sources":["../../src/migrations/008_document_records.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAe5C,QAAA,MAAM,YAAY,EAAE,SAKnB,CAAC;AAEF,eAAe,YAAY,CAAC"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
// 迁移 008:块文档表——新增 document_records(章正文 / 参考资料正文,2026-10)
|
|
2
|
+
//
|
|
3
|
+
// 纯 DDL 迁移(无数据搬移):v7 库补建一张新表,既有表与数据一概不动。
|
|
4
|
+
// 旧 `references/` 目录与旧参考资料行**不作兼容读取**(开发阶段口径,见 docs/db/schema.md
|
|
5
|
+
// 「document_records — 块文档表」段)——本迁移不碰它们,也不删任何东西。
|
|
6
|
+
//
|
|
7
|
+
// 幂等:CREATE TABLE IF NOT EXISTS——手工回退版本号后重跑(异常重试路径)不报错;
|
|
8
|
+
// 正常路径由 user_version 门控(版本已到 8 不再执行)。事务由 runMigrations 保证
|
|
9
|
+
// (up + setUserVersion 原子提交)。
|
|
10
|
+
//
|
|
11
|
+
// DDL 与 tables.ts 的 CREATE_TABLES_SQL 中的同名段必须逐字同形——新库走 createTables、
|
|
12
|
+
// 旧库走本迁移,两条路径建出的表结构需一致(schema.test.ts 的 DDL 对齐断言锁住声明层)。
|
|
13
|
+
/** v8 document_records 表 DDL(列序与 CREATE_TABLES_SQL 一致) */
|
|
14
|
+
const DOCUMENT_RECORDS_DDL = `
|
|
15
|
+
CREATE TABLE IF NOT EXISTS document_records (
|
|
16
|
+
owner_kind TEXT NOT NULL, -- 'chapter' | 'reference'(枚举值少且稳定,不加 CHECK)
|
|
17
|
+
owner_id TEXT NOT NULL, -- 'ch-*'(章节点 id)| 'ref-*'(参考资料实体 id)
|
|
18
|
+
content TEXT NOT NULL, -- 块数组 JSON 字符串(真相;服务端读路径不解析)
|
|
19
|
+
content_text TEXT NOT NULL, -- 服务端派生的轻量 md 投影(AI 读取/列表摘要/搜索/字数)
|
|
20
|
+
created_at TEXT NOT NULL, -- ISO 8601,应用层写入
|
|
21
|
+
updated_at TEXT NOT NULL, -- ISO 8601,应用层写入(版本戳:多标签页防覆盖)
|
|
22
|
+
PRIMARY KEY (owner_kind, owner_id)
|
|
23
|
+
)
|
|
24
|
+
`;
|
|
25
|
+
const migration008 = {
|
|
26
|
+
version: 8,
|
|
27
|
+
up(db) {
|
|
28
|
+
db.exec(DOCUMENT_RECORDS_DDL);
|
|
29
|
+
},
|
|
30
|
+
};
|
|
31
|
+
export default migration008;
|
|
32
|
+
//# sourceMappingURL=008_document_records.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"008_document_records.js","sourceRoot":"","sources":["../../src/migrations/008_document_records.ts"],"names":[],"mappings":"AAAA,yDAAyD;AACzD,EAAE;AACF,yCAAyC;AACzC,iEAAiE;AACjE,gDAAgD;AAChD,EAAE;AACF,wDAAwD;AACxD,0DAA0D;AAC1D,8BAA8B;AAC9B,EAAE;AACF,qEAAqE;AACrE,wDAAwD;AAKxD,0DAA0D;AAC1D,MAAM,oBAAoB,GAAG;;;;;;;;;;CAU5B,CAAC;AAEF,MAAM,YAAY,GAAc;IAC9B,OAAO,EAAE,CAAC;IACV,EAAE,CAAC,EAAM;QACP,EAAE,CAAC,IAAI,CAAC,oBAAoB,CAAC,CAAC;IAChC,CAAC;CACF,CAAC;AAEF,eAAe,YAAY,CAAC"}
|
|
@@ -12,6 +12,6 @@ export interface Migration {
|
|
|
12
12
|
}
|
|
13
13
|
/** 全量迁移集(按 version 升序:002 时间轴事件、003 时间标签点实体化(G2)、
|
|
14
14
|
* 004 设定分类字段 tags(K2 修订)、005 参考资料 reference、006 对话历史出库、
|
|
15
|
-
* 007 角色能力面板(旧 abilities 标签迁为 ability_panel)) */
|
|
15
|
+
* 007 角色能力面板(旧 abilities 标签迁为 ability_panel)、008 块文档表(document_records)) */
|
|
16
16
|
export declare const MIGRATIONS: readonly Migration[];
|
|
17
17
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/migrations/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/migrations/index.ts"],"names":[],"mappings":"AA2BA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AAS3C,6CAA6C;AAC7C,MAAM,WAAW,gBAAgB;IAChC,0DAA0D;IACzD,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,qDAAqD;AACrD,MAAM,WAAW,SAAS;IACxB,OAAO,EAAE,MAAM,CAAC;IACjB,+CAA+C;IAC9C,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,gBAAgB,KAAK,IAAI,CAAC;CAC7C;AAED;;4EAE4E;AAC5E,eAAO,MAAM,UAAU,EAAE,SAAS,SAAS,EAQ1C,CAAC"}
|
package/dist/migrations/index.js
CHANGED
|
@@ -16,12 +16,13 @@
|
|
|
16
16
|
// - 失败 → 该迁移回滚 + 版本停在前一迁移后,下次 open 重试
|
|
17
17
|
// - 无迁移路径的旧版本(如 v0 且无 0→1 条目)保持删库重建兜底
|
|
18
18
|
//
|
|
19
|
-
// **当前状态**:SCHEMA_VERSION =
|
|
19
|
+
// **当前状态**:SCHEMA_VERSION = 8;真实迁移 002(v1→v2:entities 表 CHECK 扩为 5 种 +
|
|
20
20
|
// sort_order 列,时间轴)、003(v2→v3:entities CHECK 扩 6 种含 timepoint +
|
|
21
21
|
// event.data.time_label 迁移为 timepoint 实体 + occurs_at 挂载关系,G2)、
|
|
22
22
|
// 004(v3→v4:setting 旧 rules 分类值 → data.tags,仅 data JSON)、005(v4→v5:CHECK 扩
|
|
23
23
|
// 'reference')、006(v5→v6:对话历史出库——chat_messages 导出为 sessions/<id>.jsonl 后 DROP 表)、
|
|
24
|
-
// 007(v6→v7:character 旧 abilities[] → ability_panel,仅 data JSON
|
|
24
|
+
// 007(v6→v7:character 旧 abilities[] → ability_panel,仅 data JSON)、
|
|
25
|
+
// 008(v7→v8:新增 document_records 块文档表,纯 DDL)。
|
|
25
26
|
// v0 库无 0→1 迁移条目,仍走删库重建兜底。
|
|
26
27
|
import migration002 from "./002_event_timeline.js";
|
|
27
28
|
import migration003 from "./003_timepoint.js";
|
|
@@ -29,9 +30,10 @@ import migration004 from "./004_setting_tags.js";
|
|
|
29
30
|
import migration005 from "./005_reference.js";
|
|
30
31
|
import migration006 from "./006_sessions_jsonl.js";
|
|
31
32
|
import migration007 from "./007_character_ability_panel.js";
|
|
33
|
+
import migration008 from "./008_document_records.js";
|
|
32
34
|
/** 全量迁移集(按 version 升序:002 时间轴事件、003 时间标签点实体化(G2)、
|
|
33
35
|
* 004 设定分类字段 tags(K2 修订)、005 参考资料 reference、006 对话历史出库、
|
|
34
|
-
* 007 角色能力面板(旧 abilities 标签迁为 ability_panel)) */
|
|
36
|
+
* 007 角色能力面板(旧 abilities 标签迁为 ability_panel)、008 块文档表(document_records)) */
|
|
35
37
|
export const MIGRATIONS = [
|
|
36
38
|
migration002,
|
|
37
39
|
migration003,
|
|
@@ -39,5 +41,6 @@ export const MIGRATIONS = [
|
|
|
39
41
|
migration005,
|
|
40
42
|
migration006,
|
|
41
43
|
migration007,
|
|
44
|
+
migration008,
|
|
42
45
|
];
|
|
43
46
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/migrations/index.ts"],"names":[],"mappings":"AAAA,WAAW;AACX,EAAE;AACF,yEAAyE;AACzE,uEAAuE;AACvE,yDAAyD;AACzD,uCAAuC;AACvC,EAAE;AACF,4EAA4E;AAC5E,8DAA8D;AAC9D,EAAE;AACF,8DAA8D;AAC9D,EAAE;AACF,kDAAkD;AAClD,wDAAwD;AACxD,uDAAuD;AACvD,sCAAsC;AACtC,sCAAsC;AACtC,EAAE;AACF,uEAAuE;AACvE,gEAAgE;AAChE,+DAA+D;AAC/D,2EAA2E;AAC3E,kFAAkF;AAClF,kEAAkE;AAClE,2BAA2B;AAG3B,OAAO,YAAY,MAAM,yBAAyB,CAAC;AACnD,OAAO,YAAY,MAAM,oBAAoB,CAAC;AAC9C,OAAO,YAAY,MAAM,uBAAuB,CAAC;AACjD,OAAO,YAAY,MAAM,oBAAoB,CAAC;AAC9C,OAAO,YAAY,MAAM,yBAAyB,CAAC;AACnD,OAAO,YAAY,MAAM,kCAAkC,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/migrations/index.ts"],"names":[],"mappings":"AAAA,WAAW;AACX,EAAE;AACF,yEAAyE;AACzE,uEAAuE;AACvE,yDAAyD;AACzD,uCAAuC;AACvC,EAAE;AACF,4EAA4E;AAC5E,8DAA8D;AAC9D,EAAE;AACF,8DAA8D;AAC9D,EAAE;AACF,kDAAkD;AAClD,wDAAwD;AACxD,uDAAuD;AACvD,sCAAsC;AACtC,sCAAsC;AACtC,EAAE;AACF,uEAAuE;AACvE,gEAAgE;AAChE,+DAA+D;AAC/D,2EAA2E;AAC3E,kFAAkF;AAClF,kEAAkE;AAClE,6CAA6C;AAC7C,2BAA2B;AAG3B,OAAO,YAAY,MAAM,yBAAyB,CAAC;AACnD,OAAO,YAAY,MAAM,oBAAoB,CAAC;AAC9C,OAAO,YAAY,MAAM,uBAAuB,CAAC;AACjD,OAAO,YAAY,MAAM,oBAAoB,CAAC;AAC9C,OAAO,YAAY,MAAM,yBAAyB,CAAC;AACnD,OAAO,YAAY,MAAM,kCAAkC,CAAC;AAC5D,OAAO,YAAY,MAAM,2BAA2B,CAAC;AAerD;;4EAE4E;AAC5E,MAAM,CAAC,MAAM,UAAU,GAAyB;IAC9C,YAAY;IACZ,YAAY;IACZ,YAAY;IACZ,YAAY;IACZ,YAAY;IACZ,YAAY;IACZ,YAAY;CACb,CAAC"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import type { Db } from "../connection.js";
|
|
2
|
+
/** owner 类型:章节点(`ch-*`)/ 参考资料实体(`ref-*`)——枚举值少且稳定,DDL 不加 CHECK */
|
|
3
|
+
export type DocumentOwnerKind = "chapter" | "reference";
|
|
4
|
+
/** document_records 行(列名与 DDL 同形;无 JSON 列,故无防御解析必要) */
|
|
5
|
+
export interface DocumentRow {
|
|
6
|
+
owner_kind: DocumentOwnerKind;
|
|
7
|
+
owner_id: string;
|
|
8
|
+
content: string;
|
|
9
|
+
content_text: string;
|
|
10
|
+
created_at: string;
|
|
11
|
+
updated_at: string;
|
|
12
|
+
}
|
|
13
|
+
/** upsert 入参:content 为块数组 JSON 字符串、contentText 为服务端已派生好的投影、now 为本次写入时间 */
|
|
14
|
+
export interface UpsertDocumentInput {
|
|
15
|
+
ownerKind: DocumentOwnerKind;
|
|
16
|
+
ownerId: string;
|
|
17
|
+
content: string;
|
|
18
|
+
contentText: string;
|
|
19
|
+
now: string;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* 取某 owner 的块文档(章正文 / 参考资料正文)。
|
|
23
|
+
* @returns 行对象;从未写过返回 null(端点侧按空文档语义处理)
|
|
24
|
+
*/
|
|
25
|
+
export declare function getDocument(db: Db, ownerKind: DocumentOwnerKind, ownerId: string): DocumentRow | null;
|
|
26
|
+
/**
|
|
27
|
+
* 写入块文档(首写插入 / 已有则整篇覆盖,按复合主键 `(owner_kind, owner_id)` upsert)。
|
|
28
|
+
*
|
|
29
|
+
* - 单条 `INSERT ... ON CONFLICT DO UPDATE`:无需读后写,天然原子(无并发插入竞态)
|
|
30
|
+
* - `created_at` 只在首次写入时落下,覆盖写不动它(保持「首次创建时间」语义)
|
|
31
|
+
* - `updated_at` = `input.now`,每次写入推进(版本戳,供 `base_updated_at` 比对拦覆盖)
|
|
32
|
+
* - `content_text` 由调用方派生后传入——**派生失败也要保存**(调用方可退化为空串/尽力抽取)
|
|
33
|
+
*
|
|
34
|
+
* @returns 写入后的版本戳(= input.now)
|
|
35
|
+
*/
|
|
36
|
+
export declare function upsertDocument(db: Db, input: UpsertDocumentInput): {
|
|
37
|
+
updatedAt: string;
|
|
38
|
+
};
|
|
39
|
+
/**
|
|
40
|
+
* 删某 owner 的块文档行(purge 级联:owner 被物理删时一并清行)。
|
|
41
|
+
* @returns 实际删除行数(一 owner 至多 1 行;无行返回 0,幂等)
|
|
42
|
+
*/
|
|
43
|
+
export declare function deleteDocumentsByOwner(db: Db, ownerKind: DocumentOwnerKind, ownerId: string): number;
|
|
44
|
+
/**
|
|
45
|
+
* 批量取多个 owner 的 `content_text` 投影(列表摘要来源:实体列表的 reference 摘要、章 textLength)。
|
|
46
|
+
*
|
|
47
|
+
* - **一次查询**(IN 集合)——调用方勿逐 owner 调 `getDocument` 造成 N+1
|
|
48
|
+
* - **只取投影列**,不读 `content` 块 JSON 全文(列表/搜索不得把块体拉进内存)
|
|
49
|
+
* - 无行的 owner 不出现在 Map(调用方按「无正文」处理)
|
|
50
|
+
*/
|
|
51
|
+
export declare function getDocumentTexts(db: Db, ownerKind: DocumentOwnerKind, ownerIds: readonly string[]): Map<string, string>;
|
|
52
|
+
/**
|
|
53
|
+
* 批量取多个 owner 的 `content_text` 长度(供 `GET /outline?with_metadata=true` 的章 `metadata.textLength`)。
|
|
54
|
+
* 长度口径 = JS 字符串长度,与章正文端点 `charCount` 同源;同 `getDocumentTexts` 一次查询取投影。
|
|
55
|
+
*/
|
|
56
|
+
export declare function getDocumentTextLengths(db: Db, ownerKind: DocumentOwnerKind, ownerIds: readonly string[]): Map<string, number>;
|
|
57
|
+
//# sourceMappingURL=document.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"document.d.ts","sourceRoot":"","sources":["../../src/queries/document.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,kBAAkB,CAAC;AAI3C,kEAAkE;AAClE,MAAM,MAAM,iBAAiB,GAAG,SAAS,GAAG,WAAW,CAAC;AAExD,uDAAuD;AACvD,MAAM,WAAW,WAAW;IAC1B,UAAU,EAAE,iBAAiB,CAAC;IAC9B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,0EAA0E;AAC1E,MAAM,WAAW,mBAAmB;IAClC,SAAS,EAAE,iBAAiB,CAAC;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,GAAG,EAAE,MAAM,CAAC;CACb;AAcD;;;GAGG;AACH,wBAAgB,WAAW,CAAC,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,iBAAiB,EAAE,OAAO,EAAE,MAAM,GAAG,WAAW,GAAG,IAAI,CAOrG;AAED;;;;;;;;;GASG;AACH,wBAAgB,cAAc,CAAC,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,mBAAmB,GAAG;IAAE,SAAS,EAAE,MAAM,CAAA;CAAE,CAiBxF;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,iBAAiB,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAKpG;AAED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC9B,EAAE,EAAE,EAAE,EACN,SAAS,EAAE,iBAAiB,EAC5B,QAAQ,EAAE,SAAS,MAAM,EAAE,GAC1B,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAQrB;AAED;;;GAGG;AACH,wBAAgB,sBAAsB,CACpC,EAAE,EAAE,EAAE,EACN,SAAS,EAAE,iBAAiB,EAC5B,QAAQ,EAAE,SAAS,MAAM,EAAE,GAC1B,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAErB"}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
// @whispering233/ai-editor-db 块文档读写(章正文 / 参考资料正文,卡 12.2)
|
|
2
|
+
//
|
|
3
|
+
// 真相 = document_records.content(块数组 JSON 字符串,服务端读路径不解析);content_text 是
|
|
4
|
+
// **服务端派生的纯文本投影**(派生逻辑归调用方——本包不解析块结构,见 AGENTS「服务端不解析块结构」),
|
|
5
|
+
// 本模块只负责原样存取。
|
|
6
|
+
// **库写入唯一入口 = 本模块**(禁止绕过直接写表)。
|
|
7
|
+
// 时间约定:ISO 8601 应用层写入(`now` 由调用方传入,模块内不生成时间)。
|
|
8
|
+
// 生命周期:无 deleted_at——owner 软删时调用方不读(端点 404)、purge 时调用方删行,
|
|
9
|
+
// 故本模块只提供按 owner 删行的入口(deleteDocumentsByOwner)。
|
|
10
|
+
import { and, eq, inArray } from "drizzle-orm";
|
|
11
|
+
import { queryDb } from "../query-db.js";
|
|
12
|
+
import { documentRecords } from "../tables.js";
|
|
13
|
+
/** 行 → DocumentRow(列名直映射;表无 JSON 列,无需坏行防御) */
|
|
14
|
+
function rowToDocumentRow(row) {
|
|
15
|
+
return {
|
|
16
|
+
owner_kind: row.owner_kind,
|
|
17
|
+
owner_id: row.owner_id,
|
|
18
|
+
content: row.content,
|
|
19
|
+
content_text: row.content_text,
|
|
20
|
+
created_at: row.created_at,
|
|
21
|
+
updated_at: row.updated_at,
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* 取某 owner 的块文档(章正文 / 参考资料正文)。
|
|
26
|
+
* @returns 行对象;从未写过返回 null(端点侧按空文档语义处理)
|
|
27
|
+
*/
|
|
28
|
+
export function getDocument(db, ownerKind, ownerId) {
|
|
29
|
+
const row = queryDb(db)
|
|
30
|
+
.select()
|
|
31
|
+
.from(documentRecords)
|
|
32
|
+
.where(and(eq(documentRecords.owner_kind, ownerKind), eq(documentRecords.owner_id, ownerId)))
|
|
33
|
+
.get();
|
|
34
|
+
return row === undefined ? null : rowToDocumentRow(row);
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* 写入块文档(首写插入 / 已有则整篇覆盖,按复合主键 `(owner_kind, owner_id)` upsert)。
|
|
38
|
+
*
|
|
39
|
+
* - 单条 `INSERT ... ON CONFLICT DO UPDATE`:无需读后写,天然原子(无并发插入竞态)
|
|
40
|
+
* - `created_at` 只在首次写入时落下,覆盖写不动它(保持「首次创建时间」语义)
|
|
41
|
+
* - `updated_at` = `input.now`,每次写入推进(版本戳,供 `base_updated_at` 比对拦覆盖)
|
|
42
|
+
* - `content_text` 由调用方派生后传入——**派生失败也要保存**(调用方可退化为空串/尽力抽取)
|
|
43
|
+
*
|
|
44
|
+
* @returns 写入后的版本戳(= input.now)
|
|
45
|
+
*/
|
|
46
|
+
export function upsertDocument(db, input) {
|
|
47
|
+
queryDb(db)
|
|
48
|
+
.insert(documentRecords)
|
|
49
|
+
.values({
|
|
50
|
+
owner_kind: input.ownerKind,
|
|
51
|
+
owner_id: input.ownerId,
|
|
52
|
+
content: input.content,
|
|
53
|
+
content_text: input.contentText,
|
|
54
|
+
created_at: input.now,
|
|
55
|
+
updated_at: input.now,
|
|
56
|
+
})
|
|
57
|
+
.onConflictDoUpdate({
|
|
58
|
+
target: [documentRecords.owner_kind, documentRecords.owner_id],
|
|
59
|
+
set: { content: input.content, content_text: input.contentText, updated_at: input.now },
|
|
60
|
+
})
|
|
61
|
+
.run();
|
|
62
|
+
return { updatedAt: input.now };
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* 删某 owner 的块文档行(purge 级联:owner 被物理删时一并清行)。
|
|
66
|
+
* @returns 实际删除行数(一 owner 至多 1 行;无行返回 0,幂等)
|
|
67
|
+
*/
|
|
68
|
+
export function deleteDocumentsByOwner(db, ownerKind, ownerId) {
|
|
69
|
+
return queryDb(db)
|
|
70
|
+
.delete(documentRecords)
|
|
71
|
+
.where(and(eq(documentRecords.owner_kind, ownerKind), eq(documentRecords.owner_id, ownerId)))
|
|
72
|
+
.run().changes;
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* 批量取多个 owner 的 `content_text` 投影(列表摘要来源:实体列表的 reference 摘要、章 textLength)。
|
|
76
|
+
*
|
|
77
|
+
* - **一次查询**(IN 集合)——调用方勿逐 owner 调 `getDocument` 造成 N+1
|
|
78
|
+
* - **只取投影列**,不读 `content` 块 JSON 全文(列表/搜索不得把块体拉进内存)
|
|
79
|
+
* - 无行的 owner 不出现在 Map(调用方按「无正文」处理)
|
|
80
|
+
*/
|
|
81
|
+
export function getDocumentTexts(db, ownerKind, ownerIds) {
|
|
82
|
+
if (ownerIds.length === 0)
|
|
83
|
+
return new Map();
|
|
84
|
+
const rows = queryDb(db)
|
|
85
|
+
.select({ ownerId: documentRecords.owner_id, contentText: documentRecords.content_text })
|
|
86
|
+
.from(documentRecords)
|
|
87
|
+
.where(and(eq(documentRecords.owner_kind, ownerKind), inArray(documentRecords.owner_id, [...ownerIds])))
|
|
88
|
+
.all();
|
|
89
|
+
return new Map(rows.map((row) => [row.ownerId, row.contentText]));
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* 批量取多个 owner 的 `content_text` 长度(供 `GET /outline?with_metadata=true` 的章 `metadata.textLength`)。
|
|
93
|
+
* 长度口径 = JS 字符串长度,与章正文端点 `charCount` 同源;同 `getDocumentTexts` 一次查询取投影。
|
|
94
|
+
*/
|
|
95
|
+
export function getDocumentTextLengths(db, ownerKind, ownerIds) {
|
|
96
|
+
return new Map([...getDocumentTexts(db, ownerKind, ownerIds)].map(([ownerId, text]) => [ownerId, text.length]));
|
|
97
|
+
}
|
|
98
|
+
//# sourceMappingURL=document.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"document.js","sourceRoot":"","sources":["../../src/queries/document.ts"],"names":[],"mappings":"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"}
|
package/dist/queries/entity.d.ts
CHANGED
|
@@ -16,7 +16,7 @@ export interface EntityListQuery {
|
|
|
16
16
|
};
|
|
17
17
|
/** 分页偏移,默认 0 */
|
|
18
18
|
offset?: number;
|
|
19
|
-
/** 每页条数,默认 50
|
|
19
|
+
/** 每页条数,默认 50,上限 `MAX_ENTITY_LIST_LIMIT`(超限 clamp,防恶意大页) */
|
|
20
20
|
limit?: number;
|
|
21
21
|
sort?: "name" | "created_at" | "updated_at";
|
|
22
22
|
order?: "asc" | "desc";
|
|
@@ -38,7 +38,7 @@ export declare function rowToEntityRow(row: Record<string, unknown>): EntityRow;
|
|
|
38
38
|
/**
|
|
39
39
|
* 实体列表(GET /api/v1/entity/:type):
|
|
40
40
|
* type 过滤 + q 模糊搜索(name LIKE)+ 排序(name/created_at/updated_at × asc/desc,
|
|
41
|
-
* 白名单防注入)+ 分页(limit clamp 1
|
|
41
|
+
* 白名单防注入)+ 分页(limit clamp 1..`MAX_ENTITY_LIST_LIMIT`)+ **默认过滤软删**。
|
|
42
42
|
* total 为过滤后总数(不含分页)。
|
|
43
43
|
* filters 语义(S6.3 下沉):data 字段 JS 过滤(列表摘要不含 data),此时 SQL 只做
|
|
44
44
|
* type/q/软删过滤,filters + 分页在 JS 层(MVP 数据量小,全行查询可接受);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entity.d.ts","sourceRoot":"","sources":["../../src/queries/entity.ts"],"names":[],"mappings":"AA6BA,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAIzG,OAAO,EAAmB,KAAK,EAAE,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"entity.d.ts","sourceRoot":"","sources":["../../src/queries/entity.ts"],"names":[],"mappings":"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"}
|
package/dist/queries/entity.js
CHANGED
|
@@ -26,17 +26,20 @@
|
|
|
26
26
|
// - data 等 JSON 列保持 text 模式:drizzle 行读出 string,写入 JSON.stringify,
|
|
27
27
|
// parseDataColumn 防御解析不动(坏行返回 {},.2 验证)
|
|
28
28
|
// 事务沿用 withTransaction(native db.transaction),连接级共享已验证(15.2 验证记录①)。
|
|
29
|
-
import { ENTITY_TYPES, generateEntityId, panelTopLevelNames } from "@whispering233/ai-editor-shared";
|
|
29
|
+
import { ENTITY_TYPES, MAX_ENTITY_LIST_LIMIT, generateEntityId, panelTopLevelNames } from "@whispering233/ai-editor-shared";
|
|
30
30
|
import { and, asc, count, desc, eq, inArray, isNull, like, or, sql } from "drizzle-orm";
|
|
31
31
|
import { nowIso } from "../storage/atomic.js";
|
|
32
32
|
import { withTransaction } from "../connection.js";
|
|
33
33
|
import { deltaRecords, entities, relationRecords } from "../tables.js";
|
|
34
34
|
import { queryDb } from "../query-db.js";
|
|
35
|
+
// reference 列表摘要的 content 投影来源(一次批量查询,见 listEntities)
|
|
36
|
+
import { getDocumentTexts } from "./document.js";
|
|
35
37
|
// relation.ts ↔ entity.ts 循环引用(relation.ts import getEntity):仅函数调用期使用
|
|
36
38
|
// RelationError/rowToRelationRow,无模块顶层求值依赖,ESM 运行时安全。
|
|
37
39
|
import { createRelation, deleteRelation, listSettingHierarchyEdges, RelationError, rowToRelationRow, wouldCreateSettingCycle, } from "./relation.js";
|
|
38
|
-
/** 行 → 摘要:data 已解析,按类型提取关键字段(字段缺失即不出现——Record
|
|
39
|
-
|
|
40
|
+
/** 行 → 摘要:data 已解析,按类型提取关键字段(字段缺失即不出现——Record 稀疏语义)。
|
|
41
|
+
* `contentText` = 文档表 `content_text` 投影(**仅 reference 传入**,列表摘要用;见 listEntities)。 */
|
|
42
|
+
function toSummary(row, contentText) {
|
|
40
43
|
const data = row.data;
|
|
41
44
|
const summary = {};
|
|
42
45
|
switch (row.type) {
|
|
@@ -92,26 +95,16 @@ function toSummary(row) {
|
|
|
92
95
|
if (data.tags !== undefined)
|
|
93
96
|
summary.tags = data.tags;
|
|
94
97
|
break;
|
|
95
|
-
// reference
|
|
96
|
-
//
|
|
97
|
-
//
|
|
98
|
-
// search_entities 工具上下文膨胀),完整 content 在详情页(get_entity 全量 data)
|
|
98
|
+
// reference(参考资料,2026-10):data 只留短字段(type/url/tags);
|
|
99
|
+
// content 摘要截断 120 字 = **文档表的 content_text 投影**(非 data.content、非块 JSON 原文——
|
|
100
|
+
// 列表/搜索不得把块体拉入内存与响应),完整正文在详情(GET /:type/:id 由 server 层装回)
|
|
99
101
|
case "reference":
|
|
100
102
|
if (data.type !== undefined)
|
|
101
103
|
summary.type = data.type;
|
|
102
|
-
if (data.
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
else {
|
|
107
|
-
if (typeof data.url === "string" && data.url !== "")
|
|
108
|
-
summary.url = data.url;
|
|
109
|
-
else if (typeof data.source === "string" && data.source !== "")
|
|
110
|
-
summary.source = data.source; // 存量兼容
|
|
111
|
-
}
|
|
112
|
-
if (typeof data.content === "string" && data.content !== "") {
|
|
113
|
-
summary.content = data.content.slice(0, 120);
|
|
114
|
-
}
|
|
104
|
+
if (typeof data.url === "string" && data.url !== "")
|
|
105
|
+
summary.url = data.url;
|
|
106
|
+
if (contentText !== undefined && contentText !== "")
|
|
107
|
+
summary.content = contentText.slice(0, 120);
|
|
115
108
|
if (Array.isArray(data.tags)) {
|
|
116
109
|
summary.tags = data.tags.filter((t) => typeof t === "string" && t !== "").slice(0, 3);
|
|
117
110
|
}
|
|
@@ -208,7 +201,7 @@ function collectSettingDescendants(db, rootId) {
|
|
|
208
201
|
/**
|
|
209
202
|
* 实体列表(GET /api/v1/entity/:type):
|
|
210
203
|
* type 过滤 + q 模糊搜索(name LIKE)+ 排序(name/created_at/updated_at × asc/desc,
|
|
211
|
-
* 白名单防注入)+ 分页(limit clamp 1
|
|
204
|
+
* 白名单防注入)+ 分页(limit clamp 1..`MAX_ENTITY_LIST_LIMIT`)+ **默认过滤软删**。
|
|
212
205
|
* total 为过滤后总数(不含分页)。
|
|
213
206
|
* filters 语义(S6.3 下沉):data 字段 JS 过滤(列表摘要不含 data),此时 SQL 只做
|
|
214
207
|
* type/q/软删过滤,filters + 分页在 JS 层(MVP 数据量小,全行查询可接受);
|
|
@@ -220,6 +213,15 @@ function collectSettingDescendants(db, rootId) {
|
|
|
220
213
|
* event/timepoint 固定 sql 模板排序 NULL 沉底)。
|
|
221
214
|
*/
|
|
222
215
|
export function listEntities(db, query) {
|
|
216
|
+
/**
|
|
217
|
+
* 页面行 → 摘要:reference 的 content 摘要来自文档表 `content_text` 投影——按页面 id **一次 IN 查询**
|
|
218
|
+
* (勿逐行 getDocument 造成 N+1);其余类型摘要全来自 data,不需补查。截断 120 字在 toSummary 内。
|
|
219
|
+
*/
|
|
220
|
+
const summarize = (pageRows) => {
|
|
221
|
+
const items = pageRows.map(rowToEntityRow);
|
|
222
|
+
const texts = query.type === "reference" ? getDocumentTexts(db, "reference", items.map((r) => r.id)) : null;
|
|
223
|
+
return items.map((item) => toSummary(item, texts?.get(item.id)));
|
|
224
|
+
};
|
|
223
225
|
const q = queryDb(db);
|
|
224
226
|
const conds = [isNull(entities.deleted_at)];
|
|
225
227
|
if (query.type !== undefined) {
|
|
@@ -241,7 +243,7 @@ export function listEntities(db, query) {
|
|
|
241
243
|
? [sql `${entities.sort_order} IS NULL`, asc(entities.sort_order), asc(entities.id)]
|
|
242
244
|
: [orderAsc ? asc(sortCol) : desc(sortCol), asc(entities.id)];
|
|
243
245
|
const offset = Math.max(0, Math.trunc(query.offset ?? 0));
|
|
244
|
-
const limit = Math.min(
|
|
246
|
+
const limit = Math.min(MAX_ENTITY_LIST_LIMIT, Math.max(1, Math.trunc(query.limit ?? 50)));
|
|
245
247
|
// JS 过滤路径:filters(S6.3 工具下沉)或 parentId(上级设定筛选)存在时,
|
|
246
248
|
// SQL 取全量候选行(type/q/软删),JS 层执行 data/层级过滤 + 分页(MVP 数据量小,全行查询可接受);
|
|
247
249
|
// 两者皆无时保持 COUNT + LIMIT SQL 原路径(行为不变)。
|
|
@@ -257,7 +259,7 @@ export function listEntities(db, query) {
|
|
|
257
259
|
return true;
|
|
258
260
|
});
|
|
259
261
|
return {
|
|
260
|
-
items: filtered.slice(offset, offset + limit)
|
|
262
|
+
items: summarize(filtered.slice(offset, offset + limit)),
|
|
261
263
|
total: filtered.length,
|
|
262
264
|
};
|
|
263
265
|
}
|
|
@@ -270,7 +272,7 @@ export function listEntities(db, query) {
|
|
|
270
272
|
.limit(limit)
|
|
271
273
|
.offset(offset)
|
|
272
274
|
.all();
|
|
273
|
-
return { items: rows
|
|
275
|
+
return { items: summarize(rows), total };
|
|
274
276
|
}
|
|
275
277
|
/** 按 id 取实体详情(GET /api/v1/entity/:type/:id);不存在或已软删返回 null */
|
|
276
278
|
export function getEntity(db, id) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entity.js","sourceRoot":"","sources":["../../src/queries/entity.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"entity.js","sourceRoot":"","sources":["../../src/queries/entity.ts"],"names":[],"mappings":"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"}
|
package/dist/schema.d.ts
CHANGED
|
@@ -8,12 +8,16 @@ import type Database from "better-sqlite3";
|
|
|
8
8
|
* timepoint 实体 + occurs_at 挂载关系(从 event.data 移除 time_label)。
|
|
9
9
|
* v3 → v4(K2 修订,2026-08):**无 DDL**——仅 entities.data JSON 数据迁移
|
|
10
10
|
* (setting 的旧 rules 分类值复制到 data.tags 并移除 rules,migrations/004_setting_tags.ts)。
|
|
11
|
+
* v4 → v5(参考资料实体):entities 表 type CHECK 扩为 7 种(含 reference)
|
|
12
|
+
* (migrations/005_reference.ts,建新表拷数据四步换表)。
|
|
11
13
|
* v5 → v6(对话历史出库):chat_messages 导出为 `sessions/<id>.jsonl` 后 DROP 表
|
|
12
14
|
* (migrations/006_sessions_jsonl.ts;会话从此不入库)。
|
|
13
15
|
* v6 → v7(角色能力面板,2026-09):**无 DDL**——character 旧 `abilities[]` 标签
|
|
14
16
|
* 迁为 `ability_panel` 顶层分组「能力」下的叶子(migrations/007_character_ability_panel.ts)。
|
|
17
|
+
* v7 → v8(块文档,2026-10):新增 `document_records` 表(章正文 / 参考资料正文,
|
|
18
|
+
* 纯 DDL 无数据搬移,migrations/008_document_records.ts)。
|
|
15
19
|
*/
|
|
16
|
-
export declare const SCHEMA_VERSION =
|
|
20
|
+
export declare const SCHEMA_VERSION = 8;
|
|
17
21
|
/**
|
|
18
22
|
* 建表:执行全部 DDL(CREATE TABLE/INDEX IF NOT EXISTS,定义于 tables.ts),幂等,可重复调用。
|
|
19
23
|
* 打开数据库后由 connection.openDatabase 自动调用。
|
package/dist/schema.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAG3C
|
|
1
|
+
{"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAG3C;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,cAAc,IAAI,CAAC;AAEhC;;;GAGG;AACH,wBAAgB,YAAY,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,GAAG,IAAI,CAExD;AAED,2DAA2D;AAC3D,wBAAgB,cAAc,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,GAAG,MAAM,CAE5D;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAK3E"}
|
package/dist/schema.js
CHANGED
|
@@ -13,12 +13,16 @@ import { CREATE_TABLES_SQL } from "./tables.js";
|
|
|
13
13
|
* timepoint 实体 + occurs_at 挂载关系(从 event.data 移除 time_label)。
|
|
14
14
|
* v3 → v4(K2 修订,2026-08):**无 DDL**——仅 entities.data JSON 数据迁移
|
|
15
15
|
* (setting 的旧 rules 分类值复制到 data.tags 并移除 rules,migrations/004_setting_tags.ts)。
|
|
16
|
+
* v4 → v5(参考资料实体):entities 表 type CHECK 扩为 7 种(含 reference)
|
|
17
|
+
* (migrations/005_reference.ts,建新表拷数据四步换表)。
|
|
16
18
|
* v5 → v6(对话历史出库):chat_messages 导出为 `sessions/<id>.jsonl` 后 DROP 表
|
|
17
19
|
* (migrations/006_sessions_jsonl.ts;会话从此不入库)。
|
|
18
20
|
* v6 → v7(角色能力面板,2026-09):**无 DDL**——character 旧 `abilities[]` 标签
|
|
19
21
|
* 迁为 `ability_panel` 顶层分组「能力」下的叶子(migrations/007_character_ability_panel.ts)。
|
|
22
|
+
* v7 → v8(块文档,2026-10):新增 `document_records` 表(章正文 / 参考资料正文,
|
|
23
|
+
* 纯 DDL 无数据搬移,migrations/008_document_records.ts)。
|
|
20
24
|
*/
|
|
21
|
-
export const SCHEMA_VERSION =
|
|
25
|
+
export const SCHEMA_VERSION = 8; // +块文档表 document_records(008_document_records.ts 纯 DDL)
|
|
22
26
|
/**
|
|
23
27
|
* 建表:执行全部 DDL(CREATE TABLE/INDEX IF NOT EXISTS,定义于 tables.ts),幂等,可重复调用。
|
|
24
28
|
* 打开数据库后由 connection.openDatabase 自动调用。
|
package/dist/schema.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"AAAA,qDAAqD;AACrD,EAAE;AACF,kDAAkD;AAClD,oCAAoC;AACpC,kFAAkF;AAGlF,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAEhD
|
|
1
|
+
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../src/schema.ts"],"names":[],"mappings":"AAAA,qDAAqD;AACrD,EAAE;AACF,kDAAkD;AAClD,oCAAoC;AACpC,kFAAkF;AAGlF,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAEhD;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,CAAC,CAAC,wDAAwD;AAEzF;;;GAGG;AACH,MAAM,UAAU,YAAY,CAAC,EAAqB;IAChD,EAAE,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;AAC7B,CAAC;AAED,2DAA2D;AAC3D,MAAM,UAAU,cAAc,CAAC,EAAqB;IAClD,OAAO,EAAE,CAAC,MAAM,CAAC,cAAc,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAW,CAAC;AAC/D,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,cAAc,CAAC,EAAqB,EAAE,OAAe;IACnE,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC;QAC/B,MAAM,IAAI,KAAK,CAAC,oCAAoC,MAAM,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACzE,CAAC;IACD,EAAE,CAAC,MAAM,CAAC,kBAAkB,OAAO,EAAE,CAAC,CAAC;AACzC,CAAC"}
|
package/dist/tables.d.ts
CHANGED
|
@@ -552,8 +552,134 @@ export declare const deltaRecords: import("drizzle-orm/sqlite-core").SQLiteTable
|
|
|
552
552
|
}>;
|
|
553
553
|
/** chat_messages:已删除(迁移 006:对话历史出库为 `sessions/*.jsonl`,表已 DROP) */
|
|
554
554
|
/**
|
|
555
|
-
*
|
|
555
|
+
* document_records:块文档表(章正文 / 参考资料正文,2026-10)——块数组 JSON 为真相 +
|
|
556
|
+
* 服务端派生的纯文本投影;owner 无外键(章在 outline.json、参考资料在 entities,存在性由写入侧守卫),
|
|
557
|
+
* 无 deleted_at(生命周期跟随 owner:软删即不可见、purge 时调用方删行)。
|
|
558
|
+
*/
|
|
559
|
+
export declare const documentRecords: import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{
|
|
560
|
+
name: "document_records";
|
|
561
|
+
schema: undefined;
|
|
562
|
+
columns: {
|
|
563
|
+
owner_kind: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
564
|
+
name: "owner_kind";
|
|
565
|
+
tableName: "document_records";
|
|
566
|
+
dataType: "string";
|
|
567
|
+
columnType: "SQLiteText";
|
|
568
|
+
data: string;
|
|
569
|
+
driverParam: string;
|
|
570
|
+
notNull: true;
|
|
571
|
+
hasDefault: false;
|
|
572
|
+
isPrimaryKey: false;
|
|
573
|
+
isAutoincrement: false;
|
|
574
|
+
hasRuntimeDefault: false;
|
|
575
|
+
enumValues: [string, ...string[]];
|
|
576
|
+
baseColumn: never;
|
|
577
|
+
identity: undefined;
|
|
578
|
+
generated: undefined;
|
|
579
|
+
}, {}, {
|
|
580
|
+
length: number | undefined;
|
|
581
|
+
}>;
|
|
582
|
+
owner_id: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
583
|
+
name: "owner_id";
|
|
584
|
+
tableName: "document_records";
|
|
585
|
+
dataType: "string";
|
|
586
|
+
columnType: "SQLiteText";
|
|
587
|
+
data: string;
|
|
588
|
+
driverParam: string;
|
|
589
|
+
notNull: true;
|
|
590
|
+
hasDefault: false;
|
|
591
|
+
isPrimaryKey: false;
|
|
592
|
+
isAutoincrement: false;
|
|
593
|
+
hasRuntimeDefault: false;
|
|
594
|
+
enumValues: [string, ...string[]];
|
|
595
|
+
baseColumn: never;
|
|
596
|
+
identity: undefined;
|
|
597
|
+
generated: undefined;
|
|
598
|
+
}, {}, {
|
|
599
|
+
length: number | undefined;
|
|
600
|
+
}>;
|
|
601
|
+
content: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
602
|
+
name: "content";
|
|
603
|
+
tableName: "document_records";
|
|
604
|
+
dataType: "string";
|
|
605
|
+
columnType: "SQLiteText";
|
|
606
|
+
data: string;
|
|
607
|
+
driverParam: string;
|
|
608
|
+
notNull: true;
|
|
609
|
+
hasDefault: false;
|
|
610
|
+
isPrimaryKey: false;
|
|
611
|
+
isAutoincrement: false;
|
|
612
|
+
hasRuntimeDefault: false;
|
|
613
|
+
enumValues: [string, ...string[]];
|
|
614
|
+
baseColumn: never;
|
|
615
|
+
identity: undefined;
|
|
616
|
+
generated: undefined;
|
|
617
|
+
}, {}, {
|
|
618
|
+
length: number | undefined;
|
|
619
|
+
}>;
|
|
620
|
+
content_text: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
621
|
+
name: "content_text";
|
|
622
|
+
tableName: "document_records";
|
|
623
|
+
dataType: "string";
|
|
624
|
+
columnType: "SQLiteText";
|
|
625
|
+
data: string;
|
|
626
|
+
driverParam: string;
|
|
627
|
+
notNull: true;
|
|
628
|
+
hasDefault: false;
|
|
629
|
+
isPrimaryKey: false;
|
|
630
|
+
isAutoincrement: false;
|
|
631
|
+
hasRuntimeDefault: false;
|
|
632
|
+
enumValues: [string, ...string[]];
|
|
633
|
+
baseColumn: never;
|
|
634
|
+
identity: undefined;
|
|
635
|
+
generated: undefined;
|
|
636
|
+
}, {}, {
|
|
637
|
+
length: number | undefined;
|
|
638
|
+
}>;
|
|
639
|
+
created_at: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
640
|
+
name: "created_at";
|
|
641
|
+
tableName: "document_records";
|
|
642
|
+
dataType: "string";
|
|
643
|
+
columnType: "SQLiteText";
|
|
644
|
+
data: string;
|
|
645
|
+
driverParam: string;
|
|
646
|
+
notNull: true;
|
|
647
|
+
hasDefault: false;
|
|
648
|
+
isPrimaryKey: false;
|
|
649
|
+
isAutoincrement: false;
|
|
650
|
+
hasRuntimeDefault: false;
|
|
651
|
+
enumValues: [string, ...string[]];
|
|
652
|
+
baseColumn: never;
|
|
653
|
+
identity: undefined;
|
|
654
|
+
generated: undefined;
|
|
655
|
+
}, {}, {
|
|
656
|
+
length: number | undefined;
|
|
657
|
+
}>;
|
|
658
|
+
updated_at: import("drizzle-orm/sqlite-core").SQLiteColumn<{
|
|
659
|
+
name: "updated_at";
|
|
660
|
+
tableName: "document_records";
|
|
661
|
+
dataType: "string";
|
|
662
|
+
columnType: "SQLiteText";
|
|
663
|
+
data: string;
|
|
664
|
+
driverParam: string;
|
|
665
|
+
notNull: true;
|
|
666
|
+
hasDefault: false;
|
|
667
|
+
isPrimaryKey: false;
|
|
668
|
+
isAutoincrement: false;
|
|
669
|
+
hasRuntimeDefault: false;
|
|
670
|
+
enumValues: [string, ...string[]];
|
|
671
|
+
baseColumn: never;
|
|
672
|
+
identity: undefined;
|
|
673
|
+
generated: undefined;
|
|
674
|
+
}, {}, {
|
|
675
|
+
length: number | undefined;
|
|
676
|
+
}>;
|
|
677
|
+
};
|
|
678
|
+
dialect: "sqlite";
|
|
679
|
+
}>;
|
|
680
|
+
/**
|
|
681
|
+
* 四张业务表 + 索引的建表 SQL(幂等:CREATE TABLE/INDEX IF NOT EXISTS)——建表执行的事实来源。
|
|
556
682
|
* 与上方 sqliteTable 定义必须同步(schema.test.ts 对齐断言覆盖)。
|
|
557
683
|
*/
|
|
558
|
-
export declare const CREATE_TABLES_SQL = "\n-- entities\uFF1A\u5B9E\u4F53\u8868\uFF08\u4EBA\u7269/\u8BBE\u5B9A/\u5730\u70B9/\u4F0F\u7B14/\u65F6\u95F4\u8F74\u4E8B\u4EF6/\u65F6\u95F4\u6807\u7B7E\u70B9\uFF09\nCREATE TABLE IF NOT EXISTS entities (\n id TEXT PRIMARY KEY,\n type TEXT NOT NULL CHECK(type IN ('character', 'setting', 'location', 'hook', 'event', 'timepoint', 'reference')),\n name TEXT NOT NULL,\n data TEXT NOT NULL DEFAULT '{}', -- JSON: \u5404\u7C7B\u578B\u7684\u4E13\u5C5E\u5B57\u6BB5\n sort_order INTEGER, -- \u65F6\u95F4\u8F74\u7EBF\u6027\u5E8F\uFF08G2 \u4FEE\u8BA2\uFF09\uFF1Aevent \u4E0E timepoint \u5404\u7C7B\u578B\u5185\u7EBF\u6027\uFF08\u5404\u81EA 0..n-1\uFF09\uFF0C\u5176\u4F59\u7C7B\u578B\u6052\u4E3A NULL\n created_at TEXT NOT NULL, -- ISO 8601\uFF0C\u5E94\u7528\u5C42\u5199\u5165\n updated_at TEXT NOT NULL, -- ISO 8601\uFF0C\u5E94\u7528\u5C42\u5199\u5165\uFF08\u63D0\u6848\u5FEB\u7167\u6BD4\u5BF9\uFF09\n deleted_at TEXT -- \u8F6F\u5220\u6807\u8BB0\uFF0CNULL \u8868\u793A\u672A\u5220\u9664\uFF1B\u975E NULL \u65F6\u8BE5\u5B9E\u4F53\u8FDB\u5165\u56DE\u6536\u7AD9\uFF0C\u672C\u4F53\u4FDD\u7559\u53EF\u8FD8\u539F\n);\n\n-- relation_records\uFF1A\u901A\u7528\u5173\u7CFB\u8868\nCREATE TABLE IF NOT EXISTS relation_records (\n id TEXT PRIMARY KEY,\n source_type TEXT NOT NULL, -- \u7AEF\u70B9\u7C7B\u578B\uFF1A\u5B9E\u4F53 'character'|'setting'|'location'|'hook'|'event'\uFF0C\u5927\u7EB2\u8282\u70B9 'outline_node'\n source_id TEXT NOT NULL,\n target_type TEXT NOT NULL,\n target_id TEXT NOT NULL,\n relation_type TEXT NOT NULL,\n metadata TEXT, -- JSON \u6269\u5C55\u5143\u6570\u636E\n created_at TEXT NOT NULL, -- ISO 8601\uFF0C\u5E94\u7528\u5C42\u5199\u5165\n updated_at TEXT NOT NULL, -- ISO 8601\uFF0C\u5E94\u7528\u5C42\u5199\u5165\uFF08\u63D0\u6848\u5FEB\u7167\u6BD4\u5BF9\uFF1B\u8F6F\u5220/\u8FD8\u539F\u4EA6\u66F4\u65B0\uFF09\n deleted_at TEXT -- \u7EA7\u8054\u8F6F\u5220\u6807\u8BB0\uFF1A\u4EC5\u5B9E\u4F53/\u8282\u70B9\u7EA7\u8054\u5220\u9664\u65F6\u5199\u5165\uFF1B\n -- \u624B\u52A8\u5220\u9664\u5173\u7CFB = \u7269\u7406\u5220\uFF08\u4E0D\u7F6E deleted_at\uFF0C\u4E0D\u8FDB\u5165\u56DE\u6536\u7AD9\uFF09\n);\n\n-- \u7D22\u5F15\uFF08\u8865\uFF09\uFF1Ak \u8DF3\u904D\u5386\u4E0E\u9AD8\u9891\u5173\u7CFB\u67E5\u8BE2\uFF08\u90E8\u5206\u7D22\u5F15\uFF0C\u4EC5\u8986\u76D6\u672A\u8F6F\u5220\u884C\uFF09\nCREATE INDEX IF NOT EXISTS idx_relation_source ON relation_records(source_id) WHERE deleted_at IS NULL;\nCREATE INDEX IF NOT EXISTS idx_relation_target ON relation_records(target_id) WHERE deleted_at IS NULL;\nCREATE INDEX IF NOT EXISTS idx_relation_type ON relation_records(relation_type) WHERE deleted_at IS NULL;\n\n-- delta_records\uFF1A\u5C5E\u6027\u53D8\u66F4\u8868\nCREATE TABLE IF NOT EXISTS delta_records (\n id TEXT PRIMARY KEY,\n node_id TEXT NOT NULL, -- \u89E6\u53D1\u53D8\u66F4\u7684\u5927\u7EB2\u8282\u70B9\n target_type TEXT NOT NULL,\n target_id TEXT NOT NULL,\n changes TEXT NOT NULL, -- JSON: [{field, op, from?, to?, value?}]\n description TEXT NOT NULL, -- \u4EBA\u7C7B\u53EF\u8BFB\u63CF\u8FF0\n \"order\" INTEGER NOT NULL DEFAULT 0, -- \u540C\u4E00\u8282\u70B9\u5185\u591A\u4E2A Delta \u7684\u6392\u5E8F\uFF08\u5168\u5C40\u5355\u8C03\u9012\u589E\uFF0C\u670D\u52A1\u7AEF\u751F\u6210\uFF09\n created_at TEXT NOT NULL, -- ISO 8601\uFF0C\u5E94\u7528\u5C42\u5199\u5165\n updated_at TEXT NOT NULL, -- ISO 8601\uFF0C\u5E94\u7528\u5C42\u5199\u5165\uFF08\u63D0\u6848\u5FEB\u7167\u6BD4\u5BF9\uFF09\n deleted_at TEXT -- \u7EA7\u8054\u8F6F\u5220\u6807\u8BB0\uFF1A\u4EC5\u5B9E\u4F53/\u8282\u70B9\u7EA7\u8054\u5220\u9664\u65F6\u5199\u5165\u3002\n -- \u53EF\u89C1\u6027\u8054\u52A8\u89E6\u53D1\u8282\u70B9\u4E0E\u76EE\u6807\u5B9E\u4F53\uFF1A\u4EFB\u4E00\u7AEF\u8F6F\u5220\u5373\u4E0D\u53EF\u89C1\n);\n";
|
|
684
|
+
export declare const CREATE_TABLES_SQL = "\n-- entities\uFF1A\u5B9E\u4F53\u8868\uFF08\u4EBA\u7269/\u8BBE\u5B9A/\u5730\u70B9/\u4F0F\u7B14/\u65F6\u95F4\u8F74\u4E8B\u4EF6/\u65F6\u95F4\u6807\u7B7E\u70B9\uFF09\nCREATE TABLE IF NOT EXISTS entities (\n id TEXT PRIMARY KEY,\n type TEXT NOT NULL CHECK(type IN ('character', 'setting', 'location', 'hook', 'event', 'timepoint', 'reference')),\n name TEXT NOT NULL,\n data TEXT NOT NULL DEFAULT '{}', -- JSON: \u5404\u7C7B\u578B\u7684\u4E13\u5C5E\u5B57\u6BB5\n sort_order INTEGER, -- \u65F6\u95F4\u8F74\u7EBF\u6027\u5E8F\uFF08G2 \u4FEE\u8BA2\uFF09\uFF1Aevent \u4E0E timepoint \u5404\u7C7B\u578B\u5185\u7EBF\u6027\uFF08\u5404\u81EA 0..n-1\uFF09\uFF0C\u5176\u4F59\u7C7B\u578B\u6052\u4E3A NULL\n created_at TEXT NOT NULL, -- ISO 8601\uFF0C\u5E94\u7528\u5C42\u5199\u5165\n updated_at TEXT NOT NULL, -- ISO 8601\uFF0C\u5E94\u7528\u5C42\u5199\u5165\uFF08\u63D0\u6848\u5FEB\u7167\u6BD4\u5BF9\uFF09\n deleted_at TEXT -- \u8F6F\u5220\u6807\u8BB0\uFF0CNULL \u8868\u793A\u672A\u5220\u9664\uFF1B\u975E NULL \u65F6\u8BE5\u5B9E\u4F53\u8FDB\u5165\u56DE\u6536\u7AD9\uFF0C\u672C\u4F53\u4FDD\u7559\u53EF\u8FD8\u539F\n);\n\n-- relation_records\uFF1A\u901A\u7528\u5173\u7CFB\u8868\nCREATE TABLE IF NOT EXISTS relation_records (\n id TEXT PRIMARY KEY,\n source_type TEXT NOT NULL, -- \u7AEF\u70B9\u7C7B\u578B\uFF1A\u5B9E\u4F53 'character'|'setting'|'location'|'hook'|'event'\uFF0C\u5927\u7EB2\u8282\u70B9 'outline_node'\n source_id TEXT NOT NULL,\n target_type TEXT NOT NULL,\n target_id TEXT NOT NULL,\n relation_type TEXT NOT NULL,\n metadata TEXT, -- JSON \u6269\u5C55\u5143\u6570\u636E\n created_at TEXT NOT NULL, -- ISO 8601\uFF0C\u5E94\u7528\u5C42\u5199\u5165\n updated_at TEXT NOT NULL, -- ISO 8601\uFF0C\u5E94\u7528\u5C42\u5199\u5165\uFF08\u63D0\u6848\u5FEB\u7167\u6BD4\u5BF9\uFF1B\u8F6F\u5220/\u8FD8\u539F\u4EA6\u66F4\u65B0\uFF09\n deleted_at TEXT -- \u7EA7\u8054\u8F6F\u5220\u6807\u8BB0\uFF1A\u4EC5\u5B9E\u4F53/\u8282\u70B9\u7EA7\u8054\u5220\u9664\u65F6\u5199\u5165\uFF1B\n -- \u624B\u52A8\u5220\u9664\u5173\u7CFB = \u7269\u7406\u5220\uFF08\u4E0D\u7F6E deleted_at\uFF0C\u4E0D\u8FDB\u5165\u56DE\u6536\u7AD9\uFF09\n);\n\n-- \u7D22\u5F15\uFF08\u8865\uFF09\uFF1Ak \u8DF3\u904D\u5386\u4E0E\u9AD8\u9891\u5173\u7CFB\u67E5\u8BE2\uFF08\u90E8\u5206\u7D22\u5F15\uFF0C\u4EC5\u8986\u76D6\u672A\u8F6F\u5220\u884C\uFF09\nCREATE INDEX IF NOT EXISTS idx_relation_source ON relation_records(source_id) WHERE deleted_at IS NULL;\nCREATE INDEX IF NOT EXISTS idx_relation_target ON relation_records(target_id) WHERE deleted_at IS NULL;\nCREATE INDEX IF NOT EXISTS idx_relation_type ON relation_records(relation_type) WHERE deleted_at IS NULL;\n\n-- delta_records\uFF1A\u5C5E\u6027\u53D8\u66F4\u8868\nCREATE TABLE IF NOT EXISTS delta_records (\n id TEXT PRIMARY KEY,\n node_id TEXT NOT NULL, -- \u89E6\u53D1\u53D8\u66F4\u7684\u5927\u7EB2\u8282\u70B9\n target_type TEXT NOT NULL,\n target_id TEXT NOT NULL,\n changes TEXT NOT NULL, -- JSON: [{field, op, from?, to?, value?}]\n description TEXT NOT NULL, -- \u4EBA\u7C7B\u53EF\u8BFB\u63CF\u8FF0\n \"order\" INTEGER NOT NULL DEFAULT 0, -- \u540C\u4E00\u8282\u70B9\u5185\u591A\u4E2A Delta \u7684\u6392\u5E8F\uFF08\u5168\u5C40\u5355\u8C03\u9012\u589E\uFF0C\u670D\u52A1\u7AEF\u751F\u6210\uFF09\n created_at TEXT NOT NULL, -- ISO 8601\uFF0C\u5E94\u7528\u5C42\u5199\u5165\n updated_at TEXT NOT NULL, -- ISO 8601\uFF0C\u5E94\u7528\u5C42\u5199\u5165\uFF08\u63D0\u6848\u5FEB\u7167\u6BD4\u5BF9\uFF09\n deleted_at TEXT -- \u7EA7\u8054\u8F6F\u5220\u6807\u8BB0\uFF1A\u4EC5\u5B9E\u4F53/\u8282\u70B9\u7EA7\u8054\u5220\u9664\u65F6\u5199\u5165\u3002\n -- \u53EF\u89C1\u6027\u8054\u52A8\u89E6\u53D1\u8282\u70B9\u4E0E\u76EE\u6807\u5B9E\u4F53\uFF1A\u4EFB\u4E00\u7AEF\u8F6F\u5220\u5373\u4E0D\u53EF\u89C1\n);\n\n-- document_records\uFF1A\u5757\u6587\u6863\u8868\uFF08\u7AE0\u6B63\u6587 / \u53C2\u8003\u8D44\u6599\u6B63\u6587\uFF0C2026-10\uFF09\nCREATE TABLE IF NOT EXISTS document_records (\n owner_kind TEXT NOT NULL, -- 'chapter' | 'reference'\uFF08\u679A\u4E3E\u503C\u5C11\u4E14\u7A33\u5B9A\uFF0C\u4E0D\u52A0 CHECK\uFF09\n owner_id TEXT NOT NULL, -- 'ch-*'\uFF08\u7AE0\u8282\u70B9 id\uFF09| 'ref-*'\uFF08\u53C2\u8003\u8D44\u6599\u5B9E\u4F53 id\uFF09\n content TEXT NOT NULL, -- \u5757\u6570\u7EC4 JSON \u5B57\u7B26\u4E32\uFF08\u771F\u76F8\uFF1B\u670D\u52A1\u7AEF\u8BFB\u8DEF\u5F84\u4E0D\u89E3\u6790\uFF09\n content_text TEXT NOT NULL, -- \u670D\u52A1\u7AEF\u6D3E\u751F\u7684\u8F7B\u91CF md \u6295\u5F71\uFF08AI \u8BFB\u53D6/\u5217\u8868\u6458\u8981/\u641C\u7D22/\u5B57\u6570\uFF09\n created_at TEXT NOT NULL, -- ISO 8601\uFF0C\u5E94\u7528\u5C42\u5199\u5165\n updated_at TEXT NOT NULL, -- ISO 8601\uFF0C\u5E94\u7528\u5C42\u5199\u5165\uFF08\u7248\u672C\u6233\uFF1A\u591A\u6807\u7B7E\u9875\u9632\u8986\u76D6\uFF09\n PRIMARY KEY (owner_kind, owner_id) -- \u4E00 owner \u4E00\u884C\uFF08upsert \u8986\u76D6\uFF0C\u884C\u968F owner \u751F\u547D\u5468\u671F\uFF09\n);\n";
|
|
559
685
|
//# sourceMappingURL=tables.d.ts.map
|
package/dist/tables.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tables.d.ts","sourceRoot":"","sources":["../src/tables.ts"],"names":[],"mappings":"AAiBA,iDAAiD;AACjD,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAoBpB,CAAC;AAEF,8DAA8D;AAC9D,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAoB3B,CAAC;AAEF,6DAA6D;AAC7D,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAcxB,CAAC;AAEF,mEAAmE;AAEnE;;;GAGG;AACH,eAAO,MAAM,iBAAiB,
|
|
1
|
+
{"version":3,"file":"tables.d.ts","sourceRoot":"","sources":["../src/tables.ts"],"names":[],"mappings":"AAiBA,iDAAiD;AACjD,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAoBpB,CAAC;AAEF,8DAA8D;AAC9D,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAoB3B,CAAC;AAEF,6DAA6D;AAC7D,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAcxB,CAAC;AAEF,mEAAmE;AAEnE;;;;GAIG;AACH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAW3B,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,iBAAiB,8oKA0D7B,CAAC"}
|
package/dist/tables.js
CHANGED
|
@@ -12,7 +12,7 @@
|
|
|
12
12
|
// - 标识符由 drizzle escapeName 双引号包裹输出(`"order"` 关键字列安全,无需特殊转义)。
|
|
13
13
|
// - CHECK 约束与部分索引两处都声明(drizzle 侧供对齐核对;真实建表以 DDL 常量为准)。
|
|
14
14
|
import { sql } from "drizzle-orm";
|
|
15
|
-
import { check, index, integer, sqliteTable, text } from "drizzle-orm/sqlite-core";
|
|
15
|
+
import { check, index, integer, primaryKey, sqliteTable, text } from "drizzle-orm/sqlite-core";
|
|
16
16
|
/** entities:实体表(人物/设定/地点/伏笔/时间轴事件/时间标签点/参考资料) */
|
|
17
17
|
export const entities = sqliteTable("entities", {
|
|
18
18
|
id: text("id").primaryKey(),
|
|
@@ -61,7 +61,20 @@ export const deltaRecords = sqliteTable("delta_records", {
|
|
|
61
61
|
});
|
|
62
62
|
/** chat_messages:已删除(迁移 006:对话历史出库为 `sessions/*.jsonl`,表已 DROP) */
|
|
63
63
|
/**
|
|
64
|
-
*
|
|
64
|
+
* document_records:块文档表(章正文 / 参考资料正文,2026-10)——块数组 JSON 为真相 +
|
|
65
|
+
* 服务端派生的纯文本投影;owner 无外键(章在 outline.json、参考资料在 entities,存在性由写入侧守卫),
|
|
66
|
+
* 无 deleted_at(生命周期跟随 owner:软删即不可见、purge 时调用方删行)。
|
|
67
|
+
*/
|
|
68
|
+
export const documentRecords = sqliteTable("document_records", {
|
|
69
|
+
owner_kind: text("owner_kind").notNull(), // 'chapter' | 'reference'(枚举值少且稳定,不加 CHECK)
|
|
70
|
+
owner_id: text("owner_id").notNull(), // 'ch-*'(章节点 id)| 'ref-*'(参考资料实体 id)
|
|
71
|
+
content: text("content").notNull(), // 块数组 JSON 字符串(真相;服务端读路径不解析)
|
|
72
|
+
content_text: text("content_text").notNull(), // 服务端派生的轻量 md 投影(AI 读取/摘要/字数)
|
|
73
|
+
created_at: text("created_at").notNull(),
|
|
74
|
+
updated_at: text("updated_at").notNull(), // 版本戳:多标签页防覆盖(base_updated_at 比对)
|
|
75
|
+
}, (t) => [primaryKey({ columns: [t.owner_kind, t.owner_id] })]);
|
|
76
|
+
/**
|
|
77
|
+
* 四张业务表 + 索引的建表 SQL(幂等:CREATE TABLE/INDEX IF NOT EXISTS)——建表执行的事实来源。
|
|
65
78
|
* 与上方 sqliteTable 定义必须同步(schema.test.ts 对齐断言覆盖)。
|
|
66
79
|
*/
|
|
67
80
|
export const CREATE_TABLES_SQL = `
|
|
@@ -111,5 +124,16 @@ CREATE TABLE IF NOT EXISTS delta_records (
|
|
|
111
124
|
deleted_at TEXT -- 级联软删标记:仅实体/节点级联删除时写入。
|
|
112
125
|
-- 可见性联动触发节点与目标实体:任一端软删即不可见
|
|
113
126
|
);
|
|
127
|
+
|
|
128
|
+
-- document_records:块文档表(章正文 / 参考资料正文,2026-10)
|
|
129
|
+
CREATE TABLE IF NOT EXISTS document_records (
|
|
130
|
+
owner_kind TEXT NOT NULL, -- 'chapter' | 'reference'(枚举值少且稳定,不加 CHECK)
|
|
131
|
+
owner_id TEXT NOT NULL, -- 'ch-*'(章节点 id)| 'ref-*'(参考资料实体 id)
|
|
132
|
+
content TEXT NOT NULL, -- 块数组 JSON 字符串(真相;服务端读路径不解析)
|
|
133
|
+
content_text TEXT NOT NULL, -- 服务端派生的轻量 md 投影(AI 读取/列表摘要/搜索/字数)
|
|
134
|
+
created_at TEXT NOT NULL, -- ISO 8601,应用层写入
|
|
135
|
+
updated_at TEXT NOT NULL, -- ISO 8601,应用层写入(版本戳:多标签页防覆盖)
|
|
136
|
+
PRIMARY KEY (owner_kind, owner_id) -- 一 owner 一行(upsert 覆盖,行随 owner 生命周期)
|
|
137
|
+
);
|
|
114
138
|
`;
|
|
115
139
|
//# sourceMappingURL=tables.js.map
|
package/dist/tables.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tables.js","sourceRoot":"","sources":["../src/tables.ts"],"names":[],"mappings":"AAAA,oCAAoC;AACpC,EAAE;AACF,iEAAiE;AACjE,oEAAoE;AACpE,yDAAyD;AACzD,EAAE;AACF,MAAM;AACN,2EAA2E;AAC3E,wDAAwD;AACxD,+CAA+C;AAC/C,6EAA6E;AAC7E,8DAA8D;AAC9D,uDAAuD;AAEvD,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAClC,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"tables.js","sourceRoot":"","sources":["../src/tables.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@whispering233/ai-editor-db",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.50",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"description": "数据库层:better-sqlite3 连接 / 建表 / 查询",
|
|
6
6
|
"type": "module",
|
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
"postpack": "node ../../scripts/restore-package-json.mjs"
|
|
27
27
|
},
|
|
28
28
|
"dependencies": {
|
|
29
|
-
"@whispering233/ai-editor-shared": "0.0.
|
|
29
|
+
"@whispering233/ai-editor-shared": "0.0.50",
|
|
30
30
|
"better-sqlite3": "^13.0.0",
|
|
31
31
|
"drizzle-orm": "0.45.2"
|
|
32
32
|
},
|