Repository navigation
DOC-7267 Fix the remaining node_redis entries against the 6.3.1 source - #4501
Open
andy-stark-redis wants to merge 1 commit into
Open
andy-stark-redis wants to merge 1 commit into
andy-stark-redis wants to merge 1 commit into
Conversation
The last node_redis items from the DOC-7267 sweep, checked against the node-redis 6.3.1 sources and a tsc --strict compile of the method names. 38 command files change, only their node_redis lists, plus the status file. Parameter names and types that differ from the source: CF.LOADCHUNK chunk (was data), FT.ALTER schema, FT.CURSOR READ cursor, FT.DICTADD and FT.DICTDEL term, FT.SYNUPDATE groupId, MIGRATE destinationDb with host and key typed as the source has them, PEXPIRE ms, PEXPIREAT msTimestamp (number or Date), TDIGEST.TRIMMED_MEAN lowCutPercentile and highCutPercentile, TOUCH key, and TDIGEST.MERGE (destination, source, options), which had a numKeys parameter the client does not take. JSON.MGET gains reviver, CMS.INITBYDIM and CMS.INITBYPROB gain options. Unreadable signatures: 13 entries gave their parameters as ...args: Parameters<typeof helper>. XADD, TS.INCRBY, TS.DECRBY, TS.RANGE, TS.REVRANGE, GEORADIUS, GEORADIUS_RO, GEORADIUSBYMEMBER_RO, XRANGE, XREVRANGE, BZMPOP, and the WithScores second entries of ZRANGE and ZRANGEBYSCORE now list the parameters the helper declares. Not callable: FAILOVER, SAVE, SHUTDOWN and READWRITE have a source file but no method on the client (tsc: property does not exist), so their lists are empty and the status file marks node_redis generic_only. FT.PROFILE was a single PROFILE method that does not exist, and is now client.ft.profileSearch and client.ft.profileAggregate returning ProfileReplyResp2. FT._LIST is client.ft._list. The DECR, DECRBY, INCR and INCRBY files each held the neighbouring command's entry as well and now keep their own. Learned: a node-redis command file that is not imported in commands/index.ts has no client method, and a parameter list written as Parameters<typeof helper> hides the real names, read the helper Constraint: the 44 entries returning Any are left, node-redis 6.3.1 itself types those replies as any, so there is no declared type to copy Directive: take parameter names from the declaration the client exposes, not from a name that reads better, and say so when a shared helper forces a generic one Gaps: EVALSHA and FCALL entries use sha1 and functionName but the shared helper names the parameter script Gaps: HSET, AUTH and CONFIG SET take destructured or tuple parameters and were checked by reading the source, not by compile Gaps: params and returns of other entries were not rechecked beyond the generator's comparison Recheck: when node-redis ships a release after 6.3.1, rerun the declaration check Ticket: DOC-7267 Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Contributor
Contributor
🧠 Redis MemoryFound 5 related items from repository history (5 new this commit):
Memory updated at 7c5d484 |
dwdougherty
approved these changes
Nov 6, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
The last node_redis items from DOC-7267, checked against the node-redis 6.3.1 sources and a
tsc --strictcompile of the method names. 38 command files change, only theirnode_redislists, plus the status file and the merged data file.chunk, FT.ALTERschema, FT.CURSOR READcursor, FT.DICTADD and FT.DICTDELterm, FT.SYNUPDATEgroupId.destinationDb, PEXPIREms, PEXPIREATmsTimestamp(number | Date), TDIGEST.TRIMMED_MEANlowCutPercentileandhighCutPercentile, TOUCHkey.(destination, source, options). It had anumKeysparameter the client doesn't take.reviver. CMS.INITBYDIM and CMS.INITBYPROB gainoptions....args: Parameters<typeof helper>now list the parameters the helper declares: XADD, TS.INCRBY, TS.DECRBY, TS.RANGE, TS.REVRANGE, GEORADIUS, GEORADIUS_RO, GEORADIUSBYMEMBER_RO, XRANGE, XREVRANGE, BZMPOP, and the second ZRANGE and ZRANGEBYSCORE entries.node_redisasgeneric_only.PROFILEmethod that doesn't exist. It is nowclient.ft.profileSearchandclient.ft.profileAggregate, returningProfileReplyResp2. FT._LIST isclient.ft._list.Review notes
data/command-api-mapping.jsonequals a regeneration from the per-command files. Built withcontent/develop/clientsignored (the full site only builds in CI), and FT.PROFILE, FAILOVER, DECR, XADD and TOUCH render as expected.Anyreturns are left. node-redis 6.3.1 itself types those replies asany(tscreportsPromise<any>), so there is no declared type to copy. Writing a type from the transformer's runtime shape would be my invention.select,quit,monitor,resetand the pub/sub methods, which are client-level methods outside the command map (I read each inclient/index.ts), andclientTracking, which is in the command map but has a generic signature the generator mis-parses (tscconfirms it exists). I left them.sha1andfunctionName, while the shared helper names itscript. I kept the readable names.🤖 Generated with Claude Code
Note
Low Risk
Documentation-only JSON updates with no runtime code paths affected.
Overview
Summary
Brings the regenerated
command-api-mappingblobs and mergedcommand-api-mapping.jsonback in sync with node-redis 6.3.1: every affectednode_redissignature now lists the concrete parameters returned bytsc --strict, including module helpers (JSON.MGET,CMS.INIT*, TDigest) and geo/timeseries/stream APIs that previously exposed...args.Call-site hygiene
DECR*,INCR*, failover/read-write lifecycle commands, and other mismatched entries no longer embed neighbouring helpers or phantom methods;FAILOVER,SAVE,SHUTDOWN, andREADWRITEintentionally clear their client sections whilecommand-api-mapping-statusmarks themgeneric_only.Search stack fixes
FTcommands pick up the renamed parameters/method casing (client.ft.profileSearch/profileAggregate,client.ft._list, updated dict/cursor helpers) so docs match the published TypeScript surface.Reviewed by Cursor Bugbot for commit 7c5d484. Bugbot is set up for automated code reviews on this repo. Configure here.