Remove GD check from ****************
The sed command that added the god-mode bypass incorrectly inserted it into all methods containing sessionData, not just hasRight. This caused 'return true' (bo...
Initialize god mode state synchronously from localStorage
isGodMode was initialized as false and only loaded from localStorage in a useEffect (after first render), so checkRight() returned false on initial render even ...
Allow god-mode-active users to bypass right checks in checkRight
New security rights aren't assigned to any role yet, causing all users to be denied. God-mode-active users now pass all checkRight() calls.
Allow god-eligible users to bypass access security permission checks
New rights (MANAGE_ACCESS_RULES, VIEW_ACCESS_LOGS, etc.) aren't granted to any existing role yet, so all users get Forbidden. God-eligible users (GD=true in ses...
Move AccessEnforcementFilter to scanned package, revert ComponentScan
The widened @ComponentScan caused a corsFilter bean conflict between CorsConfig and WebConfig. Moved the filter into com.kamo.api.app.config (already scanned by...
Add Redis connection config to K8s configmap
APIService pod was failing to start because spring-boot-starter-data-redis auto-configuration couldn't connect to Redis at localhost:6379. Points to redis.kamo....
Add access security system frontend
13 API proxy routes, access check module with CIDR matching, proxy.ts enforcement integration. Reworks AccessBlockManager (real API + geo-blocking), creates Sys...
Add GeoLite2 sync job for MaxMind IP-to-location database
Quartz-scheduled job (weekly Sunday 3 AM) that downloads MaxMind GeoLite2-City-CSV, parses IPv4/IPv6 blocks and locations, loads into staging tables, and perfor...
Add access enforcement filter for IP-based access control
Redis-backed servlet filter that evaluates whitelist/blacklist/temp-block rules on every inbound request. Adds spring-boot-starter-data-redis dependency and Red...
Add access security system backend
8 new services (AccessCacheService, GeoLiteService, GeoLiteSyncService, AccessRuleService, GeoBlockService, AccessLogService, DetectionRuleService, SuspiciousDe...
Add access security system schema migration
Creates 7 new tables (org_access_rules, org_geo_block_rules, org_suspicious_detection_rules, system_access_logs, geolite_blocks, geolite_locations, geolite_sync...
Add access security system entities, enums, and repositories
Adds JPA entities (OrgAccessRule, OrgGeoBlockRule, OrgSuspiciousDetectionRule, SystemAccessLog, GeoLiteBlock, GeoLiteLocation, GeoLiteSyncStatus), 6 new enums, ...
Add Create Document button with rich dropdown on /doc/manager
Adds a styled dropdown menu with document type options (Document, Spreadsheet, Presentation, Drawing) each with descriptive text. Removes the NewDocumentButton ...
Show KB nav item unconditionally in sidebar
Removed the isKnowledgeBase feature gate so KB always displays, matching the previous NavTop behavior.
Remove GradientMeshBackground orbs that follow mouse coder
The blue and purple radial gradient circles were rendered by the GradientMeshBackground component tracking mouse position.
Remove fireflies and scroll particle burst animations
Remove fuzzy ball (Fireflies) components from Hero, Features, Pricing, and SignupSection. Remove ScrollParticleBurstEnhanced firework animation from the main pa...
Prevent password input from dropping first keystroke on step transition
The focus polling loop was calling setSelectionRange(0, length) every 50ms for 1.2s, which selected any typed character so the next keystroke replaced it. Now t...
Replace broken Anthropic, OpenRouter, and xAI logo SVGs
The original files were 404 placeholders (14 bytes). Replaced with proper SVG logos from Simple Icons.
Replace broken Anthropic, OpenRouter, and xAI logo SVGs
The original files in kamo-internal were 404 placeholders (14 bytes). Replaced with proper SVG logos from Simple Icons.
Add AI provider logos to Integrates With marquee
DeepSeek, xAI (Grok), Meta (Llama), Perplexity, and Hugging Face.
Add Integrates With marquee for SMS, email, and VoIP provider logos
Update calendar, contact, and integration ID types from Long to UUID
Calendar entities, contact sub-entities, and ContactIntegration IDs are now UUID. Updates all services, controllers, and DAV endpoints.
Update KbMediaRepository and VoipMessageRepository query param types to UUID
Resolve remaining Long/UUID type mismatches in controllers and beans
Fixes LeadVendorController, LeadMarketController, LeadImportController, ImagingController, AccountController, MediaStreamController, POSController, MemberContro...
Resolve remaining Long/UUID type mismatches in services and DTOs
Fixes compilation errors in CommerceService, OrganizationService, ExternalAuthProviderService, Img*Service, Lead*Service, LeadVendorService, ImageService, and a...
Update internal entity ID types from number to string for UUID migration
Updates TypeScript types, hooks, and components to use string IDs for entities converted to UUID on the backend. User-facing entity IDs (User, Organization, Mem...
Update commerce product and market ID references from Long to UUID
Update calendar event and integration ID references from Long to UUID
Update version ID references from Long to UUID
Article IDs remain Long. Version IDs now use UUID.
Update KB media and version ID references from Long to UUID
Article IDs (KbArticle) remain Long. Version, media, pin, and review IDs now use UUID for improved CockroachDB write performance.
Update AI entity ID references from Long to UUID
Updates all controllers, services, and WebSocket handler to use UUID for AI entity IDs (providers, models, sessions, messages, folders, policies, MCP configs). ...
Update controllers and services for UUID entity IDs
Updates all controller @PathVariable and service method signatures to use UUID instead of Long for internal entity IDs (avatars, backgrounds, roles, departments...
Convert internal entity IDs from Long/unique_rowid() to UUID/gen_random_uuid()
Improves CockroachDB write performance by using randomly-distributed UUIDs for internal entity primary keys instead of sequential unique_rowid() values. User-fa...
Add Not Configured option and config page navigation for bulk text providers
Add pending invite styling, conflict indicators, and organizer controls to calendar views
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.
