inquirex 0.7.0 → 0.8.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.
Files changed (4) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +48 -18
  3. data/lib/inquirex/version.rb +1 -1
  4. metadata +1 -1
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 67e5f1389368dbb7416aa60a83a7cf613997e72d728d4fb10bd8290741c83901
4
- data.tar.gz: 105ed41192f4208d7a856e2c12edae0403343f19af45faeae7d557e5bd7048ef
3
+ metadata.gz: ae920c980bad7954d0f20a2973daa71998443c206d8e383382a0045404bbfd0c
4
+ data.tar.gz: 251356f0766dcab1a469cd2cfcdb71a20f4dcc4b9797f7fbcd5795c4d19533de
5
5
  SHA512:
6
- metadata.gz: 9b2a1379ab0b37450c4621b03068939e63a1559dc5dec0d91de03d3819ba765d93f1c2587313738f5bd93bf0a9bbdfb8de5061f715d563407a49b306d7819d6d
7
- data.tar.gz: 66313dc2a02d2ee469c8076e752ca73b5cd15b857ae475f91e566eea0f18f1756f8dfdddb87b9e66ce7fbde58a5871fc30fcd56bf30f9d812f3dc3abbfae4883
6
+ metadata.gz: 4d87c1cdd2862ba816f3d593ff22b0ae9b57f2596e293e6974153bfc11cd499084ef3a8dc2fe58d877d073149514137bf9e87b0139e17afd682b497b7fb4c602
7
+ data.tar.gz: 71141f1d58413a3c5f03c90585ff4f845608cdd102a13fe3ac330b0c9d6e096b0ee8b393e92bbda9f77793ed6b76425f2750dbab02fbf845159bd19e620d1568
data/CHANGELOG.md CHANGED
@@ -1,24 +1,54 @@
1
- ## [Unreleased]
1
+ # Changelog
2
2
 
3
- ## [0.7.0] - 2026-07-21
3
+ ## [v0.7.0](https://github.com/inquirex/inquirex/tree/v0.7.0) (2026-07-31)
4
4
 
