(self, patch: Optional[Dict[str, Any]])
| 4177 | } |
| 4178 | |
| 4179 | def _merge_request_fingerprint(self, patch: Optional[Dict[str, Any]]): |
| 4180 | if not isinstance(patch, dict) or not patch: |
| 4181 | return |
| 4182 | current = self.get_request_fingerprint() or {} |
| 4183 | merged = dict(current) |
| 4184 | for key, value in patch.items(): |
| 4185 | if value is None: |
| 4186 | continue |
| 4187 | if isinstance(value, str): |
| 4188 | normalized = value.strip() |
| 4189 | if not normalized: |
| 4190 | continue |
| 4191 | merged[key] = normalized |
| 4192 | else: |
| 4193 | merged[key] = value |
| 4194 | self._set_request_fingerprint(merged if merged else None) |
| 4195 | |
| 4196 | async def _notify_browser_captcha_error( |
| 4197 | self, |
no test coverage detected