roast-ai 0.4.8 → 0.4.9

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 (81) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +1 -0
  3. data/.rubocop.yml +1 -0
  4. data/Gemfile.lock +3 -3
  5. data/README.md +9 -5
  6. data/dsl/less_simple.rb +112 -0
  7. data/dsl/prototype.rb +17 -0
  8. data/dsl/simple.rb +5 -7
  9. data/dsl/step_communication.rb +18 -0
  10. data/examples/grading/README.md +46 -0
  11. data/examples/grading/analyze_coverage/prompt.md +52 -0
  12. data/examples/grading/calculate_final_grade.rb +64 -0
  13. data/examples/grading/format_result.rb +61 -0
  14. data/examples/grading/generate_grades/prompt.md +105 -0
  15. data/examples/grading/generate_recommendations/output.txt +17 -0
  16. data/examples/grading/generate_recommendations/prompt.md +60 -0
  17. data/examples/grading/read_dependencies/prompt.md +15 -0
  18. data/examples/grading/verify_mocks_and_stubs/prompt.md +12 -0
  19. data/examples/grading/verify_test_helpers/prompt.md +53 -0
  20. data/examples/grading/workflow.md +5 -0
  21. data/examples/grading/workflow.yml +28 -0
  22. data/lib/roast/dsl/cog/config.rb +31 -0
  23. data/lib/roast/dsl/cog/stack.rb +21 -0
  24. data/lib/roast/dsl/cog/store.rb +26 -0
  25. data/lib/roast/dsl/cog.rb +70 -0
  26. data/lib/roast/dsl/cog_execution_context.rb +29 -0
  27. data/lib/roast/dsl/cogs/cmd.rb +55 -0
  28. data/lib/roast/dsl/cogs/graph.rb +53 -0
  29. data/lib/roast/dsl/cogs.rb +65 -0
  30. data/lib/roast/dsl/config_context.rb +54 -0
  31. data/lib/roast/dsl/executor.rb +62 -7
  32. data/lib/roast/dsl/workflow_execution_context.rb +47 -0
  33. data/lib/roast/error.rb +7 -0
  34. data/lib/roast/errors.rb +3 -3
  35. data/lib/roast/graph/edge.rb +25 -0
  36. data/lib/roast/graph/node.rb +40 -0
  37. data/lib/roast/graph/quantum_edge.rb +27 -0
  38. data/lib/roast/graph/threaded_exec.rb +93 -0
  39. data/lib/roast/graph.rb +233 -0
  40. data/lib/roast/resources/api_resource.rb +2 -2
  41. data/lib/roast/resources/url_resource.rb +2 -2
  42. data/lib/roast/tools/apply_diff.rb +1 -1
  43. data/lib/roast/tools/ask_user.rb +1 -1
  44. data/lib/roast/tools/bash.rb +1 -1
  45. data/lib/roast/tools/cmd.rb +2 -2
  46. data/lib/roast/tools/coding_agent.rb +2 -2
  47. data/lib/roast/tools/grep.rb +1 -1
  48. data/lib/roast/tools/read_file.rb +1 -1
  49. data/lib/roast/tools/search_file.rb +1 -1
  50. data/lib/roast/tools/swarm.rb +1 -1
  51. data/lib/roast/tools/update_files.rb +2 -2
  52. data/lib/roast/tools/write_file.rb +1 -1
  53. data/lib/roast/tools.rb +1 -1
  54. data/lib/roast/value_objects/api_token.rb +1 -1
  55. data/lib/roast/value_objects/uri_base.rb +1 -1
  56. data/lib/roast/value_objects/workflow_path.rb +1 -1
  57. data/lib/roast/version.rb +1 -1
  58. data/lib/roast/workflow/base_workflow.rb +38 -2
  59. data/lib/roast/workflow/command_executor.rb +1 -1
  60. data/lib/roast/workflow/configuration_loader.rb +1 -1
  61. data/lib/roast/workflow/error_handler.rb +1 -1
  62. data/lib/roast/workflow/step_executor_registry.rb +1 -1
  63. data/lib/roast/workflow/step_loader.rb +1 -1
  64. data/lib/roast/workflow/workflow_executor.rb +1 -1
  65. data/lib/roast.rb +1 -1
  66. data/sorbet/config +2 -0
  67. data/sorbet/rbi/annotations/.gitattributes +1 -0
  68. data/sorbet/rbi/annotations/activesupport.rbi +495 -0
  69. data/sorbet/rbi/annotations/faraday.rbi +17 -0
  70. data/sorbet/rbi/annotations/minitest.rbi +119 -0
  71. data/sorbet/rbi/annotations/mocha.rbi +34 -0
  72. data/sorbet/rbi/annotations/rainbow.rbi +269 -0
  73. data/sorbet/rbi/annotations/webmock.rbi +9 -0
  74. data/sorbet/rbi/gems/rbs-inline@0.12.0.rbi +2170 -0
  75. data/sorbet/rbi/gems/{rexml@3.4.1.rbi → rexml@3.4.2.rbi} +284 -239
  76. data/sorbet/rbi/shims/lib/roast/dsl/config_context.rbi +11 -0
  77. data/sorbet/rbi/shims/lib/roast/dsl/workflow_execution_context.rbi +11 -0
  78. data/sorbet/rbi/todo.rbi +7 -0
  79. metadata +46 -5
  80. data/package-lock.json +0 -6
  81. /data/sorbet/rbi/gems/{rack@2.2.17.rbi → rack@2.2.18.rbi} +0 -0
