feat: expose codex review sandbox search governance
This commit is contained in:
@@ -86,6 +86,12 @@ if (args[0] === "app-server" && args[1] === "generate-json-schema") {
|
||||
{ properties: { method: { const: "marketplace/upgrade" } } },
|
||||
{ properties: { method: { const: "experimentalFeature/list" } } },
|
||||
{ properties: { method: { const: "experimentalFeature/enablement/set" } } },
|
||||
{ properties: { method: { const: "review/start" } } },
|
||||
{ properties: { method: { const: "windowsSandbox/readiness" } } },
|
||||
{ properties: { method: { const: "windowsSandbox/setupStart" } } },
|
||||
{ properties: { method: { const: "windowsSandbox/setupCompleted" } } },
|
||||
{ properties: { method: { const: "fuzzyFileSearch/sessionUpdated" } } },
|
||||
{ properties: { method: { const: "fuzzyFileSearch/sessionCompleted" } } },
|
||||
{ properties: { method: { const: "skills/extraRoots/set" } } },
|
||||
{ properties: { method: { const: "hooks/list" } } },
|
||||
{ properties: { method: { const: "turn/interrupt" } } },
|
||||
@@ -165,6 +171,10 @@ process.exit(2);
|
||||
assert.equal(manifest.supports.marketplaceRemove, true);
|
||||
assert.equal(manifest.supports.marketplaceUpgrade, true);
|
||||
assert.equal(manifest.supports.experimentalFeatureEnablementSet, true);
|
||||
assert.equal(manifest.supports.reviewStart, true);
|
||||
assert.equal(manifest.supports.windowsSandboxReadiness, true);
|
||||
assert.equal(manifest.supports.windowsSandboxSetupStart, true);
|
||||
assert.equal(manifest.supports.fuzzyFileSearchEvents, true);
|
||||
assert.deepEqual(manifest.methods, [
|
||||
"account/chatgptAuthTokens/refresh",
|
||||
"account/login/cancel",
|
||||
@@ -193,6 +203,8 @@ process.exit(2);
|
||||
"fs/unwatch",
|
||||
"fs/watch",
|
||||
"fs/writeFile",
|
||||
"fuzzyFileSearch/sessionCompleted",
|
||||
"fuzzyFileSearch/sessionUpdated",
|
||||
"hooks/list",
|
||||
"marketplace/add",
|
||||
"marketplace/remove",
|
||||
@@ -206,6 +218,7 @@ process.exit(2);
|
||||
"plugin/share/updateTargets",
|
||||
"plugin/skill/read",
|
||||
"plugin/uninstall",
|
||||
"review/start",
|
||||
"skills/config/write",
|
||||
"skills/extraRoots/set",
|
||||
"thread/archive",
|
||||
@@ -221,6 +234,9 @@ process.exit(2);
|
||||
"thread/unsubscribe",
|
||||
"turn/interrupt",
|
||||
"turn/start",
|
||||
"windowsSandbox/readiness",
|
||||
"windowsSandbox/setupCompleted",
|
||||
"windowsSandbox/setupStart",
|
||||
]);
|
||||
assert.match(
|
||||
await readFile(path.join(outDir, "0.135.0-alpha.1", "app-server-help.txt"), "utf8"),
|
||||
|
||||
@@ -229,6 +229,26 @@ test("device detail exposes Codex App Server discovered model and extension summ
|
||||
userInitiatedOnly: true,
|
||||
labels: ["实验列表", "启用设置"],
|
||||
},
|
||||
reviewGovernanceSummary: {
|
||||
actionCount: 1,
|
||||
reviewStartAvailable: true,
|
||||
userInitiatedOnly: true,
|
||||
labels: ["启动审查"],
|
||||
},
|
||||
windowsSandboxGovernanceSummary: {
|
||||
actionCount: 3,
|
||||
setupActionCount: 1,
|
||||
readinessAvailable: true,
|
||||
notificationAvailable: true,
|
||||
userInitiatedOnly: true,
|
||||
labels: ["准备检查", "启动设置", "设置完成"],
|
||||
},
|
||||
fuzzyFileSearchSummary: {
|
||||
eventCount: 2,
|
||||
completedEventAvailable: true,
|
||||
notificationOnly: true,
|
||||
labels: ["搜索更新", "搜索完成"],
|
||||
},
|
||||
},
|
||||
},
|
||||
};
|
||||
@@ -256,6 +276,9 @@ test("device detail exposes Codex App Server discovered model and extension summ
|
||||
assert.equal(cards.capabilities.items.codexExternalAgentGovernance, "迁移治理:3 项 · 导入 1 项 · 检测可用");
|
||||
assert.equal(cards.capabilities.items.codexMarketplaceGovernance, "市场治理:3 项 · 写入 3 项 · 升级可用");
|
||||
assert.equal(cards.capabilities.items.codexExperimentalFeatureGovernance, "实验特性治理:2 项 · 写入 1 项 · 列表可用");
|
||||
assert.equal(cards.capabilities.items.codexReviewGovernance, "审查治理:1 项 · 审查可启动");
|
||||
assert.equal(cards.capabilities.items.codexWindowsSandboxGovernance, "Windows 沙箱:3 项 · 设置 1 项 · 准备检查可用");
|
||||
assert.equal(cards.capabilities.items.codexFuzzyFileSearch, "文件搜索事件:2 项 · 完成事件可用");
|
||||
});
|
||||
|
||||
test("device detail exposes folder and project conflict skeleton from workspace policy", async () => {
|
||||
|
||||
@@ -189,6 +189,26 @@ test("codex app-server discovery includes governance and MCP summaries without l
|
||||
userInitiatedOnly: true,
|
||||
labels: ["实验列表", "启用设置"],
|
||||
});
|
||||
assert.deepEqual(metadata.reviewGovernanceSummary, {
|
||||
actionCount: 1,
|
||||
reviewStartAvailable: true,
|
||||
userInitiatedOnly: true,
|
||||
labels: ["启动审查"],
|
||||
});
|
||||
assert.deepEqual(metadata.windowsSandboxGovernanceSummary, {
|
||||
actionCount: 3,
|
||||
setupActionCount: 1,
|
||||
readinessAvailable: true,
|
||||
notificationAvailable: true,
|
||||
userInitiatedOnly: true,
|
||||
labels: ["准备检查", "启动设置", "设置完成"],
|
||||
});
|
||||
assert.deepEqual(metadata.fuzzyFileSearchSummary, {
|
||||
eventCount: 2,
|
||||
completedEventAvailable: true,
|
||||
notificationOnly: true,
|
||||
labels: ["搜索更新", "搜索完成"],
|
||||
});
|
||||
|
||||
const serialized = JSON.stringify(metadata);
|
||||
assert.equal(serialized.includes("sk-secret-should-not-leak"), false);
|
||||
|
||||
Reference in New Issue
Block a user