feat: align codex app server 0.136

This commit is contained in:
AI Bot
2026-06-03 10:46:45 +08:00
parent 1ae81fa3af
commit 3c6a0c546b
820 changed files with 106683 additions and 26 deletions

View File

@@ -24,6 +24,10 @@ test("codex app-server discovery includes governance and MCP summaries without l
codexAppServerWorkdir: repoRoot,
codexAppServerTimeoutMs: 5000,
codexAppServerDiscoveryLimit: 20,
codexAppServerSkillExtraRoots: [
"/Users/kris/enterprise/boss-shared-skills",
"/Users/kris/enterprise/team-skills",
],
});
const metadata = await discoverCodexAppServerCapabilities(runnerConfig);
@@ -63,6 +67,12 @@ test("codex app-server discovery includes governance and MCP summaries without l
projectItemCount: 2,
itemTypes: ["AGENTS_MD", "MCP_SERVER_CONFIG", "SKILLS"],
});
assert.deepEqual(metadata.skillExtraRootsSummary, {
configured: true,
status: "applied",
rootCount: 2,
rootLabels: ["boss-shared-skills", "team-skills"],
});
assert.equal(metadata.threadSummary.threadCount, 3);
assert.equal(metadata.threadSummary.loadedThreadCount, 2);
assert.equal(metadata.threadSummary.activeThreadCount, 1);
@@ -101,6 +111,7 @@ test("codex app-server discovery includes governance and MCP summaries without l
assert.equal(serialized.includes("private-user@example.com"), false);
assert.equal(serialized.includes("CLAUDE.md"), false);
assert.equal(serialized.includes("AGENTS.md"), false);
assert.equal(serialized.includes("/Users/kris/enterprise"), false);
assert.equal(serialized.includes("secret user text should not leak"), false);
assert.equal(serialized.includes("Old private thread"), false);
assert.equal(serialized.includes("private active turn text should not leak"), false);
@@ -696,7 +707,9 @@ test("codex app-server runner maps account, quota, verification, and notices wit
test("codex app-server runner maps collab tool calls and context compaction without leaking thread internals", async () => {
const previous = process.env.BOSS_CODEX_APP_SERVER_FIXTURE_EMIT_COLLAB_EVENTS;
const previousV2 = process.env.BOSS_CODEX_APP_SERVER_FIXTURE_EMIT_COLLAB_EVENTS_V2;
process.env.BOSS_CODEX_APP_SERVER_FIXTURE_EMIT_COLLAB_EVENTS = "1";
process.env.BOSS_CODEX_APP_SERVER_FIXTURE_EMIT_COLLAB_EVENTS_V2 = "1";
try {
const runnerConfig = getCodexAppServerRunnerConfig(process.env, {
codexAppServerEnabled: true,
@@ -720,7 +733,8 @@ test("codex app-server runner maps collab tool calls and context compaction with
tool: "send_input",
status: "completed",
target: "已有线程",
agentStatus: "completed",
agentStatus: "completed · errored",
receiverCount: 2,
});
assert.deepEqual(result.executionProgress.compaction, {
status: "completed",
@@ -729,7 +743,11 @@ test("codex app-server runner maps collab tool calls and context compaction with
const serialized = JSON.stringify(result.executionProgress);
assert.equal(serialized.includes("thread-source-secret-should-not-leak"), false);
assert.equal(serialized.includes("thread-target-secret-should-not-leak"), false);
assert.equal(serialized.includes("thread-target-2-secret-should-not-leak"), false);
assert.equal(serialized.includes("internal prompt"), false);
assert.equal(serialized.includes("private agent status message"), false);
assert.equal(serialized.includes("private agent completed message"), false);
assert.equal(serialized.includes("private agent error message"), false);
assert.equal(serialized.includes("sk-secret-should-not-leak"), false);
assert.equal(serialized.includes("context-compaction-secret-should-not-leak"), false);
} finally {
@@ -738,6 +756,11 @@ test("codex app-server runner maps collab tool calls and context compaction with
} else {
process.env.BOSS_CODEX_APP_SERVER_FIXTURE_EMIT_COLLAB_EVENTS = previous;
}
if (previousV2 === undefined) {
delete process.env.BOSS_CODEX_APP_SERVER_FIXTURE_EMIT_COLLAB_EVENTS_V2;
} else {
process.env.BOSS_CODEX_APP_SERVER_FIXTURE_EMIT_COLLAB_EVENTS_V2 = previousV2;
}
}
});