PyPI / ty / 0.0.90

ty 0.0.90

Source
https://github.com/astral-sh/ty
Tag scanned
0.0.90
Compared with
0.0.89 (1 signals introduced since)
Files
40 scanned, 30 skipped (binary, oversized, or unrecognised)
Signals
0 critical · 0 warn · 7 info
Scan time
9.5 s
LLM review
Reviewed by claude-haiku-5-5 (Anthropic): 7 of 7 warn and critical signals; 7 demoted to info.
Disclude version
4.0.0
Scanned (UTC)
2026-10-21 09:41

Signals

Ordered by severity, then signals introduced in this release. Hidden characters are shown as ⟨U+…⟩.

  1. info warn → info by review dynamic-execution docs/installation.md:74:5 new in this release

    [markup prose] pipeline feeds into `sh` — piped data is executed as shell code (ast pass, confidence 0.80)

        $ curl -LsSf https://astral.sh/ty/0.0.90/install.sh | sh
    likely benign LLM, confidence 0.80 Documented version-pinned curl | sh installer command for ty 0.0.90.
    Reasoning

    Pins a specific version (0.0.90) in the official astral.sh install URL. This is a normal versioned install instruction, and the pipe-to-shell form is the vendor's documented method.

  2. info warn → info by review unicode-mixed-script README.md:102:36

    identifier `tiː` mixes scripts: Latin + Other (raw pass, confidence 0.80)

    
    It's pronounced as "tee - why" ([`/tiː waɪ/`]https://en.wikipedia.org/wiki/Help:IPA/English#Key)
    
    #### How should I stylize ty?
    dismissed LLM, confidence 0.95 IPA pronunciation notation in the README's prose about how to say the project name.
    Reasoning

    The flagged characters are IPA phonetic symbols in a markdown pronunciation guide. Mixing Latin with IPA letters is expected in linguistic prose, and the raw pass is known for false positives on text like this.

  3. info warn → info by review unicode-mixed-script README.md:102:41

    identifier `waɪ` mixes scripts: Latin + Other (raw pass, confidence 0.80)

    
    It's pronounced as "tee - why" ([`/tiː waɪ/`]https://en.wikipedia.org/wiki/Help:IPA/English#Key)
    
    #### How should I stylize ty?
    dismissed LLM, confidence 0.95 IPA symbol 'waɪ' in the README pronunciation line, flagged as mixed script.
    Reasoning

    Same IPA pronunciation string as the neighbouring finding (/tiː waɪ/). It is ordinary documentation text with no code execution or hidden content.

  4. info warn → info by review dynamic-execution docs/installation.md:62:5

    [markup prose] pipeline feeds into `sh` — piped data is executed as shell code (ast pass, confidence 0.80)

        $ curl -LsSf https://astral.sh/ty/install.sh | sh
    likely benign LLM, confidence 0.80 Documented one-line curl | sh installer command for the ty tool.
    Reasoning

    This is the documented curl-to-sh install command for Astral's ty tool, served over HTTPS from the vendor's domain. Pipe-to-shell is a supply-chain risk in general, but here it is a legitimate, documented install method in a docs file, not hidden or obfuscated.

  5. info warn → info by review dynamic-execution docs/installation.md:68:5

    [markup prose] pipeline feeds into `sh` — piped data is executed as shell code (ast pass, confidence 0.80)

        $ wget -qO- https://astral.sh/ty/install.sh | sh
    likely benign LLM, confidence 0.80 Documented wget | sh alternative install command for the ty tool.
    Reasoning

    Same documented installer pattern, using wget piped to sh against the same official astral.sh install script. It is a standard install instruction in prose documentation.

  6. info warn → info by review encoding-base64 docs/reference/editor-settings.md:649:40

    base64-like blob (68 bytes, compression ratio 1.16) (raw pass, confidence 0.60)

    This setting is useful for debugging issues with the language server. Refer to the [troubleshooting
    guide](https://github.com/astral-sh/ty-vscode/blob/6cf16b4e87342a49f2bec1310a730cde8229e1d9/TROUBLESHOOTING.md)
    in [ty's VS Code extension][ty-vscode] for more information.
    dismissed LLM, confidence 0.90 A GitHub commit hash inside a documentation hyperlink, flagged as a base64-like blob.
    Reasoning

    The matched text is a GitHub commit URL path, a 40-character hex hash in a link. Hex in URLs is misclassified as base64-like, and the content is a plain documentation link.

  7. info critical → info by review dynamic-execution scripts/release.sh:75:1

    command name is a variable (`$script_root`) and `script_root` is assigned the output of a command — executed command determined at runtime (ast pass, confidence 0.90)

    
    "${script_root}/autogenerate_files.sh"
    git add ./docs/reference ./rust-toolchain.toml
    likely benign LLM, confidence 0.75 Release script runs autogenerate_files.sh via a path built from a script_root variable inside the repository.
    Reasoning

    The command is a sibling script path built from a script_root variable, which almost certainly comes from a standard dirname or cd/pwd resolution of the script's own directory. The subsequent git add lines show a normal release workflow. The shown code is not obfuscated, but the assignment of script_root is not visible, so a small doubt remains.

Reproduce This Scan

Run disclude locally to verify. Add --format sarif for SARIF output. Add --llm (with an API key in the environment) to include the LLM review.

cargo install disclude --version 4.0.0
git clone https://github.com/astral-sh/ty ty && cd ty
git checkout 0.0.90
disclude scan --severity info --diff 0.0.89 .