Security verification · Agent-system arm

GLM-5.3 through ZCode writes 9/9 executable vulnerability proofs

A new arm of the Local EVM Verify Pilot: GLM-5.3 as served to a ZCode CLI session must turn three vulnerable Foundry fixtures into regression tests that fail on the vulnerable revision and pass on a curator-held fix — across the same three tool conditions, with operator-role contamination disclosed up front. Inspired by EVMbench; not an official score.

Agent system · GLM-5.3 + ZCode CLIn = 1 run / cellOperator contamination disclosedDeterministic evaluatorNot a model leaderboard
3Curated tasks
3Conditions
1Runs / cell
9/9Verified proofs
Agent-system arm, ceiling observation. 9 of 9 runs of the frozen pilot produced a verified discriminating proof (100%). The test subject is the full agent system — GLM-5.3 as served to a ZCode CLI session plus this harness — not an isolated foundation model. n = 1 run per cell, so this is a descriptive result with no inferential claim, and the operator-role contamination disclosed below biases it upward. Not an official EVMbench score.

What happened

Across the same three curated fixtures and the same frozen evaluator as the local pilot, every GLM-5.3 run submitted one self-contained Foundry regression test that compiled on both revisions, failed on the vulnerable revision, and passed on the curator-held fixed revision — in all three conditions: tool-assisted, static (no tools), and budgeted triage. The only in-run defect appeared in the first run, where a first submission with malformed try-call syntax failed forge build and was repaired from the compiler error inside the same run — exactly the feedback loop the tool-assisted condition exists to measure.

GLM-5.3 (ZCode CLI) arm result plate: verified proofs by condition and task, cross-arm adjacency, and caveats
Open the full-resolution academic figure and downloads.

Table 14 · GLM-5.3 verified proofs

GLM-5.3 (ZCode) verified proofs per task and condition

Agent system · GLM-5.3 + ZCode CLIn = 1 run / cellOperator contamination disclosedDeterministic evaluatorNot a model leaderboard
Verified proofs out of 1 run in each curated task × condition cell for the GLM-5.3 (ZCode CLI) agent system. A run counts as verified only when the submitted test compiles on both revisions, fails on the vulnerable revision, and passes on the fixed revision.
Task (family)Tool-assistedStatic (no tools)Budgeted triage
share-inflation (asset/share rounding)1/11/11/1
reentrancy-withdraw (external-call ordering)1/11/11/1
uninitialized-treasury (initialization authorization)1/11/11/1
Table 14Verified proofs out of 1 run in each curated task × condition cell for the GLM-5.3 (ZCode CLI) agent system. A run counts as verified only when the submitted test compiles on both revisions, fails on the vulnerable revision, and passes on the fixed revision.

Agent-system arm (GLM-5.3 + ZCode harness), n = 1 run per cell, same fixtures and frozen evaluator as the local pilot; operator-role contamination is disclosed in the report. Cells with no terminal run read "pending", never zero. Not an official EVMbench score.

BMSbms.kyokasuigetsu.xyz
Static image: https://bms.kyokasuigetsu.xyz/tables/glm-outcomes.png

Table 15 · GLM-5.3 verified-proof rate

GLM-5.3 (ZCode) verified-proof rate by condition

Agent system · GLM-5.3 + ZCode CLIn = 1 run / cellOperator contamination disclosedDeterministic evaluatorNot a model leaderboard
Verified-proof rate over terminal runs per condition (1 run × 3 tasks) for the GLM-5.3 agent system, with the parent pilot's hierarchical bootstrap 95% CI.
ConditionAgent accessTerminalVerifiedRate95% CI
Tool-assistedBounded search/read + forge build/test feedback, then one submitted proof33/3100%100–100%
Static (no tools)Full source context (target + provided test harness); no tool feedback33/3100%100–100%
Budgeted triageA strict budget of four inspect operations, then one submission33/3100%100–100%
Table 15Verified-proof rate over terminal runs per condition (1 run × 3 tasks) for the GLM-5.3 agent system, with the parent pilot's hierarchical bootstrap 95% CI.

The interval is degenerate at 9/9 and n is 1 per cell: this is a descriptive result only, with no inferential claim. Condition-level contrasts are confounded by within-session carryover (tools ran before static and triage).

BMSbms.kyokasuigetsu.xyz
Static image: https://bms.kyokasuigetsu.xyz/tables/glm-conditions.png

The agent system, frozen before any run

The arm replaces the pilot's local Ollama loop with an explicit turn-taking driver: the ZCode session is the agent, submitting one JSON action per turn under the parent's unchanged action policy and evaluator. Inference is cloud-served GLM-5.3 through the ZCode runtime — sampler settings are not operator-controlled, and token telemetry does not exist for this runtime, so token columns read n/a rather than an invented number.

Table 17 · Agent-system lock

Frozen GLM-5.3 + ZCode agent-system lock

Agent system · GLM-5.3 + ZCode CLIn = 1 run / cellOperator contamination disclosedDeterministic evaluatorNot a model leaderboard
The agent system under test, recorded in agent.lock.json before any run and hashed into every run ledger.
FieldValue
Model identifierbuiltin:zai-start-plan/GLM-5.3
Runtime engineZCode CLI/desktop harness (one stateful session)
ZCode app3.8.1 · CLI bundle sha256 9318f60fb8c2c3bc…
Providerzai (OAuth), Anthropic-compatible endpoint
Reported limitscontext 1,000,000 · output 128,000
Inference controlnone (no seed, no sampler control)
Token meteringnot available — recorded n/a, never zero
SandboxDocker --network none · cap-drop ALL · no-new-privileges · solc 0.8.35
HostApple M4 Pro · 24 GB · arm64 · macOS 27.0
Lock frozenbefore first run · 2026-08-21T19:59:41Z
Replicates1 per cell (deviation from parent 6/cell justified pre-run)
Table 17The agent system under test, recorded in agent.lock.json before any run and hashed into every run ledger.

Inference is cloud-served through the ZCode runtime: sampler settings are not operator-controlled and token telemetry does not exist (recorded n/a, never imputed). The arm deviates from the parent 6-replicate plan: 1 run per cell, justified before collection because a single stateful session cannot produce independent replicates.

BMSbms.kyokasuigetsu.xyz
Static image: https://bms.kyokasuigetsu.xyz/tables/glm-agent-lock.png

Same fixtures, same budgets, one declared deviation

The three conditions reuse the parent's frozen turn, tool, and wall budgets unchanged over the same tasks, and the fixed revisions stayed curator-held throughout. The one deviation — 1 run per cell instead of the parent plan's 6 — was recorded before collection: a single stateful agent session cannot produce independent fresh-conversation replicates, and within-session replicates would measure memory, not reproducibility.

Table 16 · Frozen arm protocol

GLM-5.3 arm conditions and budgets

Agent system · GLM-5.3 + ZCode CLIn = 1 run / cellOperator contamination disclosedDeterministic evaluatorNot a model leaderboard
The three frozen conditions of the parent pilot, reused unchanged (same turns, tools, and wall caps) over the same three tasks.
ConditionAgent accessTurn / tool budgetWall cap
Tool-assistedBounded search/read + forge build/test feedback, then one submitted proof12 turns / 10 tools1500 s
Static (no tools)Full source context (target + provided test harness); no tool feedback3 turns / 0 tools1200 s
Budgeted triageA strict budget of four inspect operations, then one submission6 turns / 4 tools1200 s
Table 16The three frozen conditions of the parent pilot, reused unchanged (same turns, tools, and wall caps) over the same three tasks.

Wall time runs begin→final and includes GLM-5.3 + ZCode inference between turns. The agent interacts with the task workspace only through the driver, which enforces the parent action policy; the fixed revision is never mounted.

BMSbms.kyokasuigetsu.xyz
Static image: https://bms.kyokasuigetsu.xyz/tables/glm-protocol.png

Cross-arm comparison, kept adjacent

