open-standards/wai/wai-rs/tests/vectors/generate/generate.json
Transaction Science dc81be9bb8 wai.generate.spectral/3: shape grammar (radial / mirror / gradient) + vocabulary
Extends the generator beyond plane-wave blobs to real STRUCTURE, still pure-integer
and byte-exact. Each drawn component is now one of three types, mixed by the
prompt's shape intent:
  - plane  : directional waves (as before)
  - radial : concentric rings, sin(fr·|p−centre| + φ) with the integer distance via
             u64::isqrt — sun / ring / target / ripple / halo / mandala
  - mirror : bilateral 4-fold fold, sin(fx·|x−cx| + fy·|y−cy| + φ) — kaleidoscope /
             crystal / snowflake / gem / prism / butterfly
plus a vertical brightness GRADIENT (sky / dawn / dusk / fade / horizon).

- Lexicon entries grew to 8 elements [r,g,b,freq,orient,radial,mirror,gradient]
  (model version /3); ~40 shape words added (a SHAPE overlay merged onto the base
  colour/texture entries in tools/wai_generate_model.py).
- src/generate.rs: an Intent struct carries hue/freq/orient + radial/mirror/gradient;
  generate() draws each component's type from the plane/radial/mirror mix and adds
  the gradient ramp. Pure i64 (isqrt is exact); the prompt+seed still fix the draw.
- Committed model + pin regenerated (4bd80c0ef51bb843); never-skip test holds
  (pin + determinism + sensitivity).

Verified: ring/target → concentric rings, kaleidoscope/crystal → symmetry,
sky/gradient → vertical fade, all byte-exact and reproducible. Live at
wai.transaction.science/generate with shape example chips + updated copy.

Co-Authored-By: Claude Opus 4.8 <[email protected]>
2026-06-27 04:36:16 -04:00

1 line
100 B
JSON

{"prompt":"a calm spectral horizon","seed":7,"steps":4,"h":96,"w":96,"rgb_hash":"4bd80c0ef51bb843"}