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
## Summary
v2.5.5 Phase 2 — turns the four foundation modules (#102 test_context,
#105 comment_marker, #106 ffi_kind, #107 jit_context) into actual FP
reduction by wiring them into the report-post-processing pipeline.
## What this does
New `apply_v255_context_suppression(&mut report)` in
`src/assail/mod.rs`, called automatically from `apply_suppression` AFTER
the kanren-based rule pass.
Per-finding logic:
1. **Marker suppression** — `panic-attack: accepted` on the same or
preceding line → `suppressed = true`
2. **PanicPath in test/doc** — TestContext::TestOnly / Doc → `suppressed
= true`
3. **UnsafeFFI in build/test** — FfiKind::BuildSystem / TestMock →
`suppressed = true`
Sets `WeakPoint.test_context` for **every** finding (even
non-suppressible ones) so audit consumers can render classification
metadata.
## What this PR does NOT do
- **JitContext wire-up** — the analyzer's inline Cranelift check at
`src/assail/analyzer.rs:1117..1129` already works correctly;
consolidating it with `classify_rust()` is a code-cleanup follow-up, not
an FP reducer.
- **Block-comment markers** (`/* ... */`, `{- ... -}`) — line comments
cover the common case.
- **Dedicated "comment-only review" WeakPointCategory** — ROADMAP item 3
of 4 for `comment_analysis`; deferred per the semantic-mismatch analysis
in PR #107.
## Verification
- `cargo build --release`: clean (default features)
- `cargo build --release --features http`: clean
- `cargo test --release --lib`: **359 pass / 0 fail** (353 baseline + 6
new)
- Tests cover: test-file PanicPath suppression, prod-file pass-through,
build.zig UnsafeFFI suppression, bindings/ pass-through, filesystem
marker scanning, already-suppressed not-recounted.
## Refs
- ROADMAP.adoc v2.5.5
- PRs #102#105#106#107 (foundation modules)
- PROOF-PROGRAMME.md (Layer 1.0 strip-idempotence will formally justify
the comment-stripping that marker scanning depends on)
0 commit comments