



























@@ -69,6 +69,7 @@ describe("wrapper classification", () => {
6969{ token: "caffeinate", dispatch: true, shell: false },
7070{ token: "sandbox-exec", dispatch: true, shell: false },
7171{ token: "script", dispatch: true, shell: false },
72+{ token: "flock", dispatch: true, shell: false },
7273{ token: "time", dispatch: true, shell: false },
7374{ token: "timeout.exe", dispatch: true, shell: false },
7475{ token: "bash", dispatch: false, shell: true },
@@ -186,6 +187,34 @@ describe("unwrapKnownDispatchWrapperInvocation", () => {
186187argv: ["time", "-p", "bash", "-lc", "echo hi"],
187188expected: { kind: "unwrapped", wrapper: "time", argv: ["bash", "-lc", "echo hi"] },
188189},
190+{
191+argv: ["flock", "-n", "/tmp/openclaw.lock", "bash", "-lc", "echo hi"],
192+expected: { kind: "unwrapped", wrapper: "flock", argv: ["bash", "-lc", "echo hi"] },
193+},
194+{
195+argv: ["flock", "-en", "/tmp/openclaw.lock", "bash", "-lc", "echo hi"],
196+expected: { kind: "unwrapped", wrapper: "flock", argv: ["bash", "-lc", "echo hi"] },
197+},
198+{
199+argv: ["flock", "-E", "1", "/tmp/openclaw.lock", "bash", "-lc", "echo hi"],
200+expected: { kind: "unwrapped", wrapper: "flock", argv: ["bash", "-lc", "echo hi"] },
201+},
202+{
203+argv: ["flock", "-F", "/tmp/openclaw.lock", "bash", "-lc", "echo hi"],
204+expected: { kind: "unwrapped", wrapper: "flock", argv: ["bash", "-lc", "echo hi"] },
205+},
206+{
207+argv: ["flock", "-o", "/tmp/openclaw.lock", "bash", "-lc", "echo hi"],
208+expected: { kind: "unwrapped", wrapper: "flock", argv: ["bash", "-lc", "echo hi"] },
209+},
210+{
211+argv: ["flock", "--nb", "/tmp/openclaw.lock", "bash", "-lc", "echo hi"],
212+expected: { kind: "unwrapped", wrapper: "flock", argv: ["bash", "-lc", "echo hi"] },
213+},
214+{
215+argv: ["flock", "--wait", "1", "/tmp/openclaw.lock", "bash", "-lc", "echo hi"],
216+expected: { kind: "unwrapped", wrapper: "flock", argv: ["bash", "-lc", "echo hi"] },
217+},
189218{
190219argv: ["timeout", "--signal=TERM", "5s", "bash", "-lc", "echo hi"],
191220expected: { kind: "unwrapped", wrapper: "timeout", argv: ["bash", "-lc", "echo hi"] },
@@ -225,6 +254,18 @@ describe("unwrapKnownDispatchWrapperInvocation", () => {
225254argv: ["timeout", "--bogus", "5s", "bash", "-lc", "echo hi"],
226255expected: { kind: "blocked", wrapper: "timeout" },
227256},
257+{
258+argv: ["flock", "/tmp/openclaw.lock", "-c", "echo hi"],
259+expected: { kind: "blocked", wrapper: "flock" },
260+},
261+{
262+argv: ["flock", "-un", "/tmp/openclaw.lock", "bash", "-lc", "echo hi"],
263+expected: { kind: "blocked", wrapper: "flock" },
264+},
265+{
266+argv: ["flock", "-u", "9"],
267+expected: { kind: "blocked", wrapper: "flock" },
268+},
228269{
229270argv: ["arch", "-e", "FOO=bar", "bash", "-lc", "echo hi"],
230271expected: { kind: "blocked", wrapper: "arch" },
@@ -310,6 +351,21 @@ describe("resolveDispatchWrapperTrustPlan", () => {
310351wrapper: "time",
311352effectiveArgv: ["bash", "-lc", "echo hi"],
312353},
354+{
355+argv: ["flock", "--timeout=2", "/tmp/openclaw.lock", "bash", "-lc", "echo hi"],
356+wrapper: "flock",
357+effectiveArgv: ["bash", "-lc", "echo hi"],
358+},
359+{
360+argv: ["flock", "--close", "/tmp/openclaw.lock", "bash", "-lc", "echo hi"],
361+wrapper: "flock",
362+effectiveArgv: ["bash", "-lc", "echo hi"],
363+},
364+{
365+argv: ["flock", "--no-fork", "/tmp/openclaw.lock", "bash", "-lc", "echo hi"],
366+wrapper: "flock",
367+effectiveArgv: ["bash", "-lc", "echo hi"],
368+},
313369{
314370argv: ["timeout", "--signal=TERM", "5s", "bash", "-lc", "echo hi"],
315371wrapper: "timeout",
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。