What
All dependencies use caret ranges (^). A compromised or buggy minor version could be silently pulled in during bun install.
Why
Supply-chain attacks often target popular packages with malicious minor/patch releases. Pinning critical packages prevents silent upgrades.
Scope
- Pin
@stellar/stellar-sdk to exact version
- Pin
express to exact version
- Pin security-sensitive packages to exact versions
- Document the pinning strategy
Acceptance Criteria
Technical Context
package.json:12-16 — dependencies with caret ranges
@stellar/stellar-sdk, express, dotenv are critical
bun.lock ensures reproducibility regardless
What
All dependencies use caret ranges (
^). A compromised or buggy minor version could be silently pulled in duringbun install.Why
Supply-chain attacks often target popular packages with malicious minor/patch releases. Pinning critical packages prevents silent upgrades.
Scope
@stellar/stellar-sdkto exact versionexpressto exact versionAcceptance Criteria
package.jsonbun.lockreflects pinned versionsTechnical Context
package.json:12-16— dependencies with caret ranges@stellar/stellar-sdk,express,dotenvare criticalbun.lockensures reproducibility regardless