MeshKit is a TypeScript SDK foundation for mobile-friendly decentralized storage. It now has real encrypted storage primitives, package metadata, release gates, local-dev workflows, provider integration surfaces, and publish automation, but it is not yet a fully live decentralized network.
The key boundary is clear: the SDK can be built, tested, packed, smoke-tested from local tarballs, and integrated by TypeScript developers today. Live provider validation, non-exportable native mobile key operations, Dart/Flutter toolchain validation, npm registry ownership, and external security review are still pending before a public production launch.
-
@meshkit/meshkit: one-import SDK facade; the CLI binary remainsmeshkit. -
@meshkit/core: encrypted storage, records, files, batches, messages, sharing, proofs, provider protocol, and local-dev provider. -
@meshkit/cli: init, dev, doctor, inspect, logs, policies, deals, provider testing, and durable local sandbox. -
@meshkit/mcp: scoped agent tools with schemas and input limits. -
@meshkit/web: browser/PWA entrypoint and capability detection. -
@meshkit/react-native: React Native entrypoint and capability detection. -
@meshkit/node: Node.js/server entrypoint and capability detection. -
@meshkit/flutter: real Flutter plugin package with Dart method-channel contract and native Android/iOS source. -
@meshkit/ionicor Capacitor package: real Ionic/mobile-web plugin package. - Provider adapter package boundary decision: adapters intentionally remain in
@meshkit/corefor 1.0; dedicated packages are a future ADR-gated split only.
-
npm run typecheck -
npm run check - Full package test suite: 25 test files, 214 tests.
- Built SDK import smoke test.
- Built CLI smoke test.
- Local packed-tarball postpublish smoke test.
- npm package metadata validation for 8 public packages.
- Example validation for 8 runnable examples, 1 runnable template, Ionic source contracts, and Flutter source contracts.
- Production dependency audit:
0 vulnerabilities. - No-stub production audit with a documented allowlist.
- Final
npm run pack:dryafter this checklist update. - Parallel launch-readiness audits for external IPFS/Filecoin reality, npm/DX readiness, and contributor ergonomics.
- Contributor guide expanded with repo map, package workflow, commands, docs/API generation, conformance guidance, example requirements, testing matrix, and release expectations.
- Live provider test matrix documented for Kubo, browser/Kubo boundaries, Helia, pinning, gateways, React Native remote providers, and Filecoin.
- npm name ownership decision:
meshkitis occupied on npm, so launch must use confirmed@meshkit/*ownership, a different facade name, or an ownership transfer before publishing unscopedmeshkit. - Registry-safe postpublish smoke must avoid installing an unrelated public unscoped
meshkit@latest; the default registry spec now uses@meshkit/meshkit@latest. - Live npm-registry postpublish smoke after package ownership and auth are available.
- Kubo-compatible
HttpIpfsProviderwith CID verification and pin lifecycle. - Kubo-compatible
HttpIpfsProvidernow uses rawblock/putandblock/getsemantics for raw CID parity instead of UnixFSadd/catassumptions. - Remote pinning service provider backed by a storage provider.
- Gateway retrieval provider with verified fallback reads.
- Private IPFS cluster provider for add, cat, metadata, pin removal, and diagnostics.
- Helia UnixFS provider for app-owned web/mobile Helia nodes.
- Opt-in live Kubo daemon validation command for
HttpIpfsProvider. - Opt-in live validation commands for pinning service, gateway retrieval, and private cluster providers.
- Multi-provider fallback provider with traceable fallback logs.
- Provider retry, timeout, auth, health checks, and typed
MeshKitErrormapping. - HTTP Filecoin persistence provider for deal creation, status, and renewal APIs.
- Filecoin status normalization for proposed, accepted, active, under-replicated, failed, rejected, and expired states.
- CLI
deals statusanddeals renew --duration-daysfor configured persistence providers. - Filecoin bridge metadata for storage provider selection, quoted cost, verified deals, piece metadata, and retrieval hints.
- Filecoin bridge capability discovery and CID lookup API.
- CID-verified Filecoin bridge retrieval API plus CLI
deals retrieve --output. - Opt-in live Filecoin bridge validation command for deal creation, status, and CID-verified retrieval.
- Async Filecoin live validation polling for
proposedandaccepteddeals untilactivebefore retrieval. - Filecoin bridge docs for costs, guarantees, renewals, direct Boost/Lotus boundaries, and retrieval behavior.
- Persistence now requires a configured provider for deal operations.
- Lit-compatible HTTP policy provider for policy creation, authorization, revocation, membership, and audit.
- Policy-backed share capsule authorization before decrypting shared content.
- Policy expiry, denied-member, unavailable-network, and already-opened plaintext behavior covered by tests.
- Policy docs for fail-closed authorization and revocation limits after plaintext reaches a device.
- Real Lit node/client integration boundary recorded in ADR 0007: optional adapter packages later, no direct core dependency, no mobile runtime claim without validation.
- Identity export/import, device registration, device removal, and device listing.
- Identity key rotation that keeps pre-rotation content readable while new writes use the rotated public key.
- Local contact/address book model for verified recipient public keys.
- Public identity directory provider for recipient key discovery without private-key sharing.
- Identity trust model documentation for key-directory boundaries.
- Provider-backed durable sync jobs.
- Caller-managed offline sync queue with idempotent operation IDs, retry backoff, and retry exhaustion.
- Chunked stream upload/download with authenticated chunk digests and whole-stream digest.
- MeshKit CAR v1 export/import for encrypted block portability.
- Redacted observability bundle export.
- Privacy-safe SDK telemetry hooks with best-effort and required sink delivery modes.
- Node/server SDK package.
- React Native native key vault bridge with Android Keystore-backed encrypted storage and iOS Keychain storage.
- React Native exported identity-record access-control policies for device passcode and current biometric set where the OS supports them.
- React Native non-exportable key-operation API now fails closed unless native bridge methods are actually implemented.
- Flutter MethodChannel contract tests and source validation for native key-vault calls.
- Flutter Dart-facing identity client, typed identity record model, README usage, and source example validation.
- Flutter key-vault access-control request API with Android/iOS capability reporting and fail-closed native rejection for unsupported exported identity-record policies.
- Ionic/Capacitor exported identity-record access-control request API with fail-closed bridge capability checks and additive policy merging.
- Kubo version-matrix hardening for derived Basic/Bearer auth redaction, unique default payload CIDs, cleanup after CID mismatch, and matrix env isolation in tests.
- Trustless gateway live harness with fixture coverage for
format=raw,format=car&dag-scope=block, trustlessAccept/Content-Typeenforcement, CID/hash verification, size limits, auth success/redaction, URL validation, and timeout behavior. - Deterministic raw-CID round-trip harness with fixture coverage for Kubo raw blocks, raw gateway retrieval, PSA-style pinning with required CID evidence, CID drift failures, auth redaction, async unpin confirmation, body-read timeouts, and cleanup behavior.
- Flutter toolchain validation command and release-readiness tests for skip, missing-toolchain failure, fake-toolchain success, Windows
.cmdlaunchers, exact argument boundaries, and timeout behavior. - Flutter native access-control option parsing now rejects malformed
putIdentityWithOptionspayloads instead of silently treating them asnone. - Flutter and Ionic capability reporting now avoids positive secure-storage claims unless bridge/native fields explicitly advertise them.
- Ionic
createMeshkitIonicfails closed when access-control policy is requested without an enforceable Capacitor key vault. - Opt-in Helia browser E2E harness, npm script, config gates, checked-in fixture app, source validator, and docs; live Chromium/Firefox evidence remains pending.
- Vanilla Kubo metadata negative harness proving stock Kubo does not serve MeshKit metadata routes.
- No-stub audit script with structured allowlist and release-readiness regression coverage.
- Contribution-first repository structure: packages, docs, RFCs, examples, templates, conformance, test vectors, benchmarks, scripts, GitHub workflows, and governance docs.
- Release gate that scans package source, public docs, and root README for forbidden release language.
- npm publish workflow with provenance.
- npm package metadata validator wired into
npm run check. - Registry-safe postpublish smoke now requires explicit package specs or an unsafe registry opt-in.
-
publish:drynow runs a true npm publish dry-run by default, with explicit pack-only mode for offline checks. - Release metadata validator now checks package-name ownership plan, maintainer/security metadata, package-manager metadata, README substance, funding/keywords, and license inclusion.
- Postpublish smoke now imports all public package entrypoints and exercises the CLI binary from packed tarballs.
- Runnable quickstart validator wired into
npm run check. - Generated API reference with source drift checking.
- Copy-paste TypeScript runtime recipes.
- Runnable basic app template with package metadata, config, source, test, and validation.
- MeshKitError and provider troubleshooting guide.
- Runnable Node stream example.
- Runnable browser File/Blob streaming example.
- Release docs for version compatibility, npm deprecation/unpublish, maintainer token policy, and public roadmap labels.
- Public decryptable envelope v1 test vector with automated import/decrypt verification.
- Shared
meshkit-sdk-v1conformance tests for@meshkit/meshkit,@meshkit/web,@meshkit/react-native, and@meshkit/node. - Postpublish smoke script that installs a complete locally packed workspace tarball set, then imports all public package entrypoints and exercises the CLI. Registry-latest smoke remains gated until the npm package set is published.
- HTTP IPFS adapter surface.
- Helia adapter for web/mobile runtimes.
- Pinning service adapter surface.
- Gateway retrieval adapter surface.
- Private cluster adapter surface.
- Provider fixture tests for pinning, gateway retrieval, and private cluster behavior.
- Live local-daemon validation command for the IPFS HTTP adapter.
- Live validation commands for pinning service, private cluster, and gateway adapters.
- Run live local-daemon validation against an actual Kubo daemon in the launch environment.
- Run live pinning, private cluster, and gateway validators against actual launch services or credentials.
- Integration tests against a local IPFS daemon or Helia node.
- Integration tests against at least one remote pinning provider.
- Launch-ready credential examples for selected IPFS providers.
- Kubo version-matrix live harness with fixture coverage for raw block write/read, pin removal, version reporting, auth headers, config failures, and cleanup.
- Kubo version-matrix fixture coverage for derived Basic auth redaction, CID-mismatch cleanup, unique default payloads, and inherited environment isolation.
- Kubo version-matrix live suite for supported latest and N-1 versions covering raw block write/read, pin removal, version reporting, auth boundary, and cleanup.
- Kubo raw-block versus UnixFS contract decision: use
block/put/block/getfor raw CID parity, or use multipartadd/catwith UnixFS-aware verification. - Browser Kubo boundary test proving direct admin RPC is not a supported browser/mobile path while gateway or verified retrieval remains supported.
- Vanilla Kubo metadata negative harness proving
/meshkit/*routes are not stock Kubo features and require a MeshKit metadata service or future IPLD/IPNS adapter. - Split IPFS Cluster validation into documented Cluster REST behavior and Cluster IPFS Proxy behavior before claiming broad Cluster compatibility.
- Helia browser E2E suite for Chromium and Firefox covering put/get, reload, app-persisted metadata restore, and missing-metadata failure behavior.
- Checked-in Helia browser E2E fixture app exposing
window.__meshkitHeliaE2Ewith real Helia UnixFS-backed MeshKit put/get/proof behavior and source-only validation. - Helia routing matrix for default delegated routing and a self-hosted HTTP Routing v1 endpoint.
- Helia/Kubo CID parity suite with locked importer settings and CAR round trips.
- PSA-compatible pinning provider matrix with status polling, bearer auth, unpin confirmation, and CAR capability detection.
- Kubo remote-pin flow matrix with status polling, bearer auth, unpin, and provider-specific capability handling.
- Gateway mode suite for subdomain gateway isolation and CID-verified retrieval; path-gateway success is not enough for launch claims.
- Trustless gateway harness covering
format=rawandformat=carretrieval. - Deterministic raw-CID round-trip harness that authors one client-side CID and verifies it through Kubo, gateway, and a pinning provider.
- CAR archive determinism harness that exports a client-side CAR and verifies the same archive/root through Kubo, gateway, and a pinning provider.
- React Native remote-provider E2E on Android and iOS covering app restart, foreground/background, key-vault restore, and large-file streaming.
- Live provider test matrix document capturing the exact launch validation rows still required.
- HTTP persistence provider contract.
- Deal creation, status, renewal, and normalized lifecycle states through configured provider APIs.
- CLI deal status and renewal commands.
- Tests proving deal operations require a configured persistence provider.
- Storage provider selection UX through per-write
storageProvider. - Cost, duration, replication, and retrieval configuration through per-write bridge options.
- Deal proof mapping into the MeshKit proof model.
- Retrieval from Filecoin-backed data through CID-verified bridge payload reads.
- Public docs for costs, guarantees, renewals, and retrieval behavior.
- Opt-in live Filecoin bridge validation command.
- Filecoin bridge capability discovery and CID lookup API.
- Live or testnet Filecoin path.
- Integration tests with a real or testnet Filecoin route.
- Filecoin Pin or equivalent managed Filecoin-backed service harness with verified retrieval, kept behind a bridge/service abstraction.
- Filecoin devnet or Calibration suite backed by a real bridge, Boost/Lotus path, or aggregator flow for create, poll, activation, retrieval, renewal, and recorded deal metadata.
- Async Filecoin live harness that accepts
proposed/accepted, polls untilactive, and only then requires CID-verified retrieval. - Filecoin negative matrix for wrong bytes, active-status but failed retrieval, auth rejection, delayed activation, renewal failure, and expired deals.
- Keep
HttpFilecoinPersistenceProviderdocumented as a backend-specific abstraction until a live route proves storage-provider negotiation, publication, sealing, retrieval, and renewal.
- Browser/PWA capability profile.
- React Native capability profile.
- Documentation describing lower-trust browser key storage.
- Android Keystore bridge for React Native identity export persistence.
- iOS Keychain bridge for React Native identity export persistence.
- React Native native module.
- React Native exported identity-record storage access-control policies for
device-passcodeandbiometric-current-set. - Flutter access-control request API and native fail-closed behavior for exported identity-record storage.
- Ionic/Capacitor access-control request API and fail-closed bridge capability checks for exported identity-record storage.
- Flutter and Ionic capability detectors default positive security backing claims to false unless native bridges explicitly advertise them.
- Flutter Android/iOS access-control option parsing rejects malformed method-channel payloads before any identity write.
- Ionic client creation fails closed when access-control policy is requested without a native vault capable of enforcing it.
- Secure Enclave support where available.
- Flutter plugin bridge.
- Ionic/Capacitor plugin bridge.
- Non-exportable private key behavior where the platform supports it.
- Biometric/passcode access policy support across every mobile package and native prompt UX.
- Durable backup, migration, restore, and recovery behavior for historical key material.
- Lit-compatible HTTP policy provider.
- Policy creation API.
- Policy authorization API.
- Policy revocation API.
- Group membership API surface.
- Permission audit API surface.
- Lit V7 adapter package boundary and live-gated test strategy documented.
- Policy-backed sharing tests for allowed and revoked access.
- Real Lit node/client integration.
- Time-bound access enforcement.
- Shared team/project vaults.
- Capability tokens.
- Offline access behavior definition.
- Failure handling when the policy network is unavailable.
- Tests for denied, expired, network-failed, and already-downloaded access cases.
- Docs explaining what revocation can and cannot guarantee after plaintext has already reached a device.
- Identity import/export.
- Device registration.
- Device removal.
- Device listing.
- Multi-device recipient fanout foundation through registered public keys.
- Key rotation tests.
- DID adapter.
- Passkey adapter.
- Wallet signature adapter.
- Contact/address book model.
- Public key directory/provider model.
- Recovery key or social recovery design.
- Tests for recovery, lost device, and compromised device flows.
- Identity trust model documentation.
- Provider retry and timeout behavior.
- Provider fallback.
- Gateway fallback.
- Provider health checks.
- Sync jobs API.
- Network diagnostics foundations.
- Privacy-safe telemetry hooks.
- Offline queue.
- Background sync scheduler.
- Conflict detection and resolution policy.
- Idempotent operation IDs.
- Durable retry queue.
- Caller-managed network state handling.
- Partial failure recovery.
- Tests for offline, flaky network, duplicate delivery, and retry exhaustion.
- Chunked upload path.
- Chunked download path.
- Per-chunk authentication.
- Whole-stream integrity verification.
- Upload/download progress callbacks.
- Typed cancellation errors.
- CAR writer/export.
- CAR reader/import.
- Resume interrupted uploads.
- Resume interrupted downloads.
- Resume token format.
- Memory-safe native mobile filesystem integration.
- Browser File/Blob streaming example.
- Node stream example.
- Tests with launch-scale files beyond normal CI memory comfort.
- Envelope encryption by default.
- Fresh per-object data encryption keys.
- AES-256-GCM authenticated encryption.
- ECDH P-256 plus HKDF-SHA256 recipient key wrapping.
- Authenticated envelope metadata through AEAD additional data.
- Cross-runtime public vector verification.
- Key rotation preserving access to historical content.
- Privacy-safe telemetry redaction tests.
- Release language gate for public claims.
- Formal threat model review.
- External crypto/security review.
- FIPS-compatible crypto module path.
- Secure key backup design.
- Post-quantum roadmap implementation.
- Metadata leakage review.
- Revocation semantics review.
- Envelope canonicalization review.
- AAD coverage review.
- Key lifecycle review.
- Runtime secure-random review.
- Supply-chain dependency review.
- Abuse-case test suite.
- No-stub audit with structured allowlist and release-readiness regression coverage.
- One-import SDK facade.
- Package READMEs.
- Root README with product, security, and IPFS routing explanation.
- Node quickstart example.
- CLI init writes
meshkit.config.json. - CLI provider testing.
- CLI doctor JSON output.
- Error types with actionable codes.
- Provider configuration docs.
- SDK config-object init with typed provider, persistence, and policy config objects.
- Happy-path
put,get,share, andopenaliases on the SDK facade. - Complete docs site.
- Reusable config loader/factory so apps can initialize from
meshkit.config.jsonwithout copying CLI-only provider wiring. - Typed provider config objects for SDK init, such as
{ type: "ipfs-http", ... }. - Happy-path aliases such as
put,get,share, andopenon the facade while keeping grouped APIs. - Decide whether
fortresschanges real behavior or remove it from public options. - React example app.
- React Native bridge example app.
- Flutter source example app.
- Flutter MethodChannel contract tests for key-vault calls.
- Ionic example app.
- CLI dev dashboard or removal of dashboard claims.
- Copy-paste recipes for each supported runtime.
- Error guide and troubleshooting page.
- API reference generation.
- Runnable MCP example with package metadata and validation.
- Runnable starter template with package metadata, source, config, and validation.
- Migration guide between versions.
- TypeScript core SDK.
- Browser/PWA SDK entrypoint.
- React Native SDK entrypoint.
- Node/server SDK entrypoint.
- Shared conformance tests for TypeScript entrypoints.
- Platform limitation reporting.
- React Native native SDK key vault bridge.
- React Native native background sync and file streaming bridges.
- Flutter source SDK package, Dart method-channel API, native Android/iOS source, and source example.
- Flutter MethodChannel package tests and source validator coverage.
- Flutter typed identity-storage client and source example validator coverage.
- Flutter key-vault access-control method-channel contract and native source validation.
- Flutter toolchain validation script for
flutter pub getandflutter test, skipped by default until a Flutter/Dart toolchain is installed. - Ionic/Capacitor SDK.
- Cross-platform envelope compatibility tests including Flutter and Ionic.
- Runnable React app example.
- Runnable React Native bridge example.
- Runnable/source-validated example app for every framework package.
- Production install docs for every framework package.
- Structured privacy-safe telemetry events.
- Telemetry sink delivery modes.
- Redaction rules and tests.
- Redacted debug bundle export.
- Provider operation tracing foundations.
- Deal lifecycle tracing foundations.
- Retrieval path tracing foundations.
- CLI diagnostics bundle foundation.
- Hosted/provider adapters for external telemetry pipelines.
- Provider-backed audit/event sinks where configured.
- Mobile sync tracing.
- Storage health dashboards.
- Launch docs for observability retention and privacy.
- CI workflow running
npm run checkandnpm run pack:dry. - npm publish workflow with provenance.
- npm dry-run script.
- Package metadata validator.
- Package README presence validation.
- Export map validation.
- Exact internal dependency version validation.
- Public-access publish config validation.
- Local packed-tarball smoke test before npm publish.
- Security policy.
- Contribution guide.
- License file.
- Changelog file.
- Publish packages to the npm registry/directory.
- Reserve/confirm npm package names:
meshkit,@meshkit/core,@meshkit/cli,@meshkit/mcp,@meshkit/web,@meshkit/react-native. - Resolve public
meshkitnpm name collision or remove unscoped facade publish expectations. - Confirm ownership and availability for the
@meshkitnpm organization and scoped package names. - Replace registry-latest default in postpublish smoke with an explicit package spec, a verified scoped package, or an explicit unsafe opt-in.
- Replace
publish:drypack-only behavior with a true registry/auth dry-run gate where safe to run. - Add tarball license validation and ensure package tarballs include full license text.
- Add package metadata checks for maintainer readiness, root package manager, README substance, funding/keywords where appropriate, and forbidden
TBDrelease fields. - Add install/import smoke coverage for packed exports across
@meshkit/meshkit,@meshkit/node,@meshkit/web,@meshkit/react-native, CLI bin, and MCP exports. - npm organization setup for
@meshkit. - npm access token provisioning.
- npm access-token and maintainer policy draft.
- Live npm-registry postpublish smoke.
- Package deprecation/unpublish policy.
- No-stub audit wired into the release gate.
- Version compatibility matrix.
- Public roadmap labels for planned work.
- Release readiness issue template covering npm ownership, publish credentials, local gates, SBOM/audit artifacts, live-provider evidence, and registry smoke.
- Contribution-first folder structure.
-
packages/for SDK packages. -
examples/for runnable examples. -
docs/for architecture, guides, security, providers, mobile, and API reference. -
rfcs/for major design decisions. -
templates/for starter apps. -
conformance/for shared SDK behavior tests. -
test-vectors/for crypto/envelope interoperability. -
benchmarks/for future performance work. -
scripts/for release, checks, package validation, and example validation. -
.github/workflows, issue template, PR template, and funding metadata. -
CODE_OF_CONDUCT.md. -
CONTRIBUTING.md. -
SECURITY.md. -
GOVERNANCE.md. -
CHANGELOG.md. -
ROADMAP.md. -
LICENSE. -
MAINTAINERS.md. - Expand
CONTRIBUTING.mdwith repo map, package ownership, test matrix, docs/API generation, example requirements, and conformance extension guidance. - Replace
MAINTAINERS.mdTBDfields with real maintainer, security, and npm ownership contacts before public release. - Add full dual-license texts or clear license files rather than only an SPDX expression.
- Provider adapter split decision recorded in ADR 0006: adapters stay in
@meshkit/corefor 1.0; future dedicated packages require a new ADR and compatibility plan. - Add Flutter and Ionic package directories when implementation starts.
- Add issue labels for providers, crypto, mobile, docs, first-time contributors, security, and conformance.
- Add architecture decision records for major protocol choices beyond the first RFC.
- Developer-friendly mobile ecosystem direction is represented by web, React Native, Node, Flutter, and Ionic packages.
- One-import TypeScript SDK facade exists.
- Decentralized storage complexity is hidden behind provider adapters.
- Encryption is on by default.
- Access-control provider surface exists for Lit-compatible policy systems.
- CLI and MCP surfaces exist for developer and agent workflows.
- Flutter and Ionic native key vaults have real source bridges.
- React Native exported identity-record storage supports device-passcode and biometric-current-set access-control policies where the OS supports them.
- React Native non-exportable key-operation API fails closed instead of trusting advertised capability flags without native methods.
- React Native still needs non-exportable native ECDH/signing operations.
- Flutter source package exists, but real Flutter/Dart toolchain validation for
packages/flutterandexamples/flutter-apphas not been run in this environment. - Live provider tests must prove the adapters against real services before launch claims.
- Run final
npm run pack:dryafter this progress update. - Commit and push the local packed-tarball postpublish smoke slice.
- Build Helia adapter and live local-daemon validation command.
- Add real React Native key vault native module.
- Harden npm smoke/publish safety around the occupied
meshkitregistry name. - Expand release metadata checks for license, maintainer, package name, and import smoke readiness.
- Add SDK config-loader and one-method facade ergonomics.
- Add remote pinning provider integration test with launch credentials.
- Run Flutter/Dart toolchain validation for the Flutter SDK and example once
flutter/dartare available. - Build a dedicated optional Lit adapter package after a concrete package spec and live Lit validation environment are ready.
- Add live or testnet Filecoin route.
- Publish package names to npm once org/auth/ownership are ready.
- Run live npm-registry postpublish smoke and record the release result.
A feature is complete only when all required boxes for that feature are checked:
- Public API implemented.
- Real provider/platform behavior implemented.
- Unit tests added.
- Integration tests added.
- CLI support added where relevant.
- Docs added.
- Example added where relevant.
- Error handling implemented.
- Security implications documented.
- Release/pack validation passes.
- Public claims are backed by implementation and tests.
- Should MeshKit use Helia directly in web/mobile, or keep Helia behind a provider adapter only?
- Should Filecoin persistence be built directly, or via a partner service/provider first?
- Should Lit Protocol be first-class, optional, or a separate plugin package?
- Should recipient identities be DID-first, passkey-first, wallet-first, or MeshKit-native first?
- Should Flutter/Ionic/React Native be built now, or should the TypeScript provider layer become production-ready first?
- Should MeshKit position itself as SDK-only, or SDK plus hosted coordination service?
- Should the public facade package stay unscoped as
meshkit, move to a scoped package, or be renamed if ownership cannot be obtained?