SoK: DARPA's AI Cyber Challenge (AIxCC) — Competition Design, Architectures, and Lessons Learned

Companion site for the AIxCC SoK study — a single entry point that compiles all of the study's references, artifacts, supplemental analysis, and the participating teams' public materials.

SoK Artifact Teams' Public References OSS-CRS & CRSBench Supplemental Analysis Arxiv Paper

Open ScienceSoK Artifact

Some materials respect DARPA's official release timeline and are not yet public.

Currently available

Pending release

  • Raw competition data (submission logs, OTEL traces, scoring breakdowns).
  • CRUMBS — the organizers' competition data analysis framework.

Open ScienceCollection of Teams' Public References

Open ScienceOSS-CRS & CRSBench

OSS-CRS

OpenSSF CRS orchestration platform which integrates the bug-finding and patch components from every AIxCC finalist CRS into a single open-source pipeline.

CRSBench

The matching benchmark suite for OSS-CRS, bundling the AIxCC Final Challenge Set, the AIxCC Exhibition Round challenge set, and Team Atlanta's n-day-derived challenges.

Scoring Rules Explanation

The scoring system is centered around a developer-centric principle: reward outcomes that benefit project developers and penalize behaviors that would burden them. Organizers use this principle to determine when and to what extent should reward be given for each capability:

  • A single PoV is not highly rewarded since it only demonstrates the vulnerability;
  • Patches score highest as they directly solve security issues;
  • SARIF assessments are useful but only offer non-core, semi-subjective report validation, therefore scoring lowest;
  • Bundling saves developer investigation time when correct (rewarded), but largely wastes their efforts and emotions when incorrect (penalized).

Based on those weights, organizers introduce additional scoring mechanisms, like accuracy penalty and time-decay, to ensure competition fairness and balance research incentives with practicality.

Team Score Hierarchy

A team's total score is the sum of individual challenge scores:

\[ S_{\text{Team}} \;=\; \sum S_{\text{Challenge}} \]

Each challenge score equals the accuracy multiplier times the sum of four capability scores:

\[ S_{\text{Challenge}} \;=\; AM \,\times\, \bigl(S_{\text{PoV}} + S_{\text{Patch}} + S_{\text{SARIF}} + S_{\text{Bundle}}\bigr) \]

Accuracy Multiplier

The accuracy multiplier AM serves as a global button to encourage teams to balance effectiveness with reliability. Teams with 100% accurate submissions receive no penalty (AM = 1), while lower accuracy results in a reduced multiplier:

\[ AM \;=\; 1 - (1-r)^4, \qquad r \;=\; \frac{n_{\text{acc}}}{n_{\text{acc}} + n_{\text{inacc}}} \]

The quartic formula strongly penalizes low accuracy to discourage impractical strategies, while tolerating reasonable error rates to enable research innovation. For instance, at 90% accuracy AM ≈ 0.9999 (nearly no penalty), while at 50% AM = 0.9375 and at 40% AM = 0.8704 (significant score reduction).

Each submission is classified as accurate, inaccurate, or neutral, where neutral submissions do not affect accuracy calculations. For a given capability, the classification rationale is to reward correct, non-duplicate submissions, penalize incorrect ones, and not penalize partially correct or duplicate submissions that provide real-world value:

  • PoV. One reproducible PoV per vulnerability is accurate; irreproducible PoVs are inaccurate; reproducible but duplicate PoVs are neutral, since collecting diverse PoVs can benefit patch validation in practice.
  • Patch. First, patches that fail to apply, build, or remediate any PoV are inaccurate. Then, the patches that fail functionality tests are neutral. This considers that CRSs may not have access to full testing functionality in practice and a CI system can help catch such issues. Finally, among passing patches, a minimal covering set is selected as accurate while the rest are inaccurate.
  • SARIF and Bundle. Only fully correct submissions are accurate; others are inaccurate.
  • Server errors and schema mismatches. neutral.

Time-Decayed Scoring Design

Teams' submissions earn fewer points over time, with up to 50% reduction at the deadline. \(\mathit{Score}_{\text{PoV}}\), \(\mathit{Score}_{\text{Patch}}\), and \(\mathit{Score}_{\text{SARIF}}\) share a common time-decay formula:

\[ \mathit{Score} \;=\; \mathit{weight} \times \tau, \qquad \tau \;=\; 0.5 \;+\; \frac{\text{remaining time}}{2 \times \text{total duration}} \]

