完善Linux工作区命令沙箱
新增 bubblewrap 工作区写入、控制目录保护和默认断网沙箱 统一 command.exec、command.start 与 project.verify 的启动和审计边界 开放 Linux 通用项目命令并保留非 Linux 固定命令兼容边界 补齐持久进程元数据、真实进程测试、共享契约和发布依赖 同步真实 Provider 结论、已知竞态与项目长期文档
This commit is contained in:
@@ -1955,10 +1955,10 @@ function assertAiGameCreatorShellUserDevBoundary() {
|
||||
const windows = aiGameCreatorShellTauriConfig.app?.windows ?? [];
|
||||
if (
|
||||
windows.length !== 1 ||
|
||||
windows[0]?.label !== 'launcher' ||
|
||||
windows[0]?.url !== 'index.html?launcher'
|
||||
windows[0]?.label !== 'client' ||
|
||||
windows[0]?.url !== 'index.html'
|
||||
) {
|
||||
throw new Error('AI game creator release shell must register only the launcher window');
|
||||
throw new Error('AI game creator release shell must register only the client window');
|
||||
}
|
||||
const releaseCsp = aiGameCreatorShellTauriConfig.app?.security?.csp ?? '';
|
||||
const devCsp = aiGameCreatorShellTauriConfig.app?.security?.devCsp ?? '';
|
||||
@@ -2031,12 +2031,13 @@ function assertAiGameCreatorShellUserDevBoundary() {
|
||||
}
|
||||
}
|
||||
for (const snippet of [
|
||||
'fn open_developer_window(',
|
||||
'WebviewWindowBuilder::new(app, "developer"',
|
||||
'open_developer_window(app)?',
|
||||
'#[cfg(all(debug_assertions, not(test)))]\npub(crate) fn open_developer_window(',
|
||||
'#[cfg(all(debug_assertions, not(test)))]\n open_developer_window(app.handle())?;',
|
||||
]) {
|
||||
if (aiGameCreatorShellTauriSource.includes(snippet)) {
|
||||
throw new Error(`AI game creator release shell must not auto-open developer windows: ${snippet}`);
|
||||
if (!aiGameCreatorShellTauriSource.includes(snippet)) {
|
||||
throw new Error(
|
||||
`AI game creator developer window must stay compile-time debug-only: ${snippet}`,
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user