langsmithrb_rails 0.1.1 → 0.3.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 73954659921cbdac662b6b876edc25fea1f410e01877c4d31338073a77e3db62
4
- data.tar.gz: 15de379999a3bf96f8190b4f04d3df88aa4ce0c05b11b54219c2a6d876184f14
3
+ metadata.gz: e7871f0c85cdbf0ec6ea8a29115cca1e5f3e86d8c42d34b69533efd6197b7bc4
4
+ data.tar.gz: f7fea4c3dc9aa3128602f6b2e7b1c43f0becb2256bbe595ed2963376737a7b2d
5
5
  SHA512:
6
- metadata.gz: affee746d81d64e87ae9497bcbb8390d9a02c9bb6fdc56a3fb24c2863e2c689d42ac5d16e74e58d3cfc5c9a20f7171315c2591b2138ed409a549a006677699f1
7
- data.tar.gz: fae68d058dc344db4e3e154d3957e5ba3806677add8c5a65c65bdb8905a5b25ba4da735250ba547c9a8fe72b94dce6f236875253e107941d4a819690fd2a97f0
6
+ metadata.gz: 51dc0027ec369337c3df8ad62b827e5758053b0f11228927669b07c4cbbbb9e2f5617d03dc3766db906980baa5e50f33563ed24e5e8d81aff43d67b52138d4b6
7
+ data.tar.gz: ab000faf12fc4c9eb7fb70a0c36945e3da9868737f3a60e2fef01008f92bd25e9c827dfc2bc070aaf80a3f48081102e61af1381f47edac8e13d6ebe5e36c1fb0
data/.rspec_status CHANGED
@@ -1,82 +1,161 @@
1
1
  example_id | status | run_time |
2
2
  -------------------------------------------------------------------------------------------------- | ------ | --------------- |
3
- ./spec/langsmithrb_rails/config_spec.rb[1:1:1] | passed | 0.00402 seconds |
4
- ./spec/langsmithrb_rails/config_spec.rb[1:2:1] | passed | 0.00025 seconds |
5
- ./spec/langsmithrb_rails/config_spec.rb[1:2:2] | passed | 0.00058 seconds |
6
- ./spec/langsmithrb_rails/config_spec.rb[1:2:3] | passed | 0.00014 seconds |
7
- ./spec/langsmithrb_rails/generators/buffer_generator_spec.rb[1:1:1] | passed | 0.00197 seconds |
8
- ./spec/langsmithrb_rails/generators/buffer_generator_spec.rb[1:2:1] | passed | 0.00038 seconds |
9
- ./spec/langsmithrb_rails/generators/buffer_generator_spec.rb[1:3:1] | passed | 0.00049 seconds |
10
- ./spec/langsmithrb_rails/generators/buffer_generator_spec.rb[1:4:1] | passed | 0.00034 seconds |
11
- ./spec/langsmithrb_rails/generators/buffer_generator_spec.rb[1:5:1:1:1] | passed | 0.00059 seconds |
12
- ./spec/langsmithrb_rails/generators/buffer_generator_spec.rb[1:5:1:2:1] | passed | 0.00052 seconds |
13
- ./spec/langsmithrb_rails/generators/buffer_generator_spec.rb[1:5:2:1] | passed | 0.00063 seconds |
14
- ./spec/langsmithrb_rails/generators/buffer_generator_spec.rb[1:6:1] | passed | 0.00036 seconds |
15
- ./spec/langsmithrb_rails/generators/buffer_generator_spec.rb[1:7:1] | passed | 0.0006 seconds |
16
- ./spec/langsmithrb_rails/generators/ci_generator_spec.rb[1:1:1] | passed | 0.00038 seconds |
17
- ./spec/langsmithrb_rails/generators/ci_generator_spec.rb[1:2:1] | passed | 0.0004 seconds |
18
- ./spec/langsmithrb_rails/generators/ci_generator_spec.rb[1:3:1] | passed | 0.00047 seconds |
19
- ./spec/langsmithrb_rails/generators/demo_generator_spec.rb[1:1:1] | passed | 0.0004 seconds |
20
- ./spec/langsmithrb_rails/generators/demo_generator_spec.rb[1:2:1] | passed | 0.00036 seconds |
21
- ./spec/langsmithrb_rails/generators/demo_generator_spec.rb[1:3:1] | passed | 0.00045 seconds |
22
- ./spec/langsmithrb_rails/generators/demo_generator_spec.rb[1:4:1] | passed | 0.00058 seconds |
23
- ./spec/langsmithrb_rails/generators/demo_generator_spec.rb[1:5:1] | passed | 0.0004 seconds |
24
- ./spec/langsmithrb_rails/generators/demo_generator_spec.rb[1:6:1] | passed | 0.00039 seconds |
25
- ./spec/langsmithrb_rails/generators/demo_generator_spec.rb[1:7:1] | passed | 0.00038 seconds |
26
- ./spec/langsmithrb_rails/generators/demo_generator_spec.rb[1:8:1] | passed | 0.00043 seconds |
27
- ./spec/langsmithrb_rails/generators/demo_generator_spec.rb[1:9:1] | passed | 0.00056 seconds |
28
- ./spec/langsmithrb_rails/generators/evals_generator_spec.rb[1:1:1] | passed | 0.00041 seconds |
29
- ./spec/langsmithrb_rails/generators/evals_generator_spec.rb[1:2:1] | passed | 0.00033 seconds |
30
- ./spec/langsmithrb_rails/generators/evals_generator_spec.rb[1:3:1] | passed | 0.00156 seconds |
31
- ./spec/langsmithrb_rails/generators/evals_generator_spec.rb[1:4:1] | passed | 0.00053 seconds |
32
- ./spec/langsmithrb_rails/generators/evals_generator_spec.rb[1:5:1] | passed | 0.00051 seconds |
33
- ./spec/langsmithrb_rails/generators/evals_generator_spec.rb[1:6:1] | passed | 0.00056 seconds |
34
- ./spec/langsmithrb_rails/generators/langsmith_generator_spec.rb[1:1:1] | passed | 0.0004 seconds |
35
- ./spec/langsmithrb_rails/generators/langsmith_generator_spec.rb[1:2:1:1] | passed | 0.00041 seconds |
36
- ./spec/langsmithrb_rails/generators/langsmith_generator_spec.rb[1:2:2:1] | passed | 0.00039 seconds |
37
- ./spec/langsmithrb_rails/generators/langsmith_generator_spec.rb[1:2:3:1] | passed | 0.00038 seconds |
38
- ./spec/langsmithrb_rails/generators/langsmith_generator_spec.rb[1:3:1:1] | passed | 0.00053 seconds |
39
- ./spec/langsmithrb_rails/generators/langsmith_generator_spec.rb[1:3:2:1] | passed | 0.00048 seconds |
40
- ./spec/langsmithrb_rails/generators/langsmith_generator_spec.rb[1:3:3:1] | passed | 0.00045 seconds |
41
- ./spec/langsmithrb_rails/generators/langsmith_generator_spec.rb[1:4:1] | passed | 0.00036 seconds |
42
- ./spec/langsmithrb_rails/generators/langsmithrb_rails/templates/langsmith_initializer_spec.rb[1:1] | passed | 0.00068 seconds |
43
- ./spec/langsmithrb_rails/generators/langsmithrb_rails/templates/langsmith_initializer_spec.rb[1:2] | passed | 0.00135 seconds |
44
- ./spec/langsmithrb_rails/generators/langsmithrb_rails/templates/langsmith_initializer_spec.rb[1:3] | passed | 0.00018 seconds |
45
- ./spec/langsmithrb_rails/generators/privacy_generator_spec.rb[1:1:1] | passed | 0.00045 seconds |
46
- ./spec/langsmithrb_rails/generators/privacy_generator_spec.rb[1:2:1] | passed | 0.00035 seconds |
47
- ./spec/langsmithrb_rails/generators/privacy_generator_spec.rb[1:3:1] | passed | 0.00043 seconds |
48
- ./spec/langsmithrb_rails/generators/privacy_generator_spec.rb[1:4:1] | passed | 0.00073 seconds |
49
- ./spec/langsmithrb_rails/generators/tracing_generator_spec.rb[1:1:1] | passed | 0.00047 seconds |
50
- ./spec/langsmithrb_rails/generators/tracing_generator_spec.rb[1:2:1] | passed | 0.00064 seconds |
51
- ./spec/langsmithrb_rails/generators/tracing_generator_spec.rb[1:3:1] | passed | 0.00039 seconds |
52
- ./spec/langsmithrb_rails/generators/tracing_generator_spec.rb[1:4:1:1:1] | passed | 0.0007 seconds |
3
+ ./spec/langsmithrb_rails/config_spec.rb[1:1:1] | failed | 0.00773 seconds |
4
+ ./spec/langsmithrb_rails/config_spec.rb[1:2:1] | failed | 0.00029 seconds |
5
+ ./spec/langsmithrb_rails/config_spec.rb[1:2:2] | failed | 0.0002 seconds |
6
+ ./spec/langsmithrb_rails/config_spec.rb[1:2:3] | failed | 0.00016 seconds |
7
+ ./spec/langsmithrb_rails/generators/buffer_generator_spec.rb[1:1:1] | passed | 0.00178 seconds |
8
+ ./spec/langsmithrb_rails/generators/buffer_generator_spec.rb[1:2:1] | passed | 0.00623 seconds |
9
+ ./spec/langsmithrb_rails/generators/buffer_generator_spec.rb[1:3:1] | passed | 0.00054 seconds |
10
+ ./spec/langsmithrb_rails/generators/buffer_generator_spec.rb[1:4:1] | passed | 0.00068 seconds |
11
+ ./spec/langsmithrb_rails/generators/buffer_generator_spec.rb[1:5:1:1:1] | passed | 0.00057 seconds |
12
+ ./spec/langsmithrb_rails/generators/buffer_generator_spec.rb[1:5:1:2:1] | passed | 0.00069 seconds |
13
+ ./spec/langsmithrb_rails/generators/buffer_generator_spec.rb[1:5:2:1] | passed | 0.00068 seconds |
14
+ ./spec/langsmithrb_rails/generators/buffer_generator_spec.rb[1:6:1] | passed | 0.00037 seconds |
15
+ ./spec/langsmithrb_rails/generators/buffer_generator_spec.rb[1:7:1] | passed | 0.0023 seconds |
16
+ ./spec/langsmithrb_rails/generators/ci_generator_spec.rb[1:1:1] | passed | 0.00075 seconds |
17
+ ./spec/langsmithrb_rails/generators/ci_generator_spec.rb[1:2:1] | passed | 0.00043 seconds |
18
+ ./spec/langsmithrb_rails/generators/ci_generator_spec.rb[1:3:1] | passed | 0.00053 seconds |
19
+ ./spec/langsmithrb_rails/generators/demo_generator_spec.rb[1:1:1] | passed | 0.00051 seconds |
20
+ ./spec/langsmithrb_rails/generators/demo_generator_spec.rb[1:2:1] | passed | 0.00078 seconds |
21
+ ./spec/langsmithrb_rails/generators/demo_generator_spec.rb[1:3:1] | passed | 0.00051 seconds |
22
+ ./spec/langsmithrb_rails/generators/demo_generator_spec.rb[1:4:1] | passed | 0.00106 seconds |
23
+ ./spec/langsmithrb_rails/generators/demo_generator_spec.rb[1:5:1] | passed | 0.00135 seconds |
24
+ ./spec/langsmithrb_rails/generators/demo_generator_spec.rb[1:6:1] | passed | 0.00532 seconds |
25
+ ./spec/langsmithrb_rails/generators/demo_generator_spec.rb[1:7:1] | passed | 0.00074 seconds |
26
+ ./spec/langsmithrb_rails/generators/demo_generator_spec.rb[1:8:1] | passed | 0.00218 seconds |
27
+ ./spec/langsmithrb_rails/generators/demo_generator_spec.rb[1:9:1] | passed | 0.06224 seconds |
28
+ ./spec/langsmithrb_rails/generators/evals_generator_spec.rb[1:1:1] | passed | 0.00531 seconds |
29
+ ./spec/langsmithrb_rails/generators/evals_generator_spec.rb[1:2:1] | passed | 0.00354 seconds |
30
+ ./spec/langsmithrb_rails/generators/evals_generator_spec.rb[1:3:1] | passed | 0.00707 seconds |
31
+ ./spec/langsmithrb_rails/generators/evals_generator_spec.rb[1:4:1] | passed | 0.00068 seconds |
32
+ ./spec/langsmithrb_rails/generators/evals_generator_spec.rb[1:5:1] | passed | 0.00037 seconds |
33
+ ./spec/langsmithrb_rails/generators/evals_generator_spec.rb[1:6:1] | passed | 0.00064 seconds |
34
+ ./spec/langsmithrb_rails/generators/langsmith_generator_spec.rb[1:1:1] | passed | 0.00036 seconds |
35
+ ./spec/langsmithrb_rails/generators/langsmith_generator_spec.rb[1:2:1:1] | passed | 0.0007 seconds |
36
+ ./spec/langsmithrb_rails/generators/langsmith_generator_spec.rb[1:2:2:1] | passed | 0.00262 seconds |
37
+ ./spec/langsmithrb_rails/generators/langsmith_generator_spec.rb[1:2:3:1] | passed | 0.00075 seconds |
38
+ ./spec/langsmithrb_rails/generators/langsmith_generator_spec.rb[1:3:1:1] | passed | 0.0007 seconds |
39
+ ./spec/langsmithrb_rails/generators/langsmith_generator_spec.rb[1:3:2:1] | passed | 0.00043 seconds |
40
+ ./spec/langsmithrb_rails/generators/langsmith_generator_spec.rb[1:3:3:1] | passed | 0.00065 seconds |
41
+ ./spec/langsmithrb_rails/generators/langsmith_generator_spec.rb[1:4:1] | passed | 0.00145 seconds |
42
+ ./spec/langsmithrb_rails/generators/langsmithrb_rails/templates/langsmith_initializer_spec.rb[1:1] | passed | 0.00294 seconds |
43
+ ./spec/langsmithrb_rails/generators/langsmithrb_rails/templates/langsmith_initializer_spec.rb[1:2] | passed | 0.00487 seconds |
44
+ ./spec/langsmithrb_rails/generators/langsmithrb_rails/templates/langsmith_initializer_spec.rb[1:3] | passed | 0.0002 seconds |
45
+ ./spec/langsmithrb_rails/generators/privacy_generator_spec.rb[1:1:1] | passed | 0.00067 seconds |
46
+ ./spec/langsmithrb_rails/generators/privacy_generator_spec.rb[1:2:1] | passed | 0.00037 seconds |
47
+ ./spec/langsmithrb_rails/generators/privacy_generator_spec.rb[1:3:1] | passed | 0.00052 seconds |
48
+ ./spec/langsmithrb_rails/generators/privacy_generator_spec.rb[1:4:1] | passed | 0.00054 seconds |
49
+ ./spec/langsmithrb_rails/generators/tracing_generator_spec.rb[1:1:1] | passed | 0.0004 seconds |
50
+ ./spec/langsmithrb_rails/generators/tracing_generator_spec.rb[1:2:1] | passed | 0.00038 seconds |
51
+ ./spec/langsmithrb_rails/generators/tracing_generator_spec.rb[1:3:1] | passed | 0.00037 seconds |
52
+ ./spec/langsmithrb_rails/generators/tracing_generator_spec.rb[1:4:1:1:1] | passed | 0.00055 seconds |
53
53
  ./spec/langsmithrb_rails/generators/tracing_generator_spec.rb[1:4:1:2:1] | passed | 0.00049 seconds |
