Demo data generator for the Grievance Redress Mechanism. Creates both story-based tickets linked to specific personas (Juan Dela Cruz, Ibrahim Hassan, Fatima Al-Rahman, Ahmed Said, David Martinez, Maria Santos, Rosa Garcia, Carlos Morales) and volume tickets using scenario templates. Simulates realistic ticket workflows including resolution paths, escalations, and timeline distribution. Uses Faker for locale-aware random data (non-deterministic — each run produces different volume tickets).
- Generate story tickets for specific demo personas that align with
spp_mis_demo_v2andspp_case_demo - Generate volume tickets using YAML scenario templates or built-in fallback scenarios
- Simulate ticket workflows: resolution notes, stage transitions, escalations, and assignments
- Link tickets to beneficiaries, programs, and teams with configurable distribution
- Control resolved vs. unresolved ratios, severity distribution, and timeline spread
- Backdate ticket creation and workflow events across a configurable time range
| Model | Description |
|---|---|
spp.grm.demo.generator |
Transient model containing generation logic and workflow simulation |
spp.grm.demo.wizard |
Transient model inheriting from generator for wizard UI configuration |
After installing:
- Ensure registrants exist (run
spp_demostory generation first) - Verify GRM ticket stages and channels are configured in
spp_grm - Optionally install
spp_demo_scenariosfor extended scenario library
- Menu: Helpdesk > Configuration > Generate Demo Data
- Wizard: Configure story vs. volume generation, ticket count, time range, and resolution percentages
| Group | Access |
|---|---|
spp_security.group_spp_admin |
Full CRUD |
The generator creates spp.grm.ticket records with:
- Story tickets: 8 predefined personas with specific scenarios (payment issues, eligibility inquiries, service requests)
- Volume tickets: Scenario-based tickets distributed over time with realistic progression
- Ticket categories: Payment Issues, Eligibility Questions, Service Delivery, Information Requests, Data Update Requests, General, Complaint, Feedback
- Workflow progression: Resolution notes, stage transitions, escalation notes, and user assignments with backdated timestamps
Story personas align with spp_mis_demo_v2 and spp_case_demo for
cross-module demos. Tickets can reference programs and beneficiaries,
and story tickets include escalate_to_case flags for GRM-to-case
workflow demonstrations.
spp_demo, spp_grm, spp_grm_registry, spp_grm_programs,
spp_security, faker (Python)
Table of contents
- Initial migration to OpenSPP2
Bugs are tracked on GitHub Issues. In case of trouble, please check there if your issue has already been reported. If you spotted it first, help us to smash it by providing a detailed and welcomed feedback.
Do not contact contributors directly about support or help with technical issues.
- OpenSPP.org
Current maintainers:
This module is part of the OpenSPP/OpenSPP2 project on GitHub.
You are welcome to contribute.