where remaining time is from submission to deadline, and total duration is the challenge window. \(\tau\) ranges from 1.0 (immediate) to 0.5 (at deadline). The weight for PoV, Patch, and SARIF are 2, 6, and 1, respectively. For total duration, PoV and Patch submissions are measured from challenge start to deadline (full-mode for 12 hours while delta-mode for 6 hours), while SARIF is from broadcast time.

Note that for each vulnerability, only the last submission is scored, so earlier submissions can be superseded by later ones, allowing teams to revise their submissions with a certain penalty.

Bundle Scoring

A bundle reports pairings among PoV, Patch, and broadcast SARIF that a team identifies as addressing the same vulnerability. Unlike other capabilities, bundles can yield negative scores:

\[ S_{\text{Bundle}} \;=\; \pm \Bigl( \underbrace{0.5\,(S_{\text{PoV}} + S_{\text{Patch}})}_{\text{PoV–Patch}} + \underbrace{\,1\,}_{\text{PoV–SARIF}} + \underbrace{\,2\,}_{\text{Patch–SARIF}} \Bigr) \]

The sign is positive if all claimed pairings are correct, negative if any is incorrect. The more correct pairings, the higher the score (up to 7 points for vulnerabilities that have a SARIF broadcast, 4 for those without). CRS-generated SARIF may be included in bundles but does not affect scoring. Bundle scoring is indirectly affected by time-decay through the underlying PoV and Patch scores.

Patch Selection and Validation

Since a single patch may remediate multiple vulnerabilities, organizers must select which patches to credit. The selection algorithm identifies a minimal covering set: the smallest number of patches that collectively fix all validated vulnerabilities. When multiple patches cover the same vulnerability, specificity is preferred: patches fixing fewer vulnerabilities are chosen over broader ones, rewarding precise, targeted fixes. Patches not selected into this minimal set count as inaccurate.

To validate whether a patch truly remediates a vulnerability, organizers use all PoVs submitted by all teams, plus organizer-created ones, as test cases. A patch must remediate every PoV targeting its claimed vulnerability to be considered valid. This cross-team validation also reflects one collaboration approach among CRSs in practice.

Challenge Project (CP) Details

Detailed information about each Challenge Project (CP) in the AIxCC final round.