54
- ./spec/langsmithrb_rails/generators/tracing_generator_spec.rb[1:4:1:3:1] | passed | 0.00047 seconds |
55
- ./spec/langsmithrb_rails/generators/tracing_generator_spec.rb[1:4:2:1] | passed | 0.00043 seconds |
56
- ./spec/langsmithrb_rails/generators/tracing_generator_spec.rb[1:5:1] | passed | 0.00052 seconds |
57
- ./spec/langsmithrb_rails/generators/tracing_generator_spec.rb[1:6:1] | passed | 0.00054 seconds |
58
- ./spec/langsmithrb_rails/langsmith_spec.rb[1:1:1] | passed | 0.00021 seconds |
59
- ./spec/langsmithrb_rails/langsmith_spec.rb[1:1:2] | passed | 0.00021 seconds |
60
- ./spec/langsmithrb_rails/langsmith_spec.rb[1:1:3] | passed | 0.0002 seconds |
61
- ./spec/langsmithrb_rails/langsmith_spec.rb[1:1:4] | passed | 0.0002 seconds |
62
- ./spec/langsmithrb_rails/langsmith_spec.rb[1:1:5] | passed | 0.00023 seconds |
63
- ./spec/langsmithrb_rails/langsmith_spec.rb[1:2:1] | passed | 0.0002 seconds |
64
- ./spec/langsmithrb_rails/langsmith_spec.rb[1:2:2] | passed | 0.00034 seconds |
65
- ./spec/langsmithrb_rails/langsmith_spec.rb[1:2:3] | passed | 0.00022 seconds |
66
- ./spec/langsmithrb_rails/langsmith_spec.rb[1:3:1] | passed | 0.00018 seconds |
67
- ./spec/langsmithrb_rails/langsmithrb_spec.rb[1:1:1] | passed | 0.00047 seconds |
68
- ./spec/langsmithrb_rails/langsmithrb_spec.rb[1:1:2] | passed | 0.00024 seconds |
69
- ./spec/langsmithrb_rails/langsmithrb_spec.rb[1:1:3] | passed | 0.00021 seconds |
70
- ./spec/langsmithrb_rails/langsmithrb_spec.rb[1:2:1] | passed | 0.0002 seconds |
71
- ./spec/langsmithrb_rails/langsmithrb_spec.rb[1:2:2] | passed | 0.00034 seconds |
72
- ./spec/langsmithrb_rails/langsmithrb_spec.rb[1:2:3] | passed | 0.00024 seconds |
73
- ./spec/langsmithrb_rails/langsmithrb_spec.rb[1:3:1] | passed | 0.00021 seconds |
74
- ./spec/langsmithrb_rails/railtie_spec.rb[1:1:1:1] | passed | 0.00017 seconds |
75
- ./spec/langsmithrb_rails/railtie_spec.rb[1:1:2:1] | passed | 0.00028 seconds |
76
- ./spec/langsmithrb_rails/railtie_spec.rb[1:2:1] | passed | 0.00014 seconds |
77
- ./spec/langsmithrb_rails/railtie_spec.rb[1:3:1] | passed | 0.00064 seconds |
78
- ./spec/langsmithrb_rails/version_spec.rb[1:1:1] | passed | 0.00129 seconds |
79
- ./spec/langsmithrb_rails_spec.rb[1:1:1] | passed | 0.001 seconds |
80
- ./spec/langsmithrb_rails_spec.rb[1:1:2] | passed | 0.00014 seconds |
81
- ./spec/langsmithrb_rails_spec.rb[1:2:1] | passed | 0.00023 seconds |
82
- ./spec/langsmithrb_rails_spec.rb[1:2:2] | passed | 0.00028 seconds |
54
+ ./spec/langsmithrb_rails/generators/tracing_generator_spec.rb[1:4:1:3:1] | passed | 0.00069 seconds |
55
+ ./spec/langsmithrb_rails/generators/tracing_generator_spec.rb[1:4:2:1] | passed | 0.00174 seconds |
56
+ ./spec/langsmithrb_rails/generators/tracing_generator_spec.rb[1:5:1] | passed | 0.00053 seconds |
57
+ ./spec/langsmithrb_rails/generators/tracing_generator_spec.rb[1:6:1] | passed | 0.00078 seconds |
58
+ ./spec/langsmithrb_rails/langsmith_spec.rb[1:1:1] | passed | 0.00027 seconds |
59
+ ./spec/langsmithrb_rails/langsmith_spec.rb[1:1:2] | passed | 0.00022 seconds |
60
+ ./spec/langsmithrb_rails/langsmith_spec.rb[1:1:3] | passed | 0.00036 seconds |
61
+ ./spec/langsmithrb_rails/langsmith_spec.rb[1:1:4] | passed | 0.00031 seconds |
62
+ ./spec/langsmithrb_rails/langsmith_spec.rb[1:1:5] | passed | 0.00026 seconds |
63
+ ./spec/langsmithrb_rails/langsmith_spec.rb[1:2:1] | passed | 0.0008 seconds |
64
+ ./spec/langsmithrb_rails/langsmith_spec.rb[1:2:2] | passed | 0.00023 seconds |
65
+ ./spec/langsmithrb_rails/langsmith_spec.rb[1:2:3] | passed | 0.0002 seconds |
66
+ ./spec/langsmithrb_rails/langsmith_spec.rb[1:3:1] | passed | 0.00055 seconds |
67
+ ./spec/langsmithrb_rails/langsmithrb_spec.rb[1:1:1] | passed | 0.00019 seconds |
68
+ ./spec/langsmithrb_rails/langsmithrb_spec.rb[1:1:2] | passed | 0.00018 seconds |
69
+ ./spec/langsmithrb_rails/langsmithrb_spec.rb[1:1:3] | passed | 0.00018 seconds |
70
+ ./spec/langsmithrb_rails/langsmithrb_spec.rb[1:2:1] | passed | 0.00019 seconds |
71
+ ./spec/langsmithrb_rails/langsmithrb_spec.rb[1:2:2] | passed | 0.0002 seconds |
72
+ ./spec/langsmithrb_rails/langsmithrb_spec.rb[1:2:3] | passed | 0.00019 seconds |
73
+ ./spec/langsmithrb_rails/langsmithrb_spec.rb[1:3:1] | passed | 0.00016 seconds |
74
+ ./spec/langsmithrb_rails/railtie_spec.rb[1:1:1:1] | passed | 0.00019 seconds |
75
+ ./spec/langsmithrb_rails/railtie_spec.rb[1:1:2:1] | passed | 0.00013 seconds |
76
+ ./spec/langsmithrb_rails/railtie_spec.rb[1:2:1] | passed | 0.00056 seconds |
77
+ ./spec/langsmithrb_rails/railtie_spec.rb[1:3:1] | passed | 0.00289 seconds |
78
+ ./spec/langsmithrb_rails/version_spec.rb[1:1:1] | passed | 0.00107 seconds |
79
+ ./spec/langsmithrb_rails_spec.rb[1:1:1] | passed | 0.00106 seconds |
80
+ ./spec/langsmithrb_rails_spec.rb[1:1:2] | passed | 0.00025 seconds |
81
+ ./spec/langsmithrb_rails_spec.rb[1:2:1] | passed | 0.00018 seconds |
82
+ ./spec/langsmithrb_rails_spec.rb[1:2:2] | passed | 0.00014 seconds |
83
+ ./spec/lib/langsmithrb_rails/config_spec.rb[1:1:1] | passed | 0.00014 seconds |
84
+ ./spec/lib/langsmithrb_rails/config_spec.rb[1:2:1] | failed | 0.01119 seconds |
85
+ ./spec/lib/langsmithrb_rails/config_spec.rb[1:2:2:1] | failed | 0.00032 seconds |
86
+ ./spec/lib/langsmithrb_rails/config_spec.rb[1:3:1] | passed | 0.0002 seconds |
87
+ ./spec/lib/langsmithrb_rails/config_spec.rb[1:3:2] | passed | 0.00014 seconds |
88
+ ./spec/lib/langsmithrb_rails/config_spec.rb[1:3:3:1] | failed | 0.00014 seconds |
89
+ ./spec/lib/langsmithrb_rails/config_spec.rb[1:3:4:1] | failed | 0.00013 seconds |
90
+ ./spec/lib/langsmithrb_rails/config_spec.rb[1:4:1] | passed | 0.0002 seconds |
91
+ ./spec/lib/langsmithrb_rails/config_spec.rb[1:4:2] | passed | 0.00015 seconds |
92
+ ./spec/lib/langsmithrb_rails/config_spec.rb[1:4:3] | passed | 0.00015 seconds |
93
+ ./spec/lib/langsmithrb_rails/config_spec.rb[1:4:4] | passed | 0.00177 seconds |
94
+ ./spec/lib/langsmithrb_rails/config_spec.rb[1:5:1] | failed | 0.00037 seconds |
95
+ ./spec/lib/langsmithrb_rails/config_spec.rb[1:5:2] | passed | 0.00024 seconds |
96
+ ./spec/lib/langsmithrb_rails/config_spec.rb[1:6:1] | passed | 0.00031 seconds |
97
+ ./spec/lib/langsmithrb_rails/config_spec.rb[1:7:1] | passed | 0.00047 seconds |
98
+ ./spec/lib/langsmithrb_rails/config_spec.rb[1:7:2] | passed | 0.00019 seconds |
99
+ ./spec/lib/langsmithrb_rails/config_spec.rb[1:7:3] | passed | 0.00024 seconds |
100
+ ./spec/lib/langsmithrb_rails/config_spec.rb[1:8:1] | passed | 0.00014 seconds |
101
+ ./spec/lib/langsmithrb_rails/config_spec.rb[1:9:1] | passed | 0.00015 seconds |
102
+ ./spec/lib/langsmithrb_rails/evaluation_spec.rb[1:1:1:1] | passed | 0.00024 seconds |
103
+ ./spec/lib/langsmithrb_rails/evaluation_spec.rb[1:1:2:1] | passed | 0.00022 seconds |
104
+ ./spec/lib/langsmithrb_rails/evaluation_spec.rb[1:1:2:2] | passed | 0.00019 seconds |
105
+ ./spec/lib/langsmithrb_rails/evaluation_spec.rb[1:1:3:1] | passed | 0.00018 seconds |
106
+ ./spec/lib/langsmithrb_rails/evaluation_spec.rb[1:2:1] | passed | 0.00052 seconds |
107
+ ./spec/lib/langsmithrb_rails/evaluation_spec.rb[1:3:1] | passed | 0.00052 seconds |
108
+ ./spec/lib/langsmithrb_rails/evaluation_spec.rb[2:1:1] | passed | 0.00022 seconds |
109
+ ./spec/lib/langsmithrb_rails/evaluation_spec.rb[2:2:1] | passed | 0.00047 seconds |
110
+ ./spec/lib/langsmithrb_rails/evaluation_spec.rb[2:2:2:1] | passed | 0.00039 seconds |
111
+ ./spec/lib/langsmithrb_rails/evaluation_spec.rb[2:3:1] | passed | 0.00059 seconds |
112
+ ./spec/lib/langsmithrb_rails/evaluation_spec.rb[3:1:1:1] | passed | 0.00049 seconds |
113
+ ./spec/lib/langsmithrb_rails/evaluation_spec.rb[3:1:1:2] | passed | 0.00758 seconds |
114
+ ./spec/lib/langsmithrb_rails/evaluation_spec.rb[3:1:1:3:1] | passed | 0.00083 seconds |
115
+ ./spec/lib/langsmithrb_rails/evaluation_spec.rb[3:1:2:1] | passed | 0.00025 seconds |
116
+ ./spec/lib/langsmithrb_rails/evaluation_spec.rb[3:1:2:2] | passed | 0.00078 seconds |
117
+ ./spec/lib/langsmithrb_rails/evaluation_spec.rb[3:1:3:1] | passed | 0.00043 seconds |
118
+ ./spec/lib/langsmithrb_rails/evaluation_spec.rb[3:1:3:2] | passed | 0.00035 seconds |
119
+ ./spec/lib/langsmithrb_rails/evaluation_spec.rb[3:1:3:3] | passed | 0.00125 seconds |
120
+ ./spec/lib/langsmithrb_rails/evaluation_spec.rb[3:1:4:1] | passed | 0.00084 seconds |
121
+ ./spec/lib/langsmithrb_rails/evaluation_spec.rb[3:1:5:1] | passed | 0.00037 seconds |
122
+ ./spec/lib/langsmithrb_rails/evaluation_spec.rb[4:1:1:1] | passed | 0.00058 seconds |
123
+ ./spec/lib/langsmithrb_rails/evaluation_spec.rb[4:1:2:1] | passed | 0.00033 seconds |
124
+ ./spec/lib/langsmithrb_rails/evaluation_spec.rb[4:1:3:1] | passed | 0.0005 seconds |
125
+ ./spec/lib/langsmithrb_rails/evaluation_spec.rb[4:1:4:1] | passed | 0.00037 seconds |
126
+ ./spec/lib/langsmithrb_rails/evaluation_spec.rb[4:1:5:1] | failed | 0.00047 seconds |
127
+ ./spec/lib/langsmithrb_rails/evaluation_spec.rb[4:1:6:1] | passed | 0.00023 seconds |
128
+ ./spec/lib/langsmithrb_rails/evaluation_spec.rb[4:1:7:1] | passed | 0.00023 seconds |
129
+ ./spec/lib/langsmithrb_rails/otel_spec.rb[1:1:1:1] | failed | 0.00062 seconds |
130
+ ./spec/lib/langsmithrb_rails/otel_spec.rb[1:1:2:1] | passed | 0.00021 seconds |
131
+ ./spec/lib/langsmithrb_rails/otel_spec.rb[1:2:1:1] | failed | 0.0002 seconds |
132
+ ./spec/lib/langsmithrb_rails/otel_spec.rb[1:2:2:1] | passed | 0.00023 seconds |
133
+ ./spec/lib/langsmithrb_rails/otel_spec.rb[1:2:3:1] | passed | 0.00024 seconds |
134
+ ./spec/lib/langsmithrb_rails/otel_spec.rb[1:3:1:1] | failed | 0.0003 seconds |
135
+ ./spec/lib/langsmithrb_rails/otel_spec.rb[2:1:1:1] | passed | 0.0004 seconds |
136
+ ./spec/lib/langsmithrb_rails/otel_spec.rb[2:1:2:1] | passed | 0.00027 seconds |
137
+ ./spec/lib/langsmithrb_rails/otel_spec.rb[2:1:3:1] | passed | 0.00038 seconds |
138
+ ./spec/lib/langsmithrb_rails/otel_spec.rb[2:2:1] | passed | 0.00018 seconds |
139
+ ./spec/lib/langsmithrb_rails/run_trees_spec.rb[1:1:1] | passed | 0.00096 seconds |
140
+ ./spec/lib/langsmithrb_rails/run_trees_spec.rb[1:2:1] | failed | 0.00092 seconds |
141
+ ./spec/lib/langsmithrb_rails/run_trees_spec.rb[1:3:1] | passed | 0.00046 seconds |
142
+ ./spec/lib/langsmithrb_rails/run_trees_spec.rb[1:3:2:1] | passed | 0.00049 seconds |
143
+ ./spec/lib/langsmithrb_rails/run_trees_spec.rb[1:3:3:1] | passed | 0.00058 seconds |
144
+ ./spec/lib/langsmithrb_rails/run_trees_spec.rb[2:1:1] | passed | 0.00036 seconds |
145
+ ./spec/lib/langsmithrb_rails/run_trees_spec.rb[2:1:2:1] | passed | 0.00037 seconds |
146
+ ./spec/lib/langsmithrb_rails/wrappers_spec.rb[1:1:1:1] | passed | 0.0003 seconds |
147
+ ./spec/lib/langsmithrb_rails/wrappers_spec.rb[1:1:2:1] | passed | 0.00039 seconds |
148
+ ./spec/lib/langsmithrb_rails/wrappers_spec.rb[1:1:3:1] | passed | 0.00029 seconds |
149
+ ./spec/lib/langsmithrb_rails/wrappers_spec.rb[1:1:4:1] | passed | 0.0004 seconds |
150
+ ./spec/lib/langsmithrb_rails/wrappers_spec.rb[1:2:1] | passed | 0.00028 seconds |
151
+ ./spec/lib/langsmithrb_rails_spec.rb[1:1:1] | passed | 0.00021 seconds |
152
+ ./spec/lib/langsmithrb_rails_spec.rb[1:1:2] | passed | 0.00016 seconds |
153
+ ./spec/lib/langsmithrb_rails_spec.rb[1:2:1] | passed | 0.00028 seconds |
154
+ ./spec/lib/langsmithrb_rails_spec.rb[1:3:1] | passed | 0.00013 seconds |
155
+ ./spec/lib/langsmithrb_rails_spec.rb[1:4:1] | passed | 0.00017 seconds |
156
+ ./spec/lib/langsmithrb_rails_spec.rb[1:5:1] | passed | 0.00017 seconds |
157
+ ./spec/lib/langsmithrb_rails_spec.rb[1:6:1] | passed | 0.00029 seconds |
158
+ ./spec/lib/langsmithrb_rails_spec.rb[1:7:1] | failed | 0.00017 seconds |
159
+ ./spec/lib/langsmithrb_rails_spec.rb[1:8:1] | passed | 0.00016 seconds |
160
+ ./spec/lib/langsmithrb_rails_spec.rb[1:9:1] | passed | 0.00016 seconds |
161
+ ./spec/lib/langsmithrb_rails_spec.rb[1:10:1] | passed | 0.00112 seconds |
data/CHANGELOG.md CHANGED
@@ -2,6 +2,19 @@
2
2
 
