An embeddable, portable, branchable virtual machine to safely run Agents locally.
This report summarizes scanner evidence for smol-machines/smolvm, a Rust project with 6,672 GitHub stars. SynthScan examined 303,459 lines of code across 562 source files, recording 1364 pattern matches distributed across 14 syntactic categories. The legacy adjusted pattern signal is 6.2 (Moderate pattern signal); it is not an authorship estimate.
Use the findings to ask whether maintainers can explain intent, verify dependencies, simplify unnecessary scaffolding, and focus review effort. Risk Payload v1 adds ownership, supply-chain, over-engineering, and review-effort vectors when available. These are prompts for human verification, not probabilities, security findings, or measured maintenance costs.
Use each vector to guide manual verification of the underlying findings.
Can maintainers explain intent, assumptions, and trade-offs? 1128 finding(s).
Are imports declared and package/API names verified? 1 finding(s).
Are wrappers, guards, and repeated structures necessary? 236 finding(s).
Which changes need focused human review? 1364 finding(s).
This chart tracks the legacy adjusted pattern score across scan runs. Changes can reflect source changes, scan coverage, or detector/scoring versions; they do not measure AI adoption or prove that a team refactored code. Compare runs only when their scoring versions are compatible. The dashed line tracks the raw pattern-hit count.
Groups findings by configured severity weight. Severity is not a confidence estimate, security rating, or proof that a package is missing. Verify imports against the project's manifests and inspect each finding in its local design context.
This horizontal bar chart shows where configured pattern scores accumulate across directories. Treat the bars as locations to inspect, not as evidence of authorship or code quality. Use the file-level findings to decide whether a directory needs a focused ownership, dependency, complexity, or review check.
The scanner identified 1364 distinct pattern matches across 14 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a detector match to inspect in context. 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 configured finding weight (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — legacy comment-context matches receive a ×1.5 score weight. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier under the legacy scoring model.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | Makefile.toml | 1 | # cargo-make configuration for smolvm | COMMENT |
| LOW | build.rs | 1 | //! Build script for smolvm. | COMMENT |
| LOW | build.rs | 21 | //! cp /opt/homebrew/opt/libkrun/lib/libkrun.dylib lib/ | COMMENT |
| LOW | demo/bench/run-smolvm.sh | 1 | #!/bin/bash | COMMENT |
| LOW | packaging/nfpm.yaml | 1 | # nfpm config for the official smolvm .deb / .rpm packages. | COMMENT |
| LOW | bench/bench.sh | 1 | #!/bin/bash | COMMENT |
| LOW | bench/matrix.sh | 1 | #!/bin/bash | COMMENT |
| LOW | crates/smolvm-oci-layer/src/lib.rs | 1 | //! Pure-Rust extraction of a single OCI image layer into an overlayfs lowerdir. | COMMENT |
| LOW | crates/smolvm-oci-layer/src/lib.rs | 61 | /// branch, which performs *destructive* operations (`remove_file`, | COMMENT |
| LOW | crates/smolvm-oci-layer/src/lib.rs | 221 | /// Extract one OCI layer blob into `dest`, applying OCI whiteout semantics so the | COMMENT |
| LOW | crates/smolvm-oci-layer/src/lib.rs | 261 | // A layer can declare a read-only directory before its children. Relax each | COMMENT |
| LOW | crates/smolvm-protocol/src/host_pattern.rs | 1 | //! Matching for persisted network host entries. | COMMENT |
| LOW | crates/smolvm-protocol/src/credentials.rs | 1 | //! Credential policy: which credential bindings a machine may use, and where. | COMMENT |
| LOW | crates/smolvm-protocol/src/credentials.rs | 21 | //! A binding names a credential; it never carries the value. Every binding | COMMENT |
| LOW | crates/smolvm-protocol/src/credentials.rs | 81 | /// One named credential a workload may use against explicit hosts. | COMMENT |
| LOW | crates/smolvm-protocol/src/lib.rs | 1 | //! Protocol types for smolvm host-guest communication. | COMMENT |
| LOW | crates/smolvm-protocol/src/lib.rs | 21 | /// One S3-compatible bucket to mount inside the workload container. | COMMENT |
| LOW | crates/smolvm-protocol/src/lib.rs | 101 | /// guest. Shared host↔guest so the launcher's `krun_add_virtiofs` tag and the | COMMENT |
| LOW | crates/smolvm-protocol/src/lib.rs | 121 | /// Chosen to keep the single-shot frame comfortably under the frame | COMMENT |
| LOW | crates/smolvm-protocol/src/lib.rs | 141 | // The single-shot threshold must be <= the chunk size. They can be equal (a | COMMENT |
| LOW | crates/smolvm-protocol/src/lib.rs | 161 | /// `gpu_vram_mib` cap. It is the compiled-in default. The host-side transfer | COMMENT |
| LOW | crates/smolvm-protocol/src/lib.rs | 181 | COMMENT | |
| LOW | crates/smolvm-protocol/src/lib.rs | 201 | /// finishes init, and the host's `accept()` fires — an event-driven readiness | COMMENT |
| LOW | crates/smolvm-protocol/src/lib.rs | 421 | /// | COMMENT |
| LOW | crates/smolvm-protocol/src/lib.rs | 441 | /// rewritten to a registry mirror by the host. | COMMENT |
| LOW | crates/smolvm-protocol/src/lib.rs | 501 | COMMENT | |
| LOW | crates/smolvm-protocol/src/lib.rs | 541 | /// | COMMENT |
| LOW | crates/smolvm-protocol/src/lib.rs | 561 | /// has to hold both the expanded rootfs and a second full copy of it as | COMMENT |
| LOW | crates/smolvm-protocol/src/lib.rs | 581 | BranchpointRelease { | COMMENT |
| LOW | crates/smolvm-protocol/src/lib.rs | 621 | command: Vec<String>, | COMMENT |
| LOW | crates/smolvm-protocol/src/lib.rs | 641 | stdin_data: Option<String>, | COMMENT |
| LOW | crates/smolvm-protocol/src/lib.rs | 661 | /// Volume mounts to bind into the container. | COMMENT |
| LOW | crates/smolvm-protocol/src/lib.rs | 681 | #[serde(default)] | COMMENT |
| LOW | crates/smolvm-protocol/src/lib.rs | 701 | /// The container runs detached; stdout/stderr go to /dev/null. | COMMENT |
| LOW | crates/smolvm-protocol/src/lib.rs | 721 | data: Vec<u8>, | COMMENT |
| LOW | crates/smolvm-protocol/src/lib.rs | 741 | FileWrite { | COMMENT |
| LOW | crates/smolvm-protocol/src/lib.rs | 761 | /// requests. The final chunk sets `done: true` to finalize. | COMMENT |
| LOW | crates/smolvm-protocol/src/lib.rs | 781 | /// receiving exactly this many bytes. | COMMENT |
| LOW | crates/smolvm-protocol/src/lib.rs | 821 | COMMENT | |
| LOW | crates/smolvm-protocol/src/lib.rs | 841 | /// Allocate a PTY for the init process. | COMMENT |
| LOW | crates/smolvm-protocol/src/lib.rs | 901 | /// exit: bundle, cgroup, PTY. Exit status was already streamed by | COMMENT |
| LOW | crates/smolvm-protocol/src/lib.rs | 1001 | /// | COMMENT |
| LOW | crates/smolvm-protocol/src/lib.rs | 1061 | exit_code: i32, | COMMENT |
| LOW | crates/smolvm-protocol/src/lib.rs | 1121 | /// on the final chunk. Current producers: `ExportLayer` and | COMMENT |
| LOW | crates/smolvm-protocol/src/lib.rs | 1141 | // | COMMENT |
| LOW | crates/smolvm-protocol/src/lib.rs | 1201 | /// | COMMENT |
| LOW | crates/smolvm-protocol/src/lib.rs | 1241 | Err(e) => AgentResponse::error( | COMMENT |
| LOW | crates/smolvm-protocol/src/lib.rs | 1281 | /// Creation timestamp (ISO 8601). | COMMENT |
| LOW | crates/smolvm-protocol/src/lib.rs | 1321 | /// This is what a machine is actually using. The host-side `phys_footprint` | COMMENT |
| LOW | crates/smolvm-protocol/src/lib.rs | 1501 | COMMENT | |
| LOW | crates/smolvm-protocol/src/intercept.rs | 1 | //! Host-side stream interception handshake. | COMMENT |
| LOW | crates/smolvm-protocol/src/intercept.rs | 21 | //! ``` | COMMENT |
| LOW | crates/smolvm-protocol/src/image_ref.rs | 1 | //! Image reference canonicalization. | COMMENT |
| LOW | crates/smolvm-protocol/src/image_ref.rs | 21 | /// present it takes precedence and any tag is dropped. | COMMENT |
| LOW | crates/smolvm-protocol/src/image_ref.rs | 101 | } | COMMENT |
| LOW | crates/smolvm-protocol/src/forkpoint.rs | 21 | /// Optional readiness-marker capability requesting eager clone module loading. | COMMENT |
| LOW | crates/smolvm-protocol/src/forkpoint.rs | 61 | /// | COMMENT |
| LOW | crates/smolvm-protocol/src/forkpoint.rs | 101 | /// every workload container runs as PID 1. A branch helper that finds itself | COMMENT |
| LOW | crates/smolvm-protocol/src/egress_rule.rs | 1 | //! Ordered, host-enforced L4 egress rules. The list is deliberately small and | COMMENT |
| LOW | crates/smolvm-protocol/src/publish_socket.rs | 1 | //! Shared spec for user-published host↔guest Unix-socket bridges. | COMMENT |
| 975 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | Makefile.toml | 16 | # ============================================================================= | COMMENT |
| MEDIUM | Makefile.toml | 18 | # ============================================================================= | COMMENT |
| MEDIUM | Makefile.toml | 78 | # ============================================================================= | COMMENT |
| MEDIUM | Makefile.toml | 80 | # ============================================================================= | COMMENT |
| MEDIUM | Makefile.toml | 102 | # ============================================================================= | COMMENT |
| MEDIUM | Makefile.toml | 104 | # ============================================================================= | COMMENT |
| MEDIUM | Makefile.toml | 169 | # ============================================================================= | COMMENT |
| MEDIUM | Makefile.toml | 171 | # ============================================================================= | COMMENT |
| MEDIUM | Makefile.toml | 183 | # ============================================================================= | COMMENT |
| MEDIUM | Makefile.toml | 185 | # ============================================================================= | COMMENT |
| MEDIUM | Makefile.toml | 208 | # ============================================================================= | COMMENT |
| MEDIUM | Makefile.toml | 210 | # ============================================================================= | COMMENT |
| MEDIUM | Makefile.toml | 249 | # ============================================================================= | COMMENT |
| MEDIUM | Makefile.toml | 251 | # ============================================================================= | COMMENT |
| MEDIUM | Makefile.toml | 263 | # ============================================================================= | COMMENT |
| MEDIUM | Makefile.toml | 265 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | crates/smolvm-network/src/netns_tap.rs | 11 | //! ┌─────────┐ ethernet frames ┌──────────────┐ unixstream ┌────────┐ | COMMENT |
| MEDIUM⚡ | crates/smolvm-network/src/netns_tap.rs | 12 | //! │ tapX │◀───────────────────▶│ netns_tap │◀───────────▶│ libkrun │ | COMMENT |
| MEDIUM⚡ | crates/smolvm-network/src/netns_tap.rs | 15 | //! └─────────┘ └──────────────┘ └────────┘ | COMMENT |
| MEDIUM | crates/smolvm-shim/src/engine.rs | 456 | /// stdin fifo (nonblocking read) ──────────────────────────► │ | COMMENT |
| MEDIUM | tests/test_gpu.sh | 38 | # ============================================================================= | COMMENT |
| MEDIUM | tests/test_gpu.sh | 40 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | tests/test_gpu.sh | 71 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | tests/test_gpu.sh | 73 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | tests/test_gpu.sh | 80 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | tests/test_gpu.sh | 82 | # ============================================================================= | COMMENT |
| MEDIUM | tests/test_gpu.sh | 187 | # ============================================================================= | COMMENT |
| MEDIUM | tests/test_gpu.sh | 189 | # ============================================================================= | COMMENT |
| MEDIUM | tests/test_gpu.sh | 258 | # ============================================================================= | COMMENT |
| MEDIUM | tests/test_gpu.sh | 260 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | tests/test_smolfile.sh | 28 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | tests/test_smolfile.sh | 30 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | tests/test_smolfile.sh | 39 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | tests/test_smolfile.sh | 41 | # ============================================================================= | COMMENT |
| MEDIUM | tests/test_smolfile.sh | 157 | # ============================================================================= | COMMENT |
| MEDIUM | tests/test_smolfile.sh | 159 | # ============================================================================= | COMMENT |
| MEDIUM | tests/test_smolfile.sh | 319 | # ============================================================================= | COMMENT |
| MEDIUM | tests/test_smolfile.sh | 321 | # ============================================================================= | COMMENT |
| MEDIUM | tests/test_smolfile.sh | 497 | # ============================================================================= | COMMENT |
| MEDIUM | tests/test_smolfile.sh | 499 | # ============================================================================= | COMMENT |
| MEDIUM | tests/test_smolfile.sh | 557 | # ============================================================================= | COMMENT |
| MEDIUM | tests/test_smolfile.sh | 559 | # ============================================================================= | COMMENT |
| MEDIUM | tests/test_smolfile.sh | 651 | # ============================================================================= | COMMENT |
| MEDIUM | tests/test_smolfile.sh | 653 | # ============================================================================= | COMMENT |
| MEDIUM | tests/test_smolfile.sh | 899 | # ============================================================================= | COMMENT |
| MEDIUM | tests/test_smolfile.sh | 901 | # ============================================================================= | COMMENT |
| MEDIUM | tests/test_smolfile.sh | 928 | # ============================================================================= | COMMENT |
| MEDIUM | tests/test_smolfile.sh | 930 | # ============================================================================= | COMMENT |
| MEDIUM | tests/test_smolfile.sh | 1006 | # ============================================================================= | COMMENT |
| MEDIUM | tests/test_smolfile.sh | 1008 | # ============================================================================= | COMMENT |
| MEDIUM | tests/test_smolfile.sh | 1063 | # ============================================================================= | COMMENT |
| MEDIUM | tests/test_smolfile.sh | 1065 | # ============================================================================= | COMMENT |
| MEDIUM | tests/test_smolfile.sh | 1250 | # ============================================================================= | COMMENT |
| MEDIUM | tests/test_smolfile.sh | 1252 | # ============================================================================= | COMMENT |
| MEDIUM | tests/test_smolfile.sh | 1350 | # ============================================================================= | COMMENT |
| MEDIUM | tests/test_smolfile.sh | 1352 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | tests/test_secrets.sh | 67 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | tests/test_secrets.sh | 69 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | tests/test_secrets.sh | 83 | # ============================================================================= | COMMENT |
| MEDIUM⚡ | tests/test_secrets.sh | 85 | # ============================================================================= | COMMENT |
| 169 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | tests/common.sh | 54 | # Initialize SMOLVM variable | COMMENT |
| MEDIUM | tests/test_gpu.sh | 155 | # Create a named machine with --gpu, stop+start it, verify DRI still present. | COMMENT |
| MEDIUM | tests/test_smolfile.sh | 474 | # Create a Smolfile in the temp dir (simulating CWD) | COMMENT |
| MEDIUM⚡ | tests/test_api.sh | 248 | # Create a fresh machine | COMMENT |
| MEDIUM⚡ | tests/test_api.sh | 680 | # Create a machine (never start it) | COMMENT |
| MEDIUM | tests/test_machine_bare.sh | 255 | # Create the named VM first | COMMENT |
| MEDIUM⚡ | tests/test_pack.sh | 647 | # Create a named VM with network, install a package, then stop it | COMMENT |
| MEDIUM | tests/test_pack.sh | 533 | # Create a temp dir with a single .smolmachine file | COMMENT |
| MEDIUM | tests/test_db.sh | 29 | # Create a named VM with specific configuration | COMMENT |
| MEDIUM | tests/test_db.sh | 58 | # Create a named VM | COMMENT |
| MEDIUM | tests/test_db.sh | 103 | # Create a VM | COMMENT |
| MEDIUM | tests/test_volumes.sh | 29 | # Create a host directory with a test file | COMMENT |
| MEDIUM | docs/dev-env/scripts/create-dev-machine.sh | 2 | # Create a persistent dev machine and bring it up for the first time. | COMMENT |
| MEDIUM | docs/docker-in-machine/scripts/create-docker-machine.sh | 2 | # Create the machine and install Docker into it. The install happens on the | COMMENT |
| MEDIUM | src/api/mod.rs | 15 | //! # Create a machine | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | demo/bench/run-smolvm.sh | 43 | # stage shims under both suffixed + unsuffixed names (harness/loader use both) | COMMENT |
| MEDIUM | crates/smolvm-cuda/src/host.rs | 793 | /// clone can RE-CAPTURE the same sequence in its own context — the robust | COMMENT |
| MEDIUM | crates/smolvm-pack/src/extract.rs | 8349 | // a few. Assert well under a tenth to stay robust across filesystems. | COMMENT |
| MEDIUM | deploy/k3s/install-smolvm-k3s.sh | 5 | # `runtimeClassName: smolvm` boot as per-workload microVMs. Version-robust: it | COMMENT |
| MEDIUM⚡ | tests/test_secrets.sh | 76 | # `env` (busybox) prints the whole environment — robust across rootfs builds. | COMMENT |
| MEDIUM⚡ | tests/test_harness.sh | 11 | # under test failing rather than as a harness fault. | COMMENT |
| MEDIUM⚡ | tests/test_harness.sh | 14 | # the harness does in-process; this file therefore carries its own small runner | COMMENT |
| MEDIUM⚡ | tests/test_harness.sh | 17 | # Pure harness test: no smolvm binary, no VM, no network. | COMMENT |
| MEDIUM⚡ | .github/workflows/ci.yml | 317 | # the WHP QA harness (unit tests can additionally be run under Wine with | COMMENT |
| MEDIUM | src/agent/manager.rs | 3522 | // Combined with agent-side sync(), this provides robust data integrity | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | Makefile.toml | 4 | # Usage: | COMMENT |
| LOW | tests/test_gpu.sh | 13 | # Usage: | COMMENT |
| LOW | tests/test_smolfile.sh | 8 | # Usage: | COMMENT |
| LOW | tests/test_secrets.sh | 15 | # Usage: | COMMENT |
| LOW | tests/test_cli.sh | 8 | # Usage: | COMMENT |
| LOW | tests/test_api.sh | 7 | # Usage: | COMMENT |
| LOW⚡ | tests/test_pack_registry.sh | 12 | # Usage: | COMMENT |
| LOW | tests/test_resize.sh | 6 | # Usage: | COMMENT |
| LOW | tests/run_tests.sh | 5 | # Usage: | COMMENT |
| LOW | tests/test_pack.sh | 8 | # Usage: | COMMENT |
| LOW | tests/test_scale.sh | 8 | # Usage: | COMMENT |
| LOW | scripts/build-dist.sh | 4 | # Usage: | COMMENT |
| LOW | scripts/install.sh | 9 | # Usage: | COMMENT |
| LOW | scripts/test-registry.sh | 9 | # Usage: | COMMENT |
| LOW | scripts/refresh-cudart-fixtures.sh | 43 | # Usage: | COMMENT |
| LOW | scripts/install-local.sh | 4 | # Usage: | COMMENT |
| LOW | scripts/install-k8s-runtime.sh | 11 | # Usage: | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | crates/smolvm-registry/src/client.rs | 1209 | // Step 1: attach a preemptive bearer to the initial send only. | COMMENT |
| LOW⚡ | crates/smolvm-registry/src/client.rs | 1218 | // Step 2: send. | COMMENT |
| LOW⚡ | crates/smolvm-registry/src/client.rs | 1295 | // Step 1: attach preemptive bearer (optimization — wrong scope → extra 401, not corruption). | COMMENT |
| LOW⚡ | crates/smolvm-registry/src/client.rs | 1302 | // Step 2: send with a fresh body from the factory. | COMMENT |
| LOW⚡ | crates/smolvm-registry/src/client.rs | 1323 | // Step 3: token for the scope this request actually needs, fresh body. | COMMENT |
| LOW⚡ | crates/smolvm-registry/src/client.rs | 1330 | // Step 4: force-evict stale cache entry, genuinely fresh token, final body. | COMMENT |
| LOW | crates/smolvm-registry/src/client.rs | 324 | // Step 1: POST to initiate upload. | COMMENT |
| LOW | crates/smolvm-registry/src/client.rs | 354 | // Step 2: PUT the blob data with digest. | COMMENT |
| LOW | crates/smolvm-registry/src/client.rs | 445 | // Step 1: POST to initiate upload (empty body — always replayable). | COMMENT |
| LOW | crates/smolvm-registry/src/client.rs | 476 | // Step 2: PUT with streaming body via factory. | COMMENT |
| LOW | crates/smolvm-registry/src/client.rs | 583 | // Step 1: POST to open an upload session (empty body — replayable). | COMMENT |
| LOW | crates/smolvm-registry/src/client.rs | 599 | // Step 2: PATCH contiguous chunks. The registry hands back a fresh upload | COMMENT |
| LOW | crates/smolvm-registry/src/client.rs | 638 | // Step 3: PUT (empty body) to close the session, carrying the digest. | COMMENT |
| LOW | crates/smolvm-registry/src/client.rs | 1252 | // Step 5: force-evict and fetch a genuinely fresh token → second retry. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | crates/smolvm-registry/src/client.rs | 1209 | // Step 1: attach a preemptive bearer to the initial send only. | COMMENT |
| LOW⚡ | crates/smolvm-registry/src/client.rs | 1218 | // Step 2: send. | COMMENT |
| LOW⚡ | crates/smolvm-registry/src/client.rs | 1295 | // Step 1: attach preemptive bearer (optimization — wrong scope → extra 401, not corruption). | COMMENT |
| LOW⚡ | crates/smolvm-registry/src/client.rs | 1302 | // Step 2: send with a fresh body from the factory. | COMMENT |
| LOW⚡ | crates/smolvm-registry/src/client.rs | 1323 | // Step 3: token for the scope this request actually needs, fresh body. | COMMENT |
| LOW⚡ | crates/smolvm-registry/src/client.rs | 1330 | // Step 4: force-evict stale cache entry, genuinely fresh token, final body. | COMMENT |
| LOW | crates/smolvm-registry/src/client.rs | 324 | // Step 1: POST to initiate upload. | COMMENT |
| LOW | crates/smolvm-registry/src/client.rs | 354 | // Step 2: PUT the blob data with digest. | COMMENT |
| LOW | crates/smolvm-registry/src/client.rs | 445 | // Step 1: POST to initiate upload (empty body — always replayable). | COMMENT |
| LOW | crates/smolvm-registry/src/client.rs | 476 | // Step 2: PUT with streaming body via factory. | COMMENT |
| LOW | crates/smolvm-registry/src/client.rs | 583 | // Step 1: POST to open an upload session (empty body — replayable). | COMMENT |
| LOW | crates/smolvm-registry/src/client.rs | 599 | // Step 2: PATCH contiguous chunks. The registry hands back a fresh upload | COMMENT |
| LOW | crates/smolvm-registry/src/client.rs | 638 | // Step 3: PUT (empty body) to close the session, carrying the digest. | COMMENT |
| LOW | crates/smolvm-registry/src/client.rs | 1252 | // Step 5: force-evict and fetch a genuinely fresh token → second retry. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | tests/test_api_resize_interruption.py | 86 | except (OSError, http.client.HTTPException): | CODE |
| HIGH | tests/test_api_resize_interruption.py | 156 | except (OSError, http.client.HTTPException): | CODE |
| HIGH | tests/test_api_shutdown.py | 83 | except OSError: | CODE |
| HIGH | tests/test_api_exec_interactive.py | 88 | except OSError: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tests/common.sh | 420 | # Check if any smolvm processes are running that might interfere with tests | COMMENT |
| LOW | tests/test_pack.sh | 1452 | # Check if docker is available | COMMENT |
| LOW | tests/test_volumes.sh | 45 | # Read the file via machine exec (VmExec) — this exercises boot-time mount | COMMENT |
| LOW | tests/bench_vm_startup.sh | 41 | # Check if smolvm is available | COMMENT |
| LOW | scripts/build-dist.sh | 312 | # Set CODESIGN_IDENTITY to a Developer ID for distribution signing. | COMMENT |
| LOW | scripts/smolvm-wrapper.sh | 53 | # Check if binary exists | COMMENT |
| LOW | scripts/smolvm-wrapper.sh | 60 | # Check if libraries exist | COMMENT |
| LOW | scripts/install.sh | 672 | # Check if already in PATH | COMMENT |
| LOW | scripts/install.sh | 678 | # Check if already in profile | COMMENT |
| LOW | scripts/rebuild-agent.sh | 47 | # Check if rootfs directory exists | COMMENT |
| LOW | scripts/install-local.sh | 194 | # Check if it's a tarball or directory | COMMENT |
| LOW | scripts/smol-wrapper.sh | 54 | # Check if binary exists | COMMENT |
| LOW | scripts/smol-wrapper.sh | 61 | # Check if libraries exist | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | bench/segmented_graph_throughput.py | 58 | CODE | |
| LOW | tests/test_api_clone_export.py | 18 | CODE | |
| LOW | tests/test_api_checkpoint_host_image.py | 37 | CODE | |
| LOW | tests/test_api_delete_cleanup.py | 249 | CODE | |
| LOW | tests/test_api_shutdown.py | 28 | CODE | |
| LOW | tests/test_api_exec_interactive.py | 125 | CODE | |
| LOW | tests/test_api_checkpoint_ports.py | 25 | CODE | |
| LOW | tests/test_api_uid_checkpoint.py | 20 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | tests/test_api_checkpoint_host_image.py | 83 | result = target_exec(restored, 'echo again >>/root/marker && cat /root/marker') | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | scripts/check-secrets-guards.sh | 3 | # Static guardrails for host-side secret references. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | bench/bench.sh | 93 | except Exception: return None | CODE |
| LOW | tests/test_network.sh | 705 | except Exception: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | tests/test_agent_signal_receipt.py | 26 | def test_exact_handler_before_sync(self): | CODE |