phronomy 0.28.0 → 0.29.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 (91) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +20 -5
  3. data/docs/application-recipes.md +229 -0
  4. data/docs/architecture/dx05-agent-scope.md +119 -0
  5. data/docs/architecture/dx05-workflow-task-state.md +134 -0
  6. data/docs/architecture/error-api-review.md +245 -0
  7. data/docs/failure-reason-codes.md +45 -0
  8. data/docs/features.md +4 -1
  9. data/docs/getting-started.md +44 -43
  10. data/docs/ordered-event-delivery.md +54 -0
  11. data/docs/workflow-completion.md +92 -0
  12. data/gemfiles/http_minimum.gemfile +5 -0
  13. data/lib/phronomy/agent/agent_not_found_error.rb +16 -0
  14. data/lib/phronomy/agent/agent_unloaded_error.rb +14 -0
  15. data/lib/phronomy/agent/api/agent.rb +13 -0
  16. data/lib/phronomy/agent/async_event_api.rb +111 -87
  17. data/lib/phronomy/agent/base.rb +74 -43
  18. data/lib/phronomy/agent/before_llm_input.rb +7 -1
  19. data/lib/phronomy/agent/execution/exact_execution.rb +11 -9
  20. data/lib/phronomy/agent/execution/execution_coordinator.rb +16 -13
  21. data/lib/phronomy/agent/execution/execution_outcome_committer.rb +1 -1
  22. data/lib/phronomy/agent/execution/initial_preparation.rb +1 -4
  23. data/lib/phronomy/agent/execution/runtime_record_encoder.rb +1 -4
  24. data/lib/phronomy/agent/filterable.rb +21 -15
  25. data/lib/phronomy/agent/lifecycle/lifetime_api.rb +76 -0
  26. data/lib/phronomy/agent/lifecycle/operation_lease.rb +33 -0
  27. data/lib/phronomy/agent/lifecycle/operation_result.rb +53 -0
  28. data/lib/phronomy/agent/lifecycle/ownership_registry.rb +99 -8
  29. data/lib/phronomy/agent/lifecycle/scope.rb +198 -0
  30. data/lib/phronomy/agent/lifecycle/scope_cleanup_error.rb +19 -0
  31. data/lib/phronomy/agent/lifecycle/unload_transition.rb +78 -0
  32. data/lib/phronomy/agent/recovery/recovery_coordinator/continuation.rb +3 -3
  33. data/lib/phronomy/agent/recovery/recovery_coordinator/installation.rb +7 -7
  34. data/lib/phronomy/agent/recovery/recovery_coordinator/resolution.rb +14 -18
  35. data/lib/phronomy/agent/recovery/recovery_coordinator.rb +5 -9
  36. data/lib/phronomy/agent/recovery/recovery_support.rb +2 -8
  37. data/lib/phronomy/agent/stream_callback_error.rb +2 -2
  38. data/lib/phronomy/common/error.rb +65 -1
  39. data/lib/phronomy/content_store/base.rb +7 -2
  40. data/lib/phronomy/context/assembly.rb +11 -18
  41. data/lib/phronomy/embeddings/authentication_error.rb +11 -0
  42. data/lib/phronomy/embeddings/backends/ruby_llm_embeddings.rb +5 -1
  43. data/lib/phronomy/embeddings/rate_limit_error.rb +11 -0
  44. data/lib/phronomy/execution/execution_cancellation_error.rb +2 -2
  45. data/lib/phronomy/execution/execution_timeout_error.rb +2 -2
  46. data/lib/phronomy/execution/task_result.rb +7 -2
  47. data/lib/phronomy/filter/filter_block_error.rb +2 -2
  48. data/lib/phronomy/generation/low_confidence_error.rb +2 -2
  49. data/lib/phronomy/integrations/ordered_event_delivery.rb +208 -0
  50. data/lib/phronomy/multi_agent/persistence/team_execution_repository.rb +5 -5
  51. data/lib/phronomy/multi_agent/team_busy_error.rb +18 -0
  52. data/lib/phronomy/multi_agent/team_coordinator.rb +20 -7
  53. data/lib/phronomy/multi_agent/team_not_found_error.rb +18 -0
  54. data/lib/phronomy/storage/condition_failed_error.rb +2 -2
  55. data/lib/phronomy/storage/unique_constraint_error.rb +2 -2
  56. data/lib/phronomy/testing/persistence_contract/coordination_repositories.rb +1 -1
  57. data/lib/phronomy/tool/base.rb +25 -23
  58. data/lib/phronomy/tracing/base.rb +35 -6
  59. data/lib/phronomy/tracing/open_telemetry_tracer.rb +4 -29
  60. data/lib/phronomy/version.rb +1 -1
  61. data/lib/phronomy/workflow/execution/workflow.rb +30 -2
  62. data/lib/phronomy/workflow/execution/workflow_execution_environment.rb +1 -0
  63. data/lib/phronomy/workflow/execution/workflow_execution_registry.rb +74 -3
  64. data/lib/phronomy/workflow/execution/workflow_runner.rb +48 -14
  65. data/lib/phronomy/workflow/execution/workflow_task_execution.rb +153 -0
  66. data/lib/phronomy/workflow/execution/workflow_task_reception.rb +72 -0
  67. data/lib/phronomy/workflow/execution/workflow_task_resume_error.rb +14 -0
  68. data/lib/phronomy/workflow/runtime_binding/workflow_engine_environment.rb +26 -3
  69. data/lib/phronomy/workflow/runtime_binding/workflow_phase_machine_builder.rb +3 -1
  70. data/lib/phronomy/workflow/runtime_binding/workflow_task_session.rb +76 -0
  71. data/lib/phronomy.rb +6 -0
  72. data/scripts/api_snapshot.rb +12 -0
  73. data/scripts/check_readme_ruby.rb +24 -29
  74. data/scripts/check_readme_runnable.rb +92 -81
  75. data/sig/phronomy/agent/agent_not_found_error.rbs +6 -0
  76. data/sig/phronomy/agent/agent_unloaded_error.rbs +6 -0
  77. data/sig/phronomy/agent/stream_callback_error.rbs +8 -0
  78. data/sig/phronomy/agent.rbs +18 -0
  79. data/sig/phronomy/embeddings/base.rbs +6 -0
  80. data/sig/phronomy/execution/execution.rbs +2 -2
  81. data/sig/phronomy/extensions.rbs +1 -0
  82. data/sig/phronomy/filter/filter_block_error.rbs +6 -0
  83. data/sig/phronomy/generation/low_confidence_error.rbs +6 -0
  84. data/sig/phronomy/integrations.rbs +14 -0
  85. data/sig/phronomy/multi_agent/team_busy_error.rbs +8 -0
  86. data/sig/phronomy/multi_agent/team_not_found_error.rbs +8 -0
  87. data/sig/phronomy/storage/contracts.rbs +2 -2
  88. data/sig/phronomy/workflow/execution/workflow_execution_environment.rbs +1 -0
  89. data/sig/phronomy/workflow.rbs +4 -0
  90. data/sig/phronomy.rbs +4 -0
  91. metadata +49 -2
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: phronomy
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.28.0
4
+ version: 0.29.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Raizo T.C.S
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2026-10-08 00:00:00.000000000 Z
11
+ date: 2026-10-12 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: ruby_llm
@@ -24,6 +24,20 @@ dependencies:
24
24
  - - "~>"
