Use explicit PDF phrases as extra methodology hints.
(profile: Dict[str, Any], result: Dict[str, Any])
| 406 | seeded = min(PDF_DIRECTION_WEIGHT_CAP, incoming * new_direction_scale, new_direction_cap) |
| 407 | return round(seeded, 4) |
| 408 | |
| 409 | |
| 410 | def _apply_full_text_methodology_hints(profile: Dict[str, Any], result: Dict[str, Any]) -> None: |
| 411 | """Use explicit PDF phrases as extra methodology hints.""" |
| 412 | full_text = (result.get("full_text") or "").lower() |
| 413 | |
| 414 | if any(keyword in full_text for keyword in ("dataset", "data-driven", "empirical", "experiment", "benchmark")): |
| 415 | profile["methodology_preferences"]["preference_data_driven_over_theory"] = True |
| 416 | |
| 417 | if any(keyword in full_text for keyword in ("framework", "system", "comprehensive", "benchmark", "pipeline", "platform")): |
| 418 | profile["methodology_preferences"]["preference_systematic_work_over_incremental"] = True |
| 419 | |
| 420 | if any(keyword in full_text for keyword in ("github", "open source", "code available", "code release")): |
| 421 | profile["methodology_preferences"]["preference_open_source_code"] = True |
| 422 | |
| 423 | if any(keyword in full_text for keyword in ("bio", "protein", "molecular", "drug", "scientific", "computational biology")): |
| 424 | profile["methodology_preferences"]["preference_bio_science_application"] = True |
| 425 |
no test coverage detected