Repository navigation
community_12_modules_defense_eval
grisun0 edited this page Oct 25, 2026
·
2 revisions
Community 12 | 8 files | cohesion 0.64
This community groups 8 file(s) rooted at modules with dominant language py (cohesion 0.64). Central symbols: Comparison, Condition, DatasetSummary, Evaluation, EventRecord, Observation, RuleEvaluationError, RuleMetrics. Core file: modules/defense_eval.py (17 symbols). Documented purpose: Closed-loop detection rule tuning: baseline vs candidate comparison. Given a baseline rule and a candidate rule plus the same attack (target) and benign (contr.
| File | Language | Layer | Symbols | Doc |
|---|---|---|---|---|
modules/closedloop.py |
py | utility | 7 | yes |
modules/defense_eval.py |
py | utility | 17 | yes |
modules/defense_stages.py |
py | utility | 11 | yes |
modules/hunt_verify.py |
py | utility | 16 | yes |
tests/test_closedloop.py |
py | testing | 6 | yes |
tests/test_defense_eval.py |
py | testing | 10 | yes |
tests/test_defense_stages.py |
py | testing | 8 | yes |
tests/test_hunt_verify.py |
py | testing | 12 | yes |
-
RuleMetrics(class,modules/closedloop.py:32)class RuleMetrics- Confusion-style metrics for one replayed rule. -
to_dict(method,modules/closedloop.py:42)def to_dict(self)- Return a JSON-serializable view. -
Comparison(class,modules/closedloop.py:55)class Comparison- Outcome of comparing a candidate rule against a baseline. -
to_dict(method,modules/closedloop.py:66)def to_dict(self)- Return a JSON-serializable view. -
_metrics_for(function,modules/closedloop.py:77)def _metrics_for(result)- Convert one replay result into confusion-style metrics. -
compare_rules(function,modules/closedloop.py:90)def compare_rules(baseline_rule, candidate_rule, target_logs, control_logs)- Replay baseline and candidate rules over identical datasets. -
suggest_tuning(function,modules/closedloop.py:136)def suggest_tuning(candidate, baseline)- Return deterministic tuning suggestions from replay evidence. -
RuleEvaluationError(class,modules/defense_eval.py:39)class RuleEvaluationError(ValueError)- Raised when rule text or log data is invalid or oversized. -
Condition(class,modules/defense_eval.py:44)class Condition- One rule condition: field, operator and expected value. -
Evaluation(class,modules/defense_eval.py:53)class Evaluation- Outcome of applying the rule to one event. -
to_dict(method,modules/defense_eval.py:62)def to_dict(self)- Return a JSON-serializable view. -
DatasetSummary(class,modules/defense_eval.py:74)class DatasetSummary- Per-dataset match counts. -
to_dict(method,modules/defense_eval.py:82)def to_dict(self)- Return a JSON-serializable view. -
RuleResult(class,modules/defense_eval.py:93)class RuleResult- Verdict of one rule replay across target and control datasets. -
to_dict(method,modules/defense_eval.py:103)def to_dict(self)- Return a JSON-serializable view. -
parse_rule(function,modules/defense_eval.py:115)def parse_rule(rule_text)- Parse the rule JSON document into a condition list. -
_lookup(function,modules/defense_eval.py:167)def _lookup(fields, field_name)- Resolve one field: root dotted key first, then nested traversal. -
_canonical_number(function,modules/defense_eval.py:179)def _canonical_number(value)- Normalize a decimal literal so 1, 1.0 and 10e-1 compare equal. -
_compare(function,modules/defense_eval.py:194)def _compare(actual, expected, op)- Compare one field value; returns (matched, evaluable). -
_scalar_present(function,modules/defense_eval.py:223)def _scalar_present(value)- Return whether one JSON value is a present scalar. -
evaluate_event(function,modules/defense_eval.py:234)def evaluate_event(conditions, fields)- Apply every condition to one event. -
_parse_logs(function,modules/defense_eval.py:269)def _parse_logs(text, dataset, max_events)- Parse one log dataset as JSON array or JSON lines. -
evaluate_rule(function,modules/defense_eval.py:322)def evaluate_rule(rule_text, target_logs, control_logs)- Replay one rule against target and control datasets. -
metrics(function,modules/defense_eval.py:380)def metrics(result)- Return tp/fn/fp/tn metrics for one replay result. -
_activity(function,modules/defense_stages.py:28)def _activity(task_id)- Return the task activity log, or a no-op stub. -
_Stub(class,modules/defense_stages.py:35)class _Stub -
emit(method,modules/defense_stages.py:36)def emit(self)- Swallow emissions when no activity log exists. -
_params(function,modules/defense_stages.py:42)def _params(stage)- Return one stage's resolved parameters. -
_render(function,modules/defense_stages.py:52)def _render(value, task_id)- Render the{task}placeholder in one path template. -
_read_text(function,modules/defense_stages.py:57)def _read_text(path)- Return one file's text or an empty string when absent.
- Internal resolved imports (EXTRACTED): 9
- Cross-boundary resolved imports (EXTRACTED): 7
- No cross-community bridges recorded. This community is self-contained.
- [cycle]
modules/orchestrator_config.py->modules/auto_registry.py->modules/lazy_orchestrator_feedback.py->modules/lazy_intel.py->modules/mediation/__init__.py->modules/mediation/chain_mediator.py->modules/lazy_loop.py->modules/defense_stages.py->modules/orchestrator_config.py
- Can the cycle
modules/orchestrator_config.py->modules/auto_registry.py->modules/lazy_orchestrator_feedback.py->modules/lazy_intel.py->modules/mediation/__init__.py->modules/mediation/chain_mediator.py->modules/lazy_loop.py->modules/defense_stages.pybe broken with an interface? - What would break if the most connected file in modules: defense_eval changed?
- Should modules: defense_eval be split, given cohesion 0.64?
Generated offline by readmenator from commit d752caa6305d. Edits here are overwritten by readmenator . --rebuild.
Start
Wiki
- community_0_modules_autonomous_daemon
- community_10_core
- community_11_modules_opsec_scorer
- community_12_modules_defense_eval
- community_13_modules_kerberos_core
- community_14_modules_saas_attacks
- community_15_modules_polymorphic_engine
- community_16_modules_guardrails
- community_17_contrib_legacy
- community_18_tests
- community_19_scripts_journal
- community_1_cli_commands
- community_20_modules_backdoor
- community_21_poc_tui
- community_22_scripts_check_contract_manifest
- community_23_scripts_migrate_lazyown
- community_24_tools
- community_25_orphans
- community_2_cli
- community_3_modules_lazy_loop
- community_4_modules_world_model
- community_5_lazygui_panels
- community_6_lazyc2_security
- community_7_modules_lazyown_facts
- community_8_static_js
- community_9_skills_claude_md_orchestrator
- concepts
- queries
- REPORT
Agent Docs
- API
- API_p10
- API_p11
- API_p12
- API_p13
- API_p14
- API_p15
- API_p16
- API_p17
- API_p18
- API_p19
- API_p2
- API_p20
- API_p21
- API_p22
- API_p23
- API_p24
- API_p3
- API_p4
- API_p5
- API_p6
- API_p7
- API_p8
- API_p9
- ARCHITECTURE
- ARCHITECTURE_p2
- ARCHITECTURE_p3
- ARCHITECTURE_p4
- ARCHITECTURE_p5
- ARCHITECTURE_p6
- ARCHITECTURE_p7
- ARCHITECTURE_p8
- ARCHITECTURE_p9
- CONCEPTS
- GOTCHAS
- INDEX
- INDEX_p2
- INDEX_p3
- KB_backdoor
- KB_blueprints
- KB_cgi-bin
- KB_claude_md_orchestrator
- KB_cli
- KB_cli_p2
- KB_cli_p3
- KB_cli_p4
- KB_cli_p5
- KB_commands
- KB_commands_p2
- KB_commands_p3
- KB_commands_p4
- KB_config
- KB_contract
- KB_core
- KB_core_p2
- KB_devtools
- KB_extensions
- KB_guardrails
- KB_hermes-lazyown
- KB_integrations
- KB_js
- KB_js_p2
- KB_js_p3
- KB_js_p4
- KB_lazyc2
- KB_lazygui
- KB_lazyown-docker
- KB_legacy
- KB_legacy_p2
- KB_mediation
- KB_misc
- KB_modules
- KB_modules_p10
- KB_modules_p11
- KB_modules_p12
- KB_modules_p13
- KB_modules_p14
- KB_modules_p15
- KB_modules_p16
- KB_modules_p2
- KB_modules_p3
- KB_modules_p4
- KB_modules_p5
- KB_modules_p6
- KB_modules_p7
- KB_modules_p8
- KB_modules_p9
- KB_modules_tools
- KB_palettes
- KB_panels
- KB_plugins
- KB_poc_tui
- KB_root
- KB_root_p2
- KB_rootkit
- KB_scripts
- KB_security
- KB_services
- KB_sinks
- KB_skills
- KB_skills_claude_md_orchestrator_tests
- KB_skills_p2
- KB_skills_p3
- KB_skills_p4
- KB_skills_p5
- KB_skills_tests
- KB_tests
- KB_tests_p10
- KB_tests_p11
- KB_tests_p12
- KB_tests_p13
- KB_tests_p14
- KB_tests_p15
- KB_tests_p16
- KB_tests_p17
- KB_tests_p18
- KB_tests_p19
- KB_tests_p2
- KB_tests_p20
- KB_tests_p3
- KB_tests_p4
- KB_tests_p5
- KB_tests_p6
- KB_tests_p7
- KB_tests_p8
- KB_tests_p9
- KB_theme
- KB_tools
- KB_widgets
- KB_win_rootkit
- KB_windows
- MEMORY
- SECURITY
- SYMBOLS
- SYMBOLS_p10
- SYMBOLS_p11
- SYMBOLS_p12
- SYMBOLS_p13
- SYMBOLS_p14
- SYMBOLS_p15
- SYMBOLS_p16
- SYMBOLS_p17
- SYMBOLS_p18
- SYMBOLS_p19
- SYMBOLS_p2
- SYMBOLS_p20
- SYMBOLS_p21
- SYMBOLS_p22
- SYMBOLS_p23
- SYMBOLS_p24
- SYMBOLS_p25
- SYMBOLS_p26
- SYMBOLS_p27
- SYMBOLS_p28
- SYMBOLS_p29
- SYMBOLS_p3
- SYMBOLS_p30
- SYMBOLS_p31
- SYMBOLS_p32
- SYMBOLS_p33
- SYMBOLS_p34
- SYMBOLS_p35
- SYMBOLS_p36
- SYMBOLS_p37
- SYMBOLS_p38
- SYMBOLS_p39
- SYMBOLS_p4
- SYMBOLS_p40
- SYMBOLS_p41
- SYMBOLS_p42
- SYMBOLS_p43
- SYMBOLS_p44
- SYMBOLS_p45
- SYMBOLS_p5
- SYMBOLS_p6
- SYMBOLS_p7
- SYMBOLS_p8
- SYMBOLS_p9
Recipes