bitfab 0.23.5 → 0.23.6

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: 4d7bb60df26fb6e5eb959504e04348c75da42fdf843db0ab16a90f65ecbc21ac
4
- data.tar.gz: 338e1b2a5cd0793677f2a5103314e3fec50de4625539301805c6067df91c68e6
3
+ metadata.gz: fc6488982aa89cb2226e627f80da9bd85a1575bac14728aa81d2d5974c920aae
4
+ data.tar.gz: 519b07afa8c9a7220d730b7bc72b5e8a3cddb037b3e2b70bd36b476c4d400d29
5
5
  SHA512:
6
- metadata.gz: 6582bfb080c33a0b1bb5558a60dbf2afbf59272b1e67ed4879c44b80e83f5b9fd03115b3a954d9a374c4663ddea3e3ad132be94287ce3f2a9ebfab69662bfe55
7
- data.tar.gz: 84e482df4eef11e61d945f1b741564442fb097b8980ef9a9ad71994af7ab7ef7529312c39defa94a3e6682467a4e4fbbfaad0c2e6bb33050a5bdb29a9de78244
6
+ metadata.gz: 362409a4955d1eec6ac5b4c0309a87d65ce9722f517f4cc364931f89fb66adf1a5fe0b4ac1d5a847a7e9d7fc9559c4d2449de03b2c2d9900ded22e317db28518
7
+ data.tar.gz: 735836a1730cf48e2fb5370f755e667bf3912b96a21ca9b97375b7e4e1bfd43e34531e557c5d49f28482dbbe32c091ec5bb08cc86fc9656b4f44a6edd7880b0f
data/lib/bitfab/client.rb CHANGED
@@ -493,6 +493,14 @@ module Bitfab
493
493
  def send_span(trace_function_key:, trace_id:, span_id:, parent_span_id:,
494
494
  span_name:, span_type:, function_name:, contexts:, prompt:, args:, kwargs:, result:, error:,
495
495
  started_at:, ended_at:, test_run_id: nil, input_source_span_id: nil)
496
+ # If drop() was called on this trace, suppress the span PAYLOAD upload for
497
+ # every span that completes after the flag was set. The trace completion
498
+ # still rides out with dropped: true, so the server scrubs any sibling
499
+ # spans that already raced out before the flag was set. Returning nil
500
+ # signals "no span thread" to the caller, which already handles nil.
501
+ trace_dropped = TraceState.get(trace_id)&.dig(:dropped) == true
502
+ return nil if trace_dropped
503
+
496
504
  # Human-readable JSON (input/output fields). The *_with_report variants
497
505
  # also report what could not be faithfully captured so a lossy span is
498
506
  # marked non-replayable below instead of shipping as if it round-trips.
@@ -87,9 +87,10 @@ module Bitfab
87
87
  # Silently ignore - never crash the host app
88
88
  end
89
89
 
90
- # Flag this trace to be dropped on completion.
91
- # When set, the completion POST carries a top-level dropped: true and the
92
- # server scrubs and marks the trace dropped. Never raises into caller code.
90
+ # Flag this trace to be dropped. Once flagged, spans that complete afterward
91
+ # are not uploaded at all, and the completion POST carries a top-level
92
+ # dropped: true so the server scrubs any payloads that already raced out and
93
+ # marks the trace dropped. Never raises into caller code.
93
94
  def drop
94
95
  trace_state = get_or_create_trace_state
95
96
  trace_state[:dropped] = true
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Bitfab
4
- VERSION = "0.23.5"
4
+ VERSION = "0.23.6"
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bitfab
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.23.5
4
+ version: 0.23.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Harvest Team