@@ -0,0 +1,11 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+ module Roast
5
+ module DSL
6
+ class ConfigContext
7
+ #: (?Symbol?) {() [self: Roast::DSL::Cogs::Cmd::Config] -> void} -> void
8
+ def cmd(name = nil, &block); end
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,11 @@
1
+ # typed: true
2
+ # frozen_string_literal: true
3
+
4
+ module Roast
5
+ module DSL
6
+ class WorkflowExecutionContext
7
+ #: (?Symbol?) {() [self: Roast::DSL::Cogs::Cmd] -> String} -> void
8
+ def cmd(name = nil, &block); end
9
+ end
10
+ end
11
+ end
@@ -0,0 +1,7 @@
1
+ # DO NOT EDIT MANUALLY
2
+ # This is an autogenerated file for unresolved constants.
3
+ # Please instead update this file by running `bin/tapioca todo`.
4
+
5
+ # typed: false
6
+
7
+ module Mocha::Mock; end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: roast-ai
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.8
4
+ version: 0.4.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - Shopify
@@ -201,7 +201,10 @@ files:
201
201
  - docs/INSTRUMENTATION.md
202
202
  - docs/ITERATION_SYNTAX.md
203
203
  - docs/VALIDATION.md
204
+ - dsl/less_simple.rb
205
+ - dsl/prototype.rb
204
206
  - dsl/simple.rb
207
+ - dsl/step_communication.rb
205
208
  - examples/README.md
206
209
  - examples/available_tools_demo/README.md
207
210
  - examples/available_tools_demo/analyze_files/prompt.md
@@ -210,14 +213,42 @@ files:
210
213
  - examples/available_tools_demo/write_summary/prompt.md
211
214
  - examples/basic_prompt_workflow/workflow.md
212
215
  - examples/basic_prompt_workflow/workflow.yml
216
+ - examples/grading/README.md
217
+ - examples/grading/analyze_coverage/prompt.md
218
+ - examples/grading/calculate_final_grade.rb
219
+ - examples/grading/format_result.rb
220
+ - examples/grading/generate_grades/prompt.md
221
+ - examples/grading/generate_recommendations/output.txt
222
+ - examples/grading/generate_recommendations/prompt.md
223
+ - examples/grading/read_dependencies/prompt.md
224
+ - examples/grading/verify_mocks_and_stubs/prompt.md
225
+ - examples/grading/verify_test_helpers/prompt.md
226
+ - examples/grading/workflow.md
227
+ - examples/grading/workflow.yml
213
228
  - exe/roast
214
229
  - gemfiles/activesupport7.gemfile
215
230
  - gemfiles/activesupport8.gemfile
216
231
  - lib/roast.rb
217
232
  - lib/roast/dsl.rb
233
+ - lib/roast/dsl/cog.rb
234
+ - lib/roast/dsl/cog/config.rb
235
+ - lib/roast/dsl/cog/stack.rb
236
+ - lib/roast/dsl/cog/store.rb
237
+ - lib/roast/dsl/cog_execution_context.rb
238
+ - lib/roast/dsl/cogs.rb
239
+ - lib/roast/dsl/cogs/cmd.rb
240
+ - lib/roast/dsl/cogs/graph.rb
241
+ - lib/roast/dsl/config_context.rb
218
242
  - lib/roast/dsl/executor.rb
243
+ - lib/roast/dsl/workflow_execution_context.rb
244
+ - lib/roast/error.rb
219
245
  - lib/roast/errors.rb
220
246
  - lib/roast/factories/api_provider_factory.rb
