Skip to content

Upgrade from 1.0.x to 1.1.0

This is a coordinated application, database, storage, gateway, cache, and worker migration. The canonical detailed document is docs/migration-1.1-security-hardening.md.

Required review

  • Map verified principal claims and explicitly configure any trusted gateway identity boundary.
  • Decorate every shared scope column, provide all required values, replace boolean bypass with a bounded audited grant, and review every unsafe* ORM access.
  • Add/backfill uploaded-file tenant/owner columns, add nullable uploadPendingAt and deletionPendingAt indexes, and migrate object keys without overwrite.
  • Configure private local/S3 storage, a nonblank S3 bucket, complete/default-chain credentials, file policies, validation, and trusted cleanup maintenance.
  • Version Redis prefixes and add CacheInterceptor registration for every @Cached() path.
  • Add/reconcile job owner tokens and v2 lock identities; use callback idempotencyKey for external effects.
  • Add/backfill action-history tenant/resource identity, read policy, redaction, and retention job.
  • Upgrade to Node.js 20+ and remove AWS SDK v2 when application code no longer uses it.

Database order

Add nullable fields first, backfill/quarantine from authoritative ownership data, validate, then apply non-null and indexes. Stop incompatible workers around job-lock changes. Do not use TypeORM schema synchronization in production, and adapt the illustrative SQL in the canonical guide to your schema/migration framework.

Verification

Run cross-tenant ID, relation, batch, cache, file, history, and stale-worker tests; reconcile every migrated object; confirm no old worker emits legacy lock keys; then run the full package and docs release gates.

Released under the MIT License.