lex-audit 0.1.2 → 0.1.3

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: e06daee7efba7ee9c8f7883c2e59922baaa602e22094f28d94d05335dfa5a42d
4
- data.tar.gz: 1deb7352830d90b9a2df09a73e514e5bd7149ae6b4122d3156c531db0e47e9a1
3
+ metadata.gz: b363a68ca7a515b7b211d3a324e46a9d35ba91a8178f2a2008d745c8094cd918
4
+ data.tar.gz: efe87365ce00e0d08d1c9e1325349dff0d469ab9cb16cc5ee626343814595a3b
5
5
  SHA512:
6
- metadata.gz: 51b37ec39294af491b19f7c2ed2049b07586c5290cb37949bf435e23dd323e12a86f28c7e8996aa44c86d22c33ab6d3484b192d1b814feb9813648d1ce992a5b
7
- data.tar.gz: a638436adb02bcb28da8cfc113d761c32ec157eb4759f61c50feafaa02ee630aff6b92620079d639ab7dc5f4861e7bd5d870f64a58b0dc306ee0ab1d347b8c70
6
+ metadata.gz: d155317671aaa668ca614ac2c88fd5352dcd46122130ead220395d5e143f5a71480013f588559d6cf200a7ab19364aeb707f5d1ecb9b0da369c21b013ac9e62b
7
+ data.tar.gz: 99652b938a051f9cc1354400daf4841a64f12c792509993d73f38ce1f1a7c32a28b82e1c540461169dec5395e8633be273de08a0998dbf0de37c3b08748d0acd
data/CHANGELOG.md CHANGED
@@ -1,5 +1,16 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.1.3] - 2026-03-22
4
+
5
+ ### Changed
6
+ - Add legion-cache, legion-crypt, legion-data, legion-json, legion-logging, legion-settings, legion-transport as runtime dependencies
7
+ - Replace direct Legion::JSON.dump calls with json_dump helper in runners/audit.rb and runners/approval_queue.rb
8
+ - Replace Legion::Logging.warn guarded call with log.warn helper in runners/approval_queue.rb
9
+ - Add Helpers::Lex include to runners/approval_queue.rb
10
+ - Update spec_helper with real sub-gem helper stubs (legion/transport full load)
11
+ - Update spec files to remove hand-rolled Legion::JSON stubs (real gem loaded via spec_helper)
12
+ - Update messages/audit_spec.rb validate tests to match real Transport::Message initialize behavior
13
+
3
14
  ## [0.1.2] - 2026-03-21
4
15
 
5
16
  ### Added
data/lex-audit.gemspec CHANGED
@@ -28,6 +28,14 @@ Gem::Specification.new do |spec|
28
28
  end
29
29
  spec.require_paths = ['lib']
30
30
 
31
+ spec.add_dependency 'legion-cache', '>= 1.3.11'
32
+ spec.add_dependency 'legion-crypt', '>= 1.4.9'
33
+ spec.add_dependency 'legion-data', '>= 1.4.17'
34
+ spec.add_dependency 'legion-json', '>= 1.2.1'
35
+ spec.add_dependency 'legion-logging', '>= 1.3.2'
36
+ spec.add_dependency 'legion-settings', '>= 1.3.14'
37
+ spec.add_dependency 'legion-transport', '>= 1.3.9'
38
+
31
39
  spec.add_development_dependency 'rake'
32
40
  spec.add_development_dependency 'rspec'
33
41
  spec.add_development_dependency 'rubocop'
@@ -5,16 +5,12 @@ module Legion
5
5
  module Audit
6
6
  module Runners
7
7
  module ApprovalQueue
8
+ include Legion::Extensions::Helpers::Lex if defined?(Legion::Extensions::Helpers::Lex)
8
9
  extend self
9
10
 
10
11
  def submit(approval_type:, payload:, requester_id:, tenant_id: nil, **)
11
12
  define_approval_queue_model
12
- json_payload = if defined?(Legion::JSON)
13
- Legion::JSON.dump({ data: payload })
14
- else
15
- require 'json'
16
- ::JSON.dump({ data: payload })
17
- end
13
+ json_payload = json_dump({ data: payload })
18
14
 
19
15
  record = Legion::Extensions::Audit::Runners::ApprovalQueue::ApprovalQueue.create(
20
16
  approval_type: approval_type,
@@ -93,7 +89,7 @@ module Legion
93
89
  detail: { approval_type: record.approval_type, approval_id: record.id }
94
90
  ).publish
95
91
  rescue StandardError => e
96
- Legion::Logging.warn "[audit] failed to publish #{event_type}: #{e.message}" if defined?(Legion::Logging)
92
+ log.warn "[audit] failed to publish #{event_type}: #{e.message}"
97
93
  end
98
94
  end
99
95
  end
@@ -16,13 +16,13 @@ module Legion
16
16
  prev_hash = prev ? prev.record_hash : GENESIS_HASH
17
17
 
18
18
  created_at = opts[:created_at] ? Time.parse(opts[:created_at].to_s) : Time.now.utc
19
- snapshot_json = opts[:context_snapshot] ? Legion::JSON.dump(opts[:context_snapshot]) : nil
19
+ snapshot_json = opts[:context_snapshot] ? json_dump(opts[:context_snapshot]) : nil
20
20
 
21
21
  content = "#{prev_hash}|#{event_type}|#{principal_id}|#{action}|#{resource}|#{created_at.utc.iso8601}"
22
22
  content = "#{content}|#{snapshot_json}" if snapshot_json
23
23
  record_hash = Digest::SHA256.hexdigest(content)
24
24
 
25
- detail_json = opts[:detail] ? Legion::JSON.dump(opts[:detail]) : nil
25
+ detail_json = opts[:detail] ? json_dump(opts[:detail]) : nil
26
26
 
27
27
  record = Legion::Data::Model::AuditLog.create(
28
28
  event_type: event_type,
@@ -3,7 +3,7 @@
3
3
  module Legion
4
4
  module Extensions
5
5
  module Audit
6
- VERSION = '0.1.2'
6
+ VERSION = '0.1.3'
7
7
  end
8
8
  end
9
9
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: lex-audit
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
4
+ version: 0.1.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Esity
@@ -9,6 +9,104 @@ bindir: bin
9
9
  cert_chain: []
10
10
  date: 1980-01-02 00:00:00.000000000 Z
11
11
  dependencies:
12
+ - !ruby/object:Gem::Dependency
13
+ name: legion-cache
14
+ requirement: !ruby/object:Gem::Requirement
15
+ requirements:
16
+ - - ">="
17
+ - !ruby/object:Gem::Version
18
+ version: 1.3.11
19
+ type: :runtime
20
+ prerelease: false
21
+ version_requirements: !ruby/object:Gem::Requirement
22
+ requirements:
23
+ - - ">="
24
+ - !ruby/object:Gem::Version
25
+ version: 1.3.11
26
+ - !ruby/object:Gem::Dependency
27
+ name: legion-crypt
28
+ requirement: !ruby/object:Gem::Requirement
29
+ requirements:
30
+ - - ">="
31
+ - !ruby/object:Gem::Version
32
+ version: 1.4.9
33
+ type: :runtime
34
+ prerelease: false
35
+ version_requirements: !ruby/object:Gem::Requirement
36
+ requirements:
37
+ - - ">="
38
+ - !ruby/object:Gem::Version
39
+ version: 1.4.9
40
+ - !ruby/object:Gem::Dependency
41
+ name: legion-data
42
+ requirement: !ruby/object:Gem::Requirement
43
+ requirements:
44
+ - - ">="
45
+ - !ruby/object:Gem::Version
46
+ version: 1.4.17
47
+ type: :runtime
48
+ prerelease: false
49
+ version_requirements: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - ">="
52
+ - !ruby/object:Gem::Version
53
+ version: 1.4.17
54
+ - !ruby/object:Gem::Dependency
55
+ name: legion-json
56
+ requirement: !ruby/object:Gem::Requirement
57
+ requirements:
58
+ - - ">="
59
+ - !ruby/object:Gem::Version
60
+ version: 1.2.1
61
+ type: :runtime
62
+ prerelease: false
63
+ version_requirements: !ruby/object:Gem::Requirement
64
+ requirements:
65
+ - - ">="
66
+ - !ruby/object:Gem::Version
67
+ version: 1.2.1
68
+ - !ruby/object:Gem::Dependency
69
+ name: legion-logging
70
+ requirement: !ruby/object:Gem::Requirement
71
+ requirements:
72
+ - - ">="
73
+ - !ruby/object:Gem::Version
74
+ version: 1.3.2
75
+ type: :runtime
76
+ prerelease: false
77
+ version_requirements: !ruby/object:Gem::Requirement
78
+ requirements:
79
+ - - ">="
80
+ - !ruby/object:Gem::Version
81
+ version: 1.3.2
82
+ - !ruby/object:Gem::Dependency
83
+ name: legion-settings
84
+ requirement: !ruby/object:Gem::Requirement
85
+ requirements:
86
+ - - ">="
87
+ - !ruby/object:Gem::Version
88
+ version: 1.3.14
89
+ type: :runtime
90
+ prerelease: false
91
+ version_requirements: !ruby/object:Gem::Requirement
92
+ requirements:
93
+ - - ">="
94
+ - !ruby/object:Gem::Version
95
+ version: 1.3.14
96
+ - !ruby/object:Gem::Dependency
97
+ name: legion-transport
98
+ requirement: !ruby/object:Gem::Requirement
99
+ requirements:
100
+ - - ">="
101
+ - !ruby/object:Gem::Version
102
+ version: 1.3.9
103
+ type: :runtime
104
+ prerelease: false
105
+ version_requirements: !ruby/object:Gem::Requirement
106
+ requirements:
107
+ - - ">="
108
+ - !ruby/object:Gem::Version
109
+ version: 1.3.9
12
110
  - !ruby/object:Gem::Dependency
13
111
  name: rake
14
112
  requirement: !ruby/object:Gem::Requirement