Conversation
There was a problem hiding this comment.
Cursor Bugbot has reviewed your changes and found 1 potential issue.
Bugbot Free Tier Details
You are on the Bugbot Free tier. On this plan, Bugbot will review limited PRs each billing cycle.
To receive Bugbot reviews on all of your PRs, visit the Cursor dashboard to activate Pro and start your 14-day free trial.
Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 7c982972f5
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
src/utils.ts
Outdated
| { | ||
| get(target, key) { | ||
| if (key === PATH_SEGMENTS) return target[PATH_SEGMENTS as keyof typeof target]; | ||
| if (typeof key === "string" && key !== "then" && key !== "Symbol") { |
There was a problem hiding this comment.
Record
then as a normal path segment
The proxy builder currently drops the then key entirely, so path((x) => x.then.value) is captured as just value instead of then.value. This produces incorrect paths for any payloads that legitimately include a then property, and downstream calls like get, set, and match will operate on the wrong location.
Useful? React with 👍 / 👎.
src/utils.ts
Outdated
| get(target, key) { | ||
| if (key === PATH_SEGMENTS) return target[PATH_SEGMENTS as keyof typeof target]; | ||
| if (typeof key === "string" && key !== "then" && key !== "Symbol") { | ||
| const next: Segment = Number.isNaN(Number(key)) ? key : Number(key); |
There was a problem hiding this comment.
Preserve numeric-looking object keys as strings
Every string key is coerced through Number(key), which rewrites valid object keys like "01" or "1e3" into numeric segments. That changes path identity and causes get/set to target different properties (for example, "01" becomes 1), leading to silent data mismatches whenever objects use numeric-looking string keys.
Useful? React with 👍 / 👎.
Note
Medium Risk
Moderate risk because it introduces automated publishing via
semantic-releaseonmain(with broad GitHub token permissions), which can affect release cadence and supply-chain posture if misconfigured.Overview
Adds repo automation and governance: Dependabot config for monthly npm dependency updates (grouped by prod/dev), plus a PR workflow that runs
npm ci, lint, tests, and a build.Introduces automated publishing on
mainvia a GitHub Actions workflow that runs lint/build/tests and then executesnpx semantic-release(withid-tokenand write permissions). Also adds Biome formatting/lint config, Husky + Commitlint hooks,.gitignore/.npmrc, and new top-level docs (README.md,CONTRIBUTING.md,LICENSE) plus a smallfix-tests.mjshelper script.Written by Cursor Bugbot for commit 7c98297. Configure here.