smith-agents 0.4.4 → 0.5.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 (152) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +262 -0
  3. data/README.md +116 -6
  4. data/docs/CONFIGURATION.md +4 -1
  5. data/docs/PATTERNS.md +7 -0
  6. data/docs/PERSISTENCE.md +502 -1
  7. data/docs/workflow_claim.md +4 -1
  8. data/lib/smith/agent/lifecycle.rb +19 -10
  9. data/lib/smith/agent/registry/execution_binding_capture.rb +26 -0
  10. data/lib/smith/agent/registry/mutation_boundary.rb +29 -0
  11. data/lib/smith/agent/registry.rb +8 -0
  12. data/lib/smith/agent.rb +24 -2
  13. data/lib/smith/budget/amount_contract.rb +67 -0
  14. data/lib/smith/budget/amount_representation.rb +43 -0
  15. data/lib/smith/budget/decimal_context.rb +18 -0
  16. data/lib/smith/budget/ledger.rb +110 -18
  17. data/lib/smith/budget/ledger_publication.rb +60 -0
  18. data/lib/smith/budget/ledger_state.rb +21 -0
  19. data/lib/smith/budget/ledger_state_transition.rb +72 -0
  20. data/lib/smith/budget/public_state_validator.rb +25 -0
  21. data/lib/smith/budget/reservation.rb +20 -0
  22. data/lib/smith/budget/reservation_contract.rb +34 -0
  23. data/lib/smith/context/observation_masking.rb +3 -1
  24. data/lib/smith/context/state_injection.rb +1 -1
  25. data/lib/smith/doctor/checks/persistence_capabilities.rb +18 -3
  26. data/lib/smith/error.rb +5 -0
  27. data/lib/smith/errors.rb +6 -0
  28. data/lib/smith/exponential_backoff.rb +128 -0
  29. data/lib/smith/persistence_adapters/active_record_connection_errors.rb +23 -0
  30. data/lib/smith/persistence_adapters/active_record_exact_predicate.rb +43 -0
  31. data/lib/smith/persistence_adapters/active_record_exact_store.rb +62 -0
  32. data/lib/smith/persistence_adapters/active_record_exact_write.rb +40 -0
  33. data/lib/smith/persistence_adapters/active_record_initial_write.rb +42 -0
  34. data/lib/smith/persistence_adapters/active_record_store.rb +95 -52
  35. data/lib/smith/persistence_adapters/cache_store.rb +4 -1
  36. data/lib/smith/persistence_adapters/memory.rb +45 -14
  37. data/lib/smith/persistence_adapters/payload_version.rb +23 -0
  38. data/lib/smith/persistence_adapters/redis_client_access.rb +38 -0
  39. data/lib/smith/persistence_adapters/redis_exact_write.rb +44 -0
  40. data/lib/smith/persistence_adapters/redis_store.rb +38 -43
  41. data/lib/smith/persistence_adapters/redis_versioned_write.rb +56 -0
  42. data/lib/smith/persistence_adapters/retry.rb +22 -10
  43. data/lib/smith/persistence_adapters/version_expectation.rb +19 -0
  44. data/lib/smith/persistence_adapters.rb +26 -18
  45. data/lib/smith/persistence_payload_conflict.rb +12 -0
  46. data/lib/smith/tool/budget_enforcement.rb +2 -2
  47. data/lib/smith/types.rb +1 -0
  48. data/lib/smith/version.rb +2 -1
  49. data/lib/smith/workflow/branch_env.rb +1 -1
  50. data/lib/smith/workflow/budget_integration.rb +21 -11
  51. data/lib/smith/workflow/definition_identity/class_methods.rb +48 -0
  52. data/lib/smith/workflow/definition_identity.rb +25 -0
  53. data/lib/smith/workflow/deterministic_step.rb +2 -2
  54. data/lib/smith/workflow/dsl.rb +73 -5
  55. data/lib/smith/workflow/durability.rb +2 -1
  56. data/lib/smith/workflow/evaluator_optimizer.rb +7 -11
  57. data/lib/smith/workflow/execution.rb +16 -18
  58. data/lib/smith/workflow/execution_binding_resolution.rb +16 -0
  59. data/lib/smith/workflow/execution_result_snapshot.rb +118 -0
  60. data/lib/smith/workflow/fanout_execution.rb +1 -1
  61. data/lib/smith/workflow/graph/diagnostic.rb +27 -1
  62. data/lib/smith/workflow/graph/diagnostic_path.rb +24 -0
  63. data/lib/smith/workflow/graph/execution_successors.rb +65 -0
  64. data/lib/smith/workflow/graph/identifier_projection.rb +13 -0
  65. data/lib/smith/workflow/graph/metrics.rb +1 -3
  66. data/lib/smith/workflow/graph/nested_readiness_diagnostics.rb +15 -16
  67. data/lib/smith/workflow/graph/optimization_contract.rb +2 -2
  68. data/lib/smith/workflow/graph/orchestration_contract.rb +3 -3
  69. data/lib/smith/workflow/graph/reachability.rb +19 -31
  70. data/lib/smith/workflow/graph/reachability_diagnostics.rb +17 -1
  71. data/lib/smith/workflow/graph/retry_policy_diagnostic.rb +36 -0
  72. data/lib/smith/workflow/graph/runtime_binding_diagnostics.rb +2 -2
  73. data/lib/smith/workflow/graph/runtime_readiness.rb +3 -44
  74. data/lib/smith/workflow/graph/runtime_readiness_metrics.rb +2 -2
  75. data/lib/smith/workflow/graph/runtime_readiness_report_builder.rb +47 -0
  76. data/lib/smith/workflow/graph/runtime_readiness_traversal.rb +108 -0
  77. data/lib/smith/workflow/graph/state_diagnostics.rb +2 -2
  78. data/lib/smith/workflow/graph/transition_contract.rb +47 -0
  79. data/lib/smith/workflow/graph/transition_contract_attributes.rb +73 -0
  80. data/lib/smith/workflow/graph/transition_contract_configurations.rb +100 -0
  81. data/lib/smith/workflow/graph/transition_diagnostics.rb +54 -12
  82. data/lib/smith/workflow/graph/transition_optimization_configuration.rb +62 -0
  83. data/lib/smith/workflow/graph/transition_snapshot.rb +4 -1
  84. data/lib/smith/workflow/graph/validator.rb +1 -1
  85. data/lib/smith/workflow/graph.rb +62 -4
  86. data/lib/smith/workflow/guardrail_integration.rb +23 -9
  87. data/lib/smith/workflow/identifier.rb +24 -0
  88. data/lib/smith/workflow/message_admission.rb +40 -0
  89. data/lib/smith/workflow/message_admission_boundary.rb +22 -0
  90. data/lib/smith/workflow/message_batch.rb +60 -0
  91. data/lib/smith/workflow/message_value_normalizer.rb +133 -0
  92. data/lib/smith/workflow/nested_execution.rb +10 -0
  93. data/lib/smith/workflow/orchestrator_worker.rb +3 -7
  94. data/lib/smith/workflow/parallel/cancellation_signal.rb +14 -5
  95. data/lib/smith/workflow/parallel/execution_context.rb +113 -0
  96. data/lib/smith/workflow/parallel/nested_execution.rb +124 -0
  97. data/lib/smith/workflow/parallel/root_execution.rb +91 -0
  98. data/lib/smith/workflow/parallel.rb +19 -22
  99. data/lib/smith/workflow/parallel_agent_binding.rb +24 -0
  100. data/lib/smith/workflow/parallel_execution.rb +7 -3
  101. data/lib/smith/workflow/persistence.rb +49 -10
  102. data/lib/smith/workflow/prepared_step.rb +122 -0
  103. data/lib/smith/workflow/prepared_step_dispatch.rb +88 -0
  104. data/lib/smith/workflow/prepared_step_execution_authorization.rb +116 -0
  105. data/lib/smith/workflow/prepared_step_execution_result.rb +49 -0
  106. data/lib/smith/workflow/prepared_step_execution_scope.rb +45 -0
  107. data/lib/smith/workflow/prepared_step_recovery.rb +38 -0
  108. data/lib/smith/workflow/retry_execution.rb +20 -11
  109. data/lib/smith/workflow/split_step_persistence/boundary.rb +128 -0
  110. data/lib/smith/workflow/split_step_persistence/boundary_reset.rb +50 -0
  111. data/lib/smith/workflow/split_step_persistence/canonical_payload_digest.rb +55 -0
  112. data/lib/smith/workflow/split_step_persistence/checkpoint.rb +119 -0
  113. data/lib/smith/workflow/split_step_persistence/checkpoint_state.rb +51 -0
  114. data/lib/smith/workflow/split_step_persistence/definition_boundary.rb +19 -0
  115. data/lib/smith/workflow/split_step_persistence/dispatch_boundary.rb +16 -0
  116. data/lib/smith/workflow/split_step_persistence/dispatch_claim.rb +118 -0
  117. data/lib/smith/workflow/split_step_persistence/dispatch_confirmation.rb +70 -0
  118. data/lib/smith/workflow/split_step_persistence/dispatch_verification.rb +35 -0
  119. data/lib/smith/workflow/split_step_persistence/execution.rb +128 -0
  120. data/lib/smith/workflow/split_step_persistence/execution_authorization.rb +89 -0
  121. data/lib/smith/workflow/split_step_persistence/execution_binding_collector.rb +90 -0
  122. data/lib/smith/workflow/split_step_persistence/execution_binding_snapshot.rb +95 -0
  123. data/lib/smith/workflow/split_step_persistence/execution_result_capture.rb +48 -0
  124. data/lib/smith/workflow/split_step_persistence/execution_verification.rb +65 -0
  125. data/lib/smith/workflow/split_step_persistence/execution_workflow_snapshot.rb +77 -0
  126. data/lib/smith/workflow/split_step_persistence/inheritance.rb +22 -0
  127. data/lib/smith/workflow/split_step_persistence/payloads.rb +54 -0
  128. data/lib/smith/workflow/split_step_persistence/preparation.rb +125 -0
  129. data/lib/smith/workflow/split_step_persistence/preparation_claim.rb +117 -0
  130. data/lib/smith/workflow/split_step_persistence/preparation_payload.rb +25 -0
  131. data/lib/smith/workflow/split_step_persistence/preparation_recovery.rb +54 -0
  132. data/lib/smith/workflow/split_step_persistence/recovery.rb +125 -0
  133. data/lib/smith/workflow/split_step_persistence/recovery_boundary.rb +56 -0
  134. data/lib/smith/workflow/split_step_persistence/recovery_class_methods.rb +14 -0
  135. data/lib/smith/workflow/split_step_persistence/replace_exact_signature.rb +46 -0
  136. data/lib/smith/workflow/split_step_persistence/restart_safe_adapter.rb +42 -0
  137. data/lib/smith/workflow/split_step_persistence/state_snapshot.rb +84 -0
  138. data/lib/smith/workflow/split_step_persistence/subclass_boundary.rb +102 -0
  139. data/lib/smith/workflow/split_step_persistence/transaction_identity.rb +45 -0
  140. data/lib/smith/workflow/split_step_persistence/transition_contract.rb +48 -0
  141. data/lib/smith/workflow/split_step_persistence/transition_contract_freezer.rb +83 -0
  142. data/lib/smith/workflow/split_step_persistence/transition_contract_signature.rb +107 -0
  143. data/lib/smith/workflow/split_step_persistence/transition_contract_structured_values.rb +51 -0
  144. data/lib/smith/workflow/split_step_persistence.rb +79 -0
  145. data/lib/smith/workflow/step_completion.rb +31 -0
  146. data/lib/smith/workflow/string_snapshot.rb +25 -0
  147. data/lib/smith/workflow/transition.rb +122 -133
  148. data/lib/smith/workflow/transition_actionability.rb +22 -0
  149. data/lib/smith/workflow.rb +57 -19
  150. data/lib/smith.rb +42 -2
  151. data/sig/smith.rbs +1 -0
  152. metadata +131 -19
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: smith-agents
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.4
4
+ version: 0.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Samuel Ralak
@@ -10,47 +10,67 @@ cert_chain: []
10
10
  date: 1980-01-02 00:00:00.000000000 Z
