chore: add missing keywords in blas/ext/base/ndarray cusum packages#11967
Merged
chore: add missing keywords in blas/ext/base/ndarray cusum packages#11967
blas/ext/base/ndarray cusum packages#11967Conversation
…darray/dcusum` Insert `blas` and `extended` after `math` in `package.json` keywords, matching 75/87 (86%) of `blas/ext/base/ndarray` siblings and the strided sibling `@stdlib/blas/ext/base/dcusum`, both of which already list these keywords.
…darray/dcusumkbn` Insert `blas` and `extended` after `math` in `package.json` keywords, matching 75/87 (86%) of `blas/ext/base/ndarray` siblings and the strided sibling `@stdlib/blas/ext/base/dcusumkbn`, both of which already list these keywords.
…darray/dcusumkbn2` Insert `blas` and `extended` after `math` in `package.json` keywords, matching 75/87 (86%) of `blas/ext/base/ndarray` siblings and the strided sibling `@stdlib/blas/ext/base/dcusumkbn2`, both of which already list these keywords.
…darray/dcusumors` Insert `blas` and `extended` after `math` in `package.json` keywords, matching 75/87 (86%) of `blas/ext/base/ndarray` siblings and the strided sibling `@stdlib/blas/ext/base/dcusumors`, both of which already list these keywords.
…darray/dcusumpw` Insert `blas` and `extended` after `math` in `package.json` keywords, matching 75/87 (86%) of `blas/ext/base/ndarray` siblings and the strided sibling `@stdlib/blas/ext/base/dcusumpw`, both of which already list these keywords.
…darray/gcusum` Insert `blas` and `extended` after `math` in `package.json` keywords, matching 75/87 (86%) of `blas/ext/base/ndarray` siblings and the strided sibling `@stdlib/blas/ext/base/gcusum`, both of which already list these keywords.
…darray/gcusumkbn` Insert `blas` and `extended` after `math` in `package.json` keywords, matching 75/87 (86%) of `blas/ext/base/ndarray` siblings and the strided sibling `@stdlib/blas/ext/base/gcusumkbn`, both of which already list these keywords.
…darray/gcusumkbn2` Insert `blas` and `extended` after `math` in `package.json` keywords, matching 75/87 (86%) of `blas/ext/base/ndarray` siblings and the strided sibling `@stdlib/blas/ext/base/gcusumkbn2`, both of which already list these keywords.
…darray/gcusumors` Insert `blas` and `extended` after `math` in `package.json` keywords, matching 75/87 (86%) of `blas/ext/base/ndarray` siblings and the strided sibling `@stdlib/blas/ext/base/gcusumors`, both of which already list these keywords.
…darray/gcusumpw` Insert `blas` and `extended` after `math` in `package.json` keywords, matching 75/87 (86%) of `blas/ext/base/ndarray` siblings and the strided sibling `@stdlib/blas/ext/base/gcusumpw`, both of which already list these keywords.
…darray/scusum` Insert `blas` and `extended` after `math` in `package.json` keywords, matching 75/87 (86%) of `blas/ext/base/ndarray` siblings and the strided sibling `@stdlib/blas/ext/base/scusum`, both of which already list these keywords.
…darray/scusumors` Insert `blas` and `extended` after `math` in `package.json` keywords, matching 75/87 (86%) of `blas/ext/base/ndarray` siblings and the strided sibling `@stdlib/blas/ext/base/scusumors`, both of which already list these keywords.
Contributor
Coverage Report
The above coverage report was generated for the changes in this PR. |
kgryte
approved these changes
May 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.
Description
Adds the missing
"blas"and"extended"keywords to twelve cumulative-sum packages under@stdlib/blas/ext/base/ndarray/. The keywords are inserted after"math"and before"cumulative"inpackage.json.keywords, matching the canonical ordering observed in conforming siblings.Namespace summary
@stdlib/blas/ext/base/ndarraypackage.jsonshape (top-level keys,scripts,stdlib,keywords), README sections (H2/H3 ordered),manifest.jsonshape, test/benchmark/example file naming,lib/main.jsandlib/index.jsJSDoc shape (@param,@returns,@throws,@example,## Notesblocks), function signatures, andrequire()dependency sets, plusdocs/types/index.d.tsanddocs/repl.txtsection presencepackage.jsontop-level keys (100%),scriptskeys (100%, all{}), test/benchmark/example file naming (100% ontest.js/benchmark.js/index.js), README H2 sectionsUsage(100%) andExamples(100%), JSDoc@param/@returns/@example/## Notes(100%), function name = directory camelCase (100%), four ndarray base accessorrequire()s (100%), andpackage.jsonkeywordsstdlib(100%),ndarray(100%),blas(86%),extended(86%)referencesREADME section (31%),stdmath/mathematics/mathkeywords (99%, but the lone outliergjoin-betweenis a string operation where their absence is intentional and matches its strided sibling), andstatistics/stats/sum/total/summationkeywords (55%, domain-specific and tracks the operation)Outlier corrections
@stdlib/blas/ext/base/ndarray/dcusumAdd
"blas"and"extended"keywords topackage.json(86% conformance: 75/87blas/ext/base/ndarraysiblings carry both). The strided sibling@stdlib/blas/ext/base/dcusumand same-family ndarray wrappers (dsum,scusumkbn) carry these keywords; this package was missing them.@stdlib/blas/ext/base/ndarray/dcusumkbnAdded
"blas"and"extended"keywords topackage.json. 75 of 87blas/ext/base/ndarraysiblings (86%) carry both keywords; the intra-family inconsistency is direct:scusumkbnandscusumkbn2ndarray wrappers and the strided sibling@stdlib/blas/ext/base/dcusumkbnall carry them, while this f64 ndarray counterpart did not.@stdlib/blas/ext/base/ndarray/dcusumkbn2Adds
"blas"and"extended"keywords topackage.json, inserted after"math"and before"cumulative". Keyword conformance rises to 86% (75/87), matching the pattern established by thescusumkbn2ndarray wrapper and the strided sibling@stdlib/blas/ext/base/dcusumkbn2, both of which carry these keywords.@stdlib/blas/ext/base/ndarray/dcusumorsAdds
"blas"and"extended"keywords topackage.json, aligning with the keyword schema present in both the strided sibling@stdlib/blas/ext/base/dcusumorsand the parallel non-cumulative@stdlib/blas/ext/base/ndarray/dsumors. This package was among the non-conforming entries driving the keyword conformance rate to 86% (75/87) across the ndarray BLAS extension suite.@stdlib/blas/ext/base/ndarray/dcusumpwAdds
"blas"and"extended"keywords topackage.json, inserting them after"math"and before"cumulative". Keyword conformance rises to 86% (75/87). Precedent: sibling packages@stdlib/blas/ext/base/dcusumpwand@stdlib/blas/ext/base/ndarray/dsumpwalready carry both keywords.@stdlib/blas/ext/base/ndarray/gcusumAdded
"blas"and"extended"keywords topackage.json, inserted after"math"and before"cumulative". Keyword set now conforms to the established pattern carried by the strided sibling@stdlib/blas/ext/base/gcusumand the parallel ndarray package@stdlib/blas/ext/base/ndarray/gsum. Conformance rises to 86% (75/87).@stdlib/blas/ext/base/ndarray/gcusumkbnAdds
"blas"and"extended"keywords topackage.jsonafter"math"and before"cumulative". The package reaches 86% keyword conformance. Precedent is established by the strided sibling@stdlib/blas/ext/base/gcusumkbnand the parallel ndarray wrapper@stdlib/blas/ext/base/ndarray/gsumkbn, both of which carry these keywords.@stdlib/blas/ext/base/ndarray/gcusumkbn2Added
"blas"and"extended"keywords topackage.jsonafter"math"and before"cumulative". Keyword conformance rises to 86% (75/87). Precedent established by the strided sibling and the parallel ndarray wrapper@stdlib/blas/ext/base/ndarray/gsumkbn2.@stdlib/blas/ext/base/ndarray/gcusumorsAdded
"blas"and"extended"keywords topackage.jsonafter"math"and before"cumulative". Follows precedent set by the strided sibling@stdlib/blas/ext/base/gcusumorsand the parallel ndarray wrapper@stdlib/blas/ext/base/ndarray/gsumors, both of which carry these keywords. Conformance: 86% (75/87).@stdlib/blas/ext/base/ndarray/gcusumpwAdds
"blas"and"extended"keywords topackage.json, inserted after"math"and before"cumulative". Keyword conformance rises to 86% (75/87). Matches the ordering established by the strided sibling@stdlib/blas/ext/base/gcusumpwand the parallel ndarray wrapper@stdlib/blas/ext/base/ndarray/gsumpw.@stdlib/blas/ext/base/ndarray/scusumAdds
"blas"and"extended"keywords topackage.json, inserted after"math"and before"cumulative". Keyword conformance across the ndarray wrapper family stands at 86% (75/87); sibling wrappers@stdlib/blas/ext/base/ndarray/scusumkbnandscusumkbn2carry these keywords, as does the strided counterpart@stdlib/blas/ext/base/scusum. This change brings the package into alignment with established conventions in the extended BLAS ndarray namespace.@stdlib/blas/ext/base/ndarray/scusumorsAdds
"blas"and"extended"keywords topackage.json, inserted after"math"and before"cumulative". Keyword conformance across the ndarray BLAS extended family stands at 86% (75/87); the same-family@stdlib/blas/ext/base/ndarray/scusumkbnand the strided sibling@stdlib/blas/ext/base/scusumorsboth carry these keywords. This change bringsscusumorsinto alignment with established precedent.Validation
Three independent validation agents reviewed each outlier before any patch was applied:
lib/main.jsand the strided sibling against conforming ndarray wrappers (dsum,dsumkbn,gsumors,scusumkbn, etc.). Result for all 12 outliers:confirmed-drift. Within the cumulative-sum family itself,scusumkbnandscusumkbn2ndarray wrappers carry the keywords while structurally identical siblings do not — this internal inconsistency, combined with universal keyword presence in the strided counterparts, indicates inadvertent omission via copy-paste from an earlier template rather than any semantic intent.test/test.jsandexamples/index.jsfiles in each outlier do not referencepackage.jsoncontents or keywords; the only files mentioning thekeywordfield are thepackage.jsonfiles themselves. Result for all 12 outliers:safe-to-fix. No cascade into tests, examples, types, or REPL fixtures.@stdlib/blas/ext/base/ndarray/) and that the canonical insertion position (after"math", before"cumulative") is determinable from sibling ordering (scusumkbn,dsumkbn). Result for all 12 outliers:confirmed-drift.Deliberately excluded
gjoinREADME missing## Notesheading (86/87 = 99% have it; the empty<section class="notes">block is structurally present but lacks content) — fix would require writing package-specific prose, not a mechanical patch.gjoin-betweenlackingstdmath/mathematics/mathkeywords (99% have them) —gjoin-betweenis a string-join operation; its strided sibling@stdlib/blas/ext/base/gjoin-betweenlikewise omits these math keywords. Intentional deviation.statistics/stats/sum/total/summationkeyword distribution (55%) — below the 75% majority threshold and tracks the operation type.csum,dnansum,dsum,snansum,ssum,zsum) extra files (binding.gyp,manifest.json,lib/native.js, etc.) — intentional, only present where a C implementation exists.referencesH2 section (31%) — present where mathematical references warrant it; below threshold.Related Issues
None.
Questions
None.
Other
20260506(deterministic from today's date for reproducibility); namespace pick wasblas/ext/base/ndarrayfrom 122 eligible namespaces with ≥8 non-autogenerated members.philipp/drift-blas-ext-base-ndarray-2026-05-06.package.json.keywordsis the only diff.~/drift-reports/drift-blas-ext-base-ndarray-2026-05-06.md.Checklist
AI Assistance
If you answered "yes" above, how did you use AI assistance?
Disclosure
This PR was authored by Claude Code running the cross-package API drift detection routine: a structural and semantic feature scan over the 87
blas/ext/base/ndarraypackages, three independent validation agents (semantic-review, cross-reference, structural-review) per outlier, and a final per-package PR-body refinement pass. Every patch is a two-line addition topackage.json.keywordsat a deterministic position; no code, signatures, types, tests, examples, or REPL fixtures were changed. A human will audit before promoting from draft.@stdlib-js/reviewers
Generated by Claude Code