bitfab 0.64.23 → 0.64.25

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: ea8473d1108c410cab9e21e334b155b36be99ddf83207260dfa510815bb8dc64
4
- data.tar.gz: f6ac0d40b0a6941ab06428882ac5a66a12ed2b0c4f9f83401f315cd2592dc8c3
3
+ metadata.gz: 6be3e712951d897d0cd849ae85155eb7276e170799228d7d84b190d40f376b3c
4
+ data.tar.gz: fd8221b81baa82065582036be59042b2b0faff64e09e173b6f754ca4b3c592c5
5
5
  SHA512:
6
- metadata.gz: f4acbd07a27cfdb78e158193580c937346d56bcc8bf9d3c5489c71be6ac4af55d25813c01e7d359091261634020bd7a6fc852a003e176c0d107191194acfc063
7
- data.tar.gz: f0005a0fc2fa952f93b8488881dbb8e7806eae1b1fa86e81dc5656949d48e035374cb9bacec418ce39650af2b0f658d514745007e1ca398b3d353f9a1df1251a
6
+ metadata.gz: de63a2a365d14b3bc59d6cf3b4e427203f56d2963d760732444cee78bdc03d45e57f4da9b7ffd26fb30ad71f7f0d5d9d7df35fad9873bf5a7d8e59de12ba1f13
7
+ data.tar.gz: fd21103ff0706e5e3200c35a8cd1fa65b4df2404882f9d6a35c4676d790e9d512bb2dae4aabb0aec4c2ff8820901b74bd0632d953367fc3c029bdcd26495f8fc
@@ -1896,7 +1896,7 @@ def check_out_snapshot_base(root, commit, branch):
1896
1896
  base = git(root, "rev-parse", "--verify", "-q", f"{commit}^")
1897
1897
  except CommandError:
1898
1898
  print(
1899
- "This checkout does not include the commit the snapshot was taken on, so the experiment records no code change; set fetch-depth: 2 on the workflow's actions/checkout step, or run bitfab-replay --cloud-update",
1899
+ "This checkout does not include the commit the snapshot was taken on, so the experiment records no code change and the snapshot commit instead of your branch; set fetch-depth: 2 on the workflow's checkout step, or run bitfab-replay --cloud-update",
1900
1900
  flush=True,
1901
1901
  )
1902
1902
  return None
@@ -2900,7 +2900,7 @@ def raise_checkout_depth(lines, start, end):
2900
2900
  def add_checkout_depth(lines):
2901
2901
  for index, line in enumerate(lines):
2902
2902
  match = re.match(
2903
- r'([ \t]*)(- +)?"?uses"?[ \t]*:[ \t]*"?actions/checkout@',
2903
+ r'([ \t]*)(- +)?"?uses"?[ \t]*:[ \t]*"?[\w.-]+/checkout@',
2904
2904
  without_yaml_comment(line),
2905
2905
  )
2906
2906
  if not match:
@@ -3063,9 +3063,7 @@ def update_workflow(root, path, *, remove_old_key_secrets=False):
3063
3063
  "Checked out the commit each snapshot is taken on, so experiments record the code change"
3064
3064
  )
3065
3065
  elif depth == "by hand":
3066
- by_hand.append(
3067
- f"fetch-depth: {CHECKOUT_DEPTH} in the actions/checkout step's with"
3068
- )
3066
+ by_hand.append(f"fetch-depth: {CHECKOUT_DEPTH} in the checkout step's with")
3069
3067
  if updated:
3070
3068
  target.write_text("\n".join(lines))
3071
3069
  steps = []
data/lib/bitfab/labels.rb CHANGED
@@ -44,6 +44,17 @@ module Bitfab
44
44
  save_all([update], experiment_id:).first
45
45
  end
46
46
 
47
+ # Records that the evidence does not show the part of the run this assertion checks, so there was
48
+ # nothing to judge. Counted as a fail in every pass rate, but stored and read back as an abstention,
49
+ # apart from a fail. +annotation:+ says what the evidence would have had to show.
50
+ def abstain(assertion_id:, trace_id: nil, original_trace_id: nil, attempt: nil, experiment_id: nil,
51
+ test_run_id: nil, annotation: nil)
52
+ experiment_id = Bitfab.resolve_experiment_id(experiment_id, test_run_id)
53
+ update = label_target(trace_id:, original_trace_id:, attempt:, assertion_id:).merge("abstain" => true)
54
+ update["annotation"] = annotation unless annotation.nil?
55
+ save_all([update], experiment_id:).first
56
+ end
57
+
47
58
  def archive(trace_id: nil, original_trace_id: nil, attempt: nil, experiment_id: nil, assertion_id: nil, test_run_id: nil)
48
59
  experiment_id = Bitfab.resolve_experiment_id(experiment_id, test_run_id)
49
60
  update = label_target(trace_id:, original_trace_id:, attempt:, assertion_id:)
@@ -91,7 +102,7 @@ module Bitfab
91
102
 
92
103
  targets = unscoped.map { |entry| entry_value(entry, "traceId") || entry_value(entry, "originalTraceId") }
93
104
  raise ArgumentError, "Agent verdicts must name an assertion: #{targets.join(", ")}. " \
94
- "Pass the assertion_id of the assertion each verdict scores to labels.save, save_all, and skip. " \
105
+ "Pass the assertion_id of the assertion each verdict scores to labels.save, save_all, skip, and abstain. " \
95
106
  "Only archive may omit it, to clear an old whole-trace verdict."
96
107
  end
97
108
 
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Bitfab
4
- VERSION = "0.64.23"
4
+ VERSION = "0.64.25"
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.64.23
4
+ version: 0.64.25
5
5
  platform: ruby
6
6
  authors:
7
7
  - Harvest Team