Issue Lifecycle
Security Notice
This extension includes AI agent skills that can modify AI assistant behavior. Review the skill files before installing.
Interactive triage and implementation planning for swamp-club lab issues. Drives the triage/plan/iterate/approve/implement loop as a local conversation with Claude, while posting structured lifecycle entries and status transitions back to the swamp-club issue on every step.
The model operates directly on swamp-club lab issue numbers — the issue must already exist in swamp-club before you start. There is no GitHub integration.
State Machine
created ──[start]──> triaging
triaging ──[triage]──> classified
classified ──[plan]──> plan_generated
plan_generated ──[iterate]──> plan_generated (feedback loop)
plan_generated ──[approve]──> approved
approved ──[implement]──> implementing
implementing ──[link_pr]──> pr_open
pr_open ──[link_pr]──> pr_open (idempotent re-link)
pr_open ──[pr_failed]──> pr_failed
pr_failed ──[link_pr]──> pr_open (retry with new PR)
pr_failed ──[implement]──> implementing (restart implementation)
pr_open ──[pr_merged]──> releasing
releasing ──[ship]──> notify
implementing ──[complete]──> notify (no PR linked)
pr_open ──[complete]──> notify
releasing ──[complete]──> notify
notify ──[notify]──> done (thank external contributor)
notify ──[skip_notify]──> done (skip notification)Pre-flight checks enforce valid transitions: you cannot approve without a
plan, cannot implement without approval, and cannot approve while critical
or high adversarial findings remain unresolved. start can resume from
any phase except done. complete accepts implementing, pr_open,
and releasing as source phases.
Methods
start— fetch issue context from swamp-club (fails if the issue does not exist); auto-assigns the current usertriage— classify as bug/feature/platform/security and PATCH the swamp-club issue typeplan— generate an implementation planreview— display the current plan (read-only)iterate— revise the plan with feedback (versioned)adversarial_review— record adversarial review findingsresolve_findings— mark adversarial findings as resolvedapprove— lock the plan and transition to in_progressimplement— signal implementation has startedlink_pr— link an opaque pull request URL to the lifecycle record (idempotent; transitions topr_open). Git-host agnostic — the model persists whatever URL the agent supplies without fetching anything.pr_merged— record that the linked PR was merged (transitions toreleasing)pr_failed— record that the linked PR failed (transitions topr_failed; can retry vialink_prorimplement)ship— mark as shipped/released (transitions tonotify)complete— mark the lifecycle complete (transitions tonotify)notify— post a thank-you ripple to the issue author and transition todoneskip_notify— skip contributor notification and transition directly todone
Data
All resources are versioned and immutable: state, context,
classification, plan, feedback, adversarialReview, pullRequest.
Prerequisites
- swamp initialized in the repository (
swamp init) SWAMP_API_KEYenv var (orswamp auth login) for swamp-club access- The target lab issue must already exist in swamp-club
| Argument | Type | Description |
|---|---|---|
| confidence | enum | |
| reasoning | string | |
| isRegression? | boolean | True if this is a regression (something that previously worked). Implies type=bug. |
| clarifyingQuestions? | array |
| Argument | Type | Description |
|---|---|---|
| summary | string | |
| dddAnalysis | string | |
| steps | array | |
| testingStrategy | string | |
| potentialChallenges | array |
| Argument | Type | Description |
|---|---|---|
| version? | number | Specific plan version to review |
| Argument | Type | Description |
|---|---|---|
| feedback | string | Human feedback on the current plan |
| summary | string | |
| dddAnalysis | string | |
| steps | array | |
| testingStrategy | string | |
| potentialChallenges | array |
| Argument | Type | Description |
|---|---|---|
| findings | array |
| Argument | Type | Description |
|---|---|---|
| resolutions | array |
| Argument | Type | Description |
|---|---|---|
| url | string | Canonical pull request URL. Opaque to the model — pass whatever |
| Argument | Type | Description |
|---|---|---|
| mergedAt? | string | ISO-8601 timestamp of when the PR was merged. Defaults to now. |
| Argument | Type | Description |
|---|---|---|
| reason | string | Why the PR failed: CI failure details, review rejection reason, etc. |
| Argument | Type | Description |
|---|---|---|
| releaseUrl? | string | URL of the release (e.g., GitHub release page, package registry). Optional. |
| releaseNotes? | string | Brief release notes or summary. Optional. |
| Argument | Type | Description |
|---|---|---|
| message? | string | Custom thank-you message. If omitted, a default message is generated. |
Resources
Modified 1 models
Modified 1 models
Modified 1 models
Not yet scored.
A score will be generated the next time this extension is published. The owner can also trigger scoring manually.