Commit graph

9 commits

Author SHA1 Message Date
096e746369 refactor: depend on renamed chain-plugin-sdk
Signed-off-by: flemming-it <sf@flemming.it>
2026-06-16 11:30:00 +02:00
2fbed64632 chore: contact email platform@ -> chain@flemming.ai
Signed-off-by: flemming-it <sf@flemming.it>
2026-06-16 10:16:37 +02:00
ebd718d135 refactor: rename to chain:studio-plugin WIT + provider chain
Tracks the platform's fai->chain rename: provider chain, WIT ABI
chain:studio-plugin / chain:platform (binding paths/accessors), SDK pin.

Signed-off-by: flemming-it <sf@flemming.it>
2026-06-15 22:56:18 +02:00
cbced7ef29 chore: schema_version 3 (no field descriptions; plugin has no inputs/outputs)
Signed-off-by: flemming-it <sf@flemming.it>
2026-06-01 22:46:29 +02:00
562e215437 chore(module): schema_version 2 + explicit provider
Brings module.yaml in line with F∆I 0.12.0's capability naming
convention. The legacy schema_version 1 (with implicit provider)
still loads in 0.12.0 via the grace-period default, but this
bump makes the publisher identity explicit and unblocks
storage-layout migration via 'fai migrate'.

See fai/platform docs/reference/capability-namespaces.yaml +
docs/operations/migration-to-0.12.md.

Signed-off-by: flemming-it <sf@flemming.it>
2026-05-28 11:48:25 +02:00
0ec78fb06f chore(plugin): adopt fai-plugin-sdk naming + fai-plugins repo URL
Three SDK families convention from
fai/platform/docs/architecture/sdks.md: base name carries
family, suffix carries language. This plugin now depends on
fai-plugin-sdk (was fai-studio-plugin-sdk) and moves to the
fai-plugins/ org on Forgejo.

Signed-off-by: flemming-it <sf@flemming.it>
2026-05-26 00:59:18 +02:00
65986ff8a1 docs: add MODULE.md + MODULE.de.md inline docs
Studio's Documentation section now populates from the bundle
instead of staying empty. Same content as the existing
README, trimmed for the in-app reader.

Signed-off-by: flemming-it <sf@flemming.it>
2026-05-25 23:03:13 +02:00
6817752ae3 feat: studio.theme.solarized v0.1.0 builds against SDK
Promotes the skeleton to a real WASM plugin component. The
22 KiB stripped artefact at
target/wasm32-wasip2/release/studio_theme_solarized.wasm
is the proof-of-contract for fai-studio-plugin-sdk v0.1.

Implements:

- theme::Guest::theme_for(brightness) returning the
  pinned Solarized Light/Dark palettes (14 ARGB tokens
  each). Brightness names other than "light"/"dark"
  return PluginError::Declined.
- translate::Guest + output_view::Guest as Declined-only
  stubs — v0.1 of the SDK requires all three hooks per
  plugin; v0.2 will split the WIT.

Cargo.toml pins edition 2021 (matches SDK; wit-bindgen
0.36 codegen does not yet support edition 2024).

Signed-off-by: flemming-it <sf@flemming.it>
2026-05-25 14:31:23 +02:00
a1f8412205 feat: studio-theme-solarized v0.1.0 — skeleton
First Studio plugin in the new `studio.*` capability namespace.
SKELETON — does not yet compile.

Why ship the skeleton now:

  * Pins Ethan Schoonover's Solarized palette as two const
    Material 3 ColorScheme arrays so the in-tree reference
    doesn't bike-shed at SDK-integration time.
  * Gives the future fai-studio-plugin-sdk author a concrete
    consumer to validate the generated `#[plugin(theme)]`
    macro output against.
  * Validates that the WIT in fai/platform parses by being a
    real crate that references it.

What it does NOT yet do:

  * Compile. The `fai-studio-plugin-sdk` dependency it points
    at doesn't exist. Tracked in
    `fai/platform/docs/advanced/studio-plugin-sdk.md`.
  * Plug into Studio. The plugin-host module that would
    discover and invoke this component lives in the same
    deferred-Phase-1 work.

What it ships:

  * module.yaml declaring `provides: studio.theme.solarized`
    and `studio_extension.hooks: [theme]`.
  * Cargo.toml with the future SDK dependency commented out,
    crate-type=cdylib, component metadata.
  * src/lib.rs with both Solarized colour palettes
    (SOLARIZED_LIGHT and SOLARIZED_DARK), 14 ARGB tokens
    each in Material 3 order, plus the future `#[plugin]`
    function body commented out and two sanity tests on the
    palette constants.
  * README.md explaining the status and the steps to finish
    the plugin once the SDK ships.

Signed-off-by: flemming-it <sf@flemming.it>
2026-05-25 13:24:00 +02:00