The World's First Unified Virtual Filesystem For AI Agents
This report presents the forensic synthetic code analysis of strukto-ai/mirage, a TypeScript project with 3,579 GitHub stars. SynthScan v2.0 examined 1,115,454 lines of code across 8710 source files, recording 20811 pattern matches distributed across 20 syntactic categories. The overall adjusted score of 24.0 places this repository in the Moderate AI signal band.
The scanner applied 160+ deterministic lexical heuristics, multi-line block detectors, abstract syntax tree depth profilers, and a cross-file Jaccard similarity matrix to construct a statistically normalised synthetic code estimate. All matches are individually weighted by severity coefficient and contextual multiplier before summation, and the resulting headline score is temporally discounted to account for the repository's development history relative to the commercial emergence of large language model coding tooling (November 2022 onward).
This chart maps the temporal evolution of the adjusted synthetic code score across successive scan runs. An upward trajectory indicates ongoing incorporation of AI-generated code or expanding LLM-assisted scaffolding; a stable or declining trajectory may reflect active human refactoring, code removal, or the adoption of stricter authorship policies. The dashed secondary line (right axis) independently tracks total raw pattern hit count, which can diverge from the normalised score when codebase size changes significantly between scans.
Classifies detected patterns by their diagnostic confidence and structural impact. CRITICAL patterns (coefficient 10) represent definitive synthetic signatures — hallucinated imports, explicit LLM attribution metadata — virtually never produced by human authors. HIGH (5) indicates strong structural tells such as cross-file repetition or cross-linguistic idioms. MEDIUM (2) covers recognisable conversational padding and AI-specific vocabulary. LOW (1) captures subtle indicators like tautological comments and generic boilerplate that require density to carry independent signal.
This horizontal bar chart decomposes the repository's raw synthetic code score by top-level directory, allowing you to pinpoint precisely which modules or components carry the highest AI authorship density. Directories with disproportionately high scores relative to their size warrant targeted manual review: concentrated AI signatures often trace back to mass-generated configuration layers, auto-ported test suites, LLM-scaffolded boilerplate classes, or entire subsystems authored under heavy copilot assistance. Use this view to prioritise your human code-review effort.
The scanner identified 20811 distinct pattern matches across 20 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a statistically significant AI authorship indicator. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.
Reading the findings table: The Severity column indicates the diagnostic confidence level (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — comment-context matches receive a ×1.5 weight because LLMs systematically over-annotate. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier as dense clusters constitute far stronger evidence of synthetic authorship than isolated hits.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | python/tests/test_types_fingerprint.py | 18 | def test_file_stat_has_fingerprint_field(): | CODE |
| LOW | python/tests/test_types_fingerprint.py | 26 | def test_file_stat_fingerprint_defaults_none(): | CODE |
| LOW | python/tests/test_lua_parity.py | 27 | def test_every_lua_script_exists_in_both_languages(): | CODE |
| LOW | python/tests/test_lua_parity.py | 39 | def test_lua_basenames_are_unique_within_each_tree(): | CODE |
| LOW | python/tests/test_lua_parity.py | 51 | 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_sdk.py | 23 | def test_blessed_surface_is_stable(): | CODE |
| LOW | python/tests/test_tests_mirror_sources.py | 81 | def test_tests_declare_no_packages(): | CODE |
| LOW | python/tests/test_tests_mirror_sources.py | 96 | def test_every_test_directory_mirrors_a_source_package(): | CODE |
| LOW | python/tests/test_tests_mirror_sources.py | 108 | def test_no_stale_directory_exemption(): | CODE |
| LOW | python/tests/test_tests_mirror_sources.py | 120 | def test_module_mirror_coverage_holds_the_baseline(): | CODE |
| LOW | python/tests/test_dry_run_types.py | 62 | def test_dry_run_result_serialization(): | CODE |
| LOW | python/tests/test_nested_functions_are_closures.py | 84 | def test_nested_functions_capture_enclosing_state(): | CODE |
| LOW⚡ | python/tests/test_path_prefix_boundary.py | 57 | def test_mount_prefix_round_trips(mount, child): | CODE |
| LOW⚡ | python/tests/test_path_prefix_boundary.py | 65 | def test_a_child_is_under_its_mount(mount, child): | CODE |
| LOW⚡ | python/tests/test_path_prefix_boundary.py | 71 | def test_a_lookalike_sibling_is_not_under_the_mount(mount, child): | CODE |
| LOW⚡ | python/tests/test_path_prefix_boundary.py | 79 | def test_event_helpers_lift_onto_the_mount(mount, child): | CODE |
| LOW | python/tests/test_path_prefix_boundary.py | 106 | def test_evictions_that_drop_a_listing_reach_the_real_key(mount, child, kind): | CODE |
| LOW | python/tests/test_path_prefix_boundary.py | 124 | def test_a_write_drops_the_parent_listing_at_the_real_key(mount, child): | CODE |
| LOW | python/tests/test_path_prefix_boundary.py | 139 | def test_a_subtree_eviction_reaches_nested_listings(mount, child): | CODE |
| LOW | python/tests/test_path_prefix_boundary.py | 151 | def test_the_watcher_frames_a_lookalike_child_correctly(mount, child): | CODE |
| LOW⚡ | python/tests/test_types.py | 35 | def test_aggr_none_inputs_is_none(): | CODE |
| LOW⚡ | python/tests/test_types.py | 40 | def test_aggr_keeps_single_limit(): | CODE |
| LOW⚡ | python/tests/test_types.py | 47 | def test_aggr_takes_smallest_positive_timeout(): | CODE |
| LOW⚡ | python/tests/test_types.py | 55 | def test_aggr_nonpositive_timeout_is_unbounded(): | CODE |
| LOW⚡ | python/tests/test_types.py | 62 | def test_aggr_takes_smallest_caps(): | CODE |
| LOW⚡ | python/tests/test_types.py | 70 | def test_aggr_error_beats_truncate(): | CODE |
| LOW⚡ | python/tests/test_types.py | 77 | def test_aggr_all_truncate_stays_truncate(): | CODE |
| LOW⚡ | python/tests/test_types.py | 84 | def test_every_field_declares_an_aggr_rule(): | CODE |
| LOW⚡ | python/tests/test_types.py | 91 | def test_pathspec_requires_resource_path(): | CODE |
| LOW⚡ | python/tests/test_types.py | 96 | def test_pathspec_raw_path_kept_when_given(): | CODE |
| LOW⚡ | python/tests/test_types.py | 104 | def test_pathspec_raw_path_defaults_to_virtual(): | CODE |
| LOW⚡ | python/tests/test_types.py | 111 | def test_word_text_passes_strings_through(): | CODE |
| LOW⚡ | python/tests/test_types.py | 115 | def test_word_text_renders_paths_as_typed(): | CODE |
| LOW⚡ | python/tests/test_types.py | 123 | def test_pathspec_dir_trims_resource_path(): | CODE |
| LOW⚡ | python/tests/test_types.py | 134 | def test_pathspec_dir_at_mount_root(): | CODE |
| LOW⚡ | python/tests/test_types.py | 141 | def test_pathspec_from_str_path_defaults_to_root_mounted(): | CODE |
| LOW⚡ | python/tests/test_types.py | 147 | def test_pathspec_from_str_path_explicit_resource_path(): | CODE |
| LOW⚡ | python/tests/test_types.py | 152 | def test_parse_mount_mode_words_and_aliases(): | CODE |
| LOW⚡ | python/tests/test_types.py | 160 | def test_parse_mount_mode_rejects_bit_style_forms(): | CODE |
| LOW⚡ | python/tests/provision/test_provision_types.py | 18 | def test_plan_result_defaults(): | CODE |
| LOW⚡ | python/tests/provision/test_provision_types.py | 25 | def test_plan_result_network_read_range(): | CODE |
| LOW⚡ | python/tests/provision/test_provision_types.py | 30 | def test_plan_result_network_read_exact(): | CODE |
| LOW | python/tests/provision/test_provision_types.py | 41 | def test_scaled_multiplies_cost(): | CODE |
| LOW⚡ | python/tests/provision/test_rollup.py | 35 | def test_rollup_pipe_unknown_cascades(): | CODE |
| LOW⚡ | python/tests/provision/test_rollup.py | 45 | def test_rollup_list_and_sums(): | CODE |
| LOW⚡ | python/tests/provision/test_rollup.py | 54 | def test_rollup_list_or_uses_range(): | CODE |
| LOW⚡ | python/tests/context/test_session_context.py | 50 | def test_no_session_is_unrestricted(): | CODE |
| LOW⚡ | python/tests/context/test_session_context.py | 56 | def test_unrestricted_session_keeps_mount_mode(): | CODE |
| LOW⚡ | python/tests/context/test_session_context.py | 64 | def test_a_role_narrows_the_mount_mode(bound_session): | CODE |
| LOW⚡ | python/tests/context/test_session_context.py | 69 | def test_a_role_cannot_widen_the_mount_mode(bound_session): | CODE |
| LOW⚡ | python/tests/context/test_session_context.py | 74 | def test_prefix_normalization(bound_session): | CODE |
| LOW⚡ | python/tests/context/test_session_context.py | 78 | def test_a_mount_the_role_does_not_name_keeps_its_own_mode(bound_session): | CODE |
| LOW⚡ | python/tests/context/test_session_context.py | 87 | def test_ownership_gates_the_binding(): | CODE |
| LOW | python/tests/context/test_session_context.py | 101 | def test_a_nested_binding_keeps_the_owner(): | CODE |
| LOW | python/tests/context/test_session_context.py | 115 | def test_an_unowned_binding_answers_nobody(): | CODE |
| LOW | python/tests/context/test_session_context.py | 124 | def test_a_roles_hides_reach_the_predicate_as_paths_and_patterns(): | CODE |
| LOW | python/tests/context/test_session_context.py | 145 | def test_the_explicit_session_predicate_answers_without_a_binding(): | CODE |
| LOW | python/tests/context/test_session_context.py | 167 | def test_a_hide_activates_the_gate_and_a_role_without_one_does_not(): | CODE |
| LOW | python/tests/context/test_session_context.py | 201 | def test_the_admission_binding_is_scoped_to_one_command(): | CODE |
| 10670 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| 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/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_sdk.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 | "conformance": | COMMENT |
| LOW | python/tests/test_dry_run_types.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/test_nested_functions_are_closures.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/provision/test_provision_types.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/provision/test_rollup.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/context/test_session_context.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/core/test_timeutil.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/core/langfuse/test_scope.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/core/langfuse/test_stat.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/core/langfuse/test_read.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/core/langfuse/test_readdir.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/core/s3/test_stat_directory.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/core/s3/test_index_metadata.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/core/s3/test_rename_directory.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/core/s3/test_same_key_guard.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/core/s3/test_find.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/core/s3/test_readdir_paths.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/core/s3/test_write.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/core/s3/test_stat_fingerprint.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/core/s3/test_rmdir.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/core/s3/test_readdir.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/core/chroma/test_find.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/core/chroma/test_stat.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/core/chroma/test_walk.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/core/chroma/test_client.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/core/chroma/test_path.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/core/chroma/test_readdir.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/core/box/conftest.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/core/box/test_search.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/core/box/test_stat.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/core/box/test_write.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/core/box/test_api.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/core/box/test_read.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/core/box/test_client.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/core/box/test_readdir.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/core/box/du/test_size.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/core/box/du/test_entries.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/core/discord/test_streams.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/core/discord/conftest.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/core/discord/test_guilds.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/core/discord/test_members.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/core/discord/test_entry.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/core/discord/test_post.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/core/discord/test_search.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/core/discord/test_scope.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/core/discord/test_channels.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/core/discord/test_stat.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/core/discord/test_files.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/core/discord/test_threads.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/core/discord/test_read.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| LOW | python/tests/core/discord/test_client.py | 1 | # ========= Copyright 2026 @ Strukto.AI All Rights Reserved. ========= | COMMENT |
| 6902 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH⚡ | python/tests/core/render/test_json.py | 47 | '"meta":{"n":1,"ok":true,"none":null},"empty":{}}') | CODE |
| HIGH⚡ | python/tests/shell/test_quoting_coverage.py | 500 | ('x=abc; [[ $x == "a*"* ]] && echo hit || echo miss', b"miss\n"), | CODE |
| HIGH⚡ | python/tests/shell/test_quoting_coverage.py | 501 | ("x='a*c'; [[ $x == \"a*\"* ]] && echo hit || echo miss", b"hit\n"), | CODE |
| HIGH⚡ | python/tests/shell/test_quoting_coverage.py | 502 | ('x=aXb; [[ $x == "a"*"b" ]] && echo hit || echo miss', b"hit\n"), | CODE |
| HIGH⚡ | python/tests/shell/test_quoting_coverage.py | 503 | ('x=ab; [[ $x == "a*" ]] && echo hit || echo miss', b"miss\n"), | CODE |
| HIGH⚡ | python/tests/shell/test_quoting_coverage.py | 504 | ('x=ab; [[ $x == a* ]] && echo hit || echo miss', b"hit\n"), | CODE |
| HIGH⚡ | python/tests/shell/test_quoting_coverage.py | 505 | ('x=ab; [[ $x != "a*" ]] && echo hit || echo miss', b"hit\n"), | CODE |
| HIGH⚡ | python/tests/shell/test_quoting_coverage.py | 506 | ("x=$'a\\tb'; [[ $x == $'a\\tb' ]] && echo hit || echo miss", | CODE |
| HIGH⚡ | python/tests/shell/test_quoting_coverage.py | 508 | ('[[ abc < abd ]] && echo hit || echo miss', b"hit\n"), | CODE |
| HIGH | python/tests/shell/test_node_kind.py | 28 | 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 | 64 | out = shell.mirage("set -e; true && false; echo unreached") | CODE |
| HIGH⚡ | python/tests/shell/test_set_e.py | 69 | out = shell.mirage("set -e; false || false; echo unreached") | CODE |
| HIGH⚡ | python/tests/shell/test_arith.py | 69 | assert evaluate_arith("3 && 4", {}).value == 1 | CODE |
| HIGH⚡ | python/tests/shell/test_parse.py | 74 | node = parse("cmd1 && cmd2").named_children[0] | CODE |
| HIGH⚡ | python/tests/shell/test_parse.py | 81 | node = parse("cmd1 || cmd2").named_children[0] | CODE |
| HIGH⚡ | python/tests/shell/test_parse.py | 98 | node = parse("a || echo x > /out.txt").named_children[0] | CODE |
| HIGH⚡ | python/tests/shell/test_parse.py | 107 | node = parse("a && echo x > /out.txt").named_children[0] | CODE |
| HIGH⚡ | python/tests/shell/test_parse.py | 246 | node = parse("cmd1 && cmd2 || cmd3").named_children[0] | CODE |
| HIGH⚡ | python/tests/shell/test_parse.py | 246 | node = parse("cmd1 && cmd2 || cmd3").named_children[0] | CODE |
| HIGH⚡ | python/tests/shell/test_parse.py | 92 | """tree-sitter parses 'a || echo x > file' with > on the list. | STRING |
| HIGH⚡ | python/tests/shell/test_parse.py | 106 | """tree-sitter hoists > from 'a && echo x > file'.""" | STRING |
| HIGH⚡ | python/tests/shell/test_operators.py | 22 | assert shell.mirage("true && echo yes") == shell.native("true && echo yes") | CODE |
| HIGH⚡ | python/tests/shell/test_operators.py | 26 | assert shell.mirage("false && echo yes") == shell.native( | CODE |
| HIGH⚡ | python/tests/shell/test_operators.py | 27 | "false && echo yes") | CODE |
| HIGH⚡ | python/tests/shell/test_operators.py | 31 | assert shell.mirage("true || echo fallback") == shell.native( | CODE |
| HIGH⚡ | python/tests/shell/test_operators.py | 32 | "true || echo fallback") | CODE |
| HIGH⚡ | python/tests/shell/test_operators.py | 36 | assert shell.mirage("false || echo fallback") == shell.native( | CODE |
| HIGH⚡ | python/tests/shell/test_operators.py | 37 | "false || echo fallback") | CODE |
| HIGH⚡ | python/tests/shell/test_operators.py | 41 | assert shell.mirage("true && echo a || echo b") == shell.native( | CODE |
| HIGH⚡ | python/tests/shell/test_operators.py | 41 | assert shell.mirage("true && echo a || echo b") == shell.native( | CODE |
| HIGH⚡ | python/tests/shell/test_operators.py | 42 | "true && echo a || echo b") | CODE |
| HIGH⚡ | python/tests/shell/test_operators.py | 42 | "true && echo a || echo b") | CODE |
| HIGH⚡ | python/tests/shell/test_operators.py | 46 | assert shell.mirage("false && echo a || echo b") == shell.native( | CODE |
| HIGH⚡ | python/tests/shell/test_operators.py | 46 | assert shell.mirage("false && echo a || echo b") == shell.native( | CODE |
| HIGH⚡ | python/tests/shell/test_operators.py | 47 | "false && echo a || echo b") | CODE |
| HIGH⚡ | python/tests/shell/test_operators.py | 47 | "false && echo a || echo b") | CODE |
| HIGH⚡ | python/tests/shell/test_operators.py | 64 | cmd = "true && true && echo all_true" | CODE |
| HIGH⚡ | python/tests/shell/test_operators.py | 69 | cmd = "false || false || echo last_resort" | CODE |
| HIGH⚡ | python/tests/shell/test_operators.py | 74 | cmd = "echo a; false && echo b; echo c" | CODE |
| HIGH⚡ | python/tests/shell/test_operators.py | 85 | m = shell.mirage("grep hello /data/f.txt && echo found") | CODE |
| HIGH⚡ | python/tests/shell/test_operators.py | 86 | n = shell.native("grep hello f.txt && echo found") | CODE |
| HIGH⚡ | python/tests/shell/test_operators.py | 92 | m = shell.mirage("grep nope /data/f.txt || echo missing") | CODE |
| HIGH⚡ | python/tests/shell/test_operators.py | 93 | 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 | 77 | cmd = "echo a && echo b" | CODE |
| HIGH⚡ | python/tests/shell/test_barrier.py | 82 | cmd = "echo a || echo b" | CODE |
| HIGH⚡ | python/tests/shell/test_barrier.py | 87 | assert shell.mirage_exit("false && echo yes") == shell.native_exit( | CODE |
| HIGH⚡ | python/tests/shell/test_barrier.py | 88 | "false && echo yes") | CODE |
| HIGH⚡ | python/tests/shell/test_barrier.py | 92 | assert shell.mirage_exit("true || echo no") == shell.native_exit( | CODE |
| HIGH⚡ | python/tests/shell/test_barrier.py | 93 | "true || echo no") | CODE |
| HIGH⚡ | python/tests/shell/test_brace_expansion.py | 96 | out = shell.mirage("touch bf{1..3}.txt && ls") | CODE |
| HIGH⚡ | python/tests/shell/test_dev.py | 27 | cmd = "cat /data/nope.txt 2>/dev/null || echo recovered" | CODE |
| HIGH⚡ | python/tests/shell/test_dev.py | 32 | cmd = ("if cat /data/nope.txt 2>/dev/null; " | CODE |
| 412 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM⚡ | python/tests/cache/file/test_io.py | 165 | # ── cache invalidation ────────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | python/tests/cache/file/test_io.py | 177 | # ── edge cases ─────────────────────────────────────────────────────────── | COMMENT |
| MEDIUM | python/tests/cache/file/test_io.py | 41 | # ── cache population via apply_io ──────────────────────────────────────── | COMMENT |
| MEDIUM | python/tests/cache/file/test_io.py | 93 | # ── backend fingerprint threading ─────────────────────────────────────── | COMMENT |
| MEDIUM | python/tests/cache/file/test_io.py | 195 | # ── background drain ──────────────────────────────────────────────────── | COMMENT |
| MEDIUM | python/tests/cache/file/test_io.py | 238 | # ── max_drain_bytes (cancellable cache drain) ─────────────────────────── | COMMENT |
| MEDIUM⚡ | python/tests/shell/test_quoting_coverage.py | 60 | # ── paths with spaces ────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | python/tests/shell/test_quoting_coverage.py | 87 | # ── paths with special chars ─────────────────────────────── | COMMENT |
| MEDIUM⚡ | python/tests/shell/test_quoting_coverage.py | 97 | # ── unicode in paths ─────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | python/tests/shell/test_quoting_coverage.py | 113 | # ── env vars in paths ────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | python/tests/shell/test_quoting_coverage.py | 139 | # ── command substitution in args ────────────────────────── | COMMENT |
| MEDIUM⚡ | python/tests/shell/test_quoting_coverage.py | 156 | # ── escaping ─────────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | python/tests/shell/test_quoting_coverage.py | 181 | # ── unquoted backslash escapes (POSIX §2.2.1) ────────────── | COMMENT |
| MEDIUM⚡ | python/tests/shell/test_quoting_coverage.py | 219 | # ── edge cases ───────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | python/tests/shell/test_quoting_coverage.py | 652 | # ── quoted globs stay literal ────────────────────────────── | COMMENT |
| MEDIUM⚡ | python/tests/shell/test_quoting_coverage.py | 731 | # ── quoting is per character, not per word ───────────────── | COMMENT |
| MEDIUM | python/tests/shell/test_quoting_coverage.py | 258 | # ── whitespace between expansions inside double quotes ───── | COMMENT |
| MEDIUM | python/tests/shell/test_quoting_coverage.py | 295 | # ── adjacent backtick substitutions ──────────────────────── | COMMENT |
| MEDIUM | python/tests/shell/test_quoting_coverage.py | 331 | # ── ANSI-C quoting $'...' and locale quoting $"..." ──────── | COMMENT |
| MEDIUM | python/tests/shell/test_quoting_coverage.py | 534 | # ── a bare $ is a literal word ───────────────────────────── | COMMENT |
| MEDIUM | python/tests/shell/test_quoting_coverage.py | 554 | # ── a quoted "$@" splices into the word around it ────────── | COMMENT |
| MEDIUM | python/tests/shell/test_quoting_coverage.py | 619 | # ── literal backslashes survive classification ───────────── | COMMENT |
| MEDIUM⚡ | python/tests/shell/test_parse.py | 267 | # ── `((` reparse: subshell that immediately opens a subshell ──────── | COMMENT |
| MEDIUM⚡ | python/tests/shell/test_helpers.py | 326 | # ── expansion nodes ────────────────────────────── | COMMENT |
| MEDIUM⚡ | python/tests/shell/test_helpers.py | 394 | # ── quotes and escapes ────────────────────────── | COMMENT |
| MEDIUM⚡ | python/tests/shell/test_helpers.py | 453 | # ── multi-statement bodies ───────────────────── | COMMENT |
| MEDIUM⚡ | python/tests/shell/test_helpers.py | 510 | # ── redirect target types ────────────────────── | COMMENT |
| MEDIUM⚡ | python/tests/shell/test_helpers.py | 642 | # ── python command parsing ───────────────────── | COMMENT |
| MEDIUM | python/tests/shell/test_helpers.py | 286 | # ── negated command ────────────────────────────── | COMMENT |
| MEDIUM | python/tests/shell/test_helpers.py | 296 | # ── heredoc ────────────────────────────────────── | COMMENT |
| MEDIUM | python/tests/shell/test_helpers.py | 308 | # ── process substitution ───────────────────────── | COMMENT |
| MEDIUM | python/tests/shell/test_helpers.py | 364 | # ── edge cases ─────────────────────────────────── | 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 | 115 | # ═══════════════════════════════════════════════ | COMMENT |
| MEDIUM | python/tests/workspace/test_provider_integration.py | 117 | # ═══════════════════════════════════════════════ | COMMENT |
| MEDIUM | python/tests/workspace/test_provider_integration.py | 196 | # ═══════════════════════════════════════════════ | COMMENT |
| MEDIUM | python/tests/workspace/test_provider_integration.py | 198 | # ═══════════════════════════════════════════════ | COMMENT |
| MEDIUM⚡ | python/tests/workspace/test_mount_root_protection.py | 63 | # ════════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM⚡ | python/tests/workspace/test_mount_root_protection.py | 65 | # ════════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM⚡ | python/tests/workspace/test_mount_root_protection.py | 67 | # ── rm ───────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | python/tests/workspace/test_mount_root_protection.py | 215 | # ── touch ───────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | python/tests/workspace/test_mount_root_protection.py | 239 | # ── ln ──────────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | python/tests/workspace/test_mount_root_protection.py | 317 | # ════════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM⚡ | python/tests/workspace/test_mount_root_protection.py | 319 | # ════════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM⚡ | python/tests/workspace/test_mount_root_protection.py | 478 | # ════════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM⚡ | python/tests/workspace/test_mount_root_protection.py | 482 | # ════════════════════════════════════════════════════════════════════ | COMMENT |
| MEDIUM | python/tests/workspace/test_mount_root_protection.py | 38 | # ── fixtures ────────────────────────────────────── | COMMENT |
| MEDIUM | python/tests/workspace/test_mount_root_protection.py | 153 | # ── mv ───────────────────────────────────────────── | COMMENT |
| MEDIUM | python/tests/workspace/test_mount_root_protection.py | 179 | # ── mkdir ────────────────────────────────────────── | COMMENT |
| MEDIUM | python/tests/workspace/test_mount_root_protection.py | 281 | # ── nested mount as a target ────────────────────── | COMMENT |
| MEDIUM | python/tests/workspace/test_mount_root_protection.py | 462 | # ── ls / unchanged ──────────────────────────────── | COMMENT |
| MEDIUM | python/tests/workspace/test_symlinks.py | 873 | # ── POSIX pathname resolution ──────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | python/tests/workspace/test_expand.py | 97 | # ── simple expansion $VAR ─────────────────────── | COMMENT |
| MEDIUM⚡ | python/tests/workspace/test_expand.py | 143 | # ── brace expansion ${VAR} ───────────────────── | COMMENT |
| MEDIUM⚡ | python/tests/workspace/test_expand.py | 166 | # ── command substitution $(cmd) ───────────────── | COMMENT |
| MEDIUM⚡ | python/tests/workspace/test_expand.py | 202 | # ── arithmetic expansion $((expr)) ────────────── | COMMENT |
| MEDIUM⚡ | python/tests/workspace/test_expand.py | 217 | # ── concatenation $VAR/file.txt ───────────────── | COMMENT |
| MEDIUM⚡ | python/tests/workspace/test_expand.py | 227 | # ── string "hello $VAR" ──────────────────────── | COMMENT |
| MEDIUM⚡ | python/tests/workspace/test_expand.py | 243 | # ── raw string 'no expansion' ────────────────── | COMMENT |
| 540 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | python/tests/commands/builtin/chroma/conftest.py | 15 | CODE | |
| LOW | python/tests/commands/builtin/chroma/conftest.py | 15 | CODE | |
| LOW | python/tests/commands/builtin/chroma/conftest.py | 15 | CODE | |
| LOW | python/tests/commands/builtin/chroma/conftest.py | 15 | CODE | |
| LOW | python/tests/commands/builtin/chroma/conftest.py | 15 | CODE | |
| LOW | …n/tests/commands/builtin/databricks_volume/conftest.py | 20 | CODE | |
| LOW | …n/tests/commands/builtin/databricks_volume/conftest.py | 20 | CODE | |
| LOW | python/tests/commands/builtin/github/conftest.py | 18 | CODE | |
| LOW | python/tests/commands/builtin/hf_buckets/conftest.py | 15 | CODE | |
| LOW | python/mirage/sdk.py | 15 | CODE | |
| LOW | python/mirage/sdk.py | 16 | CODE | |
| LOW | python/mirage/sdk.py | 16 | CODE | |
| LOW | python/mirage/sdk.py | 16 | CODE | |
| LOW | python/mirage/sdk.py | 17 | CODE | |
| LOW | python/mirage/sdk.py | 17 | CODE | |
| LOW | python/mirage/sdk.py | 19 | CODE | |
| LOW | python/mirage/sdk.py | 20 | CODE | |
| LOW | python/mirage/sdk.py | 21 | CODE | |
| LOW | python/mirage/sdk.py | 21 | CODE | |
| LOW | python/mirage/sdk.py | 21 | CODE | |
| LOW | python/mirage/sdk.py | 21 | CODE | |
| LOW | python/mirage/sdk.py | 21 | CODE | |
| LOW | python/mirage/sdk.py | 22 | CODE | |
| LOW | python/mirage/sdk.py | 23 | CODE | |
| LOW | python/mirage/sdk.py | 23 | CODE | |
| LOW | python/mirage/sdk.py | 24 | CODE | |
| LOW | python/mirage/sdk.py | 24 | CODE | |
| LOW | python/mirage/sdk.py | 25 | CODE | |
| LOW | python/mirage/sdk.py | 26 | CODE | |
| LOW | python/mirage/sdk.py | 27 | CODE | |
| LOW | python/mirage/sdk.py | 27 | CODE | |
| LOW | python/mirage/sdk.py | 27 | CODE | |
| LOW | python/mirage/sdk.py | 29 | CODE | |
| LOW | python/mirage/sdk.py | 29 | CODE | |
| LOW | python/mirage/sdk.py | 30 | CODE | |
| LOW | python/mirage/sdk.py | 30 | CODE | |
| LOW | python/mirage/__init__.py | 16 | CODE | |
| LOW | python/mirage/__init__.py | 17 | CODE | |
| LOW | python/mirage/__init__.py | 18 | CODE | |
| LOW | python/mirage/__init__.py | 19 | CODE | |
| LOW | python/mirage/__init__.py | 19 | CODE | |
| LOW | python/mirage/__init__.py | 19 | CODE | |
| LOW | python/mirage/__init__.py | 20 | CODE | |
| LOW | python/mirage/__init__.py | 20 | CODE | |
| LOW | python/mirage/__init__.py | 21 | CODE | |
| LOW | python/mirage/__init__.py | 21 | CODE | |
| LOW | python/mirage/__init__.py | 21 | CODE | |
| LOW | python/mirage/__init__.py | 22 | CODE | |
| LOW | python/mirage/__init__.py | 22 | CODE | |
| LOW | python/mirage/__init__.py | 22 | CODE | |
| LOW | python/mirage/__init__.py | 22 | CODE | |
| LOW | python/mirage/__init__.py | 23 | CODE | |
| LOW | python/mirage/__init__.py | 23 | CODE | |
| LOW | python/mirage/__init__.py | 23 | CODE | |
| LOW | python/mirage/__init__.py | 24 | CODE | |
| LOW | python/mirage/__init__.py | 25 | 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 | |
| 1055 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| 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 | 43 | async def _setup_html_files(ws: Workspace) -> None: | CODE |
| LOW | python/tests/commands/builtin/chroma/conftest.py | 19 | __all__ = [ | CODE |
| LOW | …n/tests/commands/builtin/databricks_volume/conftest.py | 25 | __all__ = [ | CODE |
| LOW | python/tests/commands/builtin/github/conftest.py | 20 | __all__ = ["github_config", "mock_github_api"] | CODE |
| LOW | python/tests/commands/builtin/hf_buckets/conftest.py | 17 | __all__ = ["make_acc"] | CODE |
| LOW | python/mirage/sdk.py | 32 | __all__ = [ | CODE |
| LOW | python/mirage/__init__.py | 30 | __all__ = [ | CODE |
| LOW | python/mirage/provision/__init__.py | 19 | __all__ = [ | CODE |
| LOW | python/mirage/context/__init__.py | 27 | __all__ = [ | CODE |
| LOW | python/mirage/core/nextcloud/find.py | 18 | logger = logging.getLogger(__name__) | CODE |
| LOW | python/mirage/core/nextcloud/readdir.py | 15 | logger = logging.getLogger(__name__) | CODE |
| LOW | python/mirage/core/nextcloud/du/__init__.py | 19 | __all__ = ["entries", "size", "stat_or_null"] | CODE |
| LOW | python/mirage/core/nextcloud/du/entries.py | 24 | logger = logging.getLogger(__name__) | CODE |
| LOW | python/mirage/core/nextcloud/search/client.py | 18 | logger = logging.getLogger(__name__) | CODE |
| LOW | python/mirage/core/nextcloud/search/__init__.py | 6 | __all__ = [ | CODE |
| LOW | python/mirage/core/opendal/__init__.py | 18 | __all__ = ["OperatorAccessor", "OpendalWalk", "build_delta_hook"] | CODE |
| LOW | python/mirage/core/s3/__init__.py | 33 | __all__ = [ | CODE |
| LOW | python/mirage/core/s3/du/__init__.py | 18 | __all__ = ["entries", "size"] | CODE |
| LOW | python/mirage/core/chroma/__init__.py | 1 | __all__ = [] | CODE |
| LOW | python/mirage/core/box/stat.py | 30 | logger = logging.getLogger(__name__) | CODE |
| LOW | python/mirage/core/box/search.py | 26 | logger = logging.getLogger(__name__) | CODE |
| LOW | python/mirage/core/box/du/__init__.py | 18 | __all__ = ["entries", "size"] | CODE |
| LOW | python/mirage/core/discord/readdir.py | 36 | logger = logging.getLogger(__name__) | CODE |
| LOW | python/mirage/core/object_store/readdir.py | 26 | logger = logging.getLogger(__name__) | CODE |
| LOW | python/mirage/core/redis/__init__.py | 35 | __all__ = [ | CODE |
| LOW | python/mirage/core/redis/du/__init__.py | 18 | __all__ = ["entries", "size"] | CODE |
| LOW | python/mirage/core/redis/watch/__init__.py | 17 | __all__ = ["RedisEventHook"] | CODE |
| LOW | python/mirage/core/onedrive/client.py | 34 | __all__ = [ | CODE |
| LOW | python/mirage/core/onedrive/du/__init__.py | 18 | __all__ = ["entries", "size"] | CODE |
| LOW | python/mirage/core/linear/__init__.py | 15 | __all__ = [] | CODE |
| LOW | python/mirage/core/gcal/client.py | 22 | __all__ = [ | CODE |
| LOW | python/mirage/core/gcal/day.py | 22 | logger = logging.getLogger(__name__) | CODE |
| LOW | python/mirage/core/gdrive/resolve.py | 31 | logger = logging.getLogger(__name__) | CODE |
| LOW | python/mirage/core/gdrive/readdir.py | 27 | logger = logging.getLogger(__name__) | CODE |
| LOW | python/mirage/core/gdrive/du/__init__.py | 18 | __all__ = ["entries", "size"] | CODE |
| LOW | python/mirage/core/databricks_volume/readdir.py | 31 | logger = logging.getLogger(__name__) | CODE |
| LOW | python/mirage/core/postgres/client.py | 22 | __all__ = ["canonicalize_row", "canonicalize_value"] | CODE |
| LOW | python/mirage/core/ssh/readdir.py | 29 | logger = logging.getLogger(__name__) | CODE |
| LOW | python/mirage/core/ssh/du/__init__.py | 18 | __all__ = ["entries", "size"] | CODE |
| LOW | python/mirage/core/github/stat.py | 25 | logger = logging.getLogger(__name__) | CODE |
| LOW | python/mirage/core/github/search.py | 24 | logger = logging.getLogger(__name__) | CODE |
| LOW | python/mirage/core/gridfs/__init__.py | 33 | __all__ = [ | CODE |
| LOW | python/mirage/core/gridfs/du/__init__.py | 18 | __all__ = ["entries", "size"] | CODE |
| LOW | python/mirage/core/history/__init__.py | 21 | __all__ = [ | CODE |
| LOW | python/mirage/core/sharepoint/client.py | 15 | __all__ = [ | CODE |
| LOW | python/mirage/core/sharepoint/du/__init__.py | 18 | __all__ = ["entries", "size"] | CODE |
| LOW | python/mirage/core/gsheets/client.py | 23 | __all__ = [ | CODE |
| LOW | python/mirage/core/qdrant/query.py | 25 | logger = logging.getLogger(__name__) | CODE |
| LOW | python/mirage/core/qdrant/readdir.py | 34 | logger = logging.getLogger(__name__) | CODE |
| LOW | python/mirage/core/hf_buckets/du/__init__.py | 18 | __all__ = ["entries", "size"] | CODE |
| LOW | python/mirage/core/dropbox/stat.py | 29 | logger = logging.getLogger(__name__) | CODE |
| LOW | python/mirage/core/dropbox/search.py | 25 | logger = logging.getLogger(__name__) | CODE |
| LOW | python/mirage/core/dropbox/du/__init__.py | 18 | __all__ = ["entries", "size"] | CODE |
| LOW | python/mirage/core/api/client.py | 32 | logger = logging.getLogger(__name__) | CODE |
| LOW | python/mirage/core/disk/__init__.py | 33 | __all__ = [ | CODE |
| LOW | python/mirage/core/disk/du/__init__.py | 18 | __all__ = ["entries", "size"] | CODE |
| LOW | python/mirage/core/disk/watch/__init__.py | 18 | __all__ = ["DiskEventHook", "DiskWalk", "build_delta_hook"] | CODE |
| LOW | python/mirage/core/slack/readdir.py | 32 | logger = logging.getLogger(__name__) | CODE |
| LOW | python/mirage/core/slack/readdir.py | 286 | __all__ = ["readdir", "VIRTUAL_ROOTS"] | CODE |
| 321 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| 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/accessor/test_hf_models.py | 0 | the hub resolves a bare name against whoever the token belongs to, and the real cli relies on it: `hf repo create widget | STRING |
| HIGH | python/tests/accessor/test_hf_spaces.py | 0 | the hub resolves a bare name against whoever the token belongs to, and the real cli relies on it: `hf repo create widget | STRING |
| HIGH | python/tests/accessor/test_hf_datasets.py | 0 | the hub resolves a bare name against whoever the token belongs to, and the real cli relies on it: `hf repo create widget | STRING |
| HIGH | python/tests/workspace/test_state_doors.py | 0 | ram resource with the native setattr op stripped, standing in for an api backend that has no attribute slot. | STRING |
| HIGH | python/tests/workspace/mount/namespace/test_redis.py | 0 | ram resource with the native setattr op stripped, standing in for an api backend that has no attribute slot. | STRING |
| HIGH | …/workspace/executor/builtins/metadata/test_metadata.py | 0 | ram resource with the native setattr op stripped, standing in for an api backend that has no attribute slot. | STRING |
| HIGH | …sts/workspace/executor/builtins/metadata/test_chgrp.py | 0 | ram resource with the native setattr op stripped, standing in for an api backend that has no attribute slot. | STRING |
| HIGH | …sts/workspace/executor/builtins/metadata/test_chmod.py | 0 | ram resource with the native setattr op stripped, standing in for an api backend that has no attribute slot. | 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/commands/cli/builtin/git/test_add.py | 0 | run one git line against the mounted repository. args: ws (workspace): workspace with the repository and cli. line (str) | STRING |
| HIGH | python/tests/commands/cli/builtin/git/test_status.py | 0 | run one git line against the mounted repository. args: ws (workspace): workspace with the repository and cli. line (str) | STRING |
| HIGH | python/tests/commands/cli/builtin/git/test_reset.py | 0 | run one git line against the mounted repository. args: ws (workspace): workspace with the repository and cli. line (str) | STRING |
| HIGH | python/tests/commands/cli/builtin/git/test_commit.py | 0 | run one git line against the mounted repository. args: ws (workspace): workspace with the repository and cli. line (str) | STRING |
| HIGH | python/tests/commands/cli/builtin/git/test_branch.py | 0 | run one git line against the mounted repository. args: ws (workspace): workspace with the repository and cli. line (str) | STRING |
| HIGH | python/tests/commands/cli/builtin/git/test_checkout.py | 0 | run one git line against the mounted repository. args: ws (workspace): workspace with the repository and cli. line (str) | STRING |
| HIGH | python/tests/commands/builtin/redis/test_du.py | 0 | gnu du with no operand summarises '.', dot-spelled; no error. | STRING |
| HIGH | python/tests/commands/builtin/disk/test_du.py | 0 | gnu du with no operand summarises '.', dot-spelled; no error. | STRING |
| HIGH | python/tests/commands/builtin/ram/test_du.py | 0 | gnu du with no operand summarises '.', dot-spelled; no error. | 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 |
| HIGH | python/mirage/core/disk/watch/walk.py | 0 | yield every entry under ``root``. args: root (pathspec): watch root (mount-virtual path). | STRING |
| HIGH | python/mirage/watch/walk.py | 0 | yield every entry under ``root``. args: root (pathspec): watch root (mount-virtual path). | STRING |
| HIGH | python/mirage/core/redis/du/entries.py | 0 | per-file sizes under a path plus their total. paths are mount-relative and leaf files only; the caller lifts them onto v | STRING |
| HIGH | python/mirage/core/disk/du/entries.py | 0 | per-file sizes under a path plus their total. paths are mount-relative and leaf files only; the caller lifts them onto v | STRING |
| HIGH | python/mirage/core/ram/du/entries.py | 0 | per-file sizes under a path plus their total. paths are mount-relative and leaf files only; the caller lifts them onto v | STRING |
| HIGH | python/mirage/ops/gcal/read.py | 0 | read the rendered document, optionally only a byte range of it. a backend that registers its own read op does not go thr | STRING |
| HIGH | python/mirage/ops/gsheets/read.py | 0 | read the rendered document, optionally only a byte range of it. a backend that registers its own read op does not go thr | STRING |
| HIGH | python/mirage/ops/gdocs/read.py | 0 | read the rendered document, optionally only a byte range of it. a backend that registers its own read op does not go thr | STRING |
| HIGH | python/mirage/ops/gslides/read.py | 0 | read the rendered document, optionally only a byte range of it. a backend that registers its own read op does not go thr | STRING |
| HIGH | python/mirage/commands/cli/builtin/git/show.py | 0 | read the raw awk flag kwargs into a frozen struct. args: fl (flagview): spec-validated view over the raw flag kwargs. | STRING |
| HIGH | python/mirage/commands/cli/builtin/git/add.py | 0 | read the raw awk flag kwargs into a frozen struct. args: fl (flagview): spec-validated view over the raw flag kwargs. | STRING |
| HIGH | python/mirage/commands/cli/builtin/git/history.py | 0 | read the raw awk flag kwargs into a frozen struct. args: fl (flagview): spec-validated view over the raw flag kwargs. | STRING |
| HIGH | python/mirage/commands/builtin/generic/awk.py | 0 | read the raw awk flag kwargs into a frozen struct. args: fl (flagview): spec-validated view over the raw flag kwargs. | STRING |
| HIGH | python/mirage/commands/builtin/generic/zgrep.py | 0 | convert the raw flag bag into grepflags, the only string-keyed reads. args: fl (flagview): spec-validated view over the | STRING |
| HIGH | python/mirage/commands/builtin/generic/rg.py | 0 | convert the raw flag bag into grepflags, the only string-keyed reads. args: fl (flagview): spec-validated view over the | STRING |
| HIGH | python/mirage/commands/builtin/generic/grep.py | 0 | convert the raw flag bag into grepflags, the only string-keyed reads. args: fl (flagview): spec-validated view over the | STRING |
| HIGH | python/mirage/commands/builtin/generic/unexpand.py | 0 | run zcat over resolved operands; mirrors zcatgeneric. args: paths (list[pathspec]): glob-resolved operands, empty for st | STRING |
| HIGH | python/mirage/commands/builtin/generic/fmt.py | 0 | run zcat over resolved operands; mirrors zcatgeneric. args: paths (list[pathspec]): glob-resolved operands, empty for st | STRING |
| HIGH | python/mirage/commands/builtin/generic/rev.py | 0 | run zcat over resolved operands; mirrors zcatgeneric. args: paths (list[pathspec]): glob-resolved operands, empty for st | STRING |
| HIGH | python/mirage/commands/builtin/generic/cut.py | 0 | run zcat over resolved operands; mirrors zcatgeneric. args: paths (list[pathspec]): glob-resolved operands, empty for st | STRING |
| HIGH | python/mirage/commands/builtin/generic/nl.py | 0 | run zcat over resolved operands; mirrors zcatgeneric. args: paths (list[pathspec]): glob-resolved operands, empty for st | STRING |
| HIGH | python/mirage/commands/builtin/generic/tac.py | 0 | run zcat over resolved operands; mirrors zcatgeneric. args: paths (list[pathspec]): glob-resolved operands, empty for st | STRING |
| HIGH | python/mirage/commands/builtin/generic/strings.py | 0 | run zcat over resolved operands; mirrors zcatgeneric. args: paths (list[pathspec]): glob-resolved operands, empty for st | STRING |
| HIGH | python/mirage/commands/builtin/generic/expand.py | 0 | run zcat over resolved operands; mirrors zcatgeneric. args: paths (list[pathspec]): glob-resolved operands, empty for st | STRING |
| HIGH | python/mirage/commands/builtin/generic/zcat.py | 0 | run zcat over resolved operands; mirrors zcatgeneric. args: paths (list[pathspec]): glob-resolved operands, empty for st | STRING |
| HIGH | python/mirage/resource/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/resource/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/resource/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/resource/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/resource/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/resource/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/resource/qingstor/prompt.py | 0 | \ {prefix} remote scaleway object storage bucket (s3-compatible). important: this is a remote mount. prefer targeted rea | STRING |
| 5 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | python/mirage/config.py | 104 | Replace ``${VAR}`` placeholders with values from ``env``. Args: value (Any): scalar, dict, or list to walk. | 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/jaeger/client.py | 103 | Call the Jaeger query API and return the decoded body. Args: accessor (JaegerAccessor): jaeger accessor. | STRING |
| HIGH | python/mirage/core/jaeger/client.py | 197 | Fetch one trace by id. Args: accessor (JaegerAccessor): jaeger accessor. trace_id (str): 16 or 32 h | 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/client.py | 82 | 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/repo.py | 95 | Split gh's `[HOST/]OWNER/REPO`. The host is optional and leading, so the owner and the repository are always th | STRING |
| HIGH | python/mirage/core/hf_hub/tree.py | 180 | 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 | 216 | 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 | 354 | 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 | 177 | 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 | 71 | Stat one path in the repository. Args: accessor (HfHubAccessor): backend handle. path_spec (PathSpe | STRING |
| HIGH | python/mirage/core/hf_hub/readdir.py | 33 | List one directory of the repository. Args: accessor (HfHubAccessor): backend handle. path_spec (Pa | STRING |
| HIGH | python/mirage/core/hf_hub/read.py | 33 | 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/shell/arith.py | 515 | Evaluate a bash arithmetic expression. Implements bash's arithmetic grammar over 64-bit wrapping integers: comm | STRING |
| HIGH | …thon/mirage/workspace/executor/builtins/unset/unset.py | 54 | 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/printf/printf.py | 35 | Assign ``value`` to a ``printf -v`` target (scalar or ``name[idx]``). A delegation to the one element writer: a bar | STRING |
| HIGH | …/mirage/workspace/executor/builtins/declare/declare.py | 71 | Store a declaration's array literals through the session door. The builtin owns the store; readonly is the shell's | 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 | 78 | 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 | 88 | 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/fuse/core.py | 327 | POSIX attributes for a path, optionally through an open handle. Args: path (str): mount path to sta | STRING |
| HIGH | python/mirage/fuse/core.py | 377 | Entry names under a directory, including "." and "..". Args: path (str): mount path of the director | STRING |
| HIGH | python/mirage/fuse/core.py | 479 | The stored target of a namespace link. Args: path (str): mount path to read. Returns: | STRING |
| HIGH | python/mirage/fuse/core.py | 577 | Read an advisory extended attribute. Args: path (str): mount path the attribute belongs to. | STRING |
| HIGH | python/mirage/fuse/core.py | 617 | Open a path, hydrating it when its size is unknown. Args: path (str): mount path to open. | STRING |
| HIGH | python/mirage/runtime/vfs.py | 314 | The target of the symlink at `path`. Args: path (str): guest-absolute path of the link. Re | STRING |
| HIGH | python/mirage/runtime/script.py | 63 | 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/agents/file_version.py | 122 | Read a file the agent is about to rewrite. Args: path (str): Virtual path. Returns: | STRING |
| HIGH | python/mirage/agents/mcp/server.py | 172 | Run one tool call. Args: name (str): The tool being called. arguments (dict[str, Any]): | STRING |
| HIGH | python/mirage/server/daemon_config.py | 66 | Read the ``[daemon]`` table from ``home/config.toml``. Args: home (Path): the ``.mirage`` base directory. T | STRING |
| HIGH | python/mirage/server/registry.py | 84 | Wrap ``workspace`` in a runner and register it. Args: workspace (Workspace): freshly-constructed wo | STRING |
| HIGH | python/mirage/server/registry.py | 106 | Stop the runner for ``workspace_id`` and drop it. Args: workspace_id (str): id to remove. | STRING |
| HIGH | python/mirage/server/workspace_config.py | 45 | Find the workspace config a command should load. An explicit path wins, then the first environment variable that is | STRING |
| HIGH | python/mirage/server/auth/config.py | 143 | Resolve daemon auth configuration from environment and config. Per key the environment variable wins over the ``[da | STRING |
| HIGH | python/mirage/server/auth/jwt.py | 30 | Verify a JWT against ``cfg`` and return its claims on success. Performs signature verification, algorithm pinning, | STRING |
| HIGH | python/mirage/utils/path.py | 169 | Resolve symlink prefixes in ``path`` until stable. Repeatedly replaces the longest dict key that is a path-boundary | STRING |
| HIGH | python/mirage/cli/settings.py | 175 | Return the ``[daemon]`` table as written in the config file. Args: path (Path | None): config file. Default | STRING |
| HIGH | python/mirage/commands/cli/builtin/himalaya/deliver.py | 61 | APPEND a message to a mailbox, seen, the way upstream saves one. Args: config (EmailConfig): the account. | STRING |
| HIGH | python/mirage/commands/cli/builtin/gh/accessor.py | 33 | The repository a line is about. The operand when it named one, the install's own otherwise. Real gh resolves th | STRING |
| HIGH | python/mirage/commands/cli/builtin/hf/accessor.py | 28 | The repo kind a line names, defaulting the way upstream does. Args: fl (FlagView): the invocation's flags. | STRING |
| HIGH | python/mirage/commands/cli/builtin/hf/upload.py | 36 | Read a workspace file, or every file under a workspace directory. Read through the op dispatcher rather than any fi | STRING |
| HIGH | python/mirage/commands/cli/builtin/hf/upload.py | 106 | The repo-relative directory an upload's third operand names. A Hub path is repo-relative with no leading slash and | STRING |
| HIGH | python/mirage/resource/registry.py | 325 | Construct a resource instance by its registry name. Resolves resource and config classes lazily via importlib, so | STRING |
| HIGH | python/mirage/resource/gcal/event_entry.py | 77 | Recover (event_id, hhmm) from an event filename. Splitting on the first ``__`` is safe because a Google event id is | STRING |
| HIGH | python/mirage/resource/gcal/event_entry.py | 125 | Recover the calendar id a directory name addresses. Args: name (str): the directory name as rendered. | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | typescript/packages/core/src/runtime/python/wrapper.ts | 57 | elif _codeobj is not False: | CODE |
| HIGH | typescript/packages/core/src/runtime/python/wrapper.ts | 70 | elif isinstance(_code, bool): | CODE |
| HIGH | typescript/packages/core/src/runtime/python/wrapper.ts | 72 | elif isinstance(_code, int): | CODE |
| HIGH | typescript/packages/core/src/runtime/python/wrapper.ts | 239 | elif isinstance(_code, bool): | CODE |
| HIGH | typescript/packages/core/src/runtime/python/wrapper.ts | 241 | elif isinstance(_code, int): | CODE |
| HIGH | …ipt/packages/core/src/runtime/python/jsglobals.test.ts | 33 | print(",".join(flags)) | CODE |
| HIGH | examples/typescript/s3/s3_write.ts | 198 | print(res.stdout) | CODE |
| HIGH | examples/typescript/redis/redis.ts | 43 | print(res.stdout) | CODE |
| HIGH⚡ | examples/typescript/redis/redis.ts | 96 | print(cpOut.stdout) | CODE |
| HIGH⚡ | examples/typescript/redis/redis.ts | 101 | print(mvOut.stdout) | CODE |
| HIGH⚡ | examples/typescript/redis/redis.ts | 106 | print(rmOut.stdout) | CODE |
| HIGH⚡ | examples/typescript/redis/redis.ts | 115 | print(uniqOut.stdout) | 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 |
|---|---|---|---|---|
| LOW | python/tests/core/nextcloud/conftest.py | 136 | CODE | |
| LOW | python/tests/core/chroma/conftest.py | 21 | CODE | |
| LOW | python/tests/core/box/test_stat.py | 125 | CODE | |
| LOW | python/tests/core/onedrive/test_stat.py | 132 | CODE | |
| LOW | python/tests/core/sharepoint/test_stat.py | 209 | CODE | |
| LOW | python/tests/core/dropbox/test_stat.py | 85 | CODE | |
| LOW | python/tests/core/dropbox/test_rename.py | 53 | CODE | |
| LOW | python/tests/core/dropbox/test_rename.py | 77 | CODE | |
| LOW | python/tests/core/dropbox/test_rmdir.py | 37 | CODE | |
| LOW | python/tests/workspace/test_ungated_attr_writes.py | 61 | CODE | |
| LOW | python/tests/workspace/dispatcher/test_dispatcher.py | 332 | CODE | |
| LOW | python/tests/commands/test_no_object_annotations.py | 55 | CODE | |
| LOW | python/tests/commands/test_no_dead_flag_params.py | 35 | CODE | |
| LOW | python/tests/commands/native/test_cross_mount.py | 67 | CODE | |
| LOW | python/tests/commands/cli/builtin/git/conftest.py | 75 | CODE | |
| LOW | python/tests/commands/builtin/test_multifile_guard.py | 89 | CODE | |
| LOW | python/tests/e2e/test_cross_mount_matrix.py | 101 | CODE | |
| LOW | python/tests/e2e/test_cross_mount_matrix.py | 127 | CODE | |
| LOW | python/tests/e2e/test_snapshot_drift_live.py | 95 | CODE | |
| LOW | python/mirage/core/nextcloud/search/query.py | 54 | CODE | |
| LOW | python/mirage/core/nextcloud/search/query.py | 81 | CODE | |
| LOW | python/mirage/core/chroma/grep.py | 102 | CODE | |
| LOW | python/mirage/core/chroma/search.py | 55 | CODE | |
| LOW | python/mirage/core/box/rename.py | 25 | CODE | |
| LOW | python/mirage/core/box/mkdir.py | 39 | CODE | |
| LOW | python/mirage/core/gcal/readdir.py | 209 | CODE | |
| LOW | python/mirage/core/gdrive/mkdir.py | 27 | CODE | |
| LOW | python/mirage/core/gdrive/readdir.py | 41 | CODE | |
| LOW | python/mirage/core/msgraph/drive_ops.py | 309 | CODE | |
| LOW | python/mirage/core/msgraph/drive_ops.py | 352 | CODE | |
| LOW | python/mirage/core/disk/find.py | 34 | CODE | |
| LOW | python/mirage/core/jq/eval.py | 33 | CODE | |
| LOW | python/mirage/core/dify/tree.py | 113 | CODE | |
| LOW | python/mirage/core/dify/tree.py | 171 | CODE | |
| LOW | python/mirage/core/dify/search.py | 119 | CODE | |
| LOW | python/mirage/core/gmail/messages.py | 123 | CODE | |
| LOW | python/mirage/core/email/client.py | 154 | CODE | |
| LOW | python/mirage/core/email/_parse.py | 51 | CODE | |
| LOW | python/mirage/cache/file/io.py | 70 | CODE | |
| LOW | python/mirage/shell/arith.py | 25 | CODE | |
| LOW | python/mirage/shell/parse.py | 27 | CODE | |
| LOW | python/mirage/shell/parse.py | 132 | CODE | |
| LOW | python/mirage/shell/parse.py | 377 | CODE | |
| LOW | python/mirage/shell/helpers.py | 40 | CODE | |
| LOW | python/mirage/shell/helpers.py | 65 | CODE | |
| LOW | python/mirage/shell/helpers.py | 229 | CODE | |
| LOW | python/mirage/shell/helpers.py | 293 | CODE | |
| LOW | python/mirage/shell/helpers.py | 377 | CODE | |
| LOW | python/mirage/shell/helpers.py | 455 | CODE | |
| LOW | python/mirage/shell/helpers.py | 497 | CODE | |
| LOW | python/mirage/workspace/provision/command.py | 82 | CODE | |
| LOW | python/mirage/workspace/snapshot/manifest.py | 156 | CODE | |
| LOW | python/mirage/workspace/expand/brace.py | 107 | CODE | |
| LOW | python/mirage/workspace/expand/brace.py | 129 | CODE | |
| LOW | python/mirage/workspace/expand/globs.py | 463 | CODE | |
| LOW | python/mirage/workspace/expand/variable.py | 271 | CODE | |
| LOW | python/mirage/workspace/expand/variable.py | 408 | CODE | |
| LOW | python/mirage/workspace/expand/variable.py | 692 | CODE | |
| LOW | python/mirage/workspace/expand/redirects.py | 69 | CODE | |
| LOW | python/mirage/workspace/expand/redirects.py | 136 | CODE | |
| 164 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW⚡ | python/tests/workspace/test_path_axis.py | 229 | except Exception as exc: | CODE |
| LOW | python/tests/e2e/test_snapshot_drift_live.py | 78 | except Exception: | CODE |
| LOW | python/tests/e2e/test_snapshot_drift_live.py | 117 | except Exception: | CODE |
| MEDIUM | python/tests/e2e/test_snapshot_drift_live.py | 75 | def _versioning_enabled() -> bool: | CODE |
| LOW | python/mirage/core/s3/stream.py | 67 | except Exception as exc: | CODE |
| LOW | python/mirage/core/s3/driver.py | 109 | except Exception as exc: | CODE |
| LOW | python/mirage/core/s3/driver.py | 127 | except Exception as exc: | CODE |
| LOW | python/mirage/core/s3/driver.py | 174 | except Exception as exc: | CODE |
| LOW | python/mirage/core/s3/read.py | 92 | except Exception as exc: | CODE |
| LOW | python/mirage/core/chroma/tree.py | 37 | except Exception as exc: | CODE |
| LOW | python/mirage/core/object_store/write.py | 43 | except Exception as exc: | CODE |
| LOW | python/mirage/core/gdrive/resolve.py | 185 | except Exception: | CODE |
| LOW | python/mirage/core/gdrive/readdir.py | 138 | except Exception: | CODE |
| LOW⚡ | python/mirage/core/databricks_volume/write.py | 39 | except Exception as exc: | CODE |
| LOW⚡ | python/mirage/core/databricks_volume/write.py | 45 | except Exception as exc: | CODE |
| LOW | python/mirage/core/databricks_volume/write.py | 81 | except Exception as exc: | CODE |
| LOW | python/mirage/core/databricks_volume/rmdir.py | 54 | except Exception as exc: | CODE |
| LOW | python/mirage/core/databricks_volume/rmdir.py | 62 | except Exception as exc: | CODE |
| LOW | python/mirage/core/databricks_volume/rm.py | 87 | except Exception as exc: | CODE |
| LOW | python/mirage/core/databricks_volume/stream.py | 70 | except Exception as exc: | CODE |
| LOW | python/mirage/core/databricks_volume/mkdir.py | 56 | except Exception as exc: | CODE |
| LOW | python/mirage/core/databricks_volume/stat.py | 61 | except Exception as exc: | CODE |
| LOW | python/mirage/core/databricks_volume/stat.py | 98 | except Exception as exc: | CODE |
| LOW | python/mirage/core/databricks_volume/unlink.py | 48 | except Exception as exc: | CODE |
| LOW | python/mirage/core/databricks_volume/readdir.py | 46 | except Exception as exc: | CODE |
| LOW | python/mirage/core/databricks_volume/readdir.py | 79 | except Exception as exc: | CODE |
| LOW | python/mirage/core/databricks_volume/read.py | 100 | except Exception as exc: | CODE |
| LOW | python/mirage/core/github/search.py | 87 | except Exception as exc: | CODE |
| LOW | python/mirage/cache/file/io.py | 138 | except Exception: | CODE |
| LOW | python/mirage/shell/job_table/table.py | 93 | except Exception as exc: | CODE |
| LOW | python/mirage/accessor/pool.py | 152 | except Exception as exc: | CODE |
| LOW | python/mirage/accessor/pool.py | 179 | except Exception as exc: | CODE |
| LOW | python/mirage/workspace/runner.py | 120 | except Exception: | CODE |
| LOW | python/mirage/workspace/reconcile.py | 130 | except Exception as exc: | CODE |
| LOW | python/mirage/workspace/record/s3.py | 78 | except Exception as exc: | CODE |
| LOW | python/mirage/workspace/record/s3.py | 115 | except Exception as exc: | CODE |
| LOW | python/mirage/workspace/workspace/kernel_mounts.py | 72 | except Exception: | CODE |
| LOW | python/mirage/workspace/workspace/execute.py | 271 | except Exception as exc: | CODE |
| LOW | python/mirage/workspace/dispatcher/dispatcher.py | 503 | except Exception as exc: | CODE |
| LOW | python/mirage/workspace/dispatcher/dispatcher.py | 523 | except Exception as exc: | CODE |
| LOW | python/mirage/workspace/executor/command/run.py | 437 | except Exception as exc: | CODE |
| LOW | python/mirage/workspace/executor/command/cli.py | 371 | except Exception as exc: | CODE |
| LOW | python/mirage/workspace/node/program.py | 206 | except Exception as exc: | CODE |
| LOW | python/mirage/fuse/fs.py | 70 | except Exception as err: | CODE |
| LOW | python/mirage/io/stream.py | 103 | except Exception as exc: | CODE |
| LOW | python/mirage/runtime/python/monty/runtime.py | 299 | except Exception as exc: | CODE |
| LOW | python/mirage/agents/openhands/workspace.py | 191 | except Exception as e: | CODE |
| LOW | python/mirage/agents/openhands/workspace.py | 219 | except Exception as e: | CODE |
| LOW | python/mirage/server/registry.py | 134 | except Exception: | CODE |
| LOW | python/mirage/server/workspace_config.py | 101 | except Exception: | CODE |
| LOW | python/mirage/server/routers/workspaces.py | 76 | except Exception: | CODE |
| LOW | python/mirage/ops/file.py | 223 | except Exception: | CODE |
| MEDIUM | python/mirage/ops/file.py | 220 | def __del__(self) -> None: | CODE |
| LOW | python/mirage/ops/generic/factory.py | 72 | except Exception as exc: | CODE |
| LOW | python/mirage/commands/cli/builtin/himalaya/deliver.py | 130 | except Exception as exc: | CODE |
| LOW | python/mirage/commands/builtin/generic_bind/adapter.py | 517 | except Exception as listing: | CODE |
| LOW | python/mirage/commands/builtin/generic_bind/adapter.py | 527 | except Exception as cascade: | CODE |
| LOW | python/mirage/commands/builtin/generic_bind/adapter.py | 1276 | except Exception: | CODE |
| LOW | python/mirage/commands/builtin/generic_bind/adapter.py | 1285 | except Exception: | CODE |
| LOW | python/mirage/commands/builtin/generic_bind/adapter.py | 1304 | except Exception as exc: | CODE |
| 28 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | python/tests/core/gdrive/conftest.py | 79 | CODE | |
| LOW | python/tests/core/databricks_volume/conftest.py | 163 | CODE | |
| LOW | …s/resource/databricks_volume/test_databricks_volume.py | 165 | CODE | |
| LOW | python/tests/e2e/gdrive_mock.py | 197 | CODE | |
| LOW | python/mirage/core/nextcloud/find.py | 314 | CODE | |
| LOW | python/mirage/core/chroma/grep.py | 13 | CODE | |
| LOW | python/mirage/core/object_store/find.py | 29 | CODE | |
| LOW | python/mirage/core/object_store/find.py | 63 | CODE | |
| LOW | python/mirage/core/redis/find.py | 24 | CODE | |
| LOW | python/mirage/core/onedrive/find.py | 34 | CODE | |
| LOW | python/mirage/core/google/drive.py | 65 | CODE | |
| LOW | python/mirage/core/gdrive/find.py | 24 | CODE | |
| LOW | python/mirage/core/notion/find.py | 49 | CODE | |
| LOW | python/mirage/core/msgraph/client.py | 121 | CODE | |
| LOW | python/mirage/core/msgraph/drive_ops.py | 433 | CODE | |
| LOW | python/mirage/core/ssh/find.py | 27 | CODE | |
| LOW | python/mirage/core/github/find.py | 23 | CODE | |
| LOW | python/mirage/core/history/find.py | 23 | CODE | |
| LOW | python/mirage/core/sharepoint/find.py | 132 | CODE | |
| LOW | python/mirage/core/api/client.py | 255 | CODE | |
| LOW | python/mirage/core/disk/find.py | 34 | CODE | |
| LOW | python/mirage/core/disk/find.py | 154 | CODE | |
| LOW | python/mirage/core/generic/find.py | 160 | CODE | |
| LOW | python/mirage/core/email/search.py | 50 | CODE | |
| LOW | python/mirage/core/ram/find.py | 24 | CODE | |
| LOW | python/mirage/workspace/workspace/workspace.py | 92 | CODE | |
| LOW | python/mirage/workspace/workspace/workspace.py | 890 | CODE | |
| LOW | python/mirage/workspace/workspace/workspace.py | 906 | CODE | |
| LOW | python/mirage/workspace/workspace/workspace.py | 922 | CODE | |
| LOW | …on/mirage/workspace/executor/builtins/declare/local.py | 34 | CODE | |
| LOW | …/mirage/workspace/executor/builtins/declare/declare.py | 57 | CODE | |
| LOW | python/mirage/io/types.py | 127 | CODE | |
| LOW | python/mirage/server/app.py | 80 | CODE | |
| LOW | python/mirage/commands/builtin/generic/tree.py | 245 | CODE | |
| LOW | python/mirage/commands/builtin/generic/fmt.py | 91 | CODE | |
| LOW | python/mirage/commands/builtin/generic/csplit.py | 36 | CODE | |
| LOW | python/mirage/commands/builtin/generic/checksum.py | 263 | CODE | |
| LOW | python/mirage/commands/builtin/generic/shuf.py | 22 | CODE | |
| LOW | python/mirage/commands/builtin/generic/unzip.py | 77 | CODE | |
| LOW | python/mirage/commands/builtin/generic/sort.py | 77 | CODE | |
| LOW | python/mirage/commands/builtin/generic/ls.py | 390 | CODE | |
| LOW | python/mirage/commands/builtin/generic/ls.py | 516 | CODE | |
| LOW | python/mirage/commands/builtin/generic/ls.py | 659 | CODE | |
| LOW | python/mirage/commands/builtin/generic/join.py | 134 | CODE | |
| LOW | python/mirage/commands/builtin/generic/du.py | 596 | CODE | |
| LOW | python/mirage/commands/builtin/generic/uniq.py | 172 | CODE | |
| LOW | python/mirage/commands/builtin/generic/nl.py | 158 | CODE | |
| LOW | python/mirage/commands/builtin/generic/split.py | 183 | CODE | |
| LOW | python/mirage/commands/builtin/generic/find.py | 30 | CODE | |
| LOW | python/mirage/commands/builtin/generic/find.py | 456 | CODE | |
| LOW | python/mirage/commands/builtin/generic/xxd.py | 111 | CODE | |
| LOW | python/mirage/commands/builtin/generic/tar/tar.py | 291 | CODE | |
| LOW | python/mirage/resource/generic.py | 170 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM⚡ | python/tests/workspace/test_execute_options.py | 245 | # ── agent harness pattern ───────────────────────────────────────── | COMMENT |
| MEDIUM⚡ | python/tests/commands/cli/builtin/ntn/test_api.py | 211 | # 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/mirage/runtime/js/quickjs.py | 52 | # 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 | 38 | mgr._access_token = "fake-token" | CODE |
| LOW | python/tests/core/gdrive/conftest.py | 212 | manager._access_token = "fake-token" | CODE |
| LOW | python/tests/core/gdrive/conftest.py | 225 | manager._access_token = "fake-token" | CODE |
| LOW | python/tests/core/gdrive/test_stat.py | 40 | mgr._access_token = "fake-token" | CODE |
| LOW | python/tests/core/gdrive/test_read.py | 49 | mgr._access_token = "fake-token" | CODE |
| LOW | python/tests/core/gdrive/test_readdir.py | 41 | mgr._access_token = "fake-token" | CODE |
| LOW | python/tests/core/gdocs/test_read.py | 38 | 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 | 35 | mgr._access_token = "fake-token" | CODE |
| LOW | python/tests/commands/builtin/gdrive/test_sed.py | 44 | mgr._access_token = "fake-token" | CODE |
| LOW | python/tests/commands/builtin/gdrive/test_read.py | 40 | mgr._access_token = "fake-token" | CODE |
| LOW | …/packages/node/src/runtime/sandbox/ssh/runtime.test.ts | 137 | await writeFile(keyPath, 'fake-key') | CODE |
| LOW | …/packages/node/src/runtime/sandbox/ssh/runtime.test.ts | 146 | privateKey: Buffer.from('fake-key'), | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | python/tests/io/test_sync_bridge.py | 32 | CODE | |
| MEDIUM | …hon/tests/commands/builtin/generic_bind/test_search.py | 163 | CODE | |
| MEDIUM | python/tests/commands/builtin/utils/test_operands.py | 111 | CODE | |
| MEDIUM | python/tests/commands/builtin/generic/test_tee.py | 238 | CODE | |
| MEDIUM | python/tests/commands/builtin/generic/test_checksum.py | 115 | CODE | |
| MEDIUM | python/mirage/io/stream.py | 166 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | python/tests/shell/test_parse.py | 183 | def test_function(): | 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 | 137 | 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 |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | integ/runners/python/adapters.py | 800 | # Sync imaplib is fine here: this is test scaffolding running | COMMENT |
| 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 |
|---|---|---|---|---|
| LOW | typescript/scripts/load-env.sh | 7 | # Usage: | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | examples/python/s3/s3.py | 246 | # Read file to populate cache (cat declares cache, wc materializes) | COMMENT |