Skip to content

feat(oci): embed full component metadata for wasm.directory rendering - #313

Merged
avrabe merged 1 commit into
mainfrom
docs/component-metadata-for-wasm-directory
Jul 23, 2026
Merged

feat(oci): embed full component metadata for wasm.directory rendering#313
avrabe merged 1 commit into
mainfrom
docs/component-metadata-for-wasm-directory

Conversation

@avrabe

@avrabe avrabe commented Jul 23, 2026

Copy link
Copy Markdown
Contributor

Why (from the "extend the documentation on wasm.directory" ask)

wasm.directory renders a component's WIT interface (with its /// doc comments) plus the component's embedded package metadatadescription, licenses, source, authors, version — which cargo-component bakes into the wasm package-metadata section from Cargo.toml (confirmed by reading component-cli/src/registry/inspect.rs).

Our flight crate carried only name/description/version, and — being a standalone crate (its own [workspace]) — inherits nothing from the repo root, so the listing had no license and no source link. Empty metadata → bare listing.

What

  • wasm/cm/flight/Cargo.toml: add license, repository, homepage, documentation, authors, keywords, categories; rewrite the description for an outside reader (drop the internal meld→loom→synth→gale jargon and the confusing (v1.26.0); lead with "formally-verified" + the actual verification tools).
  • docs/OCI-DISTRIBUTION.md: document this as the metadata contract every published relay component must carry — so the per-component publishing for falcon-rate/estimator/mixer (jess#167) inherits it, not just falcon-flight. Also mark the wasm.directory listing LIVE (namespace accepted, #467 merged → indexed at wasm.directory/pulseengine/falcon-flight/1.128.0).

Takes effect on the next release's ghcr push. No code or interface change.

Note on portability

The rewritten description deliberately stays target-agnostic (no Pixhawk 6X-RT / X500-quad specifics) — per the reminder that today's board isn't the contract. relay's components describe the portable verified core; the target/airframe binding is jess-side.

🤖 Generated with Claude Code

…real page

wasm.directory shows a component's WIT (with doc comments) + its EMBEDDED
package metadata (description/licenses/source/authors/version), which
cargo-component bakes into the wasm `package-metadata` section from Cargo.toml.
The flight crate carried only name/description/version, and — being a standalone
crate — inherits nothing from the workspace root, so the listing had no license
or source link.

Add license/repository/homepage/documentation/authors/keywords/categories, and
rewrite the description for a stranger (drop the internal meld→loom→synth→gale
jargon and the confusing "(v1.26.0)"; lead with "formally-verified" + the actual
verification tools). Document this as the metadata contract EVERY published
relay component must carry (docs/OCI-DISTRIBUTION.md) — the per-component
publishing for falcon-rate/estimator/mixer (jess#167) inherits it. Also mark the
wasm.directory listing LIVE (namespace accepted, #467 merged).

Takes effect on the next release's ghcr push; no code/interface change.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01HvusAXYbHLyv3uTzfBcMbG
@avrabe
avrabe enabled auto-merge (squash) July 23, 2026 20:10
@avrabe
avrabe merged commit 977c550 into main Jul 23, 2026
13 checks passed
@avrabe
avrabe deleted the docs/component-metadata-for-wasm-directory branch July 23, 2026 20:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant