DRAFT - Existing Module Technical Evaluations
Overview
This page defines the TC's process for evaluating already-released FOLIO modules against current technical criteria. It is not release-gating; it is an improvement and visibility process that gives TC and module owners a shared baseline for tracking technical gaps over time. The process is expected to evolve with experience.
Guiding Principles
Existing module evaluation is for improvement, support, and visibility into technical gaps, not for removing modules from releases. Participation remains best effort.
Findings should use improvement-oriented language such as "meets criteria" and "needs improvement" rather than describing a module as having "failed."
Teams and Product Owners decide what remediation work happens and when. TC tracks progress with professional courtesy rather than enforcement.
Existing modules should be evaluated against the TC technical criteria as the baseline, with room for case-by-case adjustments when TC agrees they are warranted.
The default is to document criteria gaps rather than grandfather them away, unless TC decides a specific exception is warranted.
Queue and Cadence
The queue is the prioritized list of evaluation Sub-tasks in https://folio-org.atlassian.net/browse/TCR (component
Existing Module Evaluation). TC co-chairs own the queue and its ordering; parent Tasks act as persistent module anchors and are not themselves the queue. Sub-tasks are created when a cycle is next up, not pre-created for every module.The current target is to shoot for about 10 reviews per year, while recognizing that actual throughput will depend on reviewer logistics and capacity. The provisional SLA for a single evaluation is 3 weeks.
Sub-task order should prioritize core or high-impact modules first. The current direction is to work application by application, starting with https://github.com/folio-org/app-platform-minimal , and TC will set the next application focus when that area completes. Re-evaluation is a mix of on-demand (specific concern, major version, new or changed criterion) and queue-driven (the module coming back up in the ordering). A new Sub-task under the persistent parent Task is what opens a new cycle; there is no fixed annual schedule.
TC may use additional community reviewers to increase capacity, provided conflicts of interest and review logistics are handled appropriately.
Process Summary
Keep the https://folio-org.atlassian.net/browse/TCR queue prioritized and current so teams can see what is coming.
Assign a reviewer, create the module's persistent Task in
TCRif it does not already exist (component:Existing Module Evaluation), open an evaluation Sub-task for this cycle, and notify the Product Owner at least 3 weeks before the review begins.Evaluate the module against the current TC criteria and commit an evaluation writeup to https://github.com/folio-org/tech-council/tree/master/module_evaluations showing where it meets criteria and where it needs improvement. Link the writeup from the evaluation Sub-task.
Review the findings with the team, then create or link Jira follow-up work as needed.
Close the Sub-task once the evaluation writeup is merged and follow-up work is tracked.
Criteria, Tracking, and Follow-up
Existing module evaluations should use the TC module criteria as the baseline. Case-by-case adjustments are possible when TC agrees, but the default is to document gaps rather than grandfather them away.
Use the existing https://folio-org.atlassian.net/browse/TCR Jira project with a component called
Existing Module Evaluationto separate this work from new-module submissions.Each module gets one persistent Task in
TCRthat lives indefinitely and accumulates evaluation history. Each evaluation cycle is a Sub-task under that Task; the Sub-task tracks lifecycle status and links to the writeup infolio-org/tech-council/module_evaluations, which is the source of truth for findings. Remediation work is linked from the responsible team's own project. This uses only the existingTCRissue types — no new types or workflow changes are required.The result of an evaluation cycle is a merged evaluation writeup plus linked follow-up work, not a release decision.
If a team cannot prioritize finding right away, that is handled with professional courtesy.. A long backlog is not itself a concern. If outreach is not productive, TC can share that with the Product Council for visibility and proceed using publicly available information so the cycle is not blocked.
TC should periodically report aggregate process value, such as how many modules were reviewed and what kinds of issues were discovered and addressed.