@bitfab/sdk 0.62.7 → 0.63.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.
Files changed (36) hide show
  1. package/dist/autoTrace.cjs.map +1 -1
  2. package/dist/autoTrace.js +2 -2
  3. package/dist/{chunk-BAOIRE5T.js → chunk-MT36GJMW.js} +13 -2
  4. package/dist/{chunk-BAOIRE5T.js.map → chunk-MT36GJMW.js.map} +1 -1
  5. package/dist/{chunk-AZ2KO7WO.js → chunk-MV4RDU2G.js} +15 -4
  6. package/dist/chunk-MV4RDU2G.js.map +1 -0
  7. package/dist/{chunk-35RAQIQS.js → chunk-P5NCLTE4.js} +8 -8
  8. package/dist/{chunk-35RAQIQS.js.map → chunk-P5NCLTE4.js.map} +1 -1
  9. package/dist/{chunk-ZHPO4I7L.js → chunk-SXAL4FQV.js} +22 -25
  10. package/dist/chunk-SXAL4FQV.js.map +1 -0
  11. package/dist/{chunk-3L4TQ3RW.js → chunk-TSP6722V.js} +5 -5
  12. package/dist/{chunk-3L4TQ3RW.js.map → chunk-TSP6722V.js.map} +1 -1
  13. package/dist/{chunk-CDMFIVVU.js → chunk-WGQIBPZP.js} +24 -7
  14. package/dist/chunk-WGQIBPZP.js.map +1 -0
  15. package/dist/{chunk-K4XCWQBC.js → chunk-YWXQM6J3.js} +2 -2
  16. package/dist/{http-SI5MKPJC.js → http-7N55SPQM.js} +2 -2
  17. package/dist/{http-TQBXGFHA.js → http-FYNNU6X7.js} +3 -3
  18. package/dist/index.cjs +34 -27
  19. package/dist/index.cjs.map +1 -1
  20. package/dist/index.d.cts +3 -7
  21. package/dist/index.d.ts +3 -7
  22. package/dist/index.js +5 -5
  23. package/dist/node.cjs +34 -27
  24. package/dist/node.cjs.map +1 -1
  25. package/dist/node.js +5 -5
  26. package/dist/{replay-6EUUVQTR.js → replay-LZXSZXTQ.js} +10 -6
  27. package/dist/replayCli.js +2 -2
  28. package/dist/seedCli.js +2 -2
  29. package/package.json +1 -1
  30. package/dist/chunk-AZ2KO7WO.js.map +0 -1
  31. package/dist/chunk-CDMFIVVU.js.map +0 -1
  32. package/dist/chunk-ZHPO4I7L.js.map +0 -1
  33. /package/dist/{chunk-K4XCWQBC.js.map → chunk-YWXQM6J3.js.map} +0 -0
  34. /package/dist/{http-SI5MKPJC.js.map → http-7N55SPQM.js.map} +0 -0
  35. /package/dist/{http-TQBXGFHA.js.map → http-FYNNU6X7.js.map} +0 -0
  36. /package/dist/{replay-6EUUVQTR.js.map → replay-LZXSZXTQ.js.map} +0 -0
package/dist/index.cjs CHANGED
@@ -42,7 +42,7 @@ var __version__, __packageName__;
42
42
  var init_version_generated = __esm({
43
43
  "src/version.generated.ts"() {
44
44
  "use strict";
45
- __version__ = "0.62.7";
45
+ __version__ = "0.63.0";
46
46
  __packageName__ = "@bitfab/sdk";
47
47
  }
48
48
  });
@@ -713,6 +713,16 @@ function warnOnce(key, message) {
713
713
  warned.add(key);
714
714
  warn(message);
715
715
  }
716
+ function writeOnce(key, line, write = console.warn) {
717
+ if (warned.has(key)) {
718
+ return;
719
+ }
720
+ warned.add(key);
721
+ try {
722
+ write(line);
723
+ } catch {
724
+ }
725
+ }
716
726
  var warned;