3
3
  ## [Unreleased]
4
4
 
5
+ ## [0.3.0] - 2025-08-16
6
+
7
+ ### Added
8
+ - OpenTelemetry integration for distributed tracing
9
+ - Advanced run trees for hierarchical tracing
10
+ - Enhanced evaluation framework with string and LLM-based evaluators
11
+ - LLM provider wrappers for OpenAI, Anthropic, and other providers
12
+ - Expanded API coverage to match langsmith-sdk capabilities
13
+
14
+ ### Changed
15
+ - Improved configuration options for OpenTelemetry
16
+ - Enhanced documentation with more examples and use cases
17
+
5
18
  ## [0.1.0] - 2025-08-12
6
19
 
7
20
  - Initial release with LangSmith integration for Rails applications
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- langsmithrb_rails (0.1.0)
4
+ langsmithrb_rails (0.3.0)
5
5
  langsmithrb (~> 0.1.0)
6
6
  rails (>= 6.0.0)
7
7
 
data/README.md CHANGED
@@ -13,6 +13,10 @@ This gem makes it easy to add LangSmith tracing to your Rails application, allow
13
13
  - 📊 **Evaluations**: Evaluate LLM responses with customizable criteria
14
14
  - 🔄 **CI Integration**: Run evaluations in your CI pipeline
15
15
  - 🚀 **Demo Application**: Get started quickly with a sample application
16
+ - 🔌 **LLM Provider Wrappers**: Trace OpenAI, Anthropic, and other LLM providers
17
+ - 🌳 **Advanced Tracing**: Hierarchical run trees for complex workflows
18
+ - 📡 **OpenTelemetry Integration**: Distributed tracing with OpenTelemetry
19
+ - 🧪 **Enhanced Evaluation Framework**: String and LLM-based evaluators
16
20
 
17
21
  ## Installation
18
22
 
@@ -95,6 +99,21 @@ LangsmithrbRails.configure do |config|
95
99
  config.project_name = "your_project" # Optional project name
96
100
  config.sampling_rate = 0.1 # Sample 10% of traces
97
101
  config.redact_pii = true # Redact PII from traces
102
+
103
+ # Advanced tracing options
104
+ config.trace_all = true # Trace all operations
105
+ config.trace_level = "info" # Trace level (debug, info, warn, error, fatal)
106
+
107
+ # OpenTelemetry options
108
+ config.otel_enabled = false # Enable OpenTelemetry integration
109
+ config.otel_service_name = "my-rails-app" # Service name for OpenTelemetry
110
+
111
+ # Evaluation options
112
+ config.evaluation_enabled = true # Enable evaluation framework
113
+
114
+ # Logging options
115
+ config.log_level = "info" # Log level (debug, info, warn, error, fatal)
116
+ config.log_to_stdout = true # Log to STDOUT
98
117
  end
99
118
  ```
100
119
 
@@ -209,6 +228,44 @@ class MyService
209
228
  end
210
229
  ```
211
230
 
231
+ ### LLM Provider Wrappers
232
+
233
+ You can wrap LLM providers to automatically trace all operations:
234
+
235
+ ```ruby
236
+ # Wrap an OpenAI client
237
+ require "openai"
238
+ openai_client = OpenAI::Client.new(access_token: ENV["OPENAI_API_KEY"])
239
+ traced_client = LangsmithrbRails.wrap(openai_client, provider: :openai, project_name: "my-project")
240
+
241
+ # Use the traced client normally
242
+ response = traced_client.chat(
243
+ parameters: {
244
+ model: "gpt-4",
245
+ messages: [{ role: "user", content: "Hello, world!" }]
246
+ }
247
+ )
248
+
249
+ # Wrap an Anthropic client
250
+ require "anthropic"
251
+ anthropic_client = Anthropic::Client.new(api_key: ENV["ANTHROPIC_API_KEY"])
252
+ traced_client = LangsmithrbRails.wrap(anthropic_client, provider: :anthropic)
253
+
254
+ # Use the traced client normally
255
+ response = traced_client.messages(
256
+ model: "claude-3-opus-20240229",
257
+ max_tokens: 1024,
258
+ messages: [{ role: "user", content: "Hello, world!" }]
259
+ )
260
+
261
+ # Wrap any LLM client
262
+ custom_client = MyCustomLLM.new
263
+ traced_client = LangsmithrbRails.wrap(custom_client, provider: :llm)
264
+
265
+ # Make any method traceable
266
+ LangsmithrbRails.traceable(object, :method_name, run_name: "my-run")
267
+ ```
268
+
212
269
  ### Tracing Background Jobs
213
270
 
214
271
  For background jobs, use the `LangsmithTracedJob` concern:
@@ -224,6 +281,33 @@ class MyJob < ApplicationJob
224
281
  end
225
282
  ```
226
283
 
284
+ ### Advanced Tracing with Run Trees
285
+
286
+ For complex workflows, use run trees to create hierarchical traces:
287
+
288
+ ```ruby
289
+ LangsmithrbRails.run(name: "parent-operation", run_type: "chain", inputs: { query: "Hello" }) do |parent_run|
290
+ # Do some work in the parent run
291
+ intermediate_result = process_query(parent_run.inputs[:query])
292
+
293
+ # Create a child run
294
+ child_run = parent_run.create_child(
295
+ name: "child-operation",
296
+ run_type: "llm",
297
+ inputs: { prompt: intermediate_result }
298
+ )
299
+
300
+ # Do some work in the child run
301
+ result = call_llm(child_run.inputs[:prompt])
302
+
303
+ # End the child run with outputs
304
+ child_run.end(outputs: { response: result })
305
+
306
+ # Return the final result
307
+ result
308
+ end
309
+ ```
310
+
227
311
  ### Local Buffering
228
312
 
229
313
  If you've set up buffering, traces will be stored locally and sent in batches. You can manually flush the buffer:
@@ -232,6 +316,38 @@ If you've set up buffering, traces will be stored locally and sent in batches. Y
232
316
  $ rails langsmith:flush
233
317
  ```
234
318
 
319
+ ### OpenTelemetry Integration
320
+
321
+ You can enable OpenTelemetry integration for distributed tracing:
322
+
323
+ ```ruby
324
+ # Initialize OpenTelemetry
325
+ LangsmithrbRails::OTEL.init(
326
+ service_name: "my-rails-app",
327
+ service_version: "1.0.0"
328
+ )
329
+
330
+ # Trace an operation with OpenTelemetry
331
+ LangsmithrbRails::OTEL.trace("my-operation", attributes: { key: "value" }) do
332
+ # Your code here
333
+ result = do_something()
334
+ result
335
+ end
336
+
337
+ # Trace an LLM operation
338
+ LangsmithrbRails::OTEL.trace_llm(
339
+ "llm-operation",
340
+ inputs: { prompt: "Hello, world!" },
341
+ run_type: "llm",
342
+ project_name: "my-project",
343
+ tags: ["tag1", "tag2"]
344
+ ) do
345
+ # Your LLM code here
346
+ response = llm.generate("Hello, world!")
347
+ response
348
+ end
349
+ ```
350
+
235
351
  ### Running Evaluations
236
352
 
237
353
  To run an evaluation:
@@ -245,6 +361,43 @@ Where:
245
361
  - `http` is the target name
246
362
  - `my_experiment` is the experiment name
247
363
 
364
+ ### Enhanced Evaluation Framework
365
+
366
+ Use the enhanced evaluation framework to evaluate LLM responses:
367
+
368
+ ```ruby
369
+ # Create a string evaluator
370
+ string_evaluator = LangsmithrbRails.evaluator(
371
+ :string,
372
+ match_type: :exact,
373
+ case_sensitive: false,
374
+ project_name: "my-project"
375
+ )
376
+
377
+ # Evaluate a prediction against a reference
378
+ result = string_evaluator.evaluate("Hello, world!", "hello, world!")
379
+ # => { score: 1.0, metadata: { match: true, match_type: "exact", case_sensitive: false } }
380
+
381
+ # Create an LLM-based evaluator
382
+ llm_client = OpenAI::Client.new(access_token: ENV["OPENAI_API_KEY"])
383
+ llm_evaluator = LangsmithrbRails.evaluator(
384
+ :llm,
385
+ llm: llm_client,
386
+ criteria: "Evaluate the response for accuracy and relevance.",
387
+ project_name: "my-project"
388
+ )
389
+
390
+ # Evaluate a run
391
+ result = llm_evaluator.evaluate_run("run-id")
392
+
393
+ # Evaluate a dataset
394
+ results = LangsmithrbRails::Evaluation.evaluate_dataset(
395
+ "dataset-id",
396
+ [string_evaluator, llm_evaluator],
397
+ experiment_name: "my-experiment"
398
+ )
399
+ ```
400
+
248
401
  ### Comparing Experiments
249
402
 
250
403
  To compare two experiments:
Binary file