agentic-domain-document 0.6.0
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/.tbls.yml +201 -0
- package/CHANGELOG.md +68 -0
- package/README.md +313 -0
- package/agent/agent.manifest.json +8 -0
- package/agent/capabilities/document-authoring.json +21 -0
- package/agent/capabilities/document-block.json +22 -0
- package/agent/capabilities/document-toc.json +21 -0
- package/agent/capabilities/document-validation.json +21 -0
- package/agent/examples/document-quality-examples.md +153 -0
- package/agent/examples/examples.md +172 -0
- package/agent/guides/10-document-authoring-guide.md +28 -0
- package/agent/guides/20-domain-boundary-guide.md +41 -0
- package/agent/guides/30-authoring-policy-guide.md +40 -0
- package/agent/guides/40-toc-authoring-guide.md +73 -0
- package/agent/guides/50-content-block-guide.md +57 -0
- package/agent/guides/51-paragraph-authoring-guide.md +68 -0
- package/agent/guides/52-table-authoring-guide.md +73 -0
- package/agent/guides/53-diagram-figure-authoring-guide.md +75 -0
- package/agent/guides/70-korean-writing-style-guide.md +65 -0
- package/agent/instructions/00-runtime-behavior.md +17 -0
- package/agent/instructions/10-scope-and-boundary.md +27 -0
- package/agent/instructions/20-task-procedures.md +69 -0
- package/agent/instructions/30-must-and-must-not.md +34 -0
- package/agent/resource-index.json +185 -0
- package/agent/resource-selection.json +205 -0
- package/agent/routing.json +34 -0
- package/agent/sources/reference-mapping.md +53 -0
- package/agent/validation/document-validation-rules.md +73 -0
- package/dist/agent/document-agent-contribution.d.ts +15 -0
- package/dist/agent/document-agent-contribution.d.ts.map +1 -0
- package/dist/agent/document-agent-contribution.js +39 -0
- package/dist/agent/document-agent-contribution.js.map +1 -0
- package/dist/agent/index.d.ts +2 -0
- package/dist/agent/index.d.ts.map +1 -0
- package/dist/agent/index.js +2 -0
- package/dist/agent/index.js.map +1 -0
- package/dist/database.d.ts +8 -0
- package/dist/database.d.ts.map +1 -0
- package/dist/database.js +76 -0
- package/dist/database.js.map +1 -0
- package/dist/index.d.ts +15 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +14 -0
- package/dist/index.js.map +1 -0
- package/dist/markdown-importer.d.ts +14 -0
- package/dist/markdown-importer.d.ts.map +1 -0
- package/dist/markdown-importer.js +386 -0
- package/dist/markdown-importer.js.map +1 -0
- package/dist/reader.d.ts +17 -0
- package/dist/reader.d.ts.map +1 -0
- package/dist/reader.js +332 -0
- package/dist/reader.js.map +1 -0
- package/dist/repositories.d.ts +118 -0
- package/dist/repositories.d.ts.map +1 -0
- package/dist/repositories.js +388 -0
- package/dist/repositories.js.map +1 -0
- package/dist/service.d.ts +35 -0
- package/dist/service.d.ts.map +1 -0
- package/dist/service.js +327 -0
- package/dist/service.js.map +1 -0
- package/dist/types.d.ts +276 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +2 -0
- package/dist/types.js.map +1 -0
- package/dist/validators.d.ts +4 -0
- package/dist/validators.d.ts.map +1 -0
- package/dist/validators.js +255 -0
- package/dist/validators.js.map +1 -0
- package/docs/build.md +55 -0
- package/docs/configuration.md +34 -0
- package/docs/delivery.md +50 -0
- package/docs/operations.md +50 -0
- package/docs/publishing.md +69 -0
- package/docs/schema/generated/README.md +30 -0
- package/docs/schema/generated/document_annotations.md +119 -0
- package/docs/schema/generated/document_annotations.svg +60 -0
- package/docs/schema/generated/document_blocks.md +97 -0
- package/docs/schema/generated/document_blocks.svg +60 -0
- package/docs/schema/generated/document_change_events.md +135 -0
- package/docs/schema/generated/document_change_events.svg +88 -0
- package/docs/schema/generated/document_code_groups.md +70 -0
- package/docs/schema/generated/document_code_groups.svg +52 -0
- package/docs/schema/generated/document_codes.md +88 -0
- package/docs/schema/generated/document_codes.svg +52 -0
- package/docs/schema/generated/document_contents.md +87 -0
- package/docs/schema/generated/document_contents.svg +116 -0
- package/docs/schema/generated/document_documents.md +126 -0
- package/docs/schema/generated/document_documents.svg +222 -0
- package/docs/schema/generated/document_node_taxonomies.md +84 -0
- package/docs/schema/generated/document_node_taxonomies.svg +80 -0
- package/docs/schema/generated/document_node_taxonomy_levels.md +91 -0
- package/docs/schema/generated/document_node_taxonomy_levels.svg +52 -0
- package/docs/schema/generated/document_nodes.md +120 -0
- package/docs/schema/generated/document_nodes.svg +98 -0
- package/docs/schema/generated/document_revisions.md +107 -0
- package/docs/schema/generated/document_revisions.svg +116 -0
- package/docs/schema/generated/document_versions.md +126 -0
- package/docs/schema/generated/document_versions.svg +88 -0
- package/docs/schema/generated/schema.json +2534 -0
- package/docs/schema/generated/schema.mmd +170 -0
- package/docs/schema/generated/schema.svg +331 -0
- package/docs/schema/migrations.md +40 -0
- package/docs/usage.md +332 -0
- package/docs/validation-rules.md +69 -0
- package/package.json +30 -0
- package/src/database/migrations/0001_document_base.sql +753 -0
package/dist/service.js
ADDED
|
@@ -0,0 +1,327 @@
|
|
|
1
|
+
import { randomUUID } from "node:crypto";
|
|
2
|
+
import { openDocumentDatabase } from "./database.js";
|
|
3
|
+
import { DocumentRepository, normalizeActor } from "./repositories.js";
|
|
4
|
+
import { validateDocument as validateDocumentState } from "./validators.js";
|
|
5
|
+
function nonDraftStatus(status) {
|
|
6
|
+
if (status === "draft") {
|
|
7
|
+
throw new Error("Revision/version cannot be created for draft state");
|
|
8
|
+
}
|
|
9
|
+
return status;
|
|
10
|
+
}
|
|
11
|
+
function assertTransition(current, next) {
|
|
12
|
+
const allowed = {
|
|
13
|
+
draft: ["in_review", "archived"],
|
|
14
|
+
in_review: ["approved", "archived"],
|
|
15
|
+
approved: ["published", "archived"],
|
|
16
|
+
published: ["archived"],
|
|
17
|
+
archived: []
|
|
18
|
+
};
|
|
19
|
+
if (!allowed[current].includes(next)) {
|
|
20
|
+
throw new Error(`Invalid document status transition: ${current} -> ${next}`);
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
function statusToSnapshotType(status) {
|
|
24
|
+
if (status === "in_review") {
|
|
25
|
+
return "review";
|
|
26
|
+
}
|
|
27
|
+
if (status === "approved") {
|
|
28
|
+
return "approval";
|
|
29
|
+
}
|
|
30
|
+
if (status === "published") {
|
|
31
|
+
return "publication";
|
|
32
|
+
}
|
|
33
|
+
return "manual";
|
|
34
|
+
}
|
|
35
|
+
export class DocumentService {
|
|
36
|
+
ownsDatabase;
|
|
37
|
+
db;
|
|
38
|
+
repository;
|
|
39
|
+
constructor(options = {}) {
|
|
40
|
+
this.ownsDatabase = options.database === undefined;
|
|
41
|
+
this.db = options.database ?? openDocumentDatabase(options);
|
|
42
|
+
this.repository = new DocumentRepository(this.db);
|
|
43
|
+
}
|
|
44
|
+
close() {
|
|
45
|
+
if (this.ownsDatabase) {
|
|
46
|
+
this.db.close();
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
createDocument(input) {
|
|
50
|
+
const taxonomy = this.repository.findTaxonomyByCode(input.taxonomyCode ?? input.documentTypeCode ?? "default");
|
|
51
|
+
const taxonomyId = input.taxonomyId ?? taxonomy.taxonomy_id;
|
|
52
|
+
const documentTypeCode = input.documentTypeCode ?? taxonomy.document_type_code;
|
|
53
|
+
const tocLevelLimit = input.tocLevelLimit ?? taxonomy.default_toc_level_limit;
|
|
54
|
+
return this.repository.createDocument(randomUUID(), input, taxonomyId, documentTypeCode, tocLevelLimit);
|
|
55
|
+
}
|
|
56
|
+
getDocument(documentId) {
|
|
57
|
+
return this.repository.getDocument(documentId);
|
|
58
|
+
}
|
|
59
|
+
createNode(input) {
|
|
60
|
+
this.repository.getDocument(input.documentId);
|
|
61
|
+
return this.repository.createNode(randomUUID(), input);
|
|
62
|
+
}
|
|
63
|
+
listNodes(documentId) {
|
|
64
|
+
this.repository.getDocument(documentId);
|
|
65
|
+
return this.repository.listNodes(documentId);
|
|
66
|
+
}
|
|
67
|
+
getDocumentToc(documentId) {
|
|
68
|
+
const document = this.repository.getDocument(documentId);
|
|
69
|
+
const nodes = this.repository.listNodes(documentId);
|
|
70
|
+
const nodeById = new Map(nodes.map((node) => [node.nodeId, node]));
|
|
71
|
+
return nodes
|
|
72
|
+
.filter((node) => {
|
|
73
|
+
let current = node;
|
|
74
|
+
while (current.parentNodeId !== undefined) {
|
|
75
|
+
const parent = nodeById.get(current.parentNodeId);
|
|
76
|
+
if (parent === undefined) {
|
|
77
|
+
break;
|
|
78
|
+
}
|
|
79
|
+
if (parent.tocVisibility === "exclude") {
|
|
80
|
+
return false;
|
|
81
|
+
}
|
|
82
|
+
current = parent;
|
|
83
|
+
}
|
|
84
|
+
if (node.tocVisibility === "exclude") {
|
|
85
|
+
return false;
|
|
86
|
+
}
|
|
87
|
+
if (node.tocVisibility === "include") {
|
|
88
|
+
return true;
|
|
89
|
+
}
|
|
90
|
+
return node.nodeLevel <= document.tocLevelLimit;
|
|
91
|
+
})
|
|
92
|
+
.map((node) => ({
|
|
93
|
+
nodeId: node.nodeId,
|
|
94
|
+
parentNodeId: node.parentNodeId,
|
|
95
|
+
nodeLevel: node.nodeLevel,
|
|
96
|
+
title: node.title,
|
|
97
|
+
sortOrder: node.sortOrder,
|
|
98
|
+
numberingPolicyCode: node.numberingPolicyCode,
|
|
99
|
+
numberingOverride: node.numberingOverride
|
|
100
|
+
}));
|
|
101
|
+
}
|
|
102
|
+
ensureContent(nodeId) {
|
|
103
|
+
const existing = this.repository.getContentByNodeId(nodeId);
|
|
104
|
+
if (existing !== undefined) {
|
|
105
|
+
return existing;
|
|
106
|
+
}
|
|
107
|
+
const node = this.repository.getNode(nodeId);
|
|
108
|
+
return this.repository.createContent(randomUUID(), node.documentId, node.nodeId);
|
|
109
|
+
}
|
|
110
|
+
addBlock(input) {
|
|
111
|
+
this.repository.getContent(input.contentId);
|
|
112
|
+
return this.repository.addBlock(randomUUID(), input);
|
|
113
|
+
}
|
|
114
|
+
updateBlock(input) {
|
|
115
|
+
return this.repository.updateBlock(input);
|
|
116
|
+
}
|
|
117
|
+
listBlocks(contentId) {
|
|
118
|
+
this.repository.getContent(contentId);
|
|
119
|
+
return this.repository.listBlocks(contentId);
|
|
120
|
+
}
|
|
121
|
+
createAnnotation(input) {
|
|
122
|
+
const annotation = this.repository.createAnnotation(randomUUID(), input);
|
|
123
|
+
const document = this.repository.getDocument(input.documentId);
|
|
124
|
+
if (document.statusCode !== "draft") {
|
|
125
|
+
this.createRevisionWithEvent({
|
|
126
|
+
document,
|
|
127
|
+
title: "Annotation created",
|
|
128
|
+
reason: "Annotation note was created.",
|
|
129
|
+
actor: input.author,
|
|
130
|
+
targetType: "annotation",
|
|
131
|
+
targetId: annotation.annotationId,
|
|
132
|
+
changeType: "annotated"
|
|
133
|
+
});
|
|
134
|
+
}
|
|
135
|
+
return annotation;
|
|
136
|
+
}
|
|
137
|
+
resolveAnnotation(annotationId, actor) {
|
|
138
|
+
const annotation = this.repository.resolveAnnotation(annotationId);
|
|
139
|
+
const document = this.repository.getDocument(annotation.documentId);
|
|
140
|
+
if (document.statusCode !== "draft") {
|
|
141
|
+
this.createRevisionWithEvent({
|
|
142
|
+
document,
|
|
143
|
+
title: "Annotation resolved",
|
|
144
|
+
reason: "Annotation note was resolved.",
|
|
145
|
+
actor,
|
|
146
|
+
targetType: "annotation",
|
|
147
|
+
targetId: annotation.annotationId,
|
|
148
|
+
changeType: "annotated"
|
|
149
|
+
});
|
|
150
|
+
}
|
|
151
|
+
return annotation;
|
|
152
|
+
}
|
|
153
|
+
requestReview(input) {
|
|
154
|
+
return this.transitionWithVersion(input, "in_review");
|
|
155
|
+
}
|
|
156
|
+
approveDocument(input) {
|
|
157
|
+
return this.transitionWithVersion(input, "approved");
|
|
158
|
+
}
|
|
159
|
+
publishDocument(input) {
|
|
160
|
+
return this.transitionWithVersion(input, "published");
|
|
161
|
+
}
|
|
162
|
+
createVersionSnapshot(input) {
|
|
163
|
+
const document = this.repository.getDocument(input.documentId);
|
|
164
|
+
const status = nonDraftStatus(document.statusCode);
|
|
165
|
+
const revision = this.repository.createRevision({
|
|
166
|
+
revisionId: randomUUID(),
|
|
167
|
+
documentId: document.documentId,
|
|
168
|
+
title: "Manual version snapshot",
|
|
169
|
+
reason: input.reason,
|
|
170
|
+
status,
|
|
171
|
+
actor: input.actor,
|
|
172
|
+
metadata: { snapshotType: input.snapshotType ?? "manual" }
|
|
173
|
+
});
|
|
174
|
+
this.repository.createChangeEvent({
|
|
175
|
+
eventId: randomUUID(),
|
|
176
|
+
revisionId: revision.revisionId,
|
|
177
|
+
documentId: document.documentId,
|
|
178
|
+
targetType: "document",
|
|
179
|
+
targetId: document.documentId,
|
|
180
|
+
changeType: "version_created",
|
|
181
|
+
reason: input.reason,
|
|
182
|
+
actor: input.actor
|
|
183
|
+
});
|
|
184
|
+
return this.repository.createVersion({
|
|
185
|
+
versionId: randomUUID(),
|
|
186
|
+
documentId: document.documentId,
|
|
187
|
+
revisionId: revision.revisionId,
|
|
188
|
+
versionLabel: input.versionLabel ?? document.versionLabel,
|
|
189
|
+
snapshotType: input.snapshotType ?? "manual",
|
|
190
|
+
status,
|
|
191
|
+
snapshot: this.createSnapshot(document.documentId),
|
|
192
|
+
actor: input.actor
|
|
193
|
+
});
|
|
194
|
+
}
|
|
195
|
+
createDraftFromDocument(input) {
|
|
196
|
+
const source = this.repository.getDocument(input.sourceDocumentId);
|
|
197
|
+
if (source.statusCode === "draft") {
|
|
198
|
+
throw new Error("Cannot create a new draft from another draft document");
|
|
199
|
+
}
|
|
200
|
+
return this.db.transaction(() => {
|
|
201
|
+
const actor = normalizeActor(input.author);
|
|
202
|
+
const draft = this.repository.insertDraftClone(randomUUID(), source, {
|
|
203
|
+
title: input.title ?? source.title,
|
|
204
|
+
versionLabel: input.versionLabel,
|
|
205
|
+
actor,
|
|
206
|
+
metadata: input.metadata
|
|
207
|
+
});
|
|
208
|
+
const nodeMap = this.cloneNodes(source.documentId, draft.documentId);
|
|
209
|
+
this.cloneContentsAndBlocks(source.documentId, draft.documentId, nodeMap);
|
|
210
|
+
this.createRevisionWithEvent({
|
|
211
|
+
document: source,
|
|
212
|
+
title: "New draft created",
|
|
213
|
+
reason: "New draft was created from the source document.",
|
|
214
|
+
actor: input.author,
|
|
215
|
+
targetType: "document",
|
|
216
|
+
targetId: source.documentId,
|
|
217
|
+
changeType: "new_draft_created",
|
|
218
|
+
metadata: { draftDocumentId: draft.documentId }
|
|
219
|
+
});
|
|
220
|
+
return draft;
|
|
221
|
+
})();
|
|
222
|
+
}
|
|
223
|
+
validateDocument(documentId) {
|
|
224
|
+
return validateDocumentState(this.db, documentId);
|
|
225
|
+
}
|
|
226
|
+
transitionWithVersion(input, nextStatus) {
|
|
227
|
+
return this.db.transaction(() => {
|
|
228
|
+
const before = this.repository.getDocument(input.documentId);
|
|
229
|
+
assertTransition(before.statusCode, nextStatus);
|
|
230
|
+
const after = this.repository.updateDocumentStatus(input.documentId, nextStatus, input.versionLabel);
|
|
231
|
+
const revision = this.createRevisionWithEvent({
|
|
232
|
+
document: after,
|
|
233
|
+
title: `Document status changed to ${nextStatus}`,
|
|
234
|
+
reason: input.reason,
|
|
235
|
+
actor: input.actor,
|
|
236
|
+
targetType: "document",
|
|
237
|
+
targetId: after.documentId,
|
|
238
|
+
changeType: "status_changed",
|
|
239
|
+
metadata: { beforeStatus: before.statusCode, afterStatus: nextStatus }
|
|
240
|
+
});
|
|
241
|
+
return this.repository.createVersion({
|
|
242
|
+
versionId: randomUUID(),
|
|
243
|
+
documentId: after.documentId,
|
|
244
|
+
revisionId: revision.revisionId,
|
|
245
|
+
versionLabel: input.versionLabel ?? after.versionLabel,
|
|
246
|
+
snapshotType: statusToSnapshotType(nextStatus),
|
|
247
|
+
status: nextStatus,
|
|
248
|
+
snapshot: this.createSnapshot(after.documentId),
|
|
249
|
+
actor: input.actor
|
|
250
|
+
});
|
|
251
|
+
})();
|
|
252
|
+
}
|
|
253
|
+
createRevisionWithEvent(input) {
|
|
254
|
+
const revision = this.repository.createRevision({
|
|
255
|
+
revisionId: randomUUID(),
|
|
256
|
+
documentId: input.document.documentId,
|
|
257
|
+
title: input.title,
|
|
258
|
+
reason: input.reason,
|
|
259
|
+
status: nonDraftStatus(input.document.statusCode),
|
|
260
|
+
actor: input.actor,
|
|
261
|
+
metadata: input.metadata
|
|
262
|
+
});
|
|
263
|
+
this.repository.createChangeEvent({
|
|
264
|
+
eventId: randomUUID(),
|
|
265
|
+
revisionId: revision.revisionId,
|
|
266
|
+
documentId: input.document.documentId,
|
|
267
|
+
targetType: input.targetType,
|
|
268
|
+
targetId: input.targetId,
|
|
269
|
+
changeType: input.changeType,
|
|
270
|
+
reason: input.reason,
|
|
271
|
+
actor: input.actor,
|
|
272
|
+
metadata: input.metadata
|
|
273
|
+
});
|
|
274
|
+
return revision;
|
|
275
|
+
}
|
|
276
|
+
createSnapshot(documentId) {
|
|
277
|
+
return {
|
|
278
|
+
document: this.repository.getDocument(documentId),
|
|
279
|
+
toc: this.getDocumentToc(documentId),
|
|
280
|
+
nodeCount: this.repository.listNodes(documentId).length
|
|
281
|
+
};
|
|
282
|
+
}
|
|
283
|
+
cloneNodes(sourceDocumentId, draftDocumentId) {
|
|
284
|
+
const sourceNodes = this.repository.listNodes(sourceDocumentId).sort((left, right) => left.nodeLevel - right.nodeLevel || left.sortOrder - right.sortOrder);
|
|
285
|
+
const nodeMap = new Map();
|
|
286
|
+
for (const sourceNode of sourceNodes) {
|
|
287
|
+
const clonedNode = this.repository.createNode(randomUUID(), {
|
|
288
|
+
documentId: draftDocumentId,
|
|
289
|
+
parentNodeId: sourceNode.parentNodeId === undefined ? undefined : nodeMap.get(sourceNode.parentNodeId),
|
|
290
|
+
nodeLevel: sourceNode.nodeLevel,
|
|
291
|
+
title: sourceNode.title,
|
|
292
|
+
nodeRoleCode: sourceNode.nodeRoleCode,
|
|
293
|
+
tocVisibility: sourceNode.tocVisibility,
|
|
294
|
+
numberingPolicyCode: sourceNode.numberingPolicyCode,
|
|
295
|
+
numberingOverride: sourceNode.numberingOverride,
|
|
296
|
+
sortOrder: sourceNode.sortOrder,
|
|
297
|
+
metadata: sourceNode.metadata
|
|
298
|
+
});
|
|
299
|
+
nodeMap.set(sourceNode.nodeId, clonedNode.nodeId);
|
|
300
|
+
}
|
|
301
|
+
return nodeMap;
|
|
302
|
+
}
|
|
303
|
+
cloneContentsAndBlocks(sourceDocumentId, draftDocumentId, nodeMap) {
|
|
304
|
+
for (const sourceNode of this.repository.listNodes(sourceDocumentId)) {
|
|
305
|
+
const sourceContent = this.repository.getContentByNodeId(sourceNode.nodeId);
|
|
306
|
+
const draftNodeId = nodeMap.get(sourceNode.nodeId);
|
|
307
|
+
if (sourceContent === undefined || draftNodeId === undefined) {
|
|
308
|
+
continue;
|
|
309
|
+
}
|
|
310
|
+
const draftContent = this.repository.createContent(randomUUID(), draftDocumentId, draftNodeId, sourceContent.metadata);
|
|
311
|
+
for (const block of this.repository.listBlocks(sourceContent.contentId)) {
|
|
312
|
+
this.repository.addBlock(randomUUID(), {
|
|
313
|
+
contentId: draftContent.contentId,
|
|
314
|
+
blockTypeCode: block.blockTypeCode,
|
|
315
|
+
sortOrder: block.sortOrder,
|
|
316
|
+
contentText: block.contentText,
|
|
317
|
+
contentJson: block.contentJson,
|
|
318
|
+
metadata: block.metadata
|
|
319
|
+
});
|
|
320
|
+
}
|
|
321
|
+
}
|
|
322
|
+
}
|
|
323
|
+
}
|
|
324
|
+
export function createDocumentService(options = {}) {
|
|
325
|
+
return new DocumentService(options);
|
|
326
|
+
}
|
|
327
|
+
//# sourceMappingURL=service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"service.js","sourceRoot":"","sources":["../src/service.ts"],"names":[],"mappings":"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"}
|
package/dist/types.d.ts
ADDED
|
@@ -0,0 +1,276 @@
|
|
|
1
|
+
import type Database from "better-sqlite3";
|
|
2
|
+
export type DocumentActorType = "user" | "agent" | "system";
|
|
3
|
+
export type DocumentStatus = "draft" | "in_review" | "approved" | "published" | "archived";
|
|
4
|
+
export type TocVisibility = "inherit" | "include" | "exclude";
|
|
5
|
+
export type DocumentBlockType = "paragraph" | "quote" | "table" | "figure" | "diagram" | "list" | "code" | "callout";
|
|
6
|
+
export type DocumentTargetType = "document" | "node" | "content" | "block" | "annotation";
|
|
7
|
+
export type DocumentChangeType = "created" | "updated" | "deleted" | "status_changed" | "reordered" | "annotated" | "version_created" | "new_draft_created";
|
|
8
|
+
export type DocumentSnapshotType = "review" | "approval" | "publication" | "manual";
|
|
9
|
+
export type AnnotationStatus = "open" | "resolved";
|
|
10
|
+
export interface DocumentDatabaseOptions {
|
|
11
|
+
readonly projectRoot?: string;
|
|
12
|
+
readonly databasePath?: string;
|
|
13
|
+
readonly applyMigration?: boolean;
|
|
14
|
+
}
|
|
15
|
+
export interface DocumentDatabaseInitResult {
|
|
16
|
+
readonly databasePath: string;
|
|
17
|
+
readonly created: boolean;
|
|
18
|
+
readonly tables: readonly string[];
|
|
19
|
+
}
|
|
20
|
+
export interface DocumentServiceOptions extends DocumentDatabaseOptions {
|
|
21
|
+
readonly database?: Database.Database;
|
|
22
|
+
}
|
|
23
|
+
export interface DocumentReaderOptions extends DocumentDatabaseOptions {
|
|
24
|
+
readonly database?: Database.Database;
|
|
25
|
+
}
|
|
26
|
+
export interface DocumentActor {
|
|
27
|
+
readonly type?: DocumentActorType;
|
|
28
|
+
readonly id?: string;
|
|
29
|
+
readonly name?: string;
|
|
30
|
+
}
|
|
31
|
+
export interface DocumentRecord {
|
|
32
|
+
readonly documentId: string;
|
|
33
|
+
readonly documentTypeCode: string;
|
|
34
|
+
readonly taxonomyId: string;
|
|
35
|
+
readonly title: string;
|
|
36
|
+
readonly sourceDocumentId?: string;
|
|
37
|
+
readonly versionLabel?: string;
|
|
38
|
+
readonly authorTypeCode: DocumentActorType;
|
|
39
|
+
readonly authorId?: string;
|
|
40
|
+
readonly authorName?: string;
|
|
41
|
+
readonly statusCode: DocumentStatus;
|
|
42
|
+
readonly tocLevelLimit: number;
|
|
43
|
+
readonly publishedAt?: string;
|
|
44
|
+
readonly createdAt: string;
|
|
45
|
+
readonly updatedAt: string;
|
|
46
|
+
readonly metadata?: unknown;
|
|
47
|
+
}
|
|
48
|
+
export interface DocumentNodeRecord {
|
|
49
|
+
readonly nodeId: string;
|
|
50
|
+
readonly documentId: string;
|
|
51
|
+
readonly parentNodeId?: string;
|
|
52
|
+
readonly nodeLevel: number;
|
|
53
|
+
readonly nodeRoleCode: string;
|
|
54
|
+
readonly title: string;
|
|
55
|
+
readonly tocVisibility: TocVisibility;
|
|
56
|
+
readonly numberingPolicyCode: string;
|
|
57
|
+
readonly numberingOverride?: string;
|
|
58
|
+
readonly sortOrder: number;
|
|
59
|
+
readonly createdAt: string;
|
|
60
|
+
readonly updatedAt: string;
|
|
61
|
+
readonly metadata?: unknown;
|
|
62
|
+
}
|
|
63
|
+
export interface DocumentContentRecord {
|
|
64
|
+
readonly contentId: string;
|
|
65
|
+
readonly documentId: string;
|
|
66
|
+
readonly nodeId: string;
|
|
67
|
+
readonly createdAt: string;
|
|
68
|
+
readonly updatedAt: string;
|
|
69
|
+
readonly metadata?: unknown;
|
|
70
|
+
}
|
|
71
|
+
export interface DocumentBlockRecord {
|
|
72
|
+
readonly blockId: string;
|
|
73
|
+
readonly contentId: string;
|
|
74
|
+
readonly blockTypeCode: DocumentBlockType;
|
|
75
|
+
readonly sortOrder: number;
|
|
76
|
+
readonly contentText?: string;
|
|
77
|
+
readonly contentJson?: unknown;
|
|
78
|
+
readonly createdAt: string;
|
|
79
|
+
readonly updatedAt: string;
|
|
80
|
+
readonly metadata?: unknown;
|
|
81
|
+
}
|
|
82
|
+
export interface DocumentAnnotationRecord {
|
|
83
|
+
readonly annotationId: string;
|
|
84
|
+
readonly documentId: string;
|
|
85
|
+
readonly targetTypeCode: Exclude<DocumentTargetType, "annotation">;
|
|
86
|
+
readonly targetId: string;
|
|
87
|
+
readonly annotationTypeCode: "note";
|
|
88
|
+
readonly statusCode: AnnotationStatus;
|
|
89
|
+
readonly noteText: string;
|
|
90
|
+
readonly authorTypeCode: DocumentActorType;
|
|
91
|
+
readonly authorId?: string;
|
|
92
|
+
readonly authorName?: string;
|
|
93
|
+
readonly resolvedAt?: string;
|
|
94
|
+
readonly createdAt: string;
|
|
95
|
+
readonly updatedAt: string;
|
|
96
|
+
readonly metadata?: unknown;
|
|
97
|
+
}
|
|
98
|
+
export interface DocumentRevisionRecord {
|
|
99
|
+
readonly revisionId: string;
|
|
100
|
+
readonly documentId: string;
|
|
101
|
+
readonly revisionNo: number;
|
|
102
|
+
readonly revisionTitle: string;
|
|
103
|
+
readonly revisionReason?: string;
|
|
104
|
+
readonly documentStatusCode: Exclude<DocumentStatus, "draft">;
|
|
105
|
+
readonly createdByTypeCode: DocumentActorType;
|
|
106
|
+
readonly createdById?: string;
|
|
107
|
+
readonly createdByName?: string;
|
|
108
|
+
readonly createdAt: string;
|
|
109
|
+
readonly metadata?: unknown;
|
|
110
|
+
}
|
|
111
|
+
export interface DocumentVersionRecord {
|
|
112
|
+
readonly versionId: string;
|
|
113
|
+
readonly documentId: string;
|
|
114
|
+
readonly revisionId: string;
|
|
115
|
+
readonly versionNo: number;
|
|
116
|
+
readonly versionLabel?: string;
|
|
117
|
+
readonly snapshotTypeCode: DocumentSnapshotType;
|
|
118
|
+
readonly documentStatusCode: Exclude<DocumentStatus, "draft">;
|
|
119
|
+
readonly snapshot?: unknown;
|
|
120
|
+
readonly checksum?: string;
|
|
121
|
+
readonly createdByTypeCode: DocumentActorType;
|
|
122
|
+
readonly createdById?: string;
|
|
123
|
+
readonly createdByName?: string;
|
|
124
|
+
readonly createdAt: string;
|
|
125
|
+
}
|
|
126
|
+
export interface DocumentTocNode {
|
|
127
|
+
readonly nodeId: string;
|
|
128
|
+
readonly parentNodeId?: string;
|
|
129
|
+
readonly nodeLevel: number;
|
|
130
|
+
readonly title: string;
|
|
131
|
+
readonly sortOrder: number;
|
|
132
|
+
readonly numberingPolicyCode: string;
|
|
133
|
+
readonly numberingOverride?: string;
|
|
134
|
+
}
|
|
135
|
+
export interface DocumentQuery {
|
|
136
|
+
readonly documentTypeCode?: string;
|
|
137
|
+
readonly statusCode?: DocumentStatus;
|
|
138
|
+
readonly titleContains?: string;
|
|
139
|
+
readonly sourceDocumentId?: string;
|
|
140
|
+
readonly limit?: number;
|
|
141
|
+
}
|
|
142
|
+
export interface DocumentAggregate {
|
|
143
|
+
readonly document: DocumentRecord;
|
|
144
|
+
readonly nodes: readonly DocumentNodeRecord[];
|
|
145
|
+
readonly contents: readonly DocumentContentRecord[];
|
|
146
|
+
readonly blocks: readonly DocumentBlockRecord[];
|
|
147
|
+
}
|
|
148
|
+
export interface DocumentTreeNode {
|
|
149
|
+
readonly node: DocumentNodeRecord;
|
|
150
|
+
readonly content?: DocumentContentRecord;
|
|
151
|
+
readonly blocks: readonly DocumentBlockRecord[];
|
|
152
|
+
readonly children: readonly DocumentTreeNode[];
|
|
153
|
+
}
|
|
154
|
+
export interface DocumentBlockSearchQuery {
|
|
155
|
+
readonly contains?: string;
|
|
156
|
+
readonly blockTypeCode?: DocumentBlockType;
|
|
157
|
+
readonly nodeId?: string;
|
|
158
|
+
readonly nodeTitleContains?: string;
|
|
159
|
+
readonly caseSensitive?: boolean;
|
|
160
|
+
readonly limit?: number;
|
|
161
|
+
}
|
|
162
|
+
export interface DocumentBlockSearchResult {
|
|
163
|
+
readonly document: DocumentRecord;
|
|
164
|
+
readonly node: DocumentNodeRecord;
|
|
165
|
+
readonly nodePath: readonly string[];
|
|
166
|
+
readonly content?: DocumentContentRecord;
|
|
167
|
+
readonly block: DocumentBlockRecord;
|
|
168
|
+
}
|
|
169
|
+
export interface DocumentMarkdownProjectionOptions {
|
|
170
|
+
readonly includeFrontmatter?: boolean;
|
|
171
|
+
readonly includeNodeAnchors?: boolean;
|
|
172
|
+
readonly includeBlockAnchors?: boolean;
|
|
173
|
+
readonly includeJsonBlocks?: boolean;
|
|
174
|
+
readonly title?: boolean;
|
|
175
|
+
}
|
|
176
|
+
export interface DocumentMarkdownImporterOptions extends DocumentDatabaseOptions {
|
|
177
|
+
readonly database?: Database.Database;
|
|
178
|
+
}
|
|
179
|
+
export interface MarkdownImportPolicy {
|
|
180
|
+
readonly validateAfterImport?: boolean;
|
|
181
|
+
}
|
|
182
|
+
export interface ImportMarkdownDocumentInput {
|
|
183
|
+
readonly title: string;
|
|
184
|
+
readonly markdown: string;
|
|
185
|
+
readonly sourcePath?: string;
|
|
186
|
+
readonly documentTypeCode?: string;
|
|
187
|
+
readonly taxonomyCode?: string;
|
|
188
|
+
readonly versionLabel?: string;
|
|
189
|
+
readonly author?: DocumentActor;
|
|
190
|
+
readonly metadata?: unknown;
|
|
191
|
+
readonly policy?: MarkdownImportPolicy;
|
|
192
|
+
}
|
|
193
|
+
export interface ImportMarkdownChapterInput {
|
|
194
|
+
readonly documentId: string;
|
|
195
|
+
readonly markdown: string;
|
|
196
|
+
readonly sourcePath?: string;
|
|
197
|
+
readonly fallbackTitle?: string;
|
|
198
|
+
readonly policy?: MarkdownImportPolicy;
|
|
199
|
+
}
|
|
200
|
+
export interface DocumentImportResult {
|
|
201
|
+
readonly document: DocumentRecord;
|
|
202
|
+
readonly nodes: readonly DocumentNodeRecord[];
|
|
203
|
+
readonly contents: readonly DocumentContentRecord[];
|
|
204
|
+
readonly blocks: readonly DocumentBlockRecord[];
|
|
205
|
+
readonly validation?: ValidationResult;
|
|
206
|
+
}
|
|
207
|
+
export interface ValidationIssue {
|
|
208
|
+
readonly ruleId: string;
|
|
209
|
+
readonly severity: "error" | "warning";
|
|
210
|
+
readonly targetType: DocumentTargetType;
|
|
211
|
+
readonly targetId: string;
|
|
212
|
+
readonly message: string;
|
|
213
|
+
readonly details?: unknown;
|
|
214
|
+
}
|
|
215
|
+
export interface ValidationResult {
|
|
216
|
+
readonly valid: boolean;
|
|
217
|
+
readonly issues: readonly ValidationIssue[];
|
|
218
|
+
}
|
|
219
|
+
export interface CreateDocumentInput {
|
|
220
|
+
readonly title: string;
|
|
221
|
+
readonly documentTypeCode?: string;
|
|
222
|
+
readonly taxonomyCode?: string;
|
|
223
|
+
readonly taxonomyId?: string;
|
|
224
|
+
readonly tocLevelLimit?: number;
|
|
225
|
+
readonly versionLabel?: string;
|
|
226
|
+
readonly author?: DocumentActor;
|
|
227
|
+
readonly metadata?: unknown;
|
|
228
|
+
}
|
|
229
|
+
export interface CreateNodeInput {
|
|
230
|
+
readonly documentId: string;
|
|
231
|
+
readonly parentNodeId?: string;
|
|
232
|
+
readonly nodeLevel: number;
|
|
233
|
+
readonly title: string;
|
|
234
|
+
readonly nodeRoleCode?: string;
|
|
235
|
+
readonly tocVisibility?: TocVisibility;
|
|
236
|
+
readonly numberingPolicyCode?: string;
|
|
237
|
+
readonly numberingOverride?: string;
|
|
238
|
+
readonly sortOrder?: number;
|
|
239
|
+
readonly metadata?: unknown;
|
|
240
|
+
}
|
|
241
|
+
export interface AddBlockInput {
|
|
242
|
+
readonly contentId: string;
|
|
243
|
+
readonly blockTypeCode: DocumentBlockType;
|
|
244
|
+
readonly sortOrder?: number;
|
|
245
|
+
readonly contentText?: string;
|
|
246
|
+
readonly contentJson?: unknown;
|
|
247
|
+
readonly metadata?: unknown;
|
|
248
|
+
}
|
|
249
|
+
export interface UpdateBlockInput {
|
|
250
|
+
readonly blockId: string;
|
|
251
|
+
readonly contentText?: string;
|
|
252
|
+
readonly contentJson?: unknown;
|
|
253
|
+
readonly metadata?: unknown;
|
|
254
|
+
}
|
|
255
|
+
export interface CreateAnnotationInput {
|
|
256
|
+
readonly documentId: string;
|
|
257
|
+
readonly targetTypeCode: Exclude<DocumentTargetType, "annotation">;
|
|
258
|
+
readonly targetId: string;
|
|
259
|
+
readonly noteText: string;
|
|
260
|
+
readonly author?: DocumentActor;
|
|
261
|
+
readonly metadata?: unknown;
|
|
262
|
+
}
|
|
263
|
+
export interface TransitionInput {
|
|
264
|
+
readonly documentId: string;
|
|
265
|
+
readonly reason?: string;
|
|
266
|
+
readonly actor?: DocumentActor;
|
|
267
|
+
readonly versionLabel?: string;
|
|
268
|
+
}
|
|
269
|
+
export interface CreateDraftInput {
|
|
270
|
+
readonly sourceDocumentId: string;
|
|
271
|
+
readonly title?: string;
|
|
272
|
+
readonly versionLabel?: string;
|
|
273
|
+
readonly author?: DocumentActor;
|
|
274
|
+
readonly metadata?: unknown;
|
|
275
|
+
}
|
|
276
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/dist/types.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"validators.d.ts","sourceRoot":"","sources":["../src/validators.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAC3C,OAAO,KAAK,EAA4D,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAyO7G,wBAAgB,gBAAgB,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EAAE,UAAU,EAAE,MAAM,GAAG,gBAAgB,CAqF5F"}
|