This project is not covered by Drupal’s security advisory policy.
Keeps a record of who is accountable for each LocalGov Mail mailbox, what service it is for and its data protection details, and will not add a new mailbox until those details are given.
Triage Fleet is part of LocalGov Mail, an AI-assisted email triage service for UK councils that runs on Drupal and reads Microsoft 365 mailboxes. A council may run dozens of mailboxes (housing, benefits, social care and so on), and data protection law expects it to know who owns each one, why it holds the data and which Data Protection Impact Assessment (DPIA) covers it. This module stores those facts as a mailbox profile alongside each mailbox, keeps a full history of changes, and makes sure no new mailbox is switched on without them. Profiles never contain any email content.
Features
- A profile for every mailbox. A revisionable content entity (
triage_mailbox_profile) is created automatically for each LocalGov Mail mailbox, including mailboxes that existed before the module was installed. - Operational details, edited by the mailbox's own managers: service name, service area, purpose, and optional shorter retention for that mailbox (unreviewed mail kept 1 to 7 days, and a grace period in hours after review).
- Accountability and governance details, edited only by information governance staff or the DPO: the Information Asset Owner's name and role (they do not need a LocalGov Mail account), lawful basis, DPIA link and scope, date the DPIA was confirmed and when it is due for review, whether special category data or vulnerable people are expected, and the safeguards in place.
- Governance gate for new mailboxes. The staff mailbox setup, the admin configuration wizard and the JSON configuration API (
POST /api/triage/config/mailbox) all refuse to create a mailbox without the Information Asset Owner and their role, service area, lawful basis and DPIA link. The API answers422with field-level errors. Mailboxes arriving through configuration import or recipes are treated as already checked and get a profile without the gate. - Audit history. Every change is saved as a revision with the user who made it, and a reason is required when governance details change. Removing a mailbox archives its profile rather than deleting it, so the history survives.
- Retention that can only get shorter. Per-mailbox retention is checked against the site-wide limits in Triage Common and can never exceed them. The LocalGov Mail purge job uses the mailbox value when one is set.
- DPIA review reminders. A daily cron check writes an entry to the mailbox log 30 days before a DPIA review is due, and again once it is overdue.
- Placeholders for computed risk. Read-only fields for a sensitivity level and an EU AI Act risk level, which later LocalGov Mail releases fill in.
Use this module if you run LocalGov Mail and need to show your Data Protection Officer, auditors or Information Commissioner's Office evidence of who owns each mailbox and how its personal data is governed.
Post-Installation
- Install the module with Composer (
composer require drupal/triage_fleet) and enable it withdrush en triage_fleet. On install, every existing mailbox gets an empty profile, and thetriage_igrole (if present) is given the new permission Edit mailbox governance details. - Check permissions at People > Permissions. Edit mailbox governance details (
edit triage governance) is a restricted permission meant for information governance staff and the DPO. Reading profiles needs View the Triage fleet (from Triage Common) or manager rights on that mailbox. - The next time someone adds a mailbox, the setup and wizard forms show a new Governance step asking for the Information Asset Owner, their role, service area, lawful basis and DPIA link.
- Complete the profiles of existing mailboxes through the JSON API:
GET /api/triage/fleet/{source}/profilereturns the profile and the fields you may edit, andPOSTto the same path with a CSRF token header and a body of{"values": {...}, "reason": "..."}saves changes. A dashboard view of all profiles is planned for a later release. - To change the list of service areas, edit the
triage_fleet.settingsconfiguration (service_areas), for example withdrush config:edit triage_fleet.settings. The defaults are housing, benefits, revenues, adult and children's social care, environment, planning, customer services and other. - Make sure Drupal cron runs daily so DPIA review reminders appear in the mailbox log.
The module adds no content types and no text formats.
Additional Requirements
- Drupal 11.3 or later, with the core Datetime, Link and Options modules.
- Triage Common (mailbox access checks, retention settings and the mailbox log).
- Triage Mail (the mailboxes that profiles describe), which in turn needs Mailbox Provider and OAuth Provider.
- Microsoft 365 mailboxes connected through Microsoft Graph, as Triage Mail requires.
Recommended modules/libraries
- Triage Mail Assistant for AI-drafted replies in the mailboxes these profiles describe.
- Service Bus Provider to run LocalGov Mail's AI tasks through queues.
Similar projects
We know of no other Drupal module that records information governance details for mailboxes. General records-management or GDPR modules track consent and data requests on a website; Triage Fleet instead records the accountability facts (owner, lawful basis, DPIA) for each mailbox LocalGov Mail processes, and enforces them when a mailbox is added. It only works with LocalGov Mail.
Supporting this Module
Bug reports, feature requests and patches are welcome in the issue queue. Councils interested in using or funding LocalGov Mail are welcome to get in touch through the project maintainers.
Community Documentation
- The module's
README.mddescribes the profile fields, the governance gate and the JSON API. - Related projects: Triage Common, Triage Mail, Triage Mail Assistant, Mailbox Provider, OAuth Provider, Service Bus Provider.
Project status
Under active development on the 1.0.x branch. Coming next: a fleet dashboard showing every mailbox's profile and warnings, a computed sensitivity score, and bulk onboarding of many mailboxes at once.
Project information
- Project categories: Automation
- Created by david bishop on , updated
This project is not covered by the security advisory policy.
Use at your own risk! It may have publicly disclosed vulnerabilities.
