Commit Graph
150 Commits
Author SHA1 Message Date
sankalp 554686af41 feat(src/dashboard): optimize ORM query and dependency listings
Add select_related optimizations and sync dependency versions across pyproject.toml and requirements.txt
2026-06-30 10:42:28 +05:45
sankalp 72f0474f45 feat(src/tickets): add database indexes for performance
Improve query speed on Ticket, TicketComment, and TicketPriority by indexing fields used in frequent filters and ordering.
2026-06-30 10:42:10 +05:45
sankalp fb0aab3da9 feat(src/projects): add indexes on Project.name and Project.created_at
Add database indexes for name and created_at fields to speed up filtering and ordering queries.
2026-06-30 10:41:51 +05:45
sankalp 8925c2e02d feat(src/notifications): add select_related to Ticket queries and index on PushSubscription.user
Improve query performance and lookup speed.
2026-06-30 10:41:34 +05:45
sankalp 3b0625a823 feat(templates): add logout link URL, hide in HTMX responses 2026-06-30 10:35:57 +05:45
sankalp 6781a11874 feat(src/tickets): bump version and add dependencies
Include new third‑party packages for upcoming features.
2026-06-30 10:35:40 +05:45
sankalp 4b2fa52060 refactor(src/notifications): batch‑fetch reminder logs to avoid per‑user DB queries
Reduce DB round‑trips when checking already‑sent deadline reminders, improving performance and simplifying query logic.
2026-06-30 10:35:21 +05:45
sankalp 3e9c06f722 perf(src/dashboard/page_views): add select_related('project') to Ticket queries 2026-06-30 10:35:04 +05:45
sankalp 3ef50ada37 refactor(src/dashboard/board_views): improve ticket creation with atomic transaction and streamlined notification handling
Use transaction.atomic for safety and simplify notification creation while preserving existing functionality
2026-06-30 10:34:46 +05:45
sankalp b970470237 feat(src): implement Web Push notifications infrastructure including VAPID key management, subscription endpoints, and push notification dispatch
Added context processor, management command, and supporting models/views to enable Web Push notifications and VAPID key generation.
2026-06-30 10:23:14 +05:45
sankalp f5ec721cb2 feat(config): add VAPID settings for Web Push
Configure VAPID keys and claims to securely enable web push notifications.
2026-06-30 10:22:56 +05:45
sankalp 3ed5083551 feat(templates/components): add push notification handling to service worker
Add support for receiving push notifications, parsing JSON payload, displaying notifications with title, body, icon, badge and handling click actions to focus or open the associated URL, improving user experience with timely interactive alerts
2026-06-30 10:22:39 +05:45
sankalp 22826fe78b feat(templates): add push notification prompt UI and JS logic
Enable real-time user notifications to improve engagement and ensure timely updates.
2026-06-30 10:22:21 +05:45
sankalp 612a3dd151 feat(push): add browser push notifications via Web Push API
Enable user opt‑in for real‑time ticket updates without third‑party services.
2026-06-30 10:22:04 +05:45
sankalp ee5338e71c style(src/dashboard/page_views): reformat render calls
Make render invocations consistently formatted across files
2026-06-29 08:05:10 +05:45
sankalp 4f9be30a2a refactor(templates): reorganize template hierarchy and update includes
reorganize templates into pages/ and modals/ directories for better structure
update includes to reference new paths, maintaining functionality
2026-06-29 08:01:22 +05:45
sankalp 354b8b2cf8 refactor(src/dashboard): restructure template paths under pages/
Group related templates into subfolders to improve maintainability
2026-06-29 08:01:01 +05:45
sankalp 9da2e2ee03 feat(templates/users): reorganize user templates into pages subdirectory
Refactor template layout to group related pages, improving project structure and clarity.
2026-06-29 08:00:44 +05:45
sankalp e1f1d4a4fc feat(templates/tickets): rename pages and add create ticket modal
Refactor page templates into pages/ and introduce a create modal for ticket creation
2026-06-29 08:00:27 +05:45
sankalp 1a228cbd70 refactor(settings): reorganize UI template hierarchy
Move ui.html into pages subdirectory to improve organization and align with future UI components.
2026-06-29 08:00:10 +05:45
sankalp 25554feac5 feat(page_views): add automation rule management UI
Add support for creating, toggling and deleting automation rules to streamline workflow and reduce manual effort
2026-06-29 07:50:27 +05:45
sankalp 2f1df8ab03 feat(templates/projects): add automation UI and modal for board automation rules
Enable management of automation rules with UI buttons, modal, and status condition handling
2026-06-29 07:50:09 +05:45
sankalp 84cb41790c feat(src/tickets): assign request user as ticket updater
Ensure audit trail of status changes by recording requesting user.
2026-06-29 07:49:51 +05:45
sankalp a6e482691c feat(automation): add automation rule handling for ticket status changes
Prevents brute‑force attacks by enabling server‑side automation on ticket status changes.
2026-06-29 07:49:34 +05:45
sankalp 5e77c3be61 feat(config): add automation rule routes
Add URL routes for board automation actions to enable rule management via API.
2026-06-29 07:49:16 +05:45
sankalp 4d78b7b31b feat(root): improve role‑based permissions and user management documentation
Clarify dynamic custom role CRUD and system roles (superadmin, manager) with per‑project, per‑status move permissions
2026-06-29 07:24:12 +05:45
sankalp d30cfd61c3 fix(src/tickets): wrap move ticket view in atomic transaction with select_for_update
Ensures data integrity and prevents race conditions when moving tickets.
2026-06-29 07:20:47 +05:45
sankalp 0497b7e68d refactor(src/projects): cache role names in role_display_name
Prevent repeated DB hits by caching Role objects and names.
2026-06-29 07:20:29 +05:45
sankalp 9070bf3015 feat(src/dashboard/views): annotate ticket metrics
Introduce aggregated ticket counts to eliminate redundant queries and boost performance.
2026-06-29 07:20:11 +05:45
sankalp e3551a822c refactor(src/dashboard): enhance DB query efficiency and pagination stability
Prevent N+1 queries, streamline aggregation, and fix role deletion count
2026-06-29 07:19:53 +05:45
sankalp 1bdb254e94 feat(src/dashboard/board_views): add atomic transaction and select_for_update to move_ticket view
Ensure consistent status updates and prevent race conditions when moving tickets
2026-06-29 07:19:35 +05:45
sankalp 7431c8f050 refactor(templates): use role_display_name and improve role/admin clarity
Clarify role display names, refine admin role labeling, and update confirmation messages for better UX.
2026-06-29 06:57:52 +05:45
sankalp 80c05d8fc7 refactor(src): replace role CharField with Role FK and centralize role management
Centralize role definitions to support dynamic roles and enforce role existence at DB level
2026-06-29 06:57:35 +05:45
sankalp 574d93ece5 feat(roles): introduce Role CRUD and replace hardcoded role strings with model
Centralize role management and switch to is_admin for admin checks.
2026-06-29 06:57:17 +05:45
sankalp b7d43b57f4 feat(templates/users): adopt role objects for branding and selection
Replace role name comparisons with slug checks and display role.name to support dynamic role definitions.
2026-06-29 06:56:55 +05:45
sankalp 128866bda2 feat(config): add roles CRUD dashboard URL patterns
Add dashboard URL patterns for role management to prepare for upcoming admin role CRUD UI.
2026-06-29 06:56:36 +05:45
sankalp 4c1ebbf357 feat(templates/projects/partials): replace hard-coded status completion check with configurable allowed_move_to_status_ids
Prevents brute-force attacks by only allowing moves to statuses explicitly permitted.
2026-06-28 19:35:54 +05:45
sankalp ce0c1349ca feat(templates/projects): add permissions modal and restricted mode logic
Implement permission configuration UI and enforce restricted movement rules
2026-06-28 19:35:30 +05:45
sankalp 7600b7b773 fix(src/tickets): adjust permission check for moving tickets to use user_can_move_to_status
Clarify error message and strengthen security validation
2026-06-28 19:35:03 +05:45
sankalp eef68868d1 feat(src/dashboard/page_views): add board permissions management UI
Introduce views for creating, editing and deleting board role permissions and expose permission data in the project detail context.
2026-06-28 19:34:38 +05:45
sankalp a6bdf22912 feat(src/dashboard/board_views): add admin role check and permission handling
Replace hard-coded admin checks with granular permission checks using BoardRolePermission
Expose allowed move status IDs to front‑end and unify permission logic across views
2026-06-28 19:34:15 +05:45
sankalp 5d6b3a6220 feat(src/projects): add authorized move-to-status logic and permission model
Allow fine‑grained control over which statuses a role can move tickets to and store permissions centrally.
2026-06-28 19:32:14 +05:45
sankalp fbb1ee7c95 feat(config): add board permissions and delete permission endpoints
Expose permission management views under project-specific URL paths, requiring authentication
2026-06-28 19:31:49 +05:45
sankalp 6a343efc0a refactor(src): replace hardcoded role checks with is_admin attribute
Simplify permission logic by using the unified `is_admin` flag instead of duplicated role list checks.
2026-06-28 19:16:54 +05:45
sankalp 5db8cfc63e feat(templates/users): default new user role to backend_developer
Switch default role from 'member' to 'backend_developer' in forms, list, and modals, ensuring consistency across templates. Also update role label rendering to use get_role_display fallback.
2026-06-28 19:16:22 +05:45
sankalp 9cd3026785 feat(templates/tickets): replace role checks with is_admin for admin UI
Replaces `role != 'member'` checks with `is_admin` to correctly target admin users and simplify conditional rendering.
2026-06-28 19:16:02 +05:45
sankalp 457fc76f9d feat(templates/projects): add manage statuses button and restricted mode UI
Provides admin UI to manage statuses and prevents moving tickets to completed statuses
2026-06-28 19:15:35 +05:45
sankalp 04a7965a2a fix(src/tickets): prevent moving tickets to completed status without admin rights
Non-admin users cannot move tickets to completed statuses to avoid accidental closure.
2026-06-28 19:15:10 +05:45
sankalp b3b6c3eb0b docs(root): expand project overview and environment variable documentation
Add comprehensive project description, feature list, and environment variable reference to improve onboarding and self‑documentation.
2026-06-28 18:42:33 +05:45
sankalp 37cc6a660c feat(templates/projects): replace view link with button and add note view modal
Switch from <a> tag to button with Alpine click handler and add a modal dialog for viewing note content, improving interactivity and user experience.
2026-06-28 18:36:49 +05:45