11
11
  dependencies:
12
12
  - !ruby/object:Gem::Dependency
13
- name: ruby_llm
13
+ name: bigdecimal
14
+ requirement: !ruby/object:Gem::Requirement
15
+ requirements:
16
+ - - ">="
17
+ - !ruby/object:Gem::Version
18
+ version: '3.1'
19
+ - - "<"
20
+ - !ruby/object:Gem::Version
21
+ version: '5'
22
+ type: :runtime
23
+ prerelease: false
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ requirements:
26
+ - - ">="
27
+ - !ruby/object:Gem::Version
28
+ version: '3.1'
29
+ - - "<"
30
+ - !ruby/object:Gem::Version
31
+ version: '5'
32
+ - !ruby/object:Gem::Dependency
33
+ name: concurrent-ruby
14
34
  requirement: !ruby/object:Gem::Requirement
15
35
  requirements:
16
36
  - - "~>"
17
37
  - !ruby/object:Gem::Version
18
- version: '1.15'
38
+ version: '1.2'
19
39
  type: :runtime
20
40
  prerelease: false
21
41
  version_requirements: !ruby/object:Gem::Requirement
22
42
  requirements:
23
43
  - - "~>"
24
44
  - !ruby/object:Gem::Version
25
- version: '1.15'
45
+ version: '1.2'
26
46
  - !ruby/object:Gem::Dependency