25
25
  - !ruby/object:Gem::Version
26
26
  version: 2.0.0
27
+ - !ruby/object:Gem::Dependency
28
+ name: faraday
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '2.1'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '2.1'
27
41
  - !ruby/object:Gem::Dependency
28
42
  name: schematist
29
43
  requirement: !ruby/object:Gem::Requirement
@@ -141,6 +155,7 @@ files:
141
155
  - benchmark/bench_vector_store.rb
142
156
  - benchmark/bench_workflow.rb
143
157
  - benchmark/run_all.rb
158
+ - docs/application-recipes.md
144
159
  - docs/architecture.md
145
160
  - docs/architecture/agent-chat-and-state-ownership.md
146
161
  - docs/architecture/agent-configuration-and-tool-binding.md
@@ -150,7 +165,10 @@ files:
150
165
  - docs/architecture/before-llm-input.md
151
166
  - docs/architecture/context-management.md
152
167
  - docs/architecture/context-preparation-steps.md
168
+ - docs/architecture/dx05-agent-scope.md
169
+ - docs/architecture/dx05-workflow-task-state.md
153
170
  - docs/architecture/entry-action-and-team-wording.md
171
+ - docs/architecture/error-api-review.md
154
172
  - docs/architecture/execution-abstraction-review.md
