Skip to content

Commit 74d4d00

Browse files
committed
chore: release 3.3.4
1 parent 20333a4 commit 74d4d00

7 files changed

Lines changed: 34 additions & 15 deletions

File tree

‎CHANGELOG.md‎

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,19 @@
11
# CHANGELOG
22

3-
> Summary index — the 3.3.3 versioned details are in [changelogs/v3.3.3.md](./changelogs/v3.3.3.md). A versioned note does not establish npm publication; check the registry and immutable tag before deployment.
4-
> **Last updated**: 2026-10-23
3+
> Summary index — the 3.3.4 versioned details are in [changelogs/v3.3.4.md](./changelogs/v3.3.4.md). A versioned note does not establish npm publication; check the registry and immutable tag before deployment.
4+
> **Last updated**: 2026-10-26
55
66
---
77

88
## Unreleased
99

10-
The schema-dsl 3.0.5 dependency upgrade is assigned to **3.3.3** ([versioned notes](./changelogs/v3.3.3.md)); the audited 3.3.2 repairs are in its [versioned notes](./changelogs/v3.3.2.md) and the [next-change staging log](https://github.com/devcodex-labs/monSQLize/blob/main/changelogs/unreleased.md). Untagged checkouts remain release candidates.
10+
The weekly-scan cache-key, health-check and lockfile security fixes are assigned to **3.3.4** ([versioned notes](./changelogs/v3.3.4.md)); the schema-dsl 3.0.5 upgrade is in [3.3.3](./changelogs/v3.3.3.md); the audited 3.3.2 repairs are in its [versioned notes](./changelogs/v3.3.2.md) and the [next-change staging log](https://github.com/devcodex-labs/monSQLize/blob/main/changelogs/unreleased.md). Untagged checkouts remain release candidates.
1111

1212
## Version Overview
1313

1414
| Version | Date | Summary | Details |
1515
|---------|------|---------|---------|
16+
| [v3.3.4](./changelogs/v3.3.4.md) | 2026-10-26 | Patch: cached-read keys under autoConvertObjectId, hung health-check pings, lockfile security patches | [View](./changelogs/v3.3.4.md) |
1617
| [v3.3.3](./changelogs/v3.3.3.md) | 2026-10-23 | Patch: pin schema-dsl 3.0.5 (dependency bug fixes only) | [View](./changelogs/v3.3.3.md) |
1718
| [v3.3.2](./changelogs/v3.3.2.md) | 2026-10-22 | Patch: BSON/cache identity, Model invalidation, pagination, transaction/sync lifecycle and upgrade safeguards; availability requires registry/tag verification | [View](./changelogs/v3.3.2.md) |
1819
| [v3.3.1](./changelogs/v3.3.1.md) | 2026-09-23 | Patch: audited Model, count, transaction, cache, sync, pool, Data Task and SSH corrections | [View](./changelogs/v3.3.1.md) |

‎README.md‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ Upgrade and security: [Migration Guide](./MIGRATION.md) · [Private Vulnerabilit
1414

1515
The npm `latest` dist-tag and GitHub Pages are the stable channel; `main` may contain the next release. Pages deployment accepts only a versioned Git tag whose package version is already present on npm, so unpublished APIs are not promoted as stable documentation. The Google site ownership verification file is copied separately from the workflow commit, with its source commit and content hash recorded in the deployment summary.
1616

17-
This source tree targets **3.3.3**, a dependency-only patch pinning `schema-dsl@3.0.5` (see the [3.3.3 notes](./changelogs/v3.3.3.md)). The 3.3.2 cache, Model, pagination and sync fixes, including cold-cache upgrades and checkpoint rollback limits, are described in the [3.3.2 notes](./changelogs/v3.3.2.md) and [migration guide](./MIGRATION.md). Read the upgrade guide in [English](https://github.com/devcodex-labs/monSQLize/blob/main/docs/en/upgrade-3.3.2.md) or [简体中文](https://github.com/devcodex-labs/monSQLize/blob/main/docs/zh/upgrade-3.3.2.md). Untagged checkouts remain release candidates; verify the immutable tag and requested registry version before deployment. Candidate preparation does not publish npm or update stable Pages.
17+
This source tree targets **3.3.4**, a patch fixing cached-read keys under `autoConvertObjectId`, hung health-check pings and lockfile security advisories (see the [3.3.4 notes](./changelogs/v3.3.4.md)); 3.3.3 pinned `schema-dsl@3.0.5`. The 3.3.2 cache, Model, pagination and sync fixes, including cold-cache upgrades and checkpoint rollback limits, are described in the [3.3.2 notes](./changelogs/v3.3.2.md) and [migration guide](./MIGRATION.md). Read the upgrade guide in [English](https://github.com/devcodex-labs/monSQLize/blob/main/docs/en/upgrade-3.3.2.md) or [简体中文](https://github.com/devcodex-labs/monSQLize/blob/main/docs/zh/upgrade-3.3.2.md). Untagged checkouts remain release candidates; verify the immutable tag and requested registry version before deployment. Candidate preparation does not publish npm or update stable Pages.
1818

1919
This development source is pinned to verified registry `schema-dsl@3.0.5`. The v3 package remains subject to the full release gate before an immutable tag and npm publication.
2020

‎changelogs/unreleased.md‎

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,8 @@
11
# Unreleased
22

3-
## Changes after v3.3.3
3+
## Changes after v3.3.4
44

5-
The schema-dsl 3.0.5 upgrade is assigned to the [3.3.3 versioned notes](./v3.3.3.md). Publication is established by the npm registry and immutable tag, not this file.
6-
7-
- Key cached `find`, `findOne`, `count` and `distinct` reads by the exact filter sent to MongoDB. With `autoConvertObjectId`, a filter whose `toBSON()` yields a 24-hex string `_id` no longer shares a cache entry with the equivalent `ObjectId` query; plain string filters still convert and share keys as before. Uncached results, invalidation descriptors and public signatures are unchanged.
8-
- Let a health check whose ping hangs past `timeout` keep counting failures: later checks wait on the same pending ping instead of skipping, so the pool reaches `down` after `retries` timeouts. Still only one ping per pool is in flight, and a late ping result cannot overwrite newer status.
9-
- Refresh lockfile-only security patches: `fast-uri` 3.1.9 (production, via schema-dsl/ajv; clears 4 GHSA advisories that failed `test:audit`), dev-only `follow-redirects` 1.16.2 and overridden `brace-expansion` 1.1.21/5.0.12. No direct dependency version changes.
5+
No changes have been staged after 3.3.4. The weekly-scan fixes are assigned to the [3.3.4 versioned notes](./v3.3.4.md). Publication is established by the npm registry and immutable tag, not this file.
106

117
## Archived preparation notes for the 3.3.2 candidate
128

‎changelogs/v3.3.4.md‎

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
# monSQLize v3.3.4
2+
3+
> Release date: 2026-10-26
4+
> Publication authority: the immutable tag and npm registry. An untagged checkout is a release candidate; the date above does not establish registry availability.
5+
6+
## Highlights
7+
8+
Bug-fix and security patch. Public entry points, signatures, Node.js `>=18`, build formats and package budgets remain unchanged from 3.3.3.
9+
10+
## Fixed
11+
12+
- Key cached `find`, `findOne`, `count` and `distinct` reads by the exact filter sent to MongoDB. With `autoConvertObjectId`, a filter whose `toBSON()` yields a 24-hex string `_id` no longer shares a cache entry with the equivalent `ObjectId` query; plain string filters still convert and share keys as before. Uncached results, invalidation descriptors and public signatures are unchanged.
13+
- Let a health check whose ping hangs past `timeout` keep counting failures: later checks wait on the same pending ping instead of skipping, so the pool reaches `down` after `retries` timeouts. Still only one ping per pool is in flight, and a late ping result cannot overwrite newer status.
14+
15+
## Security
16+
17+
- Refresh lockfile-only security patches: `fast-uri` 3.1.9 (production, via schema-dsl/ajv; clears 4 GHSA advisories that failed `test:audit`), dev-only `follow-redirects` 1.16.2 and overridden `brace-expansion` 1.1.21/5.0.12. No direct dependency version changes.
18+
19+
## Upgrade and rollback
20+
21+
No migration is required. Cached reads whose filter uses `toBSON()` with `autoConvertObjectId` get a new key and are read once from MongoDB after upgrade; all other cache keys are unchanged. Rollback to 3.3.3 restores the previous behavior and lockfile.

‎package-lock.json‎

Lines changed: 2 additions & 2 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

‎package.json‎

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "monsqlize",
3-
"version": "3.3.3",
3+
"version": "3.3.4",
44
"description": "TypeScript production data runtime layer for MongoDB today, with cache, transactions, pools, models, sync, and observability",
55
"type": "commonjs",
66
"main": "./dist/cjs/index.cjs",
@@ -22,6 +22,7 @@
2222
},
2323
"files": [
2424
"changelogs/v3.3.3.md",
25+
"changelogs/v3.3.4.md",
2526
"changelogs/v3.3.2.md",
2627
"changelogs/v3.3.1.md",
2728
"changelogs/v3.3.0.md",

‎test/compatibility/matrix.json‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
2-
"generatedAt": "2026-10-23",
3-
"packageVersion": "3.3.3",
2+
"generatedAt": "2026-10-26",
3+
"packageVersion": "3.3.4",
44
"support": {
55
"node": {
66
"declared": ">=18.0.0",

0 commit comments

Comments
 (0)