@sireai/optimus 0.1.40 → 0.1.43

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 (85) hide show
  1. package/dist/cli/optimus.js +425 -58
  2. package/dist/cli/optimus.js.map +1 -1
  3. package/dist/config/load-config.js +8 -1
  4. package/dist/config/load-config.js.map +1 -1
  5. package/dist/integrations/feishu/feishu-doc-service.d.ts +14 -2
  6. package/dist/integrations/feishu/feishu-doc-service.js +33 -12
  7. package/dist/integrations/feishu/feishu-doc-service.js.map +1 -1
  8. package/dist/integrations/feishu/feishu-document-reader.d.ts +33 -0
  9. package/dist/integrations/feishu/feishu-document-reader.js +597 -0
  10. package/dist/integrations/feishu/feishu-document-reader.js.map +1 -0
  11. package/dist/integrations/jira/jira-access-manager.d.ts +1 -0
  12. package/dist/integrations/jira/jira-access-manager.js +24 -0
  13. package/dist/integrations/jira/jira-access-manager.js.map +1 -1
  14. package/dist/integrations/jira/jira-cli.js +19 -3
  15. package/dist/integrations/jira/jira-cli.js.map +1 -1
  16. package/dist/integrations/jira/jira-submit.js +5 -18
  17. package/dist/integrations/jira/jira-submit.js.map +1 -1
  18. package/dist/integrations/sentry/sentry-cli.js +18 -2
  19. package/dist/integrations/sentry/sentry-cli.js.map +1 -1
  20. package/dist/problem-solving-core/codex/codex-runner.d.ts +2 -0
  21. package/dist/problem-solving-core/codex/codex-runner.js +46 -36
  22. package/dist/problem-solving-core/codex/codex-runner.js.map +1 -1
  23. package/dist/task-environment/delivery/delivery-warning-copy.d.ts +2 -0
  24. package/dist/task-environment/delivery/delivery-warning-copy.js +24 -0
  25. package/dist/task-environment/delivery/delivery-warning-copy.js.map +1 -0
  26. package/dist/task-environment/delivery/feishu-analysis-doc-service.d.ts +32 -1
  27. package/dist/task-environment/delivery/feishu-analysis-doc-service.js +351 -7
  28. package/dist/task-environment/delivery/feishu-analysis-doc-service.js.map +1 -1
  29. package/dist/task-environment/delivery/feishu-card-primitives.d.ts +33 -0
  30. package/dist/task-environment/delivery/feishu-card-primitives.js +95 -0
  31. package/dist/task-environment/delivery/feishu-card-primitives.js.map +1 -0
  32. package/dist/task-environment/delivery/feishu-card-renderer.d.ts +1 -0
  33. package/dist/task-environment/delivery/feishu-card-renderer.js +38 -73
  34. package/dist/task-environment/delivery/feishu-card-renderer.js.map +1 -1
  35. package/dist/task-environment/delivery/feishu-content/feishu-copy-config.js +1 -0
  36. package/dist/task-environment/delivery/feishu-content/feishu-copy-config.js.map +1 -1
  37. package/dist/task-environment/delivery/feishu-notifier.d.ts +5 -0
  38. package/dist/task-environment/delivery/feishu-notifier.js +107 -38
  39. package/dist/task-environment/delivery/feishu-notifier.js.map +1 -1
  40. package/dist/task-environment/delivery/feishu-templates/analysis-message-template.js +3 -0
  41. package/dist/task-environment/delivery/feishu-templates/analysis-message-template.js.map +1 -1
  42. package/dist/task-environment/delivery/pm-feishu-card-renderer.d.ts +19 -0
  43. package/dist/task-environment/delivery/pm-feishu-card-renderer.js +177 -0
  44. package/dist/task-environment/delivery/pm-feishu-card-renderer.js.map +1 -0
  45. package/dist/task-environment/delivery/sentry-feishu-card-renderer.d.ts +1 -0
  46. package/dist/task-environment/delivery/sentry-feishu-card-renderer.js +33 -70
  47. package/dist/task-environment/delivery/sentry-feishu-card-renderer.js.map +1 -1
  48. package/dist/task-environment/delivery/task-delivery-service.d.ts +6 -1
  49. package/dist/task-environment/delivery/task-delivery-service.js +142 -10
  50. package/dist/task-environment/delivery/task-delivery-service.js.map +1 -1
  51. package/dist/task-environment/delivery/task-publication-service.d.ts +1 -0
  52. package/dist/task-environment/delivery/task-publication-service.js +22 -0
  53. package/dist/task-environment/delivery/task-publication-service.js.map +1 -1
  54. package/dist/task-environment/intake/manual-problem-intake.js +54 -0
  55. package/dist/task-environment/intake/manual-problem-intake.js.map +1 -1
  56. package/dist/task-environment/orchestration/execution-context-assembler.d.ts +1 -0
  57. package/dist/task-environment/orchestration/execution-context-assembler.js +58 -3
  58. package/dist/task-environment/orchestration/execution-context-assembler.js.map +1 -1
  59. package/dist/task-environment/orchestration/task-orchestrator.d.ts +1 -0
  60. package/dist/task-environment/orchestration/task-orchestrator.js +41 -5
  61. package/dist/task-environment/orchestration/task-orchestrator.js.map +1 -1
  62. package/dist/task-environment/orchestration/task-package-inputs.d.ts +2 -0
  63. package/dist/task-environment/orchestration/task-package-inputs.js +83 -0
  64. package/dist/task-environment/orchestration/task-package-inputs.js.map +1 -0
  65. package/dist/task-environment/orchestration/task-runtime-policy.d.ts +4 -0
  66. package/dist/task-environment/orchestration/task-runtime-policy.js +38 -0
  67. package/dist/task-environment/orchestration/task-runtime-policy.js.map +1 -0
  68. package/dist/task-environment/result-paths.d.ts +9 -0
  69. package/dist/task-environment/result-paths.js +36 -0
  70. package/dist/task-environment/result-paths.js.map +1 -0
  71. package/dist/types.d.ts +45 -1
  72. package/package.json +1 -1
  73. package/task-harnesses/bugfix/ACCEPT.md +3 -2
  74. package/task-harnesses/bugfix/CONSTRAINTS.md +10 -4
  75. package/task-harnesses/bugfix/EVOLUTION.md +2 -8
  76. package/task-harnesses/bugfix/ROLE.md +7 -11
  77. package/task-harnesses/bugfix/STANDARD.md +81 -0
  78. package/task-harnesses/pm/ACCEPT.md +66 -0
  79. package/task-harnesses/pm/CONSTRAINTS.md +60 -0
  80. package/task-harnesses/pm/CONTEXT.md +50 -0
  81. package/task-harnesses/pm/EVOLUTION.md +77 -0
  82. package/task-harnesses/pm/ROLE.md +44 -0
  83. package/task-harnesses/pm/STANDARD.md +483 -0
  84. package/task-harnesses/pm/manifest.json +13 -0
  85. package/task-harnesses/registry.json +4 -0