27
- name: dry-types
47
+ name: dry-configurable
28
48
  requirement: !ruby/object:Gem::Requirement
29
49
  requirements:
30
50
  - - "~>"
31
51
  - !ruby/object:Gem::Version
32
- version: '1.7'
52
+ version: '1.0'
33
53
  type: :runtime
34
54
  prerelease: false
35
55
  version_requirements: !ruby/object:Gem::Requirement
36
56
  requirements:
37
57
  - - "~>"
38
58
  - !ruby/object:Gem::Version
39
- version: '1.7'
59
+ version: '1.0'
40
60
  - !ruby/object:Gem::Dependency
41
- name: dry-struct
61
+ name: dry-container
42
62
  requirement: !ruby/object:Gem::Requirement
43
63
  requirements:
44
64
  - - "~>"
45
65
  - !ruby/object:Gem::Version
46
- version: '1.6'
66
+ version: '0.11'
47
67
  type: :runtime
48
68
  prerelease: false
49
69
  version_requirements: !ruby/object:Gem::Requirement
50
70
  requirements:
51
71
  - - "~>"
52
72
  - !ruby/object:Gem::Version
53
- version: '1.6'
73
+ version: '0.11'
54
74
  - !ruby/object:Gem::Dependency
55
75
  name: dry-initializer
