fix: security hardening#3
Conversation
Greptile SummaryThis PR hardens the project across three layers: (1) Key changes:
Confidence Score: 4/5Safe to merge with two non-blocking P2 style fixes remaining The core security improvements (HTML XSS escaping, secret masking, SHA-pinned CI actions, cargo-deny) are all correct and well-implemented. The only gaps are the unpinned dtolnay/rust-toolchain action in both workflow files and the minio:latest image tag in the compose generator — both are P2 style issues that do not block merge. .github/workflows/ci.yml and .github/workflows/release.yml (unpinned dtolnay/rust-toolchain action); src/generate/compose.rs (minio:latest tag) Important Files Changed
Flowchart%%{init: {'theme': 'neutral'}}%%
flowchart TD
A[run_doctor] --> B{dep.category}
B -->|EnvVar| C[check_env_var]
C --> D{is_secret_name?}
D -->|yes| E[display: 'set *****']
D -->|no, len > 30| F[display: truncated...]
D -->|no, short val| G[display: 'set val']
B -->|Binary| H[check_binary via which]
B -->|Port| I[check_port]
I --> J{direction}
J -->|listen| K[TcpListener::bind 127.0.0.1:port]
J -->|connect| L[TcpStream::connect_timeout 127.0.0.1:port]
B -->|Network| M[check_network DNS + TCP]
B -->|Filesystem| N[Path::exists]
|
No description provided.