Commit graph

5 commits

Author SHA1 Message Date
4cbb99a9a9 refactor: rename crate fai-plugin-sdk -> chain-plugin-sdk
Product-scoped SDK name (Ch∆In's plugin SDK).

Signed-off-by: flemming-it <sf@flemming.it>
2026-06-16 11:26:38 +02:00
9a3bf55ef6 docs: old product name F∆I Platform -> Ch∆In + contact chain@flemming.ai
The old 'F∆I Platform' product name and platform@flemming.ai contact
survived in docs/NOTICE/descriptions/help text; the product is Ch∆In and
the contact is chain@flemming.ai. Generic 'cross-platform/platform-native'
left untouched.

Signed-off-by: flemming-it <sf@flemming.it>
2026-06-16 10:14:28 +02:00
0b60b71360 refactor: rename WIT contract fai:platform/fai:studio-plugin->chain:*
Tracks the platform WIT ABI rename. Plugin world package becomes
chain:studio-plugin and host imports chain:platform/host. Crate name
stays fai-plugin-sdk (vendor namespace) for now.

Signed-off-by: flemming-it <sf@flemming.it>
2026-06-15 22:18:53 +02:00
25353adb43 chore: rename fai-studio-plugin-sdk → fai-plugin-sdk
Adopts the three SDK families convention documented in
fai/platform/docs/architecture/sdks.md: each base SDK
(module, plugin, client) gets a language suffix on dir + repo
so polyglot variants can be added later without renaming.

  fai_studio_plugin_sdk  → fai_plugin_sdk_rust
  fai-studio-plugin-sdk  → fai-plugin-sdk
  fai/studio-plugin-sdk  → fai/plugin-sdk-rust

Signed-off-by: flemming-it <sf@flemming.it>
2026-05-26 00:59:48 +02:00
3753c6bc37 feat: v0.1.0 — Studio Plugin SDK
First release of the SDK that Studio plugins depend on.

What v0.1 ships:

- WIT contract under wit/ (studio-plugin.wit +
  deps/platform/world.wit, both verbatim from
  fai/platform/wit/).
- wit-bindgen 0.36 generate! call with pub_export_macro
  enabled so the emitted __export_studio_plugin_impl! macro
  is reachable from downstream plugin crates.
- export_plugin!(MyType) convenience macro that wraps the
  bindgen-generated impl macro.
- README documenting usage + v0.1 limits (single-world ->
  all-three-hooks-required, no proc-macro yet, edition
  2021 pinned by wit-bindgen output).

What v0.1 doesn't yet do:

- Plugins still declare all three Guest impls (theme,
  translate, output-view). v0.2 splits the WIT into one
  world per hook.
- No #[plugin(...)] proc-macro. v0.2 wraps generate! +
  Guest impl generation into a single attribute.
- Host-side: the hub doesn't yet load studio-plugin-world
  components or expose InvokePlugin RPC — that's the next
  push.

Validated against the in-tree studio-theme-solarized
plugin: 22 KiB stripped .wasm artefact, valid Component
Model, passes wasm-tools component wit inspection.

Signed-off-by: flemming-it <sf@flemming.it>
2026-05-25 14:31:08 +02:00