Three Ways to Handle Multi-Version npm Packages in a Static Analyzer (We Picked the Hybrid)
How Nark handles the fact that stripe v8 and stripe v21 throw different errors. A design narrative through fresh-copy forking, Profile inheritance, and per-postcondition versioning, and the maintenance liability that forced a hybrid.
static analysistypescriptsemverdesign decisionscorpus designstripenark profilespostmortem