Platform Upgrades v5.0.0

Major Updates

  • Completion of long overdue upgrade to Rails v5.2
  • PostgreSQL v16
  • CI Migration to GitHub Actions Codecov:
  • 1800+ new automated tests: coverage 81.4% (+3.1%)

What's Next

  • We're making it faster by replacing some old tech
  • We're simplifying the design to make it easier...
  • ... which will also make it look nicer

From a developers perspective

The upgrade to Rails 5 has taken several years due to the complex restructuring of the codebase to make it compatible and the challenge og competing workflows. Extensive work has been done on parallel staging and improved test coverage to ensure that this upgrade goes smoothly. The past few months have seen live running of both versions, meaning ongoing fixes had to be deployed to both platforms, which was difficult at times.

However work has been done that has set the scene for rapid iteration; we are aggressively targeting versions 6 and 7 in Q2 with Rails 8. Giving us the opportunity to overhaul the user interface, currently running on a dated Bootstrap theme with heavy customisation. To a more modern and lightweight minimalist approach ideally suited to mobile devices.

We are planning to integrate search into the PostgreSQL database layer, taking advantage of PostgreSQL 16 native full-text search, and removing dependency on an outdated Elasticsearch layer. This should improve search accuracy and eliminate any caching issues caused by maintaining two layers.

We will also be looking to take advantage of some of the features that modern Rails has to offer; ActionJob's native background jobs remove external dependencies on Redis and Sidekiq, further simplifying the architecture, and utilising HotWire Turbo and ActionCable, providing tools for faster inline page response, bringing desktop application-level performance to the web.

There's a lot planned, hope you like it!

Maintenance Release 4.9.1

