Skip to content

Commit e1052f0

Browse files
committed
ask for variant
1 parent 31ed79e commit e1052f0

1 file changed

Lines changed: 58 additions & 0 deletions

File tree

.claude/skills/propose/SKILL.md

Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -266,6 +266,64 @@ Work through these topics in order, using `AskUserQuestion` where multiple-choic
266266
description: "I'll describe the input structure"
267267
```
268268

269+
7. **Variants** — Based on the data representation answer, ask about applicable variants using `AskUserQuestion`. Only show options that are viable for the problem's input structure. Skip this question entirely if no variants apply (e.g., the problem has a fixed unique input structure like Knapsack, Factoring, SubsetSum).
270+
271+
**If the input is a graph** (from step 6), ask about graph topology:
272+
```
273+
AskUserQuestion:
274+
question: "Which graph topologies should this problem support?"
275+
header: "Graph topology"
276+
multiSelect: true
277+
options:
278+
- label: "General graphs"
279+
description: "No structural restriction (SimpleGraph) — default, almost always needed"
280+
- label: "Planar graphs"
281+
description: "Graphs embeddable in the plane without edge crossings"
282+
- label: "Bipartite graphs"
283+
description: "Graphs whose vertices split into two groups with edges only between groups"
284+
- label: "Unit disk graphs"
285+
description: "Intersection graphs of unit disks in the plane"
286+
- label: "Kings subgraph"
287+
description: "Subgraphs of the king's graph on a grid"
288+
- label: "Triangular subgraph"
289+
description: "Subgraphs of the triangular lattice"
290+
```
291+
Only include topology options that are meaningful for the problem (e.g., don't offer "Kings subgraph" for a problem that doesn't have special structure on grids).
292+
293+
**If the problem can be weighted or unweighted**, ask:
294+
```
295+
AskUserQuestion:
296+
question: "Should this problem support weighted instances?"
297+
header: "Weights"
298+
options:
299+
- label: "Unweighted only"
300+
description: "All elements have unit weight — simpler formulation"
301+
- label: "Weighted (integers)"
302+
description: "Elements have integer weights"
303+
- label: "Weighted (real numbers)"
304+
description: "Elements have real-valued weights"
305+
- label: "Both weighted and unweighted"
306+
description: "Support unit weight and integer weight variants"
307+
```
308+
Skip this if the problem inherently requires specific numeric values (e.g., QUBO always has a weight matrix, Knapsack always has item values).
309+
310+
**If the problem has a parameter K** (e.g., K-coloring, K-satisfiability), ask:
311+
```
312+
AskUserQuestion:
313+
question: "Should K be a fixed constant or a general parameter?"
314+
header: "K parameter"
315+
options:
316+
- label: "General K"
317+
description: "K is part of the input — problem is NP-hard for general K"
318+
- label: "Fixed small K values"
319+
description: "Define variants for specific K (e.g., K=2, K=3) with different complexities"
320+
- label: "Both"
321+
description: "General K plus specific fixed-K variants with known better algorithms"
322+
```
323+
Skip this if the problem has no natural K parameter.
324+
325+
Record the chosen variants — they will appear in the Schema section of the issue draft (the "Variants" field).
326+
269327
After model brainstorming is complete, proceed to **Step 3b: Topology Analysis**.
270328

271329
### For Rules (standalone)

0 commit comments

Comments
 (0)