@plune-ai/cli 0.7.0 → 0.9.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.
package/README.md CHANGED
@@ -103,12 +103,41 @@ provider API key is read from the environment based on `provider.type`:
103
103
  | `plune login` | Save a [Plune platform](https://plune.ai/platform) API token so `sync` and `ingest` can reach it. The token is **checked against the API before it is saved**, so a wrong one fails here rather than two commands later. Get one at `https://beta.plune.ai` → Settings → API tokens. Flags: `--token <token>` (omit to paste it or pipe it via stdin), `--skip-verify` (save without checking, for offline setup). |
104
104
  | `plune logout` | Remove the saved token. |
105
105
  | `plune sync` | Upload the latest local run to the platform. Flags: `--file <path>` to send a specific run JSON. |
106
+ | `plune run import <file>` | Turn a **JUnit XML** or **Playwright JSON** report into a run in Plune. Needs no provider key — nothing is generated. Flags: `--format junit\|playwright-json` (detected from the file when omitted), `--key <externalKey>` to land several reports in one run, `--create` to offer unmatched tests to the review queue. |
106
107
  | `plune ingest [dir]` | Record a [Cairn](https://github.com/plune-ai/cairn) run in Plune. Omit `[dir]` for the newest run under `./runs`, or name the directory holding `report.json`. Generated cases arrive as **review proposals** — nothing is created until a person approves it. |
107
108
 
108
109
  Global flags: `-c, --config <path>` · `-v, --verbose` · `--no-color`.
109
110
 
110
111
  **Exit codes:** `0` everything passed · `1` an assertion failed · `2` configuration or execution error.
111
112
 
113
+ ## Already running tests? Bring the results in
114
+
115
+ Everything above generates checks, which is why it needs a provider key. If you already have a
116
+ suite, there is nothing to generate — the results exist and only have to arrive, and that route
117
+ costs nothing beyond a Plune token.
118
+
119
+ ```bash
120
+ plune login
121
+ plune run import ./junit.xml # Jest, Vitest, pytest, PHPUnit, Surefire, Cypress, …
122
+ plune run import ./playwright.json # or Playwright's own JSON report
123
+ ```
124
+
125
+ The format is read from the file, not from its name. Statuses go over as the report wrote them and
126
+ Plune maps them per project, so `error` can mean something different to your team than to ours.
127
+ A test Plune has no case for is counted, and `--create` offers it to the review queue instead —
128
+ nothing becomes a test case until a person approves it.
129
+
130
+ For a Playwright suite there is also [`@plune-ai/playwright`](https://www.npmjs.com/package/@plune-ai/playwright),
131
+ which reports as the run happens and needs no second step:
132
+
133
+ ```js
134
+ // playwright.config.ts
135
+ reporter: [['list'], ['@plune-ai/playwright']],
136
+ ```
137
+
138
+ Sharded CI? Give every job the same `--key` (or `PLUNE_RUN`), and close the run with
139
+ `plune run finish <id>` once they are all done.
140
+
112
141
  ## Optional: keep a history
113
142
 
114
143
  Everything above works with no account, no network, and no token — that does not change. If you