56
76
  requirement: !ruby/object:Gem::Requirement
@@ -66,47 +86,47 @@ dependencies:
66
86
  - !ruby/object:Gem::Version
67
87
  version: '3.1'
68
88
  - !ruby/object:Gem::Dependency
69
- name: dry-configurable
89
+ name: dry-struct
70
90
  requirement: !ruby/object:Gem::Requirement
71
91
  requirements:
72
92
  - - "~>"
73
93
  - !ruby/object:Gem::Version
74
- version: '1.0'
94
+ version: '1.6'
75
95
  type: :runtime
76
96
  prerelease: false
77
97
  version_requirements: !ruby/object:Gem::Requirement
78
98
  requirements:
79
99
  - - "~>"
80
100
  - !ruby/object:Gem::Version
81
- version: '1.0'
101
+ version: '1.6'
82
102
  - !ruby/object:Gem::Dependency
83
- name: dry-container
103
+ name: dry-types
84
104
  requirement: !ruby/object:Gem::Requirement
85
105
  requirements:
86
106
  - - "~>"
87
107
  - !ruby/object:Gem::Version
88
- version: '0.11'
108
+ version: '1.7'
89
109
  type: :runtime
90
110
  prerelease: false
91
111
  version_requirements: !ruby/object:Gem::Requirement
92
112
  requirements:
93
113
  - - "~>"
94
114
  - !ruby/object:Gem::Version
95
- version: '0.11'
115
+ version: '1.7'
96
116
  - !ruby/object:Gem::Dependency
97
- name: concurrent-ruby
117
+ name: ruby_llm
98
118
  requirement: !ruby/object:Gem::Requirement
99
119
  requirements:
100
120
  - - "~>"
101
121
  - !ruby/object:Gem::Version
102
- version: '1.2'
122
+ version: '1.15'
103
123
  type: :runtime
104
124
  prerelease: false
105
125
  version_requirements: !ruby/object:Gem::Requirement
106
126
  requirements:
107
127
  - - "~>"
108
128
  - !ruby/object:Gem::Version
