@superdoc-dev/sdk 1.19.2 → 1.20.1

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 (103) hide show
  1. package/dist/action-primitives/doc-index.cjs +215 -0
  2. package/dist/action-primitives/doc-index.d.ts +83 -0
  3. package/dist/action-primitives/doc-index.d.ts.map +1 -0
  4. package/dist/action-primitives/doc-index.js +211 -0
  5. package/dist/action-primitives/engine.cjs +204 -0
  6. package/dist/action-primitives/engine.d.ts +71 -0
  7. package/dist/action-primitives/engine.d.ts.map +1 -0
  8. package/dist/action-primitives/engine.js +196 -0
  9. package/dist/action-primitives/receipt.cjs +39 -0
  10. package/dist/action-primitives/receipt.d.ts +49 -0
  11. package/dist/action-primitives/receipt.d.ts.map +1 -0
  12. package/dist/action-primitives/receipt.js +32 -0
  13. package/dist/action-primitives/resolve.cjs +252 -0
  14. package/dist/action-primitives/resolve.d.ts +56 -0
  15. package/dist/action-primitives/resolve.d.ts.map +1 -0
  16. package/dist/action-primitives/resolve.js +246 -0
  17. package/dist/action-primitives/session-cache.cjs +43 -0
  18. package/dist/action-primitives/session-cache.d.ts +19 -0
  19. package/dist/action-primitives/session-cache.d.ts.map +1 -0
  20. package/dist/action-primitives/session-cache.js +37 -0
  21. package/dist/action-primitives/tools/list-transform.cjs +661 -0
  22. package/dist/action-primitives/tools/list-transform.d.ts +98 -0
  23. package/dist/action-primitives/tools/list-transform.d.ts.map +1 -0
  24. package/dist/action-primitives/tools/list-transform.js +656 -0
  25. package/dist/action-primitives/tools/structure-insert.cjs +1343 -0
  26. package/dist/action-primitives/tools/structure-insert.d.ts +183 -0
  27. package/dist/action-primitives/tools/structure-insert.d.ts.map +1 -0
  28. package/dist/action-primitives/tools/structure-insert.js +1338 -0
  29. package/dist/action-primitives/tools/text-transform.cjs +669 -0
  30. package/dist/action-primitives/tools/text-transform.d.ts +64 -0
  31. package/dist/action-primitives/tools/text-transform.d.ts.map +1 -0
  32. package/dist/action-primitives/tools/text-transform.js +664 -0
  33. package/dist/action-primitives/types.d.ts +36 -0
  34. package/dist/action-primitives/types.d.ts.map +1 -0
  35. package/dist/action-primitives/types.js +15 -0
  36. package/dist/agent/actions.cjs +5381 -0
  37. package/dist/agent/actions.d.ts +404 -0
  38. package/dist/agent/actions.d.ts.map +1 -0
  39. package/dist/agent/actions.js +5373 -0
  40. package/dist/agent/catalog.cjs +483 -0
  41. package/dist/agent/catalog.d.ts +103 -0
  42. package/dist/agent/catalog.d.ts.map +1 -0
  43. package/dist/agent/catalog.js +471 -0
  44. package/dist/agent/doc-snapshot.cjs +663 -0
  45. package/dist/agent/doc-snapshot.d.ts +247 -0
  46. package/dist/agent/doc-snapshot.d.ts.map +1 -0
  47. package/dist/agent/doc-snapshot.js +657 -0
  48. package/dist/agent/index.d.ts +16 -0
  49. package/dist/agent/index.d.ts.map +1 -0
  50. package/dist/agent/index.js +15 -0
  51. package/dist/agent/ir.cjs +170 -0
  52. package/dist/agent/ir.d.ts +216 -0
  53. package/dist/agent/ir.d.ts.map +1 -0
  54. package/dist/agent/ir.js +181 -0
  55. package/dist/agent/operation-catalog.cjs +418 -0
  56. package/dist/agent/operation-catalog.d.ts +36 -0
  57. package/dist/agent/operation-catalog.d.ts.map +1 -0
  58. package/dist/agent/operation-catalog.js +446 -0
  59. package/dist/agent/runtime.cjs +501 -0
  60. package/dist/agent/runtime.d.ts +120 -0
  61. package/dist/agent/runtime.d.ts.map +1 -0
  62. package/dist/agent/runtime.js +493 -0
  63. package/dist/embedded-prompts.generated.cjs +13 -0
  64. package/dist/embedded-prompts.generated.d.ts +4 -0
  65. package/dist/embedded-prompts.generated.d.ts.map +1 -0
  66. package/dist/embedded-prompts.generated.js +9 -0
  67. package/dist/generated/client.cjs +18 -0
  68. package/dist/generated/client.d.ts +134 -0
  69. package/dist/generated/client.d.ts.map +1 -1
  70. package/dist/generated/client.js +18 -0
  71. package/dist/generated/contract.cjs +622 -3
  72. package/dist/generated/contract.d.ts.map +1 -1
  73. package/dist/generated/contract.js +622 -3
  74. package/dist/index.cjs +3 -7
  75. package/dist/index.d.ts +8 -6
  76. package/dist/index.d.ts.map +1 -1
  77. package/dist/index.js +2 -8
  78. package/dist/presets/core.cjs +454 -0
  79. package/dist/presets/core.d.ts +20 -0
  80. package/dist/presets/core.d.ts.map +1 -0
  81. package/dist/presets/core.js +447 -0
  82. package/dist/presets.cjs +55 -8
  83. package/dist/presets.d.ts +39 -8
  84. package/dist/presets.d.ts.map +1 -1
  85. package/dist/presets.js +53 -8
  86. package/dist/prompts/mcp-prompt.md +23 -0
  87. package/dist/prompts/system-prompt.md +108 -0
  88. package/dist/runtime/transport-common.cjs +8 -0
  89. package/dist/runtime/transport-common.d.ts.map +1 -1
  90. package/dist/runtime/transport-common.js +8 -0
  91. package/dist/tools.cjs +46 -11
  92. package/dist/tools.d.ts +55 -8
  93. package/dist/tools.d.ts.map +1 -1
  94. package/dist/tools.js +45 -13
  95. package/package.json +9 -8
  96. package/tools/__pycache__/__init__.cpython-312.pyc +0 -0
  97. package/tools/__pycache__/intent_dispatch_generated.cpython-312.pyc +0 -0
  98. package/tools/catalog.json +14 -0
  99. package/tools/tools-policy.json +1 -1
  100. package/tools/tools.anthropic.json +14 -0
  101. package/tools/tools.generic.json +14 -0
  102. package/tools/tools.openai.json +14 -0
  103. package/tools/tools.vercel.json +14 -0
