@staff0rd/assist 0.141.0 → 0.142.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,60 @@
1
+ ---
2
+ description: File a bug with reproduction steps, expected and actual behavior
3
+ allowed_args: "[short description of the bug]"
4
+ ---
5
+
6
+ You are helping the user file a bug report as a backlog item. Your goal is to extract the minimum information needed: what happens, what should happen, and how to reproduce it.
7
+
8
+ ## Step 1: Understand the bug
9
+
10
+ If the user provided a description via $ARGUMENTS, use that as a starting point. Otherwise, ask what's going wrong.
11
+
12
+ ## Step 2: Gather details
13
+
14
+ Ask short, targeted questions one at a time to fill in any gaps. You need three things:
15
+
16
+ 1. **Reproduction steps** — what does the user do to trigger the bug?
17
+ 2. **Expected behavior** — what should happen?
18
+ 3. **Actual behavior** — what happens instead?
19
+
20
+ Skip questions the user has already answered. Stop asking as soon as you have enough to write a clear bug report — don't over-interrogate.
21
+
22
+ ## Step 3: Propose the item
23
+
24
+ Show the user the bug report:
25
+
26
+ **Name:** (concise title)
27
+ **Type:** bug
28
+ **Description:**
29
+ **Repro:** (numbered steps)
30
+ **Expected:** ...
31
+ **Actual:** ...
32
+
33
+ **Acceptance Criteria:**
34
+ - (conditions that confirm the bug is fixed)
35
+
36
+ Do NOT generate a plan — the implementer will determine how to fix it.
37
+
38
+ ## Step 4: Iterate
39
+
40
+ Ask the user if they want to change anything. Iterate until they confirm.
41
+
42
+ ## Step 5: Save
43
+
44
+ Once confirmed, pipe the JSON to the CLI. The JSON must match this shape:
45
+
46
+ ```json
47
+ {
48
+ "name": "...",
49
+ "type": "bug",
50
+ "description": "**Repro:**\n1. ...\n\n**Expected:** ...\n\n**Actual:** ...",
51
+ "acceptanceCriteria": ["...", "..."]
52
+ }
53
+ ```
54
+
55
+ Run:
56
+ ```
57
+ echo '<the confirmed json>' | assist backlog add --json 2>&1
58
+ ```
59
+
60
+ Then show the user the item was created and suggest they can run `assist backlog run <id>` to start implementation.
package/dist/index.js CHANGED
@@ -6,7 +6,7 @@ import { Command } from "commander";
6
6
  // package.json
7
7
  var package_default = {
8
8
  name: "@staff0rd/assist",
9
- version: "0.141.0",
9
+ version: "0.142.0",
10
10
  type: "module",
11
11
  main: "dist/index.js",
12
12
  bin: {
@@ -2817,16 +2817,16 @@ async function run2(id) {
2817
2817
  const { item } = result;
2818
2818
  const plan2 = validatePlan(item);
2819
2819
  if (!plan2) return;
2820
- setStatus(id, "in-progress");
2821
2820
  const startPhase = item.currentPhase ?? 0;
2822
2821
  if (startPhase >= plan2.length) {
2823
- setStatus(id, "done");
2822
+ if (item.status !== "done") setStatus(id, "done");
2824
2823
  console.log(
2825
2824
  chalk35.green(`All phases already complete for #${id}: ${item.name}`)
2826
2825
  );
2827
2826
  console.log(chalk35.dim("Review the changes, then use /commit when ready."));
2828
2827
  return;
2829
2828
  }
2829
+ setStatus(id, "in-progress");
2830
2830
  console.log(chalk35.bold(`Running plan for #${id}: ${item.name}`));
2831
2831
  if (startPhase > 0) {
2832
2832
  console.log(
@@ -2842,6 +2842,7 @@ async function run2(id) {
2842
2842
  phaseIndex = await executePhase(item, phaseIndex, plan2);
2843
2843
  if (phaseIndex < 0) return;
2844
2844
  }
2845
+ setStatus(id, "done");
2845
2846
  console.log(chalk35.green(`
2846
2847
  All phases complete for #${id}: ${item.name}`));
2847
2848
  console.log(chalk35.dim("Review the changes, then use /commit when ready."));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@staff0rd/assist",
3
- "version": "0.141.0",
3
+ "version": "0.142.0",
4
4
  "type": "module",
5
5
  "main": "dist/index.js",
6
6
  "bin": {