fix(api): remove stale, divergent package-lock.json [BUG-104] - #221
fix(api): remove stale, divergent package-lock.json [BUG-104]#221Morenikeoa wants to merge 1 commit into
Conversation
This project uses pnpm exclusively — CI (.github/workflows/ci.yml) and the Dockerfile both run `pnpm install --frozen-lockfile` and never reference package-lock.json. The file was nonetheless present and had drifted out of sync with pnpm-lock.yaml: it pinned a different @percolator/shared commit SHA, and resolved @percolatorct/sdk to the public npm registry (1.0.0-beta.33) instead of the local monorepo path package.json declares. Since nothing in this repo's actual tooling uses it, its only effect was risk: anyone (or any future CI job) who ran `npm install` instead of `pnpm install` would silently build against a stale, unrelated SDK version and a different shared-package commit, with no error raised. Removed the file and added package-lock.json to .gitignore so it can't be accidentally recommitted by running npm locally. Verified `pnpm install --frozen-lockfile`, the full test suite, and `tsc --noEmit` all still pass with it gone — confirming nothing in this repo's tooling depended on it. Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
|
@Princessdada is attempting to deploy a commit to the Khubair Nasir's projects Team on Vercel. A member of the Team first needs to authorize it. |
|
Warning Review limit reached
More reviews will be available in 21 minutes and 48 seconds. Learn how PR review limits work. Your organization has used up its prepaid credits, and credit purchases are no longer available. Enable the review add-on in the billing tab to keep reviews running — you're only billed for reviews past your plan's rate limits ($0.25/file). ⌛ How to resolve this issue?After more reviews become available, a review can be triggered using the To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based credits. 🚦 How do rate limits work?CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability. For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window. Please see our Fair Usage Limits Policy for further information. ℹ️ Review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: ⛔ Files ignored due to path filters (1)
📒 Files selected for processing (1)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
Independent verification — not an approval (QA/Security own that). Verdict: safe, and the divergence is real and worse than "stale". A deletion PR can't be mutation-tested, so I checked the two things that actually matter: does anything consume the file, and is the divergence claim true. 1. Nothing consumes it — deletion is safeEvery install path in the repo is pnpm: No 2. The divergence is concrete — it pins a different SDK versionNot hypothetical drift: So anyone who ran That upgrades this from housekeeping to a real footgun removal. 3. It prevents recurrence, which is the part I'd have asked forThe
I've flagged several PRs recently for fixing a current state without preventing the next occurrence (#227's spec drift being the freshest). This one does both, and the reasoning is left in the file for whoever hits it next. No changes requested from me. |
Problem
This project uses pnpm exclusively —
.github/workflows/ci.ymland theDockerfileboth runpnpm install --frozen-lockfileand never referencepackage-lock.jsonanywhere. The file was nonetheless present in the repo and had drifted out of sync withpnpm-lock.yaml:@percolator/sharedcommit SHA thanpackage.json/pnpm-lock.yaml.@percolatorct/sdkto the public npm registry (1.0.0-beta.33) instead of thefile:../../percolator-sdklocal monorepo pathpackage.jsonactually declares.Impact
Since nothing in this repo's real tooling uses
package-lock.json, its only effect was risk: anyone — a new contributor unfamiliar with the pnpm requirement, or a future CI job misconfigured to usenpm— runningnpm installinstead ofpnpm installwould silently build and test against a stale, unrelated SDK version and a different shared-package commit, with no error raised.Fix
Removed
package-lock.jsonand added it to.gitignoreso it can't be accidentally recommitted by runningnpm installlocally.Proof of Fix
Verified
pnpm install --frozen-lockfile, the full test suite (294 baseline passing, same 1 pre-existing unrelated failure), andtsc --noEmitall still pass with the file gone — confirming nothing in this repo's actual tooling depended on it.Related
Found during a broader API audit; distinct from open issue #198 (CI/Docker can't resolve the v17 SDK dependency at all — a hard failure case, not this silent-divergence case). No existing open issue/PR covers this.