Browse docs
Training & Qualifications
Structured employee development
The Training App gives configured jobs one shared place for courses, scheduled sessions, enrollment, results, qualifications, employee records, and audit history. It is a native Jobs Base tablet app and also works on supported external tablet surfaces.
| Area | What it provides |
|---|---|
| Course catalogue | Reusable courses with codes, descriptions, duration, capacity, grade requirements, prerequisites, and optional qualifications |
| Sessions | Scheduled dates, locations, instructors, participant limits, notes, and lifecycle states |
| Enrollment | Self-enrollment, approval, waitlists, cancellation, attendance, results, notes, and scores |
| Qualifications | Automatic awards after a passed course plus manual issue and revocation workflows |
| Employee records | Per-employee training history and active, expired, or revoked qualifications |
| Audit log | Persistent history for catalogue, session, enrollment, and qualification actions |
Course and session workflow
- An authorized employee creates an active course in the catalogue.
- The course defines its minimum grade, prerequisite qualification codes, trainer grades, and the qualification awarded after passing.
- An instructor schedules a session with a start time, location, capacity, and assigned instructor.
- Employees enroll themselves or are reviewed by an authorized trainer.
- The trainer records attendance and the final result after the session starts.
- A passed result issues the configured qualification in the same database transaction.
When a place becomes available, the oldest waitlisted enrollment is promoted. Sessions and courses with history are archived or cancelled instead of silently deleting referenced records.
Granular Boss Menu permissions
Training permissions appear as their own group in the Jobs Base Boss Menu. The default IDs can be
changed in Config.Training.permissions.
| Default ID | Capability |
|---|---|
1001 | Schedule and manage the employee's own sessions |
1002 | Manage the course catalogue |
1003 | View employee training records |
1004 | Permanently delete eligible training data |
1005 | Manage and assign every training session |
1006 | Review participant enrollments |
1007 | Record attendance and results |
1008 | Issue qualifications manually |
1009 | Revoke qualifications with a reason |
1010 | View the complete audit log |
Grades with the global ALL permission inherit every Training capability. Other grades can be
configured individually without granting catalogue, records, results, or deletion access together.
Configuration
Config.Training.enabled controls the complete feature. Config.Training.appJobs accepts job or
job-group keys that may use the app. Global defaults cover duty requirements, history and upcoming
date windows, reminders, cooldowns, self-enrollment, approval, and default capacity.
The Job Configurator exposes per-job Training settings for:
- Enabling the app
- Requiring duty
- Allowing self-enrollment
- Requiring enrollment approval
- Default session capacity
- Upcoming schedule window
Tablet app restrictions configured for a grade still apply to the training app key.
Security model
Every read and mutation rebuilds the actor context on the server from Sky_Jobs.PlayerCache. The
client does not choose its job, grade, identifier, duty state, or capabilities. Mutations additionally
use ping checks, per-player cooldowns, an allow-listed action table, server-side state transitions,
parameterized SQL, and serialized database transactions.
sky_jobs_base:training:request actions from
another client resource.