fix(sling): remove obsolete --quality flag
The --quality flag (basic|shiny|chrome) referenced mol-polecat-* formulas
that were removed in c47a746 ("Remove obsolete polecat formula files") but
the flag code was left behind, causing errors when used.
Rather than restore the formulas, remove the flag entirely since:
- The default `gt sling <bead> <rig>` is now the standard workflow
- Formula-on-bead via `--on` or `--molecule` covers custom workflows
- The quality-level formulas were intentionally deprecated
Removes:
- --quality/-q flag and help text
- qualityToFormula() function
- Quality Levels section from command documentation
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
@@ -74,11 +74,6 @@ Formula-on-Bead (--on flag):
|
|||||||
gt sling mol-review --on gt-abc # Apply formula to existing work
|
gt sling mol-review --on gt-abc # Apply formula to existing work
|
||||||
gt sling shiny --on gt-abc crew # Apply formula, sling to crew
|
gt sling shiny --on gt-abc crew # Apply formula, sling to crew
|
||||||
|
|
||||||
Quality Levels (shorthand for polecat workflows):
|
|
||||||
gt sling gp-abc greenplace --quality=basic # mol-polecat-basic (trivial fixes)
|
|
||||||
gt sling gp-abc greenplace --quality=shiny # mol-polecat-shiny (standard)
|
|
||||||
gt sling gp-abc greenplace --quality=chrome # mol-polecat-chrome (max rigor)
|
|
||||||
|
|
||||||
Compare:
|
Compare:
|
||||||
gt hook <bead> # Just attach (no action)
|
gt hook <bead> # Just attach (no action)
|
||||||
gt sling <bead> # Attach + start now (keep context)
|
gt sling <bead> # Attach + start now (keep context)
|
||||||
@@ -109,7 +104,6 @@ var (
|
|||||||
slingMolecule string // --molecule: workflow to instantiate on the bead
|
slingMolecule string // --molecule: workflow to instantiate on the bead
|
||||||
slingForce bool // --force: force spawn even if polecat has unread mail
|
slingForce bool // --force: force spawn even if polecat has unread mail
|
||||||
slingAccount string // --account: Claude Code account handle to use
|
slingAccount string // --account: Claude Code account handle to use
|
||||||
slingQuality string // --quality: shorthand for polecat workflow (basic|shiny|chrome)
|
|
||||||
slingNoConvoy bool // --no-convoy: skip auto-convoy creation
|
slingNoConvoy bool // --no-convoy: skip auto-convoy creation
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -127,7 +121,6 @@ func init() {
|
|||||||
slingCmd.Flags().StringVar(&slingMolecule, "molecule", "", "Molecule workflow to instantiate on the bead")
|
slingCmd.Flags().StringVar(&slingMolecule, "molecule", "", "Molecule workflow to instantiate on the bead")
|
||||||
slingCmd.Flags().BoolVar(&slingForce, "force", false, "Force spawn even if polecat has unread mail")
|
slingCmd.Flags().BoolVar(&slingForce, "force", false, "Force spawn even if polecat has unread mail")
|
||||||
slingCmd.Flags().StringVar(&slingAccount, "account", "", "Claude Code account handle to use")
|
slingCmd.Flags().StringVar(&slingAccount, "account", "", "Claude Code account handle to use")
|
||||||
slingCmd.Flags().StringVarP(&slingQuality, "quality", "q", "", "Polecat workflow quality level (basic|shiny|chrome)")
|
|
||||||
slingCmd.Flags().BoolVar(&slingNoConvoy, "no-convoy", false, "Skip auto-convoy creation for single-issue sling")
|
slingCmd.Flags().BoolVar(&slingNoConvoy, "no-convoy", false, "Skip auto-convoy creation for single-issue sling")
|
||||||
|
|
||||||
rootCmd.AddCommand(slingCmd)
|
rootCmd.AddCommand(slingCmd)
|
||||||
@@ -162,22 +155,6 @@ func runSling(cmd *cobra.Command, args []string) error {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// --quality is shorthand for formula-on-bead with polecat workflow
|
|
||||||
// Convert: gt sling gp-abc greenplace --quality=shiny
|
|
||||||
// To: gt sling mol-polecat-shiny --on gt-abc gastown
|
|
||||||
if slingQuality != "" {
|
|
||||||
qualityFormula, err := qualityToFormula(slingQuality)
|
|
||||||
if err != nil {
|
|
||||||
return err
|
|
||||||
}
|
|
||||||
// The first arg should be the bead, and we wrap it with the formula
|
|
||||||
if slingOnTarget != "" {
|
|
||||||
return fmt.Errorf("--quality cannot be used with --on (both specify formula)")
|
|
||||||
}
|
|
||||||
slingOnTarget = args[0] // The bead becomes --on target
|
|
||||||
args[0] = qualityFormula // The formula becomes first arg
|
|
||||||
}
|
|
||||||
|
|
||||||
// Determine mode based on flags and argument types
|
// Determine mode based on flags and argument types
|
||||||
var beadID string
|
var beadID string
|
||||||
var formulaName string
|
var formulaName string
|
||||||
@@ -1003,19 +980,6 @@ func agentIDToBeadID(agentID string) string {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// qualityToFormula converts a quality level to the corresponding polecat workflow formula.
|
|
||||||
func qualityToFormula(quality string) (string, error) {
|
|
||||||
switch strings.ToLower(quality) {
|
|
||||||
case "basic", "b":
|
|
||||||
return "mol-polecat-basic", nil
|
|
||||||
case "shiny", "s":
|
|
||||||
return "mol-polecat-shiny", nil
|
|
||||||
case "chrome", "c":
|
|
||||||
return "mol-polecat-chrome", nil
|
|
||||||
default:
|
|
||||||
return "", fmt.Errorf("invalid quality level '%s' (use: basic, shiny, or chrome)", quality)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// IsDogTarget checks if target is a dog target pattern.
|
// IsDogTarget checks if target is a dog target pattern.
|
||||||
// Returns the dog name (or empty for pool dispatch) and true if it's a dog target.
|
// Returns the dog name (or empty for pool dispatch) and true if it's a dog target.
|
||||||
|
|||||||
Reference in New Issue
Block a user