Qwik Optimizer Development
SkillDev toolsUse when modifying or reviewing the Qwik optimizer under packages/optimizer, Rust transform code, WASM/NAPI bindings, optimizer snapshots, or optimizer-facing runtime behavior.
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the Qwik Optimizer Development skill
What this skill tells your AI
The instructions your AI receives, as published by modem-dev/ossrules in public/files/qwik/.ruler/skills/qwik-optimizer-development/SKILL.md and read by ahel’s review.
Use this skill for packages/optimizer/** and Rust optimizer work. Keep the repo-wide rules from
.ruler/AGENTS.md in force.
Fast Path
- Identify whether the change is Rust transform logic, snapshots, WASM bindings, NAPI bindings, or TypeScript optimizer-facing integration.
- Read the closest Rust source, fixture, snapshot, and runtime helper that consumes the emitted shape before editing.
- Keep transform behavior deterministic: prefer explicit parser/AST cases and stable ordering over source-text heuristics.
- Use Rust-focused verification first; use
pnpm build.fullonly when a full optimizer/WASM rebuild is required. - If a runtime/core change is also involved, load
qwik-core-developmentfor that slice.
Source Map
- Rust optimizer core:
packages/optimizer/core/src/ - Rust fixtures:
packages/optimizer/core/src/fixtures/ - Rust snapshots:
packages/optimizer/core/src/snapshots/ - WASM bindings:
packages/optimizer/wasm/ - NAPI bindings:
packages/optimizer/napi/ - Optimizer package entry points:
packages/optimizer/src/ - Vite/Rollup integration:
packages/qwik-vite/src/
Verification
Use the smallest command that covers the change:
pnpm test.rust
pnpm test.rust.update
pnpm build.full
pnpm vitest run packages/qwik-vite/src/plugins/plugin.unit.ts
pnpm test.rust maps to make test, which runs Cargo tests for
packages/optimizer/core/Cargo.toml. Use pnpm test.rust.update only when snapshot updates are
intentional.
Hard Rules
- Do not hand-edit generated optimizer build output in
dist/,lib/, ortarget/. - Do not update snapshots without understanding the transform behavior change.
- Add or update a transform fixture/snapshot for every optimizer behavior change, including negative cases where the transform must not run.
- Keep optimizer output and runtime JSX/QRL/loader semantics in sync. If a transform changes an emitted attribute, import, segment, or capture shape, inspect the runtime consumer too.
- After touching
packages/optimizer/core/, do not claim verification without Rust test/build evidence or a recorded blocker. - If this skill becomes stale after source inspection, update it before finishing or record why guidance edits were out of scope.
Signals
- GitHub stars
- 29
- Forks
- 1
- Last commit
- Sep 2026
Advanced
- Catalog kind
- skill
- Gateway key
qwik-optimizer-development- Source
- github.com/modem-dev/ossrules