109
- version: '1.2'
129
+ version: '1.15'
110
130
  description: Smith is a workflow-first multi-agent orchestration library built on
111
131
  RubyLLM. It provides state machine modeling, typed contracts, budget enforcement,
112
132
  guardrails, and observability for agent workflows.
@@ -135,14 +155,25 @@ files:
135
155
  - lib/smith/agent.rb
136
156
  - lib/smith/agent/lifecycle.rb
137
157
  - lib/smith/agent/registry.rb
158
+ - lib/smith/agent/registry/execution_binding_capture.rb
138
159
  - lib/smith/agent/registry/introspection.rb
160
+ - lib/smith/agent/registry/mutation_boundary.rb
139
161
  - lib/smith/agent/registry_binding.rb
140
162
  - lib/smith/artifacts.rb
141
163
  - lib/smith/artifacts/file.rb
142
164
  - lib/smith/artifacts/memory.rb
143
165
  - lib/smith/artifacts/scoped_store.rb
144
166
  - lib/smith/budget.rb
167
+ - lib/smith/budget/amount_contract.rb
168
+ - lib/smith/budget/amount_representation.rb
169
+ - lib/smith/budget/decimal_context.rb
145
170
  - lib/smith/budget/ledger.rb
171
+ - lib/smith/budget/ledger_publication.rb
172
+ - lib/smith/budget/ledger_state.rb
173
+ - lib/smith/budget/ledger_state_transition.rb
174
+ - lib/smith/budget/public_state_validator.rb
175
+ - lib/smith/budget/reservation.rb
176
+ - lib/smith/budget/reservation_contract.rb
146
177
  - lib/smith/cli.rb
147
178
  - lib/smith/context.rb
148
179
  - lib/smith/context/observation_masking.rb
@@ -164,6 +195,7 @@ files:
164
195
  - lib/smith/doctor/installer.rb
165
196
  - lib/smith/doctor/printer.rb
166
197
  - lib/smith/doctor/report.rb
198
+ - lib/smith/error.rb
167
199
  - lib/smith/errors.rb
168
200
  - lib/smith/event.rb
169
201
  - lib/smith/events.rb
@@ -171,6 +203,7 @@ files:
171
203
  - lib/smith/events/bus.rb
172
204
  - lib/smith/events/step_completed.rb
173
205
  - lib/smith/events/subscription.rb
206
+ - lib/smith/exponential_backoff.rb
174
207
  - lib/smith/guardrails.rb
175
208
  - lib/smith/guardrails/runner.rb
176
209
  - lib/smith/guardrails/url_verifier.rb
@@ -179,12 +212,23 @@ files:
179
212
  - lib/smith/models/normalizer.rb
180
213
  - lib/smith/models/profile.rb
181
214
  - lib/smith/persistence_adapters.rb
215
+ - lib/smith/persistence_adapters/active_record_connection_errors.rb
216
+ - lib/smith/persistence_adapters/active_record_exact_predicate.rb
217
+ - lib/smith/persistence_adapters/active_record_exact_store.rb
218
+ - lib/smith/persistence_adapters/active_record_exact_write.rb
219
+ - lib/smith/persistence_adapters/active_record_initial_write.rb
182
220
  - lib/smith/persistence_adapters/active_record_store.rb
183
221
  - lib/smith/persistence_adapters/cache_store.rb
184
222
  - lib/smith/persistence_adapters/memory.rb
223
+ - lib/smith/persistence_adapters/payload_version.rb
185
224
  - lib/smith/persistence_adapters/rails_cache.rb
225
+ - lib/smith/persistence_adapters/redis_client_access.rb
226
+ - lib/smith/persistence_adapters/redis_exact_write.rb
186
227
  - lib/smith/persistence_adapters/redis_store.rb
228
+ - lib/smith/persistence_adapters/redis_versioned_write.rb
187
229
  - lib/smith/persistence_adapters/retry.rb
230
+ - lib/smith/persistence_adapters/version_expectation.rb
231
+ - lib/smith/persistence_payload_conflict.rb
188
232
  - lib/smith/pricing.rb
189
233
  - lib/smith/providers/openai/responses.rb
190
234
  - lib/smith/providers/openai/routing.rb
@@ -215,6 +259,8 @@ files:
215
259
  - lib/smith/workflow/claim.rb
216
260
  - lib/smith/workflow/data_volume_policy.rb
