34 KiB
SiteRipoti (Working Title)
Construction Site Reporting & Management App — Full Scope & Functional Specification
| Document | App Scope & Functional Specification |
| Version | 1.0 (Draft for review) |
| Date | 25 September 2026 |
| Platform | Makepad UI framework, Rust — single codebase targeting Android, iOS, Windows, macOS, Linux and Web (WASM) |
| Status | For stakeholder review |
1. Executive Summary
SiteRipoti is a multi-platform construction site management application that digitises daily and monthly site reporting, workforce attendance, site communications, task scheduling and approvals, procurement and site meetings — with AI assistance at every documentation step.
The app is designed around the reality of construction work in the field: unreliable connectivity, multiple concurrent sites under one supervisor, casual labour with paper IDs, and reporting chains that require verification before anything becomes official. It is offline-first, role-based, and audit-logged.
This document formalises the original six-phase scope (22 requirement items) and adds the omitted capabilities — user accounts and permissions, offline sync, safety reporting, snag lists, RFIs, purchase orders, dashboards, document/drawing control and integrations — required to make the app a complete, production-ready product rather than a collection of features.
Notation:
- [BASE] = requirement from the original scope, formalised
- [ENHANCED] = original requirement with meaningful additions
- [NEW] = omitted capability added in this document for a fully functional app
2. Background & Problem Statement
Site supervision today runs on a mix of WhatsApp groups, paper diaries, phone-camera photos and Excel sheets. The consequences:
- Lost evidence — photos scattered across personal phones; no timestamp/GPS proof.
- Unverified reporting — anyone can write anything; there is no approval chain or accountability.
- Slow compilation — an overall supervisor managing several sites must manually merge daily reports into monthly packs, often days later.
- No audit trail — disputes on what was done, when, and who approved it, are impossible to settle.
- Casual labour opacity — no reliable record of who worked, where, and under which department.
- Paper meetings — minutes taken by hand, typed up late, actions forgotten.
The app replaces this with one verifiable system of record from the foreman's pocket to the boardroom pack.
3. Product Objectives & Success Criteria
| # | Objective | Success Metric |
|---|---|---|
| O1 | Every site produces a complete, verified daily report | ≥ 90% of working days with an approved daily report per site |
| O2 | Cut report preparation time | Daily report compiled in ≤ 15 min; monthly pack in ≤ 30 min (vs. hours today) |
| O3 | Reliable multi-site oversight | Overall Supervisor compiles N-site consolidated report in one action |
| O4 | Trustworthy records | 100% of approvals carry user identity, timestamp and signature |
| O5 | Field usability | All core features fully usable offline on a low-end Android phone |
| O6 | Faster approvals | Task inspection → approval turnaround visible and measurable per site |
4. Users & Roles
4.1 Personas
| Persona | Description |
|---|---|
| Overall Supervisor / Project Manager | Manages several geographically distributed sites; needs consolidated reporting and cross-site visibility |
| Report Master | Prepares, verifies and approves the site's daily/monthly report; the authority on report content |
| Site Supervisor / Site Agent | Runs one site; contributes entries, photos and workforce data |
| Site Engineer / Foreman / Site Manager | Internal inspectors; verify task quality; contribute entries |
| Procurement Officer | Manages material schedules, suppliers and purchase orders |
| HSE Officer | Owns safety compliance, incidents and toolbox talks |
| External Consultant | Outside the company; performs external inspections and approvals on specific tasks |
| Client / Project Owner | Read-only stakeholder receiving progress digests |
| Casual Worker | Indirect user — present via scanned ID and attendance records |
4.2 Role × Capability Matrix
| Capability | Org Admin | Overall Supervisor | Report Master | Site Supervisor | Engineer/Foreman | Procurement | HSE | Consultant (ext.) | Client (viewer) |
|---|---|---|---|---|---|---|---|---|---|
| Manage organisation & users | ✔ | ✔ | – | – | – | – | – | – | – |
| Create/edit sites & working hours | ✔ | ✔ | – | – | – | – | – | – | – |
| Contribute entries to daily report | – | ✔ | ✔ | ✔ | ✔ | – | ✔ | – | – |
| Compile daily report | – | ✔ | ✔ | – | – | – | – | – | – |
| Approve & sign report | – | ✔ | ✔ | – | – | – | – | – | – |
| Compile multi-site report | – | ✔ | – | – | – | – | – | – | – |
| Scan workers / manage attendance | – | ✔ | ✔ | ✔ | ✔ | – | – | – | – |
| Chat in site channels | – | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | – |
| Manage task schedule & templates | – | ✔ | ✔ | ✔ | ✔ | – | – | – | – |
| Internal inspection sign-off | – | ✔ | ✔ | ✔ | ✔ | – | ✔ | – | – |
| External inspection sign-off | – | – | – | – | – | – | – | ✔ (assigned tasks only) | – |
| Create/approve purchase orders | – | ✔ | – | – | – | ✔ | – | – | – |
| Record meetings & generate minutes | – | ✔ | ✔ | – | – | – | – | – | – |
| Log incidents / HSE records | – | ✔ | ✔ | ✔ | ✔ | – | ✔ | – | – |
| View dashboards & analytics | ✔ | ✔ | ✔ | (own site) | (own site) | ✔ | ✔ | – | ✔ (digest) |
| View full document library | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | (shared only) | (shared only) |
(Role capabilities are configurable per organisation; the matrix shows defaults.)
5. Platform & Technology
| Layer | Choice | Rationale |
|---|---|---|
| UI | Makepad (Rust) | One codebase → native performance on mobile, desktop and web; smooth media-heavy UI |
| Business logic | Rust core crate | Shared across platforms; testable; safe |
| Local store | SQLite (per-device) | Offline-first storage, media queue, sync journal |
| Backend | Rust API service (e.g. Xicta - check implemented nimanyatta server existing in this path (/Users/aok/Projects/rustdev/CratesCode/nimanyatta/src) to be extended to meet our requirements here) + PostgreSQL + S3-compatible object storage | Type-safe end-to-end; simple deployment |
| Sync | Background delta sync with resumable media upload | Survives poor site connectivity |
| AI | LLM API (cloud) with on-device fallback for voice-to-text | Description refinement, photo captioning, transcription, minutes, summaries |
| Camera / GPS / Barcode–QR / OCR | Platform APIs via Makepad bindings | ID scanning, photo capture, geotagging |
| Push & local notifications | FCM / APNs + local scheduler | Reminders work offline |
| Auth | Email/phone + password, PIN + biometric app lock | Fast field access, secure at rest |
Target devices: priority is Android (low-end phones common on site), then iOS, then desktop for supervisors and web for client/viewer access.
6. High-Level Architecture & Offline-First Strategy
- Every core action is a local transaction. Capturing photos, writing entries, scanning IDs and chatting all write to the on-device SQLite store first; the app is fully usable with zero connectivity.
- Sync journal. All changes queue with the author, device and timestamp. When connectivity returns (Wi-Fi, hotspot), deltas upload; conflicts on shared documents (e.g. a report) are resolved by server arbitration and flagged for the Report Master.
- Media pipeline. Photos/GIFs are compressed client-side, stamped with timestamp + GPS + site name watermark as evidence, then uploaded resumably. Originals retained per retention policy.
- Server-side authority. Approvals, signatures, report locking and role permissions are enforced server-side — never client-only — so records are tamper-evident.
- Audit log. Every create/edit/approve/lock/share event is recorded immutably (who, what, when, from where).
7. Functional Scope
Phase 0 — Foundation & Platform [NEW]
(Omitted in the original scope; without it, none of the other phases can ship.)
- FR-0.1 Organisation & user management — Company (organisation) creation; invite-based onboarding by email, phone or share link; user profiles with role assignment per site.
- FR-0.2 Roles & permissions — Implement the §4.2 matrix; server-enforced. Consultants and clients are scoped strictly to what is shared with them.
- FR-0.3 Site registry — Create sites with name, geolocation, project type, working hours (per-site), team assignment and optional geofence.
- FR-0.4 Offline-first core — All Phase 1–6 features operate offline; background sync; visible sync status indicator (pending/synced/error).
- FR-0.5 App security — PIN/biometric lock, auto-lock, remote device revocation, encrypted local database.
- FR-0.6 Notification centre — In-app inbox of all alerts (approvals, mentions, reminders, escalations) + push notifications.
- FR-0.7 Audit trail — Immutable activity log per report, task, order and document; exportable.
- FR-0.8 Settings — User profile, drawn signature image, language (English/Swahili), dark mode, notification preferences, storage management.
Phase 1 — Daily & Monthly Reports
Capture & documentation
- FR-1.1 [BASE] Photo/GIF capture — Take pictures or short looping clips (GIF/MP4) of the task being performed; multi-select from gallery; each item stamped with timestamp, GPS coordinates and site watermark. [ENHANCED]: annotation on photos (arrows, circles, text), and capture of a short voice note per entry.
- FR-1.2 [BASE] Task description with rich text — Description editor supporting bold, underline, italic and bullet/numbered lists. AI refine action: fix grammar, professionalise tone, expand terse notes into clear narrative — while preserving the user's facts. [NEW]: voice-to-text dictation; AI-assisted photo captioning; per-entry category (e.g. concrete works, plumbing) for later aggregation.
- FR-1.3 [BASE] Document generation — Generate the day's entries (photos + descriptions) into a formatted PDF and Word (.docx) document: branded cover page (company logo, project, site, date, author), table of contents for longer reports, photo grid with captions. [NEW]: customisable templates; automatic report numbering (e.g.
DR-SITE01-2026-09-25).
Collaboration & verification
- FR-1.4 [BASE] Multi-user contribution — Multiple users on site add entries to the day's report. The Report Master compiles, verifies and approves the report before it is official; contributor list and their entries are visible in the document. [ENHANCED]: contributors see entry status (pending/accepted/returned with comment); approval captures a drawn or typed digital signature; approved reports are locked and versioned (resubmission creates a new version with a change log).
- FR-1.5 [BASE] Multi-site compilation — Site supervisors/personnel create reports for their individual sites; the Overall Supervisor generates a compiled daily report consolidating all submitted sites — per-site sections plus an executive summary page. [NEW]: compilation flags missing sites (not yet submitted) and can send a chase notification; consolidated export to PDF/Word.
Reminders
- FR-1.6 [BASE] Daily capture reminder — Configurable reminder (default 1 hour before end of working hours, per-site working hours) to take pictures and create the report. [NEW]: escalation nudge to the supervisor if no report has been started 30 minutes after shift end.
- FR-1.8 [BASE] Monthly report reminder — Reminder to generate and review the monthly report 72 hours before the planned site meeting date (configurable lead time).
Monthly reporting
- FR-1.7 [BASE] Monthly accumulation — Automatically accumulate the month's approved daily reports into a monthly report: all tasks executed, photo highlights, per-category totals. [ENHANCED]: AI-generated executive summary and progress narrative; auto-embedded statistics (manpower by day, materials received, delays, HSE stats); export to PDF, Word and PowerPoint for the meeting presentation.
Supporting site-diary data [NEW] (standard content of a professional daily site report, omitted in the original scope)
- FR-1.9 Weather conditions — Auto-fetched weather at site + manual override; feeds delay justification and the monthly report.
- FR-1.10 Manpower & plant log — Workers on site by trade/department (auto-filled from Phase 2 attendance), equipment/machinery on site with hours operated.
- FR-1.11 Materials received today — Deliveries captured against orders (auto-links Phase 5).
- FR-1.12 Delays & hindrances — Structured delay log with reasons (weather, labour, materials, design, access) and lost-time estimate; rolls into monthly summary.
- FR-1.13 Visitor log — Who visited, purpose, time in/out.
- FR-1.14 Report lifecycle & archive — Status workflow
Draft → In Review → Approved → Locked; full-text search and filterable archive by site, date, author, status; batch export.
Phase 2 — Workers Report Table
- FR-2.1 [BASE] ID scanning — Scan casual workers' IDs (national ID, work permit, NCA card) via OCR; capture name, ID number and photo; assign work department/station. Duplicate detection prevents double registration. [ENHANCED]: consent capture and encrypted storage of ID data; consent flag required before storage.
- FR-2.2 [BASE] Daily workers table — Auto-generate the table of workers present on the day: names, departments, work stations, with headcount summary by department/trade. Exportable as PDF/Excel and attachable to the daily report.
- FR-2.3 [NEW] Attendance & timesheets — Clock-in/clock-out per worker (with optional geofence check); hours and overtime computed; export payroll-ready CSV (per department, per day/week/month).
- FR-2.4 [NEW] QR quick check-in — Generate printable QR badges for repeat workers so the next day's attendance is a scan, not a full ID capture.
- FR-2.5 [NEW] Worker register & flags — Site worker register with status (active/inactive), skills/trade tags, and an organisation-level blocklist.
- FR-2.6 [NEW] Privacy controls — ID images encrypted at rest, retention policy (auto-purge after configurable period), and full deletion on worker offboarding — aligned to data protection law (see §12).
Phase 3 — Chat & Communications
- FR-3.1 [BASE] Site chat — One-to-one and group chat for site communications; dedicated site channels (e.g. Announcements, Site A – General) with membership tied to site teams.
- FR-3.2 [BASE] File sharing — Share reports, approval documents and minutes in chat with inline preview; shared documents open in the app viewer.
- FR-3.3 [NEW] Chat essentials — Read receipts, @mentions with push notification, pinned messages, message search, offline send-queue with delivery on reconnect.
- FR-3.4 [NEW] Bot notices — Automatic posts into channels for key events (report approved, meeting scheduled, purchase order issued, task inspection due) so the channel becomes the site's live feed.
- FR-3.5 [NEW] Broadcast — Overall Supervisor broadcasts a message to all sites' channels at once.
- FR-3.6 [NEW] Moderation & retention — Channel admin roles, mute, archive, and message retention policy.
Phase 4 — Task Schedule, Approval Documentation & Status
- FR-4.1 [BASE] Task templates by project type — Auto-generate the construction activities template (main tasks and subtasks) from the user-defined nature of the site (residential building, warehouse, apartment estate, market, hospital, school, road, etc.). [ENHANCED]: AI generates a tailored breakdown from project type + a short scope description; templates are fully editable and reusable as the organisation's own library.
- FR-4.2 [BASE] Full program of works — Define all construction activities from project start, or adopt the template mid-project by marking actual progress so far, then itemise tasks and sub-tasks through to project end.
- FR-4.3 [BASE] Timelines & quantities — Set start/end dates and durations per task/subtask, and material quantities per task (feeds Phase 5 material schedule). [ENHANCED]: dependencies between tasks, milestones, and baseline vs actual tracking with slippage alerts.
- FR-4.4 [BASE] Task IDs & inspection routing — Each task carries a unique ID assigned for inspection/approval by internal roles (Site Engineer, Site Agent, Foreman, Site Manager) and external consultants, enabling domestic approval and tracking. [ENHANCED]: per-task inspection checklists (pass/fail/NA with notes and evidence photos); approval captures signature, timestamp and identity.
- FR-4.5 [BASE] Status tracking — Task status board:
Not Started / In Progress / Awaiting Inspection / Approved / Rework Required / On Hold, with percentage complete and photo evidence per task. Daily report entries link to the tasks they relate to. - FR-4.6 [NEW] Views — Gantt (timeline) view, calendar view and list/board views; filter by status, responsible person, department or consultant. check this code in this path (/Users/aok/Projects/rustdev/CratesCode/nigig-org/crates/apps/nigig-build/src/construction_frame/pages/workspace/project_management) to be in its own crate and functionality extended to meet our requirements where site can just add it as a crate and implement functionality needed.
- FR-4.7 [NEW] Snag / defect list — Log defects (punch list) with location, photo, assignee and due date; closure requires a closure photo and sign-off. Snag statistics feed the monthly report.
- FR-4.8 [NEW] RFI log — Requests For Information raised to consultants/designers with response tracking and due dates; unresolved RFIs highlighted as delay risks.
- FR-4.9 [NEW] Variation register — Record variation/change orders with justification, cost/time impact and approval trail, linked to affected tasks.
Phase 5 — Procurement Schedule & Approval
- FR-5.1 [BASE] Material schedule & sourcing — Create the material quantity schedule per task; record sourcing options across hardware stores, agents and factories. [ENHANCED]: required-vs-delivered auto-computation — the app shows remaining quantities to procure from deliveries already captured in daily reports.
- FR-5.2 [BASE] Directory — Hardware, agent and factory directory: contacts, locations, categories, price lists. [ENHANCED]: supplier rating (price, delivery timeliness, quality) from history; price comparison across suppliers per material.
- FR-5.3 [NEW] Requisition → LPO workflow — Raise a material requisition from the schedule; generate a numbered Local Purchase Order (PDF); approval chain (Supervisor → Procurement → Admin) with signatures; status tracking
Requested → Approved → Ordered → Delivered → Closed. - FR-5.4 [NEW] Delivery capture & verification — Capture delivery notes by photo/OCR, verify received quantities against the LPO, flag shortfalls/damages; receipts automatically update the material schedule.
- FR-5.5 [NEW] Budget tracking — Budget vs actual spend per material and per task; variance highlighted for the monthly report.
- FR-5.6 [NEW] Payment record (optional module) — Record payments/deposits to suppliers with receipt images; mobile-money payment capture (e.g. M-Pesa reference) for the Kenyan market. (Full accounting is out of scope — see §17.)
Phase 6 — Site Meetings
- FR-6.1 [BASE] Schedule & reschedule — Schedule and reschedule site meetings with date, time, venue/link, agenda and invited attendees (from the project directory); invites with RSVP; automatic reminders to all attendees.
- FR-6.2 [BASE] Project directory — Maintain the project directory/list of all participants: name, company, role, contacts — used for invites, approvals routing and minute attribution.
- FR-6.3 [BASE] Listen to the meeting — The app records meeting audio and listens to members speaking, with speaker identification (who said what).
- FR-6.4 [BASE] Auto minutes — At the end of the meeting the app prepares and generates minutes: agenda items, key discussion points per speaker, decisions, and action items with owners and deadlines. Editor allows correction before finalising.
- FR-6.5 [BASE] Share minutes — Distribute the approved minutes to attendees and interested parties via in-app chat, email and PDF/Word export.
- FR-6.6 [NEW] Agenda templates & pre-reads — Standard meeting agenda templates (progress, safety, procurement, AOB); attach pre-read documents (monthly report, programme update) to invites.
- FR-6.7 [NEW] Action item tracker — Action items from minutes become tracked items: due-date reminders, status, carry-forward of unresolved items into the next meeting automatically.
- FR-6.8 [NEW] Cross-linking — Minutes reference (and link to) the reports, tasks, RFIs, snags and variations discussed.
- FR-6.9 [NEW] Transcription options — English and Swahili speech recognition; export of the full transcript alongside the minutes.
Phase 7 — Safety, Health & Environment (HSE) [NEW]
(Omitted in the original scope; expected by any professional client and mandatory for credible site records.)
- FR-7.1 Incident & near-miss reporting — Log incidents and near misses with photos, severity, persons involved, immediate action taken; escalation notification to supervisor and HSE officer.
- FR-7.2 Toolbox talks — Record safety talks delivered: topic, date, attendees pulled from the worker register.
- FR-7.3 Safety inspections — Scheduled inspection checklists (PPE compliance, scaffolding, housekeeping, electrical) with corrective actions, assignees and closure evidence.
- FR-7.4 Emergency information — Per-site emergency contacts, assembly points and procedures; available offline.
- FR-7.5 HSE statistics — Days since last incident, toolbox talk counts, open corrective actions — auto-embedded into the monthly report and dashboards.
Phase 8 — Dashboards, Analytics & Client Access [NEW]
- FR-8.1 Site dashboard — Live per-site view: programme progress %, workers on site today, daily report status (submitted/missing), open snags/RFIs, delays this month, spend vs budget.
- FR-8.2 Multi-site portfolio view — Overall Supervisor sees all sites side by side with drill-down; traffic-light health per site.
- FR-8.3 Trends — Manpower over time, task burn-down, materials consumed, report timeliness.
- FR-8.4 Client digest — Automated weekly/monthly progress digest (summary + photo highlights) shared read-only with the client/owner; optional lightweight web portal access.
- FR-8.5 Export — Any dashboard or chart exportable as PDF/image for presentations.
Phase 9 — Document & Drawing Management [NEW]
(Required so "approval documents" and inspections have a controlled home.)
- FR-9.1 Document library — Central, permissioned library for drawings, contracts, approvals, permits, insurance certificates, survey reports.
- FR-9.2 Drawing revision control — Revision register per drawing (Rev A/B/C…), supersede/withdraw with automatic notification to site teams; offline access to current revisions on device.
- FR-9.3 Transmittals — Record of who received which document revision and when.
- FR-9.4 Upload & view — Upload from camera or files; in-app viewer for PDF and images; search by name, type, discipline.
Phase 10 — Integrations, API & Data Portability [NEW]
- FR-10.1 Calendar sync — Two-way sync of meetings and reminders with Google Calendar and Outlook.
- FR-10.2 Share-out — Email and WhatsApp share targets for reports, minutes and purchase orders.
- FR-10.3 Maps & weather — Map view of site locations (site registry); weather service integration (FR-1.9).
- FR-10.4 REST API & webhooks — Read APIs and webhooks for event push, enabling integration with accounting/ERP (e.g. pushing timesheet and PO data) and future extensions.
- FR-10.5 Backup & export — Organisation-level data export (reports, registers, documents) as a complete archive; configurable backup schedule.
8. AI Capability Summary
| Capability | Where used |
|---|---|
| Description refinement (grammar, tone, expansion) | Daily report entries (FR-1.2) |
| Voice-to-text dictation | Report entries, chat, minutes editing |
| Photo captioning suggestion | Report entries (FR-1.2) |
| Task template generation | Programme of works (FR-4.1) |
| Executive summary & progress narrative | Monthly report (FR-1.7) |
| Meeting transcription + speaker identification | Meetings (FR-6.3) |
| Minutes drafting (discussions → decisions → actions) | Meetings (FR-6.4) |
| Anomaly nudges (e.g. report mentions rain but weather was clear; entry has no photo) | Report QA before approval |
AI output is always advisory — the Report Master reviews, edits and approves before anything is final. All AI processing clearly labelled; sensitive ID data is never sent to external AI services.
9. Notifications & Reminders Summary
| Trigger | Recipient | Default timing (configurable) |
|---|---|---|
| Capture photos / start daily report | Site team | 1 hour before shift end |
| No report started (escalation) | Site + Overall Supervisor | 30 min after shift end |
| Generate & review monthly report | Report Master + Supervisor | 72 hours before planned meeting |
| Task inspection due | Assigned inspector | Morning of due date |
| Approval requested / granted | Requester / approver | Immediate |
| Snag / RFI / action item due | Assignee | 24 hours before due |
| Meeting reminder | Invitees | 1 day + 1 hour before |
| Incident logged | Supervisor + HSE | Immediate |
| Delivery / LPO status change | Procurement requester | Immediate |
10. Non-Functional Requirements
| Area | Requirement |
|---|---|
| Offline | All capture/report/attendance/chat-compose features fully offline; zero data loss on connectivity loss; sync resumes automatically |
| Performance | App cold start < 3 s on a mid-range Android; photo capture → entry saved < 1 s; monthly report generation < 60 s |
| Media handling | Client-side compression (target ≤ 1 MB per photo for sync); originals retained on device until synced; storage usage display and cleanup tools |
| Battery | GPS and camera use optimised; background sync batched |
| Usability | One-handed phone operation; large touch targets for field use; icon-driven navigation; English and Swahili UI |
| Reliability | Local database integrity checks; crash-safe write queue |
| Scalability | Support 100+ sites and 1,000+ workers per organisation without redesign |
| Compatibility | Android 9+, iOS 15+, Windows 10+, macOS 12+, modern browsers (web) |
| Accessibility | Dynamic text sizing; contrast modes |
11. Security
- TLS 1.3 for all transport; AES-256 encryption at rest (server) and encrypted local database (device).
- Biometric/PIN app lock; session timeout; remote device logout.
- Server-side authorisation on every API call (roles per §4.2).
- Tamper-evident approvals: every signature bound to user identity, device, timestamp and document hash.
- Immutable audit log (FR-0.7) retained per policy.
- Photo/GIF evidence watermarks cannot be edited within the app; edits create new versions.
12. Privacy & Compliance
- Compliance with the Kenya Data Protection Act, 2019 (and GDPR-aligned principles for international use): lawful basis, consent capture for worker ID data, purpose limitation, data minimisation.
- Worker ID images/numbers: encrypted, access-controlled, retention-limited, deletable on request/offboarding.
- Data residency option (hosting region selectable per organisation).
- Role-based visibility ensures consultants/clients see only their scope.
13. Data Model Overview
Core entities (simplified):
Organization 1─* Site 1─* DailyReport 1─* ReportEntry 1─* MediaItem
│ └─* ApprovalEvent (signature, status)
│
├─1─* Worker 1─* AttendanceRecord
├─1─* Task (tree: main/sub) 1─* Inspection 1─* ChecklistItem
│ ├─1─* SnagItem / RFI / Variation
│ └─1─* MaterialRequirement
├─1─* Supplier 1─* PurchaseOrder 1─* Delivery
├─1─* Meeting 1─* Transcript 1─* Minutes 1─* ActionItem
├─1─* ChatChannel 1─* Message
├─1─* Incident / ToolboxTalk / SafetyInspection
└─1─* Document (revision-controlled)
User (role per org per site) — AuditEvent (global)
14. Key Workflows
Daily report lifecycle
Capture (photo/GIF + rich-text entry, offline OK) → contributors add entries → Report Master compiles → (AI refine/QA) → approve + sign → lock & version → auto-share (chat/email) → sync to cloud
Multi-site compilation
Each site submits → Overall Supervisor opens "Consolidated Daily" → selects sites/date → app generates per-site sections + executive summary → missing sites flagged/chased → export PDF/Word
Monthly report
Auto-accumulate approved dailies + HSE/procurement/progress stats → AI drafts executive summary → Report Master reviews/edits → export PDF/Word/PowerPoint → present at meeting
Task approval
Task in progress (evidence photos) → internal inspection (checklist + sign-off) → external consultant inspection where assigned → Approved / Rework → status board updated → links to daily report entry
Procurement
Material schedule shows shortfall → requisition → LPO raised → approval chain → order → delivery captured & verified → schedule and budget updated
Meeting
Schedule (agenda + pre-reads) → record + transcribe (speaker ID) → AI minutes draft → edit & approve → share → action items tracked → unresolved items carry forward
15. Traceability — Original 22 Items → This Specification
| Original item | Covered by |
|---|---|
| 1. Picture/GIF of task | FR-1.1 |
| 2. Description + AI refine + rich text | FR-1.2 |
| 3. PDF/Word generation | FR-1.3 |
| 4. Collaboration + Report Master verification | FR-1.4 |
| 5. Multi-site compiled reports | FR-1.5 |
| 6. Reminder 1 h before end of work | FR-1.6 |
| 7. Monthly accumulation | FR-1.7 |
| 8. Monthly reminder 72 h before meeting | FR-1.8 |
| 9. Scan casual worker IDs + department | FR-2.1 |
| 10. Workers table by day/station | FR-2.2 |
| 11. Chat, share reports/approvals/minutes | FR-3.1, FR-3.2 |
| 12. Task templates by site nature | FR-4.1 |
| 13. Full project task itemisation (incl. mid-project) | FR-4.2 |
| 14. Timelines + material quantities | FR-4.3 |
| 15. Task IDs + internal/external inspection | FR-4.4, FR-4.5 |
| 16. Material quantities + sourcing | FR-5.1 |
| 17. Hardware/agent/factory directory | FR-5.2 |
| 18. Schedule/reschedule meetings | FR-6.1 |
| 19. Project directory | FR-6.2 |
| 20. App listens to meeting | FR-6.3 |
| 21. Generate minutes | FR-6.4 |
| 22. Share minutes | FR-6.5 |
All additions introduced by this document: Phase 0 (foundation), FR-1.9–1.14, FR-2.3–2.6, FR-3.3–3.6, FR-4.6–4.9, FR-5.3–5.6, FR-6.6–6.9, and Phases 7–10 in full.
16. Release Roadmap
| Release | Content | Rationale |
|---|---|---|
| R1 — MVP | Phase 0 + Phase 1 (FR-1.1–1.8, 1.14) | Core value: verified daily reports, multi-site compilation, monthly packs |
| R2 | FR-1.9–1.13 (site-diary data) + Phase 2 (attendance) + Phase 3 (chat) | Completes daily field operations |
| R3 | Phase 4 (programme & approvals) + Phase 5 (procurement) | Planning and materials control |
| R4 | Phase 6 (meetings) + Phase 7 (HSE) | Governance and safety |
| R5 | Phase 8 (dashboards/client portal) + Phase 9 (documents) + Phase 10 (integrations) | Oversight, control and ecosystem |
Indicative effort: R1 is the critical path; subsequent releases can proceed in parallel streams once the Phase 0 platform exists.
17. Out of Scope (v1)
- Full payroll processing and statutory deductions (app exports payroll-ready data only)
- Accounting/bookkeeping (via API integration instead)
- BIM/CAD authoring or editing (documents are viewed, not edited)
- Equipment telematics / IoT sensor integration
- Client-side internet-free AI (cloud AI with graceful offline degradation only)
18. Open Questions
- Hosting model — regional cloud vs. on-premise for larger contractors?
- Commercial model — per-user subscription, per-site, or freemium?
- Preferred AI provider and budget for LLM/transcription usage?
- Priority document format — is Word parity with PDF required on day one, or PDF-first?
- Does the client/viewer web portal need to be in R1 or can it wait for R5?
- Retention period for worker ID data (legal/HR guidance)?
- Should worker attendance include biometric verification (with its additional legal requirements), or photo/QR sufficiency confirmed?
19. Glossary
| Term | Meaning |
|---|---|
| Report Master | Person responsible for preparing, verifying and approving site reports |
| Overall Supervisor | Manager consolidating reports from multiple sites |
| LPO | Local Purchase Order |
| RFI | Request For Information (formal query to a consultant/designer) |
| Snag list / Punch list | List of defects to be corrected before acceptance |
| Variation | Contracted change to scope, cost or time |
| HSE | Health, Safety & Environment |
| NCA | National Construction Authority (Kenya) |
| Programme of works | The scheduled breakdown of all project activities |
| Geofence | Virtual GPS boundary used to verify presence on site |
| DPA 2019 | Kenya Data Protection Act, 2019 |
End of document — SiteRipoti Scope v1.0. Feedback from stakeholders to be incorporated in v1.1.