You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
## What
You sent the Hypatia scan artifact, so I triaged the **43 findings (5
critical, 8 high, 30 medium)** and fixed the unambiguous ones at source.
**Most important first: the 4 "critical secret" findings are FALSE
POSITIVES** — placeholder env-var examples in docs (`sk-...`,
`sk-ant-...`, `your-key-here`) that match the OpenAI/Anthropic
key-prefix regex. **No real secret is leaked.**
## Fixed in this PR (confident, source-level)
| Finding | Sev | Fix |
|---|---|---|
| `secret_detected` ×3 — installation.md | crit | placeholders →
`<your-openai-key>` / `<your-anthropic-key>` |
| `structural_drift/SD007` ×3 — CLAUDE.md | med | `STATE.scm…` → current
`.a2ml` paths |
| `missing_timeout_minutes` — push-email-notify.yml | med | direct job →
added `timeout-minutes: 5` (it's not a reusable-caller, so fixed not
exempted) |
| `coq_axiom` ×15 — ResourceAlgebra.v | med | FALSE POSITIVE (Coq
`Module Type` interface fields, not kernel axioms) → exempted in
`.hypatia-ignore` with rationale |
## Honest scope — what's NOT here, and why
I **cannot run Hypatia in this environment** (no Elixir; network locked
to the 5 repos), so I can't verify that a given edit actually clears a
given finding. I only included changes I'm confident about by
inspection. The rest of the issue-#34 backlog needs the tool in the
loop:
- **High-volume code findings** — `expect_in_hot_path` (157 in
`src/parser.rs`, 5 in my-mir, …) and `unwrap_without_check` (26 in
my-fmt, 3 in my-llvm, 2 in my-lint, 1 in my-hir). Real, but fixing 190+
sites blind and hoping each clears (and doesn't just move
`unwrap`→`expect`, which is a *different* rule) is not reliable. Needs a
verifiable burndown.
- **`transmute` / `unsafe_block` (my-llvm)** — almost certainly
necessary FFI; want a `// SAFETY:` review, not a blind edit.
- **Meta findings** — `code_scanning_alerts/CSA00x` (≈13; they flag the
*age* of existing alerts, self-resolving) and `git_state/GS007` (counts
non-main remote branches — these very PR branches). Not code-fixable in
a PR; `.hypatia-ignore`'s path-fragment format can't cleanly scope them
either.
- **`structural_drift/SD022` ×5** — docs referencing renamed dirs
(`src/hir/`→`crates/my-hir`, …); fixable but I'd be guessing the
intended current paths.
**Recommendation for the remainder:** with Hypatia runnable locally, do
a verifiable burndown of the code findings; for the meta/age findings,
either resolve the underlying alerts or accept them in
`.hypatia-baseline.json` (its purpose). I didn't blanket-baseline
because the repo's discipline is fix-don't-suppress, and baselining
critical/security findings blind would be wrong.
🤖 Generated with [Claude Code](https://claude.com/claude-code)
https://claude.ai/code/session_01BwV2DWsjkBiNP3oscimMLV
---
_Generated by [Claude
Code](https://claude.ai/code/session_01BwV2DWsjkBiNP3oscimMLV)_
---------
Co-authored-by: Claude <noreply@anthropic.com>
0 commit comments