Repository navigation
Ticket Checklists & SOP Templates — Proposal & Working Implementation #138
Replies: 5 comments 1 reply
|
Dear @srinivasansanthosh First of all, may I say I am completely blown away by the work that you have done - it is absolutely stunning work and I am deeply moved that a friendly stranger on the internet would make such a contribution. Thank you from the bottom of my heart! I agree it should be its own module which can then be integrated with other modules e.g. tickets, tasks, knowledge, workflow etc. As it happens I have decided against a community addon/plugin model for the time being as I can envisage issues with vetting code, ensuring compatibility, schema conflicts etc. Great features should be in for everyone! What I would love to do is incorporate your code into FreeITSM 2.0.0 but because I don't have much experience in a situation like, this I would like to check a few things first!
Thank you - this is incredibly exciting! Ed |
|
Hey Ed, Glad to contribute! My biggest disclaimer: I am no core techie. I am first and foremost a finance guy dabbling with basic code for reporting and automation—most of this comes from hands-on operational experience and learning what’s needed along the way :-) I have also been overseeing the IT department in my org for the last many years. I came across freeitsm when I needed a very basic open source that was snipeIT++ but not as exhaustive as GLPI. This fit in well! This checklist was a pain point I had with my team that I wanted to solve before implementing it in the org. Hence the weekend project for customization. On the license, I am more than happy for it to remain under the MIT License for everyone to use freely. On the credits, "System->Contributors card" in the admin UI is a wonderful idea! It’s a great way to recognize community members as the project grows, while keeping the platform transparent. I am just as thrilled seeing this go into a tool that people actually use :-). You can credit me as Santhosh Srinivasan (Sandy) I’d be honored to be featured in the Deep Dive section! Let me see if I can provide a brief background on the real-world operational challenges this solves, the design philosophy, and walkthrough notes to make writing the article straightforward for you Let me know the best way to share the files. Sandy |
|
I reckon the PR is the best way because that makes it super easy to see which files have changed. Thank you so much! If you reach out to me on ed@freeitsm.co.uk we can figure out a Deep Dive article! Hooray! |
|
Hi Ed, Following up on our earlier discussions around the Checklists module. First off, I really appreciate your perspective on the "Warn & attribute over hard block" philosophy. You were completely right that hard-blocking every checklist by default can easily trap analysts in unclosable tickets during fast-moving incidents. The confirmation prompt paired with an automatic timeline audit note is a much cleaner default than a blunt block. And making it a configurable setting solves many scenarios. The Practical DilemmasWhile working through real-world operational flows and reviewing the codebase, three clear areas for improvement emerged:
Solution: Granular Gating, Flexible Policy & Clean TerminologyTo solve this, I've implemented a comprehensive update across the module: 1. Per-Template Closure Gate (in Checklist Template Editor)When creating or editing a checklist template, the author selects the closure mode:
2. Visual Indicators for Critical Checklists
3. Master Company Policy Override (in Tickets Settings)Under Tickets → Settings → Checklists:
4. Tickets with No Attached Checklist (Configurable Enforcement)Under Tickets → Settings → Checklists, organizations can configure how tickets with no checklist attached behave at closure:
5. Clean Terminology Standardization
Implementation Details & House Style Compliance
ScreenshotsChecklist Template Editor showing Closure gate dropdown (Standard vs Critical) Ticket View and Attach Checklist modal showing red lock icon on Critical checklists Tickets Settings showing "Checklist Close Gate" and "Closing without a checklist" sections Outstanding Item: Scope Alignment (Tickets vs. Tasks)One loose end in the module is that templates can be marked as applying to Tasks, but no task execution UI or service layer exists yet.
Question for us: Before opening a formal PR, I wanted to share this with you to ensure it aligns closely with the overall product direction and house style:
The work is pushed to my fork if you'd like to take a look at the code: Would love to hear your thoughts! |
|
Hi Sandy @srinivasansanthosh! Sorry this reply is so late - your round-two work deserved a much quicker answer. Round two shipped in FreeITSM 2.5.0. Per-checklist closure gating (Standard / Critical), the company-wide "block all" floor, the "closing with no checklist" rule, and the move to "Checklist" everywhere are all in, exactly as you designed them. I made a few changes on the way in, and wrote them up properly rather than just leaving them in the diff: The short version: a workflow's closure note was hard-coded to analyst 1 (so it could be lost, or stamped with a real colleague's name), the two halves of the gate read the setting for different companies, and the padlock tooltip could never translate because a loop variable called On your Tasks question: I took your concern seriously and went with a middle path. Checklists on tasks are now built - in the next release, 2.10.0 - but behind a switch that is off by default (Tasks -> Settings -> Checklists), the same way time recording works. A team that would mix up subtasks and checklists simply never sees it; a team doing procedure-led work (patching, decommissions, monthly checks) can turn it on. When it's on, a task or subtask gets a Checklist section and behaves just like a ticket: attach a checklist that applies to Tasks or Both, tick its steps, and completing the task follows your Standard / Critical rules from the same service - on every route (the status box, dragging the card into Done, ticking a subtask, and the API). Repeating tasks get a fresh copy each time. One thing we both missed in round one: while building the task version I found that The details are here:
Thank you again - three rounds in, this has become one of the most solid parts of FreeITSM. Unless there's anything else you'd like to raise, I think this thread has done its job and we can close it. Ed |



Uh oh!
There was an error while loading. Please reload this page.
Hi @edmozley and community,
First off, great work on the project. The regular releases and overall simplicity of the platform make it a pleasure to work with.
I recently built a Ticket Checklists & SOP addon for our setup and wanted to share how it works and explore whether this makes sense as an upstream contribution.
The Problem: Operational SOPs and Why "Tasks" and "Knowledge" don't fit
In day-to-day service desk operations (such as employee onboarding/offboarding, server commissioning, firewall rule additions, or standard incident triage), analysts need to follow strict, repeatable Standard Operating Procedures (SOPs).
Currently, an analyst has two places to turn, but neither quite fits this workflow:
Why the Knowledge module doesn't make the cut:
Why the Tasks module doesn't make the cut:
What I built: In-Ticket Checklists & SOP Management
To solve this operational need, I designed and built an interactive Checklists & SOP Engine integrated directly into the workspace:
Dedicated Module to Configure Checklists & SOPs:
Dual-Scope Attachment (Tickets, Tasks, or Both):
Multi-Checklist Support per Ticket:
Smart Suggestions & Keyword Search:
Strict Closeout Prevention (Mandatory Gating):
Analyst Input Capture on Step Completion:
Automated Audit Trail via Ticket Notes:
Workflow Engine Integration:
Progress Bar & Visual Status:
What I am yet to complete :
Screenshots:
01. New Module in Waffle Menu

02. Landing Page

03. Add New Template Modal

04. Settings Page

05. Base integration in Checklist. No suggestions found based on ticket title

06. Suggestions identified based on ticket title and when no SOP already attached

07. In Ticket view Post attach

08. In Ticket SOP Pop Out modal

09. In Ticket Attach modal with key word search

10. Notes Captured for Audit Trail

11. New Action in Workflows for SOP attachment

Architectural Paths Forward:
I see three ways this could fit into the ecosystem and would welcome your thoughts:
I already have the working code, database migrations, and clean Docker installer ready to share.
I would love to hear your thoughts, Ed, and what the community thinks!
All reactions