惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Apple Machine Learning Research
Apple Machine Learning Research
J
Java Code Geeks
博客园 - 聂微东
Microsoft Azure Blog
Microsoft Azure Blog
量子位
T
Tailwind CSS Blog
Vercel News
Vercel News
I
InfoQ
Stack Overflow Blog
Stack Overflow Blog
U
Unit 42
Engineering at Meta
Engineering at Meta
L
LangChain Blog
大猫的无限游戏
大猫的无限游戏
D
Docker
博客园_首页
P
Proofpoint News Feed
月光博客
月光博客
T
The Blog of Author Tim Ferriss
MyScale Blog
MyScale Blog
酷 壳 – CoolShell
酷 壳 – CoolShell
Martin Fowler
Martin Fowler
腾讯CDC
N
Netflix TechBlog - Medium
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More

Recent Commits to openclaw:main

test: merge chat side-result checks · openclaw/openclaw@ddd2c2a test: merge cron history checks · openclaw/openclaw@f7eb746 test: merge responsive navigation shell checks · openclaw/openclaw@c2e4b47 docs(changelog): add codex oauth fixes · openclaw/openclaw@628e6cd test: merge navigation routing cases · openclaw/openclaw@5d8cecb Tests: mock channel registry bundled fallback · openclaw/openclaw@2b08233 Secrets: avoid broad web search discovery for single plugin config · openclaw/openclaw@a464f59 test: merge config view browser checks · openclaw/openclaw@20cf511 fix(status): align oauth health with runtime · openclaw/openclaw@eed7116 feat: add macOS screen snapshots for monitor preview (#67954) thanks … · openclaw/openclaw@f377db1 fix: report shared auth scopes in hello-ok (#67810) thanks @BunsDev · openclaw/openclaw@0b6c39b Auto-reply: avoid eager bundled route fallback · openclaw/openclaw@3ea1bf4 Tests: narrow session binding contract setup · openclaw/openclaw@54e4e16 fix(macOS): enable undo/redo in webchat composer text input (#34962) · openclaw/openclaw@00951dc Tests: speed up channel setup promotion · openclaw/openclaw@82b529a Docs: refresh agent instructions · openclaw/openclaw@5775fe2 fix(auth): serialize OAuth refresh across agents to fix #26322 (#67876) · openclaw/openclaw@8e79080 test: allow ollama public surface boundary test · openclaw/openclaw@7d4f1a6 Docs: add test performance guardrails · openclaw/openclaw@89706d3 Tests: restore context-engine usage proof · openclaw/openclaw@e4c4f95 Tests: slim context engine runtime coverage · openclaw/openclaw@74c198f ci: retry failed custom checkouts · openclaw/openclaw@0ee5baf test: trim duplicate provider auth onboarding cases · openclaw/openclaw@1ffc02e matrix: fix sessions_spawn --thread subagent session spawning (#67643) · openclaw/openclaw@1ce2596 test: reduce auth choice fixture churn · openclaw/openclaw@857b9cd test: mock health status config boundaries · openclaw/openclaw@9d5ab4a test: mock onboard config io boundary · openclaw/openclaw@299694d test: mock legacy state plugin boundaries · openclaw/openclaw@2713089 test: mock channel install boundaries · openclaw/openclaw@b945248 test: mock doctor preview channel boundaries · openclaw/openclaw@b1a3ad4
docs: document sandbox policy tests · openclaw/openclaw@b...
steipete · 2026-06-05 · via Recent Commits to openclaw:main
Original file line numberDiff line numberDiff line change

@@ -1,3 +1,5 @@

1+

// noVNC auth tests cover observer URL construction, one-time tokens, and

2+

// password generation for sandbox browser viewing.

13

import { describe, expect, it } from "vitest";

24

import {

35

buildNoVncDirectUrl,

@@ -24,6 +26,8 @@ describe("noVNC auth helpers", () => {

2426

});

2527
2628

it("issues one-time short-lived observer tokens", () => {

29+

// Observer tokens are bearer access to a browser session, so consumption is

30+

// one-shot and bounded by a short TTL.

2731

resetNoVncObserverTokensForTests();

2832

const token = issueNoVncObserverToken({

2933

noVncPort: 50123,

Original file line numberDiff line numberDiff line change

@@ -1,3 +1,5 @@

1+

// Sandbox management tests cover browser runtime listing/removal metadata and

2+

// backend manager wiring.

13

import { beforeAll, beforeEach, describe, expect, it, vi } from "vitest";

24
35

let listSandboxBrowsers: typeof import("./manage.js").listSandboxBrowsers;

@@ -133,6 +135,8 @@ describe("listSandboxBrowsers", () => {

133135

});

134136
135137

it("compares browser runtimes against sandbox.browser.image", async () => {

138+

// Browser containers have a different configured image than shell sandboxes;

139+

// management views must compare against the browser label kind.

136140

const results = await listSandboxBrowsers();

137141
138142

const describeInput = firstDescribeRuntimeInput();

Original file line numberDiff line numberDiff line change

@@ -1,3 +1,5 @@

1+

// Sandbox env sanitizer tests cover credential filtering for inherited and

2+

// explicitly configured sandbox environment variables.

13

import { describe, expect, it } from "vitest";

24

import { sanitizeEnvVars, sanitizeExplicitSandboxEnvVars } from "./sanitize-env-vars.js";

35

@@ -67,6 +69,8 @@ describe("sanitizeEnvVars", () => {

6769

});

6870
6971

it("allows explicit configured sandbox env names that look like credentials", () => {

72+

// Explicit sandbox env config is operator intent; value validation still

73+

// runs, but name-based credential blocking does not.

7074

const result = sanitizeExplicitSandboxEnvVars({

7175

GEMINI_API_KEY: "dummy-gemini-api-key",

7276

GOOGLE_CLIENT_SECRET: "dummy-google-client-secret",

Original file line numberDiff line numberDiff line change

@@ -1,3 +1,5 @@

1+

// Sandbox tool policy tests cover effective allow/deny merging and blocked-tool

2+

// guidance for sandboxed agent sessions.

13

import { describe, expect, it } from "vitest";

24

import type { OpenClawConfig } from "../../config/config.js";

35

import { resolveSandboxConfigForAgent } from "./config.js";

@@ -69,6 +71,8 @@ describe("sandbox/tool-policy", () => {

6971

});

7072
7173

it("preserves allow-all semantics for allow: [] plus alsoAllow", () => {

74+

// An empty allowlist means allow all except denies; alsoAllow should only

75+

// remove matching default denies, not turn allow-all into allow-some.

7276

const cfg: OpenClawConfig = {

7377

agents: {

7478

defaults: {

@@ -268,6 +272,8 @@ describe("sandbox/tool-policy", () => {

268272

});

269273
270274

it("keeps blocked-tool guidance glob-aware and shell-safe", () => {

275+

// The guidance embeds a copy-paste command; quote the real session key while

276+

// keeping the displayed session line compact and terminal-safe.

271277

const sessionKey = "agent:main:weird session;rm -rf /";

272278

const cfg: OpenClawConfig = {

273279

agents: {

Original file line numberDiff line numberDiff line change

@@ -1,3 +1,5 @@

1+

// Sandbox workspace tests cover bootstrap file seeding into isolated workspaces

2+

// without following unsafe host links.

13

import fs from "node:fs/promises";

24

import os from "node:os";

35

import path from "node:path";

@@ -35,6 +37,8 @@ describe("ensureSandboxWorkspace", () => {

3537

});

3638
3739

it.runIf(process.platform !== "win32")("skips symlinked bootstrap seed files", async () => {

40+

// Bootstrap files can influence agent behavior; symlinks must not pull in

41+

// arbitrary host files from outside the source workspace.

3842

const root = await makeTempRoot();

3943

const seed = path.join(root, "seed");

4044

const sandbox = path.join(root, "sandbox");