Tags: allthingslinux/portal
Tags
chore(release): 1.4.0 [skip ci] # [1.4.0](v1.3.0...v1.4.0) (2026-02-02) ### Bug Fixes * add validation to update schema fields per PR feedback ([3b7e318](3b7e318)), closes [#37](#37) * address Cubic AI code review findings ([45e3071](45e3071)) * **deps:** align drizzle-zod version with drizzle-orm beta ([edf7a1e](edf7a1e)) * handle invalid JSON request body with a 400 API error. ([9e10870](9e10870)) * implement safe metadata parsing and refine linter config ([0e8888b](0e8888b)) * **integrations:** add UI validation guard to prevent empty payload ([7a17f85](7a17f85)) ### Features * **base.ts:** add support for schema validation using zod ([80a3e4a](80a3e4a)) * **core:** integrate zod-validation-error and enhance integration base types ([1ab3376](1ab3376)) * **hooks:** add generic input type parameters for integration account hooks ([2bc910a](2bc910a)) * Implement type-safe integration account creation and update using Zod schemas and branded types. ([4c176a1](4c176a1)) * **integrations:** implement type-safe forms and schema-backed routing ([b3fe80d](b3fe80d)) * Introduce new `react-hook-form-zod` and `zod` skills with various form templates and update integration schemas and documentation." ([c2eb2b9](c2eb2b9)) * **irc:** add account schema validation for IRC integration ([f982174](f982174)) * **schemas:** centralize user and admin validation schemas ([b2f9e69](b2f9e69)) * **types.ts:** add Zod schema types for account creation and update ([58b0326](58b0326)) * **utils.ts:** add brandedString helper function for creating branded string schemas ([50450da](50450da)) * **xmpp:** add CreateXmppAccountRequestSchema to XmppIntegration ([c399216](c399216))
chore(release): 1.3.0 [skip ci] # [1.3.0](v1.2.0...v1.3.0) (2026-02-01) ### Bug Fixes * **admin-hooks:** enhance user fetching logic and type safety ([2d9dea7](2d9dea7)) * **admin-suspense:** ensure correct type casting for user detail updates ([646d1c2](646d1c2)) * **admin-suspense:** prevent incomplete cache entries during user updates ([7d2bec0](7d2bec0)) * **admin:** refine user detail cache merging logic to prevent incomplete entries ([146d490](146d490)) * **api:** update date types in account interfaces to ISO-8601 strings ([a8d263c](a8d263c)) * **auth/config.ts:** add condition to check active status of IRC account ([2cbee95](2cbee95)) * **integration-management:** update Sentry error handling and variable naming ([68e7fa3](68e7fa3)) * **integrations:** address review actionable and nitpick comments (identified by cubic) ([18e7f90](18e7f90)) * **integrations:** align TypeScript update request types with Zod validation (identified by cubic) ([527f364](527f364)) * **integrations:** enforce dedicated deletion method by excluding 'deleted' status from update schemas (identified by cubic) ([c028855](c028855)) * **integrations:** enforce strict request interfaces and improve fault code safety (identified by cubic) ([8adffaa](8adffaa)) * **integrations:** improve clipboard copy functionality with Sentry error tracking ([9397d5a](9397d5a)) * **integrations:** resolve lint and type errors in auth config and irc implementation ([02ac1ec](02ac1ec)) * **irc:** clarify IRC nick validation documentation ([96a8674](96a8674)) * **irc:** correct TLS verification in atheme/unreal clients and add undici dependency ([84a3695](84a3695)) * **irc:** enhance error handling for user and channel list retrieval ([d807149](d807149)) * **irc:** enhance error handling in Atheme command processing ([7e4d090](7e4d090)) * **irc:** enhance error handling with Sentry integration ([303ca9b](303ca9b)) * **irc:** enhance IRC nick validation tests ([31ae264](31ae264)) * **irc:** implement Zod schema for IRC account creation and enhance error handling ([9efd47e](9efd47e)) * **irc:** improve error handling during IRC account creation ([bbecc44](bbecc44)) * **irc:** integrate Sentry for registerNick function to enhance error tracking ([30443a3](30443a3)) * **irc:** refine IRC nick validation logic ([28eaa8b](28eaa8b)) * **irc:** update date formatting in IRC accounts management ([e39fc93](e39fc93)) * **irc:** update Sentry import and improve API URL normalization ([42242bc](42242bc)) * **sheet:** adjust close button positioning and accessibility ([2ba1f55](2ba1f55)) * **sidebar:** adjust sidebar icon width and enhance layout responsiveness ([ef389e2](ef389e2)) * **user-detail:** prevent date display issues before component mounts ([63e11de](63e11de)) ### Features * **admin:** add IRC accounts query hook for admin dashboard ([362f360](362f360)) * **admin:** add IRC accounts tab and management component to admin dashboard ([70adb68](70adb68)) * **admin:** add user detail sheet component for enhanced user information display ([b124981](b124981)) * **admin:** enhance user columns with view details functionality ([73562a4](73562a4)) * **admin:** implement IRC accounts management component ([cde2a8d](cde2a8d)) * **admin:** improve user update cache handling in useUpdateUserSuspense ([d7fa0c4](d7fa0c4)) * **admin:** integrate user detail viewing in user management ([3bb5268](3bb5268)) * **api:** add AdminUserRow type for user detail response ([9999bfd](9999bfd)) * **api:** add new types for admin IRC and XMPP accounts ([5efb073](5efb073)) * **api:** enhance IRC accounts retrieval with pagination and status filtering ([d22505b](d22505b)) * **api:** enhance user and IRC account management APIs ([270d5d8](270d5d8)) * **api:** enhance user GET route to include IRC and XMPP account details ([d7b643f](d7b643f)) * **api:** extend type exports for admin functionality ([24e2a57](24e2a57)) * **auth:** add IRC scope support and claims retrieval ([d9ee67b](d9ee67b)) * **constants.ts:** add 'Pending' status to integrationStatusLabels ([40c173e](40c173e)) * **constants.ts:** add "pending" status to INTEGRATION_STATUSES ([0e6e779](0e6e779)) * **docs:** add IRC integration documentation ([6927ba7](6927ba7)) * **env:** include IRC keys in environment configuration ([a355f0c](a355f0c)) * **integrations:** add IRC password dialog and enhance integration management ([eeae9f9](eeae9f9)) * **integrations:** enhance clipboard copy functionality and update IRC nick length display ([fae166d](fae166d)) * **integrations:** enhance integration management with required input and success callback ([3290a04](3290a04)) * **integrations:** irc ([e75297d](e75297d)) * **integrations:** refine account lifecycle, status filtering, and validation for IRC and XMPP ([dbf58c2](dbf58c2)) * **irc:** add environment variable configuration for IRC integration ([65bc83e](65bc83e)) * **irc:** add IRC account schema definition ([7edaf94](7edaf94)) * **irc:** add IRC accounts query keys for admin functionality ([fa3b60a](fa3b60a)) * **irc:** add IRC configuration and provisioning check ([47e878b](47e878b)) * **irc:** add IRC utility functions for nickname validation and password generation ([0df1543](0df1543)) * **irc:** add option to skip SSL verification for Atheme client ([bf50264](bf50264)) * **irc:** add option to skip SSL verification for Unreal IRC integration ([811274b](811274b)) * **irc:** add UnrealIRCd configuration and validation functions ([ec2b4da](ec2b4da)) * **irc:** add UnrealIRCd JSON-RPC response types ([dda0f8e](dda0f8e)) * **irc:** create public API for IRC integration ([436a432](436a432)) * **irc:** define types for IRC account management and Atheme JSON-RPC ([ad2a24f](ad2a24f)) * **irc:** extend IRC module with UnrealIRCd types and client exports ([7cb4d97](7cb4d97)) * **irc:** implement Atheme JSON-RPC client for IRC commands ([9ae299c](9ae299c)) * **irc:** implement GET route for fetching IRC accounts ([bfd045a](bfd045a)) * **irc:** implement IRC integration for account management ([8387268](8387268)) * **irc:** implement UnrealIRCd JSON-RPC client for admin functionalities ([9665dbb](9665dbb)) * **irc:** include ircAccount in the main schema export ([67ec2a3](67ec2a3)) * **irc:** register IRC integration in the main integration module ([51e4826](51e4826)) * **irc:** update IRC environment variables for UnrealIRCd integration ([4c4437e](4c4437e)) * **migration:** add SQL migration to drop redundant indexes and create snapshot ([7b733a8](7b733a8)) * replace direct unique constraint on `userId` with a partial unique index for active IRC accounts. ([62f9982](62f9982)) * **schema:** add 'pending' status to ircAccountStatusEnum ([cf1f4ca](cf1f4ca)) * **types.ts:** add "pending" status to IrcAccountStatus type ([976347c](976347c))
chore(release): 1.2.0 [skip ci] # [1.2.0](v1.1.0...v1.2.0) (2026-01-30) ### Bug Fixes * **deps:** update dependency next to v16.1.5 [security] ([e821803](e821803)) * **instrumentation:** optimize Sentry integration for production ([38dd8ee](38dd8ee)) * **next.config:** disable CSS chunking as a workaround for Turbopack issue in development ([cb5309f](cb5309f)) ### Features * **admin:** enhance user management with improved filters and query options ([79a1381](79a1381)) * **admin:** enhance user management with URL state and filters ([3afb4e6](3afb4e6)) * **api:** add route ID validation and parsing utility ([7deb7c9](7deb7c9)) * **config:** enable component caching and enhance security features ([54d941e](54d941e)) * **error:** create dedicated AppError component and lazy-load error boundary ([b4f316d](b4f316d)) * **error:** implement lazy-loaded error boundary component ([6067afd](6067afd)) * **hooks:** add useDebouncedValue hook for improved input handling ([327f0d2](327f0d2)) * **layout:** implement Suspense for loading state and establish connection in RootLayout ([d481bea](d481bea)) * **loading:** add loading UI component for root segment ([ab4c740](ab4c740)) * **not-found:** establish connection in NotFound component ([d77efe3](d77efe3)) * **page:** establish connection in metadata generation and page rendering ([f92fa77](f92fa77)) * **providers:** implement lazy-loaded Sentry initialization and refactor Providers component ([c49f85f](c49f85f)) * **settings:** enhance account settings configuration with custom paths and layout options ([ad2e83e](ad2e83e)) * **settings:** implement nuqs-based tab state management for settings page ([f80a7ce](f80a7ce))
chore(release): 1.0.0 [skip ci] # 1.0.0 (2026-01-27) ### Bug Fixes * **api:** enhance error handling to prevent internal detail exposure ([892b8fb](892b8fb)) * **api:** standardize error responses for not found cases ([751656f](751656f)) * **auth:** update BETTER_AUTH_URL validation to use z.url() for improved type safety ([d8c0f38](d8c0f38)) * **auth:** update terms and privacy links to external URLs ([0fdadde](0fdadde)) * **cache:** correct cache hit determination and enhance cache configuration documentation ([80cec38](80cec38)) * **components:** update UserButton size for improved UI consistency ([b039ac8](b039ac8)) * **db:** update DATABASE_URL validation to use z.url() for improved type safety ([901698c](901698c)) * **env:** update XMPP keys import path ([e1f9e70](e1f9e70)) * **error handling:** clean up error and not-found components for better readability ([f618a3b](f618a3b)) * **error-handling:** improve Sentry error logging with fallback mechanism ([048c614](048c614)) * **error:** restore useTranslations import in error.tsx ([0b8be9c](0b8be9c)) * **global-error:** restore useTranslations import in global-error.tsx ([e629cfd](e629cfd)) * **hooks:** clean up whitespace and reorganize imports in use-permissions and use-user-suspense hooks ([916e3a9](916e3a9)) * **navigation:** enhance type safety in router path handling ([364804a](364804a)) * **navigation:** update Link href type casting for improved type safety ([4940b15](4940b15)) * **observability:** add fallback for Sentry release version to "unknown" ([47d2506](47d2506)) * **observability:** ensure error message is a string before returning ([c8a59f9](c8a59f9)) * **observability:** simplify hostname retrieval for portal tags ([c51b9f9](c51b9f9)) * **observability:** update Sentry configuration for improved handling and compatibility ([3eaab1d](3eaab1d)) * **seo:** correct type attribute placement in JsonLd component ([088c5a8](088c5a8)) ### Features * **admin:** implement admin API client and dashboard components ([f9b4468](f9b4468)) * **admin:** implement loading skeletons for user, session, and admin management ([71069cd](71069cd)) * **api:** add comprehensive admin and user API client functions ([c816952](c816952)) * **api:** add server-only imports and enhance error handling with observability utilities ([349e9d0](349e9d0)) * **api:** introduce hydration utilities and server-side query functions ([4ecc921](4ecc921)) * **auth:** add user deletion integration cleanup ([d6cbbb6](d6cbbb6)) * **auth:** enhance OAuth configuration to support XMPP scope ([23cb8dc](23cb8dc)) * **auth:** implement server-only imports and environment variable management ([92ce6da](92ce6da)) * **breadcrumbs:** add centralized breadcrumb generation for improved navigation ([fa3b3d0](fa3b3d0)) * **breadcrumbs:** implement breadcrumb generation and merging functionality ([4a9384c](4a9384c)) * **components:** add global command menu for quick navigation ([b1de3fa](b1de3fa)) * **config:** add commitlint configuration for standardized commit messages ([5e96698](5e96698)) * **config:** add Renovate configuration for automated dependency management ([7bda937](7bda937)) * **config:** add server external packages configuration ([9be3d5b](9be3d5b)) * **config:** enable standalone output for Docker deployments ([ae6d4ef](ae6d4ef)) * **config:** enhance Next.js configuration with comprehensive settings and optimizations ([0be31a8](0be31a8)) * **container:** add multi-stage Containerfile for Next.js 16 application ([de8d260](de8d260)) * **dal:** implement centralized data access layer for session verification and role management ([b215729](b215729)) * **dashboard:** enhance loading states and error handling across dashboard components ([7e6dd46](7e6dd46)) * **dashboard:** implement loading, error, and not found components for dashboard and admin sections ([0178678](0178678)) * **db:** implement environment variable management for database connection ([d3dd3d0](d3dd3d0)) * **dependencies:** add new packages for enhanced functionality and error handling ([27b6a84](27b6a84)) * **dependencies:** add next-intl for enhanced internationalization support ([54ab834](54ab834)) * **dependencies:** update package versions and add testing scripts ([7dcb435](7dcb435)) * **dependencies:** update package.json and pnpm-lock.yaml with new dependencies ([52196a5](52196a5)) * **deployment:** add deployment, migration, and rollback scripts with CI/CD workflows ([231bc52](231bc52)) * **docker:** add .dockerignore file to exclude unnecessary files from Docker context ([d69f95d](d69f95d)) * **docker:** add Docker Compose configurations for production and staging environments ([5000390](5000390)) * **docs:** add comprehensive documentation for accessibility, API, architecture, CI/CD, components, deployment, and testing ([d3efd9a](d3efd9a)) * **docs:** add contributing guidelines for Portal project ([1a86e10](1a86e10)) * **docs:** enhance README with testing, architecture, and operational guidelines ([763d1f5](763d1f5)) * **env:** create environment configuration for server and client ([54b12ee](54b12ee)) * **error-handling:** implement global error boundaries and metadata management ([4f99da9](4f99da9)) * **hooks:** add comprehensive hooks for admin and user management ([63fbe6c](63fbe6c)) * **i18n:** add route translation utilities for enhanced localization ([b5ceb39](b5ceb39)) * **i18n:** add server-side translation resolver for route configuration ([587456a](587456a)) * **i18n:** enhance AdminDashboard with localized titles and descriptions ([769dad7](769dad7)) * **i18n:** enhance AppHeader with localized breadcrumbs ([491d964](491d964)) * **i18n:** enhance authentication page localization ([1d3e5d2](1d3e5d2)) * **i18n:** enhance error component localization ([e2a99eb](e2a99eb)) * **i18n:** implement locale message loading and configuration ([39a0c1d](39a0c1d)) * **i18n:** integrate localization into error and not found pages ([19df3d4](19df3d4)) * **i18n:** integrate localization into RootLayout component ([def9fd2](def9fd2)) * **i18n:** integrate next-intl plugin for improved internationalization support ([7335b4d](7335b4d)) * **i18n:** localize error messages in GlobalError component ([4fed7bc](4fed7bc)) * **i18n:** localize home page content and metadata ([f38329d](f38329d)) * **i18n:** localize NotFound component messages ([b04d00a](b04d00a)) * **instrumentation:** add Next.js instrumentation for observability integration ([bf293da](bf293da)) * **integrations:** add integration account management API routes ([917e304](917e304)) * **integrations:** add integration accounts schema and migration ([a1fc070](a1fc070)) * **integrations:** add integration API module and query keys ([1c4b6a4](1c4b6a4)) * **integrations:** add integration card and management components ([36b3294](36b3294)) * **integrations:** add integration hooks for account management ([777ceb9](777ceb9)) * **integrations:** add integration registration function ([e981972](e981972)) * **integrations:** add integrations content and page components ([e090091](e090091)) * **integrations:** add integrations framework documentation ([97c374e](97c374e)) * **integrations:** enhance integration management and error handling ([d62f989](d62f989)) * **integrations:** implement core integration framework ([25d3489](25d3489)) * **layout:** introduce dynamic app header and breadcrumb context for improved navigation ([a4183b4](a4183b4)) * **lint:** add lint-staged configuration for TypeScript and JSON files ([24f0eab](24f0eab)) * **localization:** add initial localization files for English ([829fb9b](829fb9b)) * **localization:** enhance internationalization support with new localization hook and updated locale files ([2b573f6](2b573f6)) * **logging:** implement wide events pattern for structured logging ([5b12d1a](5b12d1a)) * **mcp:** add Next.js Devtools MCP commands and create TanStack Query guide ([5151e1b](5151e1b)) * **mcp:** add Sentry URL configuration for monitoring ([64e22cf](64e22cf)) * **monitoring:** implement Sentry tunnel route for event forwarding ([7c2691c](7c2691c)) * **next-config:** add Next.js configuration files for image formats and observability ([e566a49](e566a49)) * **next-config:** enhance Next.js configuration with CSP reporting and observability ([ba96b2f](ba96b2f)) * **next.config:** enhance development optimizations and logging configuration ([9fc9fd1](9fc9fd1)) * **oauth:** add script to create Prosody OAuth client ([ad50012](ad50012)) * **observability:** add environment variable validation for observability configuration ([c340b8e](c340b8e)) * **observability:** add request body size calculation and enhance HTTP client documentation ([f54f96d](f54f96d)) * **observability:** implement comprehensive observability utilities for enhanced monitoring ([c6ae811](c6ae811)) * **observability:** update Sentry tunnel route for improved request handling ([ac04cde](ac04cde)) * **permissions:** implement user permissions management for route access ([fc40db8](fc40db8)) * **plans:** add comprehensive plan to address PR[#1](#1) review issues ([ab1b397](ab1b397)) * **providers:** enhance Better Auth UI compatibility and add development tools ([b2bb6d1](b2bb6d1)) * **proxy:** update matcher to exclude Sentry tunnel route from /app paths ([f679d06](f679d06)) * **query-client:** remove query client utility file ([ce50e8c](ce50e8c)) * **release:** add semantic release configuration for automated versioning and changelog generation ([236c0ff](236c0ff)) * **routes:** add comprehensive documentation for navigation i18n integration ([cc68fca](cc68fca)) * **routes:** add route configuration for public and protected routes ([1c09420](1c09420)) * **routes:** add useTranslatedRoutes hook for automatic route translation ([1948d21](1948d21)) * **routes:** add XMPP route configuration ([40da294](40da294)) * **routes:** create core routing configuration file ([935622e](935622e)) * **routes:** define route types and configurations ([880c66a](880c66a)) * **routes:** enhance integration route management ([aaef19f](aaef19f)) * **routes:** implement UI display retrieval for routes ([fee6b20](fee6b20)) * **scripts:** enhance package.json with additional development and build scripts ([f81144d](f81144d)) * **security:** add CSP nonce retrieval function ([98b94b9](98b94b9)) * **security:** implement CSP nonce generation and integration ([6999cf8](6999cf8)) * **sentry:** add Sentry configuration for Edge and server environments ([07e2781](07e2781)) * **sentry:** integrate Sentry for error logging and tracing ([243e3d9](243e3d9)) * **seo:** add default metadata configuration and helper functions for SEO ([505e2f7](505e2f7)) * **seo:** add JsonLd component for structured data and enhance metadata merging ([9e06171](9e06171)) * **seo:** add SEO utilities for page metadata, robots, and sitemap generation ([fdec692](fdec692)) * **seo:** implement robots.txt generation for SEO optimization ([f894369](f894369)) * **seo:** implement sitemap generation for improved SEO ([bde3ee0](bde3ee0)) * **seo:** integrate CSP nonce into JSON-LD script generation ([f5a5f91](f5a5f91)) * **settings:** add loading skeleton components for account, security, and API keys ([f7b3365](f7b3365)) * **skills:** add new skills and resources for various development practices ([443f4ea](443f4ea)) * **svg:** add multiple SVG icons for enhanced UI elements ([8a7575d](8a7575d)) * **tables:** integrate TanStack Table for session and user management ([97359f3](97359f3)) * **tests:** add comprehensive test coverage for user API, hooks, and utility functions ([26dace5](26dace5)) * **tests:** add Vitest configuration and setup for testing environment ([5d588da](5d588da)) * **types:** add API and common types for improved type safety and structure ([1bc5a11](1bc5a11)) * **types:** centralize types and constants organization for improved structure ([3641cc6](3641cc6)) * **utils:** add utility modules for constants, date formatting, error handling, and string manipulation ([402aa53](402aa53)) * **web-vitals:** enhance Web Vitals reporting with attribution support ([97aef24](97aef24)) * **xmpp:** add XMPP account management component ([5836c90](5836c90)) * **xmpp:** add XMPP account schema definition ([73ebb52](73ebb52)) * **xmpp:** add XMPP API client functions and query keys ([47b665c](47b665c)) * **xmpp:** create XMPP account management page ([60febec](60febec)) * **xmpp:** enhance XMPP account management and validation ([36f749c](36f749c)) * **xmpp:** enhance XMPP configuration and observability integration ([9b83af7](9b83af7)) * **xmpp:** implement hooks for XMPP account management ([61d996e](61d996e)) * **xmpp:** implement Prosody integration for XMPP account management ([747a0b3](747a0b3)) * **xmpp:** implement Prosody REST API client for account management ([ebcf263](ebcf263)) * **xmpp:** implement XMPP account API routes ([4b50efd](4b50efd))