LangProjectCategory# Harn. CP# CPVsCWEsSLOC CommitCutoffΔ LinesΔ Files BuildHarn. Size
C curl Network 17 cu2▲ 1 CWE-476 238K 2d4852a 2024-12-09 881 24 110s 232.6MB
C curl Network 17 cu3▲ 1 CWE-476 238K 2d4852a 2024-12-09 940 25 112s 232.8MB
C curl Network 17 cu4▲ 2 CWE-121, CWE-476 238K 2d4852a 2024-12-09 1252 33 109s 232.8MB
C curl Network 17 cu5▲ 2 CWE-134, CWE-787 237K 2d4852a 2024-12-09 657 27 112s 232.3MB
C curl Network 17 cu6▲ 0 249K 4dacb79 2025-05-28 51469 1132 125s 238.0MB
C dav1d Codec 1 da1□ 1 CWE-190 261K 08051a3 2024-02-06 38s 910B
C freerdp Remote Desktop 7 fp2▲ 1 CWE-122 453K f1285ad 2025-02-11 373 10 205s 190.6MB
C freerdp Remote Desktop 7 fp3▲ 1 CWE-123 453K f1285ad 2025-02-11 498 10 209s 190.6MB
C freerdp Remote Desktop 7 fp4▲ 0 463K fcdf4c6 2025-06-16 20605 256 207s 190.5MB
C libavif Image 8 av2▲ 1 CWE-126 44K fa089a0 2025-04-14 1407 25 168s 50.8MB
C libavif Image 8 av3▲ 0 44K 1aadfad 2025-05-09 3232 98 207s 2.4KB
C libexif Image 2 ex2▲ 1 CWE-122 16K 30e5090 2022-04-21 210 12 49s 11.6MB
C libexif Image 2 ex3▲ 1 CWE-121 15K a918830 2021-11-01 178 9 50s 11.7MB
C libxml2 Document 11 lx3▲ 1 CWE-122 201K 71c37a5 2024-12-30 634 13 58s 136.3MB
C little-cms Image 15 cm1▲ 0 87K 5176347 2025-02-04 8072 140 33s 93.0MB
C little-cms Image 15 cm1□ 2 CWE-126, CWE-476 87K 762d7a6 2025-05-04 32s 93.0MB
C mongoose Network 1 mg1▲ 1 CWE-121 352K ef8e741 2025-02-02 470 14 17s 5.5MB
C mongoose Network 1 mg2▲ 1 CWE-125 352K ef8e741 2025-02-02 416 13 17s 5.5MB
C mongoose Network 1 mg3▲ 0 403K 2df53c3 2024-11-20 1019782 1234 16s 5.5MB
C mongoose Network 1 mg1□ 1 CWE-121, CWE-193 352K ef8e741 2025-02-02 17s 5.5MB
C ndpi Network 55 nd1□ 0 136K 8987a2c 2025-06-24 105s 1009.0MB
C openssl Crypto 30 os1□ 0 909K 5b80019 2025-05-01 182s 747.9MB
C shadowsocks Network 1 ss1□ 5 CWE-126 19K 9afa3ca 2025-01-20 86s 6.2MB
C systemd System 47 sd1□ 4 CWE-122, CWE-415, CWE-787 740K d218ecc 2024-12-13 71s 253.9MB
C wireshark Network 47 ws1▲ 1 CWE-787 4901K 624c0b1 2025-03-04 354 9 462s 20.9GB
C wireshark Network 47 ws2▲ 1 CWE-121 4901K 624c0b1 2025-03-04 560 10 442s 20.9GB
C wireshark Network 47 ws3▲ 1 CWE-122 4902K 624c0b1 2025-03-04 407 9 473s 20.9GB
C wireshark Network 47 ws4▲ 1 CWE-126 4901K 624c0b1 2025-03-04 714 9 464s 20.9GB
C wireshark Network 47 ws5▲ 1 CWE-129 4901K 624c0b1 2025-03-04 617 8 459s 20.9GB
C wireshark Network 47 ws7▲ 1 CWE-120 4901K 624c0b1 2025-03-04 420 9 457s 20.9GB
C wireshark Network 47 ws1□ 6 CWE-121, CWE-122, CWE-134, CWE-416, CWE-457, CWE-680 4901K 624c0b1 2025-03-04 492s 20.9GB
C xz Compression 4 xz1□ 1 CWE-416 41K dd4a1b2 2025-05-23 37s 20.0MB
Java commons-compress Compression 16 cc1▲ 1 CWE-400, CWE-770, CWE-1333 75K 0df4a41 2025-02-10 205 9 113s 17.6MB
Java commons-compress Compression 16 cc4▲ 1 CWE-22, CWE-29, CWE-35 76K 3a645c7 2025-06-08 166 10 110s 17.7MB
Java commons-compress Compression 16 cc5▲ 1 CWE-28, CWE-77 76K 3e70c50 2025-06-13 163 8 110s 17.7MB
Java commons-compress Compression 16 cc6▲ 1 CWE-22, CWE-29, CWE-35 76K 3a645c7 2025-06-08 170 10 108s 17.7MB
Java commons-compress Compression 16 cc7▲ 1 CWE-22, CWE-29, CWE-35 76K 3a645c7 2025-06-08 244 10 106s 17.7MB
Java dcm4che Healthcare 1 dc1□ 0 105K d5b4cd3 2025-06-11 315s 7.7MB
Java dicoogle Healthcare 1 dg1□ 0 21K 347692a 2025-03-10 101s 25.6MB
Java healthcare-data-harmonization Healthcare 1 hc1□ 0 53K a628c4a 2025-06-02 80s 11.2MB
Java hertzbeat Monitoring 1 hb1□ 0 78K d077c72 2025-06-13 170s 349.7MB
Java jsoup Document 2 js1□ 0 36K 3b97e96 2025-06-30 79s 8.2MB
Java log4j2 Logging 1 lj1▲ 1 CWE-20, CWE-917 54K f1a0cac 2013-07-18 535 17 96s 8.4MB
Java pdfbox Document 6 pb1▲ 1 CWE-28, CWE-77 167K afd3ea7 2025-06-11 455 12 135s 7.7MB
Java pdfbox Document 6 pb1□ 8 CWE-611, CWE-789, CWE-834, CWE-835, CWE-918 167K afd3ea7 2025-06-11 129s 7.7MB
Java poi Document 17 po1▲ 2 CWE-20, CWE-121, CWE-918 433K c784266 2025-06-17 318 17 216s 14.4MB
Java poi Document 17 po1□ 5 CWE-20, CWE-35, CWE-382, CWE-695, CWE-770, CWE-789, CWE-834 433K c784266 2025-06-17 206s 14.4MB
Java tika Document 9 tk6▲ 1 CWE-407, CWE-834 188K 2d199aa 2025-06-03 482 11 150s 61.3MB

delta-mode   full-mode. Cutoff: date of the latest upstream commit incorporated into the organizer's CP repository. Build time measured on AMD EPYC 7452 (128 cores), 512 GB RAM, Ubuntu 22.04.

Challenge Project Vulnerability (CPV) Details

Detailed information about each Challenge Project Vulnerability (CPV) in the AIxCC final round.

LangPhProjectIDVuln CWECWE Name
C P2 libavif av202 avif-002 CWE-126 Buffer Over-read
C P2 little-cms cm101 lcms-001 CWE-476 NULL Pointer Dereference
C P2 little-cms cm102 lcms-002 CWE-126 Buffer Over-read
C P2 curl cu206 curl-006 CWE-476 NULL Pointer Dereference
C P2 curl cu307 curl-007 CWE-476 NULL Pointer Dereference
C P2 curl cu403 curl-003 CWE-121 Stack-based Buffer Overflow
C P2 curl cu408 curl-008 CWE-476 NULL Pointer Dereference
C P2 curl cu501 curl-001 CWE-134 Use of Externally-Controlled Format String
C P2 curl cu502 curl-002 CWE-787 Out-of-bounds Write
C P2 libexif ex201 exif-001 CWE-122 Heap-based Buffer Overflow
C P2 libexif ex302 exif-002 CWE-121 Stack-based Buffer Overflow
C P2 freerdp fp202 vuln_002 CWE-122 Heap-based Buffer Overflow
C P2 libxml2 lx304 vuln_004 CWE-122 Heap-based Buffer Overflow
C P2 mongoose mg101 mongoose_1 CWE-121 Stack-based Buffer Overflow
C P2 mongoose mg202 mongoose_2 CWE-125 Out-of-bounds Read
C P2 mongoose mg100 mongoose_0 CWE-121 Stack-based Buffer Overflow
CWE-193 Off-by-one Error
C P2 shadowsocks-libev ss100 shadowsocks-libev_0 CWE-126 Buffer Over-read
C P2 shadowsocks-libev ss101 shadowsocks-libev_1 CWE-126 Buffer Over-read
C P2 shadowsocks-libev ss102 shadowsocks-libev_2 CWE-126 Buffer Over-read
C P2 shadowsocks-libev ss103 shadowsocks-libev_3 CWE-126 Buffer Over-read
C P2 shadowsocks-libev ss104 shadowsocks-libev_4 CWE-126 Buffer Over-read
C P2 systemd sd101 systemd-001 CWE-787 Out-of-bounds Write
C P2 systemd sd103 systemd-003 CWE-122 Heap-based Buffer Overflow
C P2 systemd sd104 systemd-004 CWE-415 Double Free
C P2 systemd sd105 systemd-005 CWE-415 Double Free
C P3 dav1d da101 dav1d-001 CWE-190 Integer Overflow or Wraparound
C P3 wireshark ws101 vuln_001 CWE-121 Stack-based Buffer Overflow
C P3 wireshark ws102 vuln_002 CWE-416 Use After Free
C P3 wireshark ws105 vuln_005 CWE-134 Use of Externally-Controlled Format String
C P3 wireshark ws110 vuln_010 CWE-122 Heap-based Buffer Overflow
C P3 wireshark ws111 vuln_011 CWE-121 Stack-based Buffer Overflow
CWE-122 Heap-based Buffer Overflow
CWE-680 Integer Overflow to Buffer Overflow
C P3 wireshark ws112 vuln_012 CWE-457 Use of Uninitialized Variable
C P4 freerdp fp303 vuln_003 CWE-123 Write-what-where Condition
C P7 wireshark ws103 vuln_003 CWE-787 Out-of-bounds Write
C P7 wireshark ws204 vuln_004 CWE-121 Stack-based Buffer Overflow
C P7 wireshark ws306 vuln_006 CWE-122 Heap-based Buffer Overflow
C P7 wireshark ws407 vuln_007 CWE-126 Buffer Over-read
C P7 wireshark ws508 vuln_008 CWE-129 Improper Validation of Array Index
C P7 wireshark ws713 vuln_013 CWE-120 Buffer Copy without Checking Size of Input ('Classic Buffer Overflow')
C P7 xz xz101 xz-001 CWE-416 Use After Free
Java P1 commons-compress cc103 vuln_3 CWE-400 Uncontrolled Resource Consumption
CWE-770 Allocation of Resources Without Limits or Throttling
CWE-1333 Inefficient Regular Expression Complexity
Java P1 commons-compress cc406 vuln_6 CWE-35 Path Traversal: '.../...//'
CWE-22 Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal')
CWE-29 Path Traversal: '..filename'
Java P1 commons-compress cc510 vuln_10 CWE-77 Improper Neutralization of Special Elements used in a Command ('Command Injection')
CWE-28 Path Traversal: '..filedir'
Java P1 tika tk610 vuln_10 CWE-834 Excessive Iteration
CWE-407 Inefficient Algorithmic Complexity
Java P2 commons-compress cc607 vuln_7 CWE-35 Path Traversal: '.../...//'
CWE-22 Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal')
CWE-29 Path Traversal: '..filename'
Java P2 commons-compress cc708 vuln_8 CWE-35 Path Traversal: '.../...//'
CWE-22 Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal')
CWE-29 Path Traversal: '..filename'
Java P2 pdfbox pb102 vuln_2 CWE-77 Improper Neutralization of Special Elements used in a Command ('Command Injection')
CWE-28 Path Traversal: '..filedir'
Java P2 pdfbox pb100 vuln_0 CWE-611 Improper Restriction of XML External Entity Reference
CWE-918 Server-Side Request Forgery (SSRF)
Java P2 pdfbox pb101 vuln_1 CWE-611 Improper Restriction of XML External Entity Reference
CWE-918 Server-Side Request Forgery (SSRF)
Java P2 pdfbox pb103 vuln_3 CWE-835 Loop with Unreachable Exit Condition ('Infinite Loop')
CWE-834 Excessive Iteration
Java P2 pdfbox pb104 vuln_4 CWE-835 Loop with Unreachable Exit Condition ('Infinite Loop')
CWE-834 Excessive Iteration
Java P2 pdfbox pb105 vuln_5 CWE-789 Memory Allocation with Excessive Size Value
Java P2 pdfbox pb106 vuln_6 CWE-789 Memory Allocation with Excessive Size Value
Java P2 pdfbox pb107 vuln_7 CWE-834 Excessive Iteration
Java P2 pdfbox pb108 vuln_8 CWE-834 Excessive Iteration
Java P2 poi po105 vuln_5 CWE-918 Server-Side Request Forgery (SSRF)
Java P2 poi po106 vuln_6 CWE-121 Stack-based Buffer Overflow
CWE-20 Improper Input Validation
Java P2 poi po100 vuln_0 CWE-834 Excessive Iteration
CWE-20 Improper Input Validation
Java P2 poi po101 vuln_1 CWE-789 Memory Allocation with Excessive Size Value
CWE-770 Allocation of Resources Without Limits or Throttling
CWE-20 Improper Input Validation
Java P2 poi po102 vuln_2 CWE-35 Path Traversal: '.../...//'
CWE-20 Improper Input Validation
Java P2 poi po103 vuln_3 CWE-695 Use of Low-Level Functionality
CWE-20 Improper Input Validation
Java P2 poi po104 vuln_4 CWE-382 J2EE Bad Practices: Use of System.exit()
Java P6 logging-log4j2 lj100 vuln_0 CWE-917 Improper Neutralization of Special Elements used in an Expression Language Statement ('Expression Language Injection')
CWE-20 Improper Input Validation

