Skip to content

fix: propagate recent develop fixes to sibling packages#12814

Draft
Planeshifter wants to merge 2 commits into
developfrom
philipp/fix-propagation-2026-06-10
Draft

fix: propagate recent develop fixes to sibling packages#12814
Planeshifter wants to merge 2 commits into
developfrom
philipp/fix-propagation-2026-06-10

Conversation

@Planeshifter

Copy link
Copy Markdown
Member

Description

Propagating fixes merged to develop between 692e1d78 (2026-06-09 10:07 -0700) and 95792b76 (2026-06-10 01:13 -0700) to sibling packages with the same underlying defect.

Pattern: type dtype parameter as DataType

Source commit f1e20349 narrowed the dtype parameter of blas/tools/swap-factory from any to DataType (imported from @stdlib/types/ndarray). The same dtype: any defect persists in two sibling declarations whose runtime accepts only DataType-typed inputs as exercised by the existing JSDoc examples and type tests. Five additional dtype: any sites were inspected and excluded: their runtime accepts numeric enums, struct constructors, or other inputs that DataType would not cover.

Pattern: order float16 before float32 in data type lists

Source commit 9630dd78 reordered the data type bullet lists in array/ctors and array/typed-ctors so that float16 precedes float32 and float64. The identical out-of-order block (float64, float32, float16) appears in the README and docs/repl.txt of seven sibling utils/* packages whose floating-point sub-lists are contiguous and have no interleaved integer bullets.

Related Issues

None.

Questions

No.

Other

Validation

  • Search scope: Pattern A scoped to all lib/node_modules/@stdlib/**/docs/types/index.d.ts files for the dtype:\s*any signature; Pattern B scoped to all lib/node_modules/@stdlib/**/{README.md,docs/repl.txt} files for the three-bullet float ordering signature.
  • Two independent opus validation passes were run per pattern, each agent reading the full file at every candidate site. For Pattern A, only the sites where BOTH passes returned confirmed advanced. For Pattern B, all 14 candidate files were independently confirmed.
  • A sonnet style-consistency pass verified that each replacement matches the surrounding package's conventions: for Pattern A, the /// <reference types="@stdlib/types"/> directive and the named-import line mirror the source commit's placement after the // TypeScript Version: comment; for Pattern B, README bullets use - \floatXX`: description(no trailing period) andrepl.txtbullets use - floatXX: description.` (trailing period), preserved exactly.

Deliberately excluded:

  • ndarray/base/buffer-ctors, bytes-per-element, dtype-char, dtype2c, dtype-desc: the runtime accepts inputs beyond DataType — struct constructors (Function), numeric dtype enum constants via dtype-resolve-str, or arbitrary objects with a byteLength property — so narrowing the declaration would not match the implementation. Logged in the local report for a future routine that can adapt the fix (DataType | number or DataType | Function).
  • ndarray/base/dtype-resolve-{str,enum} and strided/base/dtype-resolve-{str,enum}: same shape but require the broader DataType | number typing (and the strided sibling needs the strided DataType, not the ndarray one) — both fall outside the source commit's mechanical pattern.
  • The random/streams/randn missing-prng-option fix, the random/array/* assign-example fix, the missing-closing-brace TypeScript test fix, and the rayleigh-ctor skewness-arity fix: each pattern's signature search returned zero remaining sites across the namespace.
  • Single-package fixes whose pattern is not generalisable: the TSDoc alignment in iter declarations, the nlp/lda whitespace fix, the dcorrelation parameter-type widening, the ndarray/with generic binding, the time/quarter-of-year notes addition, and the workflow shell-injection hardening.
  • chore: fix JavaScript lint errors: the two-package source touches a Symbol.toStringTag lint suppression (one-off, requires per-site judgment) and a bracket-spacing style for new Float64Array([...]) calls — bracket style is contextual rather than a defect.

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 on behalf of @Planeshifter as an automated propagation of fixes merged to develop over the prior 24 hours. Candidate source commits were filtered for generalisable patterns, sibling sites located via grep-able pattern signatures, and each proposed patch independently validated by parallel reviewer agents (two opus validation passes plus a sonnet style-consistency pass) before commits were applied in the primary worktree. A human will audit and promote the PR out of draft.


@stdlib-js/reviewers


Generated by Claude Code

Propagates fix from f1e2034 ("fix: type `dtype` parameter as
`DataType`") to `assert/is-ndarray-like-with-data-type` and
`ndarray/base/dtype-alignment`, whose declarations typed the ndarray
data type parameter as `any`.
Propagates fix from 9630dd7 ("docs: order `float16` before `float32`
in data type lists") to seven sibling packages under `utils/` whose
README and REPL data type lists placed `float16` after `float32` and
`float64`.
@stdlib-bot

Copy link
Copy Markdown
Contributor

Coverage Report

Package Statements Branches Functions Lines
assert/is-ndarray-like-with-data-type $\\color{green}99/99$
$\\color{green}+100.00\\%$
$\\color{green}4/4$
$\\color{green}+100.00\\%$
$\\color{green}1/1$
$\\color{green}+100.00\\%$
$\\color{green}99/99$
$\\color{green}+100.00\\%$
ndarray/base/dtype-alignment $\\color{green}193/193$
$\\color{green}+100.00\\%$
$\\color{green}14/14$
$\\color{green}+100.00\\%$
$\\color{green}2/2$
$\\color{green}+100.00\\%$
$\\color{green}193/193$
$\\color{green}+100.00\\%$
utils/real-max $\\color{green}112/112$
$\\color{green}+100.00\\%$
$\\color{green}7/7$
$\\color{green}+100.00\\%$
$\\color{green}1/1$
$\\color{green}+100.00\\%$
$\\color{green}112/112$
$\\color{green}+100.00\\%$
utils/real-min $\\color{green}112/112$
$\\color{green}+100.00\\%$
$\\color{green}7/7$
$\\color{green}+100.00\\%$
$\\color{green}1/1$
$\\color{green}+100.00\\%$
$\\color{green}112/112$
$\\color{green}+100.00\\%$
utils/safe-int-max $\\color{green}112/112$
$\\color{green}+100.00\\%$
$\\color{green}7/7$
$\\color{green}+100.00\\%$
$\\color{green}1/1$
$\\color{green}+100.00\\%$
$\\color{green}112/112$
$\\color{green}+100.00\\%$
utils/safe-int-min $\\color{green}112/112$
$\\color{green}+100.00\\%$
$\\color{green}7/7$
$\\color{green}+100.00\\%$
$\\color{green}1/1$
$\\color{green}+100.00\\%$
$\\color{green}112/112$
$\\color{green}+100.00\\%$
utils/size-of $\\color{green}138/138$
$\\color{green}+100.00\\%$
$\\color{green}16/16$
$\\color{green}+100.00\\%$
$\\color{green}1/1$
$\\color{green}+100.00\\%$
$\\color{green}138/138$
$\\color{green}+100.00\\%$
utils/type-max $\\color{green}134/134$
$\\color{green}+100.00\\%$
$\\color{green}14/14$
$\\color{green}+100.00\\%$
$\\color{green}1/1$
$\\color{green}+100.00\\%$
$\\color{green}134/134$
$\\color{green}+100.00\\%$
utils/type-min $\\color{green}131/131$
$\\color{green}+100.00\\%$
$\\color{green}14/14$
$\\color{green}+100.00\\%$
$\\color{green}1/1$
$\\color{green}+100.00\\%$
$\\color{green}131/131$
$\\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.

2 participants