5
- - `required false` DSL builder method on collecting steps (`ask`, `confirm`): marks a question as optional so widgets render a small Skip control. Default remains `required true`, so every existing flow is unchanged.
6
- - `Node#required?` predicate; step JSON gains `"required": false` (omitted when true), round-tripping through `to_json` / `from_json`.
7
- - `Engine#skip` — user-initiated skip of the current optional step: records the step's `default` (when declared) into the answers and accumulators exactly as if answered, marks the step id in the new `Engine#skipped` list, and advances through transitions like `#answer`. Raises `Errors::RequiredStepError` (new) on a required step, `NonCollectingStepError` on a display step.
8
- - Skip without a default writes no answers entry (a missing key and `nil` branch identically in rules; the "declined" signal lives in `skipped`).
9
- - `Engine#skipped` / `Engine#skipped?(step_id)` distinguish default-by-skip values from user-provided answers; the list survives `to_state` / `from_state` (string→symbol normalized) and is merged into `Engine#answers_with_metadata` under `:skipped`.
10
- - Steps elided automatically by `skip_if` rules are NOT marked as skipped — auto-elision is flow logic, `#skip` is a user action (see docs/design/required-and-skip.md).
5
+ [Full Changelog](https://github.com/inquirex/inquirex/compare/v0.6.1...v0.7.0)
11
6
 
12
- ## [0.6.0] - 2026-07-19
7
+ **Merged pull requests:**
13
8
 
14
- - Post-completion `action` DSL verb with an extensible effect registry
15
- - `send_email` effect: builds `Mail::Message` objects (multipart text/HTML) from `{{field}}` templates into `Answers#outbox`; delivery is the host application's responsibility. The `mail` gem is a soft dependency.
16
- - `run { |answers, outbox| ... }` escape-hatch effect (stripped from JSON)
17
- - `webhook` effect: POSTs the answers envelope to a static https URL whose host must be covered by the new top-level `allowed_domains` declaration; enforcement runs in `Definition#validate!`, so tampered JSON definitions fail at rehydration
18
- - `Inquirex::Actions::Runner` and `Inquirex::Actions.run(definition, answers)`
19
- - Actions serialize to/from JSON with their rule gates
20
- - `CompletionMetadata` (OpenStruct; `engine` and `engine_version` required) stamped by the engine at flow completion, enrichable by front-ends via the new `Engine#after_completion` hook, persisted in engine state, and merged into answers by `Engine#answers_with_metadata`
9
+ - Add required false and user-initiated Engine\#skip [\#4](https://github.com/inquirex/inquirex/pull/4) ([kigster](https://github.com/kigster))
21
10
 
22
- ## [0.1.0] - 2026-04-13
11
+ ## [v0.6.1](https://github.com/inquirex/inquirex/tree/v0.6.1) (2026-07-20)
23
12
 
24
- - Initial release
13
+ [Full Changelog](https://github.com/inquirex/inquirex/compare/v0.6.0...v0.6.1)
14
+
15
+ ## [v0.6.0](https://github.com/inquirex/inquirex/tree/v0.6.0) (2026-07-20)
16
+
17
+ [Full Changelog](https://github.com/inquirex/inquirex/compare/v0.5.0...v0.6.0)
18
+
19
+ **Merged pull requests:**
20
+
21
+ - Support for actions such as email send [\#3](https://github.com/inquirex/inquirex/pull/3) ([kigster](https://github.com/kigster))
22
+ - Add action DSL verb building emails into Answers\#outbox [\#2](https://github.com/inquirex/inquirex/pull/2) ([kigster](https://github.com/kigster))
23
+
24
+ ## [v0.5.0](https://github.com/inquirex/inquirex/tree/v0.5.0) (2026-07-16)
25
+
26
+ [Full Changelog](https://github.com/inquirex/inquirex/compare/v0.4.1...v0.5.0)
27
+
28
+ ## [v0.4.1](https://github.com/inquirex/inquirex/tree/v0.4.1) (2026-07-13)
29
+
30
+ [Full Changelog](https://github.com/inquirex/inquirex/compare/v0.4.0...v0.4.1)
31
+
32
+ ## [v0.4.0](https://github.com/inquirex/inquirex/tree/v0.4.0) (2026-07-13)
33
+
34
+ [Full Changelog](https://github.com/inquirex/inquirex/compare/v0.3.1...v0.4.0)
35
+
36
+ ## [v0.3.1](https://github.com/inquirex/inquirex/tree/v0.3.1) (2026-04-15)
37
+
38
+ [Full Changelog](https://github.com/inquirex/inquirex/compare/v0.3.0...v0.3.1)
39
+
40
+ ## [v0.3.0](https://github.com/inquirex/inquirex/tree/v0.3.0) (2026-04-14)
41
+
42
+ [Full Changelog](https://github.com/inquirex/inquirex/compare/v0.2.0...v0.3.0)
43
+
44
+ **Merged pull requests:**
45
+
46
+ - Add accumulators for pricing and scoring [\#1](https://github.com/inquirex/inquirex/pull/1) ([kigster](https://github.com/kigster))
47
+
48
+ ## [v0.2.0](https://github.com/inquirex/inquirex/tree/v0.2.0) (2026-04-13)
49
+
50
+ [Full Changelog](https://github.com/inquirex/inquirex/compare/a07eeaaa4d459139164e97c622d1d3038b28a5f5...v0.2.0)
51
+
52
+
53
+
54
+ \* *This Changelog was automatically generated by [github_changelog_generator](https://github.com/github-changelog-generator/github-changelog-generator)*
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Inquirex
4
- VERSION = "0.7.0"
4
+ VERSION = "0.8.0"
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: inquirex
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.0
4
+ version: 0.8.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Konstantin Gredeskoul