smith-agents 0.4.5 → 0.6.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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +264 -0
- data/README.md +191 -4
- data/docs/CONFIGURATION.md +4 -1
- data/docs/PATTERNS.md +7 -0
- data/docs/PERSISTENCE.md +347 -25
- data/lib/smith/agent/lifecycle.rb +19 -10
- data/lib/smith/agent/registry/execution_binding_capture.rb +26 -0
- data/lib/smith/agent/registry/mutation_boundary.rb +29 -0
- data/lib/smith/agent/registry.rb +8 -0
- data/lib/smith/agent.rb +37 -2
- data/lib/smith/budget/amount_contract.rb +67 -0
- data/lib/smith/budget/amount_representation.rb +43 -0
- data/lib/smith/budget/decimal_context.rb +18 -0
- data/lib/smith/budget/ledger.rb +110 -18
- data/lib/smith/budget/ledger_publication.rb +60 -0
- data/lib/smith/budget/ledger_state.rb +21 -0
- data/lib/smith/budget/ledger_state_transition.rb +72 -0
- data/lib/smith/budget/public_state_validator.rb +25 -0
- data/lib/smith/budget/reservation.rb +20 -0
- data/lib/smith/budget/reservation_contract.rb +34 -0
- data/lib/smith/context/observation_masking.rb +3 -1
- data/lib/smith/context/state_injection.rb +1 -1
- data/lib/smith/doctor/checks/persistence_capabilities.rb +18 -4
- data/lib/smith/error.rb +5 -0
- data/lib/smith/errors.rb +10 -0
- data/lib/smith/exponential_backoff.rb +128 -0
- data/lib/smith/persistence_adapters/active_record_exact_predicate.rb +43 -0
- data/lib/smith/persistence_adapters/active_record_exact_store.rb +62 -0
- data/lib/smith/persistence_adapters/active_record_exact_write.rb +40 -0
- data/lib/smith/persistence_adapters/active_record_store.rb +7 -4
- data/lib/smith/persistence_adapters/cache_store.rb +1 -0
- data/lib/smith/persistence_adapters/memory.rb +16 -1
- data/lib/smith/persistence_adapters/redis_client_access.rb +38 -0
- data/lib/smith/persistence_adapters/redis_exact_write.rb +44 -0
- data/lib/smith/persistence_adapters/redis_store.rb +28 -11
- data/lib/smith/persistence_adapters/retry.rb +22 -10
- data/lib/smith/persistence_adapters.rb +21 -18
- data/lib/smith/persistence_payload_conflict.rb +12 -0
- data/lib/smith/tool/budget_enforcement.rb +2 -2
- data/lib/smith/types.rb +1 -0
- data/lib/smith/version.rb +2 -1
- data/lib/smith/workflow/branch_env.rb +1 -1
- data/lib/smith/workflow/budget_integration.rb +21 -11
- data/lib/smith/workflow/composite/branch.rb +93 -0
- data/lib/smith/workflow/composite/branch_budget_contract.rb +41 -0
- data/lib/smith/workflow/composite/branch_contract.rb +102 -0
- data/lib/smith/workflow/composite/branch_execution.rb +124 -0
- data/lib/smith/workflow/composite/branch_failure.rb +91 -0
- data/lib/smith/workflow/composite/branch_outcome.rb +108 -0
- data/lib/smith/workflow/composite/budget_allocator.rb +78 -0
- data/lib/smith/workflow/composite/budget_math.rb +51 -0
- data/lib/smith/workflow/composite/contract.rb +100 -0
- data/lib/smith/workflow/composite/effects.rb +140 -0
- data/lib/smith/workflow/composite/effects_application.rb +36 -0
- data/lib/smith/workflow/composite/effects_baseline.rb +36 -0
- data/lib/smith/workflow/composite/effects_preflight.rb +102 -0
- data/lib/smith/workflow/composite/encoded_value_budget.rb +36 -0
- data/lib/smith/workflow/composite/enums.rb +27 -0
- data/lib/smith/workflow/composite/error.rb +54 -0
- data/lib/smith/workflow/composite/error_evidence.rb +61 -0
- data/lib/smith/workflow/composite/execution_contract.rb +73 -0
- data/lib/smith/workflow/composite/fanout_branch_contract.rb +61 -0
- data/lib/smith/workflow/composite/input.rb +53 -0
- data/lib/smith/workflow/composite/outcome_accumulator.rb +131 -0
- data/lib/smith/workflow/composite/outcome_set.rb +23 -0
- data/lib/smith/workflow/composite/payload.rb +128 -0
- data/lib/smith/workflow/composite/payload_digest.rb +28 -0
- data/lib/smith/workflow/composite/plan.rb +130 -0
- data/lib/smith/workflow/composite/plan_integrity.rb +52 -0
- data/lib/smith/workflow/composite/planner.rb +53 -0
- data/lib/smith/workflow/composite/preparation.rb +27 -0
- data/lib/smith/workflow/composite/reducer.rb +133 -0
- data/lib/smith/workflow/composite/reduction.rb +31 -0
- data/lib/smith/workflow/composite/value_budget.rb +90 -0
- data/lib/smith/workflow/composite_branch_execution_authorization.rb +52 -0
- data/lib/smith/workflow/deadline_enforcement.rb +22 -5
- data/lib/smith/workflow/definition_identity/class_methods.rb +48 -0
- data/lib/smith/workflow/definition_identity.rb +25 -0
- data/lib/smith/workflow/deterministic_step.rb +2 -2
- data/lib/smith/workflow/dsl.rb +73 -5
- data/lib/smith/workflow/durability.rb +1 -1
- data/lib/smith/workflow/evaluator_optimizer.rb +7 -11
- data/lib/smith/workflow/execution.rb +28 -30
- data/lib/smith/workflow/execution_binding_resolution.rb +16 -0
- data/lib/smith/workflow/execution_result_snapshot.rb +118 -0
- data/lib/smith/workflow/fanout_execution.rb +20 -19
- data/lib/smith/workflow/graph/diagnostic.rb +27 -1
- data/lib/smith/workflow/graph/diagnostic_path.rb +24 -0
- data/lib/smith/workflow/graph/execution_successors.rb +65 -0
- data/lib/smith/workflow/graph/identifier_projection.rb +13 -0
- data/lib/smith/workflow/graph/metrics.rb +1 -3
- data/lib/smith/workflow/graph/nested_readiness_diagnostics.rb +15 -16
- data/lib/smith/workflow/graph/optimization_contract.rb +2 -2
- data/lib/smith/workflow/graph/orchestration_contract.rb +3 -3
- data/lib/smith/workflow/graph/reachability.rb +19 -31
- data/lib/smith/workflow/graph/reachability_diagnostics.rb +17 -1
- data/lib/smith/workflow/graph/retry_policy_diagnostic.rb +36 -0
- data/lib/smith/workflow/graph/runtime_binding_diagnostics.rb +2 -2
- data/lib/smith/workflow/graph/runtime_readiness.rb +3 -44
- data/lib/smith/workflow/graph/runtime_readiness_metrics.rb +2 -2
- data/lib/smith/workflow/graph/runtime_readiness_report_builder.rb +47 -0
- data/lib/smith/workflow/graph/runtime_readiness_traversal.rb +108 -0
- data/lib/smith/workflow/graph/state_diagnostics.rb +2 -2
- data/lib/smith/workflow/graph/transition_contract.rb +47 -0
- data/lib/smith/workflow/graph/transition_contract_attributes.rb +73 -0
- data/lib/smith/workflow/graph/transition_contract_configurations.rb +100 -0
- data/lib/smith/workflow/graph/transition_diagnostics.rb +54 -12
- data/lib/smith/workflow/graph/transition_optimization_configuration.rb +62 -0
- data/lib/smith/workflow/graph/transition_snapshot.rb +4 -1
- data/lib/smith/workflow/graph/validator.rb +1 -1
- data/lib/smith/workflow/graph.rb +62 -4
- data/lib/smith/workflow/guardrail_integration.rb +23 -9
- data/lib/smith/workflow/identifier.rb +24 -0
- data/lib/smith/workflow/message_admission.rb +40 -0
- data/lib/smith/workflow/message_admission_boundary.rb +22 -0
- data/lib/smith/workflow/message_batch.rb +60 -0
- data/lib/smith/workflow/message_value_normalizer.rb +134 -0
- data/lib/smith/workflow/nested_execution.rb +10 -0
- data/lib/smith/workflow/orchestrator_worker.rb +3 -7
- data/lib/smith/workflow/parallel/cancellation_signal.rb +14 -5
- data/lib/smith/workflow/parallel/execution_context.rb +113 -0
- data/lib/smith/workflow/parallel/nested_execution.rb +124 -0
- data/lib/smith/workflow/parallel/root_execution.rb +91 -0
- data/lib/smith/workflow/parallel.rb +19 -22
- data/lib/smith/workflow/parallel_agent_binding.rb +24 -0
- data/lib/smith/workflow/parallel_execution.rb +46 -14
- data/lib/smith/workflow/persistence.rb +37 -8
- data/lib/smith/workflow/prepared_branch_execution.rb +31 -0
- data/lib/smith/workflow/prepared_step.rb +122 -0
- data/lib/smith/workflow/prepared_step_dispatch.rb +88 -0
- data/lib/smith/workflow/prepared_step_execution_authorization.rb +101 -0
- data/lib/smith/workflow/prepared_step_execution_result.rb +49 -0
- data/lib/smith/workflow/prepared_step_execution_scope.rb +111 -0
- data/lib/smith/workflow/prepared_step_recovery.rb +38 -0
- data/lib/smith/workflow/process_local.rb +33 -0
- data/lib/smith/workflow/retry_execution.rb +20 -11
- data/lib/smith/workflow/split_step_persistence/boundary.rb +35 -22
- data/lib/smith/workflow/split_step_persistence/boundary_reset.rb +50 -0
- data/lib/smith/workflow/split_step_persistence/canonical_payload_digest.rb +55 -0
- data/lib/smith/workflow/split_step_persistence/checkpoint.rb +3 -5
- data/lib/smith/workflow/split_step_persistence/composite_branch_authorization.rb +99 -0
- data/lib/smith/workflow/split_step_persistence/composite_branch_effects.rb +41 -0
- data/lib/smith/workflow/split_step_persistence/composite_branch_execution.rb +95 -0
- data/lib/smith/workflow/split_step_persistence/composite_branch_outcome.rb +36 -0
- data/lib/smith/workflow/split_step_persistence/composite_execution.rb +39 -0
- data/lib/smith/workflow/split_step_persistence/composite_preparation.rb +57 -0
- data/lib/smith/workflow/split_step_persistence/composite_reduction_execution.rb +122 -0
- data/lib/smith/workflow/split_step_persistence/definition_boundary.rb +19 -0
- data/lib/smith/workflow/split_step_persistence/dispatch_boundary.rb +16 -0
- data/lib/smith/workflow/split_step_persistence/dispatch_claim.rb +118 -0
- data/lib/smith/workflow/split_step_persistence/dispatch_confirmation.rb +70 -0
- data/lib/smith/workflow/split_step_persistence/dispatch_verification.rb +35 -0
- data/lib/smith/workflow/split_step_persistence/execution.rb +20 -64
- data/lib/smith/workflow/split_step_persistence/execution_authorization.rb +109 -0
- data/lib/smith/workflow/split_step_persistence/execution_authorization_issuance.rb +57 -0
- data/lib/smith/workflow/split_step_persistence/execution_binding_collector.rb +95 -0
- data/lib/smith/workflow/split_step_persistence/execution_binding_snapshot.rb +109 -0
- data/lib/smith/workflow/split_step_persistence/execution_lifecycle.rb +96 -0
- data/lib/smith/workflow/split_step_persistence/execution_result_capture.rb +48 -0
- data/lib/smith/workflow/split_step_persistence/execution_verification.rb +77 -0
- data/lib/smith/workflow/split_step_persistence/execution_workflow_snapshot.rb +77 -0
- data/lib/smith/workflow/split_step_persistence/inheritance.rb +3 -1
- data/lib/smith/workflow/split_step_persistence/payloads.rb +7 -3
- data/lib/smith/workflow/split_step_persistence/preparation.rb +30 -2
- data/lib/smith/workflow/split_step_persistence/preparation_claim.rb +38 -12
- data/lib/smith/workflow/split_step_persistence/preparation_payload.rb +25 -0
- data/lib/smith/workflow/split_step_persistence/preparation_recovery.rb +10 -2
- data/lib/smith/workflow/split_step_persistence/recovery.rb +125 -0
- data/lib/smith/workflow/split_step_persistence/recovery_boundary.rb +56 -0
- data/lib/smith/workflow/split_step_persistence/recovery_class_methods.rb +14 -0
- data/lib/smith/workflow/split_step_persistence/replace_exact_signature.rb +46 -0
- data/lib/smith/workflow/split_step_persistence/restart_safe_adapter.rb +42 -0
- data/lib/smith/workflow/split_step_persistence/subclass_boundary.rb +66 -0
- data/lib/smith/workflow/split_step_persistence/transaction_identity.rb +45 -0
- data/lib/smith/workflow/split_step_persistence.rb +50 -0
- data/lib/smith/workflow/step_completion.rb +31 -0
- data/lib/smith/workflow/step_context.rb +46 -0
- data/lib/smith/workflow/string_snapshot.rb +25 -0
- data/lib/smith/workflow/thread_context_snapshot.rb +103 -0
- data/lib/smith/workflow/transition.rb +137 -133
- data/lib/smith/workflow/transition_actionability.rb +22 -0
- data/lib/smith/workflow.rb +64 -18
- data/lib/smith.rb +44 -2
- data/sig/smith.rbs +1 -0
- metadata +155 -19
data/sig/smith.rbs
CHANGED
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
|
+
version: 0.6.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:
|
|
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.
|
|
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.
|
|
45
|
+
version: '1.2'
|
|
26
46
|
- !ruby/object:Gem::Dependency
|
|
27
|
-
name: dry-
|
|
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.
|
|
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.
|
|
59
|
+
version: '1.0'
|
|
40
60
|
- !ruby/object:Gem::Dependency
|
|
41
|
-
name: dry-
|
|
61
|
+
name: dry-container
|
|
42
62
|
requirement: !ruby/object:Gem::Requirement
|
|
43
63
|
requirements:
|
|
44
64
|
- - "~>"
|
|
45
65
|
- !ruby/object:Gem::Version
|
|
46
|
-
version: '
|
|
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: '
|
|
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-
|
|
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.
|
|
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.
|
|
101
|
+
version: '1.6'
|
|
82
102
|
- !ruby/object:Gem::Dependency
|
|
83
|
-
name: dry-
|
|
103
|
+
name: dry-types
|
|
84
104
|
requirement: !ruby/object:Gem::Requirement
|
|
85
105
|
requirements:
|
|
86
106
|
- - "~>"
|
|
87
107
|
- !ruby/object:Gem::Version
|
|
88
|
-
version: '
|
|
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: '
|
|
115
|
+
version: '1.7'
|
|
96
116
|
- !ruby/object:Gem::Dependency
|
|
97
|
-
name:
|
|
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.
|
|
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.
|
|
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
|
|
@@ -180,16 +213,22 @@ files:
|
|
|
180
213
|
- lib/smith/models/profile.rb
|
|
181
214
|
- lib/smith/persistence_adapters.rb
|
|
182
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
|
|
183
219
|
- lib/smith/persistence_adapters/active_record_initial_write.rb
|
|
184
220
|
- lib/smith/persistence_adapters/active_record_store.rb
|
|
185
221
|
- lib/smith/persistence_adapters/cache_store.rb
|
|
186
222
|
- lib/smith/persistence_adapters/memory.rb
|
|
187
223
|
- lib/smith/persistence_adapters/payload_version.rb
|
|
188
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
|
|
189
227
|
- lib/smith/persistence_adapters/redis_store.rb
|
|
190
228
|
- lib/smith/persistence_adapters/redis_versioned_write.rb
|
|
191
229
|
- lib/smith/persistence_adapters/retry.rb
|
|
192
230
|
- lib/smith/persistence_adapters/version_expectation.rb
|
|
231
|
+
- lib/smith/persistence_payload_conflict.rb
|
|
193
232
|
- lib/smith/pricing.rb
|
|
194
233
|
- lib/smith/providers/openai/responses.rb
|
|
195
234
|
- lib/smith/providers/openai/routing.rb
|
|
@@ -218,8 +257,42 @@ files:
|
|
|
218
257
|
- lib/smith/workflow/branch_env.rb
|
|
219
258
|
- lib/smith/workflow/budget_integration.rb
|
|
220
259
|
- lib/smith/workflow/claim.rb
|
|
260
|
+
- lib/smith/workflow/composite/branch.rb
|
|
261
|
+
- lib/smith/workflow/composite/branch_budget_contract.rb
|
|
262
|
+
- lib/smith/workflow/composite/branch_contract.rb
|
|
263
|
+
- lib/smith/workflow/composite/branch_execution.rb
|
|
264
|
+
- lib/smith/workflow/composite/branch_failure.rb
|
|
265
|
+
- lib/smith/workflow/composite/branch_outcome.rb
|
|
266
|
+
- lib/smith/workflow/composite/budget_allocator.rb
|
|
267
|
+
- lib/smith/workflow/composite/budget_math.rb
|
|
268
|
+
- lib/smith/workflow/composite/contract.rb
|
|
269
|
+
- lib/smith/workflow/composite/effects.rb
|
|
270
|
+
- lib/smith/workflow/composite/effects_application.rb
|
|
271
|
+
- lib/smith/workflow/composite/effects_baseline.rb
|
|
272
|
+
- lib/smith/workflow/composite/effects_preflight.rb
|
|
273
|
+
- lib/smith/workflow/composite/encoded_value_budget.rb
|
|
274
|
+
- lib/smith/workflow/composite/enums.rb
|
|
275
|
+
- lib/smith/workflow/composite/error.rb
|
|
276
|
+
- lib/smith/workflow/composite/error_evidence.rb
|
|
277
|
+
- lib/smith/workflow/composite/execution_contract.rb
|
|
278
|
+
- lib/smith/workflow/composite/fanout_branch_contract.rb
|
|
279
|
+
- lib/smith/workflow/composite/input.rb
|
|
280
|
+
- lib/smith/workflow/composite/outcome_accumulator.rb
|
|
281
|
+
- lib/smith/workflow/composite/outcome_set.rb
|
|
282
|
+
- lib/smith/workflow/composite/payload.rb
|
|
283
|
+
- lib/smith/workflow/composite/payload_digest.rb
|
|
284
|
+
- lib/smith/workflow/composite/plan.rb
|
|
285
|
+
- lib/smith/workflow/composite/plan_integrity.rb
|
|
286
|
+
- lib/smith/workflow/composite/planner.rb
|
|
287
|
+
- lib/smith/workflow/composite/preparation.rb
|
|
288
|
+
- lib/smith/workflow/composite/reducer.rb
|
|
289
|
+
- lib/smith/workflow/composite/reduction.rb
|
|
290
|
+
- lib/smith/workflow/composite/value_budget.rb
|
|
291
|
+
- lib/smith/workflow/composite_branch_execution_authorization.rb
|
|
221
292
|
- lib/smith/workflow/data_volume_policy.rb
|
|
222
293
|
- lib/smith/workflow/deadline_enforcement.rb
|
|
294
|
+
- lib/smith/workflow/definition_identity.rb
|
|
295
|
+
- lib/smith/workflow/definition_identity/class_methods.rb
|
|
223
296
|
- lib/smith/workflow/deterministic_execution.rb
|
|
224
297
|
- lib/smith/workflow/deterministic_step.rb
|
|
225
298
|
- lib/smith/workflow/dsl.rb
|
|
@@ -227,12 +300,17 @@ files:
|
|
|
227
300
|
- lib/smith/workflow/evaluator_optimizer.rb
|
|
228
301
|
- lib/smith/workflow/event_integration.rb
|
|
229
302
|
- lib/smith/workflow/execution.rb
|
|
303
|
+
- lib/smith/workflow/execution_binding_resolution.rb
|
|
230
304
|
- lib/smith/workflow/execution_frame.rb
|
|
305
|
+
- lib/smith/workflow/execution_result_snapshot.rb
|
|
231
306
|
- lib/smith/workflow/fanout_execution.rb
|
|
232
307
|
- lib/smith/workflow/graph.rb
|
|
233
308
|
- lib/smith/workflow/graph/contract_helpers.rb
|
|
234
309
|
- lib/smith/workflow/graph/diagnostic.rb
|
|
310
|
+
- lib/smith/workflow/graph/diagnostic_path.rb
|
|
311
|
+
- lib/smith/workflow/graph/execution_successors.rb
|
|
235
312
|
- lib/smith/workflow/graph/fanout_contract.rb
|
|
313
|
+
- lib/smith/workflow/graph/identifier_projection.rb
|
|
236
314
|
- lib/smith/workflow/graph/metrics.rb
|
|
237
315
|
- lib/smith/workflow/graph/nested_readiness_diagnostics.rb
|
|
238
316
|
- lib/smith/workflow/graph/optimization_contract.rb
|
|
@@ -241,18 +319,30 @@ files:
|
|
|
241
319
|
- lib/smith/workflow/graph/reachability_diagnostics.rb
|
|
242
320
|
- lib/smith/workflow/graph/reference.rb
|
|
243
321
|
- lib/smith/workflow/graph/report.rb
|
|
322
|
+
- lib/smith/workflow/graph/retry_policy_diagnostic.rb
|
|
244
323
|
- lib/smith/workflow/graph/runtime_binding_diagnostic_builder.rb
|
|
245
324
|
- lib/smith/workflow/graph/runtime_binding_diagnostics.rb
|
|
246
325
|
- lib/smith/workflow/graph/runtime_readiness.rb
|
|
247
326
|
- lib/smith/workflow/graph/runtime_readiness_metrics.rb
|
|
248
327
|
- lib/smith/workflow/graph/runtime_readiness_report.rb
|
|
328
|
+
- lib/smith/workflow/graph/runtime_readiness_report_builder.rb
|
|
329
|
+
- lib/smith/workflow/graph/runtime_readiness_traversal.rb
|
|
249
330
|
- lib/smith/workflow/graph/state_diagnostics.rb
|
|
250
331
|
- lib/smith/workflow/graph/targets.rb
|
|
332
|
+
- lib/smith/workflow/graph/transition_contract.rb
|
|
333
|
+
- lib/smith/workflow/graph/transition_contract_attributes.rb
|
|
334
|
+
- lib/smith/workflow/graph/transition_contract_configurations.rb
|
|
251
335
|
- lib/smith/workflow/graph/transition_diagnostics.rb
|
|
336
|
+
- lib/smith/workflow/graph/transition_optimization_configuration.rb
|
|
252
337
|
- lib/smith/workflow/graph/transition_snapshot.rb
|
|
253
338
|
- lib/smith/workflow/graph/validator.rb
|
|
254
339
|
- lib/smith/workflow/graph_dsl.rb
|
|
255
340
|
- lib/smith/workflow/guardrail_integration.rb
|
|
341
|
+
- lib/smith/workflow/identifier.rb
|
|
342
|
+
- lib/smith/workflow/message_admission.rb
|
|
343
|
+
- lib/smith/workflow/message_admission_boundary.rb
|
|
344
|
+
- lib/smith/workflow/message_batch.rb
|
|
345
|
+
- lib/smith/workflow/message_value_normalizer.rb
|
|
256
346
|
- lib/smith/workflow/nested_execution.rb
|
|
257
347
|
- lib/smith/workflow/optimization_state.rb
|
|
258
348
|
- lib/smith/workflow/orchestration_state.rb
|
|
@@ -260,29 +350,75 @@ files:
|
|
|
260
350
|
- lib/smith/workflow/parallel.rb
|
|
261
351
|
- lib/smith/workflow/parallel/cancellation.rb
|
|
262
352
|
- lib/smith/workflow/parallel/cancellation_signal.rb
|
|
353
|
+
- lib/smith/workflow/parallel/execution_context.rb
|
|
354
|
+
- lib/smith/workflow/parallel/nested_execution.rb
|
|
355
|
+
- lib/smith/workflow/parallel/root_execution.rb
|
|
356
|
+
- lib/smith/workflow/parallel_agent_binding.rb
|
|
263
357
|
- lib/smith/workflow/parallel_execution.rb
|
|
264
358
|
- lib/smith/workflow/persistence.rb
|
|
265
359
|
- lib/smith/workflow/pipeline.rb
|
|
360
|
+
- lib/smith/workflow/prepared_branch_execution.rb
|
|
361
|
+
- lib/smith/workflow/prepared_step.rb
|
|
362
|
+
- lib/smith/workflow/prepared_step_dispatch.rb
|
|
363
|
+
- lib/smith/workflow/prepared_step_execution_authorization.rb
|
|
364
|
+
- lib/smith/workflow/prepared_step_execution_result.rb
|
|
365
|
+
- lib/smith/workflow/prepared_step_execution_scope.rb
|
|
366
|
+
- lib/smith/workflow/prepared_step_recovery.rb
|
|
367
|
+
- lib/smith/workflow/process_local.rb
|
|
266
368
|
- lib/smith/workflow/retry_execution.rb
|
|
267
369
|
- lib/smith/workflow/router.rb
|
|
268
370
|
- lib/smith/workflow/run_result.rb
|
|
269
371
|
- lib/smith/workflow/split_step_persistence.rb
|
|
270
372
|
- lib/smith/workflow/split_step_persistence/boundary.rb
|
|
373
|
+
- lib/smith/workflow/split_step_persistence/boundary_reset.rb
|
|
374
|
+
- lib/smith/workflow/split_step_persistence/canonical_payload_digest.rb
|
|
271
375
|
- lib/smith/workflow/split_step_persistence/checkpoint.rb
|
|
272
376
|
- lib/smith/workflow/split_step_persistence/checkpoint_state.rb
|
|
377
|
+
- lib/smith/workflow/split_step_persistence/composite_branch_authorization.rb
|
|
378
|
+
- lib/smith/workflow/split_step_persistence/composite_branch_effects.rb
|
|
379
|
+
- lib/smith/workflow/split_step_persistence/composite_branch_execution.rb
|
|
380
|
+
- lib/smith/workflow/split_step_persistence/composite_branch_outcome.rb
|
|
381
|
+
- lib/smith/workflow/split_step_persistence/composite_execution.rb
|
|
382
|
+
- lib/smith/workflow/split_step_persistence/composite_preparation.rb
|
|
383
|
+
- lib/smith/workflow/split_step_persistence/composite_reduction_execution.rb
|
|
384
|
+
- lib/smith/workflow/split_step_persistence/definition_boundary.rb
|
|
385
|
+
- lib/smith/workflow/split_step_persistence/dispatch_boundary.rb
|
|
386
|
+
- lib/smith/workflow/split_step_persistence/dispatch_claim.rb
|
|
387
|
+
- lib/smith/workflow/split_step_persistence/dispatch_confirmation.rb
|
|
388
|
+
- lib/smith/workflow/split_step_persistence/dispatch_verification.rb
|
|
273
389
|
- lib/smith/workflow/split_step_persistence/execution.rb
|
|
390
|
+
- lib/smith/workflow/split_step_persistence/execution_authorization.rb
|
|
391
|
+
- lib/smith/workflow/split_step_persistence/execution_authorization_issuance.rb
|
|
392
|
+
- lib/smith/workflow/split_step_persistence/execution_binding_collector.rb
|
|
393
|
+
- lib/smith/workflow/split_step_persistence/execution_binding_snapshot.rb
|
|
394
|
+
- lib/smith/workflow/split_step_persistence/execution_lifecycle.rb
|
|
395
|
+
- lib/smith/workflow/split_step_persistence/execution_result_capture.rb
|
|
396
|
+
- lib/smith/workflow/split_step_persistence/execution_verification.rb
|
|
397
|
+
- lib/smith/workflow/split_step_persistence/execution_workflow_snapshot.rb
|
|
274
398
|
- lib/smith/workflow/split_step_persistence/inheritance.rb
|
|
275
399
|
- lib/smith/workflow/split_step_persistence/payloads.rb
|
|
276
400
|
- lib/smith/workflow/split_step_persistence/preparation.rb
|
|
277
401
|
- lib/smith/workflow/split_step_persistence/preparation_claim.rb
|
|
402
|
+
- lib/smith/workflow/split_step_persistence/preparation_payload.rb
|
|
278
403
|
- lib/smith/workflow/split_step_persistence/preparation_recovery.rb
|
|
404
|
+
- lib/smith/workflow/split_step_persistence/recovery.rb
|
|
405
|
+
- lib/smith/workflow/split_step_persistence/recovery_boundary.rb
|
|
406
|
+
- lib/smith/workflow/split_step_persistence/recovery_class_methods.rb
|
|
407
|
+
- lib/smith/workflow/split_step_persistence/replace_exact_signature.rb
|
|
408
|
+
- lib/smith/workflow/split_step_persistence/restart_safe_adapter.rb
|
|
279
409
|
- lib/smith/workflow/split_step_persistence/state_snapshot.rb
|
|
280
410
|
- lib/smith/workflow/split_step_persistence/subclass_boundary.rb
|
|
411
|
+
- lib/smith/workflow/split_step_persistence/transaction_identity.rb
|
|
281
412
|
- lib/smith/workflow/split_step_persistence/transition_contract.rb
|
|
282
413
|
- lib/smith/workflow/split_step_persistence/transition_contract_freezer.rb
|
|
283
414
|
- lib/smith/workflow/split_step_persistence/transition_contract_signature.rb
|
|
284
415
|
- lib/smith/workflow/split_step_persistence/transition_contract_structured_values.rb
|
|
416
|
+
- lib/smith/workflow/step_completion.rb
|
|
417
|
+
- lib/smith/workflow/step_context.rb
|
|
418
|
+
- lib/smith/workflow/string_snapshot.rb
|
|
419
|
+
- lib/smith/workflow/thread_context_snapshot.rb
|
|
285
420
|
- lib/smith/workflow/transition.rb
|
|
421
|
+
- lib/smith/workflow/transition_actionability.rb
|
|
286
422
|
- lib/smith/workflow/usage_entry.rb
|
|
287
423
|
- lib/smith/workflow/worker_execution.rb
|
|
288
424
|
- script/profile_tool_results.rb
|