Improved
v0.24.0-rc1
[!WARNING] This is an early release candidate for testing purposes. There are known rough edges in the team management flow and notifications. Not recommended for production deployments.
What's Changed
- Fix billing tryouts test failures by @delano in https://github.com/onetimesecret/onetimesecret/pull/2203
- Add @phase infrastructure to initializer system (PR 1/2) by @delano in https://github.com/onetimesecret/onetimesecret/pull/2204
- [#2202] Convert fork-sensitive initializers to phase-aware pattern (PR 2/2) by @delano in https://github.com/onetimesecret/onetimesecret/pull/2206
- [#2205] Add comprehensive RSpec coverage for @phase infrastructure by @delano in https://github.com/onetimesecret/onetimesecret/pull/2214
- [#2207] Add comprehensive database trigger test coverage by @delano in https://github.com/onetimesecret/onetimesecret/pull/2210
- Reorganize auth database migrations into focused functional groups by @delano in https://github.com/onetimesecret/onetimesecret/pull/2216
- Fix code quality issues: regex anchors, destroy! cleanup, and i18n prototype pollution by @delano in https://github.com/onetimesecret/onetimesecret/pull/2217
- Polish MFA recovery codes UI by @delano in https://github.com/onetimesecret/onetimesecret/pull/2221
- Handle orphaned sessions gracefully in auth endpoints by @delano in https://github.com/onetimesecret/onetimesecret/pull/2220
- Implement billing catalog push command by @delano in https://github.com/onetimesecret/onetimesecret/pull/2225
- [#2224] Entitlement enforcement system by @delano in https://github.com/onetimesecret/onetimesecret/pull/2230
- Add OrganizationMembership through model for rich Customer/Organization relationships by @delano in https://github.com/onetimesecret/onetimesecret/pull/2239
- Organization invitation system by @delano in https://github.com/onetimesecret/onetimesecret/pull/2241
- Consolidate Teams into Organizations by @delano in https://github.com/onetimesecret/onetimesecret/pull/2242
- [#2240] Phase 6: Cleanup and final verification by @delano in https://github.com/onetimesecret/onetimesecret/pull/2245
- [#2244] Add Plan Test Mode for colonel entitlement testing by @delano in https://github.com/onetimesecret/onetimesecret/pull/2246
- Consolidate legacy plans into unified plans structure by @delano in https://github.com/onetimesecret/onetimesecret/pull/2248
- [#2228] Add test infrastructure for billing/entitlement isolation by @delano in https://github.com/onetimesecret/onetimesecret/pull/2255
- Replace custom Ruby i18n with ruby-i18n gem by @delano in https://github.com/onetimesecret/onetimesecret/pull/2259
- [#2258] Fix RSpec state isolation and authentication mode filtering by @delano in https://github.com/onetimesecret/onetimesecret/pull/2260
- Fix billing CLI VCR specs and Stripe API compatibility by @delano in https://github.com/onetimesecret/onetimesecret/pull/2261
- Fix RSpec WrongScopeError in billing_spec_helper.rb by @delano in https://github.com/onetimesecret/onetimesecret/pull/2262
- Implement Kubernetes-style boot state model for test isolation by @delano in https://github.com/onetimesecret/onetimesecret/pull/2264
- Simplify billing test helper architecture (3 layers → 2) by @delano in https://github.com/onetimesecret/onetimesecret/pull/2266
- Fix container E2E boot failure - add Familia dependency by @delano in https://github.com/onetimesecret/onetimesecret/pull/2268
- Enhance GitHub issue housekeeping with auto-labeling and lock threads by @delano in https://github.com/onetimesecret/onetimesecret/pull/2269
- [#2243] Remove unused useDashboardMode composable by @delano in https://github.com/onetimesecret/onetimesecret/pull/2271
- [#2258] Fix test isolation: Redis cleanup hooks by @delano in https://github.com/onetimesecret/onetimesecret/pull/2270
- [#2256] Fix validation ordering, add PII masking by @delano in https://github.com/onetimesecret/onetimesecret/pull/2272
- Update VCR cassettes for billing controller specs by @delano in https://github.com/onetimesecret/onetimesecret/pull/2273
- Elevate domain context to workspace-level scope (Variation D) by @delano in https://github.com/onetimesecret/onetimesecret/pull/2274
- Add development process manager and setup tooling by @delano in https://github.com/onetimesecret/onetimesecret/pull/2275
- [#I18N] Reorganize uncategorized locale keys into proper category structure by @delano in https://github.com/onetimesecret/onetimesecret/pull/2277
- Expand i18n prototype pollution test coverage by @delano in https://github.com/onetimesecret/onetimesecret/pull/2279
- Add api_access entitlement checks to API v2 secret logic classes by @delano in https://github.com/onetimesecret/onetimesecret/pull/2276
- Replace blocking Redis KEYS with non-blocking SCAN in Colonel API by @delano in https://github.com/onetimesecret/onetimesecret/pull/2280
- [#2224] Add plan cache refresh job and align entitlements by @delano in https://github.com/onetimesecret/onetimesecret/pull/2282
- Add public /share API endpoints for guest (anonymous) users (#2190) by @delano in https://github.com/onetimesecret/onetimesecret/pull/2199
- Add comprehensive test coverage and documentation for guest routes (#2190) by @delano in https://github.com/onetimesecret/onetimesecret/pull/2284
- Update code references after i18n key reorganization by @delano in https://github.com/onetimesecret/onetimesecret/pull/2285
- Add organization member management with role-based permissions by @delano in https://github.com/onetimesecret/onetimesecret/pull/2287
- Restructure i18n locale files: kebab-case to snake_case migration by @delano in https://github.com/onetimesecret/onetimesecret/pull/2290
- Billing logic refactor and test infrastructure improvements by @delano in https://github.com/onetimesecret/onetimesecret/pull/2286
- Organization navigation and workspace layout refactoring by @delano in https://github.com/onetimesecret/onetimesecret/pull/2306
- Fix extid-based API calls and organization settings navigation by @delano in https://github.com/onetimesecret/onetimesecret/pull/2311
- [#2312] Implement Opaque Identifier Pattern (ExtId/ObjId Branded Types) by @delano in https://github.com/onetimesecret/onetimesecret/pull/2317
- i18n: Complete locale translations and cleanup related scripts by @delano in https://github.com/onetimesecret/onetimesecret/pull/2320
- Add plan switching for existing Stripe subscribers by @delano in https://github.com/onetimesecret/onetimesecret/pull/2321
- Add route-based scope switcher visibility control by @delano in https://github.com/onetimesecret/onetimesecret/pull/2324
- fix(api): Use string keys for HTTP params across API boundaries by @delano in https://github.com/onetimesecret/onetimesecret/pull/2329
- Fix gap analysis findings for billing, scope switchers, and workspace mode by @delano in https://github.com/onetimesecret/onetimesecret/pull/2330
- Implement i18n for Email Templates by @delano in https://github.com/onetimesecret/onetimesecret/pull/2331
- Enable test suites, fix RabbitMQ race condition, add boot diagnostics by @delano in https://github.com/onetimesecret/onetimesecret/pull/2334
- [#2328] feat(i18n): Add email template internationalization for 27 languages by @delano in https://github.com/onetimesecret/onetimesecret/pull/2333
- feat: i18n support for auth emails + CI workflow modernization by @delano in https://github.com/onetimesecret/onetimesecret/pull/2335
Full Changelog: https://github.com/onetimesecret/onetimesecret/compare/v0.24.0-rc0...v0.24.0-rc1