155
173
  - docs/architecture/execution-boundaries.md
156
174
  - docs/architecture/execution-metadata-and-values.md
@@ -276,6 +294,7 @@ files:
276
294
  - docs/design/durable-semantic-coordination/RECOVERY_CONTRACT_CLARIFICATIONS.md
277
295
  - docs/design/durable-semantic-coordination/RESPONSIBILITY_BOUNDARY_REVIEW.md
278
296
  - docs/execution-boundaries-preview.md
297
+ - docs/failure-reason-codes.md
279
298
  - docs/features.md
280
299
  - docs/getting-started.md
281
300
  - docs/mcp-client.md
@@ -313,15 +332,20 @@ files:
313
332
  - docs/migrations/storage-backend-composition.md
314
333
  - docs/migrations/storage-transaction-boundaries.md
315
334
  - docs/migrations/vector-async-clients.md
335
+ - docs/ordered-event-delivery.md
316
336
  - docs/persistence-backends.md
317
337
  - docs/runtime-and-concurrency.md
338
+ - docs/workflow-completion.md
318
339
  - examples/README.md
340
+ - gemfiles/http_minimum.gemfile
319
341
  - gemfiles/mcp_1_0.gemfile
320
342
  - lib/phronomy.rb
321
343
  - lib/phronomy/agent/admission.rb
322
344
  - lib/phronomy/agent/agent_already_exists_error.rb
323
345
  - lib/phronomy/agent/agent_busy_error.rb
346
+ - lib/phronomy/agent/agent_not_found_error.rb
324
347
  - lib/phronomy/agent/agent_purged_error.rb
348
+ - lib/phronomy/agent/agent_unloaded_error.rb
325
349
  - lib/phronomy/agent/api/agent.rb
326
350
  - lib/phronomy/agent/api/execution_rehydration_required_error.rb
327
351
  - lib/phronomy/agent/async_event_api.rb
@@ -363,7 +387,13 @@ files:
363
387
  - lib/phronomy/agent/knowledge_item.rb
364
388
  - lib/phronomy/agent/lifecycle/agent_root.rb
365
389
  - lib/phronomy/agent/lifecycle/default_persistence.rb
390
+ - lib/phronomy/agent/lifecycle/lifetime_api.rb
391
+ - lib/phronomy/agent/lifecycle/operation_lease.rb
392
+ - lib/phronomy/agent/lifecycle/operation_result.rb
366
393
  - lib/phronomy/agent/lifecycle/ownership_registry.rb
394
+ - lib/phronomy/agent/lifecycle/scope.rb
395
+ - lib/phronomy/agent/lifecycle/scope_cleanup_error.rb
396
+ - lib/phronomy/agent/lifecycle/unload_transition.rb
367
397
  - lib/phronomy/agent/persistence/agent_repository.rb
368
398
  - lib/phronomy/agent/persistence/cancellation_repository.rb
369
399
  - lib/phronomy/agent/persistence/codec.rb
@@ -431,9 +461,11 @@ files:
431
461
  - lib/phronomy/documents/splitter/fixed_size_splitter.rb
432
462
  - lib/phronomy/documents/splitter/recursive_splitter.rb
433
463
  - lib/phronomy/embeddings/async/async_client.rb
464
+ - lib/phronomy/embeddings/authentication_error.rb
434
465
  - lib/phronomy/embeddings/backends/ruby_llm_embeddings.rb
435
466
  - lib/phronomy/embeddings/base.rb
436
467
  - lib/phronomy/embeddings/invalid_result_error.rb
468
+ - lib/phronomy/embeddings/rate_limit_error.rb
437
469
  - lib/phronomy/embeddings/transport_error.rb
438
470
  - lib/phronomy/engine/concurrency/async_queue.rb
439
471
  - lib/phronomy/engine/concurrency/offload_pool.rb
@@ -494,6 +526,7 @@ files:
494
526
  - lib/phronomy/generation/generator_verifier/pipeline_state.rb
495
527
  - lib/phronomy/generation/generator_verifier/workflow_builder.rb
496
528
  - lib/phronomy/generation/low_confidence_error.rb
529
+ - lib/phronomy/integrations/ordered_event_delivery.rb
497
530
  - lib/phronomy/llm_adapter.rb
