@excitedjs/dreamux 0.1.1 → 0.1.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +13 -19
- package/bin/dreamux +3 -2
- package/bin/server +3 -3
- package/bin/server-ctl +1 -1
- package/dist/channel/feishu-gate.js +27 -0
- package/dist/channel/feishu-gate.js.map +1 -0
- package/dist/channel/outbound.js +12 -0
- package/dist/channel/outbound.js.map +1 -0
- package/dist/dispatcher/runtime.js +3 -2
- package/dist/dispatcher/runtime.js.map +1 -1
- package/dist/dispatcher/turn-manager.js +10 -8
- package/dist/dispatcher/turn-manager.js.map +1 -1
- package/dist/feishu/bot.js +38 -19
- package/dist/feishu/bot.js.map +1 -1
- package/dist/runtime/codex-args.js +1 -1
- package/dist/runtime/config.js +2 -2
- package/dist/runtime/config.js.map +1 -1
- package/dist/server.js +13 -2
- package/dist/server.js.map +1 -1
- package/package.json +17 -11
- package/dist/feishu/content.js +0 -108
- package/dist/feishu/content.js.map +0 -1
- package/dist/feishu/render.js +0 -600
- package/dist/feishu/render.js.map +0 -1
- package/dist/feishu/types.js +0 -9
- package/dist/feishu/types.js.map +0 -1
package/README.md
CHANGED
|
@@ -20,7 +20,7 @@ Design background:
|
|
|
20
20
|
- Legacy aliases: `dreamux-server` (= `dreamux server start`) and
|
|
21
21
|
`server-ctl` (= `dreamux <verb>`). Kept so pre-monorepo operators
|
|
22
22
|
don't have to rewrite PATH entries; see
|
|
23
|
-
[
|
|
23
|
+
[the CLI naming decision](../../.agents/decisions/cli-and-package-naming.md).
|
|
24
24
|
- A SQLite-backed runtime (`dispatchers` + `inbound_buffer`) plus the
|
|
25
25
|
Feishu / Codex adapters that drive each dispatcher.
|
|
26
26
|
|
|
@@ -47,21 +47,11 @@ threads, tm registry isolation, cross-machine coordination, web UI.
|
|
|
47
47
|
|
|
48
48
|
## Install / build / test
|
|
49
49
|
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
```bash
|
|
56
|
-
cd packages/dreamux
|
|
57
|
-
npm install
|
|
58
|
-
npm run build # also runs automatically via `prepare`
|
|
59
|
-
npm run typecheck # tsc --noEmit (no emit)
|
|
60
|
-
npm test # smoke + bin-launcher + (live) codex-0134 tests
|
|
61
|
-
```
|
|
62
|
-
|
|
63
|
-
**Monorepo (from repo root).** Required once a second package exists; CI
|
|
64
|
-
exercises this path so a broken `rush.json` fails CI:
|
|
50
|
+
Use the monorepo (rush) path from the repo root — it is the only supported
|
|
51
|
+
install path. This package depends on `@excitedjs/feishu-transport` via the
|
|
52
|
+
pnpm `workspace:*` protocol, which `npm` cannot resolve, so
|
|
53
|
+
`cd packages/dreamux && npm install` no longer works (see
|
|
54
|
+
[the install-model decision](../../.agents/decisions/install-model.md)):
|
|
65
55
|
|
|
66
56
|
```bash
|
|
67
57
|
node common/scripts/install-run-rush.js update
|
|
@@ -69,6 +59,8 @@ node common/scripts/install-run-rush.js build
|
|
|
69
59
|
node common/scripts/install-run-rush.js test
|
|
70
60
|
```
|
|
71
61
|
|
|
62
|
+
CI exercises this path, so a broken `rush.json` or lockfile fails CI.
|
|
63
|
+
|
|
72
64
|
The bin launchers shell out to plain `node` against the compiled `dist/`
|
|
73
65
|
output; **no `tsx` is needed at runtime** (PR #6).
|
|
74
66
|
|
|
@@ -84,7 +76,8 @@ output; **no `tsx` is needed at runtime** (PR #6).
|
|
|
84
76
|
|
|
85
77
|
Both work from any cwd and via symlinks (PR #6 + bin-launcher tests).
|
|
86
78
|
|
|
87
|
-
The server uses two separate home directories — by design (
|
|
79
|
+
The server uses two separate home directories — by design (see
|
|
80
|
+
[the global-config decision](../../.agents/decisions/global-config-dir.md)):
|
|
88
81
|
|
|
89
82
|
| Path | Purpose | Source of truth |
|
|
90
83
|
|---|---|---|
|
|
@@ -136,7 +129,7 @@ export BOT_SECRET_FLOW='cli_secret_XXX'
|
|
|
136
129
|
|
|
137
130
|
Precedence for every config-able value (highest wins): env var →
|
|
138
131
|
per-dispatcher field → `~/.dreamux/config.toml` → built-in default.
|
|
139
|
-
See [decision
|
|
132
|
+
See [the global-config decision](../../.agents/decisions/global-config-dir.md).
|
|
140
133
|
|
|
141
134
|
### Global: `~/.dreamux/config.toml`
|
|
142
135
|
|
|
@@ -204,7 +197,8 @@ JSON object stored in `dispatchers.codex_args_json`:
|
|
|
204
197
|
## Testing
|
|
205
198
|
|
|
206
199
|
```bash
|
|
207
|
-
|
|
200
|
+
# from the repo root (the only supported path — see the install-model decision)
|
|
201
|
+
node common/scripts/install-run-rush.js test # smoke + bin-launcher + codex-0134-live
|
|
208
202
|
```
|
|
209
203
|
|
|
210
204
|
- `tests/smoke.test.ts` — fake-codex-driven dispatcher behavior:
|
package/bin/dreamux
CHANGED
|
@@ -2,7 +2,8 @@
|
|
|
2
2
|
# Launcher for the unified `dreamux` CLI (issue #4).
|
|
3
3
|
# Resolves its own location through symlinks so it works from any cwd and
|
|
4
4
|
# via any chain of symlinks (npm-link, ~/bin shortcuts, etc.). Runs the
|
|
5
|
-
# compiled dist output
|
|
5
|
+
# compiled dist output (built by `rush build` in a source checkout; already
|
|
6
|
+
# present in the published npm package).
|
|
6
7
|
set -eu
|
|
7
8
|
|
|
8
9
|
SOURCE="${BASH_SOURCE[0]}"
|
|
@@ -25,7 +26,7 @@ DIR="$(cd -- "$(dirname -- "$SOURCE")/.." &> /dev/null && pwd)"
|
|
|
25
26
|
TARGET="$DIR/dist/cli/dreamux.js"
|
|
26
27
|
if [ ! -f "$TARGET" ]; then
|
|
27
28
|
echo "dreamux: $TARGET is missing." >&2
|
|
28
|
-
echo "
|
|
29
|
+
echo "Build it first from the repo root: node common/scripts/install-run-rush.js build (rush build)." >&2
|
|
29
30
|
exit 1
|
|
30
31
|
fi
|
|
31
32
|
exec node "$TARGET" "$@"
|
package/bin/server
CHANGED
|
@@ -3,8 +3,8 @@
|
|
|
3
3
|
#
|
|
4
4
|
# Resolves its own location (following symlinks) so it works from any cwd
|
|
5
5
|
# AND when invoked via a symlink (e.g. `npm install -g` puts a symlink under
|
|
6
|
-
# the node bin dir). Runs the compiled dist output
|
|
7
|
-
#
|
|
6
|
+
# the node bin dir). Runs the compiled dist output (built by `rush build` in a
|
|
7
|
+
# source checkout; already present in the published npm package).
|
|
8
8
|
set -eu
|
|
9
9
|
|
|
10
10
|
SOURCE="${BASH_SOURCE[0]}"
|
|
@@ -29,7 +29,7 @@ DIR="$(cd -- "$(dirname -- "$SOURCE")/.." &> /dev/null && pwd)"
|
|
|
29
29
|
TARGET="$DIR/dist/cli/server.js"
|
|
30
30
|
if [ ! -f "$TARGET" ]; then
|
|
31
31
|
echo "dreamux-server: $TARGET is missing." >&2
|
|
32
|
-
echo "
|
|
32
|
+
echo "Build it first from the repo root: node common/scripts/install-run-rush.js build (rush build)." >&2
|
|
33
33
|
exit 1
|
|
34
34
|
fi
|
|
35
35
|
exec node "$TARGET" "$@"
|
package/bin/server-ctl
CHANGED
|
@@ -22,7 +22,7 @@ DIR="$(cd -- "$(dirname -- "$SOURCE")/.." &> /dev/null && pwd)"
|
|
|
22
22
|
TARGET="$DIR/dist/cli/server-ctl.js"
|
|
23
23
|
if [ ! -f "$TARGET" ]; then
|
|
24
24
|
echo "server-ctl: $TARGET is missing." >&2
|
|
25
|
-
echo "
|
|
25
|
+
echo "Build it first from the repo root: node common/scripts/install-run-rush.js build (rush build)." >&2
|
|
26
26
|
exit 1
|
|
27
27
|
fi
|
|
28
28
|
exec node "$TARGET" "$@"
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { isBotSenderType } from '@excitedjs/feishu-transport';
|
|
2
|
+
/**
|
|
3
|
+
* Compatibility-first inbound gate for dreamux's Feishu channel.
|
|
4
|
+
*
|
|
5
|
+
* This deliberately does not enable pairing or allowlists yet. The current
|
|
6
|
+
* product behavior stays open, while the loop/ambiguity hazards that can make
|
|
7
|
+
* a channel self-amplify are blocked before messages enter the durable FIFO.
|
|
8
|
+
*/
|
|
9
|
+
export function compatibleFeishuGate(input) {
|
|
10
|
+
if (input.senderId === '') {
|
|
11
|
+
return { action: 'drop', reason: 'missing sender id' };
|
|
12
|
+
}
|
|
13
|
+
if (input.botOpenId !== undefined && input.senderId === input.botOpenId) {
|
|
14
|
+
return { action: 'drop', reason: 'message sent by this bot' };
|
|
15
|
+
}
|
|
16
|
+
if (isBotSenderType(input.senderType)) {
|
|
17
|
+
return { action: 'drop', reason: `bot sender type: ${input.senderType}` };
|
|
18
|
+
}
|
|
19
|
+
if (input.chatType === 'group' && input.botOpenId === undefined) {
|
|
20
|
+
return {
|
|
21
|
+
action: 'drop',
|
|
22
|
+
reason: 'group message received before bot open_id was resolved',
|
|
23
|
+
};
|
|
24
|
+
}
|
|
25
|
+
return { action: 'deliver' };
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=feishu-gate.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"feishu-gate.js","sourceRoot":"","sources":["../../src/channel/feishu-gate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAa9D;;;;;;GAMG;AACH,MAAM,UAAU,oBAAoB,CAClC,KAAgC;IAEhC,IAAI,KAAK,CAAC,QAAQ,KAAK,EAAE,EAAE,CAAC;QAC1B,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,mBAAmB,EAAE,CAAC;IACzD,CAAC;IACD,IAAI,KAAK,CAAC,SAAS,KAAK,SAAS,IAAI,KAAK,CAAC,QAAQ,KAAK,KAAK,CAAC,SAAS,EAAE,CAAC;QACxE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,0BAA0B,EAAE,CAAC;IAChE,CAAC;IACD,IAAI,eAAe,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC;QACtC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,oBAAoB,KAAK,CAAC,UAAU,EAAE,EAAE,CAAC;IAC5E,CAAC;IACD,IAAI,KAAK,CAAC,QAAQ,KAAK,OAAO,IAAI,KAAK,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;QAChE,OAAO;YACL,MAAM,EAAE,MAAM;YACd,MAAM,EAAE,wDAAwD;SACjE,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;AAC/B,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export function outboundTargetForInbound(row) {
|
|
2
|
+
return {
|
|
3
|
+
conversationId: row.source_chat_id,
|
|
4
|
+
...(row.source_message_id !== null
|
|
5
|
+
? { replyTo: row.source_message_id }
|
|
6
|
+
: {}),
|
|
7
|
+
...(row.sender_id !== null && row.sender_id !== ''
|
|
8
|
+
? { mentionUsers: [row.sender_id] }
|
|
9
|
+
: {}),
|
|
10
|
+
};
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=outbound.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"outbound.js","sourceRoot":"","sources":["../../src/channel/outbound.ts"],"names":[],"mappings":"AAkBA,MAAM,UAAU,wBAAwB,CAAC,GAAe;IACtD,OAAO;QACL,cAAc,EAAE,GAAG,CAAC,cAAc;QAClC,GAAG,CAAC,GAAG,CAAC,iBAAiB,KAAK,IAAI;YAChC,CAAC,CAAC,EAAE,OAAO,EAAE,GAAG,CAAC,iBAAiB,EAAE;YACpC,CAAC,CAAC,EAAE,CAAC;QACP,GAAG,CAAC,GAAG,CAAC,SAAS,KAAK,IAAI,IAAI,GAAG,CAAC,SAAS,KAAK,EAAE;YAChD,CAAC,CAAC,EAAE,YAAY,EAAE,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE;YACnC,CAAC,CAAC,EAAE,CAAC;KACR,CAAC;AACJ,CAAC"}
|
|
@@ -25,6 +25,7 @@ import { performInitializeHandshake } from '../codex/handshake.js';
|
|
|
25
25
|
import { TurnManager } from './turn-manager.js';
|
|
26
26
|
import { createFailFastApprovalHandler } from './approval.js';
|
|
27
27
|
import { dispatcherCodexCwd, dispatcherStdoutLog, dispatcherStderrLog, dispatcherSocketPath } from '../runtime/paths.js';
|
|
28
|
+
import { outboundTargetForInbound } from '../channel/outbound.js';
|
|
28
29
|
export class DispatcherRuntime {
|
|
29
30
|
row;
|
|
30
31
|
deps;
|
|
@@ -101,7 +102,7 @@ export class DispatcherRuntime {
|
|
|
101
102
|
if (chatId === null)
|
|
102
103
|
return;
|
|
103
104
|
try {
|
|
104
|
-
await this.deps.outbound.
|
|
105
|
+
await this.deps.outbound.send({ conversationId: chatId }, `Codex 请求了一次审批(${req.method}),但当前 dispatcher 不支持审批 —— 本轮将失败。`);
|
|
105
106
|
}
|
|
106
107
|
catch {
|
|
107
108
|
/* nothing useful to do */
|
|
@@ -212,7 +213,7 @@ export class DispatcherRuntime {
|
|
|
212
213
|
for (const row of stale) {
|
|
213
214
|
this.log('warn', `inbound ${row.id} was 'running' at restart — marked unknown (at-most-once); chat=${row.source_chat_id}`);
|
|
214
215
|
try {
|
|
215
|
-
await this.deps.outbound.
|
|
216
|
+
await this.deps.outbound.send(outboundTargetForInbound(row), `上一次的执行结果未知(server 重启时正在进行)。请确认是否需要重新发送:\n> ${row.parsed_text.slice(0, 200)}`);
|
|
216
217
|
}
|
|
217
218
|
catch (err) {
|
|
218
219
|
this.log('warn', `failed to notify chat about unknown inbound`, err);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../src/dispatcher/runtime.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpC,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAOpC,OAAO,EAAE,YAAY,EAA4B,MAAM,wBAAwB,CAAC;AAChF,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,0BAA0B,EAAE,MAAM,uBAAuB,CAAC;AAKnE,OAAO,EAAE,WAAW,
|
|
1
|
+
{"version":3,"file":"runtime.js","sourceRoot":"","sources":["../../src/dispatcher/runtime.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,6 +19,7 @@
|
|
|
19
19
|
* outbound_failed → safe to retry the outbound
|
|
20
20
|
*/
|
|
21
21
|
import { extractAssistantText, runTurn } from '../codex/events.js';
|
|
22
|
+
import { outboundTargetForInbound } from '../channel/outbound.js';
|
|
22
23
|
export class TurnManager {
|
|
23
24
|
opts;
|
|
24
25
|
running = false;
|
|
@@ -108,7 +109,7 @@ export class TurnManager {
|
|
|
108
109
|
this.opts.inbound.markFailed(row.id, msg);
|
|
109
110
|
// Best-effort tell the user something went wrong.
|
|
110
111
|
try {
|
|
111
|
-
await this.opts.outbound.
|
|
112
|
+
await this.opts.outbound.send(outboundTargetForInbound(row), `本次请求执行失败:${msg}`);
|
|
112
113
|
}
|
|
113
114
|
catch (sendErr) {
|
|
114
115
|
this.log('warn', `error notification also failed`, sendErr);
|
|
@@ -116,15 +117,16 @@ export class TurnManager {
|
|
|
116
117
|
return;
|
|
117
118
|
}
|
|
118
119
|
this.opts.inbound.markAwaitingOutbound(row.id, assistantText);
|
|
119
|
-
await this.sendOutbound(row
|
|
120
|
+
await this.sendOutbound(row, assistantText);
|
|
120
121
|
}
|
|
121
122
|
/** Send assistant text to feishu with bounded retry. */
|
|
122
|
-
async sendOutbound(
|
|
123
|
+
async sendOutbound(row, text) {
|
|
123
124
|
let lastError;
|
|
125
|
+
const target = outboundTargetForInbound(row);
|
|
124
126
|
for (let attempt = 0; attempt <= this.outboundRetries; attempt++) {
|
|
125
127
|
try {
|
|
126
|
-
const ids = await this.opts.outbound.
|
|
127
|
-
this.opts.inbound.markCompleted(
|
|
128
|
+
const ids = await this.opts.outbound.send(target, text);
|
|
129
|
+
this.opts.inbound.markCompleted(row.id, ids);
|
|
128
130
|
return;
|
|
129
131
|
}
|
|
130
132
|
catch (err) {
|
|
@@ -135,8 +137,8 @@ export class TurnManager {
|
|
|
135
137
|
}
|
|
136
138
|
}
|
|
137
139
|
const msg = lastError instanceof Error ? lastError.message : String(lastError);
|
|
138
|
-
this.log('error', `outbound send failed for inbound ${
|
|
139
|
-
this.opts.inbound.markOutboundFailed(
|
|
140
|
+
this.log('error', `outbound send failed for inbound ${row.id}: ${msg}`);
|
|
141
|
+
this.opts.inbound.markOutboundFailed(row.id, msg);
|
|
140
142
|
}
|
|
141
143
|
/**
|
|
142
144
|
* Retry rows previously left in awaiting_outbound / outbound_failed
|
|
@@ -152,7 +154,7 @@ export class TurnManager {
|
|
|
152
154
|
this.opts.inbound.markFailed(row.id, 'awaiting_outbound row missing assistant_text');
|
|
153
155
|
continue;
|
|
154
156
|
}
|
|
155
|
-
await this.sendOutbound(row
|
|
157
|
+
await this.sendOutbound(row, row.assistant_text);
|
|
156
158
|
}
|
|
157
159
|
}
|
|
158
160
|
async stop() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"turn-manager.js","sourceRoot":"","sources":["../../src/dispatcher/turn-manager.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAKH,OAAO,EAAE,oBAAoB,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"turn-manager.js","sourceRoot":"","sources":["../../src/dispatcher/turn-manager.ts"],"names":[],"mappings":"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"}
|
package/dist/feishu/bot.js
CHANGED
|
@@ -10,14 +10,14 @@
|
|
|
10
10
|
* each raw event with the core's `parseInbound`, and forwards a
|
|
11
11
|
* `FeishuInboundEvent`. The route handler awaits `handler`, so the message is
|
|
12
12
|
* durably enqueued before the SDK acks (the deferred-ACK invariant).
|
|
13
|
-
* - `
|
|
14
|
-
*
|
|
13
|
+
* - `send(target, text)` delegates to the core transport, preserving reply
|
|
14
|
+
* threading / @-back metadata from the durable inbound row.
|
|
15
15
|
* - `botOpenId` surfaces the core transport's `selfId`.
|
|
16
16
|
*
|
|
17
17
|
* Tests inject a `FakeFeishuBot` via `createFakeFeishuBot()` instead of opening
|
|
18
18
|
* a live connection.
|
|
19
19
|
*/
|
|
20
|
-
import { createFeishuTransport, parseInbound, } from '@excitedjs/feishu-transport';
|
|
20
|
+
import { createFeishuTransport, narrowMetaFromEvent, parseInbound, toChannelInbound, } from '@excitedjs/feishu-transport';
|
|
21
21
|
/** The Feishu event_type carrying inbound chat messages. */
|
|
22
22
|
const IM_MESSAGE_EVENT_TYPE = 'im.message.receive_v1';
|
|
23
23
|
export function createFeishuBot(opts) {
|
|
@@ -46,8 +46,8 @@ export function createFeishuBot(opts) {
|
|
|
46
46
|
},
|
|
47
47
|
});
|
|
48
48
|
},
|
|
49
|
-
async
|
|
50
|
-
const { messageIds } = await transport.send(
|
|
49
|
+
async send(target, text) {
|
|
50
|
+
const { messageIds } = await transport.send(target, text);
|
|
51
51
|
return { messageIds };
|
|
52
52
|
},
|
|
53
53
|
close() {
|
|
@@ -55,11 +55,25 @@ export function createFeishuBot(opts) {
|
|
|
55
55
|
},
|
|
56
56
|
};
|
|
57
57
|
}
|
|
58
|
+
export function channelOutboundToFeishuTarget(target) {
|
|
59
|
+
return {
|
|
60
|
+
chatId: target.conversationId,
|
|
61
|
+
...(target.replyTo !== undefined
|
|
62
|
+
? { replyToMessageId: target.replyTo }
|
|
63
|
+
: {}),
|
|
64
|
+
...(target.mentionUsers !== undefined
|
|
65
|
+
? { mentionUserIds: target.mentionUsers }
|
|
66
|
+
: {}),
|
|
67
|
+
...(target.conversationKey !== undefined
|
|
68
|
+
? { conversationKey: target.conversationKey }
|
|
69
|
+
: {}),
|
|
70
|
+
};
|
|
71
|
+
}
|
|
58
72
|
/**
|
|
59
73
|
* Reshape a raw `im.message.receive_v1` payload into a `FeishuInboundEvent`,
|
|
60
|
-
* using the core's `parseInbound`
|
|
61
|
-
*
|
|
62
|
-
*
|
|
74
|
+
* using the core's `parseInbound` + `narrowMetaFromEvent` + `toChannelInbound`
|
|
75
|
+
* for content flattening and event-envelope metadata. Returns `null` for a
|
|
76
|
+
* payload missing the message_id or chat_id that make it routable.
|
|
63
77
|
*/
|
|
64
78
|
function normalizeInboundEvent(raw) {
|
|
65
79
|
if (!raw || typeof raw !== 'object')
|
|
@@ -67,30 +81,35 @@ function normalizeInboundEvent(raw) {
|
|
|
67
81
|
const root = raw;
|
|
68
82
|
const event = (root['event'] ?? root);
|
|
69
83
|
const message = (event['message'] ?? {});
|
|
70
|
-
const sender = (event['sender'] ?? {});
|
|
71
|
-
const senderId = sender['sender_id']?.['open_id'] ?? '';
|
|
72
|
-
const messageId = message['message_id'] ?? '';
|
|
73
|
-
const chatId = message['chat_id'] ?? '';
|
|
74
|
-
const chatType = message['chat_type'] ?? '';
|
|
75
84
|
const messageType = message['message_type'] ?? '';
|
|
76
85
|
const rawContent = message['content'] ?? '';
|
|
77
86
|
const mentions = message['mentions'] ?? [];
|
|
78
|
-
const createTime = message['create_time'] ?? '';
|
|
79
|
-
if (messageId === '' || chatId === '')
|
|
80
|
-
return null;
|
|
81
87
|
const parsed = parseInbound({
|
|
82
88
|
message_type: messageType,
|
|
83
89
|
content: rawContent,
|
|
84
90
|
mentions,
|
|
85
91
|
});
|
|
92
|
+
const payload = toChannelInbound({
|
|
93
|
+
...parsed,
|
|
94
|
+
meta: narrowMetaFromEvent(raw),
|
|
95
|
+
});
|
|
96
|
+
const messageId = payload.meta['message_id'] ?? '';
|
|
97
|
+
const chatId = payload.meta['chat_id'] ?? '';
|
|
98
|
+
const chatType = payload.meta['chat_type'] ?? '';
|
|
99
|
+
const senderId = payload.meta['sender_id'] ?? '';
|
|
100
|
+
const senderType = payload.meta['sender_type'] ?? '';
|
|
101
|
+
const createTime = payload.meta['create_time'] ?? '';
|
|
102
|
+
if (messageId === '' || chatId === '')
|
|
103
|
+
return null;
|
|
86
104
|
return {
|
|
87
105
|
messageId,
|
|
88
106
|
chatId,
|
|
89
107
|
chatType,
|
|
90
108
|
senderId,
|
|
109
|
+
senderType,
|
|
91
110
|
messageType,
|
|
92
111
|
rawContent,
|
|
93
|
-
parsedText:
|
|
112
|
+
parsedText: payload.text,
|
|
94
113
|
mentions,
|
|
95
114
|
createTime,
|
|
96
115
|
raw,
|
|
@@ -110,12 +129,12 @@ export function createFakeFeishuBot(appId = 'fake_bot') {
|
|
|
110
129
|
async start(h) {
|
|
111
130
|
handler = h;
|
|
112
131
|
},
|
|
113
|
-
async
|
|
132
|
+
async send(target, text) {
|
|
114
133
|
if (sendError !== null) {
|
|
115
134
|
throw sendError;
|
|
116
135
|
}
|
|
117
136
|
const id = `om_fake_${nextMessageId++}`;
|
|
118
|
-
sent.push({ chatId, text, messageIds: [id] });
|
|
137
|
+
sent.push({ chatId: target.chatId, target, text, messageIds: [id] });
|
|
119
138
|
return { messageIds: [id] };
|
|
120
139
|
},
|
|
121
140
|
async close() {
|
package/dist/feishu/bot.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bot.js","sourceRoot":"","sources":["../../src/feishu/bot.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,EACL,qBAAqB,EACrB,YAAY,
|
|
1
|
+
{"version":3,"file":"bot.js","sourceRoot":"","sources":["../../src/feishu/bot.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
* 1. dispatchers.codex_args_json (this JSON)
|
|
15
15
|
* 2. global defaults from ~/.dreamux/config.toml (passed in as `defaults`)
|
|
16
16
|
* 3. hardcoded fallbacks (`'never'`, `'workspace-write'`, `[]`)
|
|
17
|
-
* Per the feat/global-config-dir work — see decision
|
|
17
|
+
* Per the feat/global-config-dir work — see the global-config decision.
|
|
18
18
|
*
|
|
19
19
|
* `approvalPolicy` not in the trusted-local allowlist fails-fast at startup
|
|
20
20
|
* (issue #2 §"实现陷阱"): dispatcher refuses to come up if the policy may
|
package/dist/runtime/config.js
CHANGED
|
@@ -63,7 +63,7 @@ export const DEFAULT_CONFIG_TOML = `# dreamux global configuration (~/.dreamux/c
|
|
|
63
63
|
# Edit this file and restart \`dreamux server start\` to apply changes.
|
|
64
64
|
# Runtime data (SQLite, sockets, dispatcher logs) lives separately in
|
|
65
65
|
# \`runtime_dir\` below — this file holds only user-editable settings.
|
|
66
|
-
# See .agents/decisions/
|
|
66
|
+
# See .agents/decisions/global-config-dir.md for the design rationale.
|
|
67
67
|
#
|
|
68
68
|
# Precedence (highest wins):
|
|
69
69
|
# 1. environment variables (CODEX_HOST_RUNTIME_DIR, CODEX_HOST_ADMIN_SOCKET,
|
|
@@ -223,7 +223,7 @@ function mergeWithDefaults(raw, file) {
|
|
|
223
223
|
: expandHome(ensureString(admin_socket_raw, 'admin_socket', file));
|
|
224
224
|
const approval_policy = requireString(codexIn, 'approval_policy', BUILT_IN_DEFAULTS.codex.approval_policy, file, 'codex.');
|
|
225
225
|
// Validate approval_policy against the same allowlist as codex-args.ts.
|
|
226
|
-
// Keep the two in sync — see decision
|
|
226
|
+
// Keep the two in sync — see the Rush + pnpm decision / issue #2 §"信任模型".
|
|
227
227
|
const ALLOWED_POLICIES = new Set([
|
|
228
228
|
'never',
|
|
229
229
|
'auto',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/runtime/config.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/runtime/config.ts"],"names":[],"mappings":"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"}
|
package/dist/server.js
CHANGED
|
@@ -16,7 +16,8 @@
|
|
|
16
16
|
import { openDatabase } from './db/schema.js';
|
|
17
17
|
import { DispatcherRepo, InboundRepo } from './db/repository.js';
|
|
18
18
|
import { DispatcherRuntime } from './dispatcher/runtime.js';
|
|
19
|
-
import { createFeishuBot } from './feishu/bot.js';
|
|
19
|
+
import { channelOutboundToFeishuTarget, createFeishuBot, } from './feishu/bot.js';
|
|
20
|
+
import { compatibleFeishuGate } from './channel/feishu-gate.js';
|
|
20
21
|
import { parseCodexArgs, codexArgsToCli } from './runtime/codex-args.js';
|
|
21
22
|
import { resolveBotSecret } from './runtime/secrets.js';
|
|
22
23
|
import { BUILT_IN_DEFAULTS } from './runtime/config.js';
|
|
@@ -125,7 +126,7 @@ export class Server {
|
|
|
125
126
|
dispatchers: this.repos.dispatchers,
|
|
126
127
|
inbound: this.repos.inbound,
|
|
127
128
|
outbound: {
|
|
128
|
-
|
|
129
|
+
send: async (target, text) => (await bot.send(channelOutboundToFeishuTarget(target), text)).messageIds,
|
|
129
130
|
},
|
|
130
131
|
codexBinPath: this.resolveCodexBinPath(),
|
|
131
132
|
codexProcessFactory: this.opts.codexProcessFactory,
|
|
@@ -138,6 +139,16 @@ export class Server {
|
|
|
138
139
|
try {
|
|
139
140
|
await runtime.start();
|
|
140
141
|
await bot.start(async (event) => {
|
|
142
|
+
const gate = compatibleFeishuGate({
|
|
143
|
+
senderId: event.senderId,
|
|
144
|
+
senderType: event.senderType,
|
|
145
|
+
chatType: event.chatType,
|
|
146
|
+
botOpenId: bot.botOpenId,
|
|
147
|
+
});
|
|
148
|
+
if (gate.action === 'drop') {
|
|
149
|
+
console.error(`[server] dropped feishu inbound for dispatcher '${id}': ${gate.reason}`);
|
|
150
|
+
return;
|
|
151
|
+
}
|
|
141
152
|
runtime.enqueueInbound({
|
|
142
153
|
source_chat_id: event.chatId,
|
|
143
154
|
source_message_id: event.messageId,
|
package/dist/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAIH,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjE,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAG5D,OAAO,
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|