model-language 1.0.4 → 1.1.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/README.md +23 -0
  3. data/lib/model_language.wasm +0 -0
  4. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 1e01c264f4c56a93becf855632daae12000a21235ff341bbe52157538ee7837c
4
- data.tar.gz: 1603cddc29142534ca340710566c6cfed799717ac802661e75de8de08b47b7a1
3
+ metadata.gz: d01f00f2f4b2eab22d05f7291dd2d4b6cbb1b634902f68bc2e01c02e9f110d53
4
+ data.tar.gz: 2b4b3d4db44bbe7c081c0ed30f51e16883be2eacd7c878d44b837e322394f323
5
5
  SHA512:
6
- metadata.gz: bc65efa93caffced9e91c96a6a048150d51cd11d7834b17fb1e540be8df10f463b2794b39a9e33e8b10a588954b781e822fd4abcdd68ff93b0a8a96636e9c824
7
- data.tar.gz: acee0a3418e6ddbbd2267884cabcae9502b9656fae6e9752dfc14e1a9ec255b3c2930b0c43609da886e6f97ae1b4c519eda351ee433649cd0e5b5d5728a851ba
6
+ metadata.gz: d77e1fe8115d12e93560cc06bf0f260d6f6b3f4dc72443b4ce424e9ade3a0ab1bab4cddedc08bf9008b52cd77af6be1528bfc50d160704ed354873c2d80edec0
7
+ data.tar.gz: 1e216f4a32d74848bc52e459f7a3662c312947cc2ccd72184cea78e0525d60142a4ff6527d2d946ff29d3d9e90186c09cf7a571c88e5c87a68113a7c05d4d955
data/README.md CHANGED
@@ -27,6 +27,29 @@ out = engine.render(
27
27
  puts out["text"] # => "Hi Vasyl!"
28
28
  ```
29
29
 
30
+ Directives embed machine-readable constraints in a prompt. They are stripped from
31
+ the rendered text and returned in `directives`:
32
+
33
+ ```ruby
34
+ src = <<~SRC
35
+ Help with billing.
36
+ {{verify_before: payments}}
37
+ {{identity: contact.email == payment.email}}
38
+ Greet {{contact.first_name | default: "there"}}.
39
+ SRC
40
+
41
+ out = engine.render(
42
+ src,
43
+ data: { "contact" => { "first_name" => "Vasyl" } },
44
+ schema: [
45
+ { "path" => "contact.email", "type" => "string" },
46
+ { "path" => "contact.first_name", "type" => "string" },
47
+ ]
48
+ )
49
+ puts out["text"] # => "Help with billing.\n\nGreet Vasyl."
50
+ puts out["directives"].map { |d| d["name"] } # => ["verify_before", "identity"]
51
+ ```
52
+
30
53
  - `render(template, data:, schema:, options:)` → `{"text", "warnings", "resolvedBranches", "directives", "tokenEstimate"}`
31
54
  - `validate(template, schema:, options:)` → `{"diagnostics", "maxTokenEstimate"}`
32
55
  - `parse(template)` → `{"ast", "diagnostics"}`
Binary file
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: model-language
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.4
4
+ version: 1.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Wexio
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2026-07-07 00:00:00.000000000 Z
11
+ date: 2026-07-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: wasmtime