5.6 KiB
5.6 KiB
TasQ Release Notes
Version: 0.0.1.0 Date: 2026-04-09
Overview
This release brings significant new feature work on top of the initial core: a full Announcements module with push notifications, an IT Job Checklist tab, a My Schedule tab in Attendance, workforce swap improvements, and a more robust realtime notification system. UI consistency has been improved throughout with M3 motion and refined snackbar messaging.
Working Features
- Tickets: Create, view, and manage tickets. Basic assignment and status updates are functional with server-side querying and provider-driven UI flows. IT service request UI has been improved with better TicketPromotion screens.
- Tasks: Task creation, listing, and updates are implemented. Includes an IT job printout feature for exporting/printing IT job details and work instructions.
- IT Job Checklist: A dedicated IT Job Checklist tab is available on task detail screens. Tracks print history and enforces a reminder cooldown to prevent notification spam. Immediate feedback is shown when sending IT job reminders.
- Task Assignment: IT staff may be assigned to multiple tasks simultaneously; the assignment dialog no longer restricts based on current active work. The dialog shows a loading spinner while saving and displays success/error snackbars.
- Announcements: Full announcements module including banner support, templates, and comments. Push notifications are delivered for new announcements and comment events. Snackbar feedback is shown on announcement events and comment notifications.
- Attendance — My Schedule: A new My Schedule tab in the Attendance screen allows users to view their schedule for 1 Day, a Whole Week, or a custom Date Range.
- Notifications: Notification screen handles announcement notifications and IT job reminders. Notification messages have been improved for clarity.
- Realtime Controller: Per-channel recovery status tracking so the app can independently recover each realtime subscription after a connection drop.
- Workforce: Workforce swap lifecycle improvements including target shift selection and recipient change flows.
- User Management: Admins can create and manage user profiles and roles. Authentication flows and profile providers are in place for role-based access.
- Office Management: Offices can be created and maintained; users and tasks may be scoped by office for filtered views.
- Initial Geofencing: First-pass geofencing (admin creation of geofences, basic detection hooks). Intended for iteration — see roadmap.
Known Limitations
- Geofencing lacks advanced triggers, notifications, and full device offline handling.
- Duty scheduling is functional but will be improved for complex shift patterns and repeats.
- Reports and events are not yet implemented.
- Offline support (local caching, queued mutations, background sync) is not yet available.
Roadmap (Planned Features)
- Events: Event creation, RSVP/attendance tracking, and calendar integrations.
- Reports: Exportable CSV/PDF reports for tickets, tasks, and workforce metrics.
- Improved Duty Schedules: Advanced scheduling, repeating patterns, and approval workflows for duty swaps.
- Geofencing (Full Rollout): Robust geofence lifecycle, realtime triggers/notifications, user/device-level state, and integration with duties and timekeeping.
- Offline Support: Local caching, queued mutations, and background sync for intermittent connectivity.
Tests and Quality
Tests are under test/ and cover the following areas:
| File | Coverage |
|---|---|
announcements_test.dart |
Announcement model parsing, banner logic |
app_time_test.dart |
Time utility functions |
auto_assign_test.dart |
Auto-assignment logic |
dashboard_metrics_provider_test.dart |
Dashboard metrics provider |
geofence_admin_screen_test.dart |
Geofence admin screen rendering |
geofence_test.dart |
Geofence model and detection logic |
it_job_checklist_test.dart |
Task IT job fields, NotificationItem announcement support |
layout_smoke_test.dart |
Screen rendering, dialog interactions |
leave_stream_update_test.dart |
Leave stream update handling |
profile_screen_test.dart |
ProfileScreen fields and save actions |
searchable_multi_select_dropdown_test.dart |
Searchable dropdown widget |
supabase_response_test.dart |
Supabase response parsing |
task_assignment_section_test.dart |
TaskAssignmentSection widget |
tasks_provider_test.dart |
TasksController completion rules, Task.hasIncompleteDetails |
teams_screen_test.dart |
Teams screen rendering |
theme_overhaul_test.dart |
AppTheme M3 tokens, TasQAdaptiveList |
ticket_promotion_integration_test.dart |
Ticket promotion integration flow |
typing_dispose_race_test.dart |
Race condition on controller dispose |
user_management_screen_test.dart |
UserManagementScreen admin actions |
workforce_swap_test.dart |
WorkforceController, swap lifecycle |
Run flutter analyze and flutter test before release to ensure all tests pass.
Developer Notes
- Follow the repository's CLAUDE.md /
.github/copilot-instructions.mdguidance for theming, server-side pagination, and provider patterns. - Key folders:
lib/providers/,lib/routing/,lib/screens/,test/. - Push notification delivery depends on the Supabase
pg_cronmigration jobs being applied. Seesupabase/migrations/for the relevant migration files. - M3 motion tokens are defined in
lib/theme/m3_motion.dart.
Next Steps
- Stabilize geofencing triggers and notification paths.
- Implement reports with RBAC checks.
- Add offline sync, prioritize duty schedule improvements, and add event/calendar support.