@openlup/core 0.23.0 → 0.24.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -10,6 +10,23 @@ in the source repository.
10
10
 
11
11
  ## [Unreleased]
12
12
 
13
+ ## [0.24.0]
14
+
15
+ - Publishable on the npm `latest` dist-tag as `0.24.0`, from tag
16
+ `openlup-core-v0.24.0`.
17
+
18
+ - Require Zod `^4.6.6` to fix GHSA-mrhx-c7xc-m3w5; oversized constrained
19
+ collections fail before element validation accumulates errors. Public exports
20
+ and accepted bounded inputs are unchanged.
21
+
22
+ - Republish the remaining APIs, runtime behavior and shipped SQL unchanged from `0.23.0`.
23
+
24
+ Migration: upgrade the complete set together for exact internal peers; core introduces no API or schema migration. The Zod floor above changes validation of oversized constrained collections.
25
+
26
+ ### Known limitations
27
+
28
+ The fulfillment status map retains localized adopter labels; hosts still need injected labels or internationalization keys.
29
+
13
30
  ## [0.23.0]
14
31
 
15
32
  - Publishable on the npm `latest` dist-tag as `0.23.0`, from tag
@@ -39,12 +56,3 @@ no application import or schema migration is required.
39
56
  ### Known limitations
40
57
 
41
58
  - `FULFILLMENT_STATUS_MAP` carries localized adopter labels. Replace them with host-injected labels or internationalization keys before any stable-framework claim.
42
-
43
- ## [0.21.0]
44
-
45
- - Publishable on the npm `latest` dist-tag as `0.21.0`, from tag
46
- `openlup-core-v0.21.0`.
47
-
48
- - Republish unchanged APIs, runtime behavior and shipped SQL from `0.20.0` as part of the complete `0.21.0` package set.
49
-
50
- Migration: upgrade the complete set together; core introduces no API or schema migration in this release.
package/CONTRIBUTING.md CHANGED
@@ -17,8 +17,13 @@ npm run ci
17
17
 
18
18
  The gate builds every export, runs standalone tests and isolated package smoke,
19
19
  verifies declaration snapshots, and checks license, SBOM, audit, pack, and
20
- publish controls. Root Vitest excludes this suite; CI's required `install-proof` job runs it separately through the shared package gate,
21
- independently of the required root `test` job.
20
+ publish controls. Root Vitest excludes this suite. Required `install-proof`
21
+ runs the shared API phase and `ci:required` separately from root tests.
22
+ `ci:required` uses `release:admission`: the same release checks except the full
23
+ live audit, which remains in standalone `ci`, `release:check` and publication.
24
+ Repository admission instead refuses newly selected vulnerable production
25
+ dependencies against the exact base; inherited advisories do not freeze
26
+ unrelated PRs. See [required checks](https://github.com/openlup/openlup/blob/main/CONTRIBUTING.md#required-and-raw-checks).
22
27
 
23
28
  ## Scope
24
29
 
package/README.md CHANGED
@@ -8,11 +8,18 @@ application" section, which `docs:check` requires, tells an application's agent
8
8
  not to edit or patch the installed package and to upgrade every `@openlup/*`
9
9
  package together.
10
10
 
11
- The prepared `0.23.0` set republishes core unchanged from `0.22.0`.
12
- Upgrade all packages together and read [the migration and label limitation](CHANGELOG.md#0230).
13
- The size baseline is the published `0.22.0` artifact; older releases remain in
11
+ The prepared `0.24.0` set carries the Zod validation floor below; remaining APIs,
12
+ runtime behavior and shipped SQL are unchanged from `0.23.0`.
13
+ Upgrade all packages together and read [the migration and label limitation](CHANGELOG.md#0240).
14
+ The size baseline is the published `0.23.0` artifact; older releases remain in
14
15
  the source-only `CHANGELOG-HISTORY.md`. Preparation establishes no npm publication.
15
16
 
17
+ The prepared set requires Zod `^4.6.6` for GHSA-mrhx-c7xc-m3w5.
18
+ Oversized constrained collections fail before per-element errors accumulate;
19
+ bounded valid inputs and public exports are preserved. Both dependency locks
20
+ select the fixed runtime. The build uses the existing development-only Node
21
+ types for Zod's standard `URL` declaration; Core adds no runtime Node import.
22
+
16
23
  ## Channel and stability
17
24
 
18
25
  - **Channel:** npm, on the `latest` dist-tag. Each version is published with
@@ -166,7 +173,11 @@ npm run ci
166
173
  Focused proofs are `npm run api:check`, `npm run release:check`, and
167
174
  `npm run test:consumer`. The root test script skips this suite.
168
175
  The shared repository gate runs this package's API check before expensive
169
- proofs, then `ci:required` retains the other complete-CI obligations once.
176
+ proofs, then `ci:required` retains the mechanical obligations once through
177
+ `release:admission`. That mode skips only the absolute live dependency audit;
178
+ repository admission checks newly selected vulnerable production dependencies
179
+ against the base instead. Unchanged inherited advisories remain alerts.
180
+ `release:check`, standalone `ci` and publication packs retain the full audit.
170
181
  The standalone `ci` command keeps its API check for manual package verification.
171
182
  In the monorepo, required CI supplies `OPENLUP_PACK_MANIFEST` and
172
183
  `OPENLUP_PACK_COMMIT` together to the same consumer. It verifies the complete
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openlup/core",
3
- "version": "0.23.0",
3
+ "version": "0.24.0",
4
4
  "description": "Neutral D2C subscription and bundle commerce kernels; a development preview with no stable API.",
5
5
  "license": "Apache-2.0",
6
6
  "repository": {
@@ -38,10 +38,11 @@
38
38
  "api:check": "node --experimental-strip-types ./scripts/api-contract.ts",
39
39
  "api:update": "npm run build && node --experimental-strip-types ./scripts/api-contract.ts --update",
40
40
  "ci": "npm run test:coverage && npm run typecheck:smoke && npm run api:check && npm run docs:check && npm run release:check && npm run test:consumer",
41
- "ci:required": "npm run test:coverage && npm run typecheck:smoke && npm run docs:check && npm run release:check && npm run test:consumer",
41
+ "ci:required": "npm run test:coverage && npm run typecheck:smoke && npm run docs:check && npm run release:admission && npm run test:consumer",
42
42
  "docs:check": "node --experimental-strip-types ./scripts/documentation-contract.ts",
43
43
  "prepack": "npm run build",
44
44
  "prepublishOnly": "node --experimental-strip-types ./scripts/refuse-publish.ts",
45
+ "release:admission": "npm run build && node --experimental-strip-types ./scripts/release-check.ts admission",
45
46
  "release:audit": "node --experimental-strip-types ./scripts/release-check.ts audit",
46
47
  "release:bundle": "node --experimental-strip-types ./scripts/release-bundle.ts",
47
48
  "release:check": "npm run build && node --experimental-strip-types ./scripts/release-check.ts all",
@@ -57,7 +58,7 @@
57
58
  "typecheck:smoke": "tsc -p tsconfig.smoke.json --noEmit"
58
59
  },
59
60
  "dependencies": {
60
- "zod": "^4.4.3"
61
+ "zod": "^4.6.6"
61
62
  },
62
63
  "devDependencies": {
63
64
  "@types/node": "^24.13.3",
@@ -290,8 +290,8 @@
290
290
  "release-gates.json"
291
291
  ],
292
292
  "baseline": {
293
- "version": "0.22.0",
294
- "packedBytes": 167762
293
+ "version": "0.23.0",
294
+ "packedBytes": 167815
295
295
  },
296
296
  "browserEntries": {}
297
297
  },