executing-plans
executing-plans
Use when executing an implementation plan in the current session as the implementer yourself — your human partner chose inline execution, or no subagent tool is available
numpy-scipy-primitivesRoutes autograd.numpy and autograd.scipy wrapper behavior, supported and unsupported NumPy patterns, complex numbers, xarray interoperability, and SciPy-extra troubleshooting.
Independent GitHub snapshot · Automated classification · Original documentation governs
Use this sub-skill when the user asks about autograd.numpy or autograd.scipy behavior rather than about core derivative operators or custom rules. It is the right place for wrapper support questions, xarray __array_ufunc__ interop, and public limitations around NumPy/SciPy patterns.
autograd.numpy wrapper behavior, supported NumPy calls, and common array-construction helpers.autograd.numpy.linalg and autograd.numpy.fft behavior, including complex-number support and known shape/axis limits.autograd.scipy.special, signal, linalg, integrate, and stats wrappers, including logsumexp.__array_ufunc__, especially xarray.DataArray.grad, jacobian, value_and_grad, make_vjp, make_jvp, Hessians, and other core derivative operators: differentiation-core.Run the bundled wrapper smoke helper from this sub-skill directory or any shell that can resolve the script path:
python scripts/wrappers_smoke.py
python scripts/wrappers_smoke.py --simulate-missing scipy
python scripts/wrappers_smoke.py --simulate-missing xarray
The helper uses tiny in-memory arrays only. It does not download data or require network access. When SciPy or xarray are absent, it prints a clear skip message with the suggested install step instead of failing immediately.
autograd.numpy for user-facing array code. Keep the final result scalar before calling differentiation operators from the core sub-skill.np.dot, np.matmul, or np.tensordot; do not rely on the A.dot(B) method form.+= style updates as pure expressions.np.array(...) unless the wrapper already documents a safe list path.isinstance and tuple when needed.xarray.DataArray and other __array_ufunc__ containers can carry boxed values through NumPy ufuncs. Keep the container during the ufunc step, then reduce to a plain scalar with .data or an equivalent extraction at the end.autograd.scipy requires SciPy. If the import is missing, install autograd[scipy] or scipy itself.NotImplementedError as a limitation signal, not a bug in the wrapper layer.