delta-mode   full-mode. Multi-CWE CPVs span multiple rows.

SARIF Validation Techniques

The table below summarizes how each finalist team validates broadcast SARIF reports.

Aspect Teams (high → low score)
ATTBTI FBSP42LC
Validation Strategy — Category PoV-centricPoV-centricBug-cand-centric PoV-centricLLM-judge-centricLLM-judge-centricLLM-judge-centric
Validation Strategy — Implementation* LLM-BasedHeuristic-BasedLLM-Based Heuristic-Based; LLM-BasedLLM-BasedLLM-BasedLLM-Based
Pre-validation Sanity Check Format; File; Function; Line no. Format Format Format Format; File; Function File; Function; Line no.
Used Inputs — SARIF Report Full Report File; Function; StartLine; EndLine Function; File; Description; Rule File; StartLine; EndLine; Rule; Message Function; File; StartLine; Rule; Message Full Report Full Report
Used Inputs — PoV / Bug Cand Info Crash Log; Patch Diff (if available) StackTrace (File; Function; Line) Function; File; Description; Condition Partial Crash Log (StackTrace; Error Message) N/A Crash Log N/A
Used Inputs — Code Context Surrounding Context; Dynamic Retrieval Enclosing Function Dynamic Retrieval Dynamic Retrieval Surrounding Context

