Ship OpenFleet contracts and the OpenWall draft proposal (#177)

* feat: add OpenFleet membership and CoinPay rental contracts

* Propose OpenWall broadcasts and direct messaging contracts

* release: prepare OpenFleet and OpenWall public contracts

* fix: use tested npm for compatible CLI installs
This commit is contained in:
Anthony Ettinger 2026-09-13 00:57:45 -07:00 • committed by GitHub
parent a333726a1e
commit 45c7629953
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
35 changed files with 2021 additions and 12 deletions

17
scripts/install-npm.cjs Normal file
View file

@ -0,0 +1,17 @@
// npm 11 supports Node ^20.17.0 || >=22.9.0. Older CLI runtimes keep
// their existing npm; modern runtimes use the repository's tested version.
function selectNpm(nodeVersion, packageManager) {
const match = /^(\d+)\.(\d+)\.(\d+)$/.exec(nodeVersion);
if (!match || !/^npm@11\.\d+\.\d+$/.test(packageManager)) return null;
const major = Number(match[1]);
const minor = Number(match[2]);
const supported = (major === 20 && minor >= 17) || major > 22 || (major === 22 && minor >= 9);
return supported ? packageManager : null;
}
module.exports = { selectNpm };
if (require.main === module) {
const { packageManager } = require("../package.json");
process.stdout.write(selectNpm(process.versions.node, packageManager) || "");
}