saffron-ai 0.5.0 → 0.5.2

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/CHANGELOG.md CHANGED
@@ -4,6 +4,52 @@ All notable changes to Saffron, in one place: the `saffron-ai` runner (npm),
4
4
  the VS Code extension (`ChathurangaJayasinghe.saffron-vscode`) and the
5
5
  JetBrains plugin (`ai.saffron.jetbrains`). Dates are publish dates.
6
6
 
7
+ ## 0.5.2
8
+
9
+ Released 2026-09-15.
10
+
11
+ Runner
12
+
13
+ - Scenario Outlines record correctly: an assertion recorded from the page's
14
+ longer sentence now becomes the `<placeholder>` outright when it contains
15
+ the row's value (substring replacement used to leave a residue that no
16
+ other row could satisfy), and rows after the first replay the pending
17
+ proposal at zero AI instead of recording again and overwriting it. When
18
+ the proposal does not fit a row, the run is red with a clear message
19
+ rather than silently replacing another row's recording.
20
+ - The agent is told to record a Then step's quoted text exactly as
21
+ expected text, never the page's longer sentence.
22
+ - A Given step or StepSet guard that describes a state the page is already
23
+ in is no longer reported as an adaptation. The saucedemo example's
24
+ checkout set used to show a warning on its first recording for this.
25
+ - Yellow scenarios are labelled "pending review" in the run summary and the
26
+ HTML report instead of "adapted", since a proposal is not necessarily an
27
+ adaptation.
28
+
29
+ Editors
30
+
31
+ - `{env:VAR}` tokens are navigable: Ctrl/Cmd+click (go to definition)
32
+ opens the variable in `.env`, or `.env.example` when no `.env` exists;
33
+ hover says where it is defined and never shows the value. In the VS
34
+ Code extension and in `saffron lsp` for JetBrains and other editors.
35
+
36
+ ## 0.5.1
37
+
38
+ Released 2026-09-14.
39
+
40
+ Runner
41
+
42
+ - Example suite: `.saffron` files only, with StepSets invoked both at the
43
+ start of scenarios and in the middle ("Recover from a locked-out
44
+ login", and a checkout set that carries a data table).
45
+
46
+ Editors
47
+
48
+ - Grammar: quoted arguments, `<placeholders>` and `{env:…}` / `{date…}`
49
+ tokens get their own scopes, so editors colour them like Cucumber
50
+ parameters instead of the whole step line. Ships in the VS Code
51
+ extension, the JetBrains plugin and the package's TextMate bundle.
52
+
7
53
  ## 0.5.0
8
54
 
9
55
  Released 2026-09-14.
package/README.md CHANGED
@@ -37,10 +37,11 @@ npx saffron init # config + agent skill; offers the Saucedemo example sui
37
37
  npx saffron run
38
38
  ```
39
39
 
40
- No app of your own yet? `npx saffron init --examples` installs five short
41
- scenarios against the public demo shop at saucedemo.com (login, cart,
42
- checkout, a Scenario Outline, a StepSet) so the first run records and
43
- replays something real.
40
+ No app of your own yet? `npx saffron init --examples` installs a handful
41
+ of short `.saffron` scenarios against the public demo shop at saucedemo.com
42
+ (login, a Scenario Outline, cart, checkout, StepSets at the start and in
43
+ the middle of scenarios) so the first run records and replays something
44
+ real.
44
45
 
45
46
  **Built for the AI era:** the package ships an [Agent Skill](https://agentskills.io) that teaches Claude Code, Codex, Cursor, Copilot and any skill-aware agent to write Saffron tests efficiently. Reuse recorded wordings, keep assertions sacred, secrets as `{env:VAR}`, so the tests your agents write replay at zero tokens instead of paying for near-duplicate recordings.
46
47