Model review audits
Compare · P25 firmware review

Head to head

Same brief, same rubric, same scale. Put up to three models side by side: dimension scores, how many of their claims held up, and which issues each review raised.

From the audits

More useful, less careful

UNIONALPHA is the more careful review: almost every claim holds, but it spends them on tooling. DeepSeek finds the chip-side problems UNIONALPHA missed and proposes the best experiment either offers, but makes more mistakes, and one of them clears a real blocker. Neither found the vocoder CPU wall or the circular RRC test oracle.

From the DeepSeek V4.1 Flash audit, 17 September 2026.

Weighted score

Out of 100, on the grade scale.

Where the points went

Earned and lost, by rubric slot

Each bar is a model’s 100-point grade split into the rubric’s weighted slots; filled is earned, empty is lost. The slots line up, so a gap in one bar against a full slot in another is exactly where the models part ways.

DeepSeek V4.1 Flash
68/ 100
UNIONALPHA
65/ 100
  • 1Accuracy & evidence30 pts
  • 2Coverage of decode problems25 pts
  • 3Root cause & prioritisation15 pts
  • 4Fix plan & acceptance gates15 pts
  • 5Originality & attribution10 pts
  • 6Clarity & calibration5 pts
By dimension

Scores on each rubric dimension

Out of 100 per dimension; the weight is that dimension’s share of the grade. Hover or focus a row for the exact scores.

  • ADeepSeek V4.1 Flash
  • BUNIONALPHA
Accuracy & evidence30%
Coverage of decode problems25%
Root cause & prioritisation15%
Fix plan & acceptance gates15%
Originality & attribution10%
Clarity & calibration5%
Scores and weighted points
Dimension Weight A · DeepSeek V4.1 FlashB · UNIONALPHA A − B
Accuracy & evidence 30% 68 · 20.4 pts 90 · 27.0 pts −22
Coverage of decode problems 25% 66 · 16.5 pts 45 · 11.2 pts +21
Root cause & prioritisation 15% 64 · 9.6 pts 55 · 8.2 pts +9
Fix plan & acceptance gates 15% 74 · 11.1 pts 74 · 11.1 pts ±0
Originality & attribution 10% 70 · 7.0 pts 40 · 4.0 pts +30
Clarity & calibration 5% 68 · 3.4 pts 76 · 3.8 pts −8
Weighted total 100% 68 · C−65 · C− +3
Claim check

Every claim, checked

One cell per claim in each audit’s claim table, checked at the lines it cites. Hover a cell for the claim and the auditor’s note. The reviews made different numbers of claims, so the bar under each grid gives the shares.

DeepSeek V4.1 Flash’s claim table · UNIONALPHA’s claim table

  • Holds
  • Qualifiedoverstated, miscounted or doubtful
  • Wrong
DeepSeek V4.1 Flash30 claims checked

17 hold · 8 qualified · 5 wrong · 57% hold

UNIONALPHA23 claims checked

21 hold · 2 qualified · 0 wrong · 91% hold

Issue coverage

What each review raised

DeepSeek V4.1 Flash found 3 of the 4 decode-critical issues; UNIONALPHA found 0 of the 4 decode-critical issues. Every tracked issue below, with the reviews that were already in the repository for reference.

Issue signatures

Each review as a trace across the tracked issues. Where traces part is where the reviews differ; hover a column for every review’s entry. Column numbers match the table below.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 P25-HARDWARE-REVIEW earlier repo review · Sep 8 P25-PROJECT-REVIEW earlier repo review · Sep 10 UNIONALPHA model · Sep 16 DeepSeek V4.1 Flash model · Sep 16–17
  • raised
  • partly
  • absent
  • Decode-critical
Issues raised by each review of P25 voice decoding on the DM-1701
# Issue P25-HARDWARE-REVIEWEarlier repo review · Sep 8 P25-PROJECT-REVIEWEarlier repo review · Sep 10 UNIONALPHAModel · Sep 16 DeepSeek V4.1 FlashModel · Sep 16–17
1 Capture export stages the wrong I2S halfwords absent raisedF1 raisedF1 raisedB5
2 Capture parser certifies an incomplete stream absent raisedF2 raisedF2 partlyin its plan
3 pcm_starve never increments partlyasks for underrun counts raisedF3 raisedF3 raisedB9
4 No static RAM margin partly648 bytes then raisedF4 raisedF4 raisedB6
5 The I2S stream is most likely microphone audio Decode-critical raisedcites sound.c raised partly“either direction” raisedB1
6 HR-C6000 de-emphasis on the capture path Decode-critical partlycode comment partlycode comment absent raisedB2, register 0x34
7 AT1846S FM filters, low-frequency bit, 25 kHz Decode-critical raised raised absent partlyevidence file only
8 0x10=0x6E hybrid state; 0x36 dual role absent absent absent raisednew
9 Manual: I2S frame clock “must be 8KHz” Decode-critical absent absent absent raisednew
10 One-layer 4FSK test mode as a P25 tap absent absent absent raisednew
11 ±10% health gate versus ±1% timing clamp absent absent raisedC2 raisedB3, executed
12 Fail-closed muting at LDU cadence absent partlylate entry absent“keep fail-closed” raisedB8
13 Non-standard MFID mutes clear calls absent absent absent raisedB9
14 Test waveform shares the receiver’s RRC filter missed raised raisedF6 absent absentreuses it
15 MCU runs at 72 MHz raised raised absent partlyPhase 2 gate only
16 Vocoder needs 11–16× the 72 MHz CPU Decode-criticalmissed absent partlycycles per frame partly“to measure” absent“not the blocker”
17 Direct discriminator tap (M17 mod) raisedwith pins raised partlyno pins raisedwith pins
18 Phase 2 architecture and scope partly partly raised raisedwith errors

From the provenance table in the DeepSeek V4.1 Flash audit (17 Sep 2026), the newest audit on this task. Shaded columns are reviews that were already in the repository.