Skip to content

Implement the canonical milestonex_campaign.wasm binary and ship it as the default deployment artifact #43

Description

@P3az3

Problem Statement Closely related to Issue 14, this is the contract-side feature work: ensure the canonical campaign/ contract compiles to a milestonex_campaign.wasm artifact, gets wasm-opt -Oz'd, and is the binary that the deploy tooling ships.

Expected Outcome

  • Makefile target produces target/wasm32v1-none/release/milestonex_campaign.wasm.
  • make optimize runs wasm-opt -Oz and produces a sensible byte-size.
  • A regression test asserts the resulting WASM file exists and is < 64 KiB (Soroban ceiling for hosted contracts).

Acceptance Criteria

  • Binary exists after make build-wasm.
  • Size-cap test passes.
  • cargo build does not silently produce only the legacy core binary.

Implementation Notes

  • The Makefile already compiles -p milestonex-campaign .... Verify the artifact name.

Affected Files / Modules

  • Makefile
  • scripts/deploy.sh
  • README.md

Dependencies — Issue 14.

Metadata

Metadata

Assignees

Labels

GrantFox OSSIssue tracked in GrantFox OSSMaybe RewardedIssue may be eligible for a GrantFox rewardOfficial Campaign | FWC26Campaign: Official Campaign | FWC26featureNew capability or public surface.priority/p1Important bug / correctness / cleanup.releaseBuild / release artifact work.

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions