Kann Audits / Security Review

Mystic Finance

Mystic Finance 0x Deployment Security Review

Review of the optimized 0x deployment script and its contract-verification constructor arguments.

JavaScript0xFebruary 13, 2026
Download Report Open Report
Audit period
February 12–13, 2026
Researchers
Not listed
Scope
1 scoped path
Technologies
JavaScript, 0x
Findings
1 documented

Executive summary

What was reviewed

Review of the optimized 0x deployment script and its contract-verification constructor arguments.

This page reflects only the scope and review context disclosed in the published report. Fields the report does not provide are omitted rather than inferred; the PDF remains the source of record for issue detail and limitations.

Security is contextual. This report does not guarantee that the protocol is free from vulnerabilities. It applies to the review context documented in the report.

Scope & record

Engagement dossier

Audit period
February 12–13, 2026
Audited commit
139a4505e23028e7d6875fdbca294487eae4fdd4
Technologies
JavaScript, 0x
Category
DEX

Files and paths in scope

  • deployment/scripts/deploy-optimized.js

Findings overview

Severity distribution

The counts below are transcribed from the published report. Status and issue detail remain subject to that report’s exact terminology.

FINDINGS01Documented in the published report
Low: 1
SeverityCount
Critical0
High0
Medium0
Low1
Informational0

Published findings

Findings

Findings below are reproduced from the complete Kann Audits security review. View the full PDF for complete scope, methodology, assumptions, and audit context.

Low

1 finding
L-01

Incorrect Constructor Arguments Used in ZeroExOptimized Verification

Low
Description

In the deployment script, the ‘ZeroExOptimized‘ contract is deployed using the bootstrapper address obtained from ‘fullMigration.getBootstrapper()‘. const zeroExOptimized = await deployContract(ZeroExOptimizedFactory, [await fullMigration.getBootstrapper()]); console.log("ZeroExOptimized deployed to:", zeroExOptimized.address); However, during the verification step, the script incorrectly uses the ‘FullMigration‘ contract address as the constructor argument. await verifyContract(hre, deploymentResults.contracts.ZeroExOptimized, [ deploymentResults.contracts.FullMigration]); This mismatch causes verification failures because the constructor arguments provided to the verification function do not match those used during deployment.

Root cause The verification logic does not account for the actual constructor parameter used when deploying ‘ZeroExOptimized‘. Instead of using the bootstrapper address returned by ‘fullMigration.getBootstrapper()‘, it mistakenly uses ‘fullMigration.address‘, resulting in incorrect verification data.

Recommendation

Pass bootstrapper as the constructor argument during verification. const bootstrapper = await fullMigration.getBootstrapper(); deploymentResults.bootstrapper = bootstrapper; await verifyContract(hre, deploymentResults.contracts.ZeroExOptimized, [ deploymentResults.bootstrapper])

Methodology

How Kann Audits reviews code

Kann Audits reports describe independent researcher review followed by collaborative analysis of findings and attack paths. The standard review foundation includes:

  1. 01Architecture and trust-boundary analysis
  2. 02Independent manual review
  3. 03State-transition and invariant analysis
  4. 04Access-control and integration review
  5. 05Adversarial testing and attack-path analysis
  6. 06Fix verification and regression review

Audit team

Researchers listed in the report

The public report does not list individual researcher names.

Final assessment

Documented outcome

The single low-severity finding was marked fixed.

The assessment applies only to the review context and limitations documented in the published report. Missing details are not inferred, and later changes require separate analysis.

Start a conversation

Planning your next release?

Share the system, fixed scope, and target date. Build enough time into the plan for review, remediation, and verification.