Skip to content

fix: follow-up corrections for commits merged to develop on 2026-05-13/14#12130

Draft
Planeshifter wants to merge 4 commits into
developfrom
philipp/fix-commit-review-2026-05-14
Draft

fix: follow-up corrections for commits merged to develop on 2026-05-13/14#12130
Planeshifter wants to merge 4 commits into
developfrom
philipp/fix-commit-review-2026-05-14

Conversation

@Planeshifter
Copy link
Copy Markdown
Member

Follow-up fixes for commits merged to develop between 2026-05-13 20:52 PDT (360877d) and 2026-05-14 02:11 PDT (80b1ef7).

Description

Audit of the 15 first-parent commits merged to develop over the last 24 hours surfaced four high-signal items, grouped by package below. Each commit on this branch corresponds to a single package fix.

blas/ext/base/cindex-of-column

  • Fixes incorrect JSDoc and TypeScript return descriptions introduced in 995d771lib/cindex_of_column.js, lib/ndarray.js, and docs/types/index.d.ts all said "unable to find a search vector" instead of "unable to find a matching column", contradicting both the README and the analogous dindex-of-column package.

blas/ext/base/zindex-of-column

  • Fixes the copy-paste error introduced in 62dad13 where lib/zindex_of_column.js, lib/ndarray.js, and docs/types/index.d.ts described the no-match condition as "unable to find a search vector" rather than "matching column", replacing all 5 occurrences to match the README and dindex-of-column reference implementation.

ml/base/kmeans/algorithm-str2enum

  • In lib/node_modules/@stdlib/ml/base/kmeans/algorithm-str2enum/lib/main.js (introduced in 11246cd), the prototype-walk guard uses isNumber( v ) with a corresponding @stdlib/assert/is-number import, deviating from the inline typeof v === 'number' check used consistently across all other str2enum packages (e.g., transpose-operation-str2enum, layout-str2enum). Drops the import and aligns to the inline form.

ml/base/kmeans/algorithm-enum2str

  • In lib/node_modules/@stdlib/ml/base/kmeans/algorithm-enum2str/lib/main.js (commit 11246cd), the prototype-walk guard uses isString( v ) via an unnecessary @stdlib/assert/is-string import; every analogous BLAS enum2str package uses the inline ( typeof v === 'string' ) ? v : null form. Drop the import and align with the established pattern.

Related Issues

None.

Questions

None.

Other

Validation

Audited the 15-commit window with two parallel style-compliance reviewers (compared each substantive new file against established reference packages — dindex-of-column/sindex-of-column for the new column-search packages, transpose-operation-{str2enum,enum2str} for the kmeans enum utilities, ndarray/zeros/ndarray/ones for ndarray/nans) and two parallel bug reviewers (one diff-only, one with full source-file context). Findings were de-duplicated and each surviving issue re-verified against the diff before applying.

Items raised during the audit but deliberately excluded from this PR:

  • Native C _ndarray routines in cindex-of-column/zindex-of-column use signed strideA1 <= strideA2 for column-major detection while the JS path uses absolute-value isColumnMajor. The same divergence exists in the pre-existing dindex-of-column/sindex-of-column/gindex-of-column C sources, so addressing it would require a family-wide fix outside this window's scope.
  • "stride length for the first dimension" vs. "stride of the first dimension" wording in the new packages' JSDoc — the existing family is itself inconsistent (sindex-of-column uses "stride length for", dindex-of-column uses "stride of"); not a clear violation.
  • Re-adding the numpy.nans keyword to ndarray/nans/package.json — its removal in 65cbb12 is the explicit purpose of that commit.
  • Adding an extended keyword to the new cindex-of-column/zindex-of-column package.json files — the analogous dindex-of-column does not carry it, so no divergence exists.
  • dnrm2 @returns L2-norm tag in blas/base/ndarray/docs/types/index.d.ts — matches the wording already used by the standalone blas/base/dnrm2 and blas/base/ndarray/dnrm2 declarations.

Checklist

AI Assistance

  • Yes
  • No

If you answered "yes" above, how did you use AI assistance?

  • Code generation (e.g., when writing an implementation or fixing a bug)
  • Test/benchmark generation
  • Documentation (including examples)
  • Research and understanding

Disclosure

This PR was authored by Claude Code as part of an automated daily review pass over commits merged to develop. Each finding was independently verified against the diff and the cited reference packages before applying. The PR is being opened as a draft for human audit; please do not promote to ready-for-review until the changes have been confirmed.



Generated by Claude Code

claude added 4 commits May 14, 2026 12:26
…lumn`

Replace `unable to find a search vector` with `unable to find a matching
column` in the JSDoc and TypeScript declarations to match the README and
the wording used by the analogous `dindex-of-column` package.
…lumn`

Replace `unable to find a search vector` with `unable to find a matching
column` in the JSDoc and TypeScript declarations to match the README and
the wording used by the analogous `dindex-of-column` package.
…ns/algorithm-str2enum`

Match the established str2enum pattern used by `blas/base/transpose-operation-str2enum`
and the other BLAS str2enum packages: drop the `@stdlib/assert/is-number`
import and use an inline `typeof v === 'number'` guard instead.
…ns/algorithm-enum2str`

Match the established enum2str pattern used by `blas/base/transpose-operation-enum2str`
and the other BLAS enum2str packages: drop the `@stdlib/assert/is-string`
import and use an inline `typeof v === 'string'` guard instead.
@stdlib-bot
Copy link
Copy Markdown
Contributor

Coverage Report

Package Statements Branches Functions Lines
blas/ext/base/cindex-of-column $\color{green}548/548$
$\color{green}+100.00%$
$\color{green}54/54$
$\color{green}+100.00%$
$\color{green}4/4$
$\color{green}+100.00%$
$\color{green}548/548$
$\color{green}+100.00%$
blas/ext/base/zindex-of-column $\color{green}548/548$
$\color{green}+100.00%$
$\color{green}54/54$
$\color{green}+100.00%$
$\color{green}4/4$
$\color{green}+100.00%$
$\color{green}548/548$
$\color{green}+100.00%$
ml/base/kmeans/algorithm-enum2str $\color{green}103/103$
$\color{green}+100.00%$
$\color{green}5/5$
$\color{green}+100.00%$
$\color{green}1/1$
$\color{green}+100.00%$
$\color{green}103/103$
$\color{green}+100.00%$
ml/base/kmeans/algorithm-str2enum $\color{green}95/95$
$\color{green}+100.00%$
$\color{green}5/5$
$\color{green}+100.00%$
$\color{green}1/1$
$\color{green}+100.00%$
$\color{green}95/95$
$\color{green}+100.00%$

The above coverage report was generated for the changes in this PR.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants