Skip to content

Eliminate 612 legacy any uses and enforce strict typing - #61

Merged
criptogus merged 1 commit into
mainfrom
fix/remove-legacy-any
Oct 23, 2026
Merged

criptogus merged 1 commit into
mainfrom
fix/remove-legacy-any

Conversation

@criptogus

Copy link
Copy Markdown
Owner

Summary

Replace the 612 legacy explicit-any violations with database, middleware, SDK and domain types plus validated JSON boundaries. Delete the lint allowance and enable noImplicitAny; existing ESLint rules remain intact.

- untyped database/context/JSON → unchecked consumers
+ generated database + middleware types → typed consumers
+ unknown external JSON → schema validation → domain types
- lint allowance for 612 violations
+ zero explicit-any violations; app and SDK compilation required

Correct the schema mismatches exposed by typing, including ownership, upload completion, OAuth token IDs, package tags and internal search-vector serialization. Execution telemetry writes once through the authoritative rate-limited RPC. Preserve the pinned Stripe gateway contract and token-only reauthentication emails.

Evidence

  • Before: frozen lint allowance totals 612 violations; strict lint fails.
    After: zero lint errors and zero explicit-any violations across 636 files; no rule suppressions added. Generated router exclusions are unchanged.
  • 198 tests pass, including malformed JSON/queue/agent content, telemetry single-write, Stripe signature and mocked gateway header checks, and token-only auth emails.
  • App + SDK type checks, production build, dependency audit, content, skills mirror and Agent Plugin checks pass.
  • RLS and anonymous-access checks pass across 85 tables. Native Lovable queries were read-only; no agent/model generation or provisioning was used.
  • Mocked signup flow passes at 390px and 1440px; screenshots visually reviewed.
  • Reusable batch and release skill updated; details in docs/testing/TYPE-SAFETY-RELEASE.md.

Merge Danger

Door: two-way

Application code rollback; no database migration is applied.

Blast Radius: application

Broad type refactor across server functions, MCP, SDK and UI. Billing sends, real emails and paid model calls are covered with local fixtures rather than production execution.

@criptogus
criptogus merged commit 9974d44 into main Oct 23, 2026
3 checks passed
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