Skip to content

refactor: consolidate sandbox into competition/ package, remove redundancies - #56

Merged
factnn merged 1 commit into
mainfrom
refactor/sandbox-competition-package
Jul 8, 2026
Merged

refactor: consolidate sandbox into competition/ package, remove redundancies#56
factnn merged 1 commit into
mainfrom
refactor/sandbox-competition-package

Conversation

@factnn

@factnn factnn commented Jul 8, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • 将 6 个 sandbox 模块移入 sandbox/competition/ 作为独立反作弊包
  • 新增 orchestrator.py:统一 7 层 pipeline,提供 run_check() 一键调用
  • 删除 full_sandbox.pycompetition_evaluator.py(冗余)
  • 统一所有 import 路径

结构变化

之前: 6 个模块散落在 sandbox/ 平铺,full_sandbox.py 和 competition_evaluator.py 功能重叠

之后:

sandbox/competition/          ← 唯一源码位置,可独立打包
├── __init__.py               # 统一入口 run_check()
├── orchestrator.py           # 7层编排器
├── cache_isolator.py         # 第1层:文件系统隔离
├── import_hook.py            # 第3层:Import Hook 沙箱
├── cuda_protector.py         # 第4层:CUDA 保护
├── shape_generator.py        # 第5层:随机形状
├── process_isolator.py       # 第6层:进程隔离
└── timing_validator.py       # 第7层:统计时序校验

用法

from sandbox.competition import run_check

result = run_check(
    kernel_path="path/to/kernel.py",
    generate_inputs=lambda: (torch.randn(128, 512, device='cuda'),),
)
print(result.passed)  # True = 没作弊

🤖 Generated with Claude Code

…dancies

- Move 6 sandbox modules (cache_isolator, import_hook, cuda_protector,
  shape_generator, process_isolator, timing_validator) into
  sandbox/competition/ as a self-contained anti-cheat package
- Add orchestrator.py: unified 7-layer pipeline with run_check() API
- Fix all internal imports to use relative paths
- Remove full_sandbox.py and competition_evaluator.py (replaced by
  sandbox/competition/)
- Update verifier.py import to sandbox.competition.cuda_protector

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@factnn
factnn merged commit c8702b4 into main Jul 8, 2026
1 check passed
@factnn
factnn deleted the refactor/sandbox-competition-package branch July 8, 2026 08:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant