Skip to content

Slipway v0.0.65

Choose a tag to compare

@DominusKelvin DominusKelvin released this 09 Sep 21:24
· 26 commits to main since this release

This release completes the storage, database, custom-service, and analytics work, alongside deployment/security fixes and UI regression repairs.

New capabilities

  • Wake product analytics: app-scoped Overview, Journeys, and Settings; automatic pageviews/SPA tracking; consent and cookieless controls; conventional, creatorId, and anonymous sessionless identity; explicit server goals; encrypted checkout attribution; committed payment/refund receipts with idempotent replay; currency-separated reporting; exact visitor counts and bounded retention/deletion. Wake stays off by default.
  • Read-only Bridge support views: owners/admins confirm their password and reason, then open an app-approved customer page with a persistent identity banner and fifteen-minute limit. Separate support sessions preserve the normal login. One-use grants, protected targets, write/export guards, revocation, and durable audit retries are included. Apps must explicitly enable reviewed read-only paths.
  • Custom image services: reviewed private containers, immutable image selection, explicit environment/app connections, health and logs. Public HTTP routing uses reviewed Caddy cutovers with recoverable rollback. Stateless image/config updates require a healthy candidate and retain the previous revision for explicit recovery. Persistent custom services remain outside automatic updates.
  • Private backup storage: provider-neutral private backup operations for S3-compatible providers and Azure Blob, separate from public uploads. Connection checks verify upload/download/delete and anonymous access; credentials remain encrypted and omitted from browser props.
  • External PostgreSQL: managed connections and backup/restore support without pretending Slipway owns the external database server. Connection removal and external status are explicit.

Fixes and refinements

  • GitHub repository pickers now load all pages and isolate caches by connection context.
  • CLI and dashboard share Sails readiness checks.
  • Dock uses canonical physical schema snapshots, semantic diffs, native migration preservation/preflight, administrator execution permission, and reviewed server-owned migration plans.
  • Domain changes preserve working routes on failure and report actual readiness.
  • Source uploads, deployment revisions, restore coordination, team membership context, dependencies, and release verification are hardened.
  • Klean alerts replace loose warnings/errors; confirmations retain two actions. Dashed fields and compact dropdowns, visible breadcrumbs, and upstream toast overflow handling are restored.
  • Shipwright is updated to 1.5.1 with Rsbuild 2 and dev/HMR/production asset checks.

Upgrade and operation

Install sails-hook-slipway@0.0.10 in apps using the new Wake/support features, configure the capability, and redeploy. Existing apps do not acquire these capabilities automatically.

Wake uses the separate persistent db/analytics.db; corruption/unavailable storage disables analytics while preserving primary datastore startup. Revenue delivery requires an app-owned durable payment/job source and stable transaction IDs and timestamps for retries. Receipts/reporting retain 396 days; raw activity retains thirty days. Analytics is not an accounting ledger.

Support views require HTTPS and explicit safe read-only paths. Custom host code with external side effects must be reviewed by the app owner. Preserve the support audit outbox on persistent storage when recovery across replacement containers is required.

See Wake, Bridge support views, custom services, private storage, and external PostgreSQL for configuration and boundaries.

Validation

The release PRs cover unit, functional, browser, Shipwright, PostgreSQL/MySQL schema, private storage, external PostgreSQL, and real custom-service container contracts. Added acceptance cases cover concurrent payment retries/refunds, real SQLite disk-full rollback, corrupt analytics startup, exact UTC metrics/backfill/retention, cross-team authorization, isolated support sessions, and desktop/mobile light/dark Klean screens. The published hook package is checked against the reviewed source and exercised against a real Sails host and Slipway control plane.

Final issue work: #527 / #538, #528 / #539, #500 / #540, #499 / #541. Repository pagination: #534 / #537.