anti
3d00de8fd3
refactor(db): split attackers.py into an attackers/ subpackage
Splits the 494-line attackers.py into five submixin files plus a
composing AttackersMixin in attackers/__init__.py:
_core.py (~95) Attacker CRUD + _deserialize_attacker
behavior.py (~110) AttackerBehavior + _deserialize_behavior
sessions.py (~50) SessionProfile read/write
smtp.py (~70) SmtpTarget per-attacker + cross-attacker views
activity.py (~190) log-derived activity (commands, leaks,
artifacts, stored mail, session log, transcripts)
IdentitiesMixin.list_observations_for_identity calls
self._deserialize_attacker; MRO resolves it onto AttackersCoreMixin
through the composed SQLModelRepository class.
2026-04-28 15:46:28 -04:00
..
2026-04-28 15:46:28 -04:00
2026-04-28 15:16:42 -04:00
2026-04-28 15:11:14 -04:00
2026-04-28 14:50:01 -04:00
2026-04-28 14:40:36 -04:00
2026-04-28 14:43:49 -04:00
2026-04-28 14:46:39 -04:00
2026-04-28 15:07:39 -04:00
2026-04-28 14:55:52 -04:00
2026-04-28 15:00:04 -04:00
2026-04-28 14:45:15 -04:00
2026-04-28 14:50:01 -04:00
2026-04-28 15:07:39 -04:00
2026-04-28 14:51:35 -04:00
2026-04-28 14:54:20 -04:00
2026-04-28 14:52:59 -04:00
2026-04-28 14:42:58 -04:00
2026-04-28 14:47:42 -04:00