* Heuristic-based follows developer-defined workflows; LLM-based relies on LLM queries.
Verifies SARIF report format and checks whether referenced artifacts (files, functions or lines) exist before main validation.
Additional code context dynamically requested by LLM.

SARIF Broadcast Details

Detailed information about each SARIF broadcast in the AIxCC final round.

PhProjectLangLabelAnswer
P2 little-cms C cm101 CORRECT
P2 curl C cu3 INCORRECT
P2 libexif C ex2 INCORRECT
P2 freerdp C fp202 CORRECT
P2 poi Java po102 CORRECT
P2 shadowsocks-libev C ss100 CORRECT
P2 systemd C sd104 CORRECT
P6 logging-log4j2 Java lj100 CORRECT
P7 wireshark C ws103 CORRECT
P7 wireshark C ws2 INCORRECT
P7 wireshark C ws3 INCORRECT
P7 wireshark C ws4 INCORRECT
P7 xz C xz101 CORRECT

delta-mode   full-mode   false-positive broadcast (no underlying CPV).

0-Day Details

Detailed information about 0-day vulnerabilities discovered during the competition.

LangPhProjectIDDescription
C P2 little-cms cm1a UBSan: Signed integer overflow
C P2 curl cu5a ASan: Heap buffer overflow
C P2 curl cu5b ASan: Abort signal
C P2 curl cu5c ASan: Segmentation fault
C P2 mongoose mg1a ASan: Memory leak
C P2 shadowsocks-libev ss1a UBSan: Signed integer overflow
C P2 shadowsocks-libev ss1b UBSan: Signed integer overflow
C P2 shadowsocks-libev ss1c UBSan: Signed integer overflow
C P2 systemd sd1a ASan: Abort signal
C P3 wireshark ws1a ASan: Stack buffer overflow
Java P2 healthcare-data-harmonization hc1a Stack overflow
Java P2 Hertzbeat hb1a Out of memory
Java P2 pdfbox pb1a Stack overflow
Java P2 pdfbox pb1b Out of memory
Java P2 pdfbox pb1c Stack overflow
Java P2 pdfbox pb1d Out of memory
Java P2 pdfbox pb1e Stack overflow
Java P2 pdfbox pb1f Stack overflow
Java P2 pdfbox pb1g Class not found
Java P2 pdfbox pb1h Stack overflow
Java P2 pdfbox pb1i Stack overflow
Java P2 poi po1a Out of memory
Java P2 poi po1b Out of memory
Java P2 poi po1c Stack overflow
Java P2 poi po1d Out of memory

delta-mode   full-mode.

Token Consumption Details

The figures below show the per-model token consumption and the input-to-output token ratio per model. Token data is derived from OpenTelemetry (OTEL) logs collected by the organizers. As the collected data was incomplete due to the competition environment, the figures do not present full usage but serve as a lower-bound reference.

Per-model token consumption by team

Figure C1. Token consumption (input + output) per model by team.

Input-to-output token ratio per model by team

Figure C2. I/O token ratio per model by team.

Submission Timing

The figures below show per-team submission timing. Most teams front-load within the first quarter, consistent with time-decay scoring. SARIF is the fastest (avg 5.6%) as it triggers upon broadcast; bundles are the latest (avg 35.8%) as they depend on prior submissions and are scored at the end. Artiphishell is a notable outlier, spreading submissions across the entire window.

PoV submission timing

(a) PoV. n = 2519, avg = 25.0%

Patch submission timing

(b) Patch. n = 283, avg = 23.8%

SARIF submission timing

(c) SARIF. n = 48, avg = 5.6%

Bundle submission timing

(d) Bundle. n = 99, avg = 35.8%

Each task has a fixed time window (12h for full-mode, 6h for delta-mode); 0% is when the task opens, 100% is the deadline.

CWE-Wise Performance Analysis

The heatmaps below show CWE-wise team performance for PoV generation and patch generation, respectively.

Note. 0-day CPVs are excluded as they are still under procedural review and do not yet have confirmed CWE classifications. The figures will be updated once available.

Figure K1. CWE-wise PoV generation performance heatmap.

Figure K2. CWE-wise patch generation performance heatmap.