Conversation
The swamp-extension-model skill had no documentation about the `upgrades` field, meaning users (and Claude) would bump a model's version without adding upgrade entries. This left existing instantiated models stuck at their old typeVersion with no migration path. Changes: - Add "Version Upgrades" section to skill.md with user prompt workflow - Add `upgrades` row to Model Structure table - Add Key Rule 9 requiring upgrades when bumping version - Create references/upgrades.md with patterns, rules, and examples - Add "Model with Version Upgrades" example to references/examples.md - Fix design/models.md: rename upgradeGlobalArguments to upgradeAttributes to match the actual code interface The key behavioral change is that Claude is now instructed to prompt the user about schema changes when bumping a version, rather than guessing or silently skipping the upgrade. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
96532df to
72d4e30
Compare
There was a problem hiding this comment.
Code Review
Blocking Issues
None.
Suggestions
- Inconsistent type prefix in upgrades.md example: In
references/upgrades.mdline 107, the multi-step upgrade chain example usestype: "acme/notifier"(missing the@prefix), while the same model inreferences/examples.mdcorrectly usestype: "@acme/notifier". The SKILL.md convention specifies@collective/nameformat. Consider changing totype: "@acme/notifier"for consistency.
Overall this is a well-structured documentation addition. The upgradeAttributes naming matches the actual code (model.ts:560, user_model_loader.ts:106), the fix to design/models.md corrects a real naming mismatch, and the progressive disclosure approach (summary in SKILL.md, details in reference file) follows skill-creator guidelines.
2 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
docs: add version upgrade guidance to swamp-extension-model skill
Summary
The
swamp-extension-modelskill had no documentation about theupgradesfield on model definitions. This meant that when a model's version was bumped, existing instantiated models would be left stuck at their oldtypeVersionwith no migration path — users (and Claude) had no idea they needed to add upgrade entries.What changed
upgradesrow to the Model Structure table, a new "Version Upgrades" section with a user prompt workflow, Key Rule 9 requiring upgrades when bumping version, and a reference linkupgradeGlobalArguments→upgradeAttributesto match the actual code interface (VersionUpgradeinmodel.tsandUserUpgradeSchemainuser_model_loader.ts)Impact
The key behavioral change is that Claude is now instructed to prompt the user about schema changes when bumping a version, rather than guessing or silently skipping the upgrade. This ensures existing model instances get proper migration entries.
Why this is correct
upgradeAttributesfunction name matches what the code validates (user_model_loader.ts:106andmodel.ts:558)DefinitionUpgradeServicebehavior (lazy execution at method run time, filtered bytoVersion > typeVersion, persisted after first run)🤖 Generated with Claude Code