Repository navigation
v4.2.0
guard-core 3.13.0 compatibility: call_next bypass contract, bounded body readers, behavior-scan lockstep.
- Fixed: guard-core 3.12.0 (30f43944) made BypassHandler.handle_passthrough and handle_security_bypass require a call_next callable, so calls without it raised TypeError on every request and cascaded to 500. DjangoAPIGuard.call now builds a wrapped_call_next closure over self.get_response(request) and passes it to both bypass methods. Django can supply a real downstream callable because its middleware exposes get_response.
- Added: DjangoGuardRequest/DjangoGuardResponse.read_body_prefix(max_bytes) implement guard-core 3.12.0 SyncBoundedBodyReader/SyncBoundedResponseBodyReader protocols (StreamingHttpResponse returns b"").
- Fixed (tests): behavior_scan_response_body fixture, detection-cache seam patch (utils.detect_penetration_attempt), VALID_CLOUD_PROVIDERS expansion, honeypot read_body_prefix, --cov-branch enforced.
- Compatibility: requires guard-core 3.13.0. No public API change.
See CHANGELOG.md for full details.