Add tsconfig.json with strict mode#53
Conversation
|
Close-with-verification finding: this PR is a literal duplicate of #54. Verified by direct comparison:
Both target #41 (the parent @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) |
secret-mars
left a comment
There was a problem hiding this comment.
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:
-
"include": ["src/**/*", "functions/**/*"]—functions/**/*matches Cloudflare Pages' functions directory convention, but the repo'spackage.json(per ap#55's diff context) usesnpx wrangler pages dev ./wrangler pages deploy— sofunctions/is the actively-deployed code path. Thesrc/include is forward-leaning (no currentsrc/in the repo per the open-PR file lists I can see). Either keepsrc/for future use or trim tofunctions/for tight scope. Minor. -
No
"types"array — for Cloudflare Workers/Pages, adding"types": ["@cloudflare/workers-types"](with the package as a devDep, which a separate PR would add) makesKVNamespace,Request,Responseetc resolve cleanly in strict mode. Currently strict mode would flag any Cloudflare-typed code. Worth a follow-up — not blocking this PR. -
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.
Summary
Adds
tsconfig.jsonwith strict mode enabled at repo root.Changes
tsconfig.json: ES2022 target, ESNext module, strict mode, bundler module resolutionsrc/**/*andfunctions/**/*node_modulesWhy
Fixes #41 - TypeScript configuration was missing, preventing strict type checking and proper IDE support.