@@ -0,0 +1,597 @@
1
+ import { FeishuClient } from "./feishu-client.js";
2
+ const FEISHU_DOCUMENT_HOST_PATTERN = /^(?:[\w-]+\.)?(?:feishu\.cn|larksuite\.com)$/iu;
3
+ const DOCX_PATH_PATTERN = /\/docx\/([A-Za-z0-9]+)/u;
4
+ const WIKI_PATH_PATTERN = /\/wiki\/([A-Za-z0-9]+)/u;
5
+ const CHILDREN_PAGE_SIZE = "200";
6
+ const KNOWN_BLOCK_KEYS = [
7
+ "page",
8
+ "heading1",
9
+ "heading2",
10
+ "heading3",
11
+ "heading4",
12
+ "heading5",
13
+ "heading6",
14
+ "heading7",
15
+ "heading8",
16
+ "heading9",
17
+ "text",
18
+ "bullet",
19
+ "ordered",
20
+ "todo",
21
+ "code",
22
+ "quote",
23
+ "callout",
24
+ "equation",
25
+ "divider",
26
+ "image",
27
+ "whiteboard",
28
+ "file",
29
+ "sheet",
30
+ "bitable",
31
+ "table",
32
+ "table_cell",
33
+ "diagram",
34
+ "mindnote",
35
+ "embed",
36
+ "iframe",
37
+ "grid",
38
+ "grid_column",
39
+ "view"
40
+ ];
41
+ export class FeishuDocumentReader {
42
+ client;
43
+ constructor(options = {}) {
44
+ this.client = options.client ?? new FeishuClient({
45
+ ...(options.config ? { config: options.config } : {})
46
+ });
47
+ }
48
+ isConfigured() {
49
+ return this.client.isConfigured();
50
+ }
51
+ canReadUrl(url) {
52
+ return parseFeishuDocumentUrl(url) !== undefined;
53
+ }
54
+ async readFromUrl(url) {
55
+ const parsed = parseFeishuDocumentUrl(url);
56
+ if (!parsed) {
57
+ throw new Error("submit currently supports document URLs from Feishu/Lark only.");
58
+ }
59
+ const target = await this.resolveTarget(parsed);
60
+ const document = await this.client.get(`/open-apis/docx/v1/documents/${encodeURIComponent(target.documentToken)}`);
61
+ const title = document.data?.document?.title?.trim() || target.title?.trim();
62
+ const tree = await this.readDocumentTree(target.documentToken);
63
+ const rendered = this.renderDocument(tree, target.documentToken, title);
64
+ return {
65
+ content: rendered.content,
66
+ ...(title ? { title } : {}),
67
+ sourceType: "feishu_doc",
68
+ ...(target.sourceDocumentType ? { sourceDocumentType: target.sourceDocumentType } : {}),
69
+ ...(rendered.referenceMaterials ? { referenceMaterials: rendered.referenceMaterials } : {})
70
+ };
71
+ }
72
+ async resolveTarget(parsed) {
73
+ if (!parsed) {
74
+ throw new Error("Task document URL is empty.");
75
+ }
76
+ if (parsed.kind === "docx") {
77
+ return {
78
+ sourceUrl: parsed.url,
79
+ sourceDocumentType: "docx",
80
+ documentToken: parsed.token
81
+ };
82
+ }
83
+ const payload = await this.client.get("/open-apis/wiki/v2/spaces/get_node", {
84
+ token: parsed.token
85
+ });
86
+ const target = extractWikiDocTarget(payload);
87
+ if (!target?.documentToken || !target.documentType) {
88
+ throw new Error("submit could not resolve the Feishu wiki document target.");
89
+ }
90
+ if (target.documentType !== "docx") {
91
+ throw new Error(`submit currently supports Feishu/Lark wiki documents backed by docx only (received ${target.documentType}).`);
92
+ }
93
+ return {
94
+ sourceUrl: parsed.url,
95
+ sourceDocumentType: target.documentType,
96
+ documentToken: target.documentToken,
97
+ ...(target.title ? { title: target.title } : {})
98
+ };
99
+ }
100
+ async readDocumentTree(documentToken) {
101
+ const blocks = new Map();
102
+ blocks.set(documentToken, {
103
+ blockId: documentToken,
104
+ children: [],
105
+ hasChild: true,
106
+ raw: {}
107
+ });
108
+ const queue = [documentToken];
109
+ while (queue.length > 0) {
110
+ const parentId = queue.shift();
111
+ const childBlocks = await this.fetchChildren(documentToken, parentId);
112
+ const orderedIds = [];
113
+ for (const block of childBlocks) {
114
+ orderedIds.push(block.blockId);
115
+ blocks.set(block.blockId, block);
116
+ if (block.hasChild) {
117
+ queue.push(block.blockId);
118
+ }
119
+ }
120
+ const parent = blocks.get(parentId);
121
+ if (parent) {
122
+ parent.children = orderedIds;
123
+ }
124
+ }
125
+ return blocks;
126
+ }
127
+ async fetchChildren(documentToken, parentId) {
128
+ const blocks = [];
129
+ let pageToken;
130
+ while (true) {
131
+ const payload = await this.client.get(`/open-apis/docx/v1/documents/${encodeURIComponent(documentToken)}/blocks/${encodeURIComponent(parentId)}/children`, {
132
+ page_size: CHILDREN_PAGE_SIZE,
133
+ ...(pageToken ? { page_token: pageToken } : {})
134
+ });
135
+ const items = Array.isArray(payload.data?.items) ? payload.data?.items : [];
136
+ for (const item of items) {
137
+ const block = normalizeBlockRecord(item);
138
+ if (block) {
139
+ blocks.push(block);
140
+ }
141
+ }
142
+ if (!payload.data?.has_more || !payload.data?.page_token?.trim()) {
143
+ break;
144
+ }
145
+ pageToken = payload.data.page_token.trim();
146
+ }
147
+ return blocks;
148
+ }
149
+ renderDocument(blocks, rootId, title) {
150
+ const state = {
151
+ noteReferences: [],
152
+ seenReferenceKeys: new Set(),
153
+ containerCounters: {}
154
+ };
155
+ const lines = [];
156
+ if (title) {
157
+ lines.push(`# ${title}`);
158
+ lines.push("");
159
+ }
160
+ lines.push(...this.renderChildren(rootId, blocks, state, 0));
161
+ const content = lines.join("\n").replace(/\n{3,}/gu, "\n\n").trim();
162
+ return {
163
+ content,
164
+ ...(state.noteReferences.length > 0 ? { referenceMaterials: state.noteReferences } : {})
165
+ };
166
+ }
167
+ renderChildren(parentId, blocks, state, depth) {
168
+ const parent = blocks.get(parentId);
169
+ if (!parent) {
170
+ return [];
171
+ }
172
+ const lines = [];
173
+ parent.children.forEach((childId, index) => {
174
+ const child = blocks.get(childId);
175
+ if (!child) {
176
+ return;
177
+ }
178
+ const rendered = this.renderBlock(child, blocks, state, depth, index);
179
+ if (rendered.length === 0) {
180
+ return;
181
+ }
182
+ if (lines.length > 0 && rendered[0] !== "" && lines.at(-1) !== "") {
183
+ lines.push("");
184
+ }
185
+ lines.push(...rendered);
186
+ });
187
+ return lines;
188
+ }
189
+ renderBlock(block, blocks, state, depth, index) {
190
+ const kind = detectBlockKind(block.raw);
191
+ const childLines = block.children.length > 0 ? this.renderChildren(block.blockId, blocks, state, depth + 1) : [];
192
+ switch (kind) {
193
+ case "page":
194
+ case "view":
195
+ case "grid":
196
+ case "grid_column":
197
+ return childLines;
198
+ case "heading1":
199
+ case "heading2":
200
+ case "heading3":
201
+ case "heading4":
202
+ case "heading5":
203
+ case "heading6":
204
+ case "heading7":
205
+ case "heading8":
206
+ case "heading9": {
207
+ const level = Number(kind.replace("heading", "")) || 1;
208
+ const text = this.renderRichBlockText(block.raw[kind]);
209
+ return [`${"#".repeat(Math.min(6, level))} ${text}`];
210
+ }
211
+ case "text": {
212
+ const text = this.renderRichBlockText(block.raw.text);
213
+ return text ? [text] : childLines;
214
+ }
215
+ case "bullet": {
216
+ return renderListItem("-", this.renderRichBlockText(block.raw.bullet), childLines);
217
+ }
218
+ case "ordered": {
219
+ return renderListItem(`${index + 1}.`, this.renderRichBlockText(block.raw.ordered), childLines);
220
+ }
221
+ case "todo": {
222
+ const done = readBooleanDeep(block.raw.todo, ["checked", "is_checked", "done"]);
223
+ return renderListItem(done ? "- [x]" : "- [ ]", this.renderRichBlockText(block.raw.todo), childLines);
224
+ }
225
+ case "quote": {
226
+ const text = this.renderRichBlockText(block.raw.quote);
227
+ return prefixLines(`> ${text}`.trimEnd(), childLines, "> ");
228
+ }
229
+ case "callout": {
230
+ const text = this.renderRichBlockText(block.raw.callout);
231
+ return prefixLines(`> [!NOTE] ${text}`.trimEnd(), childLines, "> ");
232
+ }
233
+ case "code": {
234
+ const codeBlock = block.raw.code;
235
+ const language = readStringDeep(codeBlock, ["language", "lang"]) ?? "";
236
+ const content = this.renderRichBlockText(codeBlock, { preserveNewlines: true });
237
+ const fence = ["```" + language, content || "", "```"];
238
+ return [...fence, ...indentLines(childLines, " ")];
239
+ }
240
+ case "equation": {
241
+ const content = this.renderRichBlockText(block.raw.equation, { preserveNewlines: true });
242
+ return [`$$${content}$$`];
243
+ }
244
+ case "divider":
245
+ return ["---"];
246
+ case "image":
247
+ return [this.renderMediaTag("img", block.raw.image, state, {
248
+ titlePrefix: "Embedded image",
249
+ defaultType: "image"
250
+ })];
251
+ case "whiteboard":
252
+ return [this.renderMediaTag("whiteboard", block.raw.whiteboard, state, {
253
+ titlePrefix: "Embedded whiteboard",
254
+ defaultType: "whiteboard"
255
+ })];
256
+ case "file":
257
+ return [this.renderMediaTag("file", block.raw.file, state, {
258
+ titlePrefix: "Embedded file",
259
+ defaultType: "file"
260
+ })];
261
+ case "sheet":
262
+ return [this.renderMediaTag("sheet", block.raw.sheet, state, {
263
+ titlePrefix: "Embedded sheet",
264
+ defaultType: "sheet"
265
+ })];
266
+ case "bitable":
267
+ return [this.renderMediaTag("bitable", block.raw.bitable, state, {
268
+ titlePrefix: "Embedded bitable",
269
+ defaultType: "bitable"
270
+ })];
271
+ case "table": {
272
+ const title = this.nextContainerTitle(state, "table", "Embedded table");
273
+ this.pushNoteReference(state, {
274
+ type: "note",
275
+ title,
276
+ content: summarizeBlockPayload("table", block.raw.table),
277
+ sourceType: "feishu_block"
278
+ });
279
+ if (childLines.length === 0) {
280
+ return [`<table title="${escapeHtmlAttribute(title)}"></table>`];
281
+ }
282
+ return [`<table title="${escapeHtmlAttribute(title)}">`, ...indentLines(childLines, " "), `</table>`];
283
+ }
284
+ case "table_cell": {
285
+ const text = this.renderRichBlockText(block.raw.table_cell);
286
+ const lines = text ? [text] : [];
287
+ return [...lines, ...childLines];
288
+ }
289
+ default: {
290
+ const title = this.nextContainerTitle(state, "block", "Embedded block");
291
+ this.pushNoteReference(state, {
292
+ type: "note",
293
+ title,
294
+ content: summarizeBlockPayload(kind ?? `type_${String(block.raw.block_type ?? "unknown")}`, block.raw),
295
+ sourceType: "feishu_block"
296
+ });
297
+ if (childLines.length > 0) {
298
+ return [`<feishu-block type="${escapeHtmlAttribute(kind ?? "unknown")}">`, ...indentLines(childLines, " "), "</feishu-block>"];
299
+ }
300
+ return [`<feishu-block type="${escapeHtmlAttribute(kind ?? "unknown")}"/>`];
301
+ }
302
+ }
303
+ }
304
+ renderMediaTag(tagName, payload, state, options) {
305
+ const title = readStringDeep(payload, ["name", "title"]) ?? this.nextContainerTitle(state, tagName, options.titlePrefix);
306
+ const token = readStringDeep(payload, ["token", "file_token", "image_token", "src"]);
307
+ const url = readStringDeep(payload, ["url", "link"]);
308
+ const mimeType = readStringDeep(payload, ["mime_type", "mime", "type"]);
309
+ if (payload && typeof payload === "object") {
310
+ this.pushNoteReference(state, {
311
+ type: options.defaultType,
312
+ title,
313
+ ...(token ? { token } : {}),
314
+ ...(url ? { url } : {}),
315
+ ...(mimeType ? { mimeType } : {}),
316
+ sourceType: "feishu_block"
317
+ });
318
+ }
319
+ const attributes = [
320
+ `name="${escapeHtmlAttribute(title)}"`,
321
+ ...(token ? [tagName === "img" ? `src="${escapeHtmlAttribute(token)}"` : `token="${escapeHtmlAttribute(token)}"`] : []),
322
+ ...(url ? [`url="${escapeHtmlAttribute(url)}"`] : []),
323
+ ...(mimeType ? [`mime="${escapeHtmlAttribute(mimeType)}"`] : [])
324
+ ];
325
+ return `<${tagName} ${attributes.join(" ")}/>`;
326
+ }
327
+ renderRichBlockText(payload, options = {}) {
328
+ const elements = findElementsArray(payload);
329
+ if (elements.length > 0) {
330
+ const rendered = elements.map((element) => this.renderTextElement(element)).join("");
331
+ return options.preserveNewlines ? rendered : rendered.replace(/\s+\n/gu, "\n").trim();
332
+ }
333
+ const content = readStringDeep(payload, ["content", "text", "title", "caption"]);
334
+ return content?.trim() ?? "";
335
+ }
336
+ renderTextElement(element) {
337
+ if (!element || typeof element !== "object" || Array.isArray(element)) {
338
+ return "";
339
+ }
340
+ const record = element;
341
+ if (record.text_run && typeof record.text_run === "object") {
342
+ const textRun = record.text_run;
343
+ const content = typeof textRun.content === "string" ? textRun.content : "";
344
+ const style = textRun.text_element_style;
345
+ const link = readStringDeep(textRun, ["link.url", "href", "url"]) ?? readStringDeep(style, ["link.url", "href", "url"]);
346
+ return applyInlineStyle(link ? `[${content}](${link})` : content, style);
347
+ }
348
+ if (record.mention_user && typeof record.mention_user === "object") {
349
+ const name = readStringDeep(record.mention_user, ["name", "title", "display_name"]) ?? "user";
350
+ return `@${name}`;
351
+ }
352
+ if (record.mention_doc && typeof record.mention_doc === "object") {
353
+ const title = readStringDeep(record.mention_doc, ["title", "name"]) ?? "document";
354
+ const url = readStringDeep(record.mention_doc, ["url", "link"]);
355
+ return url ? `[${title}](${url})` : title;
356
+ }
357
+ if (record.reminder && typeof record.reminder === "object") {
358
+ const text = readStringDeep(record.reminder, ["text", "content", "label"]) ?? "reminder";
359
+ return `[Reminder: ${text}]`;
360
+ }
361
+ if (record.equation && typeof record.equation === "object") {
362
+ const content = readStringDeep(record.equation, ["content"]) ?? "";
363
+ return `$${content}$`;
364
+ }
365
+ return readStringDeep(record, ["text", "content", "title"]) ?? "";
366
+ }
367
+ pushNoteReference(state, reference) {
368
+ const key = [
369
+ reference.type,
370
+ reference.title,
371
+ reference.token ?? "",
372
+ reference.url ?? "",
373
+ reference.content ?? ""
374
+ ].join("|");
375
+ if (state.seenReferenceKeys.has(key)) {
376
+ return;
377
+ }
378
+ state.seenReferenceKeys.add(key);
379
+ state.noteReferences.push(reference);
380
+ }
381
+ nextContainerTitle(state, counterKey, prefix) {
382
+ const next = (state.containerCounters[counterKey] ?? 0) + 1;
383
+ state.containerCounters[counterKey] = next;
384
+ return `${prefix} ${next}`;
385
+ }
386
+ }
387
+ export function mergeFeishuReferenceMaterials(primary, secondary) {
388
+ const merged = [];
389
+ const seen = new Set();
390
+ for (const source of [primary, secondary]) {
391
+ for (const reference of source ?? []) {
392
+ const key = [
393
+ reference.type,
394
+ reference.title,
395
+ reference.token ?? "",
396
+ reference.url ?? "",
397
+ reference.content ?? ""
398
+ ].join("|");
399
+ if (seen.has(key)) {
400
+ continue;
401
+ }
402
+ seen.add(key);
403
+ merged.push(reference);
404
+ }
405
+ }
406
+ return merged.length > 0 ? merged : undefined;
407
+ }
408
+ function parseFeishuDocumentUrl(input) {
409
+ const trimmed = input.trim();
410
+ if (!trimmed) {
411
+ return undefined;
412
+ }
413
+ let url;
414
+ try {
415
+ url = new URL(trimmed);
416
+ }
417
+ catch {
418
+ return undefined;
419
+ }
420
+ if (!FEISHU_DOCUMENT_HOST_PATTERN.test(url.hostname)) {
421
+ return undefined;
422
+ }
423
+ const docxMatch = url.pathname.match(DOCX_PATH_PATTERN);
424
+ if (docxMatch?.[1]) {
425
+ return { kind: "docx", token: docxMatch[1], url: trimmed };
426
+ }
427
+ const wikiMatch = url.pathname.match(WIKI_PATH_PATTERN);
428
+ if (wikiMatch?.[1]) {
429
+ return { kind: "wiki", token: wikiMatch[1], url: trimmed };
430
+ }
431
+ return undefined;
432
+ }
433
+ function extractWikiDocTarget(payload) {
434
+ if (!payload || typeof payload !== "object") {
435
+ return undefined;
436
+ }
437
+ if (Array.isArray(payload)) {
438
+ for (const entry of payload) {
439
+ const target = extractWikiDocTarget(entry);
440
+ if (target?.documentToken || target?.documentType) {
441
+ return target;
442
+ }
443
+ }
444
+ return undefined;
445
+ }
446
+ const record = payload;
447
+ const documentType = readStringDeep(record, ["obj_type", "objType", "object_type", "objectType"]);
448
+ const documentToken = readStringDeep(record, ["obj_token", "objToken", "document_id", "documentId", "doc_token", "docToken"]);
449
+ const title = readStringDeep(record, ["title", "name"]);
450
+ if (documentType || documentToken || title) {
451
+ return {
452
+ ...(documentType ? { documentType } : {}),
453
+ ...(documentToken ? { documentToken } : {}),
454
+ ...(title ? { title } : {})
455
+ };
456
+ }
457
+ for (const value of Object.values(record)) {
458
+ const target = extractWikiDocTarget(value);
459
+ if (target?.documentToken || target?.documentType) {
460
+ return target;
461
+ }
462
+ }
463
+ return undefined;
464
+ }
465
+ function normalizeBlockRecord(value) {
466
+ if (!value || typeof value !== "object" || Array.isArray(value)) {
467
+ return undefined;
468
+ }
469
+ const raw = value;
470
+ const blockId = typeof raw.block_id === "string" ? raw.block_id.trim() : "";
471
+ if (!blockId) {
472
+ return undefined;
473
+ }
474
+ const parentId = typeof raw.parent_id === "string" && raw.parent_id.trim() ? raw.parent_id.trim() : undefined;
475
+ const children = Array.isArray(raw.children)
476
+ ? raw.children.filter((entry) => typeof entry === "string" && entry.trim().length > 0).map((entry) => entry.trim())
477
+ : [];
478
+ return {
479
+ blockId,
480
+ ...(parentId ? { parentId } : {}),
481
+ children,
482
+ hasChild: raw.has_child === true || children.length > 0,
483
+ raw
484
+ };
485
+ }
486
+ function detectBlockKind(raw) {
487
+ return KNOWN_BLOCK_KEYS.find((key) => key in raw);
488
+ }
489
+ function findElementsArray(value) {
490
+ if (!value || typeof value !== "object" || Array.isArray(value)) {
491
+ return [];
492
+ }
493
+ const record = value;
494
+ if (Array.isArray(record.elements)) {
495
+ return record.elements;
496
+ }
497
+ for (const nested of Object.values(record)) {
498
+ const elements = findElementsArray(nested);
499
+ if (elements.length > 0) {
500
+ return elements;
501
+ }
502
+ }
503
+ return [];
504
+ }
505
+ function readStringDeep(value, keys) {
506
+ for (const key of keys) {
507
+ const direct = readDottedString(value, key);
508
+ if (direct) {
509
+ return direct;
510
+ }
511
+ }
512
+ return undefined;
513
+ }
514
+ function readDottedString(value, dottedKey) {
515
+ const parts = dottedKey.split(".");
516
+ let current = value;
517
+ for (const part of parts) {
518
+ if (!current || typeof current !== "object" || Array.isArray(current)) {
519
+ return undefined;
520
+ }
521
+ current = current[part];
522
+ }
523
+ return typeof current === "string" && current.trim() ? current.trim() : undefined;
524
+ }
525
+ function readBooleanDeep(value, keys) {
526
+ for (const key of keys) {
527
+ const parts = key.split(".");
528
+ let current = value;
529
+ for (const part of parts) {
530
+ if (!current || typeof current !== "object" || Array.isArray(current)) {
531
+ current = undefined;
532
+ break;
533
+ }
534
+ current = current[part];
535
+ }
536
+ if (typeof current === "boolean") {
537
+ return current;
538
+ }
539
+ }
540
+ return false;
541
+ }
542
+ function applyInlineStyle(text, style) {
543
+ if (!text) {
544
+ return "";
545
+ }
546
+ const bold = readBooleanDeep(style, ["bold"]);
547
+ const italic = readBooleanDeep(style, ["italic"]);
548
+ const inlineCode = readBooleanDeep(style, ["inline_code"]);
549
+ const strikethrough = readBooleanDeep(style, ["strikethrough"]);
550
+ const underline = readBooleanDeep(style, ["underline"]);
551
+ let output = text;
552
+ if (inlineCode) {
553
+ output = `\`${output.replace(/`/gu, "\\`")}\``;
554
+ }
555
+ if (bold) {
556
+ output = `**${output}**`;
557
+ }
558
+ if (italic) {
559
+ output = `*${output}*`;
560
+ }
561
+ if (strikethrough) {
562
+ output = `~~${output}~~`;
563
+ }
564
+ if (underline) {
565
+ output = `<u>${output}</u>`;
566
+ }
567
+ return output;
568
+ }
569
+ function renderListItem(prefix, text, childLines) {
570
+ const line = text ? `${prefix} ${text}` : prefix;
571
+ if (childLines.length === 0) {
572
+ return [line];
573
+ }
574
+ return [line, ...indentLines(childLines, " ")];
575
+ }
576
+ function indentLines(lines, indent) {
577
+ return lines.map((line) => line.length > 0 ? `${indent}${line}` : line);
578
+ }
579
+ function prefixLines(firstLine, childLines, prefix) {
580
+ if (childLines.length === 0) {
581
+ return [firstLine];
582
+ }
583
+ return [firstLine, ...childLines.map((line) => line.length > 0 ? `${prefix}${line}` : prefix.trimEnd())];
584
+ }
585
+ function summarizeBlockPayload(kind, value) {
586
+ const json = JSON.stringify(value, (_key, entry) => {
587
+ if (typeof entry === "string" && entry.length > 400) {
588
+ return `${entry.slice(0, 397)}...`;
589
+ }
590
+ return entry;
591
+ });
592
+ return `${kind}: ${(json ?? "{}").slice(0, 1200)}`;
593
+ }
594
+ function escapeHtmlAttribute(value) {
595
+ return value.replace(/&/gu, "&amp;").replace(/"/gu, "&quot;").replace(/</gu, "&lt;").replace(/>/gu, "&gt;");
596
+ }
597
+ //# sourceMappingURL=feishu-document-reader.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"feishu-document-reader.js","sourceRoot":"","sources":["../../../src/integrations/feishu/feishu-document-reader.ts"],"names":[],"mappings":"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"}
@@ -27,6 +27,7 @@ export declare class JiraAccessManager {
27
27
  private createUnderlyingClient;
28
28
  private refreshProcessSession;
29
29
  private hydrateProcessSessionFromPersistence;
30
+ private reloadPersistedHeadersForRetry;
30
31
  private getEffectiveConfig;
31
32
  private getProcessSession;
32
33
  private setProcessHeaders;