@usejunior/docx-mcp 0.10.0 → 0.11.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.
Files changed (74) hide show
  1. package/LICENSE +202 -21
  2. package/NOTICE +2 -0
  3. package/README.md +1 -1
  4. package/dist/.tsbuildinfo +1 -1
  5. package/dist/cli/help.d.ts.map +1 -1
  6. package/dist/cli/help.js +1 -0
  7. package/dist/cli/help.js.map +1 -1
  8. package/dist/odf_loader.d.ts.map +1 -1
  9. package/dist/odf_loader.js +6 -5
  10. package/dist/odf_loader.js.map +1 -1
  11. package/dist/server.d.ts +5 -2
  12. package/dist/server.d.ts.map +1 -1
  13. package/dist/server.js +3 -0
  14. package/dist/server.js.map +1 -1
  15. package/dist/session/manager.d.ts +4 -0
  16. package/dist/session/manager.d.ts.map +1 -1
  17. package/dist/session/manager.js +12 -54
  18. package/dist/session/manager.js.map +1 -1
  19. package/dist/tool_catalog.d.ts +20 -4
  20. package/dist/tool_catalog.d.ts.map +1 -1
  21. package/dist/tool_catalog.js +22 -2
  22. package/dist/tool_catalog.js.map +1 -1
  23. package/dist/tools/add_comment.d.ts.map +1 -1
  24. package/dist/tools/add_comment.js +19 -5
  25. package/dist/tools/add_comment.js.map +1 -1
  26. package/dist/tools/add_footnote.d.ts.map +1 -1
  27. package/dist/tools/add_footnote.js +13 -3
  28. package/dist/tools/add_footnote.js.map +1 -1
  29. package/dist/tools/ai_revision_guard.d.ts +38 -0
  30. package/dist/tools/ai_revision_guard.d.ts.map +1 -0
  31. package/dist/tools/ai_revision_guard.js +115 -0
  32. package/dist/tools/ai_revision_guard.js.map +1 -0
  33. package/dist/tools/apply_plan.d.ts.map +1 -1
  34. package/dist/tools/apply_plan.js +49 -1
  35. package/dist/tools/apply_plan.js.map +1 -1
  36. package/dist/tools/clear_formatting.d.ts.map +1 -1
  37. package/dist/tools/clear_formatting.js +52 -42
  38. package/dist/tools/clear_formatting.js.map +1 -1
  39. package/dist/tools/convert_to_odt.d.ts +20 -0
  40. package/dist/tools/convert_to_odt.d.ts.map +1 -0
  41. package/dist/tools/convert_to_odt.js +74 -0
  42. package/dist/tools/convert_to_odt.js.map +1 -0
  43. package/dist/tools/delete_comment.d.ts.map +1 -1
  44. package/dist/tools/delete_comment.js +10 -1
  45. package/dist/tools/delete_comment.js.map +1 -1
  46. package/dist/tools/delete_footnote.d.ts.map +1 -1
  47. package/dist/tools/delete_footnote.js +10 -1
  48. package/dist/tools/delete_footnote.js.map +1 -1
  49. package/dist/tools/format_layout.d.ts.map +1 -1
  50. package/dist/tools/format_layout.js +16 -0
  51. package/dist/tools/format_layout.js.map +1 -1
  52. package/dist/tools/get_comments.d.ts.map +1 -1
  53. package/dist/tools/get_comments.js +9 -0
  54. package/dist/tools/get_comments.js.map +1 -1
  55. package/dist/tools/insert_paragraph.d.ts +5 -0
  56. package/dist/tools/insert_paragraph.d.ts.map +1 -1
  57. package/dist/tools/insert_paragraph.js +36 -26
  58. package/dist/tools/insert_paragraph.js.map +1 -1
  59. package/dist/tools/read_file.d.ts +1 -0
  60. package/dist/tools/read_file.d.ts.map +1 -1
  61. package/dist/tools/read_file.js +65 -72
  62. package/dist/tools/read_file.js.map +1 -1
  63. package/dist/tools/replace_text.d.ts +5 -0
  64. package/dist/tools/replace_text.d.ts.map +1 -1
  65. package/dist/tools/replace_text.js +65 -60
  66. package/dist/tools/replace_text.js.map +1 -1
  67. package/dist/tools/save.d.ts +19 -0
  68. package/dist/tools/save.d.ts.map +1 -1
  69. package/dist/tools/save.js +109 -8
  70. package/dist/tools/save.js.map +1 -1
  71. package/dist/tools/update_footnote.d.ts.map +1 -1
  72. package/dist/tools/update_footnote.js +18 -7
  73. package/dist/tools/update_footnote.js.map +1 -1
  74. package/package.json +8 -7
