jishnunair commited on
Commit
f7bcf8d
·
verified ·
1 Parent(s): 1126c7d

Add Cascade Bench (37 workflow trajectories)

Browse files
Files changed (2) hide show
  1. README.md +71 -0
  2. data/train.jsonl +0 -0
README.md ADDED
@@ -0,0 +1,71 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ ---
2
+ license: other
3
+ language:
4
+ - en
5
+ tags:
6
+ - servicenow
7
+ - workflows
8
+ - business-rules
9
+ - agents
10
+ - benchmark
11
+ pretty_name: Cascade Bench
12
+ size_categories:
13
+ - n<1K
14
+ configs:
15
+ - config_name: default
16
+ data_files:
17
+ - split: train
18
+ path: data/train.jsonl
19
+ ---
20
+
21
+ # Cascade Bench
22
+
23
+ A benchmark of ServiceNow workflow trajectories ("World of Workflows++"). Each row is a
24
+ single tool action applied to a domain, together with the seed/supporting data, the table
25
+ schemas, the business rules that can fire, and the resulting cascade of execution logs and
26
+ audit records.
27
+
28
+ ## Summary
29
+
30
+ - **37 samples**, one per workflow domain (e.g. `accounts_payable_processing`,
31
+ `incident_escalation`, `change_management`).
32
+ - One split: `train`.
33
+
34
+ ## Columns
35
+
36
+ | Column | Type | Description |
37
+ |---|---|---|
38
+ | `domain` | string | Workflow domain / sample id |
39
+ | `topology` | string | Cascade topology (e.g. `linear`) |
40
+ | `total_brs_fired` | int | Business rules that actually fired |
41
+ | `expected_br_count` | int | Expected number of business rules |
42
+ | `audit_count` | int | Number of deduped audit records |
43
+ | `raw_audit_count` | int | Number of raw audit records |
44
+ | `tool_name` | string | The action invoked |
45
+ | `parameters` | string (JSON) | `{table_name, operation, fields}` — `fields` keys are domain-specific |
46
+ | `seed_data` | string (JSON) | Initial record state for the target table |
47
+ | `supporting_data` | string (JSON) | Map of related table name → rows |
48
+ | `schema` | string (JSON) | Map of table name → column schema |
49
+ | `business_rules` | list[struct] | `name, fires_on_table, filter_condition, trigger_sequence, trigger_type, order, script` |
50
+ | `ewm_logs` | list[struct] | Execution-log entries (`u_br_name`, `u_table_name`, `u_field_name`, `u_old_value`, `u_new_value`, …) |
51
+ | `audits` | list[struct] | Deduped field-level audit (`tablename, fieldname, oldvalue, newvalue, documentkey`) |
52
+ | `raw_audits` | list[struct] | Raw field-level audit, same shape as `audits` |
53
+
54
+ > The four JSON-string columns (`parameters`, `seed_data`, `supporting_data`, `schema`)
55
+ > hold dicts whose keys (table/field names) differ per domain, so they are stored as
56
+ > serialized JSON to keep a stable Arrow schema. Call `json.loads()` to use them.
57
+
58
+ ## Usage
59
+
60
+ ```python
61
+ from datasets import load_dataset
62
+ import json
63
+
64
+ ds = load_dataset("ServiceNow-AI/cascade_bench", split="train")
65
+
66
+ row = ds[0]
67
+ print(row["domain"], row["tool_name"])
68
+ schema = json.loads(row["schema"]) # variable-key dict
69
+ params = json.loads(row["parameters"])
70
+ brs = row["business_rules"] # native list of structs
71
+ ```
data/train.jsonl ADDED
The diff for this file is too large to render. See raw diff