@qing3a/flow-rpa-app 0.6.0 → 0.7.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -20,7 +20,7 @@ flow-rpa 是本地 RPA 引擎:解释执行**流程定义**(JSON 数据),
20
20
  npm i -g @qing3a/flow-rpa-app --registry=https://registry.npmjs.org
21
21
 
22
22
  # 1.5 装后先验证(防 PATH 混乱/装错目录:确认版本与你预期的 npm 前缀一致)
23
- flow-app --version # 应输出 0.4.5+;若版本不对,检查 PATH 里 node/npm 来自哪个安装目录
23
+ flow-app --version # 应输出当前版本(≥0.6.0);若版本不对,检查 PATH 里 node/npm 来自哪个安装目录
24
24
 
25
25
  # 2. 初始化(创建数据/流程目录 + 引导;**装完自带 1 个 starter 流程 boss_search_jobs**,init 自动复制到 flows/)
26
26
  flow-app init
@@ -28,7 +28,7 @@ flow-app init
28
28
  # 3. 体检(✅ 通过 / ⚠️ 可忽略 / ❌ 阻断;仅 ❌ 退出码非 0)
29
29
  # 可先单独体检 Edge 项:
30
30
  flow-app doctor --edge "C:\Program Files (x86)\Microsoft\Edge\Application\msedge.exe"
31
- # 平台未配置/空流程/Edge 未配置均属 ⚠️ 可忽略(本地模式正常)
31
+ # 空流程/Edge 未配置均属 ⚠️ 可忽略(本地模式正常)
32
32
 
33
33
  # 4. 启动常驻服务(--edge 必填:从零环境无 9222 调试实例时引擎靠它拉起专用浏览器)
34
34
  # PowerShell 专属写法(引号内的空格/括号不会被拆坏):
@@ -50,17 +50,13 @@ flow-app install-skill <你的 skills 目录>
50
50
 
51
51
  ## 流程包获取
52
52
 
53
- 本包**内置 1 个 starter 流程**:`boss_search_jobs`(v6,BOSS 搜索职位)——`flow-app init` 首次初始化自动复制到 `flows/`(同名已存在则跳过,不覆盖用户/`pkg_update` 版本)。更多流程从协作平台 md-forge 获取:
53
+ 本包**内置 1 个 starter 流程**:`boss_search_jobs`(BOSS 搜索职位)——`flow-app init` 首次初始化自动复制到 `flows/`(同名已存在则跳过,不覆盖本地定制版本)。
54
54
 
55
- - **发布源**:`https://md-forge-3774306-1256846151.ap-shanghai.run.tcloudbase.com`
56
- - **示例**:`boss_search_jobs`(v6,BOSS 搜索职位)
57
- - **方式**:配置平台后 `flow-app` 的 `pkg_update` 工具自动拉取(manifest → 版本比对 → 下载 → 哈希校验 → 替换本地 `flows/<name>/`)
58
- - **平台凭据**:`--platform-url <url> --platform-token <token>`(token 由 owner 提供,**不写死在包内/文档**)
59
- - **手工**:也可把流程包直接放入 `flows/` 目录(结构见 `flow-app validate <flow.json>`)
55
+ 更多流程由 owner 分发:把流程包目录(含 `flow.json`)直接放入 `flows/` 即可(结构可用 `flow-app validate <flow.json>` 校验)。
60
56
 
61
57
  ## Skill 位置
62
58
 
63
- - 包内:`skill/flow-rpa-engine.md`(引擎能力说明书:13 个 MCP 工具签名、调用规则、失败处理)
59
+ - 包内:`skill/flow-rpa-engine.md`(引擎能力说明书:12 个 MCP 工具签名、调用规则、失败处理)
64
60
  - `flow-app install-skill <dir>` 写入 `<dir>/flow-rpa-engine/SKILL.md`(SKILL.md 子目录结构,主流平台自动发现)
65
61
  + 平铺 `<dir>/flow-rpa-engine.md`(兼容);若平台不识别子目录,按平铺路径引用
66
62
  - 也可直接从 npm 包目录读:`node_modules/@qing3a/flow-rpa-app/skill/flow-rpa-engine.md`
@@ -78,14 +74,21 @@ flow-app install-skill <你的 skills 目录>
78
74
  ## 安全边界
79
75
 
80
76
  - **登录一次**:仅首次人工登录,之后全自动化(引擎每次 run 后自动轮换浏览器会话,**登录态保留**——同 profile)
81
- - **防封**:同站节流 15~70s 引擎强制;**会话轮换优先**(0.5.0 起引擎每次 run 后自动重启浏览器会话,点击恢复 3-5s);同站冷却 ≥2h 降级为辅助(平台关注度管理);不要重试/不要绕过闸门
77
+ - **防封**:同站节流 15~70s 引擎强制;**会话轮换优先**(引擎每次 run 前自动重启浏览器会话,点击恢复 3-5s);同站冷却 ≥2h 降级为辅助(平台关注度管理);**翻页护栏**(页间 15~25s 节拍、单步 ≤20 页 / 单 run ≤30 页、翻页后同站再冷却 150~300s 随机,流程参数只能调慢);不要重试/不要绕过闸门
78
+ - **闸门锚点是「实际访问的站点」(0.6.7 起)**:没有 `navigate` 步骤的流程(手工导航后操作当前页)**同样受同站节流**——若第一次跑完立刻再跑被拒,`同站节流:site:…(站点维度)`/`flow:…(流程维度兜底)` 是**护栏生效**,不是故障:等够间隔再跑
79
+ - **流程来源标注(0.6.7 起)**:`flow-app list` / `doctor` / `list_flows` 会标 `builtin`(内置原样)/ `builtin-modified`(内置被本地改过)/ `local`(自建);`builtin-modified` **只告警不阻断**(引擎照你的版本执行),自建流程不受影响
82
80
  - **不做**:无人值守调度(一切由 Agent 对话驱动)、L3 自主探索(不直接操作页面元素)、绕过同站闸门/修改冷却参数、自动应用未成熟建议(结构改动必须人工确认 confirm:true)
