pdftract/notes/bf-pxdn0.md
jedarden cccbbc2485 feat(bf-pxdn0): add SSRF_BLOCKED helper function signature
- Add standalone is_ssrf_blocked() function to mcp_helpers module
- Function accepts JsonRpcError reference and returns bool (stub returning false)
- Added comprehensive documentation with usage examples
- Located in TH-05-ssrf-block.rs after is_ssrf_blocked_error() function
- Verification: notes/bf-pxdn0.md

Closes bf-pxdn0
2026-07-06 17:58:10 -04:00

1.8 KiB

Bead bf-pxdn0: Add SSRF_BLOCKED helper function signature

Summary

Added a standalone helper function is_ssrf_blocked() to the mcp_helpers module in the TH-05 SSRF test file. The function accepts a JsonRpcError reference and returns a boolean.

Implementation

File Modified: /home/coding/pdftract/crates/pdftract-core/tests/TH-05-ssrf-block.rs

Function Added:

pub fn is_ssrf_blocked(error: &JsonRpcError) -> bool {
    // Stub implementation - returns false for now
    // TODO: Implement proper SSRF_BLOCKED detection logic
    false
}

Location: Added after the is_ssrf_blocked_error() function (around line 754) in the mcp_helpers module.

Acceptance Criteria Status

  • PASS: Function exists with correct signature accepting JsonRpcError reference
  • PASS: Function returns bool type
  • PASS: Function compiles successfully (verified with cargo check --tests -p pdftract-core)
  • PASS: Function is a stub that returns false

Notes

  • The function is added as a standalone helper in the mcp_helpers module (line 754-770)
  • It follows the same pattern as other helper functions in the module (e.g., is_ssrf_blocked_error())
  • The function is well-documented with comprehensive doc comments including usage examples
  • This provides a clean API for checking SSRF errors separate from the method on JsonRpcError itself
  • The implementation is intentionally left as a stub (returns false) as specified in the acceptance criteria

Testing

The code compiles successfully without any errors. The function signature matches the requirements exactly and can be called with a JsonRpcError reference:

let error = JsonRpcError { /* ... */ };
if is_ssrf_blocked(&error) {
    // Handle SSRF blocked case
}