Skip to content

Release v0.29.0

Choose a tag to compare

@github-actions github-actions released this 15 Jun 17:40
· 468 commits to main since this release

What's Changed

🚀 New Features

  • add TLS connection support and dialect-aware pool sizing
  • enforce a stricter deploy-time contract
  • add closing transitions for paused instances
  • normalize node config at deploy and rework condition evaluation
  • validate CC kinds at flow deploy time

🐛 Bug Fixes

  • fully revert deadline on auto-pass cascade contention
  • canonicalize MinIO PutObject return metadata
  • fail closed on empty-tenant list and write scoping
  • serialize membership mutations and identity-guard expiry removal
  • retain signature nonce for the full timestamp window
  • register zero-order middleware in the before group
  • match SPA entries on path-segment boundaries
  • stop logger printf format corruption
  • count unique disk partitions
  • bound multipart file descriptors and canonicalize metadata keys
  • prevent LRU phantom resurrection and expiry double-decrement
  • restore signature replay protection and harden challenge stores
  • compare hashes in constant time and parse salt safely
  • randomize CBC IV per encryption with decrypter interop
  • pin consecutive-approver auto-pass logs to their task
  • finish timed-out handle tasks with handle semantics
  • degrade unresolvable timeout admin transfers to timeout-only
  • run the urge tenant guard before task state checks
  • restore the latest form snapshot on rollback keep
  • drive read-confirm CC waiting from unread records, not the read-confirm flag
  • make CC recipient and name resolution best-effort
  • make role/department CC resolution best-effort
  • cap form-data growth, not standing size, on task actions
  • preserve add-assignee links across task transfer
  • enforce the form-data size cap on approve/reject/transfer/rollback
  • reactivate before/after add-assignee tasks on parallel nodes
  • resolve role/department CC recipients via AssigneeService
  • implement RollbackDataClear to wipe form data on rollback
  • share the deadlock guard between node completion and remove-assignee simulation

♻️ Refactoring

  • route role-membership checks through a shared helper
  • drop unused WithDB constructor and lift client timeout
  • extract shared container setup helpers
  • streamline read-model queries, timeout scanner, and resource wiring
  • consolidate engine dispatch, pass-rule, and command handling
  • streamline table inspector
  • thread dialect into query guard and propagate schema errors
  • tighten outbox claim, reaper fan-out, and transport timeouts
  • alias primary name to config and expose primary kind
  • extract shared helpers and guard find-option setup
  • extract shared closest-match helper and consolidate auth errors
  • delegate row import to the shared tabular helper
  • delegate row import to the shared tabular helper
  • extract shared row-import pipeline
  • simplify cache and transformer construction
  • dedup query construction and harden dialect-aware sqlguard
  • add Effective*() accessors and canonical primary-source name
  • extract shared calendar anchor helpers
  • remove unused constants
  • guard task action dispatch exhaustiveness
  • promote the default urge cooldown to a contract constant

✅ Testing

  • simplify engine test setup
  • cover transfer, reactivation, size-cap, and rollback gaps

📝 Documentation

  • document Provider.Connect non-nil success postcondition
  • refresh SupplyURLKeyMapper example for the proxy default
  • point facade comments at the internal contract
  • document ValidationRule fields
  • document init-time i18n message freeze on error sentinels
  • document the Effective*() config defaulting convention
  • document the hardened approval contract and lifecycle paths
  • document the approval deploy-time normalization contract

🔧 Maintenance

  • bump version to v0.29.0
  • drop the dead apv_flow_form_field table
  • warn when go-installed lefthook is not on PATH
  • add lefthook, commitlint and go-task hook/lint tooling

Other Changes

  • perf(approval): batch timeout and pre-warning scans

Full Changelog: v0.28.0...v0.29.0