amba 4.0.2 copy "amba: ^4.0.2" to clipboard
amba: ^4.0.2 copied to clipboard

amba SDK for Flutter — the full 4.0 surface (auth, users, sessions, sync, leagues + 29 more namespaces) for the agent-native backend-as-a-service.

Changelog #

All notable changes to the amba Flutter SDK are documented here. Format follows Keep a Changelog; versions follow SemVer.

4.0.2 — 2026-05-27 #

Version-alignment release across every published Amba package. Brings the infra-tier packages (@layers/amba, @layers/amba-shared, @layers/amba-mcp — previously on 1.x) onto the same 4.x track as the SDKs so customers can pin a single version everywhere. No surface or behavior changes in this SDK.

Removed from the package family in this release: the deprecated @layers/amba-functions and @layers/amba-client packages were unpublished from npm. Amba functions are plain ES modules with the standard export default { async fetch(req, env, ctx) } shape — no wrapper. See docs.amba.dev/functions/runtime for the full contract.

4.0.1 — 2026-05-26 #

Version-alignment release across every Amba SDK. No surface or behavior changes — bumps every SDK (web, node, react, react-native, expo, core, kotlin, swift, flutter, unity) to 4.0.1 so customers can pin to a single version across stacks. See sdks/CANONICAL_API.md for the 4.0 surface.

4.0.0 — 2026-05-25 #

Coordinated 4.0 release across every Amba SDK. All 9 SDKs ship the same surface on the same day; see the canonical spec at sdks/CANONICAL_API.md for the per-method contract.

Breaking #

  • Amba.messaging.getMessage(messageId) now takes (conversationId, messageId) and returns Message? (null when the message can't be found). The pre-4.0 single-arg form called a non-existent FFI symbol — every call threw ArgumentError at dispatch, so no working customer code can be affected.

Added — net-new namespaces #

  • Amba.usersget(userId?), update(patch, {userId?}).
  • Amba.sessionslist(), revoke(sessionId). List/revoke the customer-defined app sessions; distinct from the auth JWT envelope.
  • Amba.syncpushChanges([SyncChange]), pullChanges(entityType, checkpointToken?). Offline change replay with server-wins conflicts.
  • Amba.leaguesme(), cohort(). Tiered weekly leaderboard cohorts; cohort listings are anonymised (display name only, no user ids).

Added — net-new methods on existing namespaces #

  • Amba.auth.requestMagicLink(email), verifyMagicLink(token), linkAccount(provider, credential).
  • Amba.collections.findNearest(name, vectorField:, queryVector:, k:, filter?) and count(name, filter?).
  • Amba.storage.list(prefix?), delete(assetId), download(assetId) (returns Uint8List — the Rust core base64-encodes inside a {data:"…"} envelope to keep the FFI ABI string-only; the wrapper decodes on the platform side).
  • Amba.messaging.createConversation({participants, conversationType?, name?}), listMessages(conversationId, {limit?, offset?}), markRead(conversationId).
  • Amba.friends.sendRequest(userId), acceptRequest(friendshipId), declineRequest(friendshipId).
  • Amba.catalog.get(id).

Fixed #

  • Amba.messaging.getMessage — the Rust core (Phase A) added the long-missing amba_messaging_get_message(conv_id, msg_id) symbol; the wrapper now actually dispatches instead of ArgumentError'ing out. Returns null when the message isn't in the first 5,000 entries of the conversation (the helper paginates list_messages internally since the server has no GET-by-id route).

Test coverage #

  • New tests for every method added above, including the OTP path (zero coverage pre-4.0).

1.0.2 — 2026-05-20 #

Added #

  • Amba.diagnostics.ping() — wire-verify primitive. Call once after Amba.configure(...) to confirm the SDK is talking to the right project with the right API key in the right environment. Returns a PingResult whose fields (serverProjectId, environment, keyFingerprint, latencyMs) are all server-decided, so comparing serverProjectId against the configured project id catches "wrong key in .env" silent failures on the spot. Mirrors the TypeScript SDKs' Amba.diagnostics.ping() shape (added in 1.0.0).
  • dart:developer log() calls from the SDK now use name: "amba-sdk", so Flutter DevTools / flutter logs filtering on that name surfaces amba's own diagnostics without dragging in app-side log noise. The SDK never calls print().

Known limitations #

  • The published xcframework still ships the iOS device slice only (arm64) — unchanged from 1.0.1. Running on an iOS simulator requires building a simulator slice locally. iOS device builds, App Store archives, and Android (all four ABIs) are fully supported out-of-box. The simulator-slice download follow-up tracked in 1.0.1 is still pending.

1.0.1 — 2026-05-20 #

Fixed #

  • Bundled prebuilt native binaries for Android (arm64-v8a, armeabi-v7a, x86_64, x86) and iOS device (arm64) so flutter build apk and flutter build ipa succeed without any local build step.
  • Added android/src/main/kotlin/com/layers/amba/AmbaPlugin.kt and ios/Classes/AmbaPlugin.swift plugin stubs required by Flutter's plugin registration mechanism.
  • Added android/build.gradle, android/src/main/AndroidManifest.xml, and ios/amba.podspec needed for Flutter to discover and link the plugin.
  • Fixed Amba.version constant to match the published package version.

Known limitations #

  • The published xcframework ships the iOS device slice only (arm64). Running on an iOS simulator requires building a simulator slice locally — a follow-up release will add an automated podspec prepare_command that downloads the matching slice on pod install. iOS device builds, App Store archives, and Android (all four ABIs) are fully supported out-of-box.

1.0.0 — 2026-05-16 #

Initial public release of the amba Flutter SDK on pub.dev.

Added #

  • Amba client class wrapping the Amba backend API for Flutter apps: configure with project id + client key; track events; anonymous sign-in; authenticated sign-in via magic link; collection CRUD; AI prompt invocation.
  • Smoke test fixtures under test/integration/ exercising the public surface against a live tenant.
0
likes
130
points
96
downloads

Documentation

API reference

Publisher

unverified uploader

Weekly Downloads

amba SDK for Flutter — the full 4.0 surface (auth, users, sessions, sync, leagues + 29 more namespaces) for the agent-native backend-as-a-service.

Homepage
Repository (GitHub)
View/report issues

License

MIT (license)

Dependencies

ffi, flutter, plugin_platform_interface

More

Packages that depend on amba

Packages that implement amba