The World's First Virtual Terminal for AI Agents
This report summarizes scanner evidence for strukto-ai/mirage, a TypeScript project with 3,682 GitHub stars. SynthScan examined 1,831,737 lines of code across 10063 source files, recording 26997 pattern matches distributed across 21 syntactic categories. The legacy adjusted pattern signal is 19.0 (Elevated 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? 23608 finding(s).
Are imports declared and package/API names verified? 2071 finding(s).
Are wrappers, guards, and repeated structures necessary? 16223 finding(s).
Which changes need focused human review? 26997 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 26997 distinct pattern matches across 21 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 | python/tests/test_types_fingerprint.py | 18 | def test_file_stat_has_fingerprint_field(): | CODE |
| LOW | python/tests/test_types_fingerprint.py | 28 | def test_file_stat_fingerprint_defaults_none(): | CODE |
| LOW | python/tests/test_lua_parity.py | 28 | def test_every_lua_script_exists_in_both_languages(): | CODE |
| LOW | python/tests/test_lua_parity.py | 40 | def test_lua_basenames_are_unique_within_each_tree(): | CODE |
| LOW | python/tests/test_lua_parity.py | 52 | def test_each_lua_pair_is_byte_identical(): | CODE |
| LOW | python/tests/test_filestat_split.py | 10 | def test_content_is_rejected_on_a_non_file_kind(kind): | CODE |
| LOW | python/tests/test_tests_mirror_sources.py | 80 | def test_tests_declare_no_packages(): | CODE |
| LOW | python/tests/test_tests_mirror_sources.py | 98 | def test_every_test_directory_mirrors_a_source_package(): | CODE |
| LOW | python/tests/test_tests_mirror_sources.py | 112 | def test_no_stale_directory_exemption(): | CODE |
| LOW | python/tests/test_tests_mirror_sources.py | 125 | def test_module_mirror_coverage_holds_the_baseline(): | CODE |
| LOW | python/tests/test_nested_functions_are_closures.py | 90 | def test_nested_functions_capture_enclosing_state(): | CODE |
| LOW⚡ | python/tests/test_path_prefix_boundary.py | 61 | def test_mount_prefix_round_trips(mount, child): | CODE |
| LOW⚡ | python/tests/test_path_prefix_boundary.py | 69 | def test_a_child_is_under_its_mount(mount, child): | CODE |
| LOW⚡ | python/tests/test_path_prefix_boundary.py | 76 | def test_a_lookalike_sibling_is_not_under_the_mount(mount, child): | CODE |
| LOW⚡ | python/tests/test_path_prefix_boundary.py | 84 | def test_event_helpers_lift_onto_the_mount(mount, child): | CODE |
| LOW | python/tests/test_path_prefix_boundary.py | 112 | def test_evictions_that_drop_a_listing_reach_the_real_key(mount, child, kind): | CODE |
| LOW | python/tests/test_path_prefix_boundary.py | 133 | def test_a_write_drops_the_parent_listing_at_the_real_key(mount, child): | CODE |
| LOW | python/tests/test_path_prefix_boundary.py | 148 | def test_a_subtree_eviction_reaches_nested_listings(mount, child): | CODE |
| LOW | python/tests/test_path_prefix_boundary.py | 160 | def test_the_watcher_frames_a_lookalike_child_correctly(mount, child): | CODE |
| LOW | python/tests/test_commit_sha_parity.py | 56 | def test_python_and_typescript_commit_sha_give_the_same_answer(sample): | CODE |
| LOW | python/tests/test_init.py | 39 | def test_authoring_surface_is_stable(): | CODE |
| LOW⚡ | python/tests/test_types.py | 50 | def test_aggr_none_inputs_is_none(): | CODE |
| LOW⚡ | python/tests/test_types.py | 55 | def test_aggr_keeps_single_limit(): | CODE |
| LOW⚡ | python/tests/test_types.py | 62 | def test_aggr_takes_smallest_positive_timeout(): | CODE |
| LOW⚡ | python/tests/test_types.py | 70 | def test_aggr_nonpositive_timeout_is_unbounded(): | CODE |
| LOW⚡ | python/tests/test_types.py | 77 | def test_aggr_takes_smallest_caps(): | CODE |
| LOW⚡ | python/tests/test_types.py | 85 | def test_aggr_error_beats_truncate(): | CODE |
| LOW⚡ | python/tests/test_types.py | 92 | def test_aggr_all_truncate_stays_truncate(): | CODE |
| LOW⚡ | python/tests/test_types.py | 99 | def test_every_field_declares_an_aggr_rule(): | CODE |
| LOW⚡ | python/tests/test_types.py | 106 | def test_pathspec_requires_vfs_path(): | CODE |
| LOW⚡ | python/tests/test_types.py | 111 | def test_pathspec_raw_path_kept_when_given(): | CODE |
| LOW⚡ | python/tests/test_types.py | 121 | def test_pathspec_raw_path_defaults_to_virtual(): | CODE |
| LOW⚡ | python/tests/test_types.py | 126 | def test_word_text_passes_strings_through(): | CODE |
| LOW⚡ | python/tests/test_types.py | 130 | def test_word_text_renders_paths_as_typed(): | CODE |
| LOW⚡ | python/tests/test_types.py | 140 | def test_pathspec_dir_trims_vfs_path(): | CODE |
| LOW⚡ | python/tests/test_types.py | 223 | def test_pathspec_from_str_path_defaults_to_root_mounted(): | CODE |
| LOW⚡ | python/tests/test_types.py | 229 | def test_pathspec_from_str_path_explicit_vfs_path(): | CODE |
| LOW⚡ | python/tests/test_types.py | 234 | def test_parse_mount_mode_words_and_aliases(): | CODE |
| LOW⚡ | python/tests/test_types.py | 242 | def test_parse_mount_mode_rejects_bit_style_forms(): | CODE |
| LOW | python/tests/test_types.py | 153 | def test_pathspec_dir_at_mount_root(): | CODE |
| LOW | python/tests/test_types.py | 202 | def test_pathspec_from_str_path_resolves_user_spelling( | CODE |
| LOW | python/tests/test_types.py | 254 | def test_read_spec_defaults_to_bounded_at_the_index_ttl(): | CODE |
| LOW | python/tests/test_types.py | 260 | def test_read_spec_carries_a_bound_under_fresh_too(): | CODE |
| LOW | python/tests/test_types.py | 271 | def test_cache_facts_is_frozen(): | CODE |
| LOW | python/tests/test_types.py | 301 | def test_derived_paths_preserve_or_reset_the_base_walk( | CODE |
| LOW | python/tests/test_types.py | 313 | def test_parent_retains_spelled_ancestors(): | CODE |
| LOW | python/tests/vfs/test_ram_stats.py | 46 | def test_callback_receives_events(): | CODE |
| LOW | python/tests/vfs/test_ram_stats.py | 54 | def test_write_callback_receives_events(): | CODE |
| LOW⚡ | python/tests/vfs/test_registry.py | 92 | def test_unknown_vfs_raises_keyerror(): | CODE |
| LOW⚡ | python/tests/vfs/test_registry.py | 97 | def test_registry_module_import_is_free_of_vfs_deps(): | CODE |
| LOW⚡ | python/tests/vfs/test_registry.py | 106 | def test_build_hf_buckets_vfs(): | CODE |
| LOW⚡ | python/tests/vfs/test_registry.py | 160 | def test_register_vfs_class_and_config(clean_registry): | CODE |
| LOW⚡ | python/tests/vfs/test_registry.py | 167 | def test_register_vfs_kwargs_config(clean_registry): | CODE |
| LOW⚡ | python/tests/vfs/test_registry.py | 174 | def test_register_vfs_config_cls_attribute(clean_registry): | CODE |
| LOW⚡ | python/tests/vfs/test_registry.py | 180 | def test_register_vfs_rejects_builtin_shadow(clean_registry): | CODE |
| LOW⚡ | python/tests/vfs/test_registry.py | 185 | def test_register_vfs_spec_string(clean_registry): | CODE |
| LOW⚡ | python/tests/vfs/test_registry.py | 191 | def test_colon_reference_builds_without_a_registry(clean_registry): | CODE |
| LOW⚡ | python/tests/vfs/test_registry.py | 201 | def test_colon_reference_uses_the_config_cls_attribute(clean_registry): | CODE |
| LOW⚡ | python/tests/vfs/test_registry.py | 208 | def test_colon_reference_does_not_shadow_a_builtin_name(clean_registry): | CODE |
| LOW⚡ | python/tests/vfs/test_registry.py | 213 | def test_colon_reference_to_a_missing_attribute_raises(clean_registry): | CODE |
| 14771 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | ruff.toml | 1 | # The repository's width since before Ruff formatted it. Ruff's default of 88 | COMMENT |
| LOW | licenses/license_template_py.txt | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | licenses/license_template_ts.txt | 1 | // ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | licenses/update_license.js | 1 | // ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/pyproject.toml | 261 | # pre-commit hook: the tool still misreports ~200 live symbols here (see | COMMENT |
| LOW | python/pyproject.toml | 321 | ignore_missing_imports = true | COMMENT |
| LOW | python/tests/test_types_fingerprint.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/conftest.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/test_lua_parity.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/test_tests_mirror_sources.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/test_tests_mirror_sources.py | 41 | "end-to-end suites that span the package, so no one source dir owns " | COMMENT |
| LOW | python/tests/test_nested_functions_are_closures.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/test_commit_sha_parity.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/test_init.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/test_types.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/vfs/test_ram_stats.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/vfs/test_registry.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/vfs/test_state_round_trip.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/vfs/test_no_blocking_http.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/vfs/test_loader.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/vfs/test_plugins.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/vfs/test_inventory.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/vfs/test_command_args.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/vfs/test_s3_alias.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/vfs/test_ram_store.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/vfs/test_listing_version.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/vfs/test_freshness.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/vfs/test_secrets.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/vfs/test_backend_name.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/vfs/test_read_range_roster.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/vfs/test_read_revalidatable.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/vfs/test_base.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/vfs/test_call.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/vfs/test_testing.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/vfs/langfuse/test_find.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/vfs/s3/test_s3_stat_dir.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/vfs/s3/test_s3_stream.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/vfs/s3/test_s3_grep_stream.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/vfs/s3/test_s3_stats.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/vfs/s3/test_s3.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/vfs/discord/test_discord.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/vfs/discord/test_functions.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/vfs/aliyun/test_aliyun.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/vfs/bin/test_bin.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/vfs/redis/test_cat.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/vfs/redis/test_tail.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/vfs/redis/test_ls.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/vfs/redis/test_redis_provider.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/vfs/redis/test_head.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/vfs/redis/test_functions.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/vfs/redis/test_glob.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/vfs/redis/test_redis_store.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/vfs/hf_models/test_hf_models.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/vfs/ceph/test_ceph.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/vfs/backblaze/test_backblaze.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/vfs/onedrive/test_read_fresh.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/vfs/hf_spaces/test_hf_spaces.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/vfs/digitalocean/test_digitalocean.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/vfs/linear/test_prompt.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/vfs/linear/test_linear.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| 7995 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | python/tests/vfs/onedrive/test_read_fresh.py | 34 | CP = "cp /m/a.txt /r/x && cat /r/x" | CODE |
| HIGH⚡ | python/tests/vfs/github/test_listing_ttl.py | 247 | ("/gh", "cd /gh && find . -name c.txt", "./docs/c.txt"), | CODE |
| HIGH⚡ | python/tests/vfs/github/test_listing_ttl.py | 249 | ("/gh", "cd /gh && du -a", "./docs/c.txt"), | CODE |
| HIGH⚡ | python/tests/vfs/github/test_listing_ttl.py | 254 | ("/gh", "cd /gh/docs && du -a", "./c.txt"), | CODE |
| HIGH | python/tests/vfs/sharepoint/test_read_fresh.py | 68 | pytest.param(True, "cp {v} /r/x && cat /r/x", id="scoped-bytes"), | CODE |
| HIGH⚡ | python/tests/vfs/disk/test_local.py | 100 | await ws.shell("echo hi > /data/f.txt && chmod 640 /data/f.txt") | CODE |
| HIGH | python/tests/vfs/dev/test_dev.py | 48 | 'consume() { ls /dev/fd >/dev/null; hold; cat "$1"; }; ' | CODE |
| HIGH⚡ | python/tests/core/render/test_json.py | 53 | '"meta":{"n":1,"ok":true,"none":null},"empty":{}}' | CODE |
| HIGH | python/tests/core/render/test_json.py | 99 | value_text({"a": 1.0, "b": [True, None]}) == '{"a":1,"b":[true,null]}' | CODE |
| HIGH | python/tests/core/jq/test_parse.py | 682 | '{"a":1,"b":[1,2,{"c":null}]}', | CODE |
| HIGH | python/tests/core/jq/test_eval.py | 206 | ("error(null)", JqRun([], JqError("null", False))), | CODE |
| HIGH | python/tests/core/jq/test_eval.py | 289 | ("error(null)", True), | CODE |
| HIGH⚡ | python/tests/shell/test_quoting_coverage.py | 515 | ('x=abc; [[ $x == "a*"* ]] && echo hit || echo miss', b"miss\n"), | CODE |
| HIGH⚡ | python/tests/shell/test_quoting_coverage.py | 516 | ("x='a*c'; [[ $x == \"a*\"* ]] && echo hit || echo miss", b"hit\n"), | CODE |
| HIGH⚡ | python/tests/shell/test_quoting_coverage.py | 517 | ('x=aXb; [[ $x == "a"*"b" ]] && echo hit || echo miss', b"hit\n"), | CODE |
| HIGH⚡ | python/tests/shell/test_quoting_coverage.py | 518 | ('x=ab; [[ $x == "a*" ]] && echo hit || echo miss', b"miss\n"), | CODE |
| HIGH⚡ | python/tests/shell/test_quoting_coverage.py | 519 | ("x=ab; [[ $x == a* ]] && echo hit || echo miss", b"hit\n"), | CODE |
| HIGH⚡ | python/tests/shell/test_quoting_coverage.py | 520 | ('x=ab; [[ $x != "a*" ]] && echo hit || echo miss', b"hit\n"), | CODE |
| HIGH⚡ | python/tests/shell/test_quoting_coverage.py | 522 | "x=$'a\\tb'; [[ $x == $'a\\tb' ]] && echo hit || echo miss", | CODE |
| HIGH⚡ | python/tests/shell/test_quoting_coverage.py | 525 | ("[[ abc < abd ]] && echo hit || echo miss", b"hit\n"), | CODE |
| HIGH | python/tests/shell/test_node_kind.py | 29 | NodeKind.LIST: "true && false", | CODE |
| HIGH⚡ | python/tests/shell/test_set_e.py | 27 | out = shell.mirage("set -e; false || echo recovered; echo done") | CODE |
| HIGH⚡ | python/tests/shell/test_set_e.py | 32 | out = shell.mirage("set -e; false && echo skipped; echo done") | CODE |
| HIGH⚡ | python/tests/shell/test_set_e.py | 66 | out = shell.mirage("set -e; true && false; echo unreached") | CODE |
| HIGH⚡ | python/tests/shell/test_set_e.py | 71 | out = shell.mirage("set -e; false || false; echo unreached") | CODE |
| HIGH⚡ | python/tests/shell/test_arith.py | 64 | assert evaluate_arith("3 && 4", {}).value == 1 | CODE |
| HIGH⚡ | python/tests/shell/test_arith.py | 141 | ("0 && 1/0", 0), | CODE |
| HIGH⚡ | python/tests/shell/test_arith.py | 154 | result = evaluate_arith("0 && (x-=1), 1 || x++, 1 ? 2 : x++", {"x": "1"}) | CODE |
| HIGH⚡ | python/tests/shell/test_arith.py | 390 | assert evaluate_arith("1 || v", {}, nounset=True).value == 1 | CODE |
| HIGH⚡ | python/tests/shell/test_arith.py | 391 | assert evaluate_arith("0 && v", {}, nounset=True).value == 0 | CODE |
| HIGH⚡ | python/tests/shell/test_operators.py | 23 | assert shell.mirage("true && echo yes") == shell.native("true && echo yes") | CODE |
| HIGH⚡ | python/tests/shell/test_operators.py | 27 | assert shell.mirage("false && echo yes") == shell.native( | CODE |
| HIGH⚡ | python/tests/shell/test_operators.py | 28 | "false && echo yes" | CODE |
| HIGH⚡ | python/tests/shell/test_operators.py | 33 | assert shell.mirage("true || echo fallback") == shell.native( | CODE |
| HIGH⚡ | python/tests/shell/test_operators.py | 34 | "true || echo fallback" | CODE |
| HIGH⚡ | python/tests/shell/test_operators.py | 39 | assert shell.mirage("false || echo fallback") == shell.native( | CODE |
| HIGH⚡ | python/tests/shell/test_operators.py | 40 | "false || echo fallback" | CODE |
| HIGH⚡ | python/tests/shell/test_operators.py | 45 | assert shell.mirage("true && echo a || echo b") == shell.native( | CODE |
| HIGH⚡ | python/tests/shell/test_operators.py | 45 | assert shell.mirage("true && echo a || echo b") == shell.native( | CODE |
| HIGH⚡ | python/tests/shell/test_operators.py | 46 | "true && echo a || echo b" | CODE |
| HIGH⚡ | python/tests/shell/test_operators.py | 46 | "true && echo a || echo b" | CODE |
| HIGH⚡ | python/tests/shell/test_operators.py | 51 | assert shell.mirage("false && echo a || echo b") == shell.native( | CODE |
| HIGH⚡ | python/tests/shell/test_operators.py | 51 | assert shell.mirage("false && echo a || echo b") == shell.native( | CODE |
| HIGH⚡ | python/tests/shell/test_operators.py | 52 | "false && echo a || echo b" | CODE |
| HIGH⚡ | python/tests/shell/test_operators.py | 52 | "false && echo a || echo b" | CODE |
| HIGH⚡ | python/tests/shell/test_operators.py | 71 | cmd = "true && true && echo all_true" | CODE |
| HIGH⚡ | python/tests/shell/test_operators.py | 76 | cmd = "false || false || echo last_resort" | CODE |
| HIGH⚡ | python/tests/shell/test_operators.py | 81 | cmd = "echo a; false && echo b; echo c" | CODE |
| HIGH⚡ | python/tests/shell/test_operators.py | 92 | m = shell.mirage("grep hello /data/f.txt && echo found") | CODE |
| HIGH⚡ | python/tests/shell/test_operators.py | 93 | n = shell.native("grep hello f.txt && echo found") | CODE |
| HIGH⚡ | python/tests/shell/test_operators.py | 99 | m = shell.mirage("grep nope /data/f.txt || echo missing") | CODE |
| HIGH⚡ | python/tests/shell/test_operators.py | 100 | n = shell.native("grep nope f.txt || echo missing") | CODE |
| HIGH⚡ | python/tests/shell/test_barrier.py | 34 | cmd_m = "grep -q hello /data/f.txt && echo yes" | CODE |
| HIGH⚡ | python/tests/shell/test_barrier.py | 35 | cmd_n = "grep -q hello f.txt && echo yes" | CODE |
| HIGH⚡ | python/tests/shell/test_barrier.py | 41 | cmd_m = "grep -q missing /data/f.txt && echo yes" | CODE |
| HIGH⚡ | python/tests/shell/test_barrier.py | 42 | cmd_n = "grep -q missing f.txt && echo yes" | CODE |
| HIGH⚡ | python/tests/shell/test_barrier.py | 48 | cmd_m = "grep -q missing /data/f.txt || echo fallback" | CODE |
| HIGH⚡ | python/tests/shell/test_barrier.py | 49 | cmd_n = "grep -q missing f.txt || echo fallback" | CODE |
| HIGH⚡ | python/tests/shell/test_barrier.py | 78 | cmd = "echo a && echo b" | CODE |
| HIGH⚡ | python/tests/shell/test_barrier.py | 83 | cmd = "echo a || echo b" | CODE |
| 857 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | python/tests/vfs/test_state_round_trip.py | 27 | # ── RAM ──────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | python/tests/vfs/test_state_round_trip.py | 54 | # ── Disk ─────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | python/tests/vfs/test_state_round_trip.py | 89 | # ── Redis ────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | python/tests/vfs/test_state_round_trip.py | 129 | # ── S3 ───────────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | python/tests/vfs/test_state_round_trip.py | 177 | # ── all remote/token VFS: cred redaction matrix ────────────────── | COMMENT |
| MEDIUM | python/tests/vfs/test_state_round_trip.py | 429 | # ── database-backed VFS, built through the registry ────────────── | COMMENT |
| MEDIUM⚡ | python/tests/core/object_store/test_copy.py | 87 | # ── the retraction record snapshot capture reads ───────────────────────── | COMMENT |
| MEDIUM⚡ | python/tests/core/object_store/test_rename.py | 99 | # ── the retraction records snapshot capture reads ──────────────────────── | COMMENT |
| MEDIUM | python/tests/core/object_store/test_write.py | 242 | # ── the backend token the put answered reaches the op record ───────────── | COMMENT |
| MEDIUM | python/tests/core/object_store/test_remove.py | 163 | # ── the retraction records snapshot capture reads ──────────────────────── | COMMENT |
| MEDIUM⚡ | python/tests/shell/test_quoting_coverage.py | 62 | # ── paths with spaces ────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | python/tests/shell/test_quoting_coverage.py | 89 | # ── paths with special chars ─────────────────────────────── | COMMENT |
| MEDIUM⚡ | python/tests/shell/test_quoting_coverage.py | 99 | # ── unicode in paths ─────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | python/tests/shell/test_quoting_coverage.py | 116 | # ── env vars in paths ────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | python/tests/shell/test_quoting_coverage.py | 142 | # ── command substitution in args ────────────────────────── | COMMENT |
| MEDIUM⚡ | python/tests/shell/test_quoting_coverage.py | 159 | # ── escaping ─────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | python/tests/shell/test_quoting_coverage.py | 184 | # ── unquoted backslash escapes (POSIX §2.2.1) ────────────── | COMMENT |
| MEDIUM⚡ | python/tests/shell/test_quoting_coverage.py | 222 | # ── edge cases ───────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | python/tests/shell/test_quoting_coverage.py | 683 | # ── quoted globs stay literal ────────────────────────────── | COMMENT |
| MEDIUM⚡ | python/tests/shell/test_quoting_coverage.py | 768 | # ── quoting is per character, not per word ───────────────── | COMMENT |
| MEDIUM | python/tests/shell/test_quoting_coverage.py | 262 | # ── whitespace between expansions inside double quotes ───── | COMMENT |
| MEDIUM | python/tests/shell/test_quoting_coverage.py | 300 | # ── adjacent backtick substitutions ──────────────────────── | COMMENT |
| MEDIUM | python/tests/shell/test_quoting_coverage.py | 337 | # ── ANSI-C quoting $'...' and locale quoting $"..." ──────── | COMMENT |
| MEDIUM | python/tests/shell/test_quoting_coverage.py | 555 | # ── a bare $ is a literal word ───────────────────────────── | COMMENT |
| MEDIUM | python/tests/shell/test_quoting_coverage.py | 576 | # ── a quoted "$@" splices into the word around it ────────── | COMMENT |
| MEDIUM | python/tests/shell/test_quoting_coverage.py | 649 | # ── literal backslashes survive classification ───────────── | COMMENT |
| MEDIUM⚡ | python/tests/shell/test_helpers.py | 457 | # ── expansion nodes ────────────────────────────── | COMMENT |
| MEDIUM⚡ | python/tests/shell/test_helpers.py | 525 | # ── quotes and escapes ────────────────────────── | COMMENT |
| MEDIUM⚡ | python/tests/shell/test_helpers.py | 584 | # ── multi-statement bodies ───────────────────── | COMMENT |
| MEDIUM⚡ | python/tests/shell/test_helpers.py | 647 | # ── redirect target types ────────────────────── | COMMENT |
| MEDIUM⚡ | python/tests/shell/test_helpers.py | 1063 | # ── heredoc operator-line tail ─────────────────── | COMMENT |
| MEDIUM | python/tests/shell/test_helpers.py | 417 | # ── negated command ────────────────────────────── | COMMENT |
| MEDIUM | python/tests/shell/test_helpers.py | 427 | # ── heredoc ────────────────────────────────────── | COMMENT |
| MEDIUM | python/tests/shell/test_helpers.py | 439 | # ── process substitution ───────────────────────── | COMMENT |
| MEDIUM | python/tests/shell/test_helpers.py | 495 | # ── edge cases ─────────────────────────────────── | COMMENT |
| MEDIUM | python/tests/shell/test_helpers.py | 787 | # ── python command parsing ───────────────────── | COMMENT |
| MEDIUM⚡ | python/tests/shell/parse/test_parse.py | 279 | # ── heredoc operator lines the grammar cannot hold ─────────────────────── | COMMENT |
| MEDIUM⚡ | python/tests/shell/parse/heredoc/test_body.py | 180 | # ── nested order: the layout the parser's source keeps ───────────────── | COMMENT |
| MEDIUM | python/tests/workspace/test_provider_integration.py | 39 | # ═══════════════════════════════════════════════ | COMMENT |
| MEDIUM | python/tests/workspace/test_provider_integration.py | 41 | # ═══════════════════════════════════════════════ | COMMENT |
| MEDIUM | python/tests/workspace/test_provider_integration.py | 117 | # ═══════════════════════════════════════════════ | COMMENT |
| MEDIUM | python/tests/workspace/test_provider_integration.py | 119 | # ═══════════════════════════════════════════════ | COMMENT |
| MEDIUM | python/tests/workspace/test_provider_integration.py | 200 | # ═══════════════════════════════════════════════ | COMMENT |
| MEDIUM | python/tests/workspace/test_provider_integration.py | 202 | # ═══════════════════════════════════════════════ | COMMENT |
| MEDIUM⚡ | python/tests/workspace/test_mount_root_protection.py | 68 | # ════════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM⚡ | python/tests/workspace/test_mount_root_protection.py | 70 | # ════════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM⚡ | python/tests/workspace/test_mount_root_protection.py | 72 | # ── rm ───────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | python/tests/workspace/test_mount_root_protection.py | 152 | # ── mv ───────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | python/tests/workspace/test_mount_root_protection.py | 177 | # ── mkdir ────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | python/tests/workspace/test_mount_root_protection.py | 211 | # ── touch ───────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | python/tests/workspace/test_mount_root_protection.py | 233 | # ── ln ──────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | python/tests/workspace/test_mount_root_protection.py | 273 | # ── nested mount as a target ────────────────────── | COMMENT |
| MEDIUM⚡ | python/tests/workspace/test_mount_root_protection.py | 306 | # ════════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM⚡ | python/tests/workspace/test_mount_root_protection.py | 308 | # ════════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM⚡ | python/tests/workspace/test_mount_root_protection.py | 465 | # ════════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM⚡ | python/tests/workspace/test_mount_root_protection.py | 469 | # ════════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM | python/tests/workspace/test_mount_root_protection.py | 39 | # ── fixtures ────────────────────────────────────── | COMMENT |
| MEDIUM | python/tests/workspace/test_mount_root_protection.py | 449 | # ── ls / unchanged ──────────────────────────────── | COMMENT |
| MEDIUM | python/tests/workspace/test_symlinks.py | 901 | # ── POSIX pathname resolution ──────────────────────────────────────── | COMMENT |
| MEDIUM | python/tests/workspace/test_symlinks.py | 1439 | # ── ln: GNU operand grammar, backups, and the hard-link tier ────── | COMMENT |
| 502 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | python/tests/vfs/gcal/test_gcal.py | 24 | CODE | |
| LOW | python/tests/vfs/airtable/conftest.py | 15 | CODE | |
| LOW | python/tests/core/gcal/conftest.py | 19 | CODE | |
| LOW | python/tests/core/airtable/conftest.py | 15 | CODE | |
| LOW | python/tests/core/hf_buckets/conftest.py | 21 | CODE | |
| LOW | python/tests/core/hf_buckets/conftest.py | 21 | CODE | |
| LOW | python/tests/core/hf_buckets/conftest.py | 21 | CODE | |
| LOW | python/tests/core/hf_buckets/conftest.py | 21 | CODE | |
| LOW | python/tests/commands/cli/builtin/airtable/conftest.py | 26 | CODE | |
| LOW | python/tests/commands/builtin/airtable/conftest.py | 15 | CODE | |
| LOW | python/tests/commands/builtin/github/conftest.py | 19 | CODE | |
| LOW | python/mirage/__init__.py | 18 | CODE | |
| LOW | python/mirage/__init__.py | 26 | CODE | |
| LOW | python/mirage/__init__.py | 27 | CODE | |
| LOW | python/mirage/__init__.py | 27 | CODE | |
| LOW | python/mirage/__init__.py | 27 | CODE | |
| LOW | python/mirage/__init__.py | 28 | CODE | |
| LOW | python/mirage/__init__.py | 29 | CODE | |
| LOW | python/mirage/__init__.py | 29 | CODE | |
| LOW | python/mirage/__init__.py | 29 | CODE | |
| LOW | python/mirage/__init__.py | 29 | CODE | |
| LOW | python/mirage/__init__.py | 29 | CODE | |
| LOW | python/mirage/__init__.py | 36 | CODE | |
| LOW | python/mirage/__init__.py | 37 | CODE | |
| LOW | python/mirage/__init__.py | 38 | CODE | |
| LOW | python/mirage/__init__.py | 38 | CODE | |
| LOW | python/mirage/__init__.py | 38 | CODE | |
| LOW | python/mirage/__init__.py | 38 | CODE | |
| LOW | python/mirage/__init__.py | 44 | CODE | |
| LOW | python/mirage/__init__.py | 45 | CODE | |
| LOW | python/mirage/__init__.py | 46 | CODE | |
| LOW | python/mirage/__init__.py | 47 | CODE | |
| LOW | python/mirage/__init__.py | 47 | CODE | |
| LOW | python/mirage/__init__.py | 47 | CODE | |
| LOW | python/mirage/__init__.py | 47 | CODE | |
| LOW | python/mirage/__init__.py | 47 | CODE | |
| LOW | python/mirage/__init__.py | 47 | CODE | |
| LOW | python/mirage/__init__.py | 47 | CODE | |
| LOW | python/mirage/__init__.py | 47 | CODE | |
| LOW | python/mirage/__init__.py | 47 | CODE | |
| LOW | python/mirage/__init__.py | 47 | CODE | |
| LOW | python/mirage/__init__.py | 47 | CODE | |
| LOW | python/mirage/__init__.py | 47 | CODE | |
| LOW | python/mirage/__init__.py | 47 | CODE | |
| LOW | python/mirage/__init__.py | 47 | CODE | |
| LOW | python/mirage/__init__.py | 47 | CODE | |
| LOW | python/mirage/__init__.py | 47 | CODE | |
| LOW | python/mirage/__init__.py | 47 | CODE | |
| LOW | python/mirage/__init__.py | 47 | CODE | |
| LOW | python/mirage/__init__.py | 47 | CODE | |
| LOW | python/mirage/__init__.py | 68 | CODE | |
| LOW | python/mirage/__init__.py | 69 | CODE | |
| LOW | python/mirage/__init__.py | 70 | CODE | |
| LOW | python/mirage/__init__.py | 70 | CODE | |
| LOW | python/mirage/__init__.py | 71 | CODE | |
| LOW | python/mirage/__init__.py | 72 | CODE | |
| LOW | python/mirage/__init__.py | 73 | CODE | |
| LOW | python/mirage/__init__.py | 74 | CODE | |
| LOW | python/mirage/__init__.py | 75 | CODE | |
| LOW | python/mirage/__init__.py | 75 | CODE | |
| 1023 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | python/mirage/config.py | 125 | Replace ``${VAR}`` placeholders with values from ``env``. Args: value (Any): scalar, dict, or list to walk. | STRING |
| HIGH | python/mirage/config.py | 994 | A config with every mount and CLI pointer replaced by its secret. The async half of the YAML loader, and the reason | STRING |
| HIGH | python/mirage/vfs/registry.py | 361 | Construct a VFS instance by its registry name. Resolves VFS and config classes lazily via importlib, so importi | STRING |
| HIGH | python/mirage/vfs/gcal/event_entry.py | 101 | Recover (event_id, day) from an event filename. Splitting on the first ``__`` is safe because a Google event id is | STRING |
| HIGH | python/mirage/core/langfuse/client.py | 28 | Await a Langfuse fetch, translating a 404 into ENOENT. Every other status stays an ApiError: only "this resource do | STRING |
| HIGH | python/mirage/core/object_store/write.py | 53 | Put one object, translating a missing container to ENOENT. The driver primitives speak keys, so a store error for a | STRING |
| HIGH | python/mirage/core/jaeger/client.py | 104 | Call the Jaeger query API and return the decoded body. Args: accessor (JaegerAccessor): jaeger accessor. | STRING |
| HIGH | python/mirage/core/jaeger/client.py | 198 | Fetch one trace by id. Args: accessor (JaegerAccessor): jaeger accessor. trace_id (str): 16 or 32 h | STRING |
| HIGH | python/mirage/core/notion/client.py | 217 | Refuse a list response Notion marked incomplete. Args: page (dict[str, Any]): one list response. Retur | STRING |
| HIGH | python/mirage/core/notion/pages.py | 105 | Query one page of rows, cursor envelope intact. ``ntn datasources query`` is explicitly one page at a time: it | STRING |
| HIGH | python/mirage/core/github/placeholder.py | 25 | One placeholder's expansion from the install. Args: name (str): the placeholder word, without braces. | STRING |
| HIGH | python/mirage/core/github/placeholder.py | 48 | Expand gh's repository placeholders in an endpoint or field value. Real gh fills `{owner}`, `{repo}` and `{branch}` | STRING |
| HIGH | python/mirage/core/github/tree.py | 155 | Fetch one directory's tree (non-recursive), and whether GitHub cut it. Args: config (GitHubConfig): token a | STRING |
| HIGH | python/mirage/core/github/tree.py | 209 | Fetch a single directory's whole tree (non-recursive). Used as fallback when the recursive tree was truncated, wher | STRING |
| HIGH | python/mirage/core/github/client.py | 153 | One arbitrary API call, the shape `gh api` needs. A GET carries its fields in the query string and every other meth | STRING |
| HIGH | python/mirage/core/github/stat.py | 58 | Stat one path in the repository. Args: accessor (GitHubAccessor): backend handle. path_spec (PathSp | STRING |
| HIGH | python/mirage/core/github/repo.py | 176 | Split gh's repository argument. A URL (``https://HOST/OWNER/REPO``, ``git@HOST:OWNER/REPO.git``) or ``[HOST/]OW | STRING |
| HIGH | python/mirage/core/github/read.py | 52 | Read a file's blob and record the sha it was fetched by. The sha comes from the mount's listing, filling it if a ve | STRING |
| HIGH | python/mirage/core/hf_buckets/hub.py | 66 | The paths-info row of one bucket file, in one request. paths-info answers a missing path, a directory and a leading | STRING |
| HIGH | python/mirage/core/hf_hub/tree.py | 171 | The listing row for one mount-relative path, in one request. The row is folded by ``collect``, the same as a tree p | STRING |
| HIGH | python/mirage/core/hf_hub/tree.py | 273 | Follow the cursor from one page to the last, folding as it goes. Args: accessor (HfHubAccessor): the mount' | STRING |
| HIGH | python/mirage/core/hf_hub/tree.py | 322 | Every path under the mount's subtree, in one paged walk. ``recursive=true`` returns the whole subtree. Size, oid an | STRING |
| HIGH | python/mirage/core/hf_hub/client.py | 476 | Stream file content without holding it whole in memory. Not routed through ``api_request``: that reads the body to | STRING |
| HIGH | python/mirage/core/hf_hub/commit.py | 222 | Apply one commit to the repository. Every addition is checked against the preupload endpoint first, and a file | STRING |
| HIGH | python/mirage/core/hf_hub/stat.py | 82 | Stat one path in the repository. Args: accessor (HfHubAccessor): backend handle. path_spec (PathSpe | STRING |
| HIGH | python/mirage/core/hf_hub/readdir.py | 36 | List one directory of the repository. Args: accessor (HfHubAccessor): backend handle. path_spec (Pa | STRING |
| HIGH | python/mirage/core/hf_hub/read.py | 32 | The tree row for a path, or the error that says why there is none. Shared by every content read so a file, a direct | STRING |
| HIGH | python/mirage/core/email/client.py | 33 | Spell a value as an RFC 3501 quoted string. The two quoted-specials, ``"`` and ``\\``, are escaped with a backs | STRING |
| HIGH | python/mirage/cache/context.py | 374 | The conditions a move carries: the copy onto ``dst``, the source pin. Both versions come from one store lookup. | STRING |
| HIGH | python/mirage/shell/arith.py | 747 | Evaluate a bash arithmetic expression. bash's grammar over 64-bit wrapping integers, read and evaluated in one | STRING |
| HIGH | python/mirage/secrets/env.py | 23 | Read the host process environment as one secret. Args: config (EnvConfig): carries nothing; the process env | STRING |
| HIGH | python/mirage/secrets/aws.py | 83 | Fetch one secret from AWS Secrets Manager. Args: config (AWSSMConfig): auth settings for the aioboto3 sessi | STRING |
| HIGH | python/mirage/secrets/onepassword.py | 37 | Split a 1Password secret reference into vault, item and field. Both of 1Password's own ref shapes are accepted, and | STRING |
| HIGH | python/mirage/secrets/onepassword.py | 168 | Fetch one secret from 1Password. A field reference is one ``resolve`` call and returns that field alone, keyed | STRING |
| HIGH | python/mirage/secrets/sources.py | 286 | A raw mount or CLI config with every pointer read from its source. The same `config_value` a source's own config go | STRING |
| HIGH | python/mirage/secrets/dotenv.py | 26 | Read one dotenv file as one secret. A key declared without a value (a bare ``NAME`` line) parses as None and is | STRING |
| HIGH | python/mirage/workspace/runner.py | 84 | Run ``coro`` on the workspace loop and await the result. Safe to call from any other event loop. The current lo | STRING |
| HIGH | python/mirage/workspace/snapshot/api.py | 64 | Write all of the bytes to the target and count them. A target that takes fewer bytes than offered is written ag | STRING |
| HIGH | python/mirage/workspace/tools/tool_operations.py | 540 | Run one tool by name with its JSON input. The one entry every entry point shares: MCP, the HTTP routes, the CLI | STRING |
| HIGH | python/mirage/workspace/tools/file_version.py | 158 | Read a file the agent is about to rewrite. Args: path (str): Virtual path. Returns: | STRING |
| HIGH | python/mirage/workspace/workspace/workspace.py | 847 | Add a VFS to a running workspace, mirroring TS ``addMount``. The runtime entry point runs the same read-policy | STRING |
| HIGH | python/mirage/workspace/mount/read_policy.py | 22 | Coerce a declared read-policy name into a ReadPolicy. Missing means bounded, everywhere: an absent ``read:`` in YAM | STRING |
| HIGH | python/mirage/workspace/mount/read_policy.py | 61 | Coerce a declared bound to a whole number of seconds. Every loader that reads a bound off a document runs this, so | STRING |
| HIGH | python/mirage/workspace/mount/read_policy.py | 98 | Coerce a declared read policy and bound into a ReadSpec. Coercion only: an unknown name is refused here, but whethe | STRING |
| HIGH | …thon/mirage/workspace/executor/builtins/unset/unset.py | 76 | Clear one array element, or a scalar addressed as ``base[0]``. Clearing an element keeps the indices of the element | STRING |
| HIGH | …on/mirage/workspace/executor/builtins/declare/local.py | 229 | Declare one ``NAME``, ``NAME=value`` or ``NAME+=value`` operand and mark it. A ``-n`` declaration writes the re | STRING |
| HIGH | …on/mirage/workspace/executor/builtins/declare/local.py | 364 | Aim a ``declare -n NAME=VALUE`` (or ``NAME+=VALUE``) reference once the name may take one. The reference is wha | STRING |
| HIGH | …on/mirage/workspace/executor/builtins/declare/local.py | 433 | Start a new bare ``local NAME`` unset, as bash 5.2 does. Only a name the frame did not shadow yet: a second ``local | STRING |
| HIGH | …/mirage/workspace/executor/builtins/declare/declare.py | 378 | Store a declaration's array literals through the session view, the first of bash's two passes over a declaration. | STRING |
| HIGH | …/mirage/workspace/executor/builtins/declare/declare.py | 1127 | Assign and mark one ``export`` / ``readonly`` word. A value of the other array kind is refused and the name is stil | STRING |
| HIGH | python/mirage/workspace/executor/builtins/dirs/dirs.py | 121 | Resolve a combined ``cd`` path, following symlinks per mode. Logical (``-L``, default) simplifies ``..`` textually | STRING |
| HIGH | …irage/workspace/executor/builtins/metadata/metadata.py | 101 | Resolve touch -t/-d into an ISO timestamp. The -t stamp is the POSIX ``[[CC]YY]MMDDhhmm[.ss]`` form; strptime d | STRING |
| HIGH | python/mirage/workspace/session/elements.py | 111 | Assign one element (or a bare name resolved as element 0). The element mechanics are computed on a copy and the lan | STRING |
| HIGH | python/mirage/fuse/backend.py | 31 | Coerce a user-supplied backend name into a MountBackend. Missing means VFS, everywhere: an absent ``backend`` in YA | STRING |
| HIGH | python/mirage/runtime/files.py | 524 | The target of the symlink at `path`. Args: path (str): guest-absolute path of the link. Re | STRING |
| HIGH | python/mirage/runtime/open.py | 46 | Apply an open's effect, before any byte moves. One rule for every open, however it is spelled (a mode string, p | STRING |
| HIGH | python/mirage/runtime/script.py | 71 | Build the engine a config script runs on: the one the config named, and the config always names one. There is n | STRING |
| HIGH | python/mirage/server/multipart.py | 101 | A multipart body's part events, as the body arrives. A part begins once its headers end, before any of its data, an | STRING |
| HIGH | python/mirage/server/daemon_config.py | 80 | Read the ``[daemon]`` table from ``home/config.toml``. Args: home (Path): the ``.mirage`` base directory. T | STRING |
| HIGH | python/mirage/server/registry.py | 272 | Wrap ``workspace`` in a runner and register it. Args: workspace (Workspace): freshly-constructed wo | STRING |
| 68 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | python/tests/vfs/test_read_revalidatable.py | 720 | CODE | |
| LOW | python/tests/vfs/onedrive/test_read_fresh.py | 135 | CODE | |
| LOW | python/tests/vfs/github/test_listing_ttl.py | 539 | CODE | |
| LOW | python/tests/core/nextcloud/conftest.py | 141 | CODE | |
| LOW | python/tests/core/box/test_stat.py | 150 | CODE | |
| LOW | python/tests/core/onedrive/test_stat.py | 196 | CODE | |
| LOW | python/tests/core/google/test_entry.py | 66 | CODE | |
| LOW | python/tests/core/google/test_entry.py | 164 | CODE | |
| LOW | python/tests/core/linear/test_queries.py | 18 | CODE | |
| LOW | python/tests/core/github/test_stat.py | 172 | CODE | |
| LOW | python/tests/core/github/test_readdir.py | 198 | CODE | |
| LOW | python/tests/core/sharepoint/test_stat.py | 244 | CODE | |
| LOW | python/tests/core/dropbox/test_stat.py | 390 | CODE | |
| LOW | python/tests/core/dropbox/test_rename.py | 76 | CODE | |
| LOW | python/tests/core/dropbox/test_rename.py | 107 | CODE | |
| LOW | python/tests/core/dropbox/test_rename.py | 181 | CODE | |
| LOW | python/tests/core/dropbox/test_rmdir.py | 37 | CODE | |
| LOW | python/tests/core/jq/test_parse.py | 699 | CODE | |
| LOW | python/tests/core/hf_hub/test_lookup.py | 113 | CODE | |
| LOW | python/tests/core/gmail/conftest.py | 219 | CODE | |
| LOW | python/tests/cache/index/test_view.py | 58 | CODE | |
| LOW | python/tests/cache/index/test_view.py | 90 | CODE | |
| LOW | python/tests/cache/index/test_warm.py | 199 | CODE | |
| LOW | python/tests/shell/parse/test_assignment.py | 14 | CODE | |
| LOW | python/tests/workspace/test_reconcile.py | 325 | CODE | |
| LOW | python/tests/workspace/test_ungated_attr_writes.py | 65 | CODE | |
| LOW | python/tests/workspace/snapshot/test_state.py | 77 | CODE | |
| LOW | python/tests/workspace/dispatcher/test_dispatcher.py | 604 | CODE | |
| LOW | python/tests/workspace/dispatcher/test_dispatcher.py | 1333 | CODE | |
| LOW | python/tests/workspace/executor/test_redirect.py | 484 | CODE | |
| LOW | python/tests/cli/test_login.py | 71 | CODE | |
| LOW | python/tests/cli/test_login.py | 87 | CODE | |
| LOW | python/tests/commands/test_client_calls_pass_session.py | 21 | CODE | |
| LOW | python/tests/commands/test_client_calls_pass_session.py | 40 | CODE | |
| LOW | python/tests/commands/test_no_object_annotations.py | 68 | CODE | |
| LOW | python/tests/commands/test_no_dead_flag_params.py | 34 | CODE | |
| LOW | python/tests/commands/native/test_cross_mount.py | 71 | CODE | |
| LOW | python/tests/commands/cli/builtin/git/conftest.py | 89 | CODE | |
| LOW | python/tests/commands/builtin/test_multifile_guard.py | 114 | CODE | |
| LOW | python/tests/commands/builtin/test_grep_prefilter.py | 102 | CODE | |
| LOW | python/tests/commands/builtin/general/test_date.py | 78 | CODE | |
| LOW | …ts/commands/builtin/generic/archive/test_zip_update.py | 130 | CODE | |
| LOW | python/tests/e2e/test_cross_mount_matrix.py | 61 | CODE | |
| LOW | python/tests/e2e/test_snapshot_drift_live.py | 101 | CODE | |
| LOW | python/tests/e2e/mounts.py | 82 | CODE | |
| LOW | python/mirage/config.py | 485 | CODE | |
| LOW | python/mirage/vfs/secrets.py | 59 | CODE | |
| LOW | python/mirage/vfs/disk/disk.py | 278 | CODE | |
| LOW | python/mirage/core/nextcloud/search/query.py | 69 | CODE | |
| LOW | python/mirage/core/nextcloud/search/query.py | 98 | CODE | |
| LOW | python/mirage/core/s3/driver.py | 571 | CODE | |
| LOW | python/mirage/core/box/mkdir.py | 42 | CODE | |
| LOW | python/mirage/core/object_store/rename.py | 40 | CODE | |
| LOW | python/mirage/core/object_store/rename.py | 64 | CODE | |
| LOW | python/mirage/core/object_store/find.py | 63 | CODE | |
| LOW | python/mirage/core/object_store/find.py | 70 | CODE | |
| LOW | python/mirage/core/object_store/readdir.py | 177 | CODE | |
| LOW | python/mirage/core/hierarchy/codec.py | 83 | CODE | |
| LOW | python/mirage/core/awk/builtins.py | 395 | CODE | |
| LOW | python/mirage/core/awk/parser.py | 399 | CODE | |
| 435 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | python/tests/vfs/gcal/test_gcal.py | 26 | __all__ = ["gcal_api"] | CODE |
| LOW | python/tests/vfs/airtable/conftest.py | 17 | __all__ = ["airtable_api"] | CODE |
| LOW | python/tests/core/gcal/conftest.py | 21 | __all__ = ["gcal_api"] | CODE |
| LOW | python/tests/core/airtable/conftest.py | 17 | __all__ = ["airtable_api"] | CODE |
| LOW | python/tests/core/hf_buckets/conftest.py | 30 | __all__ = [ | CODE |
| LOW | python/tests/workspace/test_find_unknown_predicate.py | 16 | async def _setup(ws: Workspace) -> None: | CODE |
| LOW⚡ | …/tests/workspace/executor/test_find_action_dispatch.py | 52 | async def _setup_html_files(ws: Workspace) -> None: | CODE |
| LOW | python/tests/commands/cli/builtin/airtable/conftest.py | 28 | __all__ = ["airtable_api", "airtable_ws"] | CODE |
| LOW | python/tests/commands/builtin/airtable/conftest.py | 17 | __all__ = ["airtable_api"] | CODE |
| LOW | python/tests/commands/builtin/github/conftest.py | 21 | __all__ = ["github_config", "mock_github_api"] | CODE |
| LOW | python/tests/e2e/gdrive_mock.py | 173 | def set_modified(self, path: str, stamp: str) -> None: | CODE |
| LOW | python/mirage/__init__.py | 265 | __all__ = [ | CODE |
| LOW | python/mirage/vfs/registry.py | 28 | logger = logging.getLogger(__name__) | CODE |
| LOW | python/mirage/vfs/__init__.py | 34 | __all__ = [ | CODE |
| LOW | python/mirage/vfs/langfuse/__init__.py | 22 | __all__ = ["LangfuseConfig", "LangfuseVFS"] | CODE |
| LOW | python/mirage/vfs/nextcloud/__init__.py | 22 | __all__ = ["NextcloudConfig", "NextcloudVFS"] | CODE |
| LOW | python/mirage/vfs/s3/__init__.py | 22 | __all__ = ["S3Config", "S3VFS"] | CODE |
| LOW | python/mirage/vfs/chroma/__init__.py | 8 | __all__ = ["ChromaConfig", "ChromaVFS"] | CODE |
| LOW | python/mirage/vfs/box/__init__.py | 22 | __all__ = ["BoxConfig", "BoxVFS"] | CODE |
| LOW | python/mirage/vfs/discord/__init__.py | 22 | __all__ = ["DiscordConfig", "DiscordVFS"] | CODE |
| LOW | python/mirage/vfs/aliyun/__init__.py | 18 | __all__ = ["AliyunConfig", "AliyunVFS"] | CODE |
| LOW | python/mirage/vfs/bin/__init__.py | 17 | __all__ = ["BinViewVFS"] | CODE |
| LOW | python/mirage/vfs/redis/store.py | 144 | async def set_file(self, path: str, data: bytes) -> None: | CODE |
| LOW | python/mirage/vfs/redis/store.py | 210 | async def set_modified(self, path: str, ts: str) -> None: | CODE |
| LOW | python/mirage/vfs/redis/store.py | 228 | async def set_attrs(self, path: str, fields: dict[str, str]) -> None: | CODE |
| LOW | python/mirage/vfs/redis/__init__.py | 21 | __all__ = ["RedisVFS", "RedisStore"] | CODE |
| LOW | python/mirage/vfs/hf_models/__init__.py | 22 | __all__ = ["HfModelsConfig", "HfModelsVFS"] | CODE |
| LOW | python/mirage/vfs/ceph/__init__.py | 18 | __all__ = ["CephConfig", "CephVFS"] | CODE |
| LOW | python/mirage/vfs/backblaze/__init__.py | 18 | __all__ = ["BackblazeConfig", "BackblazeVFS"] | CODE |
| LOW | python/mirage/vfs/jaeger/__init__.py | 22 | __all__ = ["JaegerConfig", "JaegerVFS"] | CODE |
| LOW | python/mirage/vfs/onedrive/__init__.py | 18 | __all__ = ["OneDriveVFS", "OneDriveConfig"] | CODE |
| LOW | python/mirage/vfs/hf_spaces/__init__.py | 22 | __all__ = ["HfSpacesConfig", "HfSpacesVFS"] | CODE |
| LOW | python/mirage/vfs/digitalocean/__init__.py | 18 | __all__ = ["DigitalOceanConfig", "DigitalOceanVFS"] | CODE |
| LOW | python/mirage/vfs/linear/__init__.py | 22 | __all__ = ["LinearConfig", "LinearVFS"] | CODE |
| LOW | python/mirage/vfs/gcal/__init__.py | 23 | __all__ = ["GCalConfig", "make_event_filename", "GCalVFS"] | CODE |
| LOW | python/mirage/vfs/wasabi/__init__.py | 18 | __all__ = ["WasabiConfig", "WasabiVFS"] | CODE |
| LOW | python/mirage/vfs/oci/__init__.py | 18 | __all__ = ["OCIConfig", "OCIVFS"] | CODE |
| LOW | python/mirage/vfs/gdrive/__init__.py | 22 | __all__ = ["GoogleDriveConfig", "GoogleDriveVFS"] | CODE |
| LOW | python/mirage/vfs/minio/__init__.py | 18 | __all__ = ["MinIOConfig", "MinIOVFS"] | CODE |
| LOW | python/mirage/vfs/databricks_volume/__init__.py | 24 | __all__ = ["DatabricksVolumeConfig", "DatabricksVolumeVFS"] | CODE |
| LOW | python/mirage/vfs/mongodb/__init__.py | 22 | __all__ = ["MongoDBConfig", "MongoDBVFS"] | CODE |
| LOW | python/mirage/vfs/notion/__init__.py | 22 | __all__ = ["NotionConfig", "NotionVFS"] | CODE |
| LOW | python/mirage/vfs/supabase/__init__.py | 18 | __all__ = ["SupabaseConfig", "SupabaseVFS"] | CODE |
| LOW | python/mirage/vfs/airtable/__init__.py | 22 | __all__ = ["AirtableConfig", "AirtableVFS"] | CODE |
| LOW | python/mirage/vfs/qingstor/__init__.py | 18 | __all__ = ["QingStorConfig", "QingStorVFS"] | CODE |
| LOW | python/mirage/vfs/postgres/__init__.py | 22 | __all__ = ["PostgresConfig", "PostgresVFS"] | CODE |
| LOW | python/mirage/vfs/hf_datasets/__init__.py | 22 | __all__ = ["HfDatasetsConfig", "HfDatasetsVFS"] | CODE |
| LOW | python/mirage/vfs/ssh/__init__.py | 22 | __all__ = ["SSHConfig", "SSHVFS"] | CODE |
| LOW | python/mirage/vfs/github/__init__.py | 19 | __all__ = ["GitHubConfig", "GitHubVFS", "TreeEntry"] | CODE |
| LOW | python/mirage/vfs/gridfs/__init__.py | 22 | __all__ = ["GridFSConfig", "GridFSVFS"] | CODE |
| LOW | python/mirage/vfs/history/__init__.py | 17 | __all__ = ["HISTORY_PREFIX", "HistoryViewVFS"] | CODE |
| LOW | python/mirage/vfs/sharepoint/__init__.py | 4 | __all__ = ["SharePointVFS", "SharePointConfig"] | CODE |
| LOW | python/mirage/vfs/gsheets/__init__.py | 23 | __all__ = ["GSheetsConfig", "SheetEntry", "GSheetsVFS"] | CODE |
| LOW | python/mirage/vfs/scaleway/__init__.py | 18 | __all__ = ["ScalewayConfig", "ScalewayVFS"] | CODE |
| LOW | python/mirage/vfs/qdrant/__init__.py | 22 | __all__ = ["QdrantConfig", "QdrantVFS"] | CODE |
| LOW | python/mirage/vfs/hf_buckets/__init__.py | 22 | __all__ = ["HfBucketsConfig", "HfBucketsVFS"] | CODE |
| LOW | python/mirage/vfs/dropbox/__init__.py | 22 | __all__ = ["DropboxConfig", "DropboxVFS"] | CODE |
| LOW | python/mirage/vfs/disk/__init__.py | 17 | __all__ = ["DiskVFS"] | CODE |
| LOW | python/mirage/vfs/dev/store.py | 69 | def set_input(self, path: str, allocation: int, data: bytes) -> None: | CODE |
| LOW | python/mirage/vfs/dev/__init__.py | 17 | __all__ = ["DevVFS"] | CODE |
| 400 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | python/tests/core/onedrive/test_rename.py | 0 | which invalidation each end of a rename took, in call order. | STRING |
| HIGH | python/tests/core/sharepoint/test_rename.py | 0 | which invalidation each end of a rename took, in call order. | STRING |
| HIGH | python/tests/core/dropbox/test_rename.py | 0 | which invalidation each end of a rename took, in call order. | STRING |
| HIGH | python/tests/core/gsheets/test_readdir.py | 0 | drive reporting a corpus it skipped means the listing is short. caching it would pin the short listing until it expires, | STRING |
| HIGH | python/tests/core/gdocs/test_readdir.py | 0 | drive reporting a corpus it skipped means the listing is short. caching it would pin the short listing until it expires, | STRING |
| HIGH | python/tests/core/gslides/test_readdir.py | 0 | drive reporting a corpus it skipped means the listing is short. caching it would pin the short listing until it expires, | STRING |
| HIGH | python/tests/workspace/test_state_entry_points.py | 0 | ram vfs with no native setattr, standing in for an api backend that has no attribute slot. | STRING |
| HIGH | …/workspace/executor/builtins/metadata/test_metadata.py | 0 | ram vfs with no native setattr, standing in for an api backend that has no attribute slot. | STRING |
| HIGH | …sts/workspace/executor/builtins/metadata/test_chgrp.py | 0 | ram vfs with no native setattr, standing in for an api backend that has no attribute slot. | STRING |
| HIGH | python/tests/workspace/mount/test_mount.py | 0 | yields its bytes once, then waits until it is closed, once. | STRING |
| HIGH | python/tests/workspace/executor/command/test_cli.py | 0 | yields its bytes once, then waits until it is closed, once. | STRING |
| HIGH | …mands/builtin/generic/crossmount/stream/test_stream.py | 0 | yields its bytes once, then waits until it is closed, once. | STRING |
| HIGH | python/tests/workspace/session/test_redis.py | 0 | read-modify-cas one counter, retrying until each round lands. | STRING |
| HIGH | python/tests/workspace/session/test_disk.py | 0 | read-modify-cas one counter, retrying until each round lands. | STRING |
| HIGH | python/tests/workspace/session/test_s3.py | 0 | read-modify-cas one counter, retrying until each round lands. | STRING |
| HIGH | python/tests/runtime/sandbox/ssh/test_sdk.py | 0 | every name comes from the sdk, or every name is none; never a mix. | STRING |
| HIGH | python/tests/runtime/sandbox/daytona/test_sdk.py | 0 | every name comes from the sdk, or every name is none; never a mix. | STRING |
| HIGH | python/tests/runtime/sandbox/e2b/test_sdk.py | 0 | every name comes from the sdk, or every name is none; never a mix. | STRING |
| HIGH | python/tests/runtime/sandbox/ssh/test_sdk.py | 0 | ci installs every extra, so this is the only run of the except arm. | STRING |
| HIGH | python/tests/runtime/sandbox/daytona/test_sdk.py | 0 | ci installs every extra, so this is the only run of the except arm. | STRING |
| HIGH | python/tests/runtime/sandbox/e2b/test_sdk.py | 0 | ci installs every extra, so this is the only run of the except arm. | STRING |
| HIGH | python/tests/commands/cli/builtin/git/test_changes.py | 0 | a repository holding each blob, and their ids in the same order. args: contents (bytes): blob contents to store. | STRING |
| HIGH | python/tests/commands/cli/builtin/git/test_summary.py | 0 | a repository holding each blob, and their ids in the same order. args: contents (bytes): blob contents to store. | STRING |
| HIGH | …hon/tests/commands/cli/builtin/git/test_diff_output.py | 0 | a repository holding each blob, and their ids in the same order. args: contents (bytes): blob contents to store. | STRING |
| HIGH | python/tests/commands/cli/builtin/git/test_rm.py | 0 | run one git line against the mounted repository. args: git_ws (workspace): workspace with the repository and cli. line ( | STRING |
| HIGH | python/tests/commands/cli/builtin/git/test_mv.py | 0 | run one git line against the mounted repository. args: git_ws (workspace): workspace with the repository and cli. line ( | STRING |
| HIGH | python/tests/commands/cli/builtin/git/test_tag.py | 0 | run one git line against the mounted repository. args: git_ws (workspace): workspace with the repository and cli. line ( | STRING |
| HIGH | python/tests/commands/cli/builtin/git/test_restore.py | 0 | run one git line against the mounted repository. args: git_ws (workspace): workspace with the repository and cli. line ( | STRING |
| HIGH | python/tests/commands/cli/builtin/git/test_reset.py | 0 | run one git line against the mounted repository. args: git_ws (workspace): workspace with the repository and cli. line ( | STRING |
| HIGH | python/tests/commands/cli/builtin/git/test_commit.py | 0 | run one git line against the mounted repository. args: git_ws (workspace): workspace with the repository and cli. line ( | STRING |
| HIGH | python/tests/commands/cli/builtin/git/test_branch.py | 0 | run one git line against the mounted repository. args: git_ws (workspace): workspace with the repository and cli. line ( | STRING |
| HIGH | python/tests/commands/cli/builtin/git/test_checkout.py | 0 | run one git line against the mounted repository. args: git_ws (workspace): workspace with the repository and cli. line ( | STRING |
| HIGH | python/tests/commands/cli/builtin/git/test_switch.py | 0 | run one git line against the mounted repository. args: git_ws (workspace): workspace with the repository and cli. line ( | STRING |
| HIGH | python/tests/commands/cli/builtin/git/test_add.py | 0 | run one git line against the mounted repository. args: git_ws (workspace): workspace with the repository and cli. line ( | STRING |
| HIGH | python/tests/commands/cli/builtin/git/test_status.py | 0 | run one git line against the mounted repository. args: git_ws (workspace): workspace with the repository and cli. line ( | STRING |
| HIGH | python/mirage/vfs/box/box.py | 0 | drain the token manager's connection pool with the vfs. | STRING |
| HIGH | python/mirage/vfs/gcal/gcal.py | 0 | drain the token manager's connection pool with the vfs. | STRING |
| HIGH | python/mirage/vfs/gdrive/gdrive.py | 0 | drain the token manager's connection pool with the vfs. | STRING |
| HIGH | python/mirage/vfs/gsheets/gsheets.py | 0 | drain the token manager's connection pool with the vfs. | STRING |
| HIGH | python/mirage/vfs/dropbox/dropbox.py | 0 | drain the token manager's connection pool with the vfs. | STRING |
| HIGH | python/mirage/vfs/gdocs/gdocs.py | 0 | drain the token manager's connection pool with the vfs. | STRING |
| HIGH | python/mirage/vfs/gslides/gslides.py | 0 | drain the token manager's connection pool with the vfs. | STRING |
| HIGH | python/mirage/vfs/gmail/gmail.py | 0 | drain the token manager's connection pool with the vfs. | STRING |
| HIGH | python/mirage/vfs/aliyun/prompt.py | 0 | \ {prefix} remote scaleway object storage bucket (s3-compatible). important: this is a remote mount. prefer targeted rea | STRING |
| HIGH | python/mirage/vfs/ceph/prompt.py | 0 | \ {prefix} remote scaleway object storage bucket (s3-compatible). important: this is a remote mount. prefer targeted rea | STRING |
| HIGH | python/mirage/vfs/backblaze/prompt.py | 0 | \ {prefix} remote scaleway object storage bucket (s3-compatible). important: this is a remote mount. prefer targeted rea | STRING |
| HIGH | python/mirage/vfs/digitalocean/prompt.py | 0 | \ {prefix} remote scaleway object storage bucket (s3-compatible). important: this is a remote mount. prefer targeted rea | STRING |
| HIGH | python/mirage/vfs/wasabi/prompt.py | 0 | \ {prefix} remote scaleway object storage bucket (s3-compatible). important: this is a remote mount. prefer targeted rea | STRING |
| HIGH | python/mirage/vfs/minio/prompt.py | 0 | \ {prefix} remote scaleway object storage bucket (s3-compatible). important: this is a remote mount. prefer targeted rea | STRING |
| HIGH | python/mirage/vfs/qingstor/prompt.py | 0 | \ {prefix} remote scaleway object storage bucket (s3-compatible). important: this is a remote mount. prefer targeted rea | STRING |
| HIGH | python/mirage/vfs/scaleway/prompt.py | 0 | \ {prefix} remote scaleway object storage bucket (s3-compatible). important: this is a remote mount. prefer targeted rea | STRING |
| HIGH | python/mirage/vfs/tencent/prompt.py | 0 | \ {prefix} remote scaleway object storage bucket (s3-compatible). important: this is a remote mount. prefer targeted rea | STRING |
| HIGH | python/mirage/vfs/gsheets/gsheets.py | 0 | render a presentation as the json its ``.gslide.json`` file holds. args: path (pathspec): the file. index (indexcachesto | STRING |
| HIGH | python/mirage/vfs/gdocs/gdocs.py | 0 | render a presentation as the json its ``.gslide.json`` file holds. args: path (pathspec): the file. index (indexcachesto | STRING |
| HIGH | python/mirage/vfs/gslides/gslides.py | 0 | render a presentation as the json its ``.gslide.json`` file holds. args: path (pathspec): the file. index (indexcachesto | STRING |
| HIGH | python/mirage/core/opendal/watch.py | 0 | yield every entry under ``root``. args: root (pathspec): watch root (mount-virtual path). | STRING |
| HIGH | python/mirage/core/s3/watch.py | 0 | yield every entry under ``root``. args: root (pathspec): watch root (mount-virtual path). | STRING |
| HIGH | python/mirage/core/ssh/watch.py | 0 | yield every entry under ``root``. args: root (pathspec): watch root (mount-virtual path). | STRING |
| HIGH | python/mirage/core/gridfs/watch.py | 0 | yield every entry under ``root``. args: root (pathspec): watch root (mount-virtual path). | STRING |
| HIGH | python/mirage/core/dropbox/watch.py | 0 | yield every entry under ``root``. args: root (pathspec): watch root (mount-virtual path). | STRING |
| 24 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | …/packages/core/src/workspace/scripted_profiles.test.ts | 30 | return None | CODE |
| HIGH | …/packages/core/src/workspace/scripted_profiles.test.ts | 44 | return None | CODE |
| HIGH | …/packages/core/src/workspace/scripted_profiles.test.ts | 299 | return None | CODE |
| HIGH | …/packages/core/src/workspace/scripted_profiles.test.ts | 374 | return None | CODE |
| HIGH | …ipt/packages/core/src/workspace/workspace/fill.test.ts | 1866 | return None | CODE |
| HIGH | …ipt/packages/core/src/workspace/workspace/fill.test.ts | 1871 | return None | CODE |
| HIGH | …pt/packages/core/src/workspace/workspace/spawn.test.ts | 111 | print(subprocess.run(['printf', '%s', '$(literal)'], capture_output=True, text=True).stdout)` | CODE |
| HIGH | …pt/packages/core/src/workspace/workspace/spawn.test.ts | 191 | print('ok')` | CODE |
| HIGH | …pt/packages/core/src/workspace/workspace/spawn.test.ts | 267 | print('done')` | CODE |
| HIGH | …pt/packages/core/src/workspace/workspace/spawn.test.ts | 290 | print('denied', error.errno == errno.EAGAIN) | CODE |
| HIGH | …ages/core/src/runtime/python/pyodide/execution.test.ts | 408 | print('main identity works') | CODE |
| HIGH | …ages/core/src/runtime/python/pyodide/execution.test.ts | 551 | print(sys.flags.optimize, __debug__, sys.flags.safe_path, '' in sys.path) | CODE |
| HIGH | …ages/core/src/runtime/python/pyodide/execution.test.ts | 599 | print(optimize_helper.debug)`, | CODE |
| HIGH | …ages/core/src/runtime/python/pyodide/jsglobals.test.ts | 33 | print(",".join(flags)) | CODE |
| HIGH | typescript/packages/core/src/policy/script.test.ts | 69 | return None | CODE |
| HIGH | typescript/packages/core/src/policy/script.test.ts | 462 | return None | CODE |
| HIGH | integ/hosting/mounts.ts | 28 | print(identity + ':' + argv[1] + ':ram,s3,redis,slack') | CODE |
| HIGH | integ/wandb/schema.ts | 120 | print(parse(pyQueries[name]!)), | CODE |
| HIGH | integ/wandb/schema.ts | 121 | print(parse(query)), | CODE |
| HIGH | examples/typescript/s3/s3_write.ts | 198 | print(res.stdout) | CODE |
| HIGH | examples/typescript/redis/redis.ts | 30 | print(res.stdout) | CODE |
| HIGH⚡ | examples/typescript/redis/redis.ts | 82 | print(cpOut.stdout) | CODE |
| HIGH⚡ | examples/typescript/redis/redis.ts | 87 | print(mvOut.stdout) | CODE |
| HIGH⚡ | examples/typescript/redis/redis.ts | 92 | print(rmOut.stdout) | CODE |
| HIGH⚡ | examples/typescript/redis/redis.ts | 101 | print(uniqOut.stdout) | CODE |
| HIGH | examples/typescript/permissions/policy.ts | 61 | return None | CODE |
| HIGH | examples/typescript/permissions/policy.ts | 67 | return None | CODE |
| HIGH⚡ | examples/typescript/pyodide/ram.ts | 32 | print(f'hello, {name}!') | CODE |
| HIGH⚡ | examples/typescript/pyodide/ram.ts | 33 | print(f'args: {sys.argv[1:]}') | CODE |
| HIGH⚡ | examples/typescript/pyodide/ram.ts | 34 | print(f'sum(1..10): {sum(range(1, 11))}') | CODE |
| HIGH | examples/typescript/pyodide/ram.ts | 74 | print(f'{user}: {n}') | CODE |
| HIGH | examples/typescript/pyodide/ram.ts | 87 | print('script was replaced!') | CODE |
| HIGH⚡ | examples/typescript/pyodide/script.ts | 28 | print(f"count: {len(records)}") | CODE |
| HIGH⚡ | examples/typescript/pyodide/script.ts | 29 | print(f"keys: {sorted({k for r in records for k in r})}") | CODE |
| HIGH⚡ | examples/typescript/pyodide/script.ts | 31 | print(f" - {json.dumps(r)}") | CODE |
| HIGH | examples/typescript/pyodide/vfs.ts | 85 | print('read:', f.read()) | CODE |
| HIGH | examples/typescript/pyodide/vfs.ts | 88 | print('wrote /ram/out.txt') | CODE |
| HIGH | examples/typescript/pyodide/vfs.ts | 101 | print('listdir:', os.listdir('/ram/synth/today')) | CODE |
| HIGH | examples/typescript/pyodide/vfs.ts | 102 | print('read:', open('/ram/synth/today/note.md').read()) | CODE |
| HIGH | examples/typescript/pyodide/vfs.ts | 116 | print('team:', team.get('name'), team.get('id')) | CODE |
| HIGH | examples/typescript/pyodide/vfs.ts | 129 | print('doc:', data.get('title') or list(data.keys())[:5]) | CODE |
| HIGH | examples/typescript/pyodide/vfs.ts | 140 | print('entries:', entries) | CODE |
| HIGH | examples/typescript/pyodide/vfs.ts | 146 | print(f'{p}:', data[:60]) | CODE |
| HIGH | examples/typescript/pyodide/vfs.ts | 160 | print('saved /ram/icon.png') | CODE |
| HIGH | examples/typescript/pyodide/vfs.ts | 181 | print(f'wrote {len(out)} teams to /ram/summary.json') | CODE |
| HIGH | examples/typescript/pyodide/basic.ts | 26 | print(res.stdout) | CODE |
| HIGH | examples/typescript/pyodide/basic.ts | 56 | print(stdinRes.stdout) | CODE |
| HIGH | examples/typescript/ram/ram.ts | 29 | print(res.stdout) | CODE |
| HIGH⚡ | examples/typescript/ram/ram.ts | 62 | print(cpOut.stdout) | CODE |
| HIGH⚡ | examples/typescript/ram/ram.ts | 67 | print(mvOut.stdout) | CODE |
| HIGH⚡ | examples/typescript/ram/ram.ts | 72 | print(rmOut.stdout) | CODE |
| HIGH⚡ | examples/typescript/ram/ram.ts | 81 | print(uniqOut.stdout) | CODE |
| HIGH | examples/typescript/ram/ram.ts | 105 | print(mvMeta.stdout) | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | python/tests/core/awk/test_interp.py | 77 | except ExitProgram: | CODE |
| HIGH | python/tests/utils/test_abort.py | 149 | except asyncio.CancelledError: | CODE |
| HIGH | python/tests/commands/native/conftest.py | 323 | except (FileExistsError, ValueError): | CODE |
| HIGH | python/tests/commands/native/test_cross_mount.py | 82 | except (FileExistsError, ValueError): | CODE |
| HIGH | python/tests/e2e/conftest.py | 252 | except (FileExistsError, ValueError): | CODE |
| HIGH | python/tests/e2e/test_snapshot_drift_live.py | 123 | except Exception: | CODE |
| HIGH | python/mirage/core/awk/interp.py | 1156 | except ContinueLoop: | CODE |
| HIGH | python/mirage/core/awk/interp.py | 1169 | except ContinueLoop: | CODE |
| HIGH | python/mirage/core/jq/parse.py | 152 | except UnicodeDecodeError: | CODE |
| HIGH | python/mirage/core/email/client.py | 371 | except (ValueError, IndexError): | CODE |
| HIGH | python/mirage/core/email/client.py | 212 | except (ValueError, IndexError): | CODE |
| HIGH | python/mirage/workspace/documentation/documents.py | 171 | except FileNotFoundError: | CODE |
| HIGH | python/mirage/workspace/record/disk.py | 71 | except FileNotFoundError: | CODE |
| HIGH | python/mirage/workspace/record/disk.py | 213 | except FileNotFoundError: | CODE |
| HIGH | python/mirage/workspace/workspace/explainer.py | 429 | except Explained: | CODE |
| HIGH | python/mirage/workspace/executor/builtins/links/ln.py | 685 | except CycleError: | CODE |
| HIGH | python/mirage/workspace/executor/builtins/links/ln.py | 802 | except (FileNotFoundError, NotADirectoryError): | CODE |
| HIGH | python/mirage/runtime/python/host/fs.py | 1032 | except OSError: | CODE |
| HIGH | python/mirage/agents/langchain/backend.py | 233 | except (FileNotFoundError, NotADirectoryError, ValueError): | CODE |
| HIGH | python/mirage/agents/langchain/backend.py | 239 | except (FileExistsError, ValueError): | CODE |
| HIGH | python/mirage/agents/langchain/backend.py | 369 | except (FileExistsError, ValueError): | CODE |
| HIGH | python/mirage/cli/daemon.py | 146 | except ProcessLookupError: | CODE |
| HIGH | python/mirage/cli/daemon.py | 174 | except httpx.RequestError: | CODE |
| HIGH | python/mirage/cli/daemon.py | 188 | except ProcessLookupError: | CODE |
| HIGH | python/mirage/commands/cli/builtin/hf/download.py | 254 | except MISS_ERRORS: | CODE |
| HIGH | python/mirage/commands/builtin/generic/patch.py | 664 | except FileNotFoundError: | CODE |
| HIGH | python/mirage/commands/builtin/generic/tee.py | 92 | except FileNotFoundError: | CODE |
| HIGH | python/mirage/commands/builtin/generic/cp.py | 672 | except (FileNotFoundError, ValueError): | CODE |
| HIGH | python/mirage/commands/builtin/generic/cp.py | 734 | except (FileNotFoundError, ValueError): | CODE |
| HIGH | …ckages/core/src/runtime/python/pyodide/py/execution.py | 352 | except BrokenPipeError: | CODE |
| HIGH | integ/access/adapters.py | 1670 | except httpx.TimeoutException: | CODE |
| HIGH | integ/access/adapters.py | 2010 | except TimeoutError: | CODE |
| HIGH | integ/watch/run.py | 368 | except (asyncio.CancelledError, StopAsyncIteration): | CODE |
| HIGH | integ/wandb/sdk.py | 106 | except (ValueError, wandb.errors.CommError): | CODE |
| HIGH | examples/python/s3/s3_fuse.py | 95 | except EOFError: | CODE |
| HIGH | examples/python/s3/s3.py | 712 | except Exception: | CODE |
| HIGH | examples/python/hf_models/hf_models_fuse.py | 55 | except EOFError: | CODE |
| HIGH | examples/python/hf_spaces/hf_spaces_fuse.py | 58 | except EOFError: | CODE |
| HIGH | examples/python/cross/cross_fuse.py | 169 | except EOFError: | CODE |
| HIGH | examples/python/hf_datasets/hf_datasets_fuse.py | 59 | except EOFError: | CODE |
| HIGH | examples/python/hf_buckets/hf_buckets_fuse.py | 76 | except EOFError: | CODE |
| HIGH | examples/python/seaweedfs/seaweedfs_fuse.py | 91 | except EOFError: | CODE |
| HIGH | scripts/check_cli_cold_start.py | 389 | except UnresolvedImport: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | python/tests/workspace/test_path_axis.py | 330 | except Exception as exc: | CODE |
| LOW | python/tests/runtime/wasm/test_slab.py | 49 | except Exception as exc: | CODE |
| LOW | python/tests/e2e/test_snapshot_drift_live.py | 84 | except Exception: | CODE |
| LOW | python/tests/e2e/test_snapshot_drift_live.py | 123 | except Exception: | CODE |
| MEDIUM | python/tests/e2e/test_snapshot_drift_live.py | 81 | def _versioning_enabled() -> bool: | CODE |
| LOW | python/mirage/core/s3/stream.py | 66 | except Exception as exc: | CODE |
| LOW | python/mirage/core/s3/driver.py | 156 | except Exception as exc: | CODE |
| LOW | python/mirage/core/s3/driver.py | 240 | except Exception as exc: | CODE |
| LOW | python/mirage/core/s3/driver.py | 282 | except Exception as exc: | CODE |
| LOW | python/mirage/core/s3/driver.py | 300 | except Exception as exc: | CODE |
| LOW | python/mirage/core/s3/driver.py | 306 | except Exception: | CODE |
| LOW | python/mirage/core/s3/driver.py | 359 | except Exception: | CODE |
| LOW | python/mirage/core/s3/driver.py | 399 | except Exception as exc: | CODE |
| LOW | python/mirage/core/s3/driver.py | 566 | except Exception as exc: | CODE |
| LOW | python/mirage/core/s3/driver.py | 596 | except Exception as exc: | CODE |
| LOW | python/mirage/core/s3/driver.py | 628 | except Exception as exc: | CODE |
| LOW | python/mirage/core/s3/driver.py | 672 | except Exception as exc: | CODE |
| LOW | python/mirage/core/s3/read.py | 105 | except Exception as exc: | CODE |
| LOW | python/mirage/core/chroma/tree.py | 32 | except Exception as exc: | CODE |
| LOW | python/mirage/core/object_store/write.py | 90 | except Exception as exc: | CODE |
| LOW | python/mirage/core/gdrive/resolve.py | 193 | except Exception: | CODE |
| LOW | python/mirage/core/gdrive/readdir.py | 155 | except Exception: | CODE |
| LOW⚡ | python/mirage/core/databricks_volume/write.py | 40 | except Exception as exc: | CODE |
| LOW⚡ | python/mirage/core/databricks_volume/write.py | 46 | except Exception as exc: | CODE |
| LOW | python/mirage/core/databricks_volume/write.py | 88 | except Exception as exc: | CODE |
| LOW | python/mirage/core/databricks_volume/rmdir.py | 55 | except Exception as exc: | CODE |
| LOW | python/mirage/core/databricks_volume/rmdir.py | 63 | except Exception as exc: | CODE |
| LOW | python/mirage/core/databricks_volume/rm.py | 88 | except Exception as exc: | CODE |
| LOW | python/mirage/core/databricks_volume/stream.py | 69 | except Exception as exc: | CODE |
| LOW | python/mirage/core/databricks_volume/mkdir.py | 55 | except Exception as exc: | CODE |
| LOW | python/mirage/core/databricks_volume/stat.py | 63 | except Exception as exc: | CODE |
| LOW | python/mirage/core/databricks_volume/stat.py | 105 | except Exception as exc: | CODE |
| LOW | python/mirage/core/databricks_volume/unlink.py | 47 | except Exception as exc: | CODE |
| LOW | python/mirage/core/databricks_volume/readdir.py | 47 | except Exception as exc: | CODE |
| LOW | python/mirage/core/databricks_volume/readdir.py | 81 | except Exception as exc: | CODE |
| LOW | python/mirage/core/databricks_volume/read.py | 99 | except Exception as exc: | CODE |
| LOW | python/mirage/core/github/search.py | 148 | except Exception as exc: | CODE |
| LOW | python/mirage/core/generic/find.py | 294 | except Exception as exc: | CODE |
| LOW | python/mirage/cache/context.py | 185 | except Exception as exc: | CODE |
| LOW | python/mirage/cache/manager.py | 520 | except Exception: | CODE |
| LOW | python/mirage/cache/manager.py | 702 | except Exception: | CODE |
| LOW | python/mirage/cache/file/io.py | 131 | except Exception: | CODE |
| LOW | python/mirage/cache/file/io.py | 135 | except Exception: | CODE |
| LOW | python/mirage/cache/file/io.py | 193 | except Exception: | CODE |
| LOW | python/mirage/shell/job_table/table.py | 108 | except Exception as exc: | CODE |
| LOW | python/mirage/shell/job_table/table.py | 276 | except Exception: | CODE |
| LOW | python/mirage/accessor/pool.py | 166 | except Exception as exc: | CODE |
| LOW | python/mirage/accessor/pool.py | 196 | except Exception as exc: | CODE |
| LOW | python/mirage/secrets/sources.py | 70 | except Exception as exc: | CODE |
| LOW | python/mirage/secrets/sources.py | 154 | except Exception as exc: | CODE |
| LOW | python/mirage/workspace/runner.py | 129 | except Exception: | CODE |
| LOW | python/mirage/workspace/runner.py | 161 | except Exception as exc: | CODE |
| LOW | python/mirage/workspace/shell_execution.py | 185 | except Exception: | CODE |
| LOW | python/mirage/workspace/reconcile.py | 181 | except Exception as exc: | CODE |
| LOW | python/mirage/workspace/reconcile.py | 296 | except Exception as exc: | CODE |
| LOW | python/mirage/workspace/reconcile.py | 344 | except Exception as exc: | CODE |
| LOW | python/mirage/workspace/record/s3.py | 68 | except Exception as exc: | CODE |
| LOW | python/mirage/workspace/record/s3.py | 108 | except Exception as exc: | CODE |
| LOW | python/mirage/workspace/workspace/fill.py | 757 | except Exception as exc: | CODE |
| LOW | python/mirage/workspace/workspace/kernel_mounts.py | 77 | except Exception: | CODE |
| 103 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …/tests/vfs/databricks_volume/test_databricks_volume.py | 175 | CODE | |
| LOW | python/tests/core/gdrive/conftest.py | 96 | CODE | |
| LOW | python/tests/core/databricks_volume/conftest.py | 164 | CODE | |
| LOW | python/tests/e2e/gdrive_mock.py | 386 | CODE | |
| LOW | python/mirage/vfs/base.py | 192 | CODE | |
| LOW | python/mirage/core/nextcloud/find.py | 342 | CODE | |
| LOW | python/mirage/core/object_store/find.py | 41 | CODE | |
| LOW | python/mirage/core/object_store/find.py | 70 | CODE | |
| LOW | python/mirage/core/redis/find.py | 31 | CODE | |
| LOW | python/mirage/core/onedrive/find.py | 34 | CODE | |
| LOW | python/mirage/core/google/drive.py | 73 | CODE | |
| LOW | python/mirage/core/gdrive/find.py | 31 | CODE | |
| LOW | python/mirage/core/notion/find.py | 26 | CODE | |
| LOW | python/mirage/core/msgraph/client.py | 156 | CODE | |
| LOW | python/mirage/core/msgraph/drive.py | 616 | CODE | |
| LOW | python/mirage/core/ssh/find.py | 34 | CODE | |
| LOW | python/mirage/core/github/find.py | 29 | CODE | |
| LOW | python/mirage/core/history/find.py | 28 | CODE | |
| LOW | python/mirage/core/sharepoint/find.py | 194 | CODE | |
| LOW | python/mirage/core/api/client.py | 448 | CODE | |
| LOW | python/mirage/core/disk/find.py | 51 | CODE | |
| LOW | python/mirage/core/disk/find.py | 192 | CODE | |
| LOW | python/mirage/core/generic/find.py | 188 | CODE | |
| LOW | python/mirage/core/email/search.py | 119 | CODE | |
| LOW | python/mirage/core/ram/find.py | 31 | CODE | |
| LOW | python/mirage/workspace/workspace/workspace.py | 239 | CODE | |
| LOW | python/mirage/workspace/workspace/workspace.py | 2311 | CODE | |
| LOW | python/mirage/workspace/workspace/workspace.py | 2333 | CODE | |
| LOW | python/mirage/workspace/workspace/workspace.py | 2355 | CODE | |
| LOW | python/mirage/workspace/workspace/workspace.py | 2376 | CODE | |
| LOW | python/mirage/workspace/workspace/workspace.py | 2529 | CODE | |
| LOW | python/mirage/workspace/workspace/workspace.py | 2701 | CODE | |
| LOW | python/mirage/workspace/workspace/workspace.py | 2730 | CODE | |
| LOW | …thon/mirage/workspace/executor/find_action_dispatch.py | 453 | CODE | |
| LOW | python/mirage/workspace/executor/redirect.py | 281 | CODE | |
| LOW | python/mirage/workspace/executor/pipes.py | 402 | CODE | |
| LOW | python/mirage/workspace/executor/command/command.py | 208 | CODE | |
| LOW | python/mirage/workspace/node/execute_node.py | 1007 | CODE | |
| LOW | python/mirage/workspace/node/execute_node.py | 1191 | CODE | |
| LOW | python/mirage/workspace/node/explain.py | 360 | CODE | |
| LOW | python/mirage/workspace/node/command_dispatch.py | 512 | CODE | |
| LOW | python/mirage/io/types.py | 206 | CODE | |
| LOW | python/mirage/server/app.py | 166 | CODE | |
| LOW | python/mirage/cli/tools.py | 143 | CODE | |
| LOW | python/mirage/cli/shell.py | 36 | CODE | |
| LOW | python/mirage/commands/spec/types.py | 141 | CODE | |
| LOW | python/mirage/commands/builtin/generic/gunzip.py | 15 | CODE | |
| LOW | python/mirage/commands/builtin/generic/tree.py | 245 | CODE | |
| LOW | python/mirage/commands/builtin/generic/gzip.py | 53 | CODE | |
| LOW | python/mirage/commands/builtin/generic/fmt.py | 434 | CODE | |
| LOW | python/mirage/commands/builtin/generic/csplit.py | 123 | CODE | |
| LOW | python/mirage/commands/builtin/generic/checksum.py | 432 | CODE | |
| LOW | python/mirage/commands/builtin/generic/decompress.py | 279 | CODE | |
| LOW | python/mirage/commands/builtin/generic/comm.py | 78 | CODE | |
| LOW | python/mirage/commands/builtin/generic/mktemp.py | 110 | CODE | |
| LOW | python/mirage/commands/builtin/generic/shuf.py | 421 | CODE | |
| LOW | python/mirage/commands/builtin/generic/sed.py | 219 | CODE | |
| LOW | python/mirage/commands/builtin/generic/unzip.py | 518 | CODE | |
| LOW | python/mirage/commands/builtin/generic/sort.py | 347 | CODE | |
| LOW | python/mirage/commands/builtin/generic/ls.py | 1185 | CODE | |
| 14 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | python/tests/vfs/test_listing_version.py | 208 | # A declarer gets a harness proving that its check and its fill agree, so | COMMENT |
| MEDIUM⚡ | python/tests/vfs/test_read_revalidatable.py | 1189 | # The write rows run each family's own harness through _fake, so a | COMMENT |
| MEDIUM⚡ | python/tests/vfs/test_read_revalidatable.py | 1190 | # writable family is covered exactly when it has a harness; the | COMMENT |
| MEDIUM | python/tests/vfs/test_read_revalidatable.py | 256 | # places it. The index is the mount's, so a harness built before the | COMMENT |
| MEDIUM⚡ | python/tests/workspace/test_execute_options.py | 262 | # ── agent harness pattern ───────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | python/tests/commands/cli/builtin/ntn/test_api.py | 231 | # The conformance harness closes stdin and every other line would | COMMENT |
| MEDIUM | python/tests/commands/cli/builtin/ntn/test_serde.py | 25 | # harness. | COMMENT |
| MEDIUM | python/tests/commands/builtin/test_expand_unexpand.py | 176 | # differential harness ran 1548 more combinations of these lists against | COMMENT |
| LOW⚡ | python/tests/commands/builtin/test_bc.py | 1361 | # then the 16 in the base it just set. | COMMENT |
| MEDIUM | python/mirage/runtime/js/quickjs/runtime.py | 54 | # The one-shot eval harness: inputs bind as globals, the source runs | COMMENT |
| MEDIUM | integ/metadata.py | 18 | # scenarios the declarative harness cannot express: it can run commands and | COMMENT |
| MEDIUM | integ/metadata.py | 21 | # and namespace support in the harness, not another case file. | COMMENT |
| MEDIUM | examples/python/runtimes/docker/docker_eval.py | 27 | # harness to its stock `python3 -`: the value comes back as JSON | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | python/tests/core/google/test_drive.py | 44 | mgr._access_token = "fake-token" | CODE |
| LOW | python/tests/core/gdrive/conftest.py | 261 | manager._access_token = "fake-token" | CODE |
| LOW | python/tests/core/gdrive/conftest.py | 274 | manager._access_token = "fake-token" | CODE |
| LOW | python/tests/core/gdrive/test_stat.py | 41 | mgr._access_token = "fake-token" | CODE |
| LOW | python/tests/core/gdrive/test_read.py | 59 | mgr._access_token = "fake-token" | CODE |
| LOW | python/tests/core/gdrive/test_readdir.py | 44 | mgr._access_token = "fake-token" | CODE |
| LOW | python/tests/core/gdocs/test_write.py | 32 | mgr._access_token = "fake-token" | CODE |
| LOW | python/tests/core/gdocs/test_read.py | 40 | mgr._access_token = "fake-token" | CODE |
| LOW | python/tests/core/gmail/test_send.py | 33 | mgr._access_token = "fake-token" | CODE |
| LOW | python/tests/core/gmail/test_labels.py | 32 | mgr._access_token = "fake-token" | CODE |
| LOW | python/tests/core/gmail/test_messages.py | 40 | mgr._access_token = "fake-token" | CODE |
| LOW | python/mirage/core/slack/search.py | 249 | "placeholder", | CODE |
| LOW | typescript/packages/core/src/core/slack/search.ts | 235 | 'placeholder', | CODE |
| LOW | …ipt/packages/core/src/workspace/workspace/fill.test.ts | 195 | registerSecrets('fake-key', FakeConfig, fetch) | CODE |
| LOW | …ipt/packages/core/src/workspace/workspace/fill.test.ts | 196 | const ws = await makeWs({ API: { from: 'fake-key', ref: 'r' } }) | CODE |
| LOW | typescript/packages/browser/src/test-utils.ts | 481 | const token = options.token ?? 'fake-token' | CODE |
| LOW | …/packages/node/src/runtime/sandbox/ssh/runtime.test.ts | 138 | await writeFile(keyPath, 'fake-key') | CODE |
| LOW | …/packages/node/src/runtime/sandbox/ssh/runtime.test.ts | 147 | privateKey: Buffer.from('fake-key'), | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | python/tests/core/hf_hub/test_stream.py | 131 | CODE | |
| MEDIUM | python/tests/commands/builtin/utils/test_operands.py | 120 | CODE | |
| MEDIUM | python/tests/commands/builtin/generic/test_rg.py | 237 | CODE | |
| MEDIUM | python/tests/commands/builtin/generic/test_cut.py | 43 | CODE | |
| MEDIUM | python/tests/commands/builtin/generic/test_checksum.py | 122 | CODE | |
| MEDIUM | python/mirage/shell/descriptors.py | 78 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | python/tests/vfs/test_call.py | 89 | async def helper(self, path: PathSpec) -> None: | CODE |
| LOW⚡ | python/tests/commands/cli/builtin/git/test_combined.py | 83 | lines[4] = "function handleRequest(request, response) {\n" | CODE |
| LOW⚡ | python/tests/commands/cli/builtin/git/test_combined.py | 88 | "@@@ -12,7 -12,7 +12,7 @@@ function handleRequest(request, respons\n" | CODE |
| LOW | python/tests/e2e/test_find_pipe_while.py | 23 | "src/utils/helpers.py": b"def helper(): pass\n", | CODE |
| LOW | typescript/packages/core/src/core/langfuse/client.ts | 120 | function getData(body: unknown): Record<string, unknown>[] { | CODE |
| LOW | …core/src/workspace/integration_find_pipe_while.test.ts | 22 | 'src/utils/helpers.py': 'def helper(): pass\n', | CODE |
| LOW | …ges/core/src/commands/cli/builtin/git/combined.test.ts | 82 | lines[4] = 'function handleRequest(request, response) {\n' | CODE |
| LOW | …ges/core/src/commands/cli/builtin/git/combined.test.ts | 90 | '@@@ -12,7 -12,7 +12,7 @@@ function handleRequest(request, respons\n', | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | examples/python/runtimes/daytona/create_sandbox.py | 15 | # Create a sandbox from the mirage-fuse snapshot, provision the | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | .github/workflows/test_integ.yml | 68 | # and runtime; workspace/abort owns only line orchestration. | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | typescript/scripts/load-env.sh | 7 | # Usage: | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | examples/python/s3/s3.py | 185 | # Read file to populate cache (cat declares cache, wc materializes) | COMMENT |