247
+ - lib/roast/graph.rb
248
+ - lib/roast/graph/edge.rb
249
+ - lib/roast/graph/node.rb
250
+ - lib/roast/graph/quantum_edge.rb
251
+ - lib/roast/graph/threaded_exec.rb
221
252
  - lib/roast/helpers/cmd_runner.rb
222
253
  - lib/roast/helpers/function_caching_interceptor.rb
223
254
  - lib/roast/helpers/logger.rb
@@ -324,13 +355,19 @@ files:
324
355
  - lib/roast/workflow/workflow_initializer.rb
325
356
  - lib/roast/workflow/workflow_runner.rb
326
357
  - lib/roast/workflow_diagram_generator.rb
327
- - package-lock.json
328
358
  - roast.gemspec
329
359
  - rubocop/cop/roast.rb
330
360
  - rubocop/cop/roast/use_cmd_runner.rb
331
361
  - schema/workflow.json
332
362
  - shipit.rubygems.yml
333
363
  - sorbet/config
364
+ - sorbet/rbi/annotations/.gitattributes
365
+ - sorbet/rbi/annotations/activesupport.rbi
366
+ - sorbet/rbi/annotations/faraday.rbi
367
+ - sorbet/rbi/annotations/minitest.rbi
368
+ - sorbet/rbi/annotations/mocha.rbi
369
+ - sorbet/rbi/annotations/rainbow.rbi
370
+ - sorbet/rbi/annotations/webmock.rbi
334
371
  - sorbet/rbi/dsl/.gitattributes
335
372
  - sorbet/rbi/dsl/active_support/callbacks.rbi
336
373
  - sorbet/rbi/gems/.gitattributes
@@ -399,16 +436,17 @@ files:
399
436
  - sorbet/rbi/gems/pry@0.15.2.rbi
400
437
  - sorbet/rbi/gems/public_suffix@6.0.2.rbi
401
438
  - sorbet/rbi/gems/racc@1.8.1.rbi
402
- - sorbet/rbi/gems/rack@2.2.17.rbi
439
+ - sorbet/rbi/gems/rack@2.2.18.rbi
403
440
  - sorbet/rbi/gems/rainbow@3.1.1.rbi
404
441
  - sorbet/rbi/gems/raix@1.0.2.rbi
405
442
  - sorbet/rbi/gems/rake@13.3.0.rbi
406
443
  - sorbet/rbi/gems/rb-fsevent@0.11.2.rbi
407
444
  - sorbet/rbi/gems/rb-inotify@0.11.1.rbi
408
445
  - sorbet/rbi/gems/rbi@0.3.6.rbi
446
+ - sorbet/rbi/gems/rbs-inline@0.12.0.rbi
409
447
  - sorbet/rbi/gems/rbs@3.9.4.rbi
410
448
  - sorbet/rbi/gems/regexp_parser@2.10.0.rbi
411
- - sorbet/rbi/gems/rexml@3.4.1.rbi
449
+ - sorbet/rbi/gems/rexml@3.4.2.rbi
412
450
  - sorbet/rbi/gems/rubocop-ast@1.45.1.rbi
413
451
  - sorbet/rbi/gems/rubocop-shopify@2.17.1.rbi
414
452
  - sorbet/rbi/gems/rubocop-sorbet@0.10.5.rbi
@@ -435,6 +473,9 @@ files:
435
473
  - sorbet/rbi/gems/yard-sorbet@0.9.0.rbi
436
474
  - sorbet/rbi/gems/yard@0.9.37.rbi
437
475
  - sorbet/rbi/gems/zeitwerk@2.7.3.rbi
476
+ - sorbet/rbi/shims/lib/roast/dsl/config_context.rbi
477
+ - sorbet/rbi/shims/lib/roast/dsl/workflow_execution_context.rbi
478
+ - sorbet/rbi/todo.rbi
438
479
  - sorbet/tapioca/config.yml
439
480
  - sorbet/tapioca/require.rb
440
481
  homepage: https://github.com/Shopify/roast
@@ -459,7 +500,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
459
500
  - !ruby/object:Gem::Version
460
501
  version: '0'
461
502
  requirements: []
462
- rubygems_version: 3.7.1
503
+ rubygems_version: 3.7.2
463
504
  specification_version: 4
464
505
  summary: A framework for executing structured AI workflows in Ruby
465
506
  test_files: []
data/package-lock.json DELETED
@@ -1,6 +0,0 @@
1
- {
2
- "name": "roast",
3
- "lockfileVersion": 3,
4
- "requires": true,
5
- "packages": {}
6
- }