Fastly module 3.0.0

Breaking Changes

  • Add static_asset_exclusion pattern to the datadome_patterns table (enabled by default): extracts static-asset extensions into a dedicated pattern
    • Add gz, xml, and zip to the default list in static_asset_exclusion
    • Change url_pattern_exclusion pattern to only hold custom URL exclusions
  • Add remove_matrix_params setting to the datadome_settings table (enabled by default): ignores matrix parameters during URL evaluation for excluded patterns (RFC 3986)
  • Add encoded_char_inclusion pattern to the datadome_patterns table (enabled by default): inspects static-looking paths carrying an encoded delimiter (defaults to %23 %25 %2f %3b %3f and can be customized)
  • Add server_side_key, enable_referrer_restoration (renamed from datadome_restore_referrer), enable_graphql_support, enable_mcp_support, and enable_replay_protection to the datadome_settings table, centralizing the DataDome key and optional-feature toggles previously hardcoded in init.vcl or enabled by uncommenting VCL blocks in recv.vcl
  • Remove the deprecated handleCustomFields subroutine, use handle_custom_fields for custom enrichment fields instead

Other Changes

  • Add support for configuring multiple GraphQL and MCP endpoint paths with regex patterns
  • Remove hard-coded status codes in favor of DataDome Protection API response headers, enabling seamless support for upcoming features