packaging: registry dep, publish scope, CI workflow
CI / test (push) Successful in 4m10s
CI / publish (push) Successful in 12s

- @tenere/pltc-core switches from a machine-local file: dependency to the
  published ^0.6.3 from the Tenere npm registry (the file: path does not
  exist in a fresh checkout; lockfile regenerated to the tarball).
- .npmrc routes @tenere and @arbiter scopes alongside @rigor so registry
  installs and the eventual publish resolve against the hub.
- package.json gains a files whitelist (src/ only) so tests, benchmarks,
  and scratch directories never ship in the tarball.
- .gitea/workflows/ci.yaml: node 22, full suite + rigor campaigns on push/
  PR, npm publish on v* tags to the Arbiter org registry.
This commit is contained in:
John Dvorak
2026-08-02 12:01:38 -07:00
parent b6c861a10b
commit 2d27321b38
4 changed files with 149 additions and 85 deletions
+80 -84
View File
@@ -9,7 +9,7 @@
"version": "1.0.0",
"license": "ISC",
"dependencies": {
"@tenere/pltc-core": "file:../../../../data_structures/pltc-core",
"@tenere/pltc-core": "^0.6.3",
"heapify": "^1.0.2",
"uuidv7": "^1.0.2"
},
@@ -19,28 +19,8 @@
"peggy": "^5.0.6"
}
},
"../../../../data_structures/pltc-core": {
"name": "@tenere/pltc-core",
"version": "0.6.3",
"license": "SEE LICENSE IN LICENSE",
"dependencies": {
"@tenere/graph-core": "^1.0.1"
},
"devDependencies": {
"@rigor/core": "0.2.8",
"@rigor/model": "0.2.11",
"@rigor/reporters": "0.0.4",
"@tenere/benchmark-lib": "^2.0.0",
"fast-check": "^3.0.0"
},
"engines": {
"node": ">=22.0.0"
}
},
"node_modules/@peggyjs/from-mem": {
"version": "3.1.3",
"resolved": "https://registry.npmjs.org/@peggyjs/from-mem/-/from-mem-3.1.3.tgz",
"integrity": "sha512-LLlgtfXIaeYXoOYovOI0spLM8ZXaqkAlmcRRrLzHJzLMqkU6Sw0R4KMoCoHx1PjaP815pSCBlS+BN6aD8t1Jgg==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -52,51 +32,53 @@
},
"node_modules/@rigor/analysis": {
"version": "0.0.7",
"resolved": "https://hub.kl1.tenere.ai/api/packages/Rigor/npm/%40rigor%2Fanalysis/-/0.0.7/analysis-0.0.7.tgz",
"integrity": "sha512-CH9g9gU5P+aWZfneL7l91Q8wgZ0kwteYTpOdShqi6VFg2aoOSk4HMl8RTzkO4suxWa2VQ/mMnFJ/TAiHwJOobA==",
"dev": true,
"license": "SEE LICENSE IN LICENSE",
"dependencies": {
"@rigor/instrument": "*",
"@rigor/trace": "*"
},
"engines": {
"node": ">=22.0.0"
}
},
"node_modules/@rigor/artifact": {
"version": "0.1.3",
"resolved": "https://hub.kl1.tenere.ai/api/packages/Rigor/npm/%40rigor%2Fartifact/-/0.1.3/artifact-0.1.3.tgz",
"integrity": "sha512-/SP5veJOpZ7y0dEBYOm+iBKQnBqZbTQzCXGd/LvQvmDtMGL7KJv2UbU7blnWp9CIwD8qU8t9U9c9oKO+qupUcA==",
"dev": true,
"license": "SEE LICENSE IN LICENSE",
"dependencies": {
"@rigor/trace": "*"
},
"engines": {
"node": ">=22.0.0"
}
},
"node_modules/@rigor/benchmark": {
"version": "0.0.6",
"resolved": "https://hub.kl1.tenere.ai/api/packages/Rigor/npm/%40rigor%2Fbenchmark/-/0.0.6/benchmark-0.0.6.tgz",
"integrity": "sha512-uCCtEhCeY0t81aSgvV1Q7D3cgNU1WufEGJ/vcljhjXnx05hdMWnlK0NPdI/qkWRbRiz+4sSpcGOGO9NBFk7ExQ==",
"dev": true,
"license": "SEE LICENSE IN LICENSE",
"dependencies": {
"@rigor/artifact": "*",
"@rigor/complexity": "*",
"@rigor/trace": "*"
},
"engines": {
"node": ">=18.0.0"
}
},
"node_modules/@rigor/complexity": {
"version": "0.0.7",
"resolved": "https://hub.kl1.tenere.ai/api/packages/Rigor/npm/%40rigor%2Fcomplexity/-/0.0.7/complexity-0.0.7.tgz",
"integrity": "sha512-RfrkXLykb37WFwmB6OfZoXYMEZJLG78r2HqfDB27jWQmGt5l/4Hb9Zh77dEKl2CsUx2fgd5NafdDl9qFtTE6bg==",
"dev": true,
"license": "SEE LICENSE IN LICENSE",
"dependencies": {
"@rigor/trace": "*"
},
"engines": {
"node": ">=18.0.0"
}
},
"node_modules/@rigor/core": {
"version": "3.0.5",
"resolved": "https://hub.kl1.tenere.ai/api/packages/Rigor/npm/%40rigor%2Fcore/-/3.0.5/core-3.0.5.tgz",
"integrity": "sha512-9Lzozlm5LvSGTny2ISw/meYfB+gJD8mq9iJzAY3rs4SNeTI0bjbv3y5KMf7PC/L8YbT2s+GpD5bk2bMsu1g9mg==",
"dev": true,
"license": "SEE LICENSE IN LICENSE",
"dependencies": {
@@ -119,24 +101,26 @@
"@rigor/spec": "*",
"@rigor/storage": "*",
"@rigor/trace": "*"
},
"engines": {
"node": ">=22.0.0"
}
},
"node_modules/@rigor/fault": {
"version": "0.0.5",
"resolved": "https://hub.kl1.tenere.ai/api/packages/Rigor/npm/%40rigor%2Ffault/-/0.0.5/fault-0.0.5.tgz",
"integrity": "sha512-MxzAEk8tx/Nc9CL3dQZZwKXj7eqBgnfTC9dI9TiU9b1u3zW7EIoL28vGqtrr1ucqSTeNwD8BGGAenan2tvb1ZQ==",
"dev": true,
"license": "SEE LICENSE IN LICENSE",
"dependencies": {
"@rigor/rng": "*",
"@rigor/shrink": "*",
"@rigor/trace": "*"
},
"engines": {
"node": ">=18.0.0"
}
},
"node_modules/@rigor/fuzzer": {
"version": "0.0.4",
"resolved": "https://hub.kl1.tenere.ai/api/packages/Rigor/npm/%40rigor%2Ffuzzer/-/0.0.4/fuzzer-0.0.4.tgz",
"integrity": "sha512-cJu9bL0GqpkTsIne9PLMcsLtRfBlDz18DqPiarSi+MetH9R0joh7C+fp/e4guo0y+Q2RBJZwulA8gOh9AwgEaQ==",
"dev": true,
"license": "SEE LICENSE IN LICENSE",
"dependencies": {
@@ -144,33 +128,36 @@
"@rigor/rng": "*",
"@rigor/shrink": "*",
"@rigor/trace": "*"
},
"engines": {
"node": ">=18.0.0"
}
},
"node_modules/@rigor/gen": {
"version": "0.0.10",
"resolved": "https://hub.kl1.tenere.ai/api/packages/Rigor/npm/%40rigor%2Fgen/-/0.0.10/gen-0.0.10.tgz",
"integrity": "sha512-MNtPAFL3ZyXNjbwLBqz7RQpdDL9NxYP7dtN/0nRJlDEjfu5oA9UQjpwa+lZCWn2yQiacZ0m5DL13X9IMJ0g/bA==",
"dev": true,
"license": "SEE LICENSE IN LICENSE",
"dependencies": {
"@rigor/rng": "*"
},
"engines": {
"node": ">=18.0.0"
}
},
"node_modules/@rigor/instrument": {
"version": "0.0.5",
"resolved": "https://hub.kl1.tenere.ai/api/packages/Rigor/npm/%40rigor%2Finstrument/-/0.0.5/instrument-0.0.5.tgz",
"integrity": "sha512-GXJa6kcEAbd86yM57hR+2g0vcxJlpBfBOoMldWk3mzLmAcCkyYXNSjJekTAwNovfUrtIcnYgQ187Zj3A2d8Tcw==",
"dev": true,
"license": "SEE LICENSE IN LICENSE",
"dependencies": {
"@rigor/probe": "*",
"@rigor/trace": "*"
},
"engines": {
"node": ">=18.0.0"
}
},
"node_modules/@rigor/model": {
"version": "0.2.13",
"resolved": "https://hub.kl1.tenere.ai/api/packages/Rigor/npm/%40rigor%2Fmodel/-/0.2.13/model-0.2.13.tgz",
"integrity": "sha512-eZ/888p1zGJGCBFVMA9suvS2mUNX+iHhZn+Uwl9lWa9CSHVRUWH9dTYYB+Qr1hNrCSGIDjV7rOC34wzT+QA4fw==",
"dev": true,
"license": "SEE LICENSE IN LICENSE",
"dependencies": {
@@ -182,12 +169,13 @@
"@rigor/rng": "*",
"@rigor/shrink": "*",
"@rigor/trace": "*"
},
"engines": {
"node": ">=18.0.0"
}
},
"node_modules/@rigor/network": {
"version": "0.0.4",
"resolved": "https://hub.kl1.tenere.ai/api/packages/Rigor/npm/%40rigor%2Fnetwork/-/0.0.4/network-0.0.4.tgz",
"integrity": "sha512-iNmiQA5QiCNkXnjAMPibGYzDk3Lf5hsgwXQGwRcSSVlZNBfVVw5fURzTsNen3TeAnqh9nozJnhD52yp3zdfP6Q==",
"dev": true,
"license": "SEE LICENSE IN LICENSE",
"dependencies": {
@@ -195,24 +183,26 @@
"@rigor/rng": "*",
"@rigor/scheduler": "*",
"@rigor/trace": "*"
},
"engines": {
"node": ">=18.0.0"
}
},
"node_modules/@rigor/probe": {
"version": "0.0.5",
"resolved": "https://hub.kl1.tenere.ai/api/packages/Rigor/npm/%40rigor%2Fprobe/-/0.0.5/probe-0.0.5.tgz",
"integrity": "sha512-F0llJf7r0fDC0itOg1y5mgii3GpP1Tibqq97rPtR+Zm2vM5s3THprs8Prab7fCcCM6L6g+tn/RxYCiWievZ/MQ==",
"dev": true,
"license": "SEE LICENSE IN LICENSE",
"dependencies": {
"@rigor/fault": "*",
"@rigor/gen": "*",
"@rigor/trace": "*"
},
"engines": {
"node": ">=18.0.0"
}
},
"node_modules/@rigor/prop": {
"version": "0.0.4",
"resolved": "https://hub.kl1.tenere.ai/api/packages/Rigor/npm/%40rigor%2Fprop/-/0.0.4/prop-0.0.4.tgz",
"integrity": "sha512-z3+STJPeNpz080ZfFbw5h6LpNFjCNnSymoQPUsjyaSovq3euyJrGx9sqtosVgVVE7Rzld6K4QwchJSJOqIi73w==",
"dev": true,
"license": "SEE LICENSE IN LICENSE",
"dependencies": {
@@ -223,30 +213,33 @@
"@rigor/rng": "*",
"@rigor/shrink": "*",
"@rigor/trace": "*"
},
"engines": {
"node": ">=18.0.0"
}
},
"node_modules/@rigor/reporters": {
"version": "0.0.4",
"resolved": "https://hub.kl1.tenere.ai/api/packages/Rigor/npm/%40rigor%2Freporters/-/0.0.4/reporters-0.0.4.tgz",
"integrity": "sha512-TPxoRgHsrktw/oBbeq5gDWROZJVpjnMJ0N6+dy5niXRB3mXaUefhg9KX+MKZICEw+7IhJYtJRQ/+Qbb5xbQbEA==",
"dev": true,
"license": "SEE LICENSE IN LICENSE",
"dependencies": {
"@rigor/artifact": "*",
"@rigor/trace": "*"
},
"engines": {
"node": ">=18.0.0"
}
},
"node_modules/@rigor/rng": {
"version": "0.0.3",
"resolved": "https://hub.kl1.tenere.ai/api/packages/Rigor/npm/%40rigor%2Frng/-/0.0.3/rng-0.0.3.tgz",
"integrity": "sha512-OFERK5HlI6eV1yUadHoz9n88twqsd/lstAxMzBWFJiN1CCM0xG7IHUYMBCnYK6Di3TTcAarFNFL16Bchm3LrKg==",
"dev": true,
"license": "SEE LICENSE IN LICENSE"
"license": "SEE LICENSE IN LICENSE",
"engines": {
"node": ">=18.0.0"
}
},
"node_modules/@rigor/scheduler": {
"version": "0.0.4",
"resolved": "https://hub.kl1.tenere.ai/api/packages/Rigor/npm/%40rigor%2Fscheduler/-/0.0.4/scheduler-0.0.4.tgz",
"integrity": "sha512-tY7KASEfufOw4L1vIGeD1bTArCv+zAEPqT/XqiXFz+fckGxY8Nux6zDhGcjkur3qWOUNoWap6KOjSZSORHhXiw==",
"dev": true,
"license": "SEE LICENSE IN LICENSE",
"dependencies": {
@@ -254,40 +247,44 @@
"@rigor/rng": "*",
"@rigor/shrink": "*",
"@rigor/trace": "*"
},
"engines": {
"node": ">=18.0.0"
}
},
"node_modules/@rigor/search": {
"version": "0.1.2",
"resolved": "https://hub.kl1.tenere.ai/api/packages/Rigor/npm/%40rigor%2Fsearch/-/0.1.2/search-0.1.2.tgz",
"integrity": "sha512-L0E4d7lLMHH6wU4SJUJHXDSx7zBN4YaJD5LWiRV/PJicCIO443faKIQvUiUXNb89hcbaRHpLuIqLavryUUOsQA==",
"dev": true,
"license": "SEE LICENSE IN LICENSE",
"dependencies": {
"@rigor/gen": "*",
"@rigor/shrink": "*"
},
"engines": {
"node": ">=18.0.0"
}
},
"node_modules/@rigor/shrink": {
"version": "0.0.7",
"resolved": "https://hub.kl1.tenere.ai/api/packages/Rigor/npm/%40rigor%2Fshrink/-/0.0.7/shrink-0.0.7.tgz",
"integrity": "sha512-z0yaZqmyysn40BBqAnqTQlymLuaIIU5u2BijjayX0+XZxhhcPIyvs4PISzJ4nmfkx2yE6qKABe2HHub9wVVUQw==",
"dev": true,
"license": "SEE LICENSE IN LICENSE"
"license": "SEE LICENSE IN LICENSE",
"engines": {
"node": ">=18.0.0"
}
},
"node_modules/@rigor/spec": {
"version": "2.0.1",
"resolved": "https://hub.kl1.tenere.ai/api/packages/Rigor/npm/%40rigor%2Fspec/-/2.0.1/spec-2.0.1.tgz",
"integrity": "sha512-0/lg19KenJy1e8D87+WqaMRh8Xad4h209/CgK6ofCQapwz/IcriMPHgOZZbHMA4C8G3B6/luVbSVT0EHZoJ8qg==",
"dev": true,
"license": "SEE LICENSE IN LICENSE",
"dependencies": {
"@rigor/gen": "*"
},
"engines": {
"node": ">=18.0.0"
}
},
"node_modules/@rigor/storage": {
"version": "0.0.4",
"resolved": "https://hub.kl1.tenere.ai/api/packages/Rigor/npm/%40rigor%2Fstorage/-/0.0.4/storage-0.0.4.tgz",
"integrity": "sha512-7XapdgmvEg/C/kERldqFlw3mT1JkpjPMNK6fEcB2Ggx7+UR3ZeE9GyaodJ29my61b28SrQUWxLBHT5bm0bIVaA==",
"dev": true,
"license": "SEE LICENSE IN LICENSE",
"dependencies": {
@@ -295,23 +292,36 @@
"@rigor/rng": "*",
"@rigor/scheduler": "*",
"@rigor/trace": "*"
},
"engines": {
"node": ">=18.0.0"
}
},
"node_modules/@rigor/trace": {
"version": "0.0.7",
"resolved": "https://hub.kl1.tenere.ai/api/packages/Rigor/npm/%40rigor%2Ftrace/-/0.0.7/trace-0.0.7.tgz",
"integrity": "sha512-vCLF+WTSdy0pwe9sTonPt8HnNeSkK9U5SAxNpdIeiT+IBP74t9K7JoHMmfo7ka+S0puWecDjjNtWCSqtvKkjNg==",
"dev": true,
"license": "SEE LICENSE IN LICENSE"
"license": "SEE LICENSE IN LICENSE",
"engines": {
"node": ">=18.0.0"
}
},
"node_modules/@tenere/graph-core": {
"version": "1.0.1",
"resolved": "https://hub.kl1.tenere.ai/api/packages/Tenere/npm/%40tenere%2Fgraph-core/-/1.0.1/graph-core-1.0.1.tgz",
"integrity": "sha512-29EzF1yBVLuaaapmrL+xNGRaWsM2Ln0G+WHVJURNzwQnDUC2ZSgaeVRMGj3aHFOj2K4mfSh9JqBP5Az2ZHU4pw==",
"license": "MIT"
},
"node_modules/@tenere/pltc-core": {
"resolved": "../../../../data_structures/pltc-core",
"link": true
"version": "0.6.3",
"resolved": "https://hub.kl1.tenere.ai/api/packages/Tenere/npm/%40tenere%2Fpltc-core/-/0.6.3/pltc-core-0.6.3.tgz",
"integrity": "sha512-+XsxNw35fyX8ku19FfyFsb6DgYoaKb6wkAbo1VF+moeyZ0D3AqDTofsBnd2sv5o2y8RpB3XftBxt0Hv1sBcQtg==",
"license": "SEE LICENSE IN LICENSE",
"dependencies": {
"@tenere/graph-core": "^1.0.1"
}
},
"node_modules/commander": {
"version": "14.0.3",
"resolved": "https://registry.npmjs.org/commander/-/commander-14.0.3.tgz",
"integrity": "sha512-H+y0Jo/T1RZ9qPP4Eh1pkcQcLRglraJaSLoyOtHxu6AapkjWVCy2Sit1QQ4x3Dng8qDlSsZEet7g5Pq06MvTgw==",
"dev": true,
"license": "MIT",
"engines": {
@@ -320,8 +330,6 @@
},
"node_modules/fast-check": {
"version": "4.9.0",
"resolved": "https://registry.npmjs.org/fast-check/-/fast-check-4.9.0.tgz",
"integrity": "sha512-7ms6T7SybUev/PQITciI0yLM2pOSFy5zpG8Ty7tQofcVaQUvrMXp6CBwqF6fThLCLOrfBtuHAtwq6Yu4XPCllg==",
"dev": true,
"funding": [
{
@@ -343,14 +351,10 @@
},
"node_modules/heapify": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/heapify/-/heapify-1.0.2.tgz",
"integrity": "sha512-h/b3y12Orh2VsISvDsF/vulkoKH38P7yr223hfWJILo3imy7dX8f9ZrBgkkfLsJG11g8GI1/y6+8POSxgR7YcQ==",
"license": "MIT"
},
"node_modules/peggy": {
"version": "5.1.0",
"resolved": "https://registry.npmjs.org/peggy/-/peggy-5.1.0.tgz",
"integrity": "sha512-IEo5aYRZ2kXH4Qby06cjtL114PZnwLoTiA41vUmg2vPZgANn+c87m5BUurhuDr5/cu758ZlpgsAfBVx+hhO5+w==",
"dev": true,
"license": "MIT",
"dependencies": {
@@ -367,8 +371,6 @@
},
"node_modules/pure-rand": {
"version": "8.4.2",
"resolved": "https://registry.npmjs.org/pure-rand/-/pure-rand-8.4.2.tgz",
"integrity": "sha512-vvuOGgcuPJAirlHvuQw1TrOiw7ptaIXXmIbNuiNOY6lNGJJH49PQ1Kj4nd783nPdQhQdicgOjVI2yI/9BD6/Ng==",
"dev": true,
"funding": [
{
@@ -384,8 +386,6 @@
},
"node_modules/semver": {
"version": "7.7.4",
"resolved": "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz",
"integrity": "sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==",
"dev": true,
"license": "ISC",
"bin": {
@@ -397,8 +397,6 @@
},
"node_modules/source-map-generator": {
"version": "2.0.6",
"resolved": "https://registry.npmjs.org/source-map-generator/-/source-map-generator-2.0.6.tgz",
"integrity": "sha512-IlassDs1Ve8nV6uyQZXF9kdkJpVKnMte2JZQXu13M0A5zwc+vu6+LNHfmxsHBMDtoZE21RHiKI0/xvpecZRCNg==",
"dev": true,
"license": "BSD-3-Clause",
"engines": {
@@ -407,8 +405,6 @@
},
"node_modules/uuidv7": {
"version": "1.2.1",
"resolved": "https://registry.npmjs.org/uuidv7/-/uuidv7-1.2.1.tgz",
"integrity": "sha512-4kPkK3/XTQW9Hbm4CaqfICn+kY9LJtDVEOfgsRRra/+n2Ofg4NqzRFceAkxvQ/Ud/6BpHOPzj8cirqM7TzTN5Q==",
"license": "Apache-2.0",
"bin": {
"uuidv7": "cli.js"