@@ -0,0 +1,247 @@
1
+ /**
2
+ * Deterministic document snapshot.
3
+ *
4
+ * The workflow doc-index (see action-primitives/doc-index.ts) covers body blocks
5
+ * and lists. That coverage is too narrow for a real agent runtime — many
6
+ * editing tasks touch headers/footers, comments, tracked changes, sections,
7
+ * styles, content controls, fields, hyperlinks, bookmarks, images, or
8
+ * permission ranges. Selectors that target those surfaces must resolve from
9
+ * a snapshot that includes them, otherwise the agent has to either guess or
10
+ * silently fall back.
11
+ *
12
+ * This module builds a single read-only document snapshot in a deterministic
13
+ * sequence: each section is queried with explicit catalog operations, results
14
+ * are normalized into typed shapes, and selectors resolve against the same
15
+ * snapshot for the duration of one agent turn.
16
+ *
17
+ * The snapshot is intentionally side-effect free: it never mutates the
18
+ * document and never depends on inference. If an underlying operation
19
+ * returns `null`/empty, the corresponding section is recorded as empty
20
+ * rather than skipped, so consumers see a stable shape.
21
+ */
22
+ import type { BoundDocApi } from '../generated/client.js';
23
+ export type SnapshotBlock = {
24
+ ordinal: number;
25
+ nodeId: string;
26
+ nodeType: string;
27
+ text: string;
28
+ textPreview: string | null;
29
+ styleId?: string | null;
30
+ headingLevel?: number;
31
+ /**
32
+ * Computed numbering when the block participates in a numbering scheme.
33
+ * Legal clause numbers ("2.3.") usually live on numbered HEADINGS, not
34
+ * list nodes — this is how an agent sees them.
35
+ */
36
+ numbering?: {
37
+ marker: string | null;
38
+ path: number[] | null;
39
+ kind: string | null;
40
+ } | null;
41
+ };
42
+ export type SnapshotList = {
43
+ listId: string;
44
+ kind: 'ordered' | 'bullet' | string;
45
+ items: ReadonlyArray<{
46
+ nodeId: string;
47
+ ordinal: number;
48
+ level: number;
49
+ text: string;
50
+ }>;
51
+ };
52
+ export type SnapshotTable = {
53
+ nodeId: string;
54
+ ordinal: number;
55
+ rows: number;
56
+ columns: number;
57
+ cells: ReadonlyArray<{
58
+ rowIndex: number;
59
+ columnIndex: number;
60
+ text: string;
61
+ nodeId?: string;
62
+ }>;
63
+ };
64
+ export type SnapshotComment = {
65
+ id: string;
66
+ text: string;
67
+ status: string;
68
+ anchoredText?: string;
69
+ segments?: ReadonlyArray<{
70
+ blockId: string;
71
+ start: number;
72
+ end: number;
73
+ }>;
74
+ };
75
+ export type SnapshotTrackedChange = {
76
+ id: string;
77
+ type: string;
78
+ excerpt?: string;
79
+ author?: string;
80
+ date?: string;
81
+ story?: string;
82
+ };
83
+ export type SnapshotHeaderFooter = {
84
+ kind: 'header' | 'footer';
85
+ sectionId?: string;
86
+ sectionIndex?: number;
87
+ variant?: 'default' | 'first' | 'even' | string;
88
+ blocks: ReadonlyArray<SnapshotBlock>;
89
+ };
90
+ export type SnapshotSection = {
91
+ ordinal: number;
92
+ sectionId?: string;
93
+ startNodeId?: string;
94
+ endNodeId?: string;
95
+ pageSize?: {
96
+ width: number;
97
+ height: number;
98
+ };
99
+ };
100
+ export type SnapshotStyle = {
101
+ styleId: string;
102
+ name: string;
103
+ type?: string;
104
+ basedOn?: string;
105
+ };
106
+ export type SnapshotContentControl = {
107
+ id: string;
108
+ type?: string;
109
+ alias?: string;
110
+ tag?: string;
111
+ text?: string;
112
+ };
113
+ export type SnapshotField = {
114
+ id: string;
115
+ type?: string;
116
+ result?: string;
117
+ };
118
+ export type SnapshotHyperlink = {
119
+ id: string;
120
+ url: string;
121
+ display?: string;
122
+ nodeId?: string;
123
+ };
124
+ export type SnapshotBookmark = {
125
+ id: string;
126
+ name: string;
127
+ startNodeId?: string;
128
+ endNodeId?: string;
129
+ };
130
+ export type SnapshotPermissionRange = {
131
+ id: string;
132
+ startNodeId?: string;
133
+ endNodeId?: string;
134
+ editorOrEditorGroup?: string;
135
+ };
136
+ export type SnapshotImage = {
137
+ imageId: string;
138
+ nodeId?: string;
139
+ alt?: string;
140
+ caption?: string;
141
+ };
142
+ export type SnapshotDomain = 'blocks' | 'lists' | 'tables' | 'comments' | 'trackedChanges' | 'sections' | 'headerFooters' | 'styles' | 'contentControls' | 'fields' | 'hyperlinks' | 'bookmarks' | 'permissionRanges' | 'images';
143
+ export type SnapshotDiagnostic = {
144
+ section: string;
145
+ message: string;
146
+ };
147
+ export type DocumentSnapshot = {
148
+ revision: string;
149
+ counts: {
150
+ blocks: number;
151
+ paragraphs: number;
152
+ headings: number;
153
+ tables: number;
154
+ lists: number;
155
+ images: number;
156
+ comments: number;
157
+ trackedChanges: number;
158
+ sections: number;
159
+ fields: number;
160
+ hyperlinks: number;
161
+ bookmarks: number;
162
+ contentControls: number;
163
+ permissionRanges: number;
164
+ styles: number;
165
+ headers: number;
166
+ footers: number;
167
+ };
168
+ blocks: readonly SnapshotBlock[];
169
+ lists: readonly SnapshotList[];
170
+ tables: readonly SnapshotTable[];
171
+ comments: readonly SnapshotComment[];
172
+ trackedChanges: readonly SnapshotTrackedChange[];
173
+ sections: readonly SnapshotSection[];
174
+ headerFooters: readonly SnapshotHeaderFooter[];
175
+ styles: readonly SnapshotStyle[];
176
+ contentControls: readonly SnapshotContentControl[];
177
+ fields: readonly SnapshotField[];
178
+ hyperlinks: readonly SnapshotHyperlink[];
179
+ bookmarks: readonly SnapshotBookmark[];
180
+ permissionRanges: readonly SnapshotPermissionRange[];
181
+ images: readonly SnapshotImage[];
182
+ diagnostics: readonly SnapshotDiagnostic[];
183
+ };
184
+ type SnapshotOptions = {
185
+ countsOnly?: boolean;
186
+ includeDomains?: readonly SnapshotDomain[];
187
+ blockNodeTypes?: readonly string[];
188
+ blockTextLimit?: number;
189
+ listLimit?: number;
190
+ tableLimit?: number;
191
+ commentLimit?: number;
192
+ trackedChangeLimit?: number;
193
+ /**
194
+ * Window into the block list. `blockOffset` is the 0-based index of the
195
+ * first block to return; `blockLimit` caps how many blocks come back. This
196
+ * is the primitive that makes large documents tractable: a 600-block /
197
+ * 38-page doc produces a ~58k-token full snapshot, so a reader pulls a
198
+ * bounded slice (e.g. offset 0, limit 40) per window instead of the whole
199
+ * thing. `counts.blocks` / `blocks[].ordinal` still reflect absolute
200
+ * positions so selectors and the next window line up.
201
+ */
202
+ blockOffset?: number;
203
+ blockLimit?: number;
204
+ /**
205
+ * Drop empty paragraphs/list-items from the returned blocks. A real DOCX is
206
+ * ~40% empty spacer paragraphs that carry full JSON overhead but no reading
207
+ * value; omitting them roughly halves the blocks payload for a reading pass.
208
+ * Ordinals are preserved, so the gaps are visible and selectors still work.
209
+ */
210
+ omitEmptyBlocks?: boolean;
211
+ /**
212
+ * Omit the duplicated `textPreview` field (it equals `text` whenever the
213
+ * block text is not truncated). Pure payload savings for readers that use
214
+ * `text`.
215
+ */
216
+ dropTextPreview?: boolean;
217
+ };
218
+ /**
219
+ * Build a deterministic snapshot of a document. The snapshot uses only
220
+ * read-mode operations from the generated contract — it never mutates state,
221
+ * and any individual section that fails is captured as a diagnostic so the
222
+ * rest of the snapshot remains usable.
223
+ */
224
+ export declare function buildDocumentSnapshot(doc: BoundDocApi, options?: SnapshotOptions): Promise<DocumentSnapshot>;
225
+ /**
226
+ * Structured ambiguity error returned when multiple candidates match a
227
+ * selector and the plan required uniqueness.
228
+ */
229
+ export declare class AmbiguousSelectorError extends Error {
230
+ readonly code: "AMBIGUOUS_SELECTOR";
231
+ readonly candidates: ReadonlyArray<{
232
+ nodeId: string;
233
+ description: string;
234
+ }>;
235
+ constructor(message: string, candidates: ReadonlyArray<{
236
+ nodeId: string;
237
+ description: string;
238
+ }>);
239
+ }
240
+ /**
241
+ * Resolve a deterministic selector against the snapshot. Returns the matching
242
+ * block ids in document order. Selectors that target entities return
243
+ * entity-domain matches by id.
244
+ */
245
+ export declare function resolveSnapshotSelector(snapshot: DocumentSnapshot, selector: import('./ir.js').AgentSelector): readonly string[];
246
+ export {};
247
+ //# sourceMappingURL=doc-snapshot.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"doc-snapshot.d.ts","sourceRoot":"","sources":["../../src/agent/doc-snapshot.ts"],"names":[],"mappings":"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"}