tewip-ai 0.70.5 → 0.70.6

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.
@@ -54,6 +54,35 @@ export async function runJira(cmd) {
54
54
  return;
55
55
  }
56
56
  const config = jiraFromEnv();
57
+ // Without a tracker, show what would be filed anyway.
58
+ //
59
+ // This file's own comment says "It shows what it would create and creates nothing until asked",
60
+ // and the help text says "Shows what it would create; --create actually files them" - but the
61
+ // refusal below ran whatever was asked, so a person who only wanted to see the list had to go and
62
+ // get a Jira account first. `bugs`, which does the same job for failures, has always answered this
63
+ // case: "No tracker was contacted: this is what would be filed."
64
+ //
65
+ // What a dry run genuinely cannot do without a server is say which scenarios are **already**
66
+ // filed, because that answer lives in the tracker. So it says so rather than implying the whole
67
+ // list is new work.
68
+ if (!config?.token && !cmd.create) {
69
+ const planned = JSON.parse(readFileSync(cmd.planFile, 'utf8'));
70
+ const wanted = chosen(planned.plan, cmd.only);
71
+ if (wanted.length === 0)
72
+ throw new Error(cmd.only.length ? `none of ${cmd.only.join(', ')} is in ${cmd.planFile}` : 'every scenario in the plan is already covered by a test');
73
+ console.log([
74
+ `Plan: ${planned.plan.title}`,
75
+ `Project: ${cmd.projectKey || '(none given)'}`,
76
+ '',
77
+ 'No tracker was contacted: this is what would be filed.',
78
+ ...wanted.map((scenario) => ` ${scenario.id} would create: ${scenario.id} ${scenario.title}`),
79
+ '',
80
+ `${wanted.length} item(s). Tewip could not check which of these you have already filed - that answer is in the tracker, not in the plan - so read the list as everything, not as new work.`,
81
+ 'To file them, set a tracker up and add --create:',
82
+ jiraHelp(),
83
+ ].join(String.fromCharCode(10)));
84
+ return;
85
+ }
57
86
  if (!config)
58
87
  throw new Error(jiraHelp());
59
88
  if (!config.token)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "tewip-ai",
3
- "version": "0.70.5",
3
+ "version": "0.70.6",
4
4
  "mcpName": "io.github.hmamut39/tewip",
5
5
  "description": "Tewip finds why each failing test failed - real bug, flaky test, environment, test data or changed selector - for any stack, from the command line, CI, or your editor.",
6
6
  "keywords": [