Instant, Concurrent, Secure & Lightweight Sandbox for AI Agents.
This report presents the forensic synthetic code analysis of TencentCloud/CubeSandbox, a Rust project with 10,120 GitHub stars. SynthScan v2.0 examined 597,496 lines of code across 2282 source files, recording 1815 pattern matches distributed across 23 syntactic categories. The overall adjusted score of 5.3 places this repository in the Low AI signal band.
The scanner applied 160+ deterministic lexical heuristics, multi-line block detectors, abstract syntax tree depth profilers, and a cross-file Jaccard similarity matrix to construct a statistically normalised synthetic code estimate. All matches are individually weighted by severity coefficient and contextual multiplier before summation, and the resulting headline score is temporally discounted to account for the repository's development history relative to the commercial emergence of large language model coding tooling (November 2022 onward).
This chart maps the temporal evolution of the adjusted synthetic code score across successive scan runs. An upward trajectory indicates ongoing incorporation of AI-generated code or expanding LLM-assisted scaffolding; a stable or declining trajectory may reflect active human refactoring, code removal, or the adoption of stricter authorship policies. The dashed secondary line (right axis) independently tracks total raw pattern hit count, which can diverge from the normalised score when codebase size changes significantly between scans.
Classifies detected patterns by their diagnostic confidence and structural impact. CRITICAL patterns (coefficient 10) represent definitive synthetic signatures — hallucinated imports, explicit LLM attribution metadata — virtually never produced by human authors. HIGH (5) indicates strong structural tells such as cross-file repetition or cross-linguistic idioms. MEDIUM (2) covers recognisable conversational padding and AI-specific vocabulary. LOW (1) captures subtle indicators like tautological comments and generic boilerplate that require density to carry independent signal.
This horizontal bar chart decomposes the repository's raw synthetic code score by top-level directory, allowing you to pinpoint precisely which modules or components carry the highest AI authorship density. Directories with disproportionately high scores relative to their size warrant targeted manual review: concentrated AI signatures often trace back to mass-generated configuration layers, auto-ported test suites, LLM-scaffolded boilerplate classes, or entire subsystems authored under heavy copilot assistance. Use this view to prioritise your human code-review effort.
The scanner identified 1815 distinct pattern matches across 23 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a statistically significant AI authorship indicator. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.
Reading the findings table: The Severity column indicates the diagnostic confidence level (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — comment-context matches receive a ×1.5 weight because LLMs systematically over-annotate. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier as dense clusters constitute far stronger evidence of synthetic authorship than isolated hits.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | cubecow/Cargo.toml | 58 | # ----------------------------------------------------------------------------- | COMMENT |
| MEDIUM | cubecow/Cargo.toml | 60 | # ----------------------------------------------------------------------------- | COMMENT |
| MEDIUM⚡ | web/src/hooks/useGlobalHotkeys.ts | 31 | // ── ⌘K / Ctrl+K → Command Palette ────────────────────────────── | COMMENT |
| MEDIUM⚡ | web/src/hooks/useGlobalHotkeys.ts | 38 | // ── Escape → Close Palette ────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | web/src/hooks/useGlobalHotkeys.ts | 44 | // ── Skip remaining shortcuts when focus is in an input ────────── | COMMENT |
| MEDIUM⚡ | web/src/hooks/useGlobalHotkeys.ts | 47 | // ── R → Refetch all active queries ────────────────────────────── | COMMENT |
| MEDIUM⚡ | web/src/hooks/useGlobalHotkeys.ts | 55 | // ── ? → Settings / Shortcuts ──────────────────────────────────── | COMMENT |
| MEDIUM | web/src/pages/Settings.tsx | 21 | // ── Sidebar nav ─────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | web/src/pages/Settings.tsx | 57 | // ── Section: Appearance ─────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | web/src/pages/Settings.tsx | 128 | // ── Section: Cluster ────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | web/src/pages/Settings.tsx | 214 | // ── Section: Account ────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | web/src/pages/Settings.tsx | 327 | // ── Section: Shortcuts ──────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | web/src/pages/Settings.tsx | 375 | // ── Section: About ──────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | web/src/pages/Settings.tsx | 421 | // ── Shared primitives ───────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | web/src/pages/Settings.tsx | 449 | // ── Page ────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | web/src/pages/Templates.tsx | 18 | // ── create template modal ──────────────────────────────────────────────────── | COMMENT |
| MEDIUM | web/src/pages/Templates.tsx | 504 | // ── delete confirm modal ──────────────────────────────────────────────────── | COMMENT |
| MEDIUM | web/src/pages/Templates.tsx | 565 | // ── main page ──────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | web/src/pages/NodeDetail.tsx | 13 | // ── Resource bar ────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | web/src/pages/NodeDetail.tsx | 30 | // ── KPI card ────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | web/src/pages/NodeDetail.tsx | 66 | // ── Section wrapper ─────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | web/src/pages/NodeDetail.tsx | 80 | // ── Stat row ────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | web/src/pages/NodeDetail.tsx | 91 | // ── Condition row ───────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | web/src/pages/NodeDetail.tsx | 115 | // ── Main page ───────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | web/src/pages/Versions.tsx | 25 | // ── Types ─────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | web/src/pages/Versions.tsx | 101 | // ── Page ──────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | web/src/pages/Versions.tsx | 259 | // ── KPI card ──────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | web/src/pages/Versions.tsx | 293 | // ── Components section ────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | web/src/pages/Versions.tsx | 491 | // ── Node × Component matrix ───────────────────────────────────────────────── | COMMENT |
| MEDIUM | web/src/pages/Versions.tsx | 690 | // ── Shared primitives ─────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | web/src/pages/SandboxDetail.tsx | 19 | // ── Log level colors ──────────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | web/src/pages/SandboxDetail.tsx | 33 | // ── Main page ─────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | web/src/pages/SandboxDetail.tsx | 40 | // ── Sandbox detail ────────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | web/src/pages/SandboxDetail.tsx | 48 | // ── Logs ──────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | web/src/pages/SandboxDetail.tsx | 68 | // ── Lifecycle mutations ───────────────────────────────────────────────── | COMMENT |
| MEDIUM | web/src/pages/SandboxDetail.tsx | 255 | // ── Helpers ───────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | web/src/pages/Observability.tsx | 19 | // ── Shared primitives ───────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | web/src/pages/Observability.tsx | 46 | // ── Section 1: Sandbox Health ───────────────────────────────────────────────── | COMMENT |
| MEDIUM | web/src/pages/Observability.tsx | 150 | // ── Section 2: Node Health ──────────────────────────────────────────────────── | COMMENT |
| MEDIUM | web/src/pages/Observability.tsx | 245 | // ── Section 3: API Monitor ──────────────────────────────────────────────────── | COMMENT |
| MEDIUM | web/src/pages/Observability.tsx | 317 | // ── Section 4: Template Build Status ───────────────────────────────────────── | COMMENT |
| MEDIUM | web/src/pages/Observability.tsx | 402 | // ── Page ────────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | web/src/pages/SandboxNew.tsx | 17 | // ── Types ──────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | web/src/pages/SandboxNew.tsx | 32 | // ── Template selector card ─────────────────────────────────────────────────── | COMMENT |
| MEDIUM | web/src/pages/SandboxNew.tsx | 107 | // ── KV metadata editor ─────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | web/src/pages/SandboxNew.tsx | 161 | // ── Section wrapper ────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | web/src/pages/SandboxNew.tsx | 174 | // ── Main page ──────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | web/src/pages/TemplateStore.tsx | 20 | // ── helpers ─────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | web/src/pages/TemplateStore.tsx | 47 | // ── InstallModal ────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | web/src/pages/TemplateStore.tsx | 259 | // ── InstalledDropdown ───────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | web/src/pages/TemplateStore.tsx | 372 | // ── StoreCard ───────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | web/src/pages/TemplateStore.tsx | 470 | // ── main page ───────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | web/src/pages/TemplateDetail.tsx | 18 | // ── status helpers ──────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | web/src/pages/TemplateDetail.tsx | 79 | // ── copy button ─────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | web/src/pages/TemplateDetail.tsx | 99 | // ── field ───────────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | web/src/pages/TemplateDetail.tsx | 119 | // ── copy tooltip wrapper ───────────────────────────────────────────────────── | COMMENT |
| MEDIUM | web/src/pages/TemplateDetail.tsx | 143 | // ── section (borderless) ────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | web/src/pages/TemplateDetail.tsx | 159 | // ── monoblock ───────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | web/src/pages/TemplateDetail.tsx | 185 | // ── progress bar ────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | web/src/pages/TemplateDetail.tsx | 198 | // ── log viewer ──────────────────────────────────────────────────────────────── | COMMENT |
| 558 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | docker/cube-entrypoint.sh | 1 | #!/bin/sh | COMMENT |
| LOW | CubeEgress/start.sh | 81 | COMMENT | |
| LOW | CubeEgress/scripts/cube-proxy-iptables-init.sh | 1 | #!/usr/bin/env bash | COMMENT |
| LOW | cubecow/Cargo.toml | 41 | COMMENT | |
| LOW | cubecow/Cargo.toml | 61 | # We intentionally avoid `criterion` to keep the dependency tree slim; the | COMMENT |
| LOW | cubecow/include/cubecow.h | 41 | /* Opaque handle types */ | COMMENT |
| LOW | cubecow/examples/go-test/main.go | 1 | // Copyright (c) 2026 Tencent Inc. | COMMENT |
| LOW | cubecow/examples/go-test/main.go | 21 | // backwards compatibility with | COMMENT |
| LOW | cubecow/examples/go-test/main.go | 41 | "os" | COMMENT |
| LOW | cubecow/examples/go-test/main.go | 81 | defaultSnapshotName = "go-test-snap" | COMMENT |
| LOW | cubecow/examples/go-test/cubecow/cubecow.h | 41 | COMMENT | |
| LOW | cubecow/benches/reflink_ops.rs | 1 | // Copyright (c) 2026 Tencent Inc. | COMMENT |
| LOW | cubecow/benches/reflink_ops.rs | 21 | // 3. **Multi-worker concurrent fanout** — M workers create M·N | COMMENT |
| LOW | cubecow/benches/reflink_ops.rs | 41 | // Hand-rolled p50/p90/p99 (no criterion) keeps the dependency tree | COMMENT |
| LOW | cubecow/benches/reflink_ops.rs | 61 | // in scenario 4 (default 1 MiB). | COMMENT |
| LOW | cubecow/benches/reflink_ops.rs | 161 | } | COMMENT |
| LOW | cubecow/benches/reflink_ops.rs | 181 | /// only inside `Drop` once the engine has been moved out. | COMMENT |
| LOW | cubecow/benches/reflink_ops.rs | 421 | // Numerical Recipes constants. Bottom bits are well-mixed for our | COMMENT |
| LOW | cubecow/benches/reflink_ops.rs | 481 | COMMENT | |
| LOW | cubecow/benches/reflink_ops.rs | 541 | /// p50/p99 over all `threads * per_worker` samples *and* a | COMMENT |
| LOW | cubecow/benches/reflink_ops.rs | 681 | COMMENT | |
| LOW | cubecow/src/lib.rs | 1 | // Copyright (c) 2026 Tencent Inc. | COMMENT |
| LOW | cubecow/src/lib.rs | 41 | pub struct Volume { | COMMENT |
| LOW | cubecow/src/lib.rs | 61 | /// This is the **canonical identifier** for a snapshot across the | COMMENT |
| LOW | cubecow/src/ffi.rs | 1 | // Copyright (c) 2026 Tencent Inc. | COMMENT |
| LOW | cubecow/src/ffi.rs | 321 | /// After this call, the engine pointer is invalid and must not be used. | COMMENT |
| LOW | cubecow/src/ffi.rs | 381 | /// Free a string allocated by cubecow FFI functions. | COMMENT |
| LOW | cubecow/src/ffi.rs | 521 | /// | COMMENT |
| LOW | cubecow/src/ffi.rs | 581 | COMMENT | |
| LOW | cubecow/src/ffi.rs | 621 | Ok(Err(code)) => code, | COMMENT |
| LOW | cubecow/src/ffi.rs | 721 | /// node. `out_device_path` receives the path of the resulting node. | COMMENT |
| LOW | cubecow/src/ffi.rs | 741 | /// - `cubecow_list_snapshots` to enumerate (the entry will appear with | COMMENT |
| LOW | cubecow/src/ffi.rs | 801 | /// Idempotent. | COMMENT |
| LOW | cubecow/src/ffi.rs | 841 | } | COMMENT |
| LOW | cubecow/src/config/mod.rs | 1 | // Copyright (c) 2026 Tencent Inc. | COMMENT |
| LOW | cubecow/src/config/mod.rs | 21 | /// shipping backend at the moment, but the [`BackendConfig`] block | COMMENT |
| LOW | cubecow/src/config/mod.rs | 41 | } | COMMENT |
| LOW | cubecow/src/config/mod.rs | 81 | #[default] | COMMENT |
| LOW | cubecow/src/engine/reflink.rs | 1 | // Copyright (c) 2026 Tencent Inc. | COMMENT |
| LOW | cubecow/src/engine/reflink.rs | 21 | // owns the `volumes/` subtree: | COMMENT |
| LOW | cubecow/src/engine/reflink.rs | 81 | /// | COMMENT |
| LOW | cubecow/src/engine/reflink.rs | 101 | enum NameKind { | COMMENT |
| LOW | cubecow/src/engine/reflink.rs | 121 | /// `initialize`; mutated under a single writer lock thereafter. | COMMENT |
| LOW | cubecow/src/engine/reflink.rs | 441 | COMMENT | |
| LOW | cubecow/src/engine/reflink.rs | 541 | // Match dm-thin's contract: `get_volume_info` is the one-shot | COMMENT |
| LOW | cubecow/src/engine/reflink.rs | 1101 | } | COMMENT |
| LOW | cubecow/src/engine/mod.rs | 1 | // Copyright (c) 2026 Tencent Inc. | COMMENT |
| LOW | cubecow/src/engine/mod.rs | 21 | use crate::{Snapshot, Volume, VolumeBlockInfo}; | COMMENT |
| LOW | cubecow/src/pkg/mod.rs | 1 | // Copyright (c) 2026 Tencent Inc. | COMMENT |
| LOW | cubecow/src/pkg/metrics/mod.rs | 1 | // Copyright (c) 2026 Tencent Inc. | COMMENT |
| LOW | cubecow/src/pkg/metrics/mod.rs | 21 | /// Total number of active snapshots | COMMENT |
| LOW | cubecow/src/pkg/logger/mod.rs | 1 | // Copyright (c) 2026 Tencent Inc. | COMMENT |
| LOW | cubecow/src/pkg/errors/mod.rs | 1 | // Copyright (c) 2026 Tencent Inc. | COMMENT |
| LOW | network-agent/internal/cubeegress/client.go | 81 | } | COMMENT |
| LOW | network-agent/internal/cubeegress/wire.go | 1 | // Copyright (c) 2026 Tencent Inc. | COMMENT |
| LOW | network-agent/internal/cubeegress/wire.go | 21 | // snake_case. The renderer is the single point that bridges the two | COMMENT |
| LOW | network-agent/internal/cubeegress/wire.go | 81 | // CubeEgress's PUT /admin/v1/policies/<sandbox_ip> expects. | COMMENT |
| LOW | network-agent/internal/service/local_service.go | 381 | COMMENT | |
| LOW | network-agent/internal/service/local_service.go | 461 | } | COMMENT |
| LOW | network-agent/internal/service/tap_lifecycle.go | 261 | // full rationale. | COMMENT |
| 581 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | cubecow/examples/go-test/main.go | 374 | // Step 1: Create volume | COMMENT |
| LOW⚡ | cubecow/examples/go-test/main.go | 377 | // Step 2: Get volume info | COMMENT |
| LOW⚡ | cubecow/examples/go-test/main.go | 380 | // Step 3: Get volume block info | COMMENT |
| LOW⚡ | cubecow/examples/go-test/main.go | 383 | // Step 4: Resize volume | COMMENT |
| LOW⚡ | cubecow/examples/go-test/main.go | 386 | // Step 5: Create snapshot | COMMENT |
| LOW⚡ | cubecow/examples/go-test/main.go | 389 | // Step 6: List snapshots | COMMENT |
| LOW⚡ | cubecow/examples/go-test/main.go | 392 | // Step 7: List volumes | COMMENT |
| LOW⚡ | cubecow/examples/go-test/main.go | 395 | // Step 8: Get metrics | COMMENT |
| LOW⚡ | cubecow/examples/go-test/main.go | 398 | // Step 9: Cleanup - delete snapshot then volume (unless -no-cleanup) | COMMENT |
| LOW⚡ | deploy/one-click/terraform/tencentcloud/create.sh | 2783 | # Step 1: terraform init | COMMENT |
| LOW⚡ | deploy/one-click/terraform/tencentcloud/create.sh | 2816 | # Step 2: terraform apply (with retry logic) | COMMENT |
| LOW⚡ | deploy/one-click/terraform/tencentcloud/create.sh | 3300 | # Step 6: Replace with the CubeSandbox kernel | COMMENT |
| LOW⚡ | deploy/one-click/terraform/tencentcloud/create.sh | 3514 | # Step 7: Reboot the CVM and verify the new kernel | COMMENT |
| LOW⚡ | deploy/one-click/terraform/tencentcloud/create.sh | 3669 | # Step 8: Initialize all compute nodes (purchased sequentially in step 3) | COMMENT |
| LOW⚡ | …services/cubebox/snapshot_base_memory_fallback_test.go | 210 | // Step 1: Create-restore from tpl-T sets BOTH bindings. | COMMENT |
| LOW⚡ | …services/cubebox/snapshot_base_memory_fallback_test.go | 216 | // Step 2: Commit A advances the runtime-snapshot binding only. | COMMENT |
| LOW⚡ | …services/cubebox/snapshot_base_memory_fallback_test.go | 222 | // Step 3: Commit B — same invariant. | COMMENT |
| LOW⚡ | …services/cubebox/snapshot_base_memory_fallback_test.go | 227 | // Step 4: Rollback to A: rollback restarts the VM, so it bumps BOTH. | COMMENT |
| LOW⚡ | …services/cubebox/snapshot_base_memory_fallback_test.go | 233 | // Step 5: Commit C after rollback — runtime-snapshot advances; the | COMMENT |
| LOW | docs/guide/dev-environment.md | 45 | ### Step 1: Prepare the image (one-off) | COMMENT |
| LOW | docs/guide/dev-environment.md | 57 | ### Step 2: Boot the VM | COMMENT |
| LOW | docs/guide/dev-environment.md | 68 | ### Step 3: Log in (in a new terminal) | COMMENT |
| LOW | docs/guide/bare-metal-deploy.md | 29 | ## Step 1: Install | COMMENT |
| LOW | docs/guide/bare-metal-deploy.md | 73 | ## Step 2: Create a Template | COMMENT |
| LOW | docs/guide/bare-metal-deploy.md | 102 | ## Step 3: Run Your First Agent Code | COMMENT |
| LOW | docs/guide/quickstart.md | 47 | ## Step 1: Provision a Cloud Server & Install the PVM Kernel | COMMENT |
| LOW | docs/guide/quickstart.md | 170 | ## Step 2: Install | COMMENT |
| LOW | docs/guide/quickstart.md | 198 | ## Step 3: Create a Template | COMMENT |
| LOW | docs/guide/quickstart.md | 231 | ## Step 4: Run Your First Agent Code | COMMENT |
| LOW | docs/guide/multi-node-deploy.md | 46 | ## Step 1: Prepare the Release Bundle | COMMENT |
| LOW | docs/guide/multi-node-deploy.md | 55 | ## Step 2: Configure Environment Variables | COMMENT |
| LOW | docs/guide/multi-node-deploy.md | 83 | ## Step 3: Install | COMMENT |
| LOW | docs/guide/pvm-deploy.md | 43 | ## Step 0: Provision a Cloud Server | COMMENT |
| LOW | docs/guide/pvm-deploy.md | 55 | ## Step 1: Install the PVM Host Kernel | COMMENT |
| LOW | docs/guide/pvm-deploy.md | 154 | ## Step 2: Install Cube Sandbox with PVM Enabled | COMMENT |
| LOW | docs/guide/pvm-deploy.md | 216 | ## Step 3: Verify the PVM Environment | COMMENT |
| LOW | docs/guide/pvm-deploy.md | 230 | ## Step 4: Create a Template and Get Started | COMMENT |
| LOW | docs/guide/self-build-deploy.md | 53 | ## Step 1: Build the Release Bundle | COMMENT |
| LOW | docs/guide/self-build-deploy.md | 103 | ## Step 2: Deploy to the Target Machine | COMMENT |
| LOW⚡ | …s/blog/posts/2026-06-03-cubesandbox-v0.3.0-snapshot.md | 137 | # Step 1: take a base snapshot in the v0 state | COMMENT |
| LOW⚡ | …s/blog/posts/2026-06-03-cubesandbox-v0.3.0-snapshot.md | 144 | # Step 2: spin up a new sandbox from the base snapshot | COMMENT |
| LOW⚡ | …s/blog/posts/2026-06-03-cubesandbox-v0.3.0-snapshot.md | 148 | # Step 3: write v1 and drop a checkpoint | COMMENT |
| LOW⚡ | …s/blog/posts/2026-06-03-cubesandbox-v0.3.0-snapshot.md | 154 | # Step 4: write v2 and confirm it landed | COMMENT |
| LOW⚡ | …s/blog/posts/2026-06-03-cubesandbox-v0.3.0-snapshot.md | 161 | # Step 5: roll back to the v1 checkpoint | COMMENT |
| LOW⚡ | …s/blog/posts/2026-06-03-cubesandbox-v0.3.0-snapshot.md | 165 | # Step 6: verify state is restored to v1 (sandbox_id unchanged) | COMMENT |
| LOW | docs/blog/posts/2026-07-08-cubesandbox-arm-support.md | 94 | ### Step 1: Download and install | COMMENT |
| LOW | docs/blog/posts/2026-07-08-cubesandbox-arm-support.md | 117 | ### Step 2: Deployment verification & environment variables | COMMENT |
| LOW | docs/blog/posts/2026-07-08-cubesandbox-arm-support.md | 130 | ### Step 3: Spin up your first sandbox | COMMENT |
| LOW⚡ | …h/blog/posts/2026-06-03-cubesandbox-v0.3.0-snapshot.md | 137 | # Step 1: 在 v0 状态创建一个基础快照 | COMMENT |
| LOW⚡ | …h/blog/posts/2026-06-03-cubesandbox-v0.3.0-snapshot.md | 144 | # Step 2: 从基础快照拉起一个新沙箱 | COMMENT |
| LOW⚡ | …h/blog/posts/2026-06-03-cubesandbox-v0.3.0-snapshot.md | 148 | # Step 3: 写入 v1,打一个 checkpoint | COMMENT |
| LOW⚡ | …h/blog/posts/2026-06-03-cubesandbox-v0.3.0-snapshot.md | 154 | # Step 4: 写入 v2,确认已生效 | COMMENT |
| LOW⚡ | …h/blog/posts/2026-06-03-cubesandbox-v0.3.0-snapshot.md | 161 | # Step 5: 回滚到 v1 这个 checkpoint | COMMENT |
| LOW⚡ | …h/blog/posts/2026-06-03-cubesandbox-v0.3.0-snapshot.md | 165 | # Step 6: 验证状态已恢复为 v1(sandbox_id 保持不变) | COMMENT |
| LOW | CubeAPI/src/handlers/agenthub.rs | 2597 | // Step 1: a plain restart is enough for transient failures. | COMMENT |
| LOW | CubeAPI/src/handlers/agenthub.rs | 2613 | // Step 2: restart failed — roll back to the latest known-healthy snapshot. | COMMENT |
| LOW⚡ | CubeMaster/pkg/templatecenter/image/native.go | 146 | // Step 1: Concurrently prefetch layers to disk to maximize network throughput. | COMMENT |
| LOW | CubeMaster/pkg/templatecenter/image/native.go | 245 | // Step 2: Sequentially apply and immediately delete layers as they finish downloading. | COMMENT |
| LOW | …eMaster/pkg/base/dao/migrate/migrate_alignment_test.go | 96 | // Step 1: table set — catches missing tables like runtime_active quickly. | COMMENT |
| LOW⚡ | examples/mini-rl-training/README.md | 18 | ### Step 1: Install Dependencies | COMMENT |
| 30 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | web/src/lib/templateConfig.ts | 55 | export function extractTemplateRuntimeConfig(cr: unknown): TemplateRuntimeConfig | null { | CODE |
| LOW | web/src/lib/templateConfig.ts | 73 | export function extractTemplateNetworkPolicy(cr: unknown): TemplateNetworkPolicy { | CODE |
| LOW | web/src/pages/Versions.tsx | 63 | function stripPlatformVersionSuffix(version: string): string { | CODE |
| LOW | Cubelet/scripts/cubebox_appsnapshot.py | 61 | def get_cubebox_snapshot_spec(cubebox_id): | CODE |
| LOW | Cubelet/scripts/cubebox_appsnapshot.py | 109 | def gen_cubebox_appsnapshot_cmd(cubebox_id, spec, snapshot_path, cube_runtime_path=None): | CODE |
| LOW | sdk/python/cubesandbox/_policy.py | 332 | def _validate_allow_out_domains_require_deny_all( | CODE |
| LOW | sdk/python/cubesandbox/_policy.py | 347 | def _is_domain_allow_out_target(target: object) -> bool: | CODE |
| LOW | sdk/python/cubesandbox/_policy.py | 371 | def _is_dotted_decimal_like_target(target: str) -> bool: | CODE |
| LOW | sdk/python/cubesandbox/_policy.py | 376 | def _is_valid_dns_domain_name(domain: str) -> bool: | CODE |
| LOW | sdk/python/cubesandbox/_commands.py | 119 | def _run_with_connect_fallback( | CODE |
| LOW | sdk/python/cubesandbox/_commands.py | 169 | def _envd_rpc_base_url_and_headers(sandbox: "Sandbox") -> tuple[str, dict[str, str]]: | CODE |
| LOW | sdk/python/cubesandbox/_commands.py | 211 | def _parse_process_start_stream(chunks) -> CommandResult: | CODE |
| LOW | sdk/python/cubesandbox/_commands.py | 269 | def _raise_connect_end_stream(raw: bytes) -> None: | CODE |
| LOW | sdk/python/cubesandbox/_commands.py | 324 | def _exit_code_from_end_event(end) -> int | None: | CODE |
| LOW | sdk/python/tests/test_template_e2e.py | 57 | def test_template_list_and_get_existing_template(pytestconfig: pytest.Config) -> None: | CODE |
| LOW | sdk/python/tests/test_template_e2e.py | 75 | def test_template_create_from_image_and_cleanup(pytestconfig: pytest.Config) -> None: | CODE |
| LOW⚡ | sdk/python/tests/test_sandbox.py | 95 | def test_create_missing_template_raises(self): | CODE |
| LOW⚡ | sdk/python/tests/test_sandbox.py | 100 | def test_create_sends_template_and_timeout(self): | CODE |
| LOW⚡ | sdk/python/tests/test_sandbox.py | 107 | def test_create_omits_timeout_when_absent(self): | CODE |
| LOW⚡ | sdk/python/tests/test_sandbox.py | 115 | def test_create_sends_explicit_zero_timeout(self): | CODE |
| LOW⚡ | sdk/python/tests/test_sandbox.py | 122 | def test_create_sends_never_timeout(self): | CODE |
| LOW⚡ | sdk/python/tests/test_sandbox.py | 131 | def test_create_sends_env_vars(self): | CODE |
| LOW⚡ | sdk/python/tests/test_sandbox.py | 137 | def test_create_sends_metadata(self): | CODE |
| LOW⚡ | sdk/python/tests/test_sandbox.py | 144 | def test_create_template_not_found(self): | CODE |
| LOW⚡ | sdk/python/tests/test_sandbox.py | 156 | def test_create_allow_internet_access_false(self): | CODE |
| LOW⚡ | sdk/python/tests/test_sandbox.py | 162 | def test_create_allow_internet_access_true_not_in_payload(self): | CODE |
| LOW⚡ | sdk/python/tests/test_sandbox.py | 168 | def test_create_network_allow_out(self): | CODE |
| LOW⚡ | sdk/python/tests/test_sandbox.py | 174 | def test_create_network_deny_out(self): | CODE |
| LOW⚡ | sdk/python/tests/test_sandbox.py | 180 | def test_create_network_empty_not_in_payload(self): | CODE |
| LOW⚡ | sdk/python/tests/test_sandbox.py | 186 | def test_create_default_lifecycle_omitted(self): | CODE |
| LOW⚡ | sdk/python/tests/test_sandbox.py | 281 | def test_create_network_allow_out_accepts_wildcard_domain_target(self, domain): | CODE |
| LOW⚡ | sdk/python/tests/test_sandbox.py | 288 | def test_create_network_allow_out_preserves_mixed_domain_and_cidr_targets(self): | CODE |
| LOW⚡ | sdk/python/tests/test_sandbox.py | 293 | def test_create_network_allow_out_preserves_order_and_duplicates(self): | CODE |
| LOW⚡ | sdk/python/tests/test_sandbox.py | 298 | def test_create_network_domain_filtering_preserves_literal_domain_values(self): | CODE |
| LOW⚡ | sdk/python/tests/test_sandbox.py | 303 | def test_create_network_domain_filtering_with_deny_all_mode(self): | CODE |
| LOW⚡ | sdk/python/tests/test_sandbox.py | 313 | def test_create_network_domain_filtering_rejects_without_deny_all(self): | CODE |
| LOW⚡ | sdk/python/tests/test_sandbox.py | 321 | def test_create_network_domain_filtering_accepts_deny_all_among_other_deny_out(self): | CODE |
| LOW⚡ | sdk/python/tests/test_sandbox.py | 352 | def test_create_network_empty_allow_out_is_still_sent(self): | CODE |
| LOW⚡ | sdk/python/tests/test_sandbox.py | 360 | def test_create_network_rules_dataclass(self): | CODE |
| LOW⚡ | sdk/python/tests/test_sandbox.py | 453 | def test_match_to_wire_omits_none_fields(self): | CODE |
| LOW⚡ | sdk/python/tests/test_sandbox.py | 459 | def test_action_to_wire_omits_none_inject_and_audit(self): | CODE |
| LOW⚡ | sdk/python/tests/test_sandbox.py | 582 | def test_rejects_non_dict_transform(self): | CODE |
| LOW⚡ | sdk/python/tests/test_sandbox.py | 589 | def test_rejects_missing_headers(self): | CODE |
| LOW⚡ | sdk/python/tests/test_sandbox.py | 596 | def test_rejects_unsupported_transform_keys(self): | CODE |
| LOW⚡ | sdk/python/tests/test_sandbox.py | 608 | def test_rejects_non_string_header_value(self): | CODE |
| LOW⚡ | sdk/python/tests/test_sandbox.py | 617 | def test_rejects_unsupported_entry_keys(self): | CODE |
| LOW⚡ | sdk/python/tests/test_sandbox.py | 626 | def test_rejects_non_list_entries(self): | CODE |
| LOW⚡ | sdk/python/tests/test_sandbox.py | 751 | def test_context_manager_kills_on_exit(self): | CODE |
| LOW⚡ | sdk/python/tests/test_sandbox.py | 759 | def test_context_manager_suppresses_kill_error(self): | CODE |
| LOW⚡ | sdk/python/tests/test_sandbox.py | 814 | def test_resume_omits_timeout_by_default(self): | CODE |
| LOW⚡ | sdk/python/tests/test_sandbox.py | 824 | def test_resume_explicit_zero_is_sent(self): | CODE |
| LOW⚡ | sdk/python/tests/test_sandbox.py | 833 | def test_resume_sends_never_timeout(self): | CODE |
| LOW⚡ | sdk/python/tests/test_sandbox.py | 862 | def test_set_timeout_sends_explicit_zero(self): | CODE |
| LOW⚡ | sdk/python/tests/test_sandbox.py | 868 | def test_set_timeout_sends_never_timeout(self): | CODE |
| LOW⚡ | sdk/python/tests/test_sandbox.py | 875 | def test_set_timeout_not_found(self): | CODE |
| LOW⚡ | sdk/python/tests/test_sandbox.py | 890 | def test_get_host_custom_port(self): | CODE |
| LOW⚡ | sdk/python/tests/test_sandbox.py | 894 | def test_domain_fallback_to_config(self): | CODE |
| LOW⚡ | sdk/python/tests/test_sandbox.py | 910 | def test_text_returns_main_result(self): | CODE |
| LOW⚡ | sdk/python/tests/test_sandbox.py | 917 | def test_text_none_when_no_results(self): | CODE |
| LOW⚡ | sdk/python/tests/test_sandbox.py | 920 | def test_text_none_when_no_main(self): | CODE |
| 99 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | Cubelet/scripts/cubebox_appsnapshot.py | 43 | except Exception: | CODE |
| LOW | Cubelet/scripts/cubebox_appsnapshot.py | 90 | except Exception as e: | CODE |
| LOW | Cubelet/scripts/cubebox_appsnapshot.py | 176 | except Exception as e: | CODE |
| LOW | CubeAPI/examples/benchmark.py | 550 | except Exception as exc: | CODE |
| LOW | CubeAPI/examples/benchmark.py | 566 | except Exception as exc: | CODE |
| LOW | CubeAPI/examples/benchmark.py | 633 | except Exception as exc: | CODE |
| LOW⚡ | CubeAPI/examples/test.py | 52 | except Exception: | CODE |
| LOW⚡ | CubeAPI/examples/test.py | 59 | except Exception: | CODE |
| LOW⚡ | CubeAPI/examples/test.py | 65 | except Exception: | CODE |
| LOW | CubeAPI/examples/test.py | 76 | except Exception: | CODE |
| LOW⚡ | CubeAPI/src/handlers/agenthub.rs | 2721 | except Exception: | CODE |
| LOW⚡ | CubeAPI/src/handlers/agenthub.rs | 2730 | except Exception: | CODE |
| LOW⚡ | CubeAPI/src/handlers/agenthub.rs | 2734 | except Exception: | CODE |
| LOW⚡ | CubeAPI/src/handlers/agenthub.rs | 2744 | except Exception: | CODE |
| LOW | CubeAPI/src/handlers/agenthub.rs | 2790 | except Exception: | CODE |
| LOW | CubeAPI/src/handlers/agenthub.rs | 2984 | except Exception: | CODE |
| LOW | CubeAPI/src/handlers/agenthub.rs | 3059 | except Exception: | CODE |
| LOW⚡ | CubeAPI/src/handlers/agenthub.rs | 3514 | except Exception: | CODE |
| LOW⚡ | CubeAPI/src/handlers/agenthub.rs | 3523 | except Exception: | CODE |
| LOW⚡ | CubeAPI/src/handlers/agenthub.rs | 3527 | except Exception: | CODE |
| LOW⚡ | CubeAPI/src/handlers/agenthub.rs | 3537 | except Exception: | CODE |
| LOW | CubeAPI/src/handlers/agenthub.rs | 3580 | except Exception: | CODE |
| LOW | CubeAPI/src/handlers/agenthub.rs | 3636 | except Exception: | CODE |
| LOW | sdk/python/cubesandbox/_filesystem.py | 294 | except Exception: # noqa: BLE001 | CODE |
| MEDIUM | sdk/python/cubesandbox/_filesystem.py | 263 | def _read_frame(self) -> WatchEvent | None | object: | CODE |
| LOW | sdk/python/cubesandbox/_pty.py | 121 | except Exception: | CODE |
| LOW | sdk/python/cubesandbox/_pty.py | 154 | except Exception: | CODE |
| LOW | sdk/python/cubesandbox/_pty.py | 449 | except Exception: | CODE |
| LOW | sdk/python/cubesandbox/_pty.py | 513 | except Exception: | CODE |
| LOW | sdk/python/cubesandbox/_pty.py | 547 | except Exception: | CODE |
| MEDIUM | sdk/python/cubesandbox/_pty.py | 105 | def _handle_events(self) -> Generator[PtyOutput, None, None]: | CODE |
| LOW | sdk/python/cubesandbox/_template.py | 21 | except Exception: | CODE |
| LOW | sdk/python/cubesandbox/sandbox.py | 37 | except Exception: | CODE |
| LOW | sdk/python/cubesandbox/sandbox.py | 518 | except Exception: | CODE |
| LOW | sdk/python/cubesandbox/sandbox.py | 663 | except Exception: # noqa: BLE001 — best-effort | CODE |
| LOW | sdk/python/cubesandbox/sandbox.py | 672 | except Exception: # noqa: BLE001 | CODE |
| LOW | sdk/python/cubesandbox/sandbox.py | 759 | except Exception: # noqa: BLE001 — best-effort cleanup | CODE |
| LOW | sdk/python/cubesandbox/sandbox.py | 771 | except Exception: # noqa: BLE001 — best-effort cleanup | CODE |
| MEDIUM | sdk/python/cubesandbox/sandbox.py | 515 | def __del__(self) -> None: | CODE |
| LOW | sdk/python/cubesandbox/_commands.py | 292 | except Exception: | CODE |
| LOW | sdk/python/tests/integration_test_sdk.py | 249 | except Exception: | CODE |
| LOW | sdk/python/tests/integration_test_sdk.py | 267 | except Exception: | CODE |
| MEDIUM | sdk/python/tests/integration_test_sdk.py | 245 | def collect(): | CODE |
| LOW | examples/pi-agent-integration/resume_pi_agent.py | 213 | except Exception as exc: # noqa: BLE001 - cleanup must not mask real errors | CODE |
| LOW | examples/pi-agent-integration/network_policy.py | 237 | except Exception as exc: # noqa: BLE001 - cleanup must not mask real errors | CODE |
| LOW | …raining/mini-swe-agent-patch/environments/extra/e2b.py | 232 | except Exception as e: | CODE |
| LOW | …raining/mini-swe-agent-patch/environments/extra/e2b.py | 400 | except Exception as e: | CODE |
| LOW | …raining/mini-swe-agent-patch/environments/extra/e2b.py | 449 | except Exception as e: | CODE |
| LOW | …aining/mini-swe-agent-patch/run/benchmarks/swebench.py | 176 | except Exception as e: | CODE |
| LOW | …aining/mini-swe-agent-patch/run/benchmarks/swebench.py | 276 | except Exception as e: | CODE |
| LOW⚡ | examples/mini-rl-training/scripts/run-concurrent.py | 490 | except Exception: | CODE |
| LOW | examples/mini-rl-training/scripts/run-concurrent.py | 176 | except Exception: | CODE |
| LOW | examples/mini-rl-training/scripts/run-concurrent.py | 476 | except Exception as e: | CODE |
| LOW | examples/mini-rl-training/scripts/run-concurrent.py | 648 | except Exception as e: | CODE |
| LOW | examples/mini-rl-training/scripts/run-concurrent.py | 703 | except Exception as e: | CODE |
| LOW | examples/openai-agents-example/simple_demo.py | 269 | except Exception as e: | CODE |
| LOW | examples/openai-agents-example/main.py | 119 | except Exception as e: | CODE |
| LOW | examples/openai-agents-example/main.py | 149 | except Exception as e: | CODE |
| LOW | examples/openai-agents-example/main.py | 302 | except Exception as e: | CODE |
| LOW⚡ | examples/openai-agents-example/main.py | 376 | except Exception as e: | CODE |
| 29 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | cubecow/examples/go-test/main.go | 374 | // Step 1: Create volume | COMMENT |
| LOW⚡ | cubecow/examples/go-test/main.go | 377 | // Step 2: Get volume info | COMMENT |
| LOW⚡ | cubecow/examples/go-test/main.go | 380 | // Step 3: Get volume block info | COMMENT |
| LOW⚡ | cubecow/examples/go-test/main.go | 383 | // Step 4: Resize volume | COMMENT |
| LOW⚡ | cubecow/examples/go-test/main.go | 386 | // Step 5: Create snapshot | COMMENT |
| LOW⚡ | cubecow/examples/go-test/main.go | 389 | // Step 6: List snapshots | COMMENT |
| LOW⚡ | cubecow/examples/go-test/main.go | 392 | // Step 7: List volumes | COMMENT |
| LOW⚡ | cubecow/examples/go-test/main.go | 395 | // Step 8: Get metrics | COMMENT |
| LOW⚡ | cubecow/examples/go-test/main.go | 398 | // Step 9: Cleanup - delete snapshot then volume (unless -no-cleanup) | COMMENT |
| LOW⚡ | deploy/one-click/terraform/tencentcloud/create.sh | 2783 | # Step 1: terraform init | COMMENT |
| LOW⚡ | deploy/one-click/terraform/tencentcloud/create.sh | 2816 | # Step 2: terraform apply (with retry logic) | COMMENT |
| LOW⚡ | deploy/one-click/terraform/tencentcloud/create.sh | 3300 | # Step 6: Replace with the CubeSandbox kernel | COMMENT |
| LOW⚡ | deploy/one-click/terraform/tencentcloud/create.sh | 3514 | # Step 7: Reboot the CVM and verify the new kernel | COMMENT |
| LOW⚡ | deploy/one-click/terraform/tencentcloud/create.sh | 3669 | # Step 8: Initialize all compute nodes (purchased sequentially in step 3) | COMMENT |
| LOW⚡ | …services/cubebox/snapshot_base_memory_fallback_test.go | 210 | // Step 1: Create-restore from tpl-T sets BOTH bindings. | COMMENT |
| LOW⚡ | …services/cubebox/snapshot_base_memory_fallback_test.go | 216 | // Step 2: Commit A advances the runtime-snapshot binding only. | COMMENT |
| LOW⚡ | …services/cubebox/snapshot_base_memory_fallback_test.go | 222 | // Step 3: Commit B — same invariant. | COMMENT |
| LOW⚡ | …services/cubebox/snapshot_base_memory_fallback_test.go | 227 | // Step 4: Rollback to A: rollback restarts the VM, so it bumps BOTH. | COMMENT |
| LOW⚡ | …services/cubebox/snapshot_base_memory_fallback_test.go | 233 | // Step 5: Commit C after rollback — runtime-snapshot advances; the | COMMENT |
| LOW | CubeAPI/src/handlers/agenthub.rs | 2597 | // Step 1: a plain restart is enough for transient failures. | COMMENT |
| LOW | CubeAPI/src/handlers/agenthub.rs | 2613 | // Step 2: restart failed — roll back to the latest known-healthy snapshot. | COMMENT |
| LOW⚡ | CubeMaster/pkg/templatecenter/image/native.go | 146 | // Step 1: Concurrently prefetch layers to disk to maximize network throughput. | COMMENT |
| LOW | CubeMaster/pkg/templatecenter/image/native.go | 245 | // Step 2: Sequentially apply and immediately delete layers as they finish downloading. | COMMENT |
| LOW | …eMaster/pkg/base/dao/migrate/migrate_alignment_test.go | 96 | // Step 1: table set — catches missing tables like runtime_active quickly. | COMMENT |
| LOW | examples/openai-agents-example/simple_demo.py | 216 | # Step 1: Create sandbox and write a marker file | COMMENT |
| LOW⚡ | examples/openai-agents-example/simple_demo.py | 236 | # Step 3: Pause (stop + shutdown with pause_on_exit=True) | COMMENT |
| LOW⚡ | examples/openai-agents-example/simple_demo.py | 244 | # Step 4: Resume | COMMENT |
| LOW⚡ | examples/openai-agents-example/simple_demo.py | 251 | # Step 5: Verify marker file persists | COMMENT |
| LOW⚡ | examples/snapshot-rollback-clone/rollback_demo.py | 18 | # Step 1: create a base snapshot | COMMENT |
| LOW⚡ | examples/snapshot-rollback-clone/rollback_demo.py | 25 | # Step 2: spin up a sandbox from the base snapshot | COMMENT |
| LOW⚡ | examples/snapshot-rollback-clone/rollback_demo.py | 29 | # Step 3: write v1 to both disk and tmpfs, take a checkpoint | COMMENT |
| LOW⚡ | examples/snapshot-rollback-clone/rollback_demo.py | 35 | # Step 4: write v2, verify it stuck on both | COMMENT |
| LOW⚡ | examples/snapshot-rollback-clone/rollback_demo.py | 42 | # Step 5: rollback to the v1 checkpoint | COMMENT |
| LOW⚡ | examples/snapshot-rollback-clone/rollback_demo.py | 46 | # Step 6: verify both disk and tmpfs restored to v1 | COMMENT |
| LOW⚡ | examples/snapshot-rollback-clone/09_rollback.py | 17 | # Step 1: create a base snapshot at v0 | COMMENT |
| LOW⚡ | examples/snapshot-rollback-clone/09_rollback.py | 24 | # Step 2: spin up a sandbox from the base snapshot | COMMENT |
| LOW⚡ | examples/snapshot-rollback-clone/09_rollback.py | 28 | # Step 3: write v1, take a checkpoint | COMMENT |
| LOW⚡ | examples/snapshot-rollback-clone/09_rollback.py | 34 | # Step 4: write v2, confirm it stuck | COMMENT |
| LOW⚡ | examples/snapshot-rollback-clone/09_rollback.py | 41 | # Step 5: rollback to the v1 checkpoint | COMMENT |
| LOW⚡ | examples/snapshot-rollback-clone/09_rollback.py | 45 | # Step 6: verify state is v1 | COMMENT |
| LOW⚡ | hypervisor/scripts/run_integration_tests_x86_64.sh | 242 | # Step 1: Priority 1 - Boot & Lifecycle (parallel) | COMMENT |
| LOW⚡ | hypervisor/scripts/run_integration_tests_x86_64.sh | 249 | # Step 2: Priority 2 - Core I/O Devices (parallel) | COMMENT |
| LOW⚡ | hypervisor/scripts/run_integration_tests_x86_64.sh | 258 | # Step 3: Priority 3 - Hotplug (parallel) | COMMENT |
| LOW⚡ | hypervisor/scripts/run_integration_tests_x86_64.sh | 267 | # Step 4: Priority 4 - Snapshot & Live Migration (parallel + sequential) | COMMENT |
| LOW | hypervisor/scripts/run_integration_tests_x86_64.sh | 279 | # Step 5: Priority 5 - VMM Instance API (lib mode, sequential) | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | examples/host-mount/env_utils.py | 0 | best-effort load of a nearby .env file without overriding real env vars. | STRING |
| HIGH | examples/route-aware-egress/env_utils.py | 0 | best-effort load of a nearby .env file without overriding real env vars. | STRING |
| HIGH | examples/pi-agent-integration/env_utils.py | 0 | best-effort load of a nearby .env file without overriding real env vars. | STRING |
| HIGH | examples/network-policy/env_utils.py | 0 | best-effort load of a nearby .env file without overriding real env vars. | STRING |
| HIGH | examples/code-sandbox-quickstart/env_utils.py | 0 | best-effort load of a nearby .env file without overriding real env vars. | STRING |
| HIGH | examples/code-sandbox-quickstart/auto-kill.py | 0 | \ import hashlib data = "cube sandbox pause/resume demo" hash_val = hashlib.sha256(data.encode()).hexdigest()[:16] pi_ap | STRING |
| HIGH | examples/code-sandbox-quickstart/auto-resume.py | 0 | \ import hashlib data = "cube sandbox pause/resume demo" hash_val = hashlib.sha256(data.encode()).hexdigest()[:16] pi_ap | STRING |
| HIGH | examples/code-sandbox-quickstart/pause.py | 0 | \ import hashlib data = "cube sandbox pause/resume demo" hash_val = hashlib.sha256(data.encode()).hexdigest()[:16] pi_ap | STRING |
| HIGH | examples/code-sandbox-quickstart/auto-kill.py | 0 | on_stdout may deliver multi-line blobs; normalize to individual lines. | STRING |
| HIGH | examples/code-sandbox-quickstart/auto-resume.py | 0 | on_stdout may deliver multi-line blobs; normalize to individual lines. | STRING |
| HIGH | examples/code-sandbox-quickstart/pause.py | 0 | on_stdout may deliver multi-line blobs; normalize to individual lines. | STRING |
| HIGH | examples/code-sandbox-quickstart/auto-kill.py | 0 | extract value from 'key = value' formatted output line. | STRING |
| HIGH | examples/code-sandbox-quickstart/auto-resume.py | 0 | extract value from 'key = value' formatted output line. | STRING |
| HIGH | examples/code-sandbox-quickstart/pause.py | 0 | extract value from 'key = value' formatted output line. | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | CubeAPI/examples/benchmark.py | 26 | CODE | |
| LOW | CubeAPI/examples/list.py | 4 | CODE | |
| LOW | sdk/python/cubesandbox/_filesystem.py | 4 | CODE | |
| LOW | sdk/python/cubesandbox/_filesystem.py | 19 | CODE | |
| LOW | sdk/python/cubesandbox/__init__.py | 4 | CODE | |
| LOW | sdk/python/cubesandbox/__init__.py | 4 | CODE | |
| LOW | sdk/python/cubesandbox/__init__.py | 5 | CODE | |
| LOW | sdk/python/cubesandbox/__init__.py | 6 | CODE | |
| LOW | sdk/python/cubesandbox/__init__.py | 6 | CODE | |
| LOW | sdk/python/cubesandbox/__init__.py | 6 | CODE | |
| LOW | sdk/python/cubesandbox/__init__.py | 6 | CODE | |
| LOW | sdk/python/cubesandbox/__init__.py | 6 | CODE | |
| LOW | sdk/python/cubesandbox/__init__.py | 6 | CODE | |
| LOW | sdk/python/cubesandbox/__init__.py | 7 | CODE | |
| LOW | sdk/python/cubesandbox/__init__.py | 7 | CODE | |
| LOW | sdk/python/cubesandbox/__init__.py | 7 | CODE | |
| LOW | sdk/python/cubesandbox/__init__.py | 7 | CODE | |
| LOW | sdk/python/cubesandbox/__init__.py | 7 | CODE | |
| LOW | sdk/python/cubesandbox/__init__.py | 7 | CODE | |
| LOW | sdk/python/cubesandbox/__init__.py | 8 | CODE | |
| LOW | sdk/python/cubesandbox/__init__.py | 9 | CODE | |
| LOW | sdk/python/cubesandbox/__init__.py | 9 | CODE | |
| LOW | sdk/python/cubesandbox/__init__.py | 9 | CODE | |
| LOW | sdk/python/cubesandbox/__init__.py | 9 | CODE | |
| LOW | sdk/python/cubesandbox/__init__.py | 10 | CODE | |
| LOW | sdk/python/cubesandbox/__init__.py | 10 | CODE | |
| LOW | sdk/python/cubesandbox/__init__.py | 10 | CODE | |
| LOW | sdk/python/cubesandbox/__init__.py | 11 | CODE | |
| LOW | sdk/python/cubesandbox/__init__.py | 11 | CODE | |
| LOW | sdk/python/cubesandbox/__init__.py | 11 | CODE | |
| LOW | sdk/python/cubesandbox/__init__.py | 11 | CODE | |
| LOW | sdk/python/cubesandbox/_transport.py | 4 | CODE | |
| LOW | sdk/python/cubesandbox/_pty.py | 14 | CODE | |
| LOW | sdk/python/cubesandbox/_pty.py | 39 | CODE | |
| LOW | sdk/python/cubesandbox/_stream.py | 4 | CODE | |
| LOW | sdk/python/cubesandbox/_template.py | 4 | CODE | |
| LOW | sdk/python/cubesandbox/sandbox.py | 4 | CODE | |
| LOW | sdk/python/cubesandbox/sandbox.py | 11 | CODE | |
| LOW | sdk/python/cubesandbox/sandbox.py | 16 | CODE | |
| LOW | sdk/python/cubesandbox/_policy.py | 13 | CODE | |
| LOW | sdk/python/cubesandbox/_models.py | 4 | CODE | |
| LOW | sdk/python/cubesandbox/_config.py | 4 | CODE | |
| LOW | sdk/python/cubesandbox/_commands.py | 4 | CODE | |
| LOW | sdk/python/cubesandbox/_commands.py | 14 | CODE | |
| LOW | sdk/python/cubesandbox/_exceptions.py | 4 | CODE | |
| LOW | sdk/python/tests/conftest.py | 4 | CODE | |
| LOW | sdk/python/tests/integration_test_sdk.py | 14 | CODE | |
| LOW | sdk/python/tests/integration_test_sdk.py | 16 | CODE | |
| LOW | sdk/python/tests/test_template_e2e.py | 9 | CODE | |
| LOW | sdk/python/tests/test_sandbox.py | 10 | CODE | |
| LOW | sdk/python/tests/test_sandbox.py | 26 | CODE | |
| LOW | sdk/python/tests/test_sandbox.py | 26 | CODE | |
| LOW | examples/pi-agent-integration/_pi_common.py | 12 | CODE | |
| LOW | examples/pi-agent-integration/resume_pi_agent.py | 17 | CODE | |
| LOW | examples/pi-agent-integration/env_utils.py | 4 | CODE | |
| LOW | examples/pi-agent-integration/run_pi_agent.py | 5 | CODE | |
| LOW | examples/pi-agent-integration/network_policy.py | 21 | CODE | |
| LOW | examples/mini-rl-training/scripts/run-concurrent.py | 25 | CODE | |
| LOW | examples/mini-rl-training/scripts/run-concurrent.py | 38 | CODE | |
| LOW | examples/mini-rl-training/scripts/run-concurrent.py | 939 | CODE | |
| 7 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | sdk/python/cubesandbox/_template.py | 150 | GET /templates — List all templates. Args: config: SDK config. Uses default (env-based) config if | STRING |
| HIGH | sdk/python/cubesandbox/_template.py | 181 | GET /templates/:templateID — Get a template and its build history. Args: template_id: Template iden | STRING |
| HIGH | sdk/python/cubesandbox/_template.py | 238 | POST /templates - Build (create) a new template from an image. Submits CubeAPI's create-from-image request and | STRING |
| HIGH | sdk/python/cubesandbox/sandbox.py | 158 | POST /sandboxes - Create a new sandbox. Args: template: Template ID. Falls back to ``CUBE_TEMPLATE_ | STRING |
| HIGH | sdk/python/cubesandbox/sandbox.py | 255 | POST /sandboxes/:sandboxID/connect - Connect to an existing sandbox. Resumes the sandbox if it is currently pau | STRING |
| HIGH | sdk/python/cubesandbox/sandbox.py | 345 | POST /execute - Execute code inside the sandbox. Streams the ndjson response from the sandbox's envd process vi | STRING |
| HIGH | sdk/python/cubesandbox/sandbox.py | 526 | POST /sandboxes/:sandboxID/snapshots — Create a snapshot (1.1). The sandbox is temporarily paused during snapsh | STRING |
| HIGH | sdk/python/cubesandbox/sandbox.py | 615 | POST /sandboxes/:sandboxID/rollback — Roll back a sandbox to a snapshot (1.5). Reverts the sandbox's filesystem | STRING |
| HIGH | sdk/python/cubesandbox/sandbox.py | 677 | Clone this sandbox *n* times (1.6). Internally this executes three steps: 1. :meth:`create_snapshot` — | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | cubecow/benches/reflink_ops.rs | 236 | // we name it explicitly so the recipe is robust to default | COMMENT |
| MEDIUM | deploy/pvm/pvm_setup.sh | 80 | # is more robust and is a no-op on RPM distributions. | COMMENT |
| MEDIUM | deploy/one-click/terraform/tencentcloud/validate.sh | 103 | # keep this robust across checkout layouts. Gate on errors so genuine bugs | COMMENT |
| MEDIUM⚡ | deploy/one-click/terraform/tencentcloud/create.sh | 359 | # fall through to auto-detect / prompt so re-runs stay robust. | COMMENT |
| MEDIUM | docs/package-lock.json | 3401 | "resolved": "https://registry.npmjs.org/robust-predicates/-/robust-predicates-3.0.3.tgz", | CODE |
| MEDIUM | dev-env/internal/setup_selinux.sh | 53 | # most robust fix is to flip SELinux to permissive mode. We do it both | COMMENT |
| MEDIUM | CubeMaster/pkg/templatecenter/image/disk.go | 147 | // set explicitly to be robust); --numeric-owner avoids name lookups | COMMENT |
| MEDIUM⚡ | CubeMaster/pkg/templatecenter/image/native.go | 147 | // Temp directory is created in destDir's workspace to utilize the same fast disk. | COMMENT |
| LOW | examples/openai-agents-example/main.py | 18 | python main.py --sandbox-only # just create & destroy sandbox | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | CubeEgress/scripts/cube-proxy-iptables-init.sh | 17 | # Usage: | COMMENT |
| LOW | deploy/one-click/scripts/cube-diag/collect-logs.sh | 21 | # Usage: | COMMENT |
| LOW | deploy/one-click/scripts/cube-diag/cube-check.sh | 18 | # Usage: | COMMENT |
| LOW | deploy/one-click/scripts/cube-diag/check-procs.sh | 18 | # Usage: | COMMENT |
| LOW | dev-env/run_vm.sh | 18 | # Usage: | COMMENT |
| LOW | dev-env/prepare_image.sh | 19 | # Usage: | COMMENT |
| LOW | dev-env/cube-autostart.sh | 18 | # Usage: | COMMENT |
| LOW | dev-env/login.sh | 11 | # Usage: | COMMENT |
| LOW | dev-env/copy_logs.sh | 12 | # Usage: | COMMENT |
| LOW | CubeAPI/scripts/test-cube-api.sh | 4 | # Usage: | COMMENT |
| LOW | CubeMaster/scripts/redis_key_migrate.sh | 4 | # Usage: | COMMENT |
| LOW | scripts/bump-image.sh | 14 | # Usage: | COMMENT |
| LOW | scripts/new-migration.sh | 12 | # Usage: | COMMENT |
| LOW | scripts/gh.sh | 7 | # Usage: | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | deploy/pvm/common.sh | 3 | # This file is sourced by build-pvm-host-kernel-pkg.sh and | COMMENT |
| MEDIUM | deploy/one-click/terraform/tencentcloud/main.tf | 519 | # Create the database (via the jumpserver) | COMMENT |
| MEDIUM | deploy/one-click/terraform/tencentcloud/lib-phases.sh | 21 | # This file is sourced by create.sh (and by the test). It must not run anything | COMMENT |
| MEDIUM⚡ | deploy/one-click/terraform/tencentcloud/create.sh | 5270 | # Create the MySQL instance (+ cube account/privilege + the application | COMMENT |
| MEDIUM | deploy/one-click/scripts/common/validation.sh | 5 | # This file is sourced by callers that already define die(). | COMMENT |
| MEDIUM | deploy/one-click/lib/common.sh | 3 | # This file is a sourced library. Do not set shell options here: entrypoint | COMMENT |
| MEDIUM | scripts/new-migration.sh | 5 | # Create a new CubeMaster MySQL migration with a UTC timestamp version prefix. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | CubeAPI/examples/benchmark.py | 611 | CODE | |
| LOW | sdk/python/cubesandbox/_pty.py | 464 | CODE | |
| LOW | sdk/python/cubesandbox/_stream.py | 15 | CODE | |
| LOW | sdk/python/cubesandbox/sandbox.py | 676 | CODE | |
| LOW | sdk/python/cubesandbox/_commands.py | 185 | CODE | |
| LOW | sdk/python/cubesandbox/_commands.py | 211 | CODE | |
| LOW | examples/pi-agent-integration/_pi_common.py | 38 | CODE | |
| LOW | …raining/mini-swe-agent-patch/environments/extra/e2b.py | 195 | CODE | |
| LOW | …aining/mini-swe-agent-patch/run/benchmarks/swebench.py | 227 | CODE | |
| LOW | examples/mini-rl-training/scripts/run-concurrent.py | 669 | CODE | |
| LOW | examples/mini-rl-training/scripts/run-concurrent.py | 730 | CODE | |
| LOW | examples/openai-agents-example/main.py | 399 | CODE | |
| LOW | examples/openai-agents-example/main.py | 444 | CODE | |
| LOW | examples/e2b-dev-sidecar/dev_sidecar.py | 180 | CODE | |
| LOW | examples/e2b-dev-sidecar/dev_sidecar.py | 198 | CODE | |
| LOW | …ai-agents-code-interpreter/code_interpreter_demo_ci.py | 519 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | examples/mini-rl-training/README.md | 48 | E2B_API_KEY="<your-api-key>" | CODE |
| HIGH | examples/mini-rl-training/README_zh.md | 46 | E2B_API_KEY="<your-api-key>" | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | deploy/one-click/install.sh | 601 | # Check if the user has explicitly opted to skip this check. | COMMENT |
| LOW | deploy/one-click/online-install.sh | 191 | # Check if the closest existing parent directory is writable by root (detects read-only mounts) | COMMENT |
| LOW | deploy/one-click/terraform/tencentcloud/create.sh | 2699 | # Set TENCENTCLOUD_COMPUTE_INSTANCE_TYPE to choose explicitly. | COMMENT |
| LOW | agent/bootstrap.sh | 3 | # Check if the user is running this script as root | COMMENT |
| LOW | …visor/scripts/run_integration_tests_windows_aarch64.sh | 33 | # Check if the images are present | COMMENT |
| LOW | …rvisor/scripts/run_integration_tests_windows_x86_64.sh | 33 | # Check if the images are present | COMMENT |
| LOW | hypervisor/scripts/run_integration_tests_aarch64.sh | 220 | # Check if there is any error in the execution of `update_workloads`. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | docs/guide/self-build-deploy.md | 358 | │ ├── bin/network-agent # Network orchestration service | CODE |
| MEDIUM | docs/guide/usecases/trpc-agent-go.md | 17 | [trpc-agent-go](https://github.com/trpc-group/trpc-agent-go) is Tencent's open-source Go framework for building producti | CODE |
| MEDIUM | docs/changelog/v0.4.0.md | 56 | - **Artifact management** (#506): A new job runner orchestrates the full pipeline (image export → rootfs artifact build | CODE |
| MEDIUM | docs/changelog/v0.3.0.md | 54 | - **Docker Compose container lifecycle** (#386): Container lifecycle management migrated to Docker Compose, simplifying | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH⚡ | examples/openai-agents-example/main.py | 381 | result = await session.exec("uname -a && cat /etc/os-release | head -3") | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | hypervisor/virtio-devices/src/vsock/csm/connection.rs | 57 | // receiving peer's behavior is undefined. In this implementation, we forcefully terminate | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | web/src/locales/zh/command.json | 3 | "placeholder": "搜索或输入命令…", | CODE |
| LOW | web/src/locales/en/command.json | 3 | "placeholder": "Search or type a command…", | CODE |
| LOW | web/src/components/CommandPalette.tsx | 45 | placeholder={t('placeholder')} | CODE |
| LOW | web/src/i18n/index.ts | 20 | ns: ['common', 'nav', 'topbar', 'command', 'overview', 'sandboxes', 'sandboxDetail', 'sandboxNew', 'templates', 'tem | CODE |
| LOW | web/src/pages/Placeholder.tsx | 10 | type PlaceholderKey = ParseKeys<'placeholder'>; | CODE |
| LOW | web/src/pages/Placeholder.tsx | 21 | const { t } = useTranslation('placeholder'); | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | hypervisor/vmm/src/vm.rs | 1303 | // Don't forget to set the terminal in canonical mode | COMMENT |
| LOW | hypervisor/virtiofsd/src/passthrough/mod.rs | 1370 | // a new option here, don't forget to add it there, too, and handle it both in | COMMENT |
| LOW | hypervisor/src/lib.rs | 354 | // Don't forget to set the terminal in canonical mode | COMMENT |
| LOW | hypervisor/src/main.rs | 770 | // Don't forget to set the terminal in canonical mode | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | sdk/python/cubesandbox/_filesystem.py | 11 | logger = logging.getLogger(__name__) | CODE |
| LOW | sdk/python/cubesandbox/__init__.py | 13 | __all__ = [ | CODE |
| LOW | sdk/python/cubesandbox/_stream.py | 12 | logger = logging.getLogger(__name__) | CODE |
| LOW | sdk/python/cubesandbox/sandbox.py | 457 | def set_timeout(self, timeout: int) -> None: | CODE |
| LOW⚡ | examples/mini-rl-training/scripts/run-concurrent.py | 499 | def _update_preds(path: Path, instance_id: str, model_name: str, patch: str) -> None: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | Cubelet/scripts/cubebox_appsnapshot.py | 106 | CODE | |
| LOW | sdk/python/cubesandbox/_template.py | 209 | CODE | |
| LOW | sdk/python/cubesandbox/sandbox.py | 145 | CODE | |
| LOW | sdk/python/cubesandbox/_models.py | 61 | CODE | |
| LOW | …aining/mini-swe-agent-patch/run/benchmarks/swebench.py | 227 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | web/public/mockServiceWorker.js | 124 | async function handleRequest(event, requestId, requestInterceptedAt) { | CODE |
| LOW | sdk/python/cubesandbox/_transport.py | 25 | def handle_request(self, request: httpx.Request) -> httpx.Response: | CODE |