StratoSDK is a framework with a declarative approach similar to Flutter/React, written and designed entirely for Rust.
| 1 | # WarpUI Import License Audit |
| 2 | |
| 3 | Status: **MIT source imported, AGPL Warp dependencies excluded, workspace checks passing** |
| 4 | |
| 5 | This audit was performed to evaluate whether the MIT-licensed WarpUI crates from |
| 6 | `https://github.com/warpdotdev/warp` can be copied into StratoSDK without |
| 7 | bringing AGPL-licensed Warp workspace code into this repository. |
| 8 | |
| 9 | ## Source And Target |
| 10 | |
| 11 | | Item | Value | |
| 12 | | --- | --- | |
| 13 | | Source repository | `https://github.com/warpdotdev/warp` | |
| 14 | | Source commit | `c61ad5b8a8c3980148f91c76a4ce17d1bf8105fc` | |
| 15 | | Latest source license re-check | `e9ff9324ea14641326ae62f49e6ba0d39f6954b2` | |
| 16 | | Target repository | `https://github.com/StratoHQ/StratoSDK` | |
| 17 | | Target branch | `import-warpui-mit-core` | |
| 18 | | Target starting commit | `feff8859bed8d3ef35561c79a9b6f4281381eda3` | |
| 19 | | Audit date | `2026-04-30` | |
| 20 | |
| 21 | ## Source License Findings |
| 22 | |
| 23 | The Warp README at the audited source commit states that Warp's UI framework, |
| 24 | specifically the `warpui_core` and `warpui` crates, is licensed under |
| 25 | `LICENSE-MIT`, and that the rest of the repository is licensed under |
| 26 | `LICENSE-AGPL`. |
| 27 | |
| 28 | The Warp root `Cargo.toml` declares: |
| 29 | |
| 30 | ```toml |
| 31 | [workspace.package] |
| 32 | license = "AGPL-3.0-only" |
| 33 | publish = false |
| 34 | ``` |
| 35 | |
| 36 | The two candidate crates explicitly declare MIT: |
| 37 | |
| 38 | ```toml |
| 39 | # crates/warpui_core/Cargo.toml |
| 40 | license = "MIT" |
| 41 | |
| 42 | # crates/warpui/Cargo.toml |
| 43 | license = "MIT" |
| 44 | ``` |
| 45 | |
| 46 | The hard license gate therefore passed for the crate manifests themselves, but |
| 47 | failed at the dependency boundary described below. |
| 48 | |
| 49 | ## Copied Paths |
| 50 | |
| 51 | The following MIT-scoped paths were copied after the initial hard stop audit. |
| 52 | No AGPL-licensed Warp workspace crate was copied. |
| 53 | |
| 54 | | Source path | Target path | Status | |
| 55 | | --- | --- | --- | |
| 56 | | `crates/warpui_core` | `crates/strato-ui-core` | Copied, workspace-enabled, crate boundary renamed for Strato | |
| 57 | | `crates/warpui` | `crates/strato-ui-renderer` | Copied, workspace-enabled, crate boundary renamed for Strato | |
| 58 | | `LICENSE-MIT` | `LICENSES/WARPUI-MIT.txt` | Copied | |
| 59 | |
| 60 | ## Skipped Paths |
| 61 | |
| 62 | | Source path | Reason | |
| 63 | | --- | --- | |
| 64 | | `crates/markdown_parser` | Local Warp workspace crate inherits `AGPL-3.0-only`. | |
| 65 | | `crates/sum_tree` | Local Warp workspace crate inherits `AGPL-3.0-only`. | |
| 66 | | `crates/warp_util` | Local Warp workspace crate inherits `AGPL-3.0-only`. | |
| 67 | | `crates/string-offset` | Local Warp workspace crate inherits `AGPL-3.0-only`. | |
| 68 | | `crates/settings_value` | Local Warp workspace crate inherits `AGPL-3.0-only`. | |
| 69 | | `crates/command` | Local Warp workspace crate inherits `AGPL-3.0-only`. | |
| 70 | | `crates/asset_cache` | Local Warp workspace crate inherits `AGPL-3.0-only`. | |
| 71 | | `crates/virtual_fs` | Local Warp workspace crate inherits `AGPL-3.0-only`. | |
| 72 | | `crates/ui_components` | Local Warp workspace crate inherits `AGPL-3.0-only`. | |
| 73 | | `crates/warpui_extras` | Local Warp workspace crate inherits `AGPL-3.0-only`. | |
| 74 | |
| 75 | ## Local Workspace Dependency Audit |
| 76 | |
| 77 | Only `warpui_core` and `warpui` are in the explicitly MIT-permitted import set. |
| 78 | Every other local Warp workspace dependency listed here is unsafe for copying |
| 79 | because its manifest uses `license.workspace = true`, which resolves to the |
| 80 | Warp workspace license `AGPL-3.0-only`. |
| 81 | |
| 82 | | Dependency | Used by | Kind / target | Manifest license finding | Status | |
| 83 | | --- | --- | --- | --- | --- | |
| 84 | | `warpui_core` | `warpui` | normal, dev | Explicit `license = "MIT"` | SAFE, copied as `strato-ui-core` | |
| 85 | | `warpui` | `warpui` | dev self-reference | Explicit `license = "MIT"` | SAFE, copied as `strato-ui-renderer` | |
| 86 | | `markdown_parser` | `warpui_core`, `warpui` | normal | `license.workspace = true` -> `AGPL-3.0-only` | UNSAFE at source, replaced with clean-room Strato formatted text module | |
| 87 | | `string-offset` | `warpui_core` | normal | `license.workspace = true` -> `AGPL-3.0-only` | UNSAFE at source, replaced with clean-room Strato text offset module | |
| 88 | | `sum_tree` | `warpui_core`, `warpui` | normal | `license.workspace = true` -> `AGPL-3.0-only` | UNSAFE at source, replaced with clean-room Strato linear index module | |
| 89 | | `settings_value` | `warpui_core` | optional normal | `license.workspace = true` -> `AGPL-3.0-only` | UNSAFE at source, removed from imported manifests | |
| 90 | | `warp_util` | `warpui_core` | normal | `license.workspace = true` -> `AGPL-3.0-only` | UNSAFE at source, replaced at imported boundary | |
| 91 | | `command` | `warpui_core`, `warpui` | dev and non-macOS normal | `license.workspace = true` -> `AGPL-3.0-only` | UNSAFE at source, replaced at imported boundary | |
| 92 | | `asset_cache` | `warpui` | dev | `license.workspace = true` -> `AGPL-3.0-only` | UNSAFE at source, removed from imported manifests | |
| 93 | | `virtual-fs` | `warpui` | Linux dev | `license.workspace = true` -> `AGPL-3.0-only` | UNSAFE at source, removed from imported manifests | |
| 94 | |
| 95 | Additional local crates named in the migration guard list were also inspected: |
| 96 | |
| 97 | | Dependency | Manifest license finding | Status | |
| 98 | | --- | --- | --- | |
| 99 | | `ui_components` | `license.workspace = true` -> `AGPL-3.0-only` | UNSAFE | |
| 100 | | `warpui_extras` | `license.workspace = true` -> `AGPL-3.0-only` | UNSAFE | |
| 101 | |
| 102 | ## Unsafe Reference Evidence |
| 103 | |
| 104 | The MIT candidate source originally referenced unsafe local dependencies in |
| 105 | non-trivial implementation paths. The current Strato import removes the active |
| 106 | references listed below: |
| 107 | |
| 108 | | Identifier | Example source references | Risk | |
| 109 | | --- | --- | --- | |
| 110 | | `markdown_parser` | formatted text and font/header parsing in `warpui_core` and examples | Replaced with `strato_ui_core::formatted_text`, a clean-room minimal formatted text model/parser. | |
| 111 | | `sum_tree` | viewported list and table layout internals | Replaced with `strato_ui_core::linear_index`, a clean-room linear cursor/index structure. | |
| 112 | | `warp_util` | platform shell family handling | Replaced in the imported boundary with a local `ShellFamily` implementation. | |
| 113 | | `command` | non-macOS windowing process launch paths and tests | Replaced in the imported boundary with `std::process::Command`. | |
| 114 | | `settings_value` | optional derives and implementations | Removed from imported manifests and code paths in the first cleanup pass. | |
| 115 | | `string-offset` | normal dependency of `warpui_core` | Replaced with `strato_ui_core::text_offsets`, a clean-room offset module. | |
| 116 | |
| 117 | The candidate source is large enough that replacing these safely is not a small |
| 118 | mechanical edit: |
| 119 | |
| 120 | | Source path | Approximate size | |
| 121 | | --- | --- | |
| 122 | | `crates/warpui_core` | `3.1M` | |
| 123 | | `crates/warpui` | `19M` | |
| 124 | | Combined file count | `387` files | |
| 125 | |
| 126 | ## Direct Dependency Inventory |
| 127 | |
| 128 | This inventory was produced with `cargo metadata --no-deps --format-version 1` |
| 129 | from the Warp source checkout. Registry dependencies are consumed from crates.io |
| 130 | through Strato workspace manifests. No local AGPL Warp dependency is copied. |
| 131 | Forked Warp git dependencies were treated as ambiguous and replaced with |
| 132 | crates.io packages or clean Strato adaptations. |
| 133 | |
| 134 | ### `warpui_core` |
| 135 | |
| 136 | | Dependency | Class | Kind / target | Status | |
| 137 | | --- | --- | --- | --- | |
| 138 | | `anyhow` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 139 | | `async-broadcast` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 140 | | `async-channel` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 141 | | `async-executor` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 142 | | `async-fs` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 143 | | `async-task` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 144 | | `bounded-vec-deque` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 145 | | `bytes` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 146 | | `cfg-if` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 147 | | `chrono` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 148 | | `dashmap` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 149 | | `derivative` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 150 | | `derive_more` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 151 | | `dirs` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 152 | | `enum-iterator` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 153 | | `float-cmp` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 154 | | `futures` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 155 | | `futures-lite` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 156 | | `futures-util` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 157 | | `image` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 158 | | `infer` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 159 | | `instant` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 160 | | `itertools` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 161 | | `lazy_static` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 162 | | `log` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 163 | | `markdown_parser` | local Warp workspace | normal / all | UNSAFE: AGPL via workspace license inheritance | |
| 164 | | `minimp4` | crates.io | optional normal / all | External, not copied; future third-party license audit required | |
| 165 | | `num-derive` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 166 | | `num-traits` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 167 | | `num_cpus` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 168 | | `openh264` | crates.io | optional normal / all | External, not copied; future third-party license audit required | |
| 169 | | `ordered-float` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 170 | | `parking_lot` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 171 | | `pathfinder_color` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 172 | | `pathfinder_geometry` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 173 | | `rand` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 174 | | `rangemap` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 175 | | `raw-window-handle` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 176 | | `resvg` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 177 | | `rstar` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 178 | | `rustc-hash` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 179 | | `schemars` | crates.io | optional normal / all | External, not copied; future third-party license audit required | |
| 180 | | `serde` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 181 | | `serde_json` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 182 | | `settings_value` | local Warp workspace | optional normal / all | UNSAFE: AGPL via workspace license inheritance | |
| 183 | | `similar` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 184 | | `smallvec` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 185 | | `string-offset` | local Warp workspace | normal / all | UNSAFE: AGPL via workspace license inheritance | |
| 186 | | `strum` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 187 | | `strum_macros` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 188 | | `sum_tree` | local Warp workspace | normal / all | UNSAFE: AGPL via workspace license inheritance | |
| 189 | | `tempfile` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 190 | | `thiserror` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 191 | | `titlecase` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 192 | | `tokio` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 193 | | `trait-set` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 194 | | `vec1` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 195 | | `warp_util` | local Warp workspace | normal / all | UNSAFE: AGPL via workspace license inheritance | |
| 196 | | `command` | local Warp workspace | dev / all | UNSAFE: AGPL via workspace license inheritance | |
| 197 | | `concat-idents` | crates.io | dev / all | External, not copied; future third-party license audit required | |
| 198 | | `ctor` | crates.io | dev / all | External, not copied; future third-party license audit required | |
| 199 | | `rust-embed` | crates.io | dev / all | External, not copied; future third-party license audit required | |
| 200 | | `simplelog` | crates.io | dev / all | External, not copied; future third-party license audit required | |
| 201 | | `cfg_aliases` | crates.io | build / all | External, not copied; future third-party license audit required | |
| 202 | | `arboard` | crates.io | normal / Linux or Windows | External, not copied; future third-party license audit required | |
| 203 | | `async-io` | crates.io | normal / non-wasm | External, not copied; future third-party license audit required | |
| 204 | | `ctrlc` | crates.io | normal / non-wasm | External, not copied; future third-party license audit required | |
| 205 | | `font-kit` | git | normal / non-wasm | Warp git fork excluded; replaced with crates.io `font-kit` | |
| 206 | | `gloo` | crates.io | normal / wasm | External, not copied; future third-party license audit required | |
| 207 | | `wasm-bindgen-futures` | crates.io | normal / wasm | External, not copied; future third-party license audit required | |
| 208 | | `woothee` | crates.io | normal / wasm | External, not copied; future third-party license audit required | |
| 209 | |
| 210 | ### `warpui` |
| 211 | |
| 212 | | Dependency | Class | Kind / target | Status | |
| 213 | | --- | --- | --- | --- | |
| 214 | | `anyhow` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 215 | | `async-task` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 216 | | `bytemuck` | crates.io | optional normal / all | External, not copied; future third-party license audit required | |
| 217 | | `cfg-if` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 218 | | `dashmap` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 219 | | `derive_more` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 220 | | `futures` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 221 | | `futures-util` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 222 | | `instant` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 223 | | `itertools` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 224 | | `lazy_static` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 225 | | `log` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 226 | | `markdown_parser` | local Warp workspace | normal / all | UNSAFE: AGPL via workspace license inheritance | |
| 227 | | `num-traits` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 228 | | `ordered-float` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 229 | | `parking_lot` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 230 | | `pathfinder_color` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 231 | | `pathfinder_geometry` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 232 | | `sum_tree` | local Warp workspace | normal / all | UNSAFE: AGPL via workspace license inheritance | |
| 233 | | `takecell` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 234 | | `thiserror` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 235 | | `vec1` | crates.io | normal / all | External, not copied; future third-party license audit required | |
| 236 | | `version-compare` | crates.io | optional normal / all | External, not copied; future third-party license audit required | |
| 237 | | `warpui_core` | local Warp workspace | normal / all | SAFE MIT candidate, copied as `strato-ui-core` | |
| 238 | | `wgpu` | crates.io | optional normal / all | External, not copied; future third-party license audit required | |
| 239 | | `asset_cache` | local Warp workspace | dev / all | UNSAFE: AGPL via workspace license inheritance | |
| 240 | | `env_logger` | crates.io | dev / all | External, not copied; future third-party license audit required | |
| 241 | | `futures-timer` | crates.io | dev / all | External, not copied; future third-party license audit required | |
| 242 | | `image` | crates.io | dev / all | External, not copied; future third-party license audit required | |
| 243 | | `rust-embed` | crates.io | dev / all | External, not copied; future third-party license audit required | |
| 244 | | `warpui` | local Warp workspace | dev / all | SAFE MIT candidate, copied as `strato-ui-renderer` | |
| 245 | | `bindgen` | crates.io | build / all | External, not copied; future third-party license audit required | |
| 246 | | `cc` | crates.io | build / all | External, not copied; future third-party license audit required | |
| 247 | | `cfg_aliases` | crates.io | build / all | External, not copied; future third-party license audit required | |
| 248 | | `arboard` | crates.io | normal / Linux or Windows | External, not copied; future third-party license audit required | |
| 249 | | `native-dialog` | crates.io | normal / Linux or Windows | External, not copied; future third-party license audit required | |
| 250 | | `open` | crates.io | normal / Linux or Windows | External, not copied; future third-party license audit required | |
| 251 | | `global-hotkey` | crates.io | normal / non-macOS and non-wasm | External, not copied; future third-party license audit required | |
| 252 | | `async-io` | crates.io | normal / non-wasm | External, not copied; future third-party license audit required | |
| 253 | | `ctrlc` | crates.io | normal / non-wasm | External, not copied; future third-party license audit required | |
| 254 | | `font-kit` | git | normal / non-wasm, Linux, macOS | Warp git fork excluded; replaced with crates.io `font-kit` | |
| 255 | | `bimap` | crates.io | normal / non-macOS | External, not copied; future third-party license audit required | |
| 256 | | `command` | local Warp workspace | normal / non-macOS | UNSAFE: AGPL via workspace license inheritance | |
| 257 | | `cosmic-text` | git | normal / non-macOS | Warp git fork excluded; replaced with crates.io `cosmic-text` | |
| 258 | | `derivative` | crates.io | normal / non-macOS | External, not copied; future third-party license audit required | |
| 259 | | `fontdb` | crates.io | normal / non-macOS | External, not copied; future third-party license audit required | |
| 260 | | `memmap2` | crates.io | normal / non-macOS | External, not copied; future third-party license audit required | |
| 261 | | `owned_ttf_parser` | crates.io | normal / non-macOS | External, not copied; future third-party license audit required | |
| 262 | | `resvg` | crates.io | normal / non-macOS | External, not copied; future third-party license audit required | |
| 263 | | `serde` | crates.io | normal / non-macOS | External, not copied; future third-party license audit required | |
| 264 | | `version-compare` | crates.io | normal / non-macOS | External, not copied; future third-party license audit required | |
| 265 | | `winit` | git | normal / non-macOS | Warp git fork excluded; replaced with crates.io `winit` | |
| 266 | | `gloo` | crates.io | normal / wasm | External, not copied; future third-party license audit required | |
| 267 | | `js-sys` | crates.io | normal / wasm | External, not copied; future third-party license audit required | |
| 268 | | `wasm-bindgen` | crates.io | normal / wasm | External, not copied; future third-party license audit required | |
| 269 | | `wasm-bindgen-futures` | crates.io | normal / wasm | External, not copied; future third-party license audit required | |
| 270 | | `web-sys` | crates.io | normal / wasm | External, not copied; future third-party license audit required | |
| 271 | | `blocking` | crates.io | normal / Linux | External, not copied; future third-party license audit required | |
| 272 | | `dirs` | crates.io | normal / Linux | External, not copied; future third-party license audit required | |
| 273 | | `fontconfig` | crates.io | normal / Linux | External, not copied; future third-party license audit required | |
| 274 | | `futures-lite` | crates.io | normal / Linux | External, not copied; future third-party license audit required | |
| 275 | | `nix` | crates.io | normal / Linux | External, not copied; future third-party license audit required | |
| 276 | | `notify-rust` | crates.io | normal / Linux | External, not copied; future third-party license audit required | |
| 277 | | `tini` | crates.io | normal / Linux | External, not copied; future third-party license audit required | |
| 278 | | `urlencoding` | crates.io | normal / Linux | External, not copied; future third-party license audit required | |
| 279 | | `x11-dl` | crates.io | normal / Linux | External, not copied; future third-party license audit required | |
| 280 | | `x11rb` | crates.io | normal / Linux | External, not copied; future third-party license audit required | |
| 281 | | `zbus` | crates.io | normal / Linux | External, not copied; future third-party license audit required | |
| 282 | | `virtual-fs` | local Warp workspace | dev / Linux | UNSAFE: AGPL via workspace license inheritance | |
| 283 | | `block` | crates.io | normal / macOS | External, not copied; future third-party license audit required | |
| 284 | | `chrono` | crates.io | normal / macOS | External, not copied; future third-party license audit required | |
| 285 | | `cocoa` | crates.io | normal / macOS | External, not copied; future third-party license audit required | |
| 286 | | `core-foundation` | crates.io | normal / macOS | External, not copied; future third-party license audit required | |
| 287 | | `core-graphics` | crates.io | normal / macOS | External, not copied; future third-party license audit required | |
| 288 | | `core-text` | crates.io | normal / macOS | External, not copied; future third-party license audit required | |
| 289 | | `dispatch` | crates.io | normal / macOS | External, not copied; future third-party license audit required | |
| 290 | | `foreign-types` | crates.io | normal / macOS | External, not copied; future third-party license audit required | |
| 291 | | `libc` | crates.io | normal / macOS | External, not copied; future third-party license audit required | |
| 292 | | `metal` | crates.io | normal / macOS | External, not copied; future third-party license audit required | |
| 293 | | `objc` | crates.io | normal / macOS | External, not copied; future third-party license audit required | |
| 294 | | `rand` | crates.io | dev / macOS | External, not copied; future third-party license audit required | |
| 295 | | `dwrote` | git | normal / Windows | Warp git fork excluded; replaced with crates.io `dwrote` | |
| 296 | | `tauri-winrt-notification` | crates.io | normal / Windows | External, not copied; future third-party license audit required | |
| 297 | | `windows` | crates.io | normal / Windows | External, not copied; future third-party license audit required | |
| 298 | | `windows-core` | crates.io | normal / Windows | External, not copied; future third-party license audit required | |
| 299 | | `windows-version` | crates.io | normal / Windows | External, not copied; future third-party license audit required | |
| 300 | | `winreg` | crates.io | normal / Windows | External, not copied; future third-party license audit required | |
| 301 | |
| 302 | ## Blockers |
| 303 | |
| 304 | No AGPL Warp dependency remains copied or linked from the Strato UI crates. |
| 305 | Remaining non-blocking follow-up items: |
| 306 | |
| 307 | 1. Runtime validation of the macOS Metal renderer requires Apple's Metal |
| 308 | Toolchain. The build script currently writes a placeholder shader library for |
| 309 | `cargo check` only when the toolchain is absent. |
| 310 | 2. Color emoji detection from Warp's `font-kit` fork is disabled until Strato |
| 311 | owns a clean implementation against public crates. |
| 312 | 3. A full third-party registry dependency license report should be generated |
| 313 | before publishing the Strato UI crates outside this repository. |
| 314 | |
| 315 | ## Conclusion |
| 316 | |
| 317 | The repository remains MIT/commercial-license compatible on the basis of this |
| 318 | audit because only the two explicitly MIT WarpUI crates and Warp's MIT license |
| 319 | text were copied. Unsafe Warp workspace dependencies were excluded and replaced |
| 320 | with clean-room Strato modules or crates.io dependencies. The imported crates |
| 321 | are workspace-active and compile under `cargo check` in the current StratoSDK |
| 322 | workspace. |
| 323 |