717
727
  var init_warnOnce = __esm({
718
728
  "src/warnOnce.ts"() {
@@ -2885,7 +2895,7 @@ var init_http = __esm({
2885
2895
  * Start a replay session by fetching historical traces.
2886
2896
  * Blocking call - creates an experiment and returns lightweight item references.
2887
2897
  */
2888
- async startReplay(traceFunctionKey, limit, traceIds, name, codeChangeDescription, codeChangeFiles, includeDbBranchLease, experimentGroupId, datasetIds, graderIds, dbBranchSettings, attempts, includeOriginalMetadata, onlyWithAssertions, judgeAssertions, experimentalSelectiveReplay, notes, metadata) {
2898
+ async startReplay(traceFunctionKey, limit, traceIds, name, codeChangeDescription, codeChangeFiles, includeDbBranchLease, experimentGroupId, datasetIds, graderIds, dbBranchSettings, attempts, includeOriginalMetadata, onlyWithAssertions, skipAssertionJudging, experimentalSelectiveReplay, notes, metadata) {
2889
2899
  const payload = { traceFunctionKey };
2890
2900
  if (experimentalSelectiveReplay !== void 0) {
2891
2901
  payload.experimentalSelectiveReplay = experimentalSelectiveReplay;
@@ -2940,7 +2950,7 @@ var init_http = __esm({
2940
2950
  if (onlyWithAssertions) {
2941
2951
  payload.onlyWithAssertions = true;
2942
2952
  }
2943
- if (judgeAssertions) {
2953
+ if (skipAssertionJudging !== true) {
2944
2954
  payload.judgeAssertions = true;
2945
2955
  }
2946
2956
  const git = await resolvedGitState();
@@ -3447,7 +3457,7 @@ async function captureCodeChangeFromGit(cwd, label) {
3447
3457
  if (!resolved2) {
3448
3458
  return null;
3449
3459
  }
3450
- const { base, fromTrunk } = resolved2;
3460
+ const { base, against } = resolved2;
3451
3461
  const blobBytes = async (ref2, path) => {
3452
3462
  const out = await git(root, ["cat-file", "-s", `${ref2}:${path}`]);
3453
3463
  const n = out ? Number.parseInt(out.trim(), 10) : Number.NaN;
@@ -3515,7 +3525,6 @@ async function captureCodeChangeFromGit(cwd, label) {
3515
3525
  const subject = (await git(root, ["log", "-1", "--format=%s", "HEAD"]))?.trim();
3516
3526
  const fileWord = files.length === 1 ? "file" : "files";
3517
3527
  const head = label?.trim() || subject || "Working-tree change";
3518
- const against = fromTrunk ? "vs trunk" : "uncommitted (vs HEAD)";
3519
3528
  return {
3520
3529
  description: `${head} (${files.length} ${fileWord} changed ${against})`,
3521
3530
  files
@@ -3528,18 +3537,9 @@ async function resolveBase(git, root) {
3528
3537
  const forced = process.env?.BITFAB_CODE_CHANGE_BASE;
3529
3538
  if (forced && await refExists(git, root, forced)) {
3530
3539
  const base = (await git(root, ["merge-base", "HEAD", forced]))?.trim() || (await git(root, ["rev-parse", "--verify", forced]))?.trim() || null;
3531
- return base ? { base, fromTrunk: true } : null;
3540
+ return base ? { base, against: `vs ${forced}` } : null;
3532
3541
  }
3533
- for (const candidate of TRUNK_CANDIDATES) {
3534
- if (!await refExists(git, root, candidate)) {
3535
- continue;
3536
- }
3537
- const mb = (await git(root, ["merge-base", "HEAD", candidate]))?.trim();
3538
- if (mb) {
3539
- return { base: mb, fromTrunk: true };
3540
- }
3541
- }
3542
- return await refExists(git, root, "HEAD") ? { base: "HEAD", fromTrunk: false } : null;
3542
+ return await refExists(git, root, "HEAD") ? { base: "HEAD", against: "uncommitted (vs HEAD)" } : null;
3543
3543
  }
3544
3544
  async function refExists(git, root, ref2) {
3545
3545
  return await git(root, ["rev-parse", "--verify", `${ref2}^{object}`]) !== null;
@@ -3573,7 +3573,7 @@ function parseNameStatusZ(raw) {
3573
3573
  function looksBinary(s) {
3574
3574
  return s.slice(0, 8e3).includes(NUL);
3575
3575
  }
3576
- var MAX_FILES, MAX_FILE_BYTES, MAX_TOTAL_BYTES, TRUNK_CANDIDATES, NUL;
3576
+ var MAX_FILES, MAX_FILE_BYTES, MAX_TOTAL_BYTES, NUL;
3577
3577
  var init_codeChange = __esm({
3578
3578
  "src/codeChange.ts"() {
3579
3579
  "use strict";
@@ -3581,13 +3581,6 @@ var init_codeChange = __esm({
3581
3581
  MAX_FILES = 60;
3582
3582
  MAX_FILE_BYTES = 5e5;
3583
3583
  MAX_TOTAL_BYTES = 2e6;
3584
- TRUNK_CANDIDATES = [
3585
- "origin/HEAD",
3586
- "origin/main",
3587
- "origin/master",
3588
- "main",
3589
- "master"
3590
- ];
3591
3584
  NUL = String.fromCharCode(0);
3592
3585
  }
3593
3586
  });
@@ -4042,13 +4035,15 @@ var replay_exports = {};
4042
4035
  __export(replay_exports, {
4043
4036
  BITFAB_PROGRESS_PREFIX: () => BITFAB_PROGRESS_PREFIX,
4044
4037
  DbBranchReplayError: () => DbBranchReplayError,
4038
+ JUDGE_ASSERTIONS_DEPRECATION_WARNING: () => JUDGE_ASSERTIONS_DEPRECATION_WARNING,
4045
4039
  ReplayError: () => ReplayError,
4046
4040
  deserializeInputs: () => deserializeInputs,
4047
4041
  replay: () => replay,
4048
4042
  reportReplayProgress: () => reportReplayProgress,
4049
4043
  serializeReplayResult: () => serializeReplayResult,
4050
4044
  sleepForReplayPersistence: () => sleepForReplayPersistence,
4051
- waitForReplayPersistence: () => waitForReplayPersistence
4045
+ waitForReplayPersistence: () => waitForReplayPersistence,
4046
+ warnJudgeAssertionsDeprecated: () => warnJudgeAssertionsDeprecated
4052
4047
  });
4053
4048
  function expandReplayWork(serverItems, attempts) {
4054
4049
  return Array.from(
@@ -4599,7 +4594,17 @@ async function mapWithConcurrency2(tasks, maxConcurrency, onSettled, onStarted,
4599
4594
  await Promise.all(workers);
4600
4595
  return results.slice(0, nextIndex);
4601
4596
  }
4597
+ function warnJudgeAssertionsDeprecated(write = console.warn) {
4598
+ writeOnce(
4599
+ "judgeAssertions-deprecated",
4600
+ JUDGE_ASSERTIONS_DEPRECATION_WARNING,
4601
+ write
4602
+ );
4603
+ }
4602
4604
  async function replay(httpClient, serviceUrl, traceFunctionKey, fn, options, registeredOverrides = []) {
4605
+ if (options?.judgeAssertions !== void 0) {
4606
+ warnJudgeAssertionsDeprecated();
4607
+ }
4603
4608
  if (options?.resume !== void 0) {
4604
4609
  validateResume(options.resume, options);
4605
4610
  } else if (options?.force === true) {
@@ -4676,7 +4681,7 @@ async function replay(httpClient, serviceUrl, traceFunctionKey, fn, options, reg
4676
4681
  requestedAttempts,
4677
4682
  options?.adaptInputs !== void 0,
4678
4683
  options?.onlyWithAssertions,
4679
- options?.judgeAssertions,
4684
+ options?.skipAssertionJudging === true || options?.judgeAssertions === false,
4680
4685
  options?.experimentalSelectiveReplay,
4681
4686
  options?.notes,
4682
4687
  options?.metadata
@@ -5051,7 +5056,7 @@ async function writeReplayResultFile(result) {
5051
5056
  }
5052
5057
  }
5053
5058
  }
5054
- var REPLAY_PERSISTENCE_TIMEOUT_MS, MAX_REPLAY_ATTEMPTS, RESUME_CONFLICTING_OPTIONS, CARRIED_OVER_ERROR, BITFAB_PROGRESS_PREFIX, ReplayError, DbBranchReplayError;
5059
+ var REPLAY_PERSISTENCE_TIMEOUT_MS, MAX_REPLAY_ATTEMPTS, RESUME_CONFLICTING_OPTIONS, CARRIED_OVER_ERROR, BITFAB_PROGRESS_PREFIX, ReplayError, DbBranchReplayError, JUDGE_ASSERTIONS_DEPRECATION_WARNING;
5055
5060
  var init_replay = __esm({
5056
5061
  "src/replay.ts"() {
5057
5062
  "use strict";
@@ -5066,6 +5071,7 @@ var init_replay = __esm({
5066
5071
  init_replayInterrupt();
5067
5072
  init_selectiveReplayRuntime();
5068
5073
  init_serialize();
5074
+ init_warnOnce();
5069
5075
  REPLAY_PERSISTENCE_TIMEOUT_MS = 3e4;
5070
5076
  MAX_REPLAY_ATTEMPTS = 100;
5071
5077
  RESUME_CONFLICTING_OPTIONS = [
@@ -5102,6 +5108,7 @@ var init_replay = __esm({
5102
5108
  this.name = "DbBranchReplayError";
5103
5109
  }
5104
5110
  };
5111
+ JUDGE_ASSERTIONS_DEPRECATION_WARNING = "Bitfab: judgeAssertions is deprecated. Assertion judging is on by default; pass skipAssertionJudging: true (--skip-assertion-judging) to turn it off.";
5105
5112
  }
5106
5113
  });
5107
5114