Skip to content

Commit 41dc1aa

Browse files
committed
site: T16 in TACTIC_NAMES_SHORT + TACTIC_ORDER + TacticGlyph (16th unique icon)
- src/App.tsx: T16 added to TACTIC_NAMES_SHORT ("Governance / Voting"), TACTIC_ORDER (appended after T15), and TacticGlyph (case n === 16 added). 16th unique SVG glyph: ballot box with ballot dropping in (rect for box, rect for slot, rect for ballot, path for the checkmark on the ballot using the accent fill). Uses only the path / circle / rect / polygon primitives matching the existing 15 glyphs. - index.html: og:description metadata updated by the site:data pipeline to reflect 16 Tactics, 93 Techniques.
1 parent dc0aa90 commit 41dc1aa

2 files changed

Lines changed: 11 additions & 2 deletions

File tree

index.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
<meta property="og:site_name" content="OAK — OnChain Attack Knowledge" />
1717
<meta property="og:locale" content="en_US" />
1818
<meta property="og:title" content="OAK — OnChain Attack Knowledge" />
19-
<meta property="og:description" content="Open vendor-neutral knowledge base of adversary Tactics and Techniques observed against on-chain assets. v0.1: 15 Tactics, 88 Techniques, 40 Mitigations, 40 Software, 18 Threat Actors, 220 worked examples, 1403 citations, 432 relationships." />
19+
<meta property="og:description" content="Open vendor-neutral knowledge base of adversary Tactics and Techniques observed against on-chain assets. v0.1: 16 Tactics, 93 Techniques, 40 Mitigations, 40 Software, 18 Threat Actors, 220 worked examples, 1403 citations, 432 relationships." />
2020
<meta property="og:image" content="https://onchainattack.org/oak-banner.svg" />
2121
<meta property="og:image:width" content="1200" />
2222
<meta property="og:image:height" content="630" />

src/App.tsx

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -161,6 +161,14 @@ function TacticGlyph({ id }: { id: string }) {
161161
<circle cx="27" cy="23" r="2.5" className="fill-accent" />
162162
</>
163163
)}
164+
{n === 16 /* Governance / Voting — ballot box with ballot slot + checkmark ballot dropping in */ && (
165+
<>
166+
<rect x="8" y="22" width="32" height="20" rx="1" />
167+
<rect x="18" y="20" width="12" height="3" />
168+
<rect x="16" y="6" width="16" height="14" rx="1" />
169+
<path d="M20 13l3 3 5-6" className="fill-accent" />
170+
</>
171+
)}
164172
</svg>
165173
</span>
166174
);
@@ -1016,9 +1024,10 @@ const TACTIC_NAMES_SHORT: Record<string, string> = {
10161024
T13: "Account Abstraction",
10171025
T14: "Validator / Staking",
10181026
T15: "Off-chain Entry-Vector",
1027+
T16: "Governance / Voting",
10191028
};
10201029

1021-
const TACTIC_ORDER = ["T1","T2","T3","T4","T5","T6","T7","T8","T9","T10","T11","T12","T13","T14","T15"];
1030+
const TACTIC_ORDER = ["T1","T2","T3","T4","T5","T6","T7","T8","T9","T10","T11","T12","T13","T14","T15","T16"];
10221031
const ATTRIBUTION_ORDER = ["confirmed","inferred-strong","inferred-weak","pseudonymous","unattributed","(missing)"];
10231032
// Attribution colors derive from OAK's single accent (electric teal) with
10241033
// decreasing opacity for decreasing rigor; lower-rigor categories fall onto

0 commit comments

Comments
 (0)