217
261
  - lib/smith/workflow/deadline_enforcement.rb
262
+ - lib/smith/workflow/definition_identity.rb
263
+ - lib/smith/workflow/definition_identity/class_methods.rb
218
264
  - lib/smith/workflow/deterministic_execution.rb
219
265
  - lib/smith/workflow/deterministic_step.rb
220
266
  - lib/smith/workflow/dsl.rb
@@ -222,12 +268,17 @@ files:
222
268
  - lib/smith/workflow/evaluator_optimizer.rb
223
269
  - lib/smith/workflow/event_integration.rb
224
270
  - lib/smith/workflow/execution.rb
271
+ - lib/smith/workflow/execution_binding_resolution.rb
225
272
  - lib/smith/workflow/execution_frame.rb
273
+ - lib/smith/workflow/execution_result_snapshot.rb
226
274
  - lib/smith/workflow/fanout_execution.rb
227
275
  - lib/smith/workflow/graph.rb
228
276
  - lib/smith/workflow/graph/contract_helpers.rb
229
277
  - lib/smith/workflow/graph/diagnostic.rb
278
+ - lib/smith/workflow/graph/diagnostic_path.rb
279
+ - lib/smith/workflow/graph/execution_successors.rb
230
280
  - lib/smith/workflow/graph/fanout_contract.rb
281
+ - lib/smith/workflow/graph/identifier_projection.rb
231
282
  - lib/smith/workflow/graph/metrics.rb
232
283
  - lib/smith/workflow/graph/nested_readiness_diagnostics.rb
233
284
  - lib/smith/workflow/graph/optimization_contract.rb
@@ -236,18 +287,30 @@ files:
236
287
  - lib/smith/workflow/graph/reachability_diagnostics.rb
237
288
  - lib/smith/workflow/graph/reference.rb
238
289
  - lib/smith/workflow/graph/report.rb
290
+ - lib/smith/workflow/graph/retry_policy_diagnostic.rb
239
291
  - lib/smith/workflow/graph/runtime_binding_diagnostic_builder.rb
240
292
  - lib/smith/workflow/graph/runtime_binding_diagnostics.rb
241
293
  - lib/smith/workflow/graph/runtime_readiness.rb
242
294
  - lib/smith/workflow/graph/runtime_readiness_metrics.rb
243
295
  - lib/smith/workflow/graph/runtime_readiness_report.rb
296
+ - lib/smith/workflow/graph/runtime_readiness_report_builder.rb
297
+ - lib/smith/workflow/graph/runtime_readiness_traversal.rb
244
298
  - lib/smith/workflow/graph/state_diagnostics.rb
245
299
  - lib/smith/workflow/graph/targets.rb
300
+ - lib/smith/workflow/graph/transition_contract.rb
301
+ - lib/smith/workflow/graph/transition_contract_attributes.rb
302
+ - lib/smith/workflow/graph/transition_contract_configurations.rb
246
303
  - lib/smith/workflow/graph/transition_diagnostics.rb
304
+ - lib/smith/workflow/graph/transition_optimization_configuration.rb
247
305
  - lib/smith/workflow/graph/transition_snapshot.rb
248
306
  - lib/smith/workflow/graph/validator.rb
249
307
  - lib/smith/workflow/graph_dsl.rb
250
308
  - lib/smith/workflow/guardrail_integration.rb
309
+ - lib/smith/workflow/identifier.rb
310
+ - lib/smith/workflow/message_admission.rb
311
+ - lib/smith/workflow/message_admission_boundary.rb
312
+ - lib/smith/workflow/message_batch.rb
313
+ - lib/smith/workflow/message_value_normalizer.rb
251
314
  - lib/smith/workflow/nested_execution.rb
252
315
  - lib/smith/workflow/optimization_state.rb
253
316
  - lib/smith/workflow/orchestration_state.rb
@@ -255,13 +318,62 @@ files:
255
318
  - lib/smith/workflow/parallel.rb
256
319
  - lib/smith/workflow/parallel/cancellation.rb
257
320
  - lib/smith/workflow/parallel/cancellation_signal.rb
321
+ - lib/smith/workflow/parallel/execution_context.rb
322
+ - lib/smith/workflow/parallel/nested_execution.rb
323
+ - lib/smith/workflow/parallel/root_execution.rb
324
+ - lib/smith/workflow/parallel_agent_binding.rb
258
325
  - lib/smith/workflow/parallel_execution.rb
