ductwork 1.0.0 → 1.1.1

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 (36) hide show
  1. checksums.yaml +4 -4
  2. data/.claude/skills/audit-clock-drift/SKILL.md +167 -5
  3. data/.claude/skills/audit-common/accepted-tradeoffs.md +118 -0
  4. data/.claude/skills/audit-common/method.md +86 -0
  5. data/.claude/skills/audit-common/scope-boundaries.md +101 -0
  6. data/.claude/skills/audit-common/severity.md +77 -0
  7. data/.claude/skills/audit-database-indexes/SKILL.md +182 -5
  8. data/.claude/skills/audit-database-support/SKILL.md +209 -11
  9. data/.claude/skills/audit-durability/SKILL.md +227 -10
  10. data/CHANGELOG-PRO.md +12 -1
  11. data/CHANGELOG.md +26 -0
  12. data/CLAUDE.md +1 -1
  13. data/lib/ductwork/abandoned_claim.rb +8 -0
  14. data/lib/ductwork/branch_claim.rb +92 -36
  15. data/lib/ductwork/claimed_state.rb +57 -0
  16. data/lib/ductwork/cli.rb +9 -11
  17. data/lib/ductwork/crash.rb +5 -0
  18. data/lib/ductwork/models/advancement.rb +11 -5
  19. data/lib/ductwork/models/branch.rb +91 -18
  20. data/lib/ductwork/models/execution.rb +40 -13
  21. data/lib/ductwork/models/pipeline.rb +2 -2
  22. data/lib/ductwork/models/process.rb +7 -3
  23. data/lib/ductwork/models/run.rb +2 -1
  24. data/lib/ductwork/models/step.rb +6 -0
  25. data/lib/ductwork/optimistic_locking_execution_claim.rb +6 -16
  26. data/lib/ductwork/orphaned_claim.rb +5 -0
  27. data/lib/ductwork/polling_interval.rb +30 -0
  28. data/lib/ductwork/process_crash.rb +5 -0
  29. data/lib/ductwork/processes/job_worker.rb +25 -6
  30. data/lib/ductwork/processes/pipeline_advancer.rb +16 -6
  31. data/lib/ductwork/processes/process_supervisor.rb +21 -0
  32. data/lib/ductwork/processes/worker_health_check.rb +38 -10
  33. data/lib/ductwork/row_locking_execution_claim.rb +4 -17
  34. data/lib/ductwork/thread_crash.rb +5 -0
  35. data/lib/ductwork/version.rb +1 -1
  36. metadata +15 -4
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ductwork
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 1.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Tyler Ewing
@@ -103,8 +103,8 @@ dependencies:
103
103
  - - "~>"
104
104
  - !ruby/object:Gem::Version
105
105
  version: '2.7'
106
- description: Ductwork lets you build complex pipelines quickly and easily using intuitive
107
- Ruby tooling and a natural DSL.
106
+ description: Ductwork lets you build complex durable pipelines quickly and easily
107
+ using intuitive Ruby tooling and a natural DSL.
108
108
  email:
109
109
  - contact@getductwork.io
110
110
  executables: []
@@ -112,6 +112,10 @@ extensions: []
112
112
  extra_rdoc_files: []
113
113
  files:
114
114
  - ".claude/skills/audit-clock-drift/SKILL.md"
115
+ - ".claude/skills/audit-common/accepted-tradeoffs.md"
116
+ - ".claude/skills/audit-common/method.md"
117
+ - ".claude/skills/audit-common/scope-boundaries.md"
118
+ - ".claude/skills/audit-common/severity.md"
115
119
  - ".claude/skills/audit-database-indexes/SKILL.md"
116
120
  - ".claude/skills/audit-database-support/SKILL.md"
117
121
  - ".claude/skills/audit-durability/SKILL.md"
@@ -144,10 +148,13 @@ files:
144
148
  - app/views/layouts/ductwork/application.html.erb
145
149
  - config/routes.rb
146
150
  - lib/ductwork.rb
151
+ - lib/ductwork/abandoned_claim.rb
147
152
  - lib/ductwork/branch_claim.rb
153
+ - lib/ductwork/claimed_state.rb
148
154
  - lib/ductwork/cli.rb
149
155
  - lib/ductwork/configuration.rb
150
156
  - lib/ductwork/context.rb
157
+ - lib/ductwork/crash.rb
151
158
  - lib/ductwork/database_clock.rb
152
159
  - lib/ductwork/dsl/branch_builder.rb
153
160
  - lib/ductwork/dsl/definition_builder.rb
@@ -174,6 +181,9 @@ files:
174
181
  - lib/ductwork/models/tuple.rb
175
182
  - lib/ductwork/models/workflow.rb
176
183
  - lib/ductwork/optimistic_locking_execution_claim.rb
184
+ - lib/ductwork/orphaned_claim.rb
185
+ - lib/ductwork/polling_interval.rb
186
+ - lib/ductwork/process_crash.rb
177
187
  - lib/ductwork/processes/health_check.rb
178
188
  - lib/ductwork/processes/job_worker.rb
179
189
  - lib/ductwork/processes/job_worker_runner.rb
@@ -191,6 +201,7 @@ files:
191
201
  - lib/ductwork/testing/helpers.rb
192
202
  - lib/ductwork/testing/minitest.rb
193
203
  - lib/ductwork/testing/rspec.rb
204
+ - lib/ductwork/thread_crash.rb
194
205
  - lib/ductwork/version.rb
195
206
  - lib/generators/ductwork/install/USAGE
196
207
  - lib/generators/ductwork/install/install_generator.rb
@@ -260,5 +271,5 @@ required_rubygems_version: !ruby/object:Gem::Requirement
260
271
  requirements: []
261
272
  rubygems_version: 4.0.16
262
273
  specification_version: 4
263
- summary: A Ruby pipeline framework
274
+ summary: A durable workflow orchestration framework for Ruby
264
275
  test_files: []