@@ -0,0 +1 @@
1
+ {"version":3,"file":"convert_to_odt.d.ts","sourceRoot":"","sources":["../../src/tools/convert_to_odt.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAW,KAAK,YAAY,EAAE,MAAM,YAAY,CAAC;AAUxD;;;;;;;;;;GAUG;AACH,wBAAsB,YAAY,CAChC,OAAO,EAAE,cAAc,EACvB,MAAM,EAAE;IACN,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B,GACA,OAAO,CAAC,YAAY,CAAC,CA+EvB"}
@@ -0,0 +1,74 @@
1
+ import path from 'node:path';
2
+ import fs from 'node:fs/promises';
3
+ import { err, ok } from './types.js';
4
+ import { mergeSessionResolutionMetadata, resolveSessionForTool } from './session_resolution.js';
5
+ import { enforceWritePathPolicy, resolvesToSamePath } from './path_policy.js';
6
+ import { checkGDocsSupport } from './provider_guard.js';
7
+ import { loadOdfCore } from '../odf_loader.js';
8
+ function expandPath(inputPath) {
9
+ return inputPath.startsWith('~') ? path.join(process.env.HOME || '', inputPath.slice(1)) : inputPath;
10
+ }
11
+ /**
12
+ * Convert a DOCX document to OpenDocument Text (`.odt`) via odf-core's native converter.
13
+ *
14
+ * Conversion is semantic and intentionally lossy (no round-trip guarantee): visible text,
15
+ * headings, basic run formatting, lists, and tables are mapped; everything downgraded is
16
+ * itemized in the returned `lossiness` summary. The converted package is validated with
17
+ * `validateOdfArchiveSafety` BEFORE writing — an unsafe artifact is never persisted.
18
+ *
19
+ * DOCX in, ODT out. `file_path`-first like every session tool; Google Docs is out of scope,
20
+ * and a `.odt` input is rejected by session resolution (there is nothing to convert).
21
+ */
22
+ export async function convertToOdt(manager, params) {
23
+ try {
24
+ if (typeof params.google_doc_id === 'string' && params.google_doc_id.trim().length > 0) {
25
+ return checkGDocsSupport('convert_to_odt');
26
+ }
27
+ const resolved = await resolveSessionForTool(manager, params, { toolName: 'convert_to_odt' });
28
+ if (!resolved.ok)
29
+ return resolved.response;
30
+ const { session, metadata } = resolved;
31
+ const parsedSource = path.parse(session.originalPath);
32
+ const outputPath = expandPath(params.output_path?.trim()
33
+ ? params.output_path
34
+ : path.join(parsedSource.dir, `${parsedSource.name}.odt`));
35
+ // Never clobber the source document; realpath-compare so a symlink can't slip past.
36
+ if (await resolvesToSamePath(outputPath, session.originalPath)) {
37
+ return err('OVERWRITE_BLOCKED', `Refusing to overwrite the source document: ${outputPath}`, 'Choose a different output_path.');
38
+ }
39
+ if (!params.allow_overwrite) {
40
+ const exists = await fs
41
+ .access(outputPath)
42
+ .then(() => true)
43
+ .catch(() => false);
44
+ if (exists) {
45
+ return err('OVERWRITE_BLOCKED', `Output file already exists: ${outputPath}`, 'Set allow_overwrite=true to overwrite, or choose a different output_path.');
46
+ }
47
+ }
48
+ const odfCore = await loadOdfCore();
49
+ if (!odfCore) {
50
+ return err('ODF_UNAVAILABLE', 'DOCX→ODT conversion requires @usejunior/odf-core.', 'Install @usejunior/odf-core to enable conversion.');
51
+ }
52
+ // Convert the session's CURRENT state (including unsaved edits), not the on-disk file.
53
+ const { buffer } = await session.doc.toBuffer({ cleanBookmarks: false });
54
+ const { odt, lossiness } = await odfCore.convertDocxToOdt(buffer);
55
+ const safety = await odfCore.validateOdfArchiveSafety(odt);
56
+ if (!safety.ok) {
57
+ return err('CONVERSION_UNSAFE_OUTPUT', `Converted package failed ODF archive safety validation: ${safety.message}`, 'This is a converter bug — please report it. No file was written.');
58
+ }
59
+ const policy = await enforceWritePathPolicy(outputPath);
60
+ if (!policy.ok)
61
+ return policy.response;
62
+ await fs.mkdir(path.dirname(outputPath), { recursive: true });
63
+ await fs.writeFile(outputPath, new Uint8Array(odt));
64
+ return ok(mergeSessionResolutionMetadata({
65
+ output_path: manager.normalizePath(outputPath),
66
+ bytes_written: odt.byteLength,
67
+ lossiness,
68
+ }, metadata));
69
+ }
70
+ catch (error) {
71
+ return err('CONVERT_FAILED', error instanceof Error ? error.message : String(error));
72
+ }
73
+ }
74
+ //# sourceMappingURL=convert_to_odt.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"convert_to_odt.js","sourceRoot":"","sources":["../../src/tools/convert_to_odt.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"delete_comment.d.ts","sourceRoot":"","sources":["../../src/tools/delete_comment.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAgC,MAAM,uBAAuB,CAAC;AAGrF,OAAO,EAAW,KAAK,YAAY,EAAE,MAAM,YAAY,CAAC;AAExD,wBAAsB,aAAa,CACjC,OAAO,EAAE,cAAc,EACvB,MAAM,EAAE;IACN,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,GACA,OAAO,CAAC,YAAY,CAAC,CAyBvB"}
1
+ {"version":3,"file":"delete_comment.d.ts","sourceRoot":"","sources":["../../src/tools/delete_comment.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAgC,MAAM,uBAAuB,CAAC;AAGrF,OAAO,EAAW,KAAK,YAAY,EAAE,MAAM,YAAY,CAAC;AASxD,wBAAsB,aAAa,CACjC,OAAO,EAAE,cAAc,EACvB,MAAM,EAAE;IACN,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB,GACA,OAAO,CAAC,YAAY,CAAC,CA+BvB"}
@@ -2,6 +2,11 @@ import { getRevisionContextForSession } from '../session/manager.js';
2
2
  import { errorMessage } from "../error_utils.js";
3
3
  import { resolveSessionForTool, mergeSessionResolutionMetadata } from './session_resolution.js';
4
4
  import { ok, err } from './types.js';
5
+ import { preflightAiRevisionMutation } from './ai_revision_guard.js';
6
+ const COMMENT_TOUCHED_CONTEXT = {
7
+ relationshipParts: ['word/_rels/document.xml.rels'],
8
+ sideParts: ['word/comments.xml', 'word/commentsExtended.xml', 'word/people.xml'],
9
+ };
5
10
  export async function deleteComment(manager, params) {
6
11
  const resolved = await resolveSessionForTool(manager, params, { toolName: 'delete_comment' });
7
12
  if (!resolved.ok)
@@ -12,7 +17,11 @@ export async function deleteComment(manager, params) {
12
17
  return err('MISSING_PARAMETER', 'comment_id is required.', 'Provide the comment ID to delete.');
13
18
  }
14
19
  try {
15
- await session.doc.deleteComment({ commentId: params.comment_id }, ctx);
20
+ const mutate = (doc, activeCtx) => doc.deleteComment({ commentId: params.comment_id }, activeCtx);
21
+ const revisionPreflight = await preflightAiRevisionMutation(session, ctx, mutate, COMMENT_TOUCHED_CONTEXT);
22
+ if (revisionPreflight)
23
+ return revisionPreflight;
24
+ await mutate(session.doc, ctx);
16
25
  manager.markEdited(session);
17
26
  return ok(mergeSessionResolutionMetadata({
18
27
  comment_id: params.comment_id,
@@ -1 +1 @@
1
- {"version":3,"file":"delete_comment.js","sourceRoot":"","sources":["../../src/tools/delete_comment.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,4BAA4B,EAAE,MAAM,uBAAuB,CAAC;AACrF,OAAO,EAAa,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAE,qBAAqB,EAAE,8BAA8B,EAAE,MAAM,yBAAyB,CAAC;AAChG,OAAO,EAAE,EAAE,EAAE,GAAG,EAAqB,MAAM,YAAY,CAAC;AAExD,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,OAAuB,EACvB,MAGC;IAED,MAAM,QAAQ,GAAG,MAAM,qBAAqB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,gBAAgB,EAAE,CAAC,CAAC;IAC9F,IAAI,CAAC,QAAQ,CAAC,EAAE;QAAE,OAAO,QAAQ,CAAC,QAAQ,CAAC;IAC3C,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,QAAQ,CAAC;IACvC,MAAM,GAAG,GAAG,MAAM,4BAA4B,CAAC,OAAO,CAAC,CAAC;IAExD,IAAI,MAAM,CAAC,UAAU,IAAI,IAAI,EAAE,CAAC;QAC9B,OAAO,GAAG,CAAC,mBAAmB,EAAE,yBAAyB,EAAE,mCAAmC,CAAC,CAAC;IAClG,CAAC;IAED,IAAI,CAAC;QACH,MAAM,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,UAAU,EAAE,EAAE,GAAG,CAAC,CAAC;QAEvE,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QAC5B,OAAO,EAAE,CAAC,8BAA8B,CAAC;YACvC,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,SAAS,EAAE,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,YAAY,CAAC;SACvD,EAAE,QAAQ,CAAC,CAAC,CAAC;IAChB,CAAC;IAAC,OAAO,CAAU,EAAE,CAAC;QACpB,MAAM,GAAG,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;QAC5B,IAAI,GAAG,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;YAC9B,OAAO,GAAG,CAAC,mBAAmB,EAAE,GAAG,EAAE,8CAA8C,CAAC,CAAC;QACvF,CAAC;QACD,OAAO,GAAG,CAAC,eAAe,EAAE,GAAG,CAAC,CAAC;IACnC,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"delete_comment.js","sourceRoot":"","sources":["../../src/tools/delete_comment.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,4BAA4B,EAAE,MAAM,uBAAuB,CAAC;AACrF,OAAO,EAAa,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAE,qBAAqB,EAAE,8BAA8B,EAAE,MAAM,yBAAyB,CAAC;AAChG,OAAO,EAAE,EAAE,EAAE,GAAG,EAAqB,MAAM,YAAY,CAAC;AAExD,OAAO,EAAE,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AAErE,MAAM,uBAAuB,GAAG;IAC9B,iBAAiB,EAAE,CAAC,8BAA8B,CAAC;IACnD,SAAS,EAAE,CAAC,mBAAmB,EAAE,2BAA2B,EAAE,iBAAiB,CAAC;CACjF,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,OAAuB,EACvB,MAGC;IAED,MAAM,QAAQ,GAAG,MAAM,qBAAqB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,gBAAgB,EAAE,CAAC,CAAC;IAC9F,IAAI,CAAC,QAAQ,CAAC,EAAE;QAAE,OAAO,QAAQ,CAAC,QAAQ,CAAC;IAC3C,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,QAAQ,CAAC;IACvC,MAAM,GAAG,GAAG,MAAM,4BAA4B,CAAC,OAAO,CAAC,CAAC;IAExD,IAAI,MAAM,CAAC,UAAU,IAAI,IAAI,EAAE,CAAC;QAC9B,OAAO,GAAG,CAAC,mBAAmB,EAAE,yBAAyB,EAAE,mCAAmC,CAAC,CAAC;IAClG,CAAC;IAED,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,CAAC,GAAiB,EAAE,SAAsC,EAAE,EAAE,CAC3E,GAAG,CAAC,aAAa,CAAC,EAAE,SAAS,EAAE,MAAM,CAAC,UAAW,EAAE,EAAE,SAAS,CAAC,CAAC;QAElE,MAAM,iBAAiB,GAAG,MAAM,2BAA2B,CAAC,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,uBAAuB,CAAC,CAAC;QAC3G,IAAI,iBAAiB;YAAE,OAAO,iBAAiB,CAAC;QAEhD,MAAM,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAE/B,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QAC5B,OAAO,EAAE,CAAC,8BAA8B,CAAC;YACvC,UAAU,EAAE,MAAM,CAAC,UAAU;YAC7B,SAAS,EAAE,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,YAAY,CAAC;SACvD,EAAE,QAAQ,CAAC,CAAC,CAAC;IAChB,CAAC;IAAC,OAAO,CAAU,EAAE,CAAC;QACpB,MAAM,GAAG,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;QAC5B,IAAI,GAAG,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;YAC9B,OAAO,GAAG,CAAC,mBAAmB,EAAE,GAAG,EAAE,8CAA8C,CAAC,CAAC;QACvF,CAAC;QACD,OAAO,GAAG,CAAC,eAAe,EAAE,GAAG,CAAC,CAAC;IACnC,CAAC;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"delete_footnote.d.ts","sourceRoot":"","sources":["../../src/tools/delete_footnote.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAgC,MAAM,uBAAuB,CAAC;AAGrF,OAAO,EAAW,KAAK,YAAY,EAAE,MAAM,YAAY,CAAC;AAExD,wBAAsB,cAAc,CAClC,OAAO,EAAE,cAAc,EACvB,MAAM,EAAE;IACN,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,GACA,OAAO,CAAC,YAAY,CAAC,CA+BvB"}
1
+ {"version":3,"file":"delete_footnote.d.ts","sourceRoot":"","sources":["../../src/tools/delete_footnote.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAgC,MAAM,uBAAuB,CAAC;AAGrF,OAAO,EAAW,KAAK,YAAY,EAAE,MAAM,YAAY,CAAC;AASxD,wBAAsB,cAAc,CAClC,OAAO,EAAE,cAAc,EACvB,MAAM,EAAE;IACN,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,GACA,OAAO,CAAC,YAAY,CAAC,CAqCvB"}
@@ -2,6 +2,11 @@ import { getRevisionContextForSession } from '../session/manager.js';
2
2
  import { errorMessage } from "../error_utils.js";
3
3
  import { resolveSessionForTool, mergeSessionResolutionMetadata } from './session_resolution.js';
4
4
  import { ok, err } from './types.js';
5
+ import { preflightAiRevisionMutation } from './ai_revision_guard.js';
6
+ const FOOTNOTE_TOUCHED_CONTEXT = {
7
+ relationshipParts: ['word/_rels/document.xml.rels'],
8
+ sideParts: ['word/footnotes.xml'],
9
+ };
5
10
  export async function deleteFootnote(manager, params) {
6
11
  const resolved = await resolveSessionForTool(manager, params, { toolName: 'delete_footnote' });
7
12
  if (!resolved.ok)
@@ -12,7 +17,11 @@ export async function deleteFootnote(manager, params) {
12
17
  return err('MISSING_PARAMETER', 'note_id is required.', 'Provide the footnote ID to delete.');
13
18
  }
14
19
  try {
15
- await session.doc.deleteFootnote({ noteId: params.note_id }, ctx);
20
+ const mutate = (doc, activeCtx) => doc.deleteFootnote({ noteId: params.note_id }, activeCtx);
21
+ const revisionPreflight = await preflightAiRevisionMutation(session, ctx, mutate, FOOTNOTE_TOUCHED_CONTEXT);
22
+ if (revisionPreflight)
23
+ return revisionPreflight;
24
+ await mutate(session.doc, ctx);
16
25
  manager.markEdited(session);
17
26
  return ok(mergeSessionResolutionMetadata({
18
27
  note_id: params.note_id,
@@ -1 +1 @@
1
- {"version":3,"file":"delete_footnote.js","sourceRoot":"","sources":["../../src/tools/delete_footnote.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,4BAA4B,EAAE,MAAM,uBAAuB,CAAC;AACrF,OAAO,EAAa,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAE,qBAAqB,EAAE,8BAA8B,EAAE,MAAM,yBAAyB,CAAC;AAChG,OAAO,EAAE,EAAE,EAAE,GAAG,EAAqB,MAAM,YAAY,CAAC;AAExD,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,OAAuB,EACvB,MAGC;IAED,MAAM,QAAQ,GAAG,MAAM,qBAAqB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,iBAAiB,EAAE,CAAC,CAAC;IAC/F,IAAI,CAAC,QAAQ,CAAC,EAAE;QAAE,OAAO,QAAQ,CAAC,QAAQ,CAAC;IAC3C,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,QAAQ,CAAC;IACvC,MAAM,GAAG,GAAG,MAAM,4BAA4B,CAAC,OAAO,CAAC,CAAC;IAExD,IAAI,MAAM,CAAC,OAAO,IAAI,IAAI,EAAE,CAAC;QAC3B,OAAO,GAAG,CAAC,mBAAmB,EAAE,sBAAsB,EAAE,oCAAoC,CAAC,CAAC;IAChG,CAAC;IAED,IAAI,CAAC;QACH,MAAM,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,OAAO,EAAE,EAAE,GAAG,CAAC,CAAC;QAElE,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QAC5B,OAAO,EAAE,CAAC,8BAA8B,CAAC;YACvC,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,SAAS,EAAE,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,YAAY,CAAC;SACvD,EAAE,QAAQ,CAAC,CAAC,CAAC;IAChB,CAAC;IAAC,OAAO,CAAU,EAAE,CAAC;QACpB,MAAM,GAAG,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;QAC5B,IAAI,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YAC7B,OAAO,GAAG,CAAC,eAAe,EAAE,GAAG,EAAE,0EAA0E,CAAC,CAAC;QAC/G,CAAC;QACD,IAAI,GAAG,CAAC,QAAQ,CAAC,2CAA2C,CAAC,EAAE,CAAC;YAC9D,OAAO,GAAG,CAAC,gBAAgB,EAAE,eAAe,MAAM,CAAC,OAAO,YAAY,EAAE,gDAAgD,CAAC,CAAC;QAC5H,CAAC;QACD,IAAI,GAAG,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;YAC9B,OAAO,GAAG,CAAC,gBAAgB,EAAE,GAAG,EAAE,gDAAgD,CAAC,CAAC;QACtF,CAAC;QACD,OAAO,GAAG,CAAC,gBAAgB,EAAE,GAAG,CAAC,CAAC;IACpC,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"delete_footnote.js","sourceRoot":"","sources":["../../src/tools/delete_footnote.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,4BAA4B,EAAE,MAAM,uBAAuB,CAAC;AACrF,OAAO,EAAa,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAE,qBAAqB,EAAE,8BAA8B,EAAE,MAAM,yBAAyB,CAAC;AAChG,OAAO,EAAE,EAAE,EAAE,GAAG,EAAqB,MAAM,YAAY,CAAC;AAExD,OAAO,EAAE,2BAA2B,EAAE,MAAM,wBAAwB,CAAC;AAErE,MAAM,wBAAwB,GAAG;IAC/B,iBAAiB,EAAE,CAAC,8BAA8B,CAAC;IACnD,SAAS,EAAE,CAAC,oBAAoB,CAAC;CAClC,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,OAAuB,EACvB,MAGC;IAED,MAAM,QAAQ,GAAG,MAAM,qBAAqB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,iBAAiB,EAAE,CAAC,CAAC;IAC/F,IAAI,CAAC,QAAQ,CAAC,EAAE;QAAE,OAAO,QAAQ,CAAC,QAAQ,CAAC;IAC3C,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,QAAQ,CAAC;IACvC,MAAM,GAAG,GAAG,MAAM,4BAA4B,CAAC,OAAO,CAAC,CAAC;IAExD,IAAI,MAAM,CAAC,OAAO,IAAI,IAAI,EAAE,CAAC;QAC3B,OAAO,GAAG,CAAC,mBAAmB,EAAE,sBAAsB,EAAE,oCAAoC,CAAC,CAAC;IAChG,CAAC;IAED,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,CAAC,GAAiB,EAAE,SAAsC,EAAE,EAAE,CAC3E,GAAG,CAAC,cAAc,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,OAAQ,EAAE,EAAE,SAAS,CAAC,CAAC;QAE7D,MAAM,iBAAiB,GAAG,MAAM,2BAA2B,CAAC,OAAO,EAAE,GAAG,EAAE,MAAM,EAAE,wBAAwB,CAAC,CAAC;QAC5G,IAAI,iBAAiB;YAAE,OAAO,iBAAiB,CAAC;QAEhD,MAAM,MAAM,CAAC,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QAE/B,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QAC5B,OAAO,EAAE,CAAC,8BAA8B,CAAC;YACvC,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,SAAS,EAAE,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,YAAY,CAAC;SACvD,EAAE,QAAQ,CAAC,CAAC,CAAC;IAChB,CAAC;IAAC,OAAO,CAAU,EAAE,CAAC;QACpB,MAAM,GAAG,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;QAC5B,IAAI,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC;YAC7B,OAAO,GAAG,CAAC,eAAe,EAAE,GAAG,EAAE,0EAA0E,CAAC,CAAC;QAC/G,CAAC;QACD,IAAI,GAAG,CAAC,QAAQ,CAAC,2CAA2C,CAAC,EAAE,CAAC;YAC9D,OAAO,GAAG,CAAC,gBAAgB,EAAE,eAAe,MAAM,CAAC,OAAO,YAAY,EAAE,gDAAgD,CAAC,CAAC;QAC5H,CAAC;QACD,IAAI,GAAG,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;YAC9B,OAAO,GAAG,CAAC,gBAAgB,EAAE,GAAG,EAAE,gDAAgD,CAAC,CAAC;QACtF,CAAC;QACD,OAAO,GAAG,CAAC,gBAAgB,EAAE,GAAG,CAAC,CAAC;IACpC,CAAC;AACH,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"format_layout.d.ts","sourceRoot":"","sources":["../../src/tools/format_layout.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAgC,MAAM,uBAAuB,CAAC;AAErF,OAAO,EAAW,KAAK,YAAY,EAAE,MAAM,YAAY,CAAC;AAWxD,KAAK,qBAAqB,GAAG;IAC3B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB,CAAC;AAEF,KAAK,cAAc,GAAG;IACpB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB,CAAC;AAEF,KAAK,gBAAgB,GAAG;IACtB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB,CAAC;AAEF,KAAK,kBAAkB,GAAG;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,iBAAiB,CAAC,EAAE,qBAAqB,CAAC;IAC1C,UAAU,CAAC,EAAE,cAAc,CAAC;IAC5B,YAAY,CAAC,EAAE,gBAAgB,CAAC;CACjC,CAAC;AA6MF,wBAAsB,YAAY,CAChC,OAAO,EAAE,cAAc,EACvB,MAAM,EAAE,kBAAkB,GACzB,OAAO,CAAC,YAAY,CAAC,CAiMvB"}
1
+ {"version":3,"file":"format_layout.d.ts","sourceRoot":"","sources":["../../src/tools/format_layout.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAgC,MAAM,uBAAuB,CAAC;AAErF,OAAO,EAAW,KAAK,YAAY,EAAE,MAAM,YAAY,CAAC;AAYxD,KAAK,qBAAqB,GAAG;IAC3B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB,CAAC;AAEF,KAAK,cAAc,GAAG;IACpB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB,CAAC;AAEF,KAAK,gBAAgB,GAAG;IACtB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB,CAAC;AAEF,KAAK,kBAAkB,GAAG;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,iBAAiB,CAAC,EAAE,qBAAqB,CAAC;IAC1C,UAAU,CAAC,EAAE,cAAc,CAAC;IAC5B,YAAY,CAAC,EAAE,gBAAgB,CAAC;CACjC,CAAC;AA6MF,wBAAsB,YAAY,CAChC,OAAO,EAAE,cAAc,EACvB,MAAM,EAAE,kBAAkB,GACzB,OAAO,CAAC,YAAY,CAAC,CAmNvB"}
@@ -2,6 +2,7 @@ import { getRevisionContextForSession } from '../session/manager.js';
2
2
  import { errorMessage } from "../error_utils.js";
3
3
  import { err, ok } from './types.js';
4
4
  import { mergeSessionResolutionMetadata, resolveSessionForTool } from './session_resolution.js';
5
+ import { preflightAiRevisionMutation } from './ai_revision_guard.js';
5
6
  import { DocxDocument } from '@usejunior/docx-core';
6
7
  const LINE_RULES = new Set(['auto', 'exact', 'atLeast']);
7
8
  const ROW_HEIGHT_RULES = new Set(['auto', 'exact', 'atLeast']);
@@ -244,6 +245,21 @@ export async function formatLayout(manager, params) {
244
245
  }
245
246
  const paragraphCountBefore = session.doc.getParagraphs().length;
246
247
  const warnings = [];
248
+ const revisionPreflight = await preflightAiRevisionMutation(session, ctx, (previewDoc, previewCtx) => {
249
+ const previewParagraphCountBefore = previewDoc.getParagraphs().length;
250
+ if (paragraphSpacing)
251
+ previewDoc.setParagraphSpacing(paragraphSpacing, previewCtx);
252
+ if (rowHeight)
253
+ previewDoc.setTableRowHeight(rowHeight, previewCtx);
254
+ if (cellPadding)
255
+ previewDoc.setTableCellPadding(cellPadding, previewCtx);
256
+ const previewParagraphCountAfter = previewDoc.getParagraphs().length;
257
+ if (previewParagraphCountAfter !== previewParagraphCountBefore) {
258
+ throw new Error(`Layout formatting changed paragraph count (${previewParagraphCountBefore} -> ${previewParagraphCountAfter}).`);
259
+ }
260
+ });
261
+ if (revisionPreflight)
262
+ return revisionPreflight;
247
263
  const paragraphSpacingResult = paragraphSpacing ? session.doc.setParagraphSpacing(paragraphSpacing, ctx) : null;
248
264
  const rowHeightResult = rowHeight ? session.doc.setTableRowHeight(rowHeight, ctx) : null;
249
265
  const cellPaddingResult = cellPadding ? session.doc.setTableCellPadding(cellPadding, ctx) : null;
@@ -1 +1 @@
1
- {"version":3,"file":"format_layout.js","sourceRoot":"","sources":["../../src/tools/format_layout.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,4BAA4B,EAAE,MAAM,uBAAuB,CAAC;AACrF,OAAO,EAAa,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAE,GAAG,EAAE,EAAE,EAAqB,MAAM,YAAY,CAAC;AACxD,OAAO,EAAE,8BAA8B,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAQhG,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAmCpD,MAAM,UAAU,GAAG,IAAI,GAAG,CAAkB,CAAC,MAAM,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC;AAC1E,MAAM,gBAAgB,GAAG,IAAI,GAAG,CAAgB,CAAC,MAAM,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC;AAQ9E,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC9E,CAAC;AAED,SAAS,eAAe,CAAC,OAAe,EAAE,IAAY;IACpD,OAAO,EAAE,IAAI,EAAE,kBAAkB,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AACrD,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAc;IACvC,OAAO,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,IAAI,KAAK,kBAAkB,CAAC;AAC9D,CAAC;AAED,SAAS,SAAS,CAAC,KAAc;IAC/B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;AACxF,CAAC;AAED,SAAS,uBAAuB,CAAC,IAAY,EAAE,KAAc;IAC3D,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;QACtB,OAAO,eAAe,CAAC,GAAG,IAAI,sBAAsB,EAAE,2BAA2B,IAAI,GAAG,CAAC,CAAC;IAC5F,CAAC;IACD,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;QACd,OAAO,eAAe,CAAC,GAAG,IAAI,gBAAgB,EAAE,kCAAkC,IAAI,GAAG,CAAC,CAAC;IAC7F,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,+BAA+B,CAAC,IAAY,EAAE,KAAc;IACnE,IAAI,OAAO,KAAK,KAAK,WAAW;QAAE,OAAO,SAAS,CAAC;IACnD,OAAO,uBAAuB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;AAC9C,CAAC;AAED,SAAS,eAAe,CAAC,IAAY,EAAE,KAAc;IACnD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAChD,OAAO,eAAe,CAAC,GAAG,IAAI,wCAAwC,EAAE,0CAA0C,IAAI,GAAG,CAAC,CAAC;IAC7H,CAAC;IAED,MAAM,GAAG,GAAa,EAAE,CAAC;IACzB,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACtC,MAAM,MAAM,GAAG,uBAAuB,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;QAClE,IAAI,iBAAiB,CAAC,MAAM,CAAC;YAAE,OAAO,MAAM,CAAC;QAC7C,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;YACtB,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;YACjB,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACnB,CAAC;IACH,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,uBAAuB,CAAC,IAAY,EAAE,KAAc;IAC3D,IAAI,OAAO,KAAK,KAAK,WAAW;QAAE,OAAO,SAAS,CAAC;IACnD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAChD,OAAO,eAAe,CAAC,GAAG,IAAI,2CAA2C,EAAE,UAAU,IAAI,0CAA0C,CAAC,CAAC;IACvI,CAAC;IACD,OAAO,eAAe,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;AACtC,CAAC;AAED,SAAS,6BAA6B,CAAC,KAAc;IACnD,IAAI,OAAO,KAAK,KAAK,WAAW;QAAE,OAAO,IAAI,CAAC;IAC9C,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACrB,OAAO,eAAe,CAAC,sCAAsC,EAAE,kEAAkE,CAAC,CAAC;IACrI,CAAC;IAED,MAAM,MAAM,GAAG,KAAK,CAAC,aAAa,CAAC;IACnC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAClD,OAAO,eAAe,CAAC,4DAA4D,EAAE,qCAAqC,CAAC,CAAC;IAC9H,CAAC;IACD,MAAM,YAAY,GAAa,EAAE,CAAC;IAClC,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACvC,MAAM,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QACrB,IAAI,OAAO,EAAE,KAAK,QAAQ,IAAI,EAAE,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACrD,OAAO,eAAe,CAAC,mCAAmC,CAAC,+BAA+B,EAAE,sCAAsC,CAAC,CAAC;QACtI,CAAC;QACD,MAAM,OAAO,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC;QAC1B,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;YACvB,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YAClB,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC7B,CAAC;IACH,CAAC;IAED,MAAM,WAAW,GAAG,+BAA+B,CAAC,gCAAgC,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC;IAC1G,IAAI,iBAAiB,CAAC,WAAW,CAAC;QAAE,OAAO,WAAW,CAAC;IACvD,MAAM,UAAU,GAAG,+BAA+B,CAAC,+BAA+B,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;IACvG,IAAI,iBAAiB,CAAC,UAAU,CAAC;QAAE,OAAO,UAAU,CAAC;IACrD,MAAM,SAAS,GAAG,+BAA+B,CAAC,8BAA8B,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;IACpG,IAAI,iBAAiB,CAAC,SAAS,CAAC;QAAE,OAAO,SAAS,CAAC;IAEnD,IAAI,QAAqC,CAAC;IAC1C,IAAI,OAAO,KAAK,CAAC,SAAS,KAAK,WAAW,EAAE,CAAC;QAC3C,IAAI,OAAO,KAAK,CAAC,SAAS,KAAK,QAAQ,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,SAA4B,CAAC,EAAE,CAAC;YAC/F,OAAO,eAAe,CACpB,yCAAyC,EACzC,yCAAyC,CAC1C,CAAC;QACJ,CAAC;QACD,QAAQ,GAAG,KAAK,CAAC,SAA4B,CAAC;IAChD,CAAC;IAED,IACE,OAAO,WAAW,KAAK,WAAW;WAC/B,OAAO,UAAU,KAAK,WAAW;WACjC,OAAO,SAAS,KAAK,WAAW;WAChC,OAAO,QAAQ,KAAK,WAAW,EAClC,CAAC;QACD,OAAO,eAAe,CACpB,2DAA2D,EAC3D,0EAA0E,CAC3E,CAAC;IACJ,CAAC;IAED,OAAO;QACL,YAAY;QACZ,WAAW;QACX,UAAU;QACV,SAAS;QACT,QAAQ;KACT,CAAC;AACJ,CAAC;AAED,SAAS,sBAAsB,CAAC,KAAc;IAC5C,IAAI,OAAO,KAAK,KAAK,WAAW;QAAE,OAAO,IAAI,CAAC;IAC9C,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACrB,OAAO,eAAe,CAAC,+BAA+B,EAAE,+DAA+D,CAAC,CAAC;IAC3H,CAAC;IAED,MAAM,YAAY,GAAG,eAAe,CAAC,0BAA0B,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC;IACtF,IAAI,iBAAiB,CAAC,YAAY,CAAC;QAAE,OAAO,YAAY,CAAC;IAEzD,MAAM,UAAU,GAAG,uBAAuB,CAAC,wBAAwB,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;IACxF,IAAI,iBAAiB,CAAC,UAAU,CAAC;QAAE,OAAO,UAAU,CAAC;IAErD,MAAM,UAAU,GAAG,uBAAuB,CAAC,wBAAwB,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;IACxF,IAAI,iBAAiB,CAAC,UAAU,CAAC;QAAE,OAAO,UAAU,CAAC;IAErD,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,KAAK,CAAC,IAAqB,CAAC,EAAE,CAAC;QACzF,OAAO,eAAe,CAAC,6BAA6B,EAAE,yCAAyC,CAAC,CAAC;IACnG,CAAC;IAED,OAAO;QACL,YAAY;QACZ,UAAU;QACV,UAAU;QACV,IAAI,EAAE,KAAK,CAAC,IAAqB;KAClC,CAAC;AACJ,CAAC;AAED,SAAS,wBAAwB,CAAC,KAAc;IAC9C,IAAI,OAAO,KAAK,KAAK,WAAW;QAAE,OAAO,IAAI,CAAC;IAC9C,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QACrB,OAAO,eAAe,CAAC,iCAAiC,EAAE,kEAAkE,CAAC,CAAC;IAChI,CAAC;IAED,MAAM,YAAY,GAAG,eAAe,CAAC,4BAA4B,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC;IACxF,IAAI,iBAAiB,CAAC,YAAY,CAAC;QAAE,OAAO,YAAY,CAAC;IAEzD,MAAM,UAAU,GAAG,uBAAuB,CAAC,0BAA0B,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;IAC1F,IAAI,iBAAiB,CAAC,UAAU,CAAC;QAAE,OAAO,UAAU,CAAC;IAErD,MAAM,WAAW,GAAG,uBAAuB,CAAC,2BAA2B,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC;IAC7F,IAAI,iBAAiB,CAAC,WAAW,CAAC;QAAE,OAAO,WAAW,CAAC;IAEvD,MAAM,MAAM,GAAG,+BAA+B,CAAC,sBAAsB,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;IACtF,IAAI,iBAAiB,CAAC,MAAM,CAAC;QAAE,OAAO,MAAM,CAAC;IAC7C,MAAM,SAAS,GAAG,+BAA+B,CAAC,yBAAyB,EAAE,KAAK,CAAC,UAAU,CAAC,CAAC;IAC/F,IAAI,iBAAiB,CAAC,SAAS,CAAC;QAAE,OAAO,SAAS,CAAC;IACnD,MAAM,OAAO,GAAG,+BAA+B,CAAC,uBAAuB,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;IACzF,IAAI,iBAAiB,CAAC,OAAO,CAAC;QAAE,OAAO,OAAO,CAAC;IAC/C,MAAM,QAAQ,GAAG,+BAA+B,CAAC,wBAAwB,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;IAC5F,IAAI,iBAAiB,CAAC,QAAQ,CAAC;QAAE,OAAO,QAAQ,CAAC;IAEjD,IACE,OAAO,MAAM,KAAK,WAAW;WAC1B,OAAO,SAAS,KAAK,WAAW;WAChC,OAAO,OAAO,KAAK,WAAW;WAC9B,OAAO,QAAQ,KAAK,WAAW,EAClC,CAAC;QACD,OAAO,eAAe,CACpB,gDAAgD,EAChD,kEAAkE,CACnE,CAAC;IACJ,CAAC;IAED,OAAO;QACL,YAAY;QACZ,UAAU;QACV,WAAW;QACX,MAAM;QACN,SAAS;QACT,OAAO;QACP,QAAQ;KACT,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,OAAuB,EACvB,MAA0B;IAE1B,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,qBAAqB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,eAAe,EAAE,CAAC,CAAC;QAC7F,IAAI,CAAC,QAAQ,CAAC,EAAE;YAAE,OAAO,QAAQ,CAAC,QAAQ,CAAC;QAC3C,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,QAAQ,CAAC;QACvC,MAAM,GAAG,GAAG,MAAM,4BAA4B,CAAC,OAAO,CAAC,CAAC;QAExD,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,IAAI,IAAI,CAAC;QACrC,IAAI,OAAO,MAAM,KAAK,SAAS,EAAE,CAAC;YAChC,OAAO,GAAG,CAAC,kBAAkB,EAAE,2BAA2B,EAAE,8BAA8B,CAAC,CAAC;QAC9F,CAAC;QAED,MAAM,gBAAgB,GAAG,6BAA6B,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC;QACjF,IAAI,iBAAiB,CAAC,gBAAgB,CAAC,EAAE,CAAC;YACxC,OAAO,GAAG,CAAC,kBAAkB,EAAE,gBAAgB,CAAC,OAAO,EAAE,gBAAgB,CAAC,IAAI,CAAC,CAAC;QAClF,CAAC;QAED,MAAM,SAAS,GAAG,sBAAsB,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QAC5D,IAAI,iBAAiB,CAAC,SAAS,CAAC,EAAE,CAAC;YACjC,OAAO,GAAG,CAAC,kBAAkB,EAAE,SAAS,CAAC,OAAO,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;QACpE,CAAC;QAED,MAAM,WAAW,GAAG,wBAAwB,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;QAClE,IAAI,iBAAiB,CAAC,WAAW,CAAC,EAAE,CAAC;YACnC,OAAO,GAAG,CAAC,kBAAkB,EAAE,WAAW,CAAC,OAAO,EAAE,WAAW,CAAC,IAAI,CAAC,CAAC;QACxE,CAAC;QAED,IAAI,CAAC,gBAAgB,IAAI,CAAC,SAAS,IAAI,CAAC,WAAW,EAAE,CAAC;YACpD,OAAO,GAAG,CACR,kBAAkB,EAClB,mCAAmC,EACnC,yEAAyE,CAC1E,CAAC;QACJ,CAAC;QAED,IAAI,gBAAgB,IAAI,MAAM,EAAE,CAAC;YAC/B,MAAM,OAAO,GAAG,gBAAgB,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,EAAE,CAAC,KAAK,IAAI,CAAC,CAAC;YAC/G,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACvB,OAAO,GAAG,CACR,kBAAkB,EAClB,uDAAuD,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAC3E,6EAA6E,CAC9E,CAAC;YACJ,CAAC;QACH,CAAC;QAED,IAAI,MAAM,IAAI,CAAC,SAAS,IAAI,WAAW,CAAC,EAAE,CAAC;YACzC,wEAAwE;YACxE,uDAAuD;YACvD,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC,CAAC;YACvE,MAAM,UAAU,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YAE5D,IAAI,SAAS,EAAE,CAAC;gBACd,MAAM,UAAU,GAAG,UAAU,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;gBAC3D,IAAI,UAAU,CAAC,mBAAmB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC9C,OAAO,GAAG,CACR,kBAAkB,EAClB,qCAAqC,UAAU,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAChF,oDAAoD,CACrD,CAAC;gBACJ,CAAC;gBACD,IAAI,UAAU,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC5C,OAAO,GAAG,CACR,kBAAkB,EAClB,mCAAmC,UAAU,CAAC,iBAAiB;yBAC5D,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC;yBAC3C,IAAI,CAAC,IAAI,CAAC,EAAE,EACf,oDAAoD,CACrD,CAAC;gBACJ,CAAC;YACH,CAAC;YAED,IAAI,WAAW,EAAE,CAAC;gBAChB,MAAM,WAAW,GAAG,UAAU,CAAC,mBAAmB,CAAC,WAAW,CAAC,CAAC;gBAChE,IAAI,WAAW,CAAC,mBAAmB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC/C,OAAO,GAAG,CACR,kBAAkB,EAClB,uCAAuC,WAAW,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EACnF,oDAAoD,CACrD,CAAC;gBACJ,CAAC;gBACD,IAAI,WAAW,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC7C,OAAO,GAAG,CACR,kBAAkB,EAClB,qCAAqC,WAAW,CAAC,iBAAiB;yBAC/D,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC;yBAC3C,IAAI,CAAC,IAAI,CAAC,EAAE,EACf,oDAAoD,CACrD,CAAC;gBACJ,CAAC;gBACD,IAAI,WAAW,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC9C,OAAO,GAAG,CACR,kBAAkB,EAClB,sCAAsC,WAAW,CAAC,kBAAkB;yBACjE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,SAAS,EAAE,CAAC;yBAC1D,IAAI,CAAC,IAAI,CAAC,EAAE,EACf,oDAAoD,CACrD,CAAC;gBACJ,CAAC;YACH,CAAC;QACH,CAAC;QAED,MAAM,oBAAoB,GAAG,OAAO,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC,MAAM,CAAC;QAChE,MAAM,QAAQ,GAAa,EAAE,CAAC;QAE9B,MAAM,sBAAsB,GAAG,gBAAgB,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,gBAAgB,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAChH,MAAM,eAAe,GAAG,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QACzF,MAAM,iBAAiB,GAAG,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;QAEjG,MAAM,mBAAmB,GAAG,OAAO,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC,MAAM,CAAC;QAC/D,IAAI,mBAAmB,KAAK,oBAAoB,EAAE,CAAC;YACjD,OAAO,GAAG,CACR,qBAAqB,EACrB,8CAA8C,oBAAoB,OAAO,mBAAmB,IAAI,EAChG,kGAAkG,CACnG,CAAC;QACJ,CAAC;QAED,IAAI,sBAAsB,IAAI,sBAAsB,CAAC,mBAAmB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACpF,MAAM,OAAO,GAAG,oDAAoD,sBAAsB,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YAC5H,IAAI,MAAM,EAAE,CAAC;gBACX,OAAO,GAAG,CAAC,kBAAkB,EAAE,OAAO,EAAE,oDAAoD,CAAC,CAAC;YAChG,CAAC;YACD,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACzB,CAAC;QACD,IAAI,eAAe,EAAE,CAAC;YACpB,IAAI,eAAe,CAAC,mBAAmB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACnD,MAAM,OAAO,GAAG,qCAAqC,eAAe,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBACtG,IAAI,MAAM;oBAAE,OAAO,GAAG,CAAC,kBAAkB,EAAE,OAAO,EAAE,oDAAoD,CAAC,CAAC;gBAC1G,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACzB,CAAC;YACD,IAAI,eAAe,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACjD,MAAM,OAAO,GAAG,mCAAmC,eAAe,CAAC,iBAAiB;qBACjF,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC;qBAC3C,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBAChB,IAAI,MAAM;oBAAE,OAAO,GAAG,CAAC,kBAAkB,EAAE,OAAO,EAAE,oDAAoD,CAAC,CAAC;gBAC1G,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACzB,CAAC;QACH,CAAC;QACD,IAAI,iBAAiB,EAAE,CAAC;YACtB,IAAI,iBAAiB,CAAC,mBAAmB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACrD,MAAM,OAAO,GAAG,uCAAuC,iBAAiB,CAAC,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC1G,IAAI,MAAM;oBAAE,OAAO,GAAG,CAAC,kBAAkB,EAAE,OAAO,EAAE,oDAAoD,CAAC,CAAC;gBAC1G,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACzB,CAAC;YACD,IAAI,iBAAiB,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACnD,MAAM,OAAO,GAAG,qCAAqC,iBAAiB,CAAC,iBAAiB;qBACrF,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC;qBAC3C,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBAChB,IAAI,MAAM;oBAAE,OAAO,GAAG,CAAC,kBAAkB,EAAE,OAAO,EAAE,oDAAoD,CAAC,CAAC;gBAC1G,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACzB,CAAC;YACD,IAAI,iBAAiB,CAAC,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACpD,MAAM,OAAO,GAAG,sCAAsC,iBAAiB,CAAC,kBAAkB;qBACvF,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,QAAQ,IAAI,CAAC,CAAC,SAAS,EAAE,CAAC;qBAC1D,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBAChB,IAAI,MAAM;oBAAE,OAAO,GAAG,CAAC,kBAAkB,EAAE,OAAO,EAAE,oDAAoD,CAAC,CAAC;gBAC1G,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACzB,CAAC;QACH,CAAC;QAED,MAAM,kBAAkB,GAAG,sBAAsB,EAAE,kBAAkB,IAAI,CAAC,CAAC;QAC3E,MAAM,YAAY,GAAG,eAAe,EAAE,YAAY,IAAI,CAAC,CAAC;QACxD,MAAM,aAAa,GAAG,iBAAiB,EAAE,aAAa,IAAI,CAAC,CAAC;QAC5D,MAAM,aAAa,GAAG,kBAAkB,GAAG,YAAY,GAAG,aAAa,CAAC;QACxE,IAAI,aAAa,GAAG,CAAC,EAAE,CAAC;YACtB,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QAC9B,CAAC;QACD,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAEvB,OAAO,EAAE,CAAC,8BAA8B,CAAC;YACvC,SAAS,EAAE,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,YAAY,CAAC;YACtD,MAAM;YACN,gBAAgB,EAAE;gBAChB,mBAAmB,EAAE,kBAAkB;gBACvC,aAAa,EAAE,YAAY;gBAC3B,cAAc,EAAE,aAAa;aAC9B;YACD,wBAAwB,EAAE,sBAAsB,IAAI,SAAS;YAC7D,iBAAiB,EAAE,eAAe,IAAI,SAAS;YAC/C,mBAAmB,EAAE,iBAAiB,IAAI,SAAS;YACnD,oBAAoB,EAAE,oBAAoB,KAAK,mBAAmB;YAClE,sBAAsB,EAAE,oBAAoB;YAC5C,qBAAqB,EAAE,mBAAmB;YAC1C,QAAQ;YACR,OAAO,EAAE,aAAa,GAAG,CAAC;gBACxB,CAAC,CAAC,wEAAwE;gBAC1E,CAAC,CAAC,mDAAmD;SACxD,EAAE,QAAQ,CAAC,CAAC,CAAC;IAChB,CAAC;IAAC,OAAO,CAAU,EAAE,CAAC;QACpB,MAAM,OAAO,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;QAChC,OAAO,GAAG,CAAC,qBAAqB,EAAE,sCAAsC,OAAO,EAAE,EAAE,kCAAkC,CAAC,CAAC;IACzH,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"format_layout.js","sourceRoot":"","sources":["../../src/tools/format_layout.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"get_comments.d.ts","sourceRoot":"","sources":["../../src/tools/get_comments.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAGvD,OAAO,EAAW,KAAK,YAAY,EAAE,MAAM,YAAY,CAAC;AA2BxD,wBAAsB,WAAW,CAC/B,OAAO,EAAE,cAAc,EACvB,MAAM,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GAC7B,OAAO,CAAC,YAAY,CAAC,CAcvB"}
1
+ {"version":3,"file":"get_comments.d.ts","sourceRoot":"","sources":["../../src/tools/get_comments.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAGvD,OAAO,EAAW,KAAK,YAAY,EAAE,MAAM,YAAY,CAAC;AA4CxD,wBAAsB,WAAW,CAC/B,OAAO,EAAE,cAAc,EACvB,MAAM,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,GAC7B,OAAO,CAAC,YAAY,CAAC,CAcvB"}
@@ -3,6 +3,10 @@ import { resolveSessionForTool, mergeSessionResolutionMetadata } from './session
3
3
  import { ok, err } from './types.js';
4
4
  const MAX_REPLY_DEPTH = 10;
5
5
  function mapComment(c, depth = 0) {
6
+ // The primitive resolver only yields a non-null anchoredParagraphId (and a
7
+ // non-undefined run index) when range markers exist; without them every range
8
+ // field stays undefined so the serialized shape is unchanged for legacy comments.
9
+ const hasRangeMarkers = c.anchoredParagraphId !== null || c.startRunIndex !== undefined || c.endRunIndex !== undefined;
6
10
  return {
7
11
  id: c.id,
8
12
  author: c.author,
@@ -10,6 +14,11 @@ function mapComment(c, depth = 0) {
10
14
  initials: c.initials,
11
15
  text: c.text,
12
16
  anchored_paragraph_id: c.anchoredParagraphId,
17
+ end_paragraph_id: hasRangeMarkers ? c.endParagraphId : undefined,
18
+ start_run_index: c.startRunIndex,
19
+ start_char_offset: c.startCharOffset,
20
+ end_run_index: c.endRunIndex,
21
+ end_char_offset: c.endCharOffset,
13
22
  replies: depth < MAX_REPLY_DEPTH ? c.replies.map((r) => mapComment(r, depth + 1)) : [],
14
23
  };
15
24
  }
@@ -1 +1 @@
1
- {"version":3,"file":"get_comments.js","sourceRoot":"","sources":["../../src/tools/get_comments.ts"],"names":[],"mappings":"AACA,OAAO,EAAa,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAE,qBAAqB,EAAE,8BAA8B,EAAE,MAAM,yBAAyB,CAAC;AAChG,OAAO,EAAE,EAAE,EAAE,GAAG,EAAqB,MAAM,YAAY,CAAC;AAaxD,MAAM,eAAe,GAAG,EAAE,CAAC;AAE3B,SAAS,UAAU,CAAC,CAAU,EAAE,KAAK,GAAG,CAAC;IACvC,OAAO;QACL,EAAE,EAAE,CAAC,CAAC,EAAE;QACR,MAAM,EAAE,CAAC,CAAC,MAAM;QAChB,IAAI,EAAE,CAAC,CAAC,IAAI,IAAI,IAAI;QACpB,QAAQ,EAAE,CAAC,CAAC,QAAQ;QACpB,IAAI,EAAE,CAAC,CAAC,IAAI;QACZ,qBAAqB,EAAE,CAAC,CAAC,mBAAmB;QAC5C,OAAO,EAAE,KAAK,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;KACvF,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,OAAuB,EACvB,MAA8B;IAE9B,MAAM,QAAQ,GAAG,MAAM,qBAAqB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,cAAc,EAAE,CAAC,CAAC;IAC5F,IAAI,CAAC,QAAQ,CAAC,EAAE;QAAE,OAAO,QAAQ,CAAC,QAAQ,CAAC;IAC3C,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,QAAQ,CAAC;IAEvC,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;QACjD,OAAO,EAAE,CAAC,8BAA8B,CAAC;YACvC,QAAQ,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;YAC5C,SAAS,EAAE,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,YAAY,CAAC;SACvD,EAAE,QAAQ,CAAC,CAAC,CAAC;IAChB,CAAC;IAAC,OAAO,CAAU,EAAE,CAAC;QACpB,OAAO,GAAG,CAAC,eAAe,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/C,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"get_comments.js","sourceRoot":"","sources":["../../src/tools/get_comments.ts"],"names":[],"mappings":"AACA,OAAO,EAAa,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,EAAE,qBAAqB,EAAE,8BAA8B,EAAE,MAAM,yBAAyB,CAAC;AAChG,OAAO,EAAE,EAAE,EAAE,GAAG,EAAqB,MAAM,YAAY,CAAC;AAoBxD,MAAM,eAAe,GAAG,EAAE,CAAC;AAE3B,SAAS,UAAU,CAAC,CAAU,EAAE,KAAK,GAAG,CAAC;IACvC,2EAA2E;IAC3E,8EAA8E;IAC9E,kFAAkF;IAClF,MAAM,eAAe,GACnB,CAAC,CAAC,mBAAmB,KAAK,IAAI,IAAI,CAAC,CAAC,aAAa,KAAK,SAAS,IAAI,CAAC,CAAC,WAAW,KAAK,SAAS,CAAC;IACjG,OAAO;QACL,EAAE,EAAE,CAAC,CAAC,EAAE;QACR,MAAM,EAAE,CAAC,CAAC,MAAM;QAChB,IAAI,EAAE,CAAC,CAAC,IAAI,IAAI,IAAI;QACpB,QAAQ,EAAE,CAAC,CAAC,QAAQ;QACpB,IAAI,EAAE,CAAC,CAAC,IAAI;QACZ,qBAAqB,EAAE,CAAC,CAAC,mBAAmB;QAC5C,gBAAgB,EAAE,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS;QAChE,eAAe,EAAE,CAAC,CAAC,aAAa;QAChC,iBAAiB,EAAE,CAAC,CAAC,eAAe;QACpC,aAAa,EAAE,CAAC,CAAC,WAAW;QAC5B,eAAe,EAAE,CAAC,CAAC,aAAa;QAChC,OAAO,EAAE,KAAK,GAAG,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE;KACvF,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,OAAuB,EACvB,MAA8B;IAE9B,MAAM,QAAQ,GAAG,MAAM,qBAAqB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,cAAc,EAAE,CAAC,CAAC;IAC5F,IAAI,CAAC,QAAQ,CAAC,EAAE;QAAE,OAAO,QAAQ,CAAC,QAAQ,CAAC;IAC3C,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,QAAQ,CAAC;IAEvC,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;QACjD,OAAO,EAAE,CAAC,8BAA8B,CAAC;YACvC,QAAQ,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;YAC5C,SAAS,EAAE,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,YAAY,CAAC;SACvD,EAAE,QAAQ,CAAC,CAAC,CAAC;IAChB,CAAC;IAAC,OAAO,CAAU,EAAE,CAAC;QACpB,OAAO,GAAG,CAAC,eAAe,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;IAC/C,CAAC;AACH,CAAC"}
@@ -9,5 +9,10 @@ export declare function insertParagraph(manager: SessionManager, params: {
9
9
  position?: string;
10
10
  style_source_id?: string;
11
11
  target_style?: string;
12
+ /**
13
+ * Internal (not exposed in the MCP tool schema): set by apply_plan, which
14
+ * preflights the whole step sequence once instead of per step.
15
+ */
16
+ skip_ai_revision_preflight?: boolean;
12
17
  }, ctx?: RevisionContext): Promise<ToolResponse>;
13
18
  //# sourceMappingURL=insert_paragraph.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"insert_paragraph.d.ts","sourceRoot":"","sources":["../../src/tools/insert_paragraph.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,eAAe,EAIrB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,cAAc,EAAkD,MAAM,uBAAuB,CAAC;AAEvG,OAAO,EAAW,KAAK,YAAY,EAAE,MAAM,YAAY,CAAC;AAsGxD,wBAAsB,eAAe,CACnC,OAAO,EAAE,cAAc,EACvB,MAAM,EAAE;IACN,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,yBAAyB,EAAE,MAAM,CAAC;IAClC,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,EACD,GAAG,CAAC,EAAE,eAAe,GACpB,OAAO,CAAC,YAAY,CAAC,CA8FvB"}
1
+ {"version":3,"file":"insert_paragraph.d.ts","sourceRoot":"","sources":["../../src/tools/insert_paragraph.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,KAAK,eAAe,EAIrB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,cAAc,EAAgC,MAAM,uBAAuB,CAAC;AAErF,OAAO,EAAW,KAAK,YAAY,EAAE,MAAM,YAAY,CAAC;AAuGxD,wBAAsB,eAAe,CACnC,OAAO,EAAE,cAAc,EACvB,MAAM,EAAE;IACN,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,yBAAyB,EAAE,MAAM,CAAC;IAClC,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,0BAA0B,CAAC,EAAE,OAAO,CAAC;CACtC,EACD,GAAG,CAAC,EAAE,eAAe,GACpB,OAAO,CAAC,YAAY,CAAC,CA6GvB"}
@@ -4,6 +4,7 @@ import { errorMessage } from "../error_utils.js";
4
4
  import { err, ok } from './types.js';
5
5
  import { RESULT_PREVIEW_CHARS, previewText } from './preview.js';
6
6
  import { mergeSessionResolutionMetadata, resolveSessionForTool } from './session_resolution.js';
7
+ import { preflightAiRevisionMutation } from './ai_revision_guard.js';
7
8
  import { splitTaggedText, segmentAddRunProps, } from './tag_parser.js';
8
9
  function mergeAddRunProps(a, b) {
9
10
  const out = { ...a };
@@ -54,8 +55,8 @@ function headerFormattingToAddRunProps(formatting) {
54
55
  add.underline = true;
55
56
  return Object.keys(add).length > 0 ? add : null;
56
57
  }
57
- function findHeaderRoleModelAddRunProps(session, anchorParagraphId) {
58
- const { nodes } = session.doc.buildDocumentView({ includeSemanticTags: false });
58
+ function findHeaderRoleModelAddRunProps(doc, anchorParagraphId) {
59
+ const { nodes } = doc.buildDocumentView({ includeSemanticTags: false });
59
60
  const anchorIdx = nodes.findIndex((n) => n.id === anchorParagraphId);
60
61
  if (anchorIdx < 0)
61
62
  return null;
@@ -133,30 +134,39 @@ export async function insertParagraph(manager, params, ctx) {
133
134
  return err(errorMessage(e), `Tag parse error in new_string: ${errorMessage(e)}`);
134
135
  }
135
136
  const plainParagraphs = paragraphInputs.map((p) => stripAllInlineTags(p));
136
- const res = session.doc.insertParagraph({
137
- positionalAnchorNodeId: params.positional_anchor_node_id,
138
- relativePosition: positionUpper,
139
- newText: plainParagraphs.join('\n\n'),
140
- styleSourceId: styleSourceId,
141
- }, revisionCtx);
142
- const needsHeaderRoleModel = parsedParagraphs.some((segs) => segs.some((s) => s.header));
143
- const headerAddProps = needsHeaderRoleModel
144
- ? findHeaderRoleModelAddRunProps(session, params.positional_anchor_node_id)
145
- : null;
146
- for (let i = 0; i < res.newParagraphIds.length; i++) {
147
- const newPid = res.newParagraphIds[i];
148
- const segs = parsedParagraphs[i] ?? [];
149
- const plainText = plainParagraphs[i] ?? '';
150
- const pEl = session.doc.getParagraphElementById(newPid);
151
- if (!pEl)
152
- continue;
153
- const runs = getParagraphRuns(pEl);
154
- const templateRun = chooseRunByOverlap(runs, 0, Math.max(plainText.length, 1)) ?? runs[0]?.r ?? null;
155
- const replacementParts = buildReplacementPartsForInsert(segs, templateRun, headerAddProps);
156
- if (!replacementParts || replacementParts.length === 0)
157
- continue;
158
- session.doc.replaceText({ targetParagraphId: newPid, findText: plainText, replaceText: replacementParts });
159
- }
137
+ const mutate = (doc, activeCtx) => {
138
+ const res = doc.insertParagraph({
139
+ positionalAnchorNodeId: params.positional_anchor_node_id,
140
+ relativePosition: positionUpper,
141
+ newText: plainParagraphs.join('\n\n'),
142
+ styleSourceId: styleSourceId,
143
+ }, activeCtx);
144
+ const needsHeaderRoleModel = parsedParagraphs.some((segs) => segs.some((s) => s.header));
145
+ const headerAddProps = needsHeaderRoleModel
146
+ ? findHeaderRoleModelAddRunProps(doc, params.positional_anchor_node_id)
147
+ : null;
148
+ for (let i = 0; i < res.newParagraphIds.length; i++) {
149
+ const newPid = res.newParagraphIds[i];
150
+ const segs = parsedParagraphs[i] ?? [];
151
+ const plainText = plainParagraphs[i] ?? '';
152
+ const pEl = doc.getParagraphElementById(newPid);
153
+ if (!pEl)
154
+ continue;
155
+ const runs = getParagraphRuns(pEl);
156
+ const templateRun = chooseRunByOverlap(runs, 0, Math.max(plainText.length, 1)) ?? runs[0]?.r ?? null;
157
+ const replacementParts = buildReplacementPartsForInsert(segs, templateRun, headerAddProps);
158
+ if (!replacementParts || replacementParts.length === 0)
159
+ continue;
160
+ doc.replaceText({ targetParagraphId: newPid, findText: plainText, replaceText: replacementParts });
161
+ }
162
+ return res;
163
+ };
164
+ const revisionPreflight = params.skip_ai_revision_preflight
165
+ ? null
166
+ : await preflightAiRevisionMutation(session, revisionCtx, (doc, activeCtx) => { mutate(doc, activeCtx); });
167
+ if (revisionPreflight)
168
+ return revisionPreflight;
169
+ const res = mutate(session.doc, revisionCtx);
160
170
  manager.markEdited(session);
161
171
  const responseData = {
162
172
  success: true,
@@ -1 +1 @@
1
- {"version":3,"file":"insert_paragraph.js","sourceRoot":"","sources":["../../src/tools/insert_paragraph.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAChB,gBAAgB,EAEhB,kBAAkB,EAClB,kBAAkB,GAEnB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAkB,4BAA4B,EAAoB,MAAM,uBAAuB,CAAC;AACvG,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,EAAE,GAAG,EAAE,EAAE,EAAqB,MAAM,YAAY,CAAC;AACxD,OAAO,EAAE,oBAAoB,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AACjE,OAAO,EAAE,8BAA8B,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChG,OAAO,EACL,eAAe,EACf,kBAAkB,GAEnB,MAAM,iBAAiB,CAAC;AAEzB,SAAS,gBAAgB,CACvB,CAAiE,EACjE,CAAiE;IAEjE,MAAM,GAAG,GAAgD,EAAE,GAAG,CAAC,EAAE,CAAC;IAClE,IAAI,CAAC,EAAE,CAAC;QACN,IAAI,CAAC,CAAC,IAAI,KAAK,SAAS;YAAE,GAAG,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC;QAC5C,IAAI,CAAC,CAAC,MAAM,KAAK,SAAS;YAAE,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC;QAClD,IAAI,CAAC,CAAC,SAAS,KAAK,SAAS;YAAE,GAAG,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,CAAC;QAC3D,IAAI,CAAC,CAAC,SAAS,KAAK,SAAS;YAAE,GAAG,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,CAAC;QAC3D,IAAI,CAAC,CAAC,QAAQ,KAAK,SAAS;YAAE,GAAG,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC;QACxD,IAAI,CAAC,CAAC,QAAQ,KAAK,SAAS;YAAE,GAAG,CAAC,QAAQ,GAAG,CAAC,CAAC,QAAQ,CAAC;QACxD,IAAI,CAAC,CAAC,KAAK,KAAK,SAAS;YAAE,GAAG,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC;IACjD,CAAC;IACD,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;AACvD,CAAC;AAED,SAAS,kBAAkB,CACzB,IAAyC,EACzC,KAAa,EACb,GAAW;IAEX,IAAI,GAAG,GAAG,CAAC,CAAC;IACZ,IAAI,OAAO,GAAmB,IAAI,CAAC;IACnC,IAAI,IAAI,GAAG,CAAC,CAAC,CAAC;IACd,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,QAAQ,GAAG,GAAG,CAAC;QACrB,MAAM,MAAM,GAAG,GAAG,GAAG,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC;QACrC,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC,CAAC;QAC/E,IAAI,OAAO,GAAG,IAAI,EAAE,CAAC;YACnB,IAAI,GAAG,OAAO,CAAC;YACf,OAAO,GAAG,GAAG,CAAC,CAAC,CAAC;QAClB,CAAC;QACD,GAAG,GAAG,MAAM,CAAC;IACf,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,6BAA6B,CAAC,UAAmB;IACxD,IAAI,CAAC,UAAU,IAAI,OAAO,UAAU,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IAC/D,MAAM,GAAG,GAAG,UAAuE,CAAC;IACpF,MAAM,GAAG,GAAgD,EAAE,CAAC;IAC5D,IAAI,GAAG,CAAC,IAAI,KAAK,IAAI;QAAE,GAAG,CAAC,IAAI,GAAG,IAAI,CAAC;IACvC,IAAI,GAAG,CAAC,MAAM,KAAK,IAAI;QAAE,GAAG,CAAC,MAAM,GAAG,IAAI,CAAC;IAC3C,IAAI,GAAG,CAAC,SAAS,KAAK,IAAI;QAAE,GAAG,CAAC,SAAS,GAAG,IAAI,CAAC;IACjD,OAAO,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;AAClD,CAAC;AAED,SAAS,8BAA8B,CACrC,OAAoB,EACpB,iBAAyB;IAEzB,MAAM,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,EAAE,mBAAmB,EAAE,KAAK,EAAE,CAAC,CAAC;IAChF,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,iBAAiB,CAAC,CAAC;IACrE,IAAI,SAAS,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IAE/B,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC;QAClD,MAAM,UAAU,GAAG,CAAC,SAAS,GAAG,KAAK,EAAE,SAAS,GAAG,KAAK,CAAC,CAAC;QAC1D,KAAK,MAAM,GAAG,IAAI,UAAU,EAAE,CAAC;YAC7B,IAAI,GAAG,GAAG,CAAC,IAAI,GAAG,IAAI,KAAK,CAAC,MAAM;gBAAE,SAAS;YAC7C,MAAM,SAAS,GAAG,KAAK,CAAC,GAAG,CAAE,CAAC;YAC9B,MAAM,GAAG,GAAG,6BAA6B,CAAC,SAAS,CAAC,iBAAiB,CAAC,CAAC;YACvE,IAAI,GAAG;gBAAE,OAAO,GAAG,CAAC;QACtB,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,8BAA8B,CACrC,QAAoC,EACpC,WAA2B,EAC3B,cAAkE;IAElE,MAAM,KAAK,GAAsB,EAAE,CAAC;IAEpC,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;QAC3B,IAAI,CAAC,GAAG,CAAC,IAAI;YAAE,SAAS;QACxB,MAAM,MAAM,GAAG,gBAAgB,CAC7B,kBAAkB,CAAC,GAAG,CAAC,EACvB,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,IAAI,CACnC,CAAC;QAEF,KAAK,CAAC,IAAI,CAAC;YACT,IAAI,EAAE,GAAG,CAAC,IAAI;YACd,WAAW,EAAE,WAAW,IAAI,SAAS;YACrC,WAAW,EAAE,MAAM;SACpB,CAAC,CAAC;IACL,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;AAC3D,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,eAAe,CACnC,OAAuB,EACvB,MAQC,EACD,GAAqB;IAErB,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,qBAAqB,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,kBAAkB,EAAE,CAAC,CAAC;QAChG,IAAI,CAAC,QAAQ,CAAC,EAAE;YAAE,OAAO,QAAQ,CAAC,QAAQ,CAAC;QAC3C,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,QAAQ,CAAC;QACvC,MAAM,WAAW,GAAG,GAAG,IAAI,MAAM,4BAA4B,CAAC,OAAO,CAAC,CAAC;QAEvE,MAAM,aAAa,GAAG,CAAC,MAAM,CAAC,QAAQ,IAAI,OAAO,CAAC,CAAC,WAAW,EAAE,CAAC;QACjE,IAAI,aAAa,KAAK,QAAQ,IAAI,aAAa,KAAK,OAAO,EAAE,CAAC;YAC5D,OAAO,GAAG,CAAC,kBAAkB,EAAE,qBAAqB,MAAM,CAAC,QAAQ,gCAAgC,CAAC,CAAC;QACvG,CAAC;QAED,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC,MAAM,CAAC,yBAAyB,CAAC,CAAC;QACtF,IAAI,UAAU,KAAK,IAAI,EAAE,CAAC;YACxB,OAAO,GAAG,CAAC,kBAAkB,EAAE,gBAAgB,MAAM,CAAC,yBAAyB,wBAAwB,CAAC,CAAC;QAC3G,CAAC;QAED,IAAI,aAAa,GAAG,MAAM,CAAC,eAAe,CAAC;QAC3C,IAAI,CAAC,aAAa,IAAI,MAAM,CAAC,YAAY,EAAE,CAAC;YAC1C,MAAM,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,EAAE,mBAAmB,EAAE,KAAK,EAAE,CAAC,CAAC;YAChF,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,MAAM,CAAC,yBAAyB,CAAC,CAAC;YACpF,IAAI,SAAS,IAAI,CAAC,EAAE,CAAC;gBACnB,IAAI,QAAQ,GAAG,QAAQ,CAAC;gBACxB,IAAI,MAAM,GAAkB,IAAI,CAAC;gBACjC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;oBACtC,IAAI,KAAK,CAAC,CAAC,CAAE,CAAC,KAAK,KAAK,MAAM,CAAC,YAAY,EAAE,CAAC;wBAC5C,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,SAAS,CAAC,CAAC;wBACrC,IAAI,IAAI,GAAG,QAAQ,EAAE,CAAC;4BACpB,QAAQ,GAAG,IAAI,CAAC;4BAChB,MAAM,GAAG,KAAK,CAAC,CAAC,CAAE,CAAC,EAAE,CAAC;wBACxB,CAAC;oBACH,CAAC;gBACH,CAAC;gBACD,IAAI,MAAM;oBAAE,aAAa,GAAG,MAAM,CAAC;YACrC,CAAC;QACH,CAAC;QAED,IAAI,SAAS,GAAG,MAAM,CAAC,UAAU,CAAC;QAClC,IAAI,gBAAgB,CAAC,SAAS,CAAC;YAAE,SAAS,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;QAE3E,MAAM,eAAe,GAAG,SAAS,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACzE,IAAI,gBAAsD,CAAC;QAC3D,IAAI,CAAC;YACH,gBAAgB,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC;QACpE,CAAC;QAAC,OAAO,CAAU,EAAE,CAAC;YACpB,OAAO,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,kCAAkC,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;QACnF,CAAC;QACD,MAAM,eAAe,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,CAAC;QAE1E,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC;YACtC,sBAAsB,EAAE,MAAM,CAAC,yBAAyB;YACxD,gBAAgB,EAAE,aAAmC;YACrD,OAAO,EAAE,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC;YACrC,aAAa,EAAE,aAAa;SAC7B,EAAE,WAAW,CAAC,CAAC;QAEhB,MAAM,oBAAoB,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;QACzF,MAAM,cAAc,GAAG,oBAAoB;YACzC,CAAC,CAAC,8BAA8B,CAAC,OAAO,EAAE,MAAM,CAAC,yBAAyB,CAAC;YAC3E,CAAC,CAAC,IAAI,CAAC;QAET,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,eAAe,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACpD,MAAM,MAAM,GAAG,GAAG,CAAC,eAAe,CAAC,CAAC,CAAE,CAAC;YACvC,MAAM,IAAI,GAAG,gBAAgB,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YACvC,MAAM,SAAS,GAAG,eAAe,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YAC3C,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,MAAM,CAAC,CAAC;YACxD,IAAI,CAAC,GAAG;gBAAE,SAAS;YACnB,MAAM,IAAI,GAAG,gBAAgB,CAAC,GAAG,CAAC,CAAC;YACnC,MAAM,WAAW,GAAG,kBAAkB,CAAC,IAAI,EAAE,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,IAAI,CAAC;YAErG,MAAM,gBAAgB,GAAG,8BAA8B,CAAC,IAAI,EAAE,WAAW,EAAE,cAAc,CAAC,CAAC;YAC3F,IAAI,CAAC,gBAAgB,IAAI,gBAAgB,CAAC,MAAM,KAAK,CAAC;gBAAE,SAAS;YACjE,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,iBAAiB,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE,gBAAgB,EAAE,CAAC,CAAC;QAC7G,CAAC;QAED,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QAE5B,MAAM,YAAY,GAA4B;YAC5C,OAAO,EAAE,IAAI;YACb,SAAS,EAAE,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,YAAY,CAAC;YACtD,UAAU,EAAE,OAAO,CAAC,SAAS;YAC7B,mBAAmB,EAAE,MAAM,CAAC,yBAAyB;YACrD,gBAAgB,EAAE,GAAG,CAAC,cAAc;YACpC,iBAAiB,EAAE,GAAG,CAAC,eAAe;YACtC,QAAQ,EAAE,aAAa;YACvB,aAAa,EAAE,WAAW,CAAC,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,oBAAoB,CAAC;SAC/E,CAAC;QACF,IAAI,GAAG,CAAC,mBAAmB,EAAE,CAAC;YAC5B,YAAY,CAAC,oBAAoB,GAAG,oBAAoB,MAAM,CAAC,eAAe,wDAAwD,CAAC;QACzI,CAAC;QACD,OAAO,EAAE,CAAC,8BAA8B,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC,CAAC;IACpE,CAAC;IAAC,OAAO,CAAU,EAAE,CAAC;QACpB,OAAO,GAAG,CAAC,cAAc,EAAE,+BAA+B,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAC/E,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"insert_paragraph.js","sourceRoot":"","sources":["../../src/tools/insert_paragraph.ts"],"names":[],"mappings":"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"}
@@ -9,5 +9,6 @@ export declare function readFile(manager: SessionManager, params: {
9
9
  show_formatting?: boolean;
10
10
  comment_rendering?: string;
11
11
  include_fingerprint?: boolean;
12
+ include_footnotes?: boolean;
12
13
  }): Promise<ToolResponse>;
13
14
  //# sourceMappingURL=read_file.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"read_file.d.ts","sourceRoot":"","sources":["../../src/tools/read_file.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAEvD,OAAO,EAAW,KAAK,YAAY,EAAE,MAAM,YAAY,CAAC;AAwSxD,wBAAsB,QAAQ,CAC5B,OAAO,EAAE,cAAc,EACvB,MAAM,EAAE;IACN,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,mBAAmB,CAAC,EAAE,OAAO,CAAC;CAC/B,GACA,OAAO,CAAC,YAAY,CAAC,CAqLvB"}
1
+ {"version":3,"file":"read_file.d.ts","sourceRoot":"","sources":["../../src/tools/read_file.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAEvD,OAAO,EAAW,KAAK,YAAY,EAAE,MAAM,YAAY,CAAC;AA6RxD,wBAAsB,QAAQ,CAC5B,OAAO,EAAE,cAAc,EACvB,MAAM,EAAE;IACN,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B,GACA,OAAO,CAAC,YAAY,CAAC,CAkMvB"}