Skip to content

Type-check debt: tsc --noEmit reports 499 errors across 264 files #1074

Description

@RUKAYAT-CODER

Once installs succeed (see the lock-file fix), tsc --noEmit — the Typecheck step in the CI workflow — reports 499 errors across 264 files. The type-check gate has effectively never passed, and it cannot go green until these are addressed.

Representative clusters

  • className on AppText (~54 errors): components pass a className prop that AppTextProps does not declare (NativeWind typing not wired to the component).
  • Test mocks vs ApiClient (many): mocked clients are typed Mock<...> and miss get/post/put/patch/delete; Axios response mocks miss status/statusText/headers/config.
  • Missing exports: e.g. AnalyticsProvider from src/components, subscribeToCacheStatus from src/services/api.
  • Implicit any parameters and several Cannot find name (e.g. ScreenErrorBoundary, SessionExpiredModal) in App.tsx.
  • app.config.ts: name typed string | undefined but ExpoConfig.name requires string.

Suggested approach

Fix in themed batches (component prop types → shared test-mock helpers → missing exports/names → residual implicit-any), enabling a per-directory ratchet so the count only decreases, then make Typecheck a required, blocking gate once it reaches zero.

This is tracked separately because it is a codebase-wide effort independent of the CI-infrastructure and documentation fixes.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions