docs(roadmap): record mobile sdk decision

This commit is contained in:
Saravana Achu Mac 2026-05-05 09:34:52 -07:00
parent bea7579f60
commit 41a0e4e8bb

View File

@ -125,7 +125,7 @@ Goal: prove that NoteLett is using common platform services and packages at runt
- [x] **P2.2** Add or update platform smoke documentation for `platform-service`, `extraction-service`, `mcp-server`, telemetry, diagnostics, flags, kill switch, blob, and NoteLett backend health. Commit: `85b682a`; Verified: `git diff --check`; added `docs/PLATFORM_SMOKE_CHECKS.md` covering common-platform startup, env, unauthenticated health, telemetry, diagnostics, flags/kill switch, blob SAS, extraction, MCP registry/call, NoteLett backend health/bootstrap/diagnostics, and result recording.
- [x] **P2.3** Add a local smoke script or extend existing scripts to check `GET /health`, `GET /api/bootstrap`, platform dependencies, and one authenticated product-backend flow in memory mode. Prefer reusing common platform smoke/self-test conventions. Commit: `a2053a7`; Verified: `bash -n scripts/local-smoke.sh`; `GITEA_NPM_TOKEN=dummy pnpm run smoke:local -- --skip-platform`; `git diff --check`. Added `pnpm run smoke:local` with common-platform `@bytelyst/palace`/`@bytelyst/llm` linked-build guards, NoteLett health/bootstrap checks, platform-service/extraction-service/mcp-server health checks, local access-token generation matching shared `@bytelyst/fastify-auth`, and authenticated workspace/note create/read cleanup in `DB_PROVIDER=memory`. Local Docker is unavailable (`docker: command not found`), so the live run skipped platform health while retaining those checks for environments with common-platform services running.
- [x] **P2.4** Verify web and mobile shared clients propagate product identity, auth token, and request IDs where supported by common platform clients. Add tests where behavior is local. Commit: `efa2097`; Verified: `GITEA_NPM_TOKEN=dummy pnpm --filter @notelett/web exec vitest run src/lib/api-helpers.test.ts src/lib/platform.test.ts`; `GITEA_NPM_TOKEN=dummy pnpm --filter @notelett/mobile exec vitest run src/api/client.test.ts src/lib/platform-api.test.ts`; `git diff --check`. Added local web/mobile tests proving product API clients send `x-product-id`, bearer auth, and shared `@bytelyst/api-client` request IDs, and proving platform-client wrappers are configured with NoteLett product identity plus auth-token accessors.
- [ ] **P2.5** Decide whether mobile should adopt `@bytelyst/react-native-platform-sdk` now or explicitly defer it. If adopted, replace redundant local composition; if deferred, document why direct clients are still preferred. Commit:
- [x] **P2.5** Decide whether mobile should adopt `@bytelyst/react-native-platform-sdk` now or explicitly defer it. If adopted, replace redundant local composition; if deferred, document why direct clients are still preferred. Commit: `bea7579`; Verified: `git diff --check`; `rg -n "react-native-platform-sdk|direct shared-client|MOBILE_PLATFORM_SDK_DECISION|Mobile Platform SDK Decision" docs/ROADMAP.md docs/MOBILE_DELEGATION_ROADMAP.md docs/roadmaps/04_MOBILE_ROADMAP.md docs/MOBILE_PLATFORM_SDK_DECISION.md`. Deferred direct SDK adoption in `docs/MOBILE_PLATFORM_SDK_DECISION.md` because current mobile already uses direct shared `@bytelyst/*` clients and the SDK does not yet cover product-backend API calls, blob uploads, diagnostics metadata, billing, feedback, offline queue, or the existing MMKV auth-client token contract without duplicate initialization.
- [ ] **P2.6** Decide whether `@bytelyst/sync` should back mobile offline/sync behavior now or be deferred. Record the decision and update implementation accordingly. Commit:
- [ ] **P2.7** Evaluate backend LLM usage against `@bytelyst/llm-router`. Either adopt the router for provider/model/fallback governance or document why `@bytelyst/llm` remains sufficient for NoteLett release 1. Commit: