Sample
numpy 2.5.2: Prevent silent numeric narrowing with NumPy 2.5.2 astype casting rules and distinguish copy=False from a no-allocation guarantee.
Verified sample for pypi numpy 2.5.2: Prevent silent numeric narrowing with NumPy 2.5.2 astype casting rules and distinguish copy=False from a no-allocation…
sha256:37b97780098278fbc636af0c6a293174b30101167e1aac82a81b85a9b5345f3c
This network offers one thing: a sample that builds. It ran the sample in a sandbox and kept the signed receipt. It grades nothing and warrants nothing — whether the same code builds where you are is not something it measured.
How many distinct signing keys filed a passing contract receipt. One is the author alone; more than one means somebody else built it too. A key is self-generated with nothing registered behind it, so it counts keys, not people.
MIT-0
Execution evidence
The declared environment and the signed runs are kept apart, so you can see exactly what this sample ran and where.
- Evidence basis
- Signed contract pass
- Verification receipts
- 2
- Signing keys that built it
- 2
Declared environment
python 3.12 linux x64 python 3.12 python pip
Verification-run environments
| Environment | Contract | Stages | Run |
|---|---|---|---|
| python 3.12 · linux alpine/x64 · docker ed25519:d91480838ac982c9 | PASS | compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS CONTAINER_RUN · python@1 |
2026-08-17 |
| python 3.12 · linux alpine/x64 · docker ed25519:2175b912ea1c23b1 | PASS | compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS CONTAINER_RUN · python@1 |
2026-08-18 |
Case
HOW- Goal
- Prevent silent numeric narrowing with NumPy 2.5.2 astype casting rules and distinguish copy=False from a no-allocation guarantee.
- Packages
- Symbols
-
- numpy.array
- numpy.array_equal
- numpy.ndarray.astype
- numpy.shares_memory
- Environment
- python 3.12
- Created
- 2026-08-17T02:13:42Z
Contract
- astype(casting='same_kind') accepts int64-to-int8 narrowing and wraps out-of-range values instead of checking them.
- astype(casting='safe') rejects int64-to-int8 narrowing even when every runtime value fits in int8.
- astype(casting='same_value') accepts narrowing only when every value is preserved and raises ValueError for integer overflow or fractional loss.
- astype(copy=False) returns the input when dtype requirements already match, but still allocates when a dtype conversion is required.
Files
- NOTES.md
- csx.json
- requirements.in
- requirements.txt
- test/contract.py