498
531
  - lib/phronomy/llm_adapter/async/async_client.rb
499
532
  - lib/phronomy/llm_adapter/authentication_error.rb
@@ -530,8 +563,10 @@ files:
530
563
  - lib/phronomy/multi_agent/runtime_binding/engine_environment.rb
531
564
  - lib/phronomy/multi_agent/shared_state.rb
532
565
  - lib/phronomy/multi_agent/store.rb
566
+ - lib/phronomy/multi_agent/team_busy_error.rb
533
567
  - lib/phronomy/multi_agent/team_coordinator.rb
534
568
  - lib/phronomy/multi_agent/team_execution.rb
569
+ - lib/phronomy/multi_agent/team_not_found_error.rb
535
570
  - lib/phronomy/multi_agent/team_ownership_registry.rb
536
571
  - lib/phronomy/multi_agent/team_root.rb
537
572
  - lib/phronomy/output_parser.rb
@@ -645,11 +680,15 @@ files:
645
680
  - lib/phronomy/workflow/execution/workflow_execution_registry.rb
646
681
  - lib/phronomy/workflow/execution/workflow_runner.rb
647
682
  - lib/phronomy/workflow/execution/workflow_settings.rb
683
+ - lib/phronomy/workflow/execution/workflow_task_execution.rb
684
+ - lib/phronomy/workflow/execution/workflow_task_reception.rb
685
+ - lib/phronomy/workflow/execution/workflow_task_resume_error.rb
648
686
  - lib/phronomy/workflow/persistence/codec.rb
649
687
  - lib/phronomy/workflow/persistence/state_repository.rb
650
688
  - lib/phronomy/workflow/persistence/storage_schema.rb
651
689
  - lib/phronomy/workflow/runtime_binding/workflow_engine_environment.rb
652
690
  - lib/phronomy/workflow/runtime_binding/workflow_phase_machine_builder.rb
691
+ - lib/phronomy/workflow/runtime_binding/workflow_task_session.rb
653
692
  - lib/phronomy/workflow/runtime_binding/workflow_terminal_policy.rb
654
693
  - scripts/add_to_h_to_token_doubles.rb
655
694
  - scripts/add_to_h_unnamed_doubles.rb
@@ -673,9 +712,12 @@ files:
673
712
  - sig/phronomy.rbs
674
713
  - sig/phronomy/agent.rbs
675
714
  - sig/phronomy/agent/admission.rbs
715
+ - sig/phronomy/agent/agent_not_found_error.rbs
716
+ - sig/phronomy/agent/agent_unloaded_error.rbs
676
717
  - sig/phronomy/agent/execution_contract.rbs
677
718
  - sig/phronomy/agent/execution_environment.rbs
678
719
  - sig/phronomy/agent/store.rbs
720
+ - sig/phronomy/agent/stream_callback_error.rbs
679
721
  - sig/phronomy/common.rbs
680
722
  - sig/phronomy/content_store/contracts.rbs
681
723
  - sig/phronomy/context.rbs
@@ -701,7 +743,10 @@ files:
701
743
  - sig/phronomy/execution/invocation_controls.rbs
702
744
  - sig/phronomy/execution/task_result.rbs
703
745
  - sig/phronomy/extensions.rbs
746
+ - sig/phronomy/filter/filter_block_error.rbs
747
+ - sig/phronomy/generation/low_confidence_error.rbs
704
748
  - sig/phronomy/handoff.rbs
749
+ - sig/phronomy/integrations.rbs
705
750
  - sig/phronomy/llm_adapter/backends/ruby_llm.rbs
706
751
  - sig/phronomy/llm_adapter/base.rbs
707
752
  - sig/phronomy/llm_adapter/usage.rbs
@@ -710,6 +755,8 @@ files:
710
755
  - sig/phronomy/multi_agent.rbs
711
756
  - sig/phronomy/multi_agent/reserved_child_admission.rbs
712
757
  - sig/phronomy/multi_agent/store.rbs
758
+ - sig/phronomy/multi_agent/team_busy_error.rbs
759
+ - sig/phronomy/multi_agent/team_not_found_error.rbs
713
760
  - sig/phronomy/persistence.rbs
714
761
  - sig/phronomy/persistence/errors.rbs
715
762
  - sig/phronomy/persistence/migration.rbs