Skip to content
cccskills
FreePublished on GitHub

vendor-submodules

Locate and sync the reference specs and runtimes vendored under vendor/ — the Wasm, WASI P3, and Component Model specs, and the wasm-tools and wasmtime sources. Use whenever an answer should come from one of those sources rather than memory, and whenever vendor/ is missing or stale.

The English summary is being prepared. Showing the original description.

wado-lang/wado119 stars(GitHub 119 + cccskills 0)

Run score Not tested

See how to install

Files included (3)

  • SKILL.md3.2 KB
  • reference/current_thread_split.patch1.9 KB
  • reference/trace_fiber_roots.patch3.6 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

What is under vendor/

  • vendor/wasm/ - WebAssembly/spec
  • vendor/wasi/ - WebAssembly/WASI
  • vendor/component-model/ - WebAssembly/component-model (CM spec)
    • Canonical built-ins: vendor/component-model/design/mvp/CanonicalABI.md
    • Concurrency (async, streams, futures): vendor/component-model/design/mvp/Concurrency.md
    • Explainer: vendor/component-model/design/mvp/Explainer.md
  • vendor/wasmtime/ - a Wasm runtime with WASI P3 support
  • vendor/wasm-tools/ - the Wasm toolchain the Wado compiler builds on
  • vendor/antlr4/ - ANTLR4, the grammar dialect Gale targets. Read package-gale/AGENTS.md first: most of this tree must not be read
  • vendor/wasi-webgpu/ - the wasi:webgpu proposal
  • vendor/protobuf-spec/ - protobuf.dev's source, which is the protobuf spec
    • Wire format: vendor/protobuf-spec/content/programming-guides/encoding.md
    • The .proto grammar, one file per syntax and edition: vendor/protobuf-spec/content/reference/protobuf/{proto2,proto3,edition-2023,edition-2024}-spec.md
    • Edition features: vendor/protobuf-spec/content/editions/features.md
  • vendor/protobuf/ - protocolbuffers/protobuf, for the .proto files the spec does not carry: src/google/protobuf/descriptor.proto, the well-known types, and the unittest*.proto / test_messages_*.proto Grog parses as a corpus

git submodule update --init --recommend-shallow fetches them.

Syncing

mise run sync-vendor

vendor/wasmtime goes to the exact version in Cargo.lock, which WASI P3 compatibility requires. The other submodules go to their remote HEAD.

Building against a patched wasmtime

To test a change to wasmtime itself, edit vendor/wasmtime in place and add to the workspace Cargo.toml:

[patch.crates-io]
wasmtime = { path = "vendor/wasmtime/crates/wasmtime" }
wasmtime-wasi = { path = "vendor/wasmtime/crates/wasi" }
wasmtime-wasi-http = { path = "vendor/wasmtime/crates/wasi-http" }
wasmtime-wasi-tls = { path = "vendor/wasmtime/crates/wasi-tls" }

Those four names redirect 31 crates. The cranelift-*, pulley-*, wasmtime-internal-* and wiggle* crates follow through the dependency graph. sync-vendor already holds the submodule at the Cargo.lock version, so the sources match what the workspace expects and nothing needs porting.

Keep the stanza on a throwaway branch. CI checks out without submodules (submodules: false, also actions/checkout's default), so on main every job dies while parsing the manifest. Landing it means turning submodule checkout on across every workflow.

reference/ holds patches written this way, each with its measurement:

  • current_thread_split.patch — splits the cold deferred-frame replay out of StoreOpaque::current_thread so the fast path inlines. Removes ~1 point of CPU; throughput flat.
  • trace_fiber_roots.patch — tracks fiber-owning reps instead of scanning the whole component ResourceTable per GC. Not measurable.

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

Measure Wado's performance or the size of the Wasm it generates, and refresh the benchmark/ and wasm-size/ README files. Use for any benchmarking or size-measurement request, whichever benchmark it names.

The English summary is being prepared. Showing the original description.

wado-lang/wado119Updated Oct 27, 2026

Measure how long GitHub Actions jobs and steps took across past runs, and find the pull request that made CI slower. Use for any question about CI duration, a slow job, or when CI got slow.

The English summary is being prepared. Showing the original description.

wado-lang/wado119Updated Oct 27, 2026

How to answer code review feedback — a human reviewer, CodeRabbit, or any review bot. Verify the findings, report the classes they are instances of to the user before fixing, then fix the class rather than the sites named. Put design decisions to the user, then run /distill. Invoke when responding to review comments on a pull request, or to the findings of a /code-review run.

The English summary is being prepared. Showing the original description.

wado-lang/wado119Updated Oct 27, 2026

Investigate and improve code coverage for the wado-compiler crate. Use for any question about what the tests do and do not reach, dead code included.

The English summary is being prepared. Showing the original description.

wado-lang/wado119Updated Oct 27, 2026

cr

Free

Review the branch with /code-review at high, then answer the findings with /code-review-response.

The English summary is being prepared. Showing the original description.

wado-lang/wado119Updated Oct 27, 2026

Use rust-gdb to inspect variables and step through code without modifying it. Prefer it over print debugging for any investigation into what the compiler is actually doing (lldb is unavailable on Claude Code Web).

The English summary is being prepared. Showing the original description.

wado-lang/wado119Updated Oct 27, 2026

See all skills by wado-lang

Report a problem with this skill