mirror of
https://github.com/nearai/ironclaw.git
synced 2026-09-03 08:06:01 +08:00
* fix(registry): use canonical underscore names in manifests to fix WASM install
Manifest `name` fields used hyphens (e.g. "google-calendar") but the internal
canonical form uses underscores ("google_calendar"). The release workflow
packages .wasm files named after the manifest `name`, so archives contained
"google-calendar.wasm". The extension manager canonicalized the name to
"google_calendar" before extraction, looked for "google_calendar.wasm", and
failed with "tar.gz archive does not contain 'google_calendar.wasm'".
Two-part fix:
- Update all 9 hyphenated manifest `name` fields and `_bundles.json` refs to
use the canonical underscore form. Future releases will package archives
with matching filenames.
- Add hyphenated-name fallback in both tar.gz extractors so existing v0.22.0
release artifacts (which contain hyphenated filenames) remain installable.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* style: cargo fmt
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
* fix: address PR review — extract shared helper, rename manifest files, improve errors
- Extract `ArchiveFilenames` helper to `naming.rs` to deduplicate alias
matching logic between `manager.rs` and `installer.rs`
- Rename all 9 manifest JSON files to match their canonical underscore
`name` fields (e.g. `google-calendar.json` → `google_calendar.json`)
- Improve "not found" error messages to list both canonical and alias
filenames that were tried
- Update `test_extract_correct_wasm_from_tool_bundle` to use canonical
`slack_tool` name matching current production path
- Update artifact naming test script for renamed manifests
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
---------
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
38 lines
907 B
JSON
38 lines
907 B
JSON
{
|
|
"name": "slack_tool",
|
|
"display_name": "Slack Tool",
|
|
"kind": "tool",
|
|
"version": "0.2.1",
|
|
"wit_version": "0.3.0",
|
|
"description": "Your agent uses Slack to post and read messages in your workspace",
|
|
"keywords": [
|
|
"messaging",
|
|
"chat",
|
|
"workspace"
|
|
],
|
|
"source": {
|
|
"dir": "tools-src/slack",
|
|
"capabilities": "slack-tool.capabilities.json",
|
|
"crate_name": "slack-tool"
|
|
},
|
|
"artifacts": {
|
|
"wasm32-wasip2": {
|
|
"url": "https://github.com/nearai/ironclaw/releases/download/ironclaw-v0.22.0/tool-slack-0.2.1-wasm32-wasip2.tar.gz",
|
|
"sha256": "927519e5b7734beeb022d3b8bbd152e0e6b9f67c9452a8ad47809d3c4221a137"
|
|
}
|
|
},
|
|
"auth_summary": {
|
|
"method": "oauth",
|
|
"provider": "Slack",
|
|
"secrets": [
|
|
"slack_bot_token"
|
|
],
|
|
"shared_auth": null,
|
|
"setup_url": "https://api.slack.com/apps"
|
|
},
|
|
"tags": [
|
|
"default",
|
|
"messaging"
|
|
]
|
|
}
|