Skip to content

Commit 9fc400f

Browse files
committed
debug(bot): 加 ontology dump log + inspect-ontology 脚本看伪 ontology marker
1 parent 49f716c commit 9fc400f

2 files changed

Lines changed: 40 additions & 0 deletions

File tree

server/feishu-bot.mjs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -571,6 +571,12 @@ function ensureReverseChannel(room) {
571571
newNodes.push({ id: k, ...nn })
572572
})
573573
log(`[reverse] room=${room} conclusion ready key=${key} 新节点=${newNodes.length}`)
574+
// 调试: 第一次时 dump 所有新节点 data 字段, 找到伪 ontology 的 marker
575+
if (process.env.LARK_DEBUG === '1') {
576+
for (const nn of newNodes.filter(x => x.type === 'ontologyNode' && !x.data?.isConclusion).slice(0, 3)) {
577+
log(`[reverse-dump] ontology id=${nn.id} data=${JSON.stringify(nn.data || {}).slice(0, 400)}`)
578+
}
579+
}
574580
sendFeedbackCard(room, ctx, n, newNodes).catch((e) => logErr('反馈卡发送失败:', e.message))
575581
ctx.fed = true
576582
})

server/inspect-ontology.mjs

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
// 一次性脚本: 连 yjs 拿 demo-final 最近 5 个 ontology 节点 data 字段
2+
// 用法: node server/inspect-ontology.mjs [room]
3+
import * as Y from 'yjs'
4+
import { WebsocketProvider } from 'y-websocket'
5+
import WebSocket from 'ws'
6+
7+
if (typeof globalThis.WebSocket === 'undefined') globalThis.WebSocket = WebSocket
8+
9+
const ROOM = process.argv[2] || 'demo-final'
10+
const WS = process.env.Y_WS_URL || 'ws://127.0.0.1:1234'
11+
12+
const doc = new Y.Doc()
13+
const provider = new WebsocketProvider(WS, ROOM, doc, { connect: true, WebSocketPolyfill: WebSocket })
14+
await new Promise((resolve, reject) => {
15+
const t = setTimeout(() => reject(new Error('sync timeout')), 8000)
16+
provider.once('synced', () => { clearTimeout(t); resolve() })
17+
})
18+
19+
const yNodes = doc.getMap('nodes')
20+
const onts = []
21+
yNodes.forEach((n, k) => {
22+
if (n?.type === 'ontologyNode' && !n.data?.isConclusion) {
23+
onts.push({ id: k, type: n.type, dataKeys: Object.keys(n.data || {}), data: n.data })
24+
}
25+
})
26+
27+
// 按 created_at 倒序排, 取最近 8 个
28+
onts.sort((a, b) => Number(b.data?.created_at || 0) - Number(a.data?.created_at || 0))
29+
console.log(JSON.stringify({ total: onts.length, samples: onts.slice(0, 8) }, null, 2))
30+
31+
provider.disconnect()
32+
provider.destroy()
33+
doc.destroy()
34+
process.exit(0)

0 commit comments

Comments
 (0)