Commit 77a3704
FIX: Resolve CI failures from upstream merge with PR #1881 (Pydantic identifiers)
Four related fixes needed to unblock CI after the upstream merge that
brought in PR #1881 (Refactoring Identifiers to be Pydantic classes):
1. `pyrit/models/identifiers/evaluation_identifier.py`:
The merge hoisted `from pyrit.executor.attack.core.attack_strategy
import AttackStrategy` to module level, forming a cycle through
`pyrit.executor.attack` -> `pyrit.message_normalizer` ->
`pyrit.common.data_url_converter` -> `pyrit.models`. Move it back
inside `if TYPE_CHECKING:` (`from __future__ import annotations`
is already enabled, so the string annotation `attack: AttackStrategy`
still resolves at type-check time).
2. `tests/unit/models/identifiers/test_evaluation_identifier.py`:
Add missing blank lines between top-level classes (ruff format) and
replace four `from pyrit.identifiers import ...` lines with
`from pyrit.models.identifiers import ...` (the former is now a
deprecation shim that the static-scan deprecation test forbids
internal callers from using).
3. `pyrit/scenario/scenarios/adaptive/adaptive_scenario.py`:
Mark the three classmethod stubs as `@abstractmethod` so
`inspect.isabstract(AdaptiveScenario)` returns `True` and the
scenario registry's auto-discovery skips it (otherwise the registry
tries to instantiate the abstract base and raises
`NotImplementedError`, breaking `test_load_default_datasets`).
4. `pyrit/scenario/scenarios/adaptive/adaptive_scenario.py` and
`pyrit/scenario/scenarios/adaptive/text_adaptive.py`:
Move `from pyrit.setup.initializers.components.scenario_techniques
import build_scenario_technique_factories` from module level back
into the function body. `scenario_techniques` imports
`pyrit.scenario.core`, which transitively re-imports the adaptive
package during `pyrit.scenario` initialization, so a top-level
import forms a cycle.
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>1 parent 115d1f7 commit 77a3704
4 files changed
Lines changed: 30 additions & 12 deletions
File tree
- pyrit
- models/identifiers
- scenario/scenarios/adaptive
- tests/unit/models/identifiers
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
23 | 23 | | |
24 | 24 | | |
25 | 25 | | |
26 | | - | |
| 26 | + | |
27 | 27 | | |
28 | 28 | | |
29 | 29 | | |
30 | | - | |
31 | 30 | | |
32 | 31 | | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
33 | 35 | | |
34 | 36 | | |
35 | 37 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
17 | 17 | | |
18 | 18 | | |
19 | 19 | | |
| 20 | + | |
20 | 21 | | |
21 | 22 | | |
22 | 23 | | |
| |||
32 | 33 | | |
33 | 34 | | |
34 | 35 | | |
35 | | - | |
36 | | - | |
37 | | - | |
38 | 36 | | |
39 | 37 | | |
40 | 38 | | |
| |||
63 | 61 | | |
64 | 62 | | |
65 | 63 | | |
| 64 | + | |
66 | 65 | | |
67 | 66 | | |
68 | 67 | | |
69 | 68 | | |
70 | 69 | | |
| 70 | + | |
71 | 71 | | |
72 | 72 | | |
73 | 73 | | |
74 | 74 | | |
75 | 75 | | |
| 76 | + | |
76 | 77 | | |
77 | 78 | | |
78 | 79 | | |
| |||
120 | 121 | | |
121 | 122 | | |
122 | 123 | | |
| 124 | + | |
| 125 | + | |
| 126 | + | |
| 127 | + | |
| 128 | + | |
| 129 | + | |
| 130 | + | |
123 | 131 | | |
124 | 132 | | |
125 | 133 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
24 | 24 | | |
25 | 25 | | |
26 | 26 | | |
27 | | - | |
28 | | - | |
29 | | - | |
30 | 27 | | |
31 | 28 | | |
32 | 29 | | |
| |||
48 | 45 | | |
49 | 46 | | |
50 | 47 | | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
51 | 55 | | |
52 | 56 | | |
53 | 57 | | |
| |||
Lines changed: 8 additions & 4 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
585 | 585 | | |
586 | 586 | | |
587 | 587 | | |
| 588 | + | |
588 | 589 | | |
589 | 590 | | |
590 | 591 | | |
| |||
597 | 598 | | |
598 | 599 | | |
599 | 600 | | |
600 | | - | |
| 601 | + | |
601 | 602 | | |
602 | 603 | | |
603 | 604 | | |
| |||
615 | 616 | | |
616 | 617 | | |
617 | 618 | | |
618 | | - | |
| 619 | + | |
619 | 620 | | |
620 | 621 | | |
621 | 622 | | |
| |||
626 | 627 | | |
627 | 628 | | |
628 | 629 | | |
629 | | - | |
| 630 | + | |
630 | 631 | | |
631 | 632 | | |
632 | 633 | | |
| |||
636 | 637 | | |
637 | 638 | | |
638 | 639 | | |
639 | | - | |
640 | 640 | | |
641 | 641 | | |
| 642 | + | |
642 | 643 | | |
643 | 644 | | |
644 | 645 | | |
| |||
654 | 655 | | |
655 | 656 | | |
656 | 657 | | |
| 658 | + | |
| 659 | + | |
657 | 660 | | |
658 | 661 | | |
659 | 662 | | |
| |||
864 | 867 | | |
865 | 868 | | |
866 | 869 | | |
| 870 | + | |
867 | 871 | | |
868 | 872 | | |
869 | 873 | | |
| |||
0 commit comments