Skip to content

feat: summarize changes with AI by AI (WIP)#48

Draft
schmidtnz wants to merge 14 commits into
masterfrom
feat/change-summary-ai
Draft

feat: summarize changes with AI by AI (WIP)#48
schmidtnz wants to merge 14 commits into
masterfrom
feat/change-summary-ai

Conversation

@schmidtnz

@schmidtnz schmidtnz commented Jun 21, 2026

Copy link
Copy Markdown

Motivation

We have large QGIS project files (XML files) that we want to version control.
When saving a project in QGIS, it does not serialize in a repeatable way. Some keys get ordered randomly.
This leads to large diffs with a lot of changes that do not influence the presentation of the file.
Also, some changes are insignificant, such as a changed viewport or different user saving the file.

This is an attempt to extract meaningful change from the XML and interpret it in human language using AI.

qgs files can be large and exceed the context of common models.

Modifications

  • Python script to remove identifiable "churn" from qgs files and then diff these versions.
  • Workflow to pass the reduced diff to AI for interpretation and posting to PR.

Verification

manual testing

@github-actions

Copy link
Copy Markdown

🗺️ QGIS project change summary

master-project/topo-editor-tiff50.qgs

  • Project version updated: 4.0.0-Norrköping → 4.0.3-Norrköping.
  • Layer display name changed: layer with source ../../topographic-data/topographic-data.gpkg|layername=geographic_name (providerKey="ogr", id="geographic_name_809a82b7_b97d_4932_829c_45e5bad435c7") had name "geographic_name" → "changed-name".

Generated by gpt-5-mini via GitHub Models from a churn-free diff - verify against the file diff.

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