When modifying the configuration schema (skills/gtasks-todo-manager/references/schemas/config.schema.json), follow these steps to ensure proper migration support:
Make the necessary changes to config.schema.json.
Add a new migration section in skills/gtasks-todo-manager/references/operations/migrations.md:
- Add a new entry to the Table of Contents under "Migration Definitions"
- Add a new subsection following the pattern:
### X.Y.Z to A.B.C **Applies to**: Config files with schemaVersion X.Y.Z **Detection**: Config file has `schemaVersion` set to "X.Y.Z" **Changes**: 1. Description of first change 2. Description of second change **Example before**: ... **Example after**: ...
Update the "Current schema version" in these locations:
skills/gtasks-todo-manager/SKILL.md(in "Before Any Operation" section)skills/gtasks-todo-manager/references/operations/migrations.md(in "Determine Required Migrations" section)skills/gtasks-todo-manager/references/operations/migrations.md(in "Possible results" table)
These are distinct concepts:
| Concept | When to Increment |
|---|---|
| Schema version | When the config file structure changes (new fields, removed fields, restructuring) |
| Plugin version | Any release (features, bug fixes, documentation, migrations) |
The schema version should match the plugin version where the schema change was introduced. For example, if plugin 0.4.0 adds a new config field, the schema version becomes 0.4.0 and the migration is "0.3.2 to 0.4.0".
If adding a new settings.theme field in plugin version 0.4.0:
- Add
themetoconfig.schema.jsonundersettings.properties - Add migration "0.3.2 to 0.4.0" in
migrations.md - Update current schema version to
0.4.0in SKILL.md and migrations.md - Bump plugin version to
0.4.0in plugin.json, README.md, marketplace.json, and project README.md