-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathPanicAttackModule.affine
More file actions
69 lines (62 loc) · 1.8 KB
/
Copy pathPanicAttackModule.affine
File metadata and controls
69 lines (62 loc) · 1.8 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
// SPDX-License-Identifier: AGPL-3.0-or-later
// Copyright (c) 2026 Jonathan D.A. Jewell
//
// PanicAttackModule.affine — capability declarations for the stress
// testing and weak point analysis panel.
//
// Translation of src/modules/PanicAttackModule.res (63 LoC). Same shape.
//
// Refs: standards#279, standards#252.
module PanicAttackModule;
use prelude::{Option, Some, None, contains};
type PanicAttackCapability =
| StaticAnalysis
| StressTesting
| BugSignatureDetection
| ReportGeneration
| ReportComparison
| BatchScanning
| SarifExport
| EventChainExport
type PanicAttackModuleConfig = {
id: String,
name: String,
version: String,
description: String,
binaryName: String,
capabilities: [PanicAttackCapability],
icon: Option<String>,
}
const config: PanicAttackModuleConfig = #{
id: "panic-attack",
name: "panic-attack",
version: "2.0.0",
description: "Universal stress testing and logic-based bug signature detection",
binaryName: "panic-attack",
icon: Some("zap"),
capabilities: [
StaticAnalysis,
StressTesting,
BugSignatureDetection,
ReportGeneration,
ReportComparison,
BatchScanning,
SarifExport,
EventChainExport,
],
};
fn hasCapability(cap: PanicAttackCapability) -> Bool {
contains(config.capabilities, cap)
}
fn capabilityLabel(cap: PanicAttackCapability) -> String {
match cap {
StaticAnalysis => "Static Analysis (assail)",
StressTesting => "Stress Testing (attack/assault)",
BugSignatureDetection => "Bug Signature Detection (kanren)",
ReportGeneration => "Report Generation (JSON/YAML/SARIF)",
ReportComparison => "Report Comparison (diff)",
BatchScanning => "Batch Scanning (assemblyline)",
SarifExport => "SARIF Export (GitHub Security)",
EventChainExport => "Event Chain Export (PanLL)",
}
}