Conclusion

Last modified by Lucas Charpentier on 2026/10/27 10:50

This page sums up the macro audit of October 2026 once its triage was finished. The numbers are a snapshot taken on 27 October 2026: the Per macro analysis and the Triage keep the live figures, which change as the tickets are fixed.

The audit in numbers

Macros audited and reviewed67, on XWiki 18.8.0: 19 wrappers, 47 generators, 1 special
Parameters checked305, content included
Criteria18 macro criteria checked once per macro, 10 configuration criteria checked once per parameter
Results3348 OK or KO results, N/A left out
KOs944, 28% of the results: 422 on macro criteria, 522 on configuration criteria
Macros with at least one KO65 of 67
JIRA tickets mapped to the KOs170: 58 existing, 112 new
KOs with a ticket944 of 944. 890 have a ticket fixing them on their own, the other 54 are fixed by several partial tickets together

What fails most

Five criteria fail for most of the macros they apply to, which points to the macro system or the WYSIWYG editor rather than to each macro:

  • E2 errors, 0 OK for 58 KO: an invalid parameter value is silently replaced or gives an error that names neither the parameter nor the expected value.
  • E6 inplace, 0 OK for 20 KO: the content of a macro cannot always be edited in place. The Edit Macro dialog shows it as a wiki syntax text area, and an inline macro loses in-place editing.
  • D4 quick-action, 51 KO for 14 OK: a common synonym of the macro name finds nothing in Quick Actions.
  • L2 doc-parameters, 51 KO for 14 OK: the parameter tables of the documentation drifted from the descriptors, mostly on the legacy extension pages.
  • D2 summary, 49 KO for 16 OK: the description mostly repeats the macro name.

On the configuration side, the most KOs are on C1 clarity, 144 parameters, almost half of them, C4 input-assistance, 104, and C5 groups, 89. C13 constraints fails for 65 of the 105 parameters it applies to.

The KOs gather on the generator macros with many parameters: attachmentSelector 46, notifications 45, tree 41, tableToChartJS 38, liveData 37, documentTree 34, documents 33 and jira 33. These 8 macros hold 307 KOs, a third of the total.

Few tickets cover most KOs

Ranking the tickets by the KOs they add to the ones already covered, a few of them go a long way: the first 6 tickets cover 25% of the KOs, 18 cover half, 48 cover 75% and 99 cover 90%, the points marked on the curve. The curve stops at 94.3%, after 138 tickets: the other KOs are only fixed by several partial tickets together.

Half of the KOs depend on 18 tickets, and the last quarter is spread over more than a hundred small ones, most of them about a single macro. Only 2 of the 170 tickets are closed.

Next step priorities

Ordered by KOs fixed for the work involved.

  1. Quick wins. XWIKI-25468, moving the six notifications preferences macros to the Internal category, covers 62 KOs with a change of descriptor. XWIKI-25444, search keywords for Quick Actions and the Insert Macro dialog, covers 46 KOs, mostly D4, once the keywords are filled.
  2. Shared fixes of the macro system. One change each, for many macros at once:
  3. Documentation. XINFRA-525, the parameters of the macros in the new documentation, 51 KOs, and XINFRA-526, an example of the most common use for each macro, 20 KOs. This is writing, not code, and can go along with the migration of the documentation.
  4. The Edit Macro dialog of the worst macros. Regrouping, ordering and describing the parameters of the page list and tree macros, XWIKI-25472 and XWIKI-25470, 68 KOs, of the Attachment Selector, XWIKI-25474, 24 KOs, of the chart, liveData and dashboard macros, XWIKI-25484, 20 KOs, and of the notifications macro, XWIKI-23835, 21 KOs.
  5. The long tail. The remaining tickets, about one macro each, best picked up when that macro is worked on for another reason.

Once the shared fixes are in, a second audit on the version that ships them would measure their effect, against the same frozen criteria.

Get Connected