81
+ - **先查引擎再自研**:页面交互遇阻时,先查引擎能力/包内 SKILL(`skill/flow-rpa-engine.md`)再决定自研;自研仅兜底(如复用引擎已注入页面的 `window.__rpaDom`),探索出的**新交互回写流程**,不长期维护并行自研代码
82
+ - **引擎护栏只保护「走引擎跑的流程」——自己写脚本直连浏览器不受任何保护**:上面这些护栏(拟人动作、同站节流、翻页节奏、验证码中止、掩码、运行记录)都长在引擎进程里。另写一个脚本连上引擎用的那个浏览器调试端口去操作页面,等于**所有护栏同时离场**:节奏由脚本常量决定、没有 runId、没有验证码检测、出了事没有记录。**这不是配置问题,改任何参数都补不回来**——要么走引擎流程,要么由你自行承担平台风控后果
83
+ - **本案复盘(真实事故)**:远程用户用自写脚本直连引擎浏览器的调试端口跑猎聘,脚本里写死「每页间隔 8~15 秒 + 每 5 页停 12 秒 + 关键词之间零冷却」,连续跑 6 个关键词,约 **180 页 / 40 分钟不间断**,随后命中平台验证码页。**注意:引擎当时报的「第 21 页」不是页数阈值,是累积访问量到了**——这类脚本没有冷却、没有节律扰动,出事只是时间问题
84
+ - **不要与引擎共用同一个 9222 端口 / 同一个 profile 并行操作**:引擎**每次 run 前都会重启浏览器会话**(会话轮换,重启后重新打开页面);脚本与引擎并行 → 两边互相打断:脚本刚打开的页面被引擎重启掉、脚本占着 profile 又让引擎连不上。**要自己调试,就单独开一个浏览器实例(另一个调试端口 + 另一个 profile 目录),或者只在引擎完全闲置时临时用一下**——不要两边同时操作同一个账号
85
+ - **遇阻先查引擎能力,不要用「合成事件」替代拟人动作**:页面交互失败时先查包内 SKILL(`skill/flow-rpa-engine.md`)的调用规则与失败处理(很多「点不动」的问题引擎已经解决——如输入框联想下拉遮挡导致真实点击落空,引擎会先关下拉再点)。**不要**用直调页面组件的 `onClick`、`element.click()`、手工派发 `input/change` 事件去「硬点」——这些动作平台侧看得出不是人做的(无鼠标轨迹、事件对象残缺),等于自己给账号加风险指纹
83
86
 
84
- ## 工具面(13 个 MCP 工具)
87
+ ## 工具面(12 个 MCP 工具)
85
88
 
86
- `get_status` / `list_flows` / `run_flow` / `get_run` / `cancel_run` / `validate_flow`
89
+ `get_status` / `list_flows` / `run_flow` / `get_run` / `cancel_run` / `resume_run` / `validate_flow`
87
90
  (核心执行)+ `list_suggestions` / `apply_suggestion` / `dismiss_suggestion`(学习与建议)
88
- + `export_observation` / `sync_pending_uploads` / `get_perf` / `pkg_update`(运维,仅 owner)。
91
+ + `export_observation` / `get_perf`(运维,仅 owner)。
89
92
  签名与调用规则见包内 `skill/flow-rpa-engine.md`。
90
93
 
91
94
  ## 其它 CLI
package/dist/cli.d.ts CHANGED
@@ -50,8 +50,10 @@ export interface DoctorLine {
50
50
  label: string;
51
51
  detail: string;
52
52
  }
