From ccc13291b2401fedffabcb369308018ae285610c Mon Sep 17 00:00:00 2001 From: XiaoSeS <87064762+XiaoSeS@users.noreply.github.com> Date: Thu, 3 Sep 2026 18:35:56 +0800 Subject: [PATCH] fix(scanner): keep failure details private Signed-off-by: XiaoSeS <87064762+XiaoSeS@users.noreply.github.com> --- docs/security-scanning.md | 2 +- .../java/com/iflytek/skillhub/stream/ScanTaskConsumer.java | 4 +++- .../skillhub/stream/ScanTaskConsumerLoggingTest.java | 7 +++++++ 3 files changed, 11 insertions(+), 2 deletions(-) diff --git a/docs/security-scanning.md b/docs/security-scanning.md index 74e39f29..e5e09d5d 100644 --- a/docs/security-scanning.md +++ b/docs/security-scanning.md @@ -138,7 +138,7 @@ Response fields include: - scan task retries are handled by `AbstractStreamConsumer` - scanner connection failures, HTTP 429, and HTTP 5xx remain pending for automatic recovery - unavailable tasks older than `max-unavailable-age` are marked `SCAN_FAILED`, acknowledged, and removed from the Redis Stream -- the timeout is evaluated on the pending reclaim cadence, so terminal handling can occur up to one `reclaim-interval` after the configured age +- the timeout is evaluated during pending reclaim; terminal handling can occur roughly one `reclaim-min-idle` plus one `reclaim-interval` after the configured age - terminal failures retain a failure reason in the security audit response for operators and authorized users - other final failures mark the version as `SCAN_FAILED` after retry exhaustion - even after scan failure, a review task is still created so the package does not get stuck forever diff --git a/server/skillhub-app/src/main/java/com/iflytek/skillhub/stream/ScanTaskConsumer.java b/server/skillhub-app/src/main/java/com/iflytek/skillhub/stream/ScanTaskConsumer.java index ff0e12e2..548b28be 100644 --- a/server/skillhub-app/src/main/java/com/iflytek/skillhub/stream/ScanTaskConsumer.java +++ b/server/skillhub-app/src/main/java/com/iflytek/skillhub/stream/ScanTaskConsumer.java @@ -131,11 +131,13 @@ public class ScanTaskConsumer extends AbstractStreamConsumer