Repository navigation
RFC: JSON Pointer (RFC 6901) and JSON Patch (RFC 6902) support #16327
Copy link
Copy link
Open
Labels
RFCRequest for comments. Feature requests and proposed changes.Request for comments. Feature requests and proposed changes.
Description
Description
This issue tracks the work required to implement first-class JSON Pointer (RFC 6901) and JSON Patch (RFC 6902) utility suites across the @stdlib/utils namespace.
The goal is to provide a zero-dependency, standard-compliant, immutable patching architecture suitable for incremental document updates (such as delta updates to Vega visualization specifications):
- JSON Pointer (
@stdlib/utils/json-pointer/*): Serves as the foundational addressing layer for identifying and resolving values within JSON documents, parsing pointer strings into reference tokens, formatting tokens, validating array indices, and enforcing prototype pollution security boundaries. - JSON Patch (
@stdlib/utils/json-patch/*): Implements atomic patch execution for the six standard RFC 6902 operations (add,remove,replace,move,copy, andtest) using structural sharing (path-cloning) to guarantee that unmodified subtrees maintain reference equality and the original document is never mutated.
Below is the complete hierarchical and alphabetical list of packages across both namespaces, annotated with their status and task type.
Package Checklist
JSON Pointer Suite (RFC 6901)
-
@stdlib/utils/json-pointer(Top-Level Namespace Aggregator)-
@stdlib/utils/json-pointer/format -
@stdlib/utils/json-pointer/get -
@stdlib/utils/json-pointer/has -
@stdlib/utils/json-pointer/parse -
@stdlib/utils/json-pointer/resolve -
@stdlib/utils/json-pointer/base(Base Operations Sub-Namespace)-
@stdlib/utils/json-pointer/base/resolve-token -
@stdlib/utils/json-pointer/base/assert(Base Assertions Sub-Namespace)-
@stdlib/utils/json-pointer/base/assert/is-safe-token
-
-
-
JSON Patch Suite (RFC 6902)
-
@stdlib/utils/json-patch(Top-Level Namespace Aggregator)-
@stdlib/utils/json-patch/apply -
@stdlib/utils/json-patch/validate -
@stdlib/utils/json-patch/ops(Patch Operations Sub-Namespace)-
@stdlib/utils/json-patch/ops/add -
@stdlib/utils/json-patch/ops/copy -
@stdlib/utils/json-patch/ops/move -
@stdlib/utils/json-patch/ops/remove -
@stdlib/utils/json-patch/ops/replace -
@stdlib/utils/json-patch/ops/assert
-
-
@stdlib/utils/json-patch/base(Base Operations Sub-Namespace)-
@stdlib/utils/json-patch/base/delete-in -
@stdlib/utils/json-patch/base/insert-in -
@stdlib/utils/json-patch/base/set-in -
@stdlib/utils/json-patch/base/shallow-clone
-
-
Related Issues
Related issues # , # , and # .
Questions
No.
Other
No.
Checklist
- I have read and understood the Code of Conduct.
- Searched for existing issues and pull requests.
- The issue name begins with
RFC:.
Metadata
Metadata
Assignees
Labels
RFCRequest for comments. Feature requests and proposed changes.Request for comments. Feature requests and proposed changes.
Activity
navenavelimargam commentedon Oct 27, 2026
Hi @gururaj1512,
I'm interested in contributing to the JSON Pointer and JSON Patch utilities in stdlib. I noticed that several JSON Pointer pull requests are already linked to this issue.
I'd be happy to take ownership of a separate, well-scoped package or subtask, such as one of the JSON Patch operations, if that would help move the work forward. Could you please let me know which part is still available and suitable for an independent contribution?
Thank you!
gururaj1512 commentedon Oct 28, 2026
Hey @navenavelimargam,
Thanks for reaching out! This issue is primarily a tracking issue for work I've already drafted locally and am preparing PRs for, so the core operations are already spoken for. Definitely check stdlib's other issues.