53
- /** doctor 体检(纯函数,可单测):返回报告行 + 退出码(仅 ❌ 令退出码非 0) */
54
- export declare function doctorReport(opts: CliOptions): {
53
+ /** doctor 体检(纯函数,可单测):返回报告行 + 退出码(仅 ❌ 令退出码非 0)
54
+ * `detectEdge`(T033-2):Edge 自动探测注入缝(缺省 `defaultEdgePath`)——测试可注入「探测不到」
55
+ * 以覆盖三态中的「未配置」分支,不依赖跑测机器的 Edge 安装情况。 */
56
+ export declare function doctorReport(opts: CliOptions, detectEdge?: () => string): {
55
57
  lines: DoctorLine[];
56
58
  exitCode: number;
57
59
  };
package/dist/cli.js CHANGED
@@ -6,8 +6,11 @@ import { fileURLToPath } from 'node:url';
6
6
  import { parseFlow } from '@qing3a/flow-rpa-engine/src/validate.js';
7
7
  import { waitDurationLabel } from '@qing3a/flow-rpa-engine/src/gate.js';
8
8
  import { FlowRegistry } from './registry.js';
9
- import { defaultRunConfig } from './config.js';
10
- import { acquireInstanceLock, flowHost, forceUnlock, lockState, newRunId, pauseGuidance, releaseInstanceLock, resumeRun, spawnRun } from './runner.js';
9
+ import { defaultEdgePath, defaultRunConfig } from './config.js';
10
+ import { observeRotation, rotationDetail, setRotationObservation } from './session-rotation.js';
11
+ import { acquireInstanceLock, forceUnlock, lockState, newRunId, pauseGuidance, releaseInstanceLock, resumeRun, spawnRun } from './runner.js';
12
+ import { gateKeyLabel, reportGateFallback, resolveGateKey } from './gate-key.js';
13
+ import { observedRuntimeUrl } from './gate-runtime.js';
11
14
  import { buildCtx } from './server.js';
12
15
  /** D-N3:缺省目录(本地开发 → 仓库根;全局 → ~/.flow-rpa) */
13
16
  export function defaultDirs() {
@@ -85,8 +88,9 @@ export function runInit(opts) {
85
88
  process.exit(1);
86
89
  }
87
90
  // T004 P1-5:内置 starter 流程复制(包根 starter/ → flows/,同名已存在则跳过)
91
+ let starterDir;
88
92
  try {
89
- const starterDir = join(dirname(fileURLToPath(import.meta.url)), '..', 'starter'); // dist/ → 包根/starter
93
+ starterDir = join(dirname(fileURLToPath(import.meta.url)), '..', 'starter'); // dist/ → 包根/starter
90
94
  if (existsSync(starterDir)) {
91
95
  for (const sub of readdirSync(starterDir)) {
92
96
  const src = join(starterDir, sub);
@@ -108,6 +112,20 @@ export function runInit(opts) {
108
112
  catch (e) {
109
113
  console.log(`⚠️ 内置流程复制跳过: ${e instanceof Error ? e.message : String(e)}`);
110
114
  }
115
+ // T035-2(S6):基线清单(starter/baseline.json → flows/baseline.json)——**与「同名不覆盖」不同,
116
+ // 这里总是刷新**:清单描述的是「本包内置的基线」,用户改的是流程文件而不是清单;留着旧清单只会
117
+ // 让来源标注失真(升级后把「未改动」误报为「已改动」)。缺失(老包/开发态未 build)→ 静默跳过,
118
+ // 无基线时 FlowRegistry 降级为「不校验来源」(日志一行,不报错)。
119
+ try {
120
+ const baselineSrc = starterDir !== undefined ? join(starterDir, 'baseline.json') : '';
121
+ if (baselineSrc.length > 0 && existsSync(baselineSrc)) {
122
+ copyFileSync(baselineSrc, join(flowsDir, 'baseline.json'));
123
+ console.log('✓ 已内置流程基线: flows/baseline.json(用于标注内置流程是否被本地改动)');
124
+ }
125
+ }
126
+ catch (e) {
127
+ console.log(`⚠️ 内置流程基线复制跳过: ${e instanceof Error ? e.message : String(e)}`);
128
+ }
111
129
  console.log(`✓ 已就绪: flows 目录 ${flowsDir}`);
112
130
  console.log(`✓ 已就绪: data 目录 ${dataDir}`);
113
131
  console.log('');
@@ -119,8 +137,10 @@ export function runInit(opts) {
119
137
  console.log(' C:\\Program Files (x86)\\Microsoft\\Edge\\Application\\msedge.exe)');
120
138
  console.log(' 4. 安装更多流程包:把流程包放入 flows/ 目录(更多流程由 owner 分发)');
121
139
  }
122
- /** doctor 体检(纯函数,可单测):返回报告行 + 退出码(仅 ❌ 令退出码非 0) */
123
- export function doctorReport(opts) {
140
+ /** doctor 体检(纯函数,可单测):返回报告行 + 退出码(仅 ❌ 令退出码非 0)
141
+ * `detectEdge`(T033-2):Edge 自动探测注入缝(缺省 `defaultEdgePath`)——测试可注入「探测不到」
142
+ * 以覆盖三态中的「未配置」分支,不依赖跑测机器的 Edge 安装情况。 */
143
+ export function doctorReport(opts, detectEdge = defaultEdgePath) {
124
144
  const lines = [];
125
145
  let exitCode = 0;
126
146
  const line = (mark, label, detail = '') => {
@@ -166,16 +186,42 @@ export function doctorReport(opts) {
166
186
  else if (flows.length > 0) {
167
187
  line('✅', '流程定义无警告');
168
188
  }
189
+ // T035-2(S6):来源标注(内置 / 内置已改动 / 自建)——「内置流程被静默改过」在体检里一眼可见
190
+ const modified = flows.filter((f) => f.origin === 'builtin-modified');
191
+ const builtin = flows.filter((f) => f.origin === 'builtin').length;
192
+ if (modified.length > 0) {
193
+ line('⚠️', `流程来源(${flows.length} 个:内置 ${builtin} / 内置已改动 ${modified.length} / 自建 ${flows.length - builtin - modified.length})`, `与内置基线不一致(本地已改动):${modified.map((f) => f.id).join(', ')}——引擎照你的版本执行,不阻断`);
194
+ }
195
+ else if (flows.length > 0) {
196
+ line('✅', `流程来源(${flows.length} 个:内置 ${builtin} / 自建 ${flows.length - builtin})`, '无内置流程偏离基线');
197
+ }
169
198
  }
170
- // Edge:显式配置 ✅;未配置 ⚠️(外部 9222 复用可跑;从零自举建议 --edge)
171
- if (opts.edgePath) {
172
- line('✅', 'Edge 可执行文件', opts.edgePath);
199
+ // Edge:T033-2(S5)与**真实运行配置同源**——判据 = configFromCli 相同的优先级链
200
+ // (显式 --edge 优先,否则探测 `detectEdge()` = 缺省 defaultEdgePath),不再只看 CLI 旗标
201
+ // (旧口径会把「自动探测到」误报为「未配置」,远程用户碰到过这种误报)。三态:
202
+ // ① 显式配置 --edge → ✅;② 自动探测到 → ✅(打印探测路径);③ 未配置 → ⚠️(并明说本次 run 不会轮换会话)
203
+ // 探测只跑一次(detectEdge 注入缝:测试可注入「探测不到」覆盖第 ③ 态)
204
+ const explicitEdge = opts.edgePath !== undefined && opts.edgePath.length > 0 ? opts.edgePath : undefined;
205
+ const edgePath = explicitEdge ?? detectEdge();
206
+ const rotation = observeRotation(edgePath, explicitEdge !== undefined);
207
+ setRotationObservation(rotation);
208
+ if (rotation.reason === 'explicit') {
209
+ line('✅', 'Edge 可执行文件(显式配置 --edge)', rotation.edgePath);
210
+ }
211
+ else if (rotation.reason === 'detected') {
212
+ line('✅', 'Edge 可执行文件(自动探测到)', `${rotation.edgePath}——未传 --edge,运行时按此路径拉起/轮换`);
173
213
  }
174
214
  else {
175
- line('⚠️', 'Edge 可执行文件', '未配置(--edge)——从零自举建议显式指定;若外部已开 9222 调试实例可省略');
215
+ line('⚠️', 'Edge 可执行文件', '未配置且未探测到(常见安装路径都没有)——外部已开 9222 调试实例时可跑;' +
216
+ '本次 run 不会做会话轮换(轮换需要 Edge 可执行文件)');
176
217
  }
218
+ // T033-2:会话轮换状态(与 executeRun / get_status 同一判据;把「静默跳过」变成可见项)
219
+ line(rotation.enabled ? '✅' : '⚠️', '会话轮换(每次 run 前)', rotationDetail(rotation));
177
220
  // BATCH-B:同站冷却建议(防封节奏提示,非阻断——⚠️ 不令退出码非 0)
178
- line('⚠️', '同站冷却建议(≥2h)', '目标站点对高频访问有节流——真实流程建议同站冷却 ≥2h(点击慢时);引擎已自动会话轮换(run 前重启浏览器会话)');
221
+ const coolHint = rotation.enabled
222
+ ? '引擎已自动会话轮换(run 前重启浏览器会话)'
223
+ : '本次未启用会话轮换(见上一项:未探测到 Edge)';
224
+ line('⚠️', '同站冷却建议(≥2h)', `目标站点对高频访问有节流——真实流程建议同站冷却 ≥2h(点击慢时);${coolHint}`);
179
225
  // 单实例锁:held = 阻断;死锁/损坏 = ⚠️(可 unlock 清理)
180
226
  try {
181
227
  const st = lockState(opts.dataDir);
@@ -265,7 +311,7 @@ export function installSkill(targetDir) {
265
311
  const skillDir = join(targetDir, 'flow-rpa-engine');
266
312
  mkdirSync(skillDir, { recursive: true });
267
313
  const skillBody = final.replace(/^<!--[\s\S]*?-->\n?/, ''); // 去掉版本注释头(frontmatter 取代它)
268
- const frontmatter = `---\nname: flow-rpa-engine\ndescription: flow-rpa 本地 RPA 引擎——MCP 13 工具调用说明书(流程执行/结果查询/建议处置)。首次使用/自举见「〇、首次使用/自举」。安装版本 v${version}。\nversion: ${version}\n---\n`;
314
+ const frontmatter = `---\nname: flow-rpa-engine\ndescription: flow-rpa 本地 RPA 引擎——MCP 12 工具调用说明书(流程执行/结果查询/建议处置)。首次使用/自举见「〇、首次使用/自举」。安装版本 v${version}。\nversion: ${version}\n---\n`;
269
315
  const skMd = frontmatter + skillBody;
270
316
  writeFileSync(join(skillDir, 'SKILL.md'), skMd, 'utf8');
271
317
  // 平铺兼容(不破坏既有用法)
@@ -415,24 +461,31 @@ export function formatRunResult(r, runsDir) {
415
461
  }
416
462
  if (r.precheckRejected)
417
463
  lines.push(' (本次 resume 未执行——登录态预检未通过,见上)');
464
+ // T035(S6 来源 / S2 闸门维度):只进 CLI 输出(run.json 落盘格式冻结,这两项不落盘)
465
+ if (r.origin)
466
+ lines.push(` 流程来源: ${r.origin}`);
467
+ if (r.gateKey)
468
+ lines.push(` 闸门维度: ${r.gateKey}`);
418
469
  lines.push(` 记录: ${join(runsDir, `${r.runId}.json`)}`);
419
470
  return lines.join('\n');
420
471
  }
421
- /** run 前置检查(镜像 server run_flow handler 顺序:存在性 → 必填 vars → 同站闸门——CLI 直跑不绕过防封闸门) */
422
- function precheckRun(ctx, flowId, vars) {
472
+ /**
473
+ * run 前置检查(镜像 server run_flow handler 顺序:存在性 → 必填 vars → 同站闸门——CLI 直跑不绕过防封闸门)。
474
+ * `gate`(T035-1,S2):闸门 key 的三级解析结果——① 运行时 host 由页面驱动提供(CLI 前置检查拿不到
475
+ * 页面对象,故此处实际落在 ② 流程声明的 navigate host / ③ `flow:<id>` 兜底);返回给调用方,
476
+ * 与执行层的 penalize 用**同一个 key**(同一 run 不出现两套口径)。
477
+ */
478
+ function precheckRun(ctx, flowId, vars, gate) {
423
479
  const cached = ctx.registry.get(flowId);
424
480
  if (!cached)
425
481
  return `✗ 流程不存在: ${flowId}(flow-app list 查看可用流程)`;
426
- const missing = (cached.flow.inputs ?? []).filter((i) => i.required === true && vars[i.name] === undefined);
482
+ const missing = (cached.flow.inputs ?? []).filter((i) => i.required === true && i.default === undefined && vars[i.name] === undefined);
427
483
  if (missing.length > 0) {
428
484
  return `✗ 缺少必填参数: ${missing.map((m) => m.name).join(', ')}(用 --vars '<JSON>' 传入;flow-app list 查看各流程 inputs)`;
429
485
  }
430
- const host = flowHost(ctx, flowId);
431
- if (host) {
432
- const waitSecs = ctx.siteGate.acquire(host);
433
- if (typeof waitSecs === 'number') {
434
- return `✗ 同站节流:${host} 还需等待 ${waitDurationLabel(waitSecs)}`;
435
- }
486
+ const waitSecs = ctx.siteGate.acquire(gate.key);
487
+ if (typeof waitSecs === 'number') {
488
+ return `✗ 同站节流:${gateKeyLabel(gate)} 还需等待 ${waitDurationLabel(waitSecs)}`;
436
489
  }
437
490
  return undefined;
438
491
  }
@@ -457,7 +510,15 @@ export async function cliRun(opts, flowId, varsRaw) {
457
510
  return { code: 2, output: `✗ ${e instanceof Error ? e.message : String(e)}` };
458
511
  }
459
512
  const ctx = cliCtx(opts);
460
- const precheckErr = precheckRun(ctx, flowId, vars);
513
+ // T035-1(S2):闸门 key 三级解析(① 该流程最近一次 run 观测到的运行时宿主站 → ② 流程声明
514
+ // navigate host → ③ flow 维度兜底);解析结果一路传进执行层,acquire 与 penalize 同一个 key。
515
+ const cached = ctx.registry.get(flowId);
516
+ if (!cached)
517
+ return { code: 1, output: `✗ 流程不存在: ${flowId}(flow-app list 查看可用流程)` };
518
+ const gate = resolveGateKey(flowId, cached.flow.steps, { runtimeUrl: observedRuntimeUrl(flowId) });
519
+ if (gate.source === 'flow')
520
+ reportGateFallback(flowId);
521
+ const precheckErr = precheckRun(ctx, flowId, vars, gate);
461
522
  if (precheckErr)
462
523
  return { code: precheckErr.startsWith('✗ 缺少必填参数') ? 2 : 1, output: precheckErr };
463
524
  try {
@@ -471,7 +532,7 @@ export async function cliRun(opts, flowId, varsRaw) {
471
532
  }
472
533
  const runId = newRunId();
473
534
  try {
474
- const r = await spawnRun(ctx, { flowId, vars, wait: true, owner: 'cli' }, runId);
535
+ const r = await spawnRun(ctx, { flowId, vars, wait: true, owner: 'cli', gateKeyResolved: gate }, runId);
475
536
  return { code: r.status === 'failed' ? 1 : 0, output: formatRunResult(r, ctx.store.runsDir()) };
476
537
  }
477
538
  finally {
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
package/dist/config.d.ts CHANGED
@@ -27,3 +27,8 @@ export interface RunConfig {
27
27
  export declare function defaultEdgePath(): string;
28
28
  /** 默认配置:真实浏览器驱动,profile 与 sim 参数在 data 目录 */
29
29
  export declare function defaultRunConfig(dataDir: string, mock: boolean): RunConfig;
30
+ /**
31
+ * 与 `defaultRunConfig` 同源,仅注入日志出口(测试可传静默/捕获 sink;
32
+ * T033 的 doctor 与真实运行配置同源纪律同样适用于此)。
33
+ */
34
+ export declare function defaultRunConfigWith(dataDir: string, mock: boolean, log: (msg: string) => void): RunConfig;
package/dist/config.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import { existsSync } from 'node:fs';
2
2
  import { join } from 'node:path';
3
3
  import { CDP_PORT } from '@qing3a/flow-rpa-engine/src/cdp/client.js';
4
- import { defaultProfileFile, loadSimProfile } from '@qing3a/flow-rpa-engine/src/simprofile.js';
4
+ import { defaultProfileFile, loadSimProfileWith, profileKeyOf } from '@qing3a/flow-rpa-engine/src/simprofile.js';
5
5
  /** 探测本机 Edge 可执行文件(Windows 常见安装路径) */
6
6
  export function defaultEdgePath() {
7
7
  for (const p of [
@@ -13,15 +13,35 @@ export function defaultEdgePath() {
13
13
  }
14
14
  return '';
15
15
  }
16
+ /**
17
+ * 拟人人格日志出口(T037 修正,2026-09-11 监督层复核):
18
+ * **必须走 stderr**——stdio 模式下 stdout 是 MCP JSON-RPC 协议通道,任何非协议帧都会让客户端
19
+ * JSON.parse 失败(回归实证:缺省 console.log 导致 mcp-stdio.test.ts 5/5 failed)。
20
+ * stderr 在任何传输模式下都是安全诊断口(HTTP 模式同样如此)。
21
+ * 消息自带 `[flow-rpa]` 前缀,故这里不再重复加前缀。
22
+ */
23
+ function personaLog(msg) {
24
+ console.error(msg);
25
+ }
16
26
  /** 默认配置:真实浏览器驱动,profile 与 sim 参数在 data 目录 */
17
27
  export function defaultRunConfig(dataDir, mock) {
28
+ return defaultRunConfigWith(dataDir, mock, personaLog);
29
+ }
30
+ /**
31
+ * 与 `defaultRunConfig` 同源,仅注入日志出口(测试可传静默/捕获 sink;
32
+ * T033 的 doctor 与真实运行配置同源纪律同样适用于此)。
33
+ */
34
+ export function defaultRunConfigWith(dataDir, mock, log) {
18
35
  const keepRaw = Number(process.env.FLOW_RPA_KEEP_RUNS);
36
+ // T037-1/4(0.7.0):人格按「真随机 salt + 账号标识(数据目录指纹)」加载——
37
+ // 同机不同 --data 目录 = 不同人格(账号级隔离);首次生成/迁移时打印一次 salt(可复现/排障)。
38
+ const loaded = loadSimProfileWith(defaultProfileFile(dataDir), profileKeyOf(dataDir), { dataDir, log });
19
39
  return {
20
40
  cdpPort: CDP_PORT,
21
41
  edgePath: defaultEdgePath(),
22
42
  userDataDir: join(dataDir, 'edge-profile'),
23
43
  mock,
24
- simProfile: loadSimProfile(defaultProfileFile(dataDir)).profile,
44
+ simProfile: loaded.loaded.profile,
25
45
  role: 'owner',
26
46
  pauseTimeoutMs: 5 * 60_000,
27
47
  keepRuns: Number.isInteger(keepRaw) && keepRaw > 0 ? keepRaw : 30,
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AACpC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,QAAQ,EAAE,MAAM,2CAA2C,CAAA;AACpE,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAmB,MAAM,2CAA2C,CAAA;AA6B/G,sCAAsC;AACtC,MAAM,UAAU,eAAe;IAC7B,KAAK,MAAM,CAAC,IAAI;QACd,mEAAmE;QACnE,6DAA6D;KAC9D,EAAE,CAAC;QACF,IAAI,UAAU,CAAC,CAAC,CAAC;YAAE,OAAO,CAAC,CAAA;IAC7B,CAAC;IACD,OAAO,EAAE,CAAA;AACX,CAAC;AAED,6CAA6C;AAC7C,MAAM,UAAU,gBAAgB,CAAC,OAAe,EAAE,IAAa;IAC7D,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAA;IACtD,OAAO;QACL,OAAO,EAAE,QAAQ;QACjB,QAAQ,EAAE,eAAe,EAAE;QAC3B,WAAW,EAAE,IAAI,CAAC,OAAO,EAAE,cAAc,CAAC;QAC1C,IAAI;QACJ,UAAU,EAAE,cAAc,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO;QAC/D,IAAI,EAAE,OAAO;QACb,cAAc,EAAE,CAAC,GAAG,MAAM;QAC1B,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;KAClE,CAAA;AACH,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AACpC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAA;AAChC,OAAO,EAAE,QAAQ,EAAE,MAAM,2CAA2C,CAAA;AACpE,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,YAAY,EAAmB,MAAM,2CAA2C,CAAA;AA6BjI,sCAAsC;AACtC,MAAM,UAAU,eAAe;IAC7B,KAAK,MAAM,CAAC,IAAI;QACd,mEAAmE;QACnE,6DAA6D;KAC9D,EAAE,CAAC;QACF,IAAI,UAAU,CAAC,CAAC,CAAC;YAAE,OAAO,CAAC,CAAA;IAC7B,CAAC;IACD,OAAO,EAAE,CAAA;AACX,CAAC;AAED;;;;;;GAMG;AACH,SAAS,UAAU,CAAC,GAAW;IAC7B,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;AACpB,CAAC;AAED,6CAA6C;AAC7C,MAAM,UAAU,gBAAgB,CAAC,OAAe,EAAE,IAAa;IAC7D,OAAO,oBAAoB,CAAC,OAAO,EAAE,IAAI,EAAE,UAAU,CAAC,CAAA;AACxD,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,oBAAoB,CAClC,OAAe,EACf,IAAa,EACb,GAA0B;IAE1B,MAAM,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAA;IACtD,mDAAmD;IACnD,0DAA0D;IAC1D,MAAM,MAAM,GAAG,kBAAkB,CAAC,kBAAkB,CAAC,OAAO,CAAC,EAAE,YAAY,CAAC,OAAO,CAAC,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,CAAA;IACvG,OAAO;QACL,OAAO,EAAE,QAAQ;QACjB,QAAQ,EAAE,eAAe,EAAE;QAC3B,WAAW,EAAE,IAAI,CAAC,OAAO,EAAE,cAAc,CAAC;QAC1C,IAAI;QACJ,UAAU,EAAE,MAAM,CAAC,MAAM,CAAC,OAAO;QACjC,IAAI,EAAE,OAAO;QACb,cAAc,EAAE,CAAC,GAAG,MAAM;QAC1B,QAAQ,EAAE,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;KAClE,CAAA;AACH,CAAC"}
@@ -0,0 +1,65 @@
1
+ /**
2
+ * T035-1(ANTI-BAN-PRINCIPLES §五 S2):同站闸门的 **key 来源**收敛为一个纯函数。
3
+ *
4
+ * 缺陷(修复前):`runner.flowHost()` 只取**第一个** `navigate` 步骤的 URL host →
5
+ * ① 没有 navigate 的流程(手工导航后直接操作当前页)返回 `undefined`,`if (host)` 直接放过
6
+ * → 同站节流被完全绕过;② 跳站流程只闸第一站。
7
+ *
8
+ * 本模块把闸门 key 解析改成**运行时**口径(三级,永远返回 key,宁严不松):
9
+ * ① 运行时实际 host —— 该流程最近一次 run 起点读到的页面 URL(`gate-runtime.ts` 观测;探不到则跳过本级)
10
+ * ② 流程声明的 navigate host —— **全部** navigate 步骤里**最后一个**(= 最严:贴近 run 结束时所在站点)
11
+ * ③ 都没有 → `flow:<flowId>` 维度兜底(同一流程重复执行照样受节流)+ 一行告警日志
12
+ *
13
+ * 为什么「取最后一个」而不是第一个:跳站流程(如先 zhipin 再 liepin)的**最后**一站才是
14
+ * run 结束时真正被访问的站点,也是下一个 run 真正会再碰到的那一站;只闸第一站等于漏掉后面全部。
15
+ *
16
+ * 边界(不放松也不新增):闸门语义(跨站互不影响、随机 15~70s 窗口、深度翻页惩罚)完全不变——
17
+ * 本模块只决定「记哪个 key」。四条红线(验证码即中止 / 同站闸门 / 掩码前移 / 执行隔离)无一放松。
18
+ */
19
+ /** `site:` = 解析到站点 host(真闸门);`flow:` = 兜底到 flowId 维度(无 host 可锚) */
20
+ export type GateKeySource = 'site' | 'flow';
21
+ /** 闸门 key 解析结果(`key` 已带维度前缀:`site:` / `flow:`) */
22
+ export interface GateKeyResolution {
23
+ /** 闸门台账 key(`site:<host>` 或 `flow:<flowId>`)——直接用作 SiteGate 的 host 参数 */
24
+ key: string;
25
+ source: GateKeySource;
26
+ /** 站点 host(`hostOf` 口径,含端口;source='flow' 时为空串)——只用于文案/日志 */
27
+ host: string;
28
+ }
29
+ /** 流程定义里可用于锚定站点的步骤(只用到这两个字段——引擎流程数据口径不变) */
30
+ export interface GateFlowStep {
31
+ type: string;
32
+ params: Record<string, unknown>;
33
+ }
34
+ /** 优先级 ① 的入参:运行时实际页面的 URL(来源见 `gate-runtime.ts`;测试可直接注入) */
35
+ export interface GateKeyOptions {
36
+ /** 已读到的页面 URL(如该流程最近一次 run 起点观测到的 `location.href`) */
37
+ runtimeUrl?: string;
38
+ }
39
+ /** 未解析到站点 host 的告警文案(server / CLI / runner 三处同一文案源) */
40
+ export declare const NO_HOST_WARNING = "\u672A\u89E3\u6790\u5230\u7AD9\u70B9 host\uFF0C\u6309 flow \u7EF4\u5EA6\u8282\u6D41";
41
+ /** 闸门 key 的展示口径(日志/状态用;站点维度与流程维度一眼可分) */
42
+ export declare function gateKeyLabel(r: GateKeyResolution): string;
43
+ /** 闸门告警行(未解析到 host 时;返回 undefined = 无需告警)。调用方通常直接用 `reportGateFallback` */
44
+ export declare function gateWarning(r: GateKeyResolution, flowId: string): string | undefined;
45
+ /**
46
+ * 「按 flow 维度兜底」告警输出(幂等:同一流程每次进程只喊一次——这个状态是流程属性而非事件,
47
+ * 每次 run 刷一遍会把日志淹掉)。返回本次是否真的打印了(供测试断言)。
48
+ */
49
+ export declare function reportGateFallback(flowId: string, warn?: (msg: string) => void): boolean;
50
+ /**
51
+ * 流程声明的 navigate host 链(优先级 ②):按步骤顺序取**全部** navigate URL 的 host,
52
+ * 返回**最后一个**(最严口径,见模块头)。无 navigate / URL 缺失 / host 抽不出来 → undefined。
53
+ */
54
+ export declare function declaredNavigateHost(steps: readonly GateFlowStep[]): string | undefined;
55
+ /**
56
+ * 解析闸门 key(**同步口径**):优先级 ① 只认已读到的 `opts.runtimeUrl`(入口层从
57
+ * `gate-runtime.ts` 的观测量取,或测试注入),没有就直接降级 ② / ③。
58
+ * 用于 acquire 发生在 run 之前的两处入口:`server.ts` 的 run_flow handler 与 CLI 的 precheckRun。
59
+ */
60
+ export declare function resolveGateKey(flowId: string, steps: readonly GateFlowStep[], opts?: GateKeyOptions): GateKeyResolution;
61
+ /**
62
+ * `executeRun` 的闸门解析入口:调用方已解析过(server/CLI 的 run 前 acquire)就**原样返回**
63
+ * (零重复探测、零口径漂移);没传(如 resume_run)就按「运行时 host → 流程声明 host → flow 维度」现解析。
64
+ */
65
+ export declare function resolveGateKeyInRun(resolved: GateKeyResolution | undefined, runtimeUrl: string | undefined, flowId: string, steps: readonly GateFlowStep[]): GateKeyResolution;
@@ -0,0 +1,93 @@
1
+ import { hostOf } from '@qing3a/flow-rpa-engine/src/gate.js';
2
+ /** 未解析到站点 host 的告警文案(server / CLI / runner 三处同一文案源) */
3
+ export const NO_HOST_WARNING = '未解析到站点 host,按 flow 维度节流';
4
+ /** 已报过「flow 维度兜底」告警的流程(同一流程只喊一次,避免每次 run 刷屏) */
5
+ const fallbackWarned = new Set();
6
+ /** 闸门 key 的展示口径(日志/状态用;站点维度与流程维度一眼可分) */
7
+ export function gateKeyLabel(r) {
8
+ return r.source === 'site' ? `${r.host}(站点维度)` : `${r.key}(流程维度兜底)`;
9
+ }
10
+ /** 闸门告警行(未解析到 host 时;返回 undefined = 无需告警)。调用方通常直接用 `reportGateFallback` */
11
+ export function gateWarning(r, flowId) {
12
+ return r.source === 'flow' ? `[flow-rpa] ${NO_HOST_WARNING}:流程 ${flowId}(key=${r.key})` : undefined;
13
+ }
14
+ /**
15
+ * 「按 flow 维度兜底」告警输出(幂等:同一流程每次进程只喊一次——这个状态是流程属性而非事件,
16
+ * 每次 run 刷一遍会把日志淹掉)。返回本次是否真的打印了(供测试断言)。
17
+ */
18
+ export function reportGateFallback(flowId, warn = console.log) {
19
+ if (fallbackWarned.has(flowId))
20
+ return false;
21
+ fallbackWarned.add(flowId);
22
+ warn(`[flow-rpa] ${NO_HOST_WARNING}:流程 ${flowId}(key=flow:${flowId})`);
23
+ return true;
24
+ }
25
+ /**
26
+ * URL → 站点 host;**抽不出 host 形态则 undefined**(视为「本级探不到」,降级到下一级)。
27
+ * 判据(三条,刻意保守;宁可退到 flow 维度兜底,也不假装有站点闸门):
28
+ * - host 段不得含 `{`——流程里写插值占位(`https://{domain}/x`)时 `hostOf` 会退化成
29
+ * `{domain}:443`,用它当 key 等于「用一个永不会重复出现的 key 假装有闸门」;
30
+ * - host 段含 `.`(真域名)**或** URL 显式写了端口(`http://localhost:9222/` 这类本机调试端点
31
+ * 没有点但确是站点)——二者满足其一才认;
32
+ * - 去掉端口后不得为空。
33
+ * 真机口径不受影响:`location.href` 与真流程的 navigate URL 都是真 host。
34
+ */
35
+ function hostFromUrl(url) {
36
+ if (typeof url !== 'string' || url.length === 0)
37
+ return undefined;
38
+ const h = hostOf(url);
39
+ const colon = h.lastIndexOf(':');
40
+ const explicitPort = colon !== -1 && /^[0-9]+$/.test(h.slice(colon + 1));
41
+ const name = explicitPort ? h.slice(0, colon) : h;
42
+ if (name.length === 0 || name.includes('{'))
43
+ return undefined;
44
+ if (!name.includes('.') && !explicitPort)
45
+ return undefined;
46
+ return h;
47
+ }
48
+ /**
49
+ * 流程声明的 navigate host 链(优先级 ②):按步骤顺序取**全部** navigate URL 的 host,
50
+ * 返回**最后一个**(最严口径,见模块头)。无 navigate / URL 缺失 / host 抽不出来 → undefined。
51
+ */
52
+ export function declaredNavigateHost(steps) {
53
+ let last;
54
+ for (const s of steps) {
55
+ if (s.type !== 'navigate')
56
+ continue;
57
+ const h = hostFromUrl(typeof s.params?.url === 'string' ? s.params.url : undefined);
58
+ if (h)
59
+ last = h;
60
+ }
61
+ return last;
62
+ }
63
+ /**
64
+ * 解析闸门 key(**同步口径**):优先级 ① 只认已读到的 `opts.runtimeUrl`(入口层从
65
+ * `gate-runtime.ts` 的观测量取,或测试注入),没有就直接降级 ② / ③。
66
+ * 用于 acquire 发生在 run 之前的两处入口:`server.ts` 的 run_flow handler 与 CLI 的 precheckRun。
67
+ */
68
+ export function resolveGateKey(flowId, steps, opts = {}) {
69
+ // ① 运行时实际 host(调用方已读到的页面 URL)
70
+ const runtime = hostFromUrl(opts.runtimeUrl);
71
+ if (runtime)
72
+ return { key: `site:${runtime}`, source: 'site', host: runtime };
73
+ // ② 流程声明的 navigate host(全部 navigate 取最后一个)
74
+ const declared = declaredNavigateHost(steps);
75
+ if (declared)
76
+ return { key: `site:${declared}`, source: 'site', host: declared };
77
+ // ③ flow 维度兜底(调用方按 reportGateFallback 打一行告警,同一流程只喊一次)
78
+ return { key: `flow:${flowId}`, source: 'flow', host: '' };
79
+ }
80
+ /**
81
+ * `executeRun` 的闸门解析入口:调用方已解析过(server/CLI 的 run 前 acquire)就**原样返回**
82
+ * (零重复探测、零口径漂移);没传(如 resume_run)就按「运行时 host → 流程声明 host → flow 维度」现解析。
83
+ */
84
+ export function resolveGateKeyInRun(resolved, runtimeUrl, flowId, steps) {
85
+ if (isResolution(resolved))
86
+ return resolved;
87
+ return resolveGateKey(flowId, steps, { runtimeUrl });
88
+ }
89
+ /** 判断入参是不是「已解析结果」(`resolveGateKeyInRun` 用:已解析就零重复探测地原样返回) */
90
+ function isResolution(v) {
91
+ return v !== undefined && typeof v.key === 'string';
92
+ }
93
+ //# sourceMappingURL=gate-key.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gate-key.js","sourceRoot":"","sources":["../src/gate-key.ts"],"names":[],"mappings":"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"}