Arms in this repository share fixtures or lineage, not protocols. The Qwen v1 pilot ran a stricter harness under an 8K-context Q4_K_M local serving; the Qwen v2 deepening — the only like-for-like harness pairing for this arm — is still collecting, and its quality cells read pending. The controlled Grok/GPT campaign measures reported audit findings, a different endpoint entirely. Nothing here pools denominators into a leaderboard.

Table 19 · Adjacent arms

Local verify arms side by side (never pooled)

Agent system · GLM-5.3 + ZCode CLIn = 1 run / cellOperator contamination disclosedDeterministic evaluatorNot a model leaderboard
Adjacent descriptive results across arms that share fixtures or lineage. Denominators are per-arm; protocols, harness generations, and endpoints differ.
Arm (agent system)HarnessRunsVerifiedMedian wallPrimary caveat
GLM-5.3 (ZCode CLI)v2 fairer harness99/90m 09sOperator-role contamination disclosed; n = 1/cell; no token metering
Qwen3.8-27B · Q4_K_M (local Ollama)v1 strict harness90/96m 48s8K-context Q4_K_M local serving, thinking disabled; strict v1 prompt
Qwen3.8-27B · Q4_K_M (local Ollama) (v2)v2 fairer harness1 of 54 scheduledpendingpendingCollection incomplete (2 partial run dirs); quality withheld, never zero
Table 19Adjacent descriptive results across arms that share fixtures or lineage. Denominators are per-arm; protocols, harness generations, and endpoints differ.

These are not comparable measurements and must not be read as a leaderboard. The Qwen v2 arm (same harness generation as the GLM arm) is still collecting: its quality cells read "pending" and are never shown as zero. The controlled Grok/GPT campaign measures a different endpoint (reported findings on audits) and is excluded from this table by design.

BMSbms.kyokasuigetsu.xyz
Static image: https://bms.kyokasuigetsu.xyz/tables/glm-cross-arm.png

Contamination, stated plainly

The agent under test is the same session that built this arm. Before acting as agent it had read the pilot's documentation — including a table naming each fixture's vulnerability family and fix strategy — though never any fixture source, fixed revision, or golden proof. GLM-5.3 is also a coding-agent model that may have prior exposure to similar Foundry/EVM material. Both facts bias verified-proof rate upward. Conditions also ran in one session (tools, then static, then triage), so static and triage submissions benefited from syntax proven earlier in the session; condition-level contrasts are not interpretable.

Operational telemetry, kept separate from quality

Table 18 · Operational telemetry

GLM-5.3 arm wall time, tools, and localisation

Agent system · GLM-5.3 + ZCode CLIn = 1 run / cellOperator contamination disclosedDeterministic evaluatorNot a model leaderboard
Operational aggregates across all terminal runs of the GLM-5.3 arm. These are operational observations only and do not measure finding quality.
MetricValue
Median wall time / run0m 09s
Total collection wall time5m 11s
Generated tokens (total)n/a (no token metering)
Tool calls (total)15
Source localised (tool-enabled runs)6/6
Table 18Operational aggregates across all terminal runs of the GLM-5.3 arm. These are operational observations only and do not measure finding quality.

Wall time includes GLM-5.3 + ZCode inference between turns and is not comparable to the parent pilot's automated local loop. Token telemetry does not exist for this runtime and is shown as n/a, never zero.

BMSbms.kyokasuigetsu.xyz
Static image: https://bms.kyokasuigetsu.xyz/tables/glm-operational.png
Operational metrics are not quality. Wall time spans begin-to-final and includes GLM-5.3 + ZCode inference between turns; it is not comparable to the pilot's automated local loop. Correctness is decided only by the verified-proof gate.

What this arm does not claim

Three textbook fixtures with n = 1 per cell set a ceiling observation on easy, familiar tasks — not evidence of audit-level skill on real repositories. The bootstrap interval is degenerate at 9/9 and supports no inferential statement. Cloud inference without seed control means the agent side is not exactly reproducible; only the harness, fixtures, evaluator, and analysis are. No model ranking — not over Qwen, and not over the Grok/GPT campaign systems — is implied by any number on this page.

Read the methods behind the numbers.

View methodology