259
326
  - lib/smith/workflow/persistence.rb
260
327
  - lib/smith/workflow/pipeline.rb
328
+ - lib/smith/workflow/prepared_step.rb
329
+ - lib/smith/workflow/prepared_step_dispatch.rb
330
+ - lib/smith/workflow/prepared_step_execution_authorization.rb
331
+ - lib/smith/workflow/prepared_step_execution_result.rb
332
+ - lib/smith/workflow/prepared_step_execution_scope.rb
333
+ - lib/smith/workflow/prepared_step_recovery.rb
261
334
  - lib/smith/workflow/retry_execution.rb
262
335
  - lib/smith/workflow/router.rb
263
336
  - lib/smith/workflow/run_result.rb
337
+ - lib/smith/workflow/split_step_persistence.rb
338
+ - lib/smith/workflow/split_step_persistence/boundary.rb
339
+ - lib/smith/workflow/split_step_persistence/boundary_reset.rb
340
+ - lib/smith/workflow/split_step_persistence/canonical_payload_digest.rb
341
+ - lib/smith/workflow/split_step_persistence/checkpoint.rb
342
+ - lib/smith/workflow/split_step_persistence/checkpoint_state.rb
343
+ - lib/smith/workflow/split_step_persistence/definition_boundary.rb
344
+ - lib/smith/workflow/split_step_persistence/dispatch_boundary.rb
345
+ - lib/smith/workflow/split_step_persistence/dispatch_claim.rb
346
+ - lib/smith/workflow/split_step_persistence/dispatch_confirmation.rb
347
+ - lib/smith/workflow/split_step_persistence/dispatch_verification.rb
348
+ - lib/smith/workflow/split_step_persistence/execution.rb
349
+ - lib/smith/workflow/split_step_persistence/execution_authorization.rb
350
+ - lib/smith/workflow/split_step_persistence/execution_binding_collector.rb
351
+ - lib/smith/workflow/split_step_persistence/execution_binding_snapshot.rb
352
+ - lib/smith/workflow/split_step_persistence/execution_result_capture.rb
353
+ - lib/smith/workflow/split_step_persistence/execution_verification.rb
354
+ - lib/smith/workflow/split_step_persistence/execution_workflow_snapshot.rb
355
+ - lib/smith/workflow/split_step_persistence/inheritance.rb
356
+ - lib/smith/workflow/split_step_persistence/payloads.rb
357
+ - lib/smith/workflow/split_step_persistence/preparation.rb
358
+ - lib/smith/workflow/split_step_persistence/preparation_claim.rb
359
+ - lib/smith/workflow/split_step_persistence/preparation_payload.rb
360
+ - lib/smith/workflow/split_step_persistence/preparation_recovery.rb
361
+ - lib/smith/workflow/split_step_persistence/recovery.rb
362
+ - lib/smith/workflow/split_step_persistence/recovery_boundary.rb
363
+ - lib/smith/workflow/split_step_persistence/recovery_class_methods.rb
364
+ - lib/smith/workflow/split_step_persistence/replace_exact_signature.rb
365
+ - lib/smith/workflow/split_step_persistence/restart_safe_adapter.rb
366
+ - lib/smith/workflow/split_step_persistence/state_snapshot.rb
367
+ - lib/smith/workflow/split_step_persistence/subclass_boundary.rb
368
+ - lib/smith/workflow/split_step_persistence/transaction_identity.rb
369
+ - lib/smith/workflow/split_step_persistence/transition_contract.rb
370
+ - lib/smith/workflow/split_step_persistence/transition_contract_freezer.rb
371
+ - lib/smith/workflow/split_step_persistence/transition_contract_signature.rb
372
+ - lib/smith/workflow/split_step_persistence/transition_contract_structured_values.rb
373
+ - lib/smith/workflow/step_completion.rb
374
+ - lib/smith/workflow/string_snapshot.rb
264
375
  - lib/smith/workflow/transition.rb
376
+ - lib/smith/workflow/transition_actionability.rb
265
377
  - lib/smith/workflow/usage_entry.rb
266
378
  - lib/smith/workflow/worker_execution.rb
267
379
  - script/profile_tool_results.rb