Skip to content

Overhaul maintenance.md structure according to ILIAS component categories#5

Open
marvimarv wants to merge 3 commits intotrunkfrom
maintenance-md-overhaul-single
Open

Overhaul maintenance.md structure according to ILIAS component categories#5
marvimarv wants to merge 3 commits intotrunkfrom
maintenance-md-overhaul-single

Conversation

@marvimarv
Copy link
Owner

@marvimarv marvimarv commented Feb 6, 2026

This PR restructures the maintenance.md file to match the official ILIAS component categorization from docu.ilias.de.

Changes

  • Restructured maintenance.md to match 9 main ILIAS categories
  • Added semantic grouping of component folders under sub-components
  • Included all components from components/ILIAS (maintained and unmaintained)
  • Prioritized maintenance_old.md as primary source for authorities
  • Added Feature Wiki links to categories and individual components
  • Made component folders clickable links to GitHub repository
  • Improved component matching with case-insensitive and flexible search
  • Added support for 'Assignee for Issues' field
  • Fixed unmaintained status detection (components with all NONE authorities)
  • Removed 'LINK MISSING' entries for Unit-specific Guidelines
  • Added summary statistics for maintained/unmaintained components
  • Preserved BEGIN/END comments for automatic updates

Script

The generation script is located at scripts/maintenance-overhaul/generate_maintenance_final.py and can be run to regenerate the maintenance.md file.


Note

Low Risk
Documentation-only changes plus a new standalone generation script; main risk is inaccurate maintainership/authority listings due to mapping/matching logic rather than runtime impact.

Overview
Replaces the previous flat/unstructured maintenance.md layout with a new category- and subcomponent-based structure aligned to the official ILIAS component taxonomy, including per-category wiki links and per-component feature wiki links.

The document now groups related component folders under shared headings, adds GitHub links for each component folder, marks unmaintained components inline (and in a regenerated ## Unmaintained Components list), and includes summary statistics (maintained/unmaintained/NONE authority counts).

Adds scripts/maintenance-overhaul/generate_maintenance_final.py, a generator that scans components/ILIAS/*/maintenance.json, reuses authority data parsed from the existing markdown (with more flexible matching), fills/cleans guideline links, and outputs the rebuilt maintenance.md with preserved BEGIN/END markers for automation.

Written by Cursor Bugbot for commit 92f9943. This will update automatically on new commits. Configure here.

…ries

- Restructure maintenance.md to match 9 main ILIAS categories from docu.ilias.de
- Add semantic grouping of component folders under sub-components
- Include all components from components/ILIAS (maintained and unmaintained)
- Prioritize maintenance_old.md as primary source for authorities
- Add Feature Wiki links to categories and individual components
- Make component folders clickable links to GitHub repository
- Improve component matching with case-insensitive and flexible search
- Add support for 'Assignee for Issues' field
- Fix unmaintained status detection (components with all NONE authorities)
- Remove 'LINK MISSING' entries for Unit-specific Guidelines
- Add summary statistics for maintained/unmaintained components
- Preserve BEGIN/END comments for automatic updates
@marvimarv marvimarv force-pushed the maintenance-md-overhaul-single branch from b821cb2 to efe9bf2 Compare February 6, 2026 14:55
- Change 'Statistik' to 'Statistics'
- Change 'Component Ordner' to 'Component Folders'
- Change 'NONE Authority-Einträge' to 'NONE Authority entries'
- Translate introduction text to English
@marvimarv marvimarv force-pushed the maintenance-md-overhaul-single branch from bd74054 to 4ee4c84 Compare February 6, 2026 15:00
These fields are not present in maintenance_old.md and should not be included in the generated maintenance.md
@marvimarv marvimarv force-pushed the maintenance-md-overhaul-single branch from 10ab106 to 92f9943 Compare February 6, 2026 15:03
Copy link

@cursor cursor bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Cursor Bugbot has reviewed your changes and found 1 potential issue.

Bugbot Autofix is OFF. To automatically fix reported issues with Cloud Agents, enable Autofix in the Cursor dashboard.

This is the final PR Bugbot will review for you during this billing cycle

Your free Bugbot reviews will reset on March 5

Details

You are on the Bugbot Free tier. On this plan, Bugbot will review limited PRs each billing cycle.

To receive Bugbot reviews on all of your PRs, visit the Cursor dashboard to activate Pro and start your 14-day free trial.

first_maintainer = json_data.get('first_maintainer', '')
second_maintainer = json_data.get('second_maintainer', '')
tester = json_data.get('tester', '')
testcase_writer = json_data.get('testcase_writer', '')
Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Indentation error causes undefined variable crash

High Severity

The variable json_data is defined inside an if block at lines 1003-1006, but lines 1007-1010 use json_data outside that block due to incorrect indentation. When the condition data.get('has_json') and data.get('maintenance_json') is False, json_data is never defined, causing a NameError crash. The lines accessing first_maintainer, second_maintainer, tester, and testcase_writer have 12 spaces of indentation (same as the if statement) instead of 16 spaces (inside the if block).

Additional Locations (1)

Fix in Cursor Fix in Web

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant