legion-data 1.7.4 → 1.8.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 (68) hide show
  1. checksums.yaml +4 -4
  2. data/AGENTS.md +66 -13
  3. data/CHANGELOG.md +24 -0
  4. data/CLAUDE.md +44 -307
  5. data/README.md +100 -6
  6. data/lib/legion/data/migrations/077_create_llm_conversations.rb +32 -0
  7. data/lib/legion/data/migrations/078_create_llm_messages.rb +33 -0
  8. data/lib/legion/data/migrations/079_create_llm_message_inference_requests.rb +47 -0
  9. data/lib/legion/data/migrations/080_create_llm_message_inference_responses.rb +39 -0
  10. data/lib/legion/data/migrations/081_add_llm_message_inference_foreign_keys.rb +17 -0
  11. data/lib/legion/data/migrations/082_create_llm_route_attempts.rb +31 -0
  12. data/lib/legion/data/migrations/083_create_llm_message_inference_metrics.rb +36 -0
  13. data/lib/legion/data/migrations/084_create_llm_tool_calls.rb +32 -0
  14. data/lib/legion/data/migrations/085_add_llm_message_tool_call_foreign_key.rb +15 -0
  15. data/lib/legion/data/migrations/086_create_llm_tool_call_attempts.rb +30 -0
  16. data/lib/legion/data/migrations/087_create_llm_conversation_compactions.rb +31 -0
  17. data/lib/legion/data/migrations/088_create_llm_policy_evaluations.rb +33 -0
  18. data/lib/legion/data/migrations/089_create_llm_security_events.rb +33 -0
  19. data/lib/legion/data/migrations/090_create_llm_registry_events.rb +23 -0
  20. data/lib/legion/data/migrations/091_create_portable_identity_providers.rb +35 -0
  21. data/lib/legion/data/migrations/092_create_portable_identity_principals.rb +25 -0
  22. data/lib/legion/data/migrations/093_create_portable_identities.rb +31 -0
  23. data/lib/legion/data/migrations/094_create_portable_identity_groups.rb +21 -0
  24. data/lib/legion/data/migrations/095_create_portable_identity_group_memberships.rb +25 -0
  25. data/lib/legion/data/migrations/096_create_portable_identity_audit_log.rb +26 -0
  26. data/lib/legion/data/migrations/097_add_llm_dispatch_fields.rb +16 -0
  27. data/lib/legion/data/model.rb +11 -1
  28. data/lib/legion/data/models/apollo/access_log.rb +17 -0
  29. data/lib/legion/data/models/apollo/entries.rb +22 -0
  30. data/lib/legion/data/models/apollo/expertise.rb +16 -0
  31. data/lib/legion/data/models/apollo/model_helpers.rb +17 -0
  32. data/lib/legion/data/models/apollo/operation.rb +16 -0
  33. data/lib/legion/data/models/apollo/relation.rb +18 -0
  34. data/lib/legion/data/models/function.rb +1 -0
  35. data/lib/legion/data/models/identity/audit_log.rb +20 -0
  36. data/lib/legion/data/models/identity/group.rb +28 -0
  37. data/lib/legion/data/models/identity/group_memberships.rb +28 -0
  38. data/lib/legion/data/models/identity/identity.rb +24 -0
  39. data/lib/legion/data/models/identity/model_helpers.rb +86 -0
  40. data/lib/legion/data/models/identity/principal.rb +37 -0
  41. data/lib/legion/data/models/identity/providers.rb +34 -0
  42. data/lib/legion/data/models/identity.rb +7 -0
  43. data/lib/legion/data/models/identity_group.rb +13 -0
  44. data/lib/legion/data/models/identity_provider.rb +8 -0
  45. data/lib/legion/data/models/llm/conversation.rb +25 -0
  46. data/lib/legion/data/models/llm/conversation_compaction.rb +22 -0
  47. data/lib/legion/data/models/llm/message.rb +105 -0
  48. data/lib/legion/data/models/llm/message_inference_metric.rb +46 -0
  49. data/lib/legion/data/models/llm/message_inference_request.rb +80 -0
  50. data/lib/legion/data/models/llm/message_inference_response.rb +23 -0
  51. data/lib/legion/data/models/llm/model_helpers.rb +18 -0
  52. data/lib/legion/data/models/llm/policy_evaluation.rb +20 -0
  53. data/lib/legion/data/models/llm/registry_event.rb +15 -0
  54. data/lib/legion/data/models/llm/route_attempt.rb +18 -0
  55. data/lib/legion/data/models/llm/security_event.rb +66 -0
  56. data/lib/legion/data/models/llm/tool_call.rb +21 -0
  57. data/lib/legion/data/models/llm/tool_call_attempt.rb +18 -0
  58. data/lib/legion/data/models/node.rb +2 -1
  59. data/lib/legion/data/models/principal.rb +13 -0
  60. data/lib/legion/data/models/rbac/cross_team_grants.rb +25 -0
  61. data/lib/legion/data/models/rbac/model_helpers.rb +25 -0
  62. data/lib/legion/data/models/rbac/role_assignments.rb +25 -0
  63. data/lib/legion/data/models/rbac/runner_grants.rb +23 -0
  64. data/lib/legion/data/models/relationship.rb +1 -0
  65. data/lib/legion/data/models/runner.rb +24 -2
  66. data/lib/legion/data/models/task.rb +4 -0
  67. data/lib/legion/data/version.rb +1 -1
  68. metadata +52 -1
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: legion-data
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.7.4
4
+ version: 1.8.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Esity
@@ -223,7 +223,34 @@ files:
223
223
  - lib/legion/data/migrations/074_widen_apollo_entry_identifiers.rb
224
224
  - lib/legion/data/migrations/075_add_task_idempotency.rb
225
225
  - lib/legion/data/migrations/076_create_extract_step_timings.rb
226
+ - lib/legion/data/migrations/077_create_llm_conversations.rb
227
+ - lib/legion/data/migrations/078_create_llm_messages.rb
228
+ - lib/legion/data/migrations/079_create_llm_message_inference_requests.rb
229
+ - lib/legion/data/migrations/080_create_llm_message_inference_responses.rb
230
+ - lib/legion/data/migrations/081_add_llm_message_inference_foreign_keys.rb
231
+ - lib/legion/data/migrations/082_create_llm_route_attempts.rb
232
+ - lib/legion/data/migrations/083_create_llm_message_inference_metrics.rb
233
+ - lib/legion/data/migrations/084_create_llm_tool_calls.rb
234
+ - lib/legion/data/migrations/085_add_llm_message_tool_call_foreign_key.rb
235
+ - lib/legion/data/migrations/086_create_llm_tool_call_attempts.rb
236
+ - lib/legion/data/migrations/087_create_llm_conversation_compactions.rb
237
+ - lib/legion/data/migrations/088_create_llm_policy_evaluations.rb
238
+ - lib/legion/data/migrations/089_create_llm_security_events.rb
239
+ - lib/legion/data/migrations/090_create_llm_registry_events.rb
240
+ - lib/legion/data/migrations/091_create_portable_identity_providers.rb
241
+ - lib/legion/data/migrations/092_create_portable_identity_principals.rb
242
+ - lib/legion/data/migrations/093_create_portable_identities.rb
243
+ - lib/legion/data/migrations/094_create_portable_identity_groups.rb
244
+ - lib/legion/data/migrations/095_create_portable_identity_group_memberships.rb
245
+ - lib/legion/data/migrations/096_create_portable_identity_audit_log.rb
246
+ - lib/legion/data/migrations/097_add_llm_dispatch_fields.rb
226
247
  - lib/legion/data/model.rb
248
+ - lib/legion/data/models/apollo/access_log.rb
249
+ - lib/legion/data/models/apollo/entries.rb
250
+ - lib/legion/data/models/apollo/expertise.rb
251
+ - lib/legion/data/models/apollo/model_helpers.rb
252
+ - lib/legion/data/models/apollo/operation.rb
253
+ - lib/legion/data/models/apollo/relation.rb
227
254
  - lib/legion/data/models/apollo_access_log.rb
228
255
  - lib/legion/data/models/apollo_entry.rb
229
256
  - lib/legion/data/models/apollo_expertise.rb
@@ -236,12 +263,36 @@ files:
236
263
  - lib/legion/data/models/extract_step_timing.rb
237
264
  - lib/legion/data/models/function.rb
238
265
  - lib/legion/data/models/identity.rb
266
+ - lib/legion/data/models/identity/audit_log.rb
267
+ - lib/legion/data/models/identity/group.rb
268
+ - lib/legion/data/models/identity/group_memberships.rb
269
+ - lib/legion/data/models/identity/identity.rb
270
+ - lib/legion/data/models/identity/model_helpers.rb
271
+ - lib/legion/data/models/identity/principal.rb
272
+ - lib/legion/data/models/identity/providers.rb
239
273
  - lib/legion/data/models/identity_audit_log.rb
240
274
  - lib/legion/data/models/identity_group.rb
241
275
  - lib/legion/data/models/identity_group_membership.rb
242
276
  - lib/legion/data/models/identity_provider.rb
277
+ - lib/legion/data/models/llm/conversation.rb
278
+ - lib/legion/data/models/llm/conversation_compaction.rb
279
+ - lib/legion/data/models/llm/message.rb
280
+ - lib/legion/data/models/llm/message_inference_metric.rb
281
+ - lib/legion/data/models/llm/message_inference_request.rb
282
+ - lib/legion/data/models/llm/message_inference_response.rb
283
+ - lib/legion/data/models/llm/model_helpers.rb
284
+ - lib/legion/data/models/llm/policy_evaluation.rb
285
+ - lib/legion/data/models/llm/registry_event.rb
286
+ - lib/legion/data/models/llm/route_attempt.rb
287
+ - lib/legion/data/models/llm/security_event.rb
288
+ - lib/legion/data/models/llm/tool_call.rb
289
+ - lib/legion/data/models/llm/tool_call_attempt.rb
243
290
  - lib/legion/data/models/node.rb
244
291
  - lib/legion/data/models/principal.rb
292
+ - lib/legion/data/models/rbac/cross_team_grants.rb
293
+ - lib/legion/data/models/rbac/model_helpers.rb
294
+ - lib/legion/data/models/rbac/role_assignments.rb
295
+ - lib/legion/data/models/rbac/runner_grants.rb
245
296
  - lib/legion/data/models/rbac_cross_team_grant.rb
246
297
  - lib/legion/data/models/rbac_role_assignment.rb
247
298
  - lib/legion/data/models/rbac_runner_grant.rb