69 KiB
69 KiB
BACKEND WORKFLOW (F:\SumbrerongBato\tis_rms_server\backend)
- Read/Analyze Task → Inspect backend directory.
- Draft Code → Execute Quality Gate (Accept / Decline).
- Post-Code Loop: Analyze Errors → Resolve → Re-verify until Errors == 0.
- Terminal Exit: If build clean → Execute
git push.
FRONTEND WORKFLOW (F:\SumbrerongBato\tis_rms_server\frontend)
- Read/Analyze Task → Inspect frontend directory.
- Draft Components/Logic → Execute Quality Gate (Accept / Decline).
- Post-Code Loop: Analyze UI/Build Errors → Resolve → Re-verify until Errors == 0.
- Terminal Exit: If build clean & lint passes → Execute
git push.
⚡️ TOKEN COMPRESSION PROTOCOL
1. INPUT RESTRICTIONS (CONTEXT DRYING)
- Ignore system-level file-tree re-reads unless files change (Δ).
- Avoid parsing historical chat history beyond the immediate code break.
- Reference internal libraries by name only; do not request full source mappings.
2. OUTPUT SYSTEM CONSTRAINTS (ZERO BLOAT)
- NO natural language intros, greetings, or conversational transitions.
- NO explanations, rationales, or "why this works" breakdowns.
- NO summaries of work completed or code recap commentary.
- Exclude all code comments, inline documentation, and docstrings.
3. PATCH FORMATTING (MICRO-DIFFS ONLY)
- BANNED: Full-file reprinting, multi-line blocks of unchanged code.
- MANDATORY: Return micro-diff format or target lines replacement only:
- [old line] + [new line] - If a file creation is required, generate minimal skeleton logic only.
4. QUOTA BRAKING
- Max output limit per prompt turn = 150 tokens.
- If patch logic requires >150 tokens: STOP, emit
[TOKEN LIMIT BRAKE], and wait for chunked instructions.
📱 FLUTTER UI/UX RULES
- Stack: Flutter (latest) + Riverpod (AsyncNotifier/Notifier) + Material 3 (
useMaterial3: true). - Palette: Use existing
Theme.of(context).colorSchemetokens only. Never hardcode hex values. - Layout: Stack actions vertically on Android (
Columnwith full-widthElevatedButton). - Output: No design essays. Return optimized widget code immediately.
TODO
- dont do tasks with "(dont do)"
Settings screen
- Academic & graduation section: save cutoff date only shows when cutoff date is changed; added 'X' (clear) buttons to start and end date pickers in edit schedule dates dialog.
- Remove GitHub repository button from Developer & Support section.
- Report an Issue modal: created dedicated modal sending to lead developer (
crischarlesgarcia345@gmail.com) with title, description, category (bug, feature, question), urgency (high, medium, low), attachments, and send button opening email client ready to send (or clipboard fallback). - Fixed system theme toggle bug: Light and Dark mode options are now always clickable and correctly deactivate system theme when chosen.
- Security screen active devices: only displays devices with "Remember Me" enabled; added Load More / Load Less button when more than 3 devices are present.
- IP address location: added network / GeoIP location resolution next to IP addresses on both the Security screen and the Audit Trail / History screen (Sessions tab).
DASHBOARD SCREEN
- Fixed admin dashboard flash on teacher login: converted dashboard providers to autoDispose watching authProvider and actively invalidated caches on login/switch.
- Removed excess top spacing above "Dashboard Overview" on Windows desktop app (aligned search, notifications, and profile menu to header row and reduced top inset).
- Removed "Top Students by Documents" and "Needs Attention" cards from the bottom of the dashboard.
- Fixed "4 missing" empty list bug: student count and student modal list are derived synchronously and directly from matching students.
- Implemented dynamic missing document requirement chips (Approach A): dynamically evaluates and sorts missing counts across all enabled mandatory requirements (SF9, SF10, PSA, etc.) descending by missing frequency.
- Needs Attention section fix: created dedicated endpoint (
/api/dashboard/needs-attention) filtering strictly active enrolled students (s.status = 'Enrolled') and dedicateddashboardNeedsAttentionProviderto isolate alerts from other KPI chart metrics.
STUDENT SCREEN
- enrolled tab:
- when no students it has clear filter button, remove it, then in the student list table, add add button at the bottom to add student and nagivation for all students tab to enroll a students
- when I update the student status to inactive, dropped, transferred, graduated stays on this tab, add in filter for inactive, dropped, transferred, graduation
- rename the tab as the active academic year
- student profile:
- prevent or remove the buttons for not enrolled students upload docs
- history add load more and load less, it only show last 10 entries, and resets to default when not active tab
- remove the verified badge for files on records
- add button to navigate to document screen inside of their folder
Pagination on windows app
- use white font for dark theme and black for white theme for previous, next, and pagination numbers and add background like the numbers
ARCHIVE SCREEN
- Removed Recycle Bin, delete, restore, upload new version, and copy buttons from the Archive Screen (including folder context menus, document context menus, document preview modal, and bulk operations bar).
REPORTS SCREEN
- compliance tab student document compliance search bar not visible make it visible for all theme
- make the space consume, make the analytics prominently visible with minimal scrolling
DONT DO
TIS_RMS Server Manager (dont do)
Windows Service - NSSM nodejs
-
backup/restore db and files
-
backup: database backup, automatic schedule, snapshot retention
-
restore: restore database, validate backup, restart service automatically
-
files: mirror backup, verify files, restore files,
-
can choose where to store db and files separately
-
dashboard: server status, cpu mem usage, connected users, uptime
-
service: controls windows service stop start restart
-
logs, server logs, error logs
-
settings backup path, file backup path, database location