Resolve TS errors from steps used before declaration and Capcha style cast
Move **************** useMemos above the useEffects that depend on them; import CSSVariables type and use it for the Capcha-widget style prop.
Add dao.repositories to EnableJpaRepositories scan
EmailTemplateRepository lives under dao.repositories.email, not dao.repos, so it was not picked up as a Spring bean.
Add DEFAULT false to email_verified column definition
Hibernate's schema migrator generates ALTER TABLE without a default, failing on tables with existing rows. columnDefinition forces it to include DEFAULT false s...
Resolve duplicate emailTemplateServiceClient bean conflict
**************** and **************** were identical @Components with the same default bean name, causing **************** at startup. Delete the duplicate in r...
Bump kamo-shared-library to 1.4.0
Docker Stage 1 builds kamo-shared-library main (now 1.4.0) and installs it to the local .m2; the service pom still referenced 1.0.0 which Maven could not find, ...
Apply SP6 correctness and implementation quality fixes
C1: use NEXT_PUBLIC_H***_SITE_KEY env var instead of hardcoded placeholder C2: change RegisterResponse.userId and all API params from number to string (Cockroac...
SP6 register wizard refactor — split PersonalInfo, add real registration API
- Replace FormPersonalInfo with FormName (name fields) and FormAvatar (Avatar Creator generator with generate/upload/skip modes for 13+) - Delete FormRecoveryEn...
SP5 migrate KamoCRM agereq to ALL_WORK_ELIGIBLE
Add KamoCRMAgeReqUpdateRunner (order 10) — conditional idempotent UPDATE on startup; WHERE clause checks old value so re-runs are no-ops. Errors are swallowed s...
Address 4 code-review findings in registration and login paths
- Hide raw exception message in /register 500 path; log instead - Fail-closed (503) on email-verified DB check failure in login - verifyEmailToken throws if use...
Implement SP4 email verification and registration wiring
- Delete legacy email/VerificationEmail.java (hardcoded SMTP stub) - Add **************** (mirrors recovery package pattern) - Add **************** — token gene...
Add EmailVerificationToken entity + repo + User.alias/emailVerified + UserRepo queries; bump 1.4.0 (SP4)
Add SP4 email_verification_tokens DDL + User alias/email_verified columns
Add account settings pages for phone + security questions (SP3)
Adds **************** with API wiring to SecurityService /api/account/*. Syncs nav across all 3 locations.
Wire real API calls into /recover page (SP3)
Replaces all fakeSubmit() stubs with recoveryApi calls. Adds SMS OTP verify phase, seed email input, new-password step, and token landing via ?token= URL param.
Add AccountSettingsController + Service for phone + security questions (SP3)
Allows logged-in users to set/verify phone and configure 3 security questions. Routes to /api/account/* (session-authenticated via KSESSION_DATA).
Add BulkTextSmsClient + EmailTemplateServiceClient + PasswordRecoveryController (SP3)
Full password recovery flow: email-link, SMS OTP, security questions, seed phrase. Routes to /api/recover/* (unauthenticated). Uses SP1 email pipeline + VOIPSer...
Add InternalAuthFilter + POST /api/bulktext/send for service-to-service SMS (SP3)
Add recovery entities + repos; bump to 1.3.0 (SP3)
Adds PasswordResetToken, SmsOtp, RecoverySession, AccountVerificationCode JPA entities with corresponding repositories for SP3 recovery flow.
Add SecurityQuestionCatalog enum + sq1/2/3 + seedPhraseHash to User (SP3)
Add SP3 recovery table DDL + User column additions to SchemaCleanupRunner
Route preview through Browser's backend-rendered modal (part of SP2)
The EmailTemplateBrowser now owns the Preview modal directly, so the Manager no longer needs to intercept row-level preview requests and redirect to edit mode.
Wire EmailTemplateEdit to real API
Hydrates from templateApi.get, saves via templateApi.update. Category dropdown is API-driven with inline category-create affordance. Variables picker reads from...
Wire EmailTemplateBrowser to real API + add System Defaults tab
Replaces ~140 lines of mock data with templateApi.list() calls. Conditional fifth tab 'System Defaults' appears only for top-level-org admins and renders from r...
Add EmailTemplatePreview modal
Opens on row-action Preview. Backend-rendered via templateApi.preview(); result displayed in a sandboxed iframe for style isolation. Matches the exact code path...
Delete unused EmailGeneralManager.tsx (~560 lines of dead code)
Component was never imported anywhere. Its toggles (bounce handling, unsubscribe, delivery tracking, default from email) had no backend and were purely cosmetic...
Add templateApi + categoryApi + variableContracts client modules
Wraps SP1's /api/email/templates/* and **************** endpoints with typed TypeScript helpers. variableContracts mirrors SP1's TemplateKeys Javadoc so the edi...
Wire EmailTemplateSeedClient into ****************
Thin RestTemplate client that POSTs to EmailService's **************** after an org + owner TeamMember are persisted. Retries twice with backoff; failure throws...
Like what you see shipping?
All of it arrives in your workspace on its own. Start on the free plan and read this page again in a month.
