Skip to content

feat(skills): add pre-filing version check to swamp-issue bug workflow#1377

Merged
stack72 merged 2 commits into
mainfrom
worktree-321
May 13, 2026
Merged

feat(skills): add pre-filing version check to swamp-issue bug workflow#1377
stack72 merged 2 commits into
mainfrom
worktree-321

Conversation

@stack72
Copy link
Copy Markdown
Contributor

@stack72 stack72 commented May 13, 2026

Summary

  • Converts the swamp-issue skill's bug report workflow from a linear step list to a state machine (gather_details → version_check → submit → verify) matching the swamp-getting-started pattern
  • Adds a version_check state that checks if the user is on an outdated binary, fetches the latest source via swamp source fetch, and has the agent re-read diagnosed files to determine if the bug was already fixed
  • Three outcomes: bug_fixed (tell user to update), bug_present (proceed to file), inconclusive (proceed to file) — never blocks filing
  • Feature/security workflows remain linear (no version check)
  • Adds references/version_check.md with the detailed procedure

Closes swamp-club#321.

Test plan

  • Invoke swamp-issue skill to file a bug against swamp — verify the agent runs the version check state before submitting
  • Verify swamp update --check --json output is parsed correctly
  • Verify swamp source fetch --version <latestVersion> works with the CalVer version string
  • Verify the agent correctly handles: up-to-date (skips), outdated with fix (reports), outdated without fix (proceeds), source fetch failure (proceeds)
  • Verify feature/security workflows are unaffected

🤖 Generated with Claude Code

stack72 and others added 2 commits May 13, 2026 01:52
…w (swamp-club#321)

Before filing a bug, the agent now checks if the user is on an outdated
version and verifies whether the diagnosed bug was already fixed in the
latest source. Converts the bug workflow to a state machine
(gather_details → version_check → submit → verify) using the same
Gate/Action/Verify/On Failure pattern as swamp-getting-started.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Move implementation details (lock internals, --skip-migration nuances,
legacy layout migration) from SKILL.md to references/troubleshooting.md.
Add verification steps after extension source add and lock release.
Trim custom datastores/drivers sections.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Copy link
Copy Markdown

@github-actions github-actions Bot left a comment

Choose a reason for hiding this comment

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

Code Review

Blocking Issues

None.

Suggestions

  1. Lost .swamp.yaml config snippet (swamp-repo/SKILL.md): The removed "Custom Datastores" section included a .swamp.yaml configuration example (type: / config: fields) that showed how third-party datastores are declared. The new one-liner points to swamp-extension, which covers creating extensions — but the YAML config example was useful for consuming them. Consider adding a brief snippet back to the SKILL.md or to a reference file. Not blocking since swamp help datastore and the extension docs cover it.

Notes

CLAUDE.md compliance:

  • SKILL.md files are uppercase ✓
  • Frontmatter present with name + description
  • swamp-issue/SKILL.md: 231 lines (under 500 limit) ✓
  • swamp-repo/SKILL.md: 402 lines (under 500 limit) ✓
  • No extraneous files ✓
  • Content correctly split between SKILL.md and references/ files ✓

State machine design (swamp-issue bug workflow): Well-structured Gate/Action/Verify/On Failure pattern. The defensive failure handling (all errors → inconclusive → proceed to submit) is exactly right — never blocks the user from filing. The "prefer inconclusive over bug_fixed" guidance in version_check.md is a good safety rail.

swamp-repo refactoring: Clean extraction of Lock Internals, --skip-migration details, and Legacy Extension Layout Migration into references/troubleshooting.md. The added verification steps (confirm source loaded after extension source add, verify lock cleared after release) are practical improvements.

DDD: No domain code changes — skill documentation only. No DDD concerns.

Security: No executable code changes. CLI commands referenced in the skill are standard swamp commands with no injection vectors.

@stack72 stack72 merged commit e18bd5d into main May 13, 2026
11 checks passed
@stack72 stack72 deleted the worktree-321 branch May 13, 2026 12:47
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