Added

  • [#1643] show upload, copy, and bucket details on PDF export records
  • [#1240] enable trim_whitespace processor for ICD code elements
  • [#1077] autopopulate position fields on forms
  • [#1040] include trust details in "portfolios" export
  • [#1039] add Forensic / LD dual specialty
  • [#1027] add ICD code validation
  • [FOM] added CbD subtype / summary page

Changed

  • [#1248] reorder changelog entries by issue number (descending)
  • [#1109] upgrade RDS PostgreSQL from 13 to 16

Fixed

  • [#1685] fix help page showing a 500 error
  • [#1683] fix starting a new review failing with a 500 error when a report-type scheme is selected
  • [#1613] fix MSF feedback rendering failing when parentresponse is nil
  • [#1545] fix date fields displaying text at bottom of input box in Safari
  • [#1543] fix PDF exports failing to load programme logo
  • [#1538] fix PDF export QR codes and links showing wrong domain for non-RCPsych programmes
  • [#1511] fix slow page load on import lines view by adding pagination
  • [#1432] fix outstanding nominations incorrectly including expired nominations
  • [#1427] fix scheduled database backups failing after PostgreSQL 16 upgrade
  • [#1382] fix user names wrapping incorrectly in panel views
  • [#1313] fix PDP item creation failing with "competency cannot be blank" validation error
  • [#1300] fix supervisor reports, PDP items, and assessments failing to save required fields (framework, post, competency)
  • [#1250] fix diagnosis code fields rejecting valid codes with leading/trailing spaces or when left blank
  • [#1145] ICD code validation no longer blocks editing WPBA/Evidence after form submission
  • [#1076] position displays 'Other' instead of user-entered text
  • [#1051] add portfolio archive option to imports dropdown
  • [#1045] fix regressed behaviour for printing pdfs of forms
  • [#1042] post labels not displaying correctly on career history page in chrome browser
  • [#981] fix post calendar view not ordering posts correctly
  • [#976] skip validation when reassigning folders
  • [#913] fix error when adding post to multiple folders
  • [#466] fix "Other" organisation lookup failing when multiple geographic types exist

Release 4.9

Major Enhancements

  • ARCP View improvements, posts visualisation, decision aid

Added

  • [#953] import cohort portfolios
  • [#1012] new N code 23 on ARCP Outcome form for trainees in multiple specialities

Changed

  • refactored layout for portfolio "quick actions"
  • navigation updates to improve consistency for "view" actions
  • [#1011] display "(Being Assessed)" alongside corresponding specialty when viewing ARCP outcome form

Fixed

  • [#887] notification inconsistent error. Now states correct owner of notification to user, instead of themselves
  • [#892] fix caching issue where ARCPs page would sometimes not show trainee's name
  • [#966] change view option on submitted ARCPs that are approved
  • [#972] fix missing translation on organisation view action
  • [#973] fix wording in spec sheet
  • [#979] [RCPsych] issue with viewing/editing PSR for 2016 curricula
  • [#985] fix ARCP not indexing on form folder
  • [#986] fix ios clear date field bug
  • [#1004] management role showing only current roles
  • [#1011] fix issue with "Being Assessed" checkbox not persisting on ARCP form
  • [#1015] allow DA/HoS to re-open submitted/approved ARCP forms
  • [#1023] fix broken link to ICD-10 browser on "Daig F:" (WPBA F-Code) fields

Release 4.8

Major Enhancements

  • [RCPsych] Integrated Curriculum Coverage on PSR
  • [RCPsych] School view of exams
  • [RCPsych] Programme view of exams

Added

  • [#197] calendar view of Posts on career history page
  • [#847] non sensitive management role info in user view when searching other portfolios
  • [#867] added key to visualisation table on career history for colours
  • [#835] Generic JavaScript Error message. Aimed for when visualisation errors occur but will work for a standard error also.
  • [#876] added test coverage for fix #851
  • [#937] add send reset password functionality to more intuitive Change Password nav for admin
  • [#962] add school filter to ARCP filtering side bar
  • added consultant portfolio type
  • [RCPsych] added exam diets for 2025 imports

Changed

  • [#738] make temporary supervisor access default end_date to 1 week after creation date
  • [#795] [RCPsych] allow post selection when mapping to Active PDP
  • [#834] change trainee specific working on setup and suspension warnings
  • [#821] visualisation of career history improved UI, square edges for multi-year posts
  • [#878] LTFT fields changes for standardisation of data in ST forms
  • [#895] general parent child elements on form are cleaned and standardised for data collection
  • [#932] formatting on HLO competency table
  • [#956] custom datepicker fields to built in type date fields
  • make nomination rejection reason mandatory
  • improve nomination confirmation/rejection flow
  • allow portfolio type to override Programme defined assessment levels
  • [RCPsych] only transition specific portfolio types

Fixed

  • [#636] fix duplication on assessment view on transitioned users
  • [#765] fix issue preventing completion of Post Activities
  • [#769] fix error when trying to create Post Objective without HLO
  • [#771] fix validation error when trying to create a new document activity
  • [#775] [FOM] fix issue with incorrect default PDP view
  • [#774] [RCPsych] fix issue preventing new Post Objective for different specialty
  • [#775] [RCPsych] fix error viewing PSPDP
  • [#777] [RCPsych] fix issue causing PSPDP to report 'could not determine framework'
  • [#780] fix 500 server error caused by trying to display errors when creating a new review that has no errors
  • [#782] fix display issue causing KSB text to incorrectly show inline when mapping to 2016 curricula
  • [#785] fix 500 server error when review competency has missing name
  • [#798] [RCPsych] fix issue where PSPDP would show 'no competencies linked' for Post Objectives
  • [#799] [RCPsych] fix n/0 display issue on PDP card for HLO linked PDP Items
  • [#802] [RCPsych] fix issue with HLO4 on LD 2016 curriculum coverage page
  • [#807] fix caching issue that sometimes prevents trainee name displaying on ARCP card
  • [#807] fix issue where chair of panel cannot see ARCP's for approval
  • [#811] fix issue where Activities "Last Updated" was being reverted to Review/WPBA's "Last Updated"
  • [#814] fix issue where deleted PDP coverage had not direct, offer user to delete coverage or convert to direct
  • [#815] fixed off by 1 error when calculating MSF duration
  • [#820] fixed not specified on extended absence post card, shows useful info: Notes and Absence Type
  • [#823] [RCPsych] fixed css glitch on chrome/edge preventing PSR completion
  • [#827] [RCPsych] fixed default Post issue when creating new PDP item for previous Posts
  • [#828] fixed save progress inline freezing on Reports
  • [#829] fix scroll alteration on number input fields (affecting chrome users)
  • [#832] fix inconsistent nomination count when rejection reason not given
  • [#832] fixed issue preventing un-map toggle working
  • [#838] issue when scoped mapping is not deleted when direct mapping exists
  • [#851] can delete duplicate PDP when user error creates two PDPs
  • [#855] issue where deleting an activity would sometimes leave behind original WPBA/Report request
  • [#821] fixed Post id showing in career history, now shows the title if the Post has no category
  • [#873] fixed WPBA clinical evidence edit. Can't delete them from submitted, can't remove from submitted, can't edit from evidence
  • [#879] warning show in yellow not success green
  • [#883] fixed deleted evidence indexing syncing on evidence view
  • [#886] fix truncated decimal values on form overview when true value is a decimal
  • [#890] fix validation when editing previously submitted form activities
  • [#896] fix foreign key association preventing error on Posts with linked review
  • [#910] [RCPsych] fix offsite backup timeout issue
  • [#912] fix issue where indexed elements where not being processed correctly
  • [#923] fix issue where transition date was incorrectly being updated by new folder creation
  • [#929] fix issue preventing deletion of certain activities
  • [#931] fix table layout expanding out of screen for many evidences on ARCP form partial
  • [#940] [RCPsych] fix referential integrity issue withe RCPsych backup data
  • [#939] fixed viewing other accounts showing information for Organisations or Programmes
  • [#943] fix overflow on file uploads distorting the table on the interface
  • [#976] fix error when automatically re-assigning evidence to older based on date
  • [#981] chronological ordering of posts on calendar visualisation
  • fixed 500 server error when reporting errors on PDP Items
  • ignore trailing whitespace when confirming nomination email

Maintenance Release 4.6.1

Added

  • [RCPsych] Eating Disorder Credential Programme & Curriculum
  • [RCPsych] portfolio advisor for private posts on PSPDP view
  • [RCPsych] new addictions WPBAs
  • [RCPsych] new Psychotherapy SAPA WPBA
  • [RCPsych] remote backups for DR
  • [#704] allow admin to move folders between portfolios
  • [#712] validate GMC number format for new registrations
  • [#723] level and specialty fields added to portfolios export
  • [#725] status fields added to ARCP export
  • [#728] portfolio levels fields added to portfolios export

Changed

  • [RCPsych] psychotherapy WPBA updates
  • [RCPsych] PSPDP rating warning specifies supervisor
  • clean up formatting on management role pages
  • [#691] sort PDP Items by title when mapping to 'Active PDP'
  • [#696] do not show ARCP approvals in O/S tasks if portfolio is archived

Fixed

  • [#655] fix error when editing completed PSR
  • [#661] fix post validation error when submitting PSR
  • [#664] fix regression in #661 causing incorrect menu to display when viewing career history
  • [#665] fix issue where default PSPDP view was not using current post correctly
  • [#667] fix issue where only first 10 posts showing in PSPDP post selector
  • [#668] fix issue with deleted PDP items affecting PSPDP display
  • [#670] fix error why trying to update post on PSR form
  • [#672] fix PDP proforma dropdown for non-transitioned portfolios
  • [#675] fix issue editing PSR post
  • [#676] fix error submitting PSR
  • [#678] fix issue editing folders
  • [#680] fix issue with supervision meeting's available curricula
  • [#687] fix error editing PSPDP item in legacy portfolio
  • [#694] fix issue where assessor position not displaying correctly
  • [#707] fix issue preventing mapped items showing when printing curriculum coverage page
  • [#712] fix default PSPDP view when no current post

Release 4.6

Major Enhancements

  • [RCPsych] 2022 Curriculum Updates

Added

  • [#595] portfolio advisor when specialty is not set
  • [#599] export portfolios to csv for DA in organisation view

Fixed

  • [#521] configure suggested followup proformas by activity type
  • [#592] new training level button not showing on empty portfolio card
  • [#597] new post activity not showing immediately after creation
  • [#601] incorrect validation of specialty when creating a new CT folder
  • [#602] [FOM] error when trying to sign up for a new account
  • [#603] issue causing exam imports to freeze
  • [#608] error when viewing an activity that has been mapped through a post activity that has been deleted
  • [#620] issue with permissions when assessing a suspended portfolio
  • [#628] issue when submitting form R
  • [#648] prevent creation of duplicate training level folders below ST6
  • [#649] issue with case log permissions
  • [#651] issue where additional panel members were not displaying if no assigned panel members have been selected
  • [#658] fix issue creating Post Activities when no posts available

Changed

  • [#592] restrict specialty selection based on training level
  • [#596] make specialty a mandatory field for portfolio/folder

Release 4.5

Major Enhancements

  • [RCPych] 2022 Curriculum and PDP pilot

Added

  • [FOM] WBA Summary tab on portfolio page
  • [#521] configure suggested followup proformas by activity type
  • [#532] no outstanding tasks panel for accounts with nothing on dashboard
  • [#550] [RCPsych] additional exam diets
  • [#555] unassigned activities warning and auto assign by date
  • [#563] [FOM] added SAIL(OH) to WBA Summaries
  • [#570] portfolio advisor for core trainees mapping to higher curricula

Fixed

  • [#262] permissions issue with linked clinical experiences
  • [#517] [FOM] error in ESR when no coverage is present
  • [#519] fixed issue where WPBA/Report followups were not creating correctly
  • [#522] issue with MHA flag not displaying correctly on case logs
  • [#524] 500 server error when trying to register as new user from a nomination with a duplicate email
  • [#526] issue linking existing clinical experience to WPBA
  • [#528] order child elements on proformas by sequences
  • [#530] error when viewing PDP coverages
  • [#538] show coverage on new report as well as edit
  • [#539] N/A showing for specialty specific WPBA requirements on ARCP page
  • [#541] permission issue allowing nomination to be deleted from cached page
  • [#542] reports not showing on ARCP requirement page
  • [#543] permission issue preventing TPD's from viewing their ARCPs page
  • [#548] [FOM] issues with ESR review period dates
  • [#551] some activities not displaying correct icon
  • [#552] sometimes showing "Supervisor has not submitted" on reviews page along side the submitted date
  • [#557] error when creating clinical WPBA without required clinical experience
  • [#559] error when attempting to specify an invalid review period on ARCP outcome form
  • [#560] error when trying to save a multiuser clinical WPBA with no clinical experience attached
  • [#564] date validation on ARCP outcome forms was sometimes incorrect
  • [#569] timezone issue with start/end dates comparisons
  • [#571] issue where rejected nominations could be re-queued and get stuck
  • [#574] missing PDP link on supervisor view of trainee portfolio
  • [#575] Non Training portfolios showing as Core Training
  • [#578] error when showing WBA summary for portfolio with no folders
  • [#585] [FOM] error when region is not set

Changed

  • replaced specific Learning objective options from New-Followup list with generic PDP Item
  • remove category/sections from psychiatry programme
  • [#535] significant performance improvement in MSF cohort_mean calculations
  • [#545] when saving form also modify updated_at field of activity

Release 4.4

Major Enhancements

  • [#490] refactor layout and add WPBA totals to portfolio dashboard

Added

  • [#199] [RCPsych] Form R now available to all - https://portfolioonline.zendesk.com/hc/en-gb/articles/360001238697
  • [#199] [FOM] Form R - https://fomportfolio.zendesk.com/hc/en-gb/articles/360017048377
  • [#199] [FOM] ESR components for testing
  • [#512] added delete element to proforma editor

Changed

  • remove manual archive portfolio option
  • [#455] show level of ARCP in activity entry

Fixed

  • permission issue that sometimes prevented ARCP reviewers from viewing certain attachments
  • [#99] automatically remove assessor from form when nomination is deleted
  • [#453] error when deleting activity with missing resource
  • [#457] fix issue allowing case logs to be mapped to competencies
  • [#459] fix error when deleting management nominations for unknown users
  • [#459] fix permissions for programme admin viewing uploads
  • [#467] fix display issue with comments on collated feedback
  • [#472] fix issue preventing suspension import
  • [#474] fix caching issue when adding a new followup
  • [#476] fix issue preventing "ARCP Released" emails from sending
  • [#479] fix regression causing error when report scheme is not set
  • [#481] fix issue where review scheme was not being correctly set
  • [#485] fix issue where trainee's name would sometimes not show on Form-R in the organisation reviews page
  • [#485] error when a deleted user was shown in a filter
  • [#493] demo accounts failing to reset
  • [#495] permission issue that sometimes prevented RO's from viewing Form-R
  • [#491] fix issue where MSF was showing total forms, not assessments
  • [#492] fix error viewing frameworks
  • [#497] remove expired tools from assessment summary
  • [#498] error when checking RO permissions against reviews with no organisation set
  • [#506] fix error when a form R has not been completed
  • [#509] fix issues with future dated PDP Items
  • [#511] restored recents in navbar

Maintenance Release 4.3.1

Added

  • [#196] [FOM] prototyping ARCP Dashboard
  • [#204] send notification email when ARCP released to trainee
  • [#300] [FOM] enable suspensions

Changed

  • [#393] significant updates to overall stability of search indexes
  • [#410] improved handling of client branding on outgoing emails
  • [#425] only show previous 12 months on Organisation's Live ARCPs progress bar
  • [#436] do not show per nomination queuing for MSF
  • [#437] do not allow concurrent MSF in different portfolios for same programme
  • [#444] fix regression in #437
  • manage client contact details in programme management

Fixed

  • minor formatting on forms
  • format system error page
  • [#406] fix error when form cannot parse a response that has been entered that contains invalid html
  • [#414] fix regression in #410 that caused an error when trying request a reset password email
  • [#420] fix incorrect email validation on mixed case local-part
  • [#422] error when trying to create a PDP item with a future end date and mandatory field(s) not filled
  • [#430] admin issue with user merge not handling duplicates correctly
  • [#431] admin issue with form delete on MSF forms
  • [#442] race condition that would sometimes cause a shared activity to be indexed when it was still private
  • [#450] non-training portfolios showing as "Core Training" when equivalent level set to CT1-3