Files
zeekay 7009fb5f38 initial release v0.1.0
Rust crate for writing zip-mounted wasm handlers per HIP-0105.

- zip-rs lib: #[handler] proc macro, __base_alloc/__base_free allocator
  exports, JSON envelope helpers, Error/Result types.
- zip-rs-macros: proc macro implementation (syn 2 + quote).
- Three end-to-end examples: hello, validate-email (port of canonical
  AssemblyScript fixture), policy-eval.
- CI workflow builds wasm32-wasip1 artifacts and verifies them against
  the production wasmvm host in hanzoai/base.

12 unit tests pass. Wasm sizes: hello 87 KB, validate-email 91 KB,
policy-eval 100 KB. validate-email emits byte-equivalent JSON output
to the AS reference fixture.
2026-05-18 21:19:17 -07:00

17 lines
394 B
Bash
Executable File

#!/usr/bin/env bash
# Build the policy-eval handler to wasm32-wasip1.
set -euo pipefail
cd "$(dirname "$0")"
cargo build --release --target wasm32-wasip1 -p zip-rs-example-policy-eval
cp ../../target/wasm32-wasip1/release/policy_eval.wasm ./policy_eval.wasm
if command -v wasm-opt >/dev/null 2>&1; then
wasm-opt -Oz -o ./policy_eval.wasm ./policy_eval.wasm
fi
ls -lh ./policy_eval.wasm