Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions .changeset/remove-automate-command.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
---
"@qawolf/cli": minor
---

`qawolf automate` has been removed. The command asked QA Wolf to automate draft flows, and it is deprecated. Running it now reports an unknown command.

The public API endpoint behind it is unchanged, so anything that calls QA Wolf directly still works.
3 changes: 1 addition & 2 deletions skills/qawolf-cli/SKILL.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
name: qawolf-cli
description: Manage QA Wolf through the qawolf CLI. Use when asked to create, update, or list coverage requests, bug reports, or maintenance reports; start a run of flows or tags on the QA Wolf platform or read a run's results; list, set, or delete environment variables; manage environments, flows, or tags; request automation of draft flows; run or list flows locally; authenticate; install the local runtime; or drive a live cloud browser (launch a runner, screenshot it, click and type on it, read its recorder) from a shell.
description: Manage QA Wolf through the qawolf CLI. Use when asked to create, update, or list coverage requests, bug reports, or maintenance reports; start a run of flows or tags on the QA Wolf platform or read a run's results; list, set, or delete environment variables; manage environments, flows, or tags; run or list flows locally; authenticate; install the local runtime; or drive a live cloud browser (launch a runner, screenshot it, click and type on it, read its recorder) from a shell.
license: Apache-2.0
compatibility: Requires the qawolf CLI on PATH. Install it from @qawolf/cli or use a standalone binary from GitHub Releases.
---
Expand Down Expand Up @@ -131,7 +131,6 @@ that `url`; never guess a route and never send a repository link in its place.
| `qawolf auth logout` | local | Remove stored credentials |
| `qawolf auth switch` | local | Choose which workspace to work in |
| `qawolf auth whoami` | read | Show authentication status |
| `qawolf automate` | write | Request automation for draft flows. First create a named local .flow.ts draft for every requested journey that does not already have a matching draft; never reuse a generic starter or placeholder. Each new draft must start with a JSDoc Goal: description, import flow from @qawolf/flows/web, and use export default flow(...); a comment-only file or direct test(...) call is not a valid draft. Commit and push all changes with Git to publish them, then list remote drafts to resolve every selected ID. Do not use patch to create or rename a selected flow. Finally make one automation request containing all requested flow IDs. |
| `qawolf doctor` | local | Diagnose problems running flows locally |
| `qawolf email find` | read | List the workspace's inbox, or its sent mail, newest first. Read a message body with email.get. |
| `qawolf email get` | read | Read one email of the workspace, with its plain text and HTML bodies. Use it to pull a sign-in code or a verification link out of a message. |
Expand Down
14 changes: 0 additions & 14 deletions src/commands/__snapshots__/help.test.ts.snap
Original file line number Diff line number Diff line change
Expand Up @@ -24,20 +24,6 @@ Commands:
flows need
runner Drive an interactive runner on the QA Wolf
platform
automate [options] Request automation for draft flows. First create
a named local .flow.ts draft for every requested
journey that does not already have a matching
draft; never reuse a generic starter or
placeholder. Each new draft must start with a
JSDoc Goal: description, import flow from
@qawolf/flows/web, and use export default
flow(...); a comment-only file or direct
test(...) call is not a valid draft. Commit and
push all changes with Git to publish them, then
list remote drafts to resolve every selected ID.
Do not use patch to create or rename a selected
flow. Finally make one automation request
containing all requested flow IDs.
email QA Wolf public API email commands
environment QA Wolf public API environment commands
file QA Wolf public API file commands
Expand Down
9 changes: 9 additions & 0 deletions src/commands/program.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -139,4 +139,13 @@ describe("public API commands", () => {
const create = run?.commands.find((command) => command.name() === "create");
expect(create).toBeDefined();
});

it("does not register the deprecated automate command", () => {
const program = createProgram({ signals: noopSignals });

const automate = program.commands.find(
(command) => command.name() === "automate",
);
expect(automate).toBeUndefined();
});
});
2 changes: 1 addition & 1 deletion src/commands/qawolfCliSkill.template.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
name: qawolf-cli
description: Manage QA Wolf through the qawolf CLI. Use when asked to create, update, or list coverage requests, bug reports, or maintenance reports; start a run of flows or tags on the QA Wolf platform or read a run's results; list, set, or delete environment variables; manage environments, flows, or tags; request automation of draft flows; run or list flows locally; authenticate; install the local runtime; or drive a live cloud browser (launch a runner, screenshot it, click and type on it, read its recorder) from a shell.
description: Manage QA Wolf through the qawolf CLI. Use when asked to create, update, or list coverage requests, bug reports, or maintenance reports; start a run of flows or tags on the QA Wolf platform or read a run's results; list, set, or delete environment variables; manage environments, flows, or tags; run or list flows locally; authenticate; install the local runtime; or drive a live cloud browser (launch a runner, screenshot it, click and type on it, read its recorder) from a shell.
license: Apache-2.0
compatibility: Requires the qawolf CLI on PATH. Install it from @qawolf/cli or use a standalone binary from GitHub Releases.
---
Expand Down
11 changes: 9 additions & 2 deletions src/domains/publicApi/skippedContracts.ts
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,7 @@
// prefix. The group is claimed as a whole here, so the contracts whose commands
// land in a later change are absent rather than generated in a shape the rest of
// the group does not match.
/** Every contract the generator passes over. */
export const skippedContractNames: ReadonlySet<string> = new Set([
const handWrittenContractNames: readonly string[] = [
"agent.get",
"agent.send",
"flow.list",
Expand All @@ -43,4 +42,12 @@ export const skippedContractNames: ReadonlySet<string> = new Set([
"runner.stopRun",
"runner.takeScreenshot",
"runner.terminate",
];

const deprecatedContractNames: readonly string[] = ["automate"];

/** Every contract the generator passes over. */
export const skippedContractNames: ReadonlySet<string> = new Set([
...handWrittenContractNames,
...deprecatedContractNames,
]);
Loading