Skip to content

Comments

standalone api module#5480

Draft
dnbrwstr wants to merge 5 commits intodb/api-move-onlyfrom
db/standalone-api
Draft

standalone api module#5480
dnbrwstr wants to merge 5 commits intodb/api-move-onlyfrom
db/standalone-api

Conversation

@dnbrwstr
Copy link
Contributor

@dnbrwstr dnbrwstr commented Feb 9, 2026

Summary

Standalone API follow-up on top of db/api-move-only focused on dependency-boundary cleanup, not product behavior changes.

This PR makes @tloncorp/api more independently publishable by removing direct shared/react-query/Expo coupling from the API package and enforcing boundaries in ESLint.

Changes

  • API package boundary cleanup:
    • remove @tloncorp/shared dependency/imports from packages/api.
    • remove API-owned react-query export/surface (queryClient/QueryClientProvider) and move consumers back to shared-owned react-query modules.
    • remove Expo dependencies from API (expo-contacts, expo-localization) and shift contacts integration to app side via provider configuration.
  • Mobile wiring:
    • add a mobile-only system contacts provider and register it at app startup.
    • keep API side provider-driven and platform-agnostic.
  • Boundary enforcement (ESLint-only):
    • add root ESLint overrides to block:
      • packages/api/src/** importing @tloncorp/shared* and ../client*.
      • apps/** importing internal @tloncorp/api/{client,api,lib,types/native}* entrypoints.
    • fix two API internal violations surfaced by those rules (lib/references, lib/branch).
  • Packaging/metadata:
    • update packages/api/package.json + lockfile to reflect dependency removals.

How did I test?

  • pnpm -r tsc
  • pnpm -r lint
  • pnpm --filter @tloncorp/api lint

Diff size

  • db/standalone-api vs origin/develop: 593 insertions, 402 deletions (995 LOC churn)
  • db/api-move-only vs origin/develop: 568 insertions, 402 deletions (970 LOC churn)
  • Delta vs move-only baseline: +25 LOC

Risks and impact

  • Safe to rollback without consulting PR author? Yes
  • Affects important code area:
    • Onboarding
    • State / providers
    • Message sync
    • Channel display
    • Notifications
    • Other: package boundaries / module resolution / dependency graph

Rollback plan

  • Revert the PR.
  • If needed, revert boundary-enforcement changes first (ESLint overrides), then revert API dependency-boundary changes.

Screenshots / videos

  • N/A

@dnbrwstr dnbrwstr changed the base branch from develop to db/api-move-only February 10, 2026 19:56
@dnbrwstr dnbrwstr force-pushed the db/standalone-api branch 5 times, most recently from 981397e to 791656a Compare February 13, 2026 03:05
@dnbrwstr dnbrwstr force-pushed the db/api-move-only branch 2 times, most recently from 8231cec to 16eb79a Compare February 13, 2026 06:38
@dnbrwstr dnbrwstr changed the base branch from db/api-move-only to develop February 13, 2026 06:51
@dnbrwstr dnbrwstr changed the base branch from develop to db/api-move-only February 19, 2026 20:39
@dnbrwstr dnbrwstr force-pushed the db/standalone-api branch 3 times, most recently from afa6dd9 to dcfe4be Compare February 20, 2026 17:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant