{"record":{"id":"9929157489d7cc74","repo":"zed-industries/zed","slug":"unsupported-architecture","errorCode":null,"errorMessage":"unsupported architecture","messagePattern":"unsupported architecture","errorType":"exception","errorClass":"anyhow::Error","httpStatus":null,"severity":"error","filePath":"crates/extension_host/src/wasm_host/wit/since_v0_8_0.rs","lineNumber":873,"sourceCode":"    ) -> wasmtime::Result<Result<github::GithubRelease, String>> {\n        maybe!(async {\n            let release = ::http_client::github::get_release_by_tag_name(\n                &repo,\n                &tag,\n                self.host.http_client.clone(),\n            )\n            .await?;\n            Ok(release.into())\n        })\n        .await\n        .to_wasmtime_result()\n    }\n}\n\nimpl platform::Host for WasmState {\n    async fn current_platform(\n        &mut self,\n    ) -> wasmtime::Result<(platform::Os, platform::Architecture)> {\n        Ok((\n            match env::consts::OS {\n                \"macos\" => platform::Os::Mac,\n                \"linux\" => platform::Os::Linux,\n                \"windows\" => platform::Os::Windows,\n                _ => return Err(wasmtime::Error::msg(\"unsupported os\")),\n            },\n            match env::consts::ARCH {\n                \"aarch64\" => platform::Architecture::Aarch64,\n                \"x86_64\" => platform::Architecture::X8664,\n                _ => return Err(wasmtime::Error::msg(\"unsupported architecture\")),\n            },\n        ))\n    }\n}\n\nimpl From<std::process::Output> for process::Output {\n    fn from(output: std::process::Output) -> Self {","sourceCodeStart":855,"sourceCodeEnd":891,"githubUrl":"https://github.com/zed-industries/zed/blob/5a9b9558db01a6b906cec2fb70a797affdc58cdd/crates/extension_host/src/wasm_host/wit/since_v0_8_0.rs#L855-L891","documentation":"Companion to the OS check in platform::Host::current_platform: env::consts::ARCH must be \"aarch64\" or \"x86_64\" to map onto platform::Architecture. Any other architecture constant — arm, armv7, i686/x86, riscv64, loongarch64, powerpc64 — bails with \"unsupported architecture\". It is a compile-time constant, so the failure is deterministic per build.","triggerScenarios":"Executing the extension host on a 32-bit x86 (i686), armv7, riscv64, or loongarch64 machine when an extension calls current_platform().","commonSituations":"Building/running on ARMv7 boards, 32-bit chroots, or emerging architectures; every extension that chooses release artifacts by architecture hits the bail.","solutions":["Run on aarch64 or x86_64, which are the only supported architectures","When porting, add a match arm only together with a matching platform::Architecture WIT variant, or gate extension loading off entirely on that arch","File an upstream issue requesting the architecture if the platform is viable"],"exampleFix":null,"handlingStrategy":"fallback","validationCode":"if !matches!(std::env::consts::ARCH, \"aarch64\" | \"x86_64\") {\n    // avoid current_platform(); no WIT Architecture variant exists for this build\n}","typeGuard":"fn is_supported_arch() -> bool {\n    matches!(std::env::consts::ARCH, \"aarch64\" | \"x86_64\")\n}","tryCatchPattern":null,"preventionTips":["Build/deploy only on aarch64 or x86_64","Treat this bail as a porting signal: add the arm plus a WIT variant upstream, not a runtime workaround"],"tags":["platform","architecture","wasm","extension","portability"],"backgroundTag":"unsupported-platform","analyzedSha":"5a9b9558db01a6b906cec2fb70a797affdc58cdd","analyzedAt":"2026-08-20T19:29:52.058Z","contentChangedAt":"2026-08-20T19:29:52.058Z","schemaVersion":2},"datasetVersion":"2026-09-14T05:17:10.506Z"}