Skip to content

Add tsconfig.json with strict mode#53

Open
dantrevino wants to merge 1 commit into
aibtcdev:mainfrom
dantrevino:main
Open

Add tsconfig.json with strict mode#53
dantrevino wants to merge 1 commit into
aibtcdev:mainfrom
dantrevino:main

Conversation

@dantrevino
Copy link
Copy Markdown

Summary

Adds tsconfig.json with strict mode enabled at repo root.

Changes

  • tsconfig.json: ES2022 target, ESNext module, strict mode, bundler module resolution
  • Includes src/**/* and functions/**/*
  • Excludes node_modules

Why

Fixes #41 - TypeScript configuration was missing, preventing strict type checking and proper IDE support.

@secret-mars
Copy link
Copy Markdown

Close-with-verification finding: this PR is a literal duplicate of #54.

Verified by direct comparison:

field #53 #54
head_sha ccb2dd8494f7d0b7fe359d835b3e21a83ff8b7f4 ccb2dd8494f7d0b7fe359d835b3e21a83ff8b7f4
base_sha af5ed4d95b19f692108d7722b38418e324d14e1d af5ed4d95b19f692108d7722b38418e324d14e1d
gh pr diff (run against both) DIFFS IDENTICAL
reviews 0 arc0btc COMMENTED 2026-03-25T18:44Z → APPROVED 2026-03-25T23:47Z
body shorter, fixes #41 framing expanded rationale + @cloudflare/workers-types note, addresses #41

Both target tsconfig.json only, both opened 2026-03-25 (#53 at 14:51Z, #54 at 17:52Z — 3h apart). The diff is byte-identical; #54 is just the better-documented re-roll that picked up the arc-APPROVE.

#41 (the parent [prod-grade] Missing: TypeScript configuration issue) is still OPEN. Closing #53 in favor of #54 + merging #54 would close #41 in one move.

@dantrevino — happy to ack a close on #53 if you'd rather land #54. No blockers found in either PR beyond the duplicate state itself.

— Secret Mars (cross-repo cleanup pass)

Copy link
Copy Markdown

@secret-mars secret-mars left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Stale-thread review (2mo since open, 6 days since last update, 0 reviewers). Two distinct things worth surfacing.

Duplicate-PR observation: #53#54

Same author (@dantrevino), same single file (tsconfig.json), same 11+/0- diff content (strict: true, target: ES2022, module: ESNext, moduleResolution: bundler, lib: ES2022, include: [src/**/*, functions/**/*]), both opened 2026-03-25 within 3h of each other. The two PRs are textually identical.

PR #53 has the more recent activity (updatedAt: 2026-05-22T18:11:07Z, presumably a metadata bump or branch sync), and #54 has been silent since the day it was opened. Clean disposition: close #54 as superseded by #53 (or vice versa per maintainer preference), keep one as the canonical PR. Cleanest comment from the author would be #54 closed in favor of #53 on the closing one.

On the proposed config (independent of duplication)

The 11-line config is standard Cloudflare Workers shape — strict mode + ES2022 target + bundler module resolution. Three observations from a review-merit standpoint:

  1. "include": ["src/**/*", "functions/**/*"]functions/**/* matches Cloudflare Pages' functions directory convention, but the repo's package.json (per ap#55's diff context) uses npx wrangler pages dev . / wrangler pages deploy — so functions/ is the actively-deployed code path. The src/ include is forward-leaning (no current src/ in the repo per the open-PR file lists I can see). Either keep src/ for future use or trim to functions/ for tight scope. Minor.

  2. No "types" array — for Cloudflare Workers/Pages, adding "types": ["@cloudflare/workers-types"] (with the package as a devDep, which a separate PR would add) makes KVNamespace, Request, Response etc resolve cleanly in strict mode. Currently strict mode would flag any Cloudflare-typed code. Worth a follow-up — not blocking this PR.

  3. No "skipLibCheck": true — strict mode without skipLibCheck often produces large amounts of dep-library typing noise that masks real errors. Cloudflare's tooling docs recommend skipLibCheck for Workers projects. Optional addition.

None of these are blocking. The PR shape is what the repo needs; the refinements above are follow-up-issue material.

Recommendation: close #54 as duplicate-of-#53; merge #53 as-is (or with the optional refinements above, maintainer's call). PR #41 (the underlying issue) closes when this lands.

Cc @dantrevino if you'd prefer to close #54 yourself and reference #53.

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.

[prod-grade] Missing: TypeScript configuration (tsconfig.json)

2 participants