@executioncontrolprotocol/harnesses-browser-nano 0.10.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 (87) hide show
  1. package/README.md +42 -0
  2. package/dist/_internal/request-capability-hints.d.ts +49 -0
  3. package/dist/_internal/request-capability-hints.d.ts.map +1 -0
  4. package/dist/_internal/request-capability-hints.js +488 -0
  5. package/dist/_internal/request-capability-hints.js.map +1 -0
  6. package/dist/browser-nano-harness.d.ts +71 -0
  7. package/dist/browser-nano-harness.d.ts.map +1 -0
  8. package/dist/browser-nano-harness.js +90 -0
  9. package/dist/browser-nano-harness.js.map +1 -0
  10. package/dist/harness-ids.d.ts +6 -0
  11. package/dist/harness-ids.d.ts.map +1 -0
  12. package/dist/harness-ids.js +6 -0
  13. package/dist/harness-ids.js.map +1 -0
  14. package/dist/harness-nano-config.d.ts +53 -0
  15. package/dist/harness-nano-config.d.ts.map +1 -0
  16. package/dist/harness-nano-config.js +94 -0
  17. package/dist/harness-nano-config.js.map +1 -0
  18. package/dist/index.d.ts +13 -0
  19. package/dist/index.d.ts.map +1 -0
  20. package/dist/index.js +12 -0
  21. package/dist/index.js.map +1 -0
  22. package/dist/intent-classification.d.ts +10 -0
  23. package/dist/intent-classification.d.ts.map +1 -0
  24. package/dist/intent-classification.js +177 -0
  25. package/dist/intent-classification.js.map +1 -0
  26. package/dist/multi-shot-chat.d.ts +20 -0
  27. package/dist/multi-shot-chat.d.ts.map +1 -0
  28. package/dist/multi-shot-chat.js +136 -0
  29. package/dist/multi-shot-chat.js.map +1 -0
  30. package/dist/prompts/build-nano-prompt.d.ts +11 -0
  31. package/dist/prompts/build-nano-prompt.d.ts.map +1 -0
  32. package/dist/prompts/build-nano-prompt.js +17 -0
  33. package/dist/prompts/build-nano-prompt.js.map +1 -0
  34. package/dist/prompts/fixtures-root.d.ts +5 -0
  35. package/dist/prompts/fixtures-root.d.ts.map +1 -0
  36. package/dist/prompts/fixtures-root.js +7 -0
  37. package/dist/prompts/fixtures-root.js.map +1 -0
  38. package/dist/prompts/index.d.ts +4 -0
  39. package/dist/prompts/index.d.ts.map +1 -0
  40. package/dist/prompts/index.js +4 -0
  41. package/dist/prompts/index.js.map +1 -0
  42. package/dist/prompts/load-harness-prompt.browser.d.ts +4 -0
  43. package/dist/prompts/load-harness-prompt.browser.d.ts.map +1 -0
  44. package/dist/prompts/load-harness-prompt.browser.js +32 -0
  45. package/dist/prompts/load-harness-prompt.browser.js.map +1 -0
  46. package/dist/prompts/load-harness-prompt.d.ts +2 -0
  47. package/dist/prompts/load-harness-prompt.d.ts.map +1 -0
  48. package/dist/prompts/load-harness-prompt.js +2 -0
  49. package/dist/prompts/load-harness-prompt.js.map +1 -0
  50. package/dist/prompts/load-harness-prompt.node.d.ts +4 -0
  51. package/dist/prompts/load-harness-prompt.node.d.ts.map +1 -0
  52. package/dist/prompts/load-harness-prompt.node.js +20 -0
  53. package/dist/prompts/load-harness-prompt.node.js.map +1 -0
  54. package/dist/prompts/nano-prompt-fixture-ids.d.ts +10 -0
  55. package/dist/prompts/nano-prompt-fixture-ids.d.ts.map +1 -0
  56. package/dist/prompts/nano-prompt-fixture-ids.js +8 -0
  57. package/dist/prompts/nano-prompt-fixture-ids.js.map +1 -0
  58. package/dist/register.d.ts +5 -0
  59. package/dist/register.d.ts.map +1 -0
  60. package/dist/register.js +14 -0
  61. package/dist/register.js.map +1 -0
  62. package/dist/workflow-assistant.d.ts +19 -0
  63. package/dist/workflow-assistant.d.ts.map +1 -0
  64. package/dist/workflow-assistant.js +275 -0
  65. package/dist/workflow-assistant.js.map +1 -0
  66. package/dist/workflow-authoring.d.ts +13 -0
  67. package/dist/workflow-authoring.d.ts.map +1 -0
  68. package/dist/workflow-authoring.js +426 -0
  69. package/dist/workflow-authoring.js.map +1 -0
  70. package/fixtures/eval-cases/assistant.cases.json +658 -0
  71. package/fixtures/eval-cases/chat.cases.json +320 -0
  72. package/fixtures/eval-cases/flow.cases.json +505 -0
  73. package/fixtures/eval-cases/intent.cases.json +587 -0
  74. package/fixtures/eval-cases/workflow-create.cases.json +493 -0
  75. package/fixtures/eval-cases/workflow-patch.cases.json +379 -0
  76. package/fixtures/harness-prompts/intent-classification.prompt.json +72 -0
  77. package/fixtures/harness-prompts/workflow-assistant.prompt.json +86 -0
  78. package/fixtures/harness-prompts/workflow-authoring-create.prompt.json +50 -0
  79. package/fixtures/harness-prompts/workflow-authoring-patch.prompt.json +54 -0
  80. package/fixtures/runs/completed-with-refs.json +18 -0
  81. package/fixtures/runs/failed-echo-step.json +29 -0
  82. package/fixtures/runs/running-pending.json +14 -0
  83. package/fixtures/workflows/echo-validate-reorder.json +26 -0
  84. package/fixtures/workflows/echo-workflow.json +20 -0
  85. package/fixtures/workflows/multi-cap-workflow.json +34 -0
  86. package/fixtures/workflows/two-step-chain.json +26 -0
  87. package/package.json +49 -0
@@ -0,0 +1,320 @@
1
+ {
2
+ "cases": [
3
+ {
4
+ "id": "chat-01",
5
+ "suite": "chat",
6
+ "title": "Troubleshoot failure routes to patch",
7
+ "harness": "chat",
8
+ "model": "default",
9
+ "input": {
10
+ "message": "The workflow failed on echo, help me fix it.",
11
+ "manifestRef": "workflows/echo-workflow.json"
12
+ },
13
+ "assertions": {
14
+ "deterministic": [
15
+ {
16
+ "kind": "invokeSuccess"
17
+ },
18
+ {
19
+ "kind": "classifiedIntent",
20
+ "value": "workflow-patch"
21
+ },
22
+ {
23
+ "kind": "shotCount",
24
+ "value": 2
25
+ },
26
+ {
27
+ "kind": "promptPhase",
28
+ "shotIndex": 0,
29
+ "value": "unfiltered"
30
+ },
31
+ {
32
+ "kind": "promptPhase",
33
+ "shotIndex": 1,
34
+ "value": "contextualized"
35
+ },
36
+ {
37
+ "kind": "validationValid"
38
+ }
39
+ ],
40
+ "judge": {
41
+ "enabled": false
42
+ }
43
+ }
44
+ },
45
+ {
46
+ "id": "chat-02",
47
+ "suite": "chat",
48
+ "title": "Create routing",
49
+ "harness": "chat",
50
+ "model": "default",
51
+ "input": {
52
+ "message": "I need a new workflow with echo and summarize."
53
+ },
54
+ "assertions": {
55
+ "deterministic": [
56
+ {
57
+ "kind": "invokeSuccess"
58
+ },
59
+ {
60
+ "kind": "classifiedIntent",
61
+ "value": "workflow-create"
62
+ },
63
+ {
64
+ "kind": "shotCount",
65
+ "value": 2
66
+ },
67
+ {
68
+ "kind": "artifactSchema",
69
+ "value": "@executioncontrolprotocol.workflow"
70
+ }
71
+ ],
72
+ "judge": {
73
+ "enabled": false
74
+ }
75
+ }
76
+ },
77
+ {
78
+ "id": "chat-03",
79
+ "suite": "chat",
80
+ "title": "FAQ how patching works",
81
+ "harness": "chat",
82
+ "model": "default",
83
+ "input": {
84
+ "message": "How does workflow patching work?"
85
+ },
86
+ "assertions": {
87
+ "deterministic": [
88
+ {
89
+ "kind": "invokeSuccess"
90
+ },
91
+ {
92
+ "kind": "classifiedIntent",
93
+ "value": "faq"
94
+ },
95
+ {
96
+ "kind": "classifiedTopic",
97
+ "contains": "patch"
98
+ },
99
+ {
100
+ "kind": "shotCount",
101
+ "value": 2
102
+ },
103
+ {
104
+ "kind": "replySchema"
105
+ }
106
+ ],
107
+ "judge": {
108
+ "enabled": true,
109
+ "goal": "Explains ECP patching without changing a workflow",
110
+ "classifiedIntent": "faq",
111
+ "requireApproved": true
112
+ }
113
+ }
114
+ },
115
+ {
116
+ "id": "chat-04",
117
+ "suite": "chat",
118
+ "title": "What is ECP",
119
+ "harness": "chat",
120
+ "model": "default",
121
+ "input": {
122
+ "message": "What is ECP?"
123
+ },
124
+ "assertions": {
125
+ "deterministic": [
126
+ {
127
+ "kind": "invokeSuccess"
128
+ },
129
+ {
130
+ "kind": "classifiedIntent",
131
+ "value": "faq"
132
+ },
133
+ {
134
+ "kind": "replySchema"
135
+ },
136
+ {
137
+ "kind": "answerContains",
138
+ "text": "ECP"
139
+ }
140
+ ],
141
+ "judge": {
142
+ "enabled": true,
143
+ "goal": "Defines ECP briefly",
144
+ "classifiedIntent": "faq",
145
+ "rubric": "One or two sentences, no markdown fences",
146
+ "requireApproved": true
147
+ }
148
+ }
149
+ },
150
+ {
151
+ "id": "chat-05",
152
+ "suite": "chat",
153
+ "title": "Capabilities question",
154
+ "harness": "chat",
155
+ "model": "default",
156
+ "input": {
157
+ "message": "What extensions are available in this environment?"
158
+ },
159
+ "assertions": {
160
+ "deterministic": [
161
+ {
162
+ "kind": "invokeSuccess"
163
+ },
164
+ {
165
+ "kind": "classifiedIntent",
166
+ "value": "general"
167
+ },
168
+ {
169
+ "kind": "replySchema"
170
+ },
171
+ {
172
+ "kind": "answerContains",
173
+ "text": "ecp"
174
+ }
175
+ ],
176
+ "judge": {
177
+ "enabled": true,
178
+ "goal": "Lists ECP extensions",
179
+ "classifiedIntent": "general",
180
+ "requireApproved": true
181
+ }
182
+ }
183
+ },
184
+ {
185
+ "id": "chat-06",
186
+ "suite": "chat",
187
+ "title": "Patch label change",
188
+ "harness": "chat",
189
+ "model": "default",
190
+ "input": {
191
+ "message": "Change the echo step label to Patched Echo.",
192
+ "manifestRef": "workflows/echo-workflow.json"
193
+ },
194
+ "assertions": {
195
+ "deterministic": [
196
+ {
197
+ "kind": "invokeSuccess"
198
+ },
199
+ {
200
+ "kind": "classifiedIntent",
201
+ "value": "workflow-patch"
202
+ },
203
+ {
204
+ "kind": "validationValid"
205
+ }
206
+ ],
207
+ "judge": {
208
+ "enabled": false
209
+ }
210
+ }
211
+ },
212
+ {
213
+ "id": "chat-07",
214
+ "suite": "chat",
215
+ "title": "Identity question",
216
+ "harness": "chat",
217
+ "model": "default",
218
+ "input": {
219
+ "message": "What can you do?"
220
+ },
221
+ "assertions": {
222
+ "deterministic": [
223
+ {
224
+ "kind": "invokeSuccess"
225
+ },
226
+ {
227
+ "kind": "classifiedIntent",
228
+ "value": "general"
229
+ },
230
+ {
231
+ "kind": "replySchema"
232
+ },
233
+ {
234
+ "kind": "answerContains",
235
+ "text": "workflow"
236
+ }
237
+ ],
238
+ "judge": {
239
+ "enabled": true,
240
+ "goal": "States assistant capabilities",
241
+ "classifiedIntent": "general",
242
+ "requireApproved": true
243
+ }
244
+ }
245
+ },
246
+ {
247
+ "id": "chat-08",
248
+ "suite": "chat",
249
+ "title": "Off-topic joke",
250
+ "harness": "chat",
251
+ "model": "default",
252
+ "input": {
253
+ "message": "Tell me a joke."
254
+ },
255
+ "assertions": {
256
+ "deterministic": [
257
+ {
258
+ "kind": "invokeSuccess"
259
+ },
260
+ {
261
+ "kind": "classifiedIntent",
262
+ "value": "general"
263
+ },
264
+ {
265
+ "kind": "classifiedTopic",
266
+ "contains": "off-topic"
267
+ },
268
+ {
269
+ "kind": "replySchema"
270
+ },
271
+ {
272
+ "kind": "answerRedirectsToScope"
273
+ }
274
+ ],
275
+ "judge": {
276
+ "enabled": true,
277
+ "goal": "Politely declines off-topic request and redirects to ECP/workflow topics",
278
+ "rubric": "Brief polite decline mentioning workflows, ECP, or capabilities",
279
+ "requireApproved": true,
280
+ "classifiedIntent": "general"
281
+ }
282
+ }
283
+ },
284
+ {
285
+ "id": "chat-09",
286
+ "suite": "chat",
287
+ "title": "Run status assistant",
288
+ "harness": "chat",
289
+ "model": "default",
290
+ "input": {
291
+ "message": "What is the run status?",
292
+ "runContextFixture": "runs/failed-echo-step.json"
293
+ },
294
+ "assertions": {
295
+ "deterministic": [
296
+ {
297
+ "kind": "invokeSuccess"
298
+ },
299
+ {
300
+ "kind": "shotCount",
301
+ "value": 2
302
+ },
303
+ {
304
+ "kind": "replySchema"
305
+ },
306
+ {
307
+ "kind": "answerContains",
308
+ "text": "fail"
309
+ }
310
+ ],
311
+ "judge": {
312
+ "enabled": true,
313
+ "goal": "Reports failed run status",
314
+ "rubric": "Mentions failed status from run context",
315
+ "requireApproved": true
316
+ }
317
+ }
318
+ }
319
+ ]
320
+ }