runbios-sdk 0.2.1-dev.146 → 0.2.1-dev.149

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.
package/dist/index.d.ts CHANGED
@@ -36,7 +36,7 @@ import { Loop } from './resources/loop.js';
36
36
  * SDK version. Sent as part of the User-Agent header.
37
37
  * Must match package.json "version" -- enforced by a contract test.
38
38
  */
39
- export declare const VERSION = "0.2.1-dev.146";
39
+ export declare const VERSION = "0.2.1-dev.149";
40
40
  export declare class RunBiOS {
41
41
  /** Search models, fetch configs, check adapter compatibility. */
42
42
  readonly models: Models;
package/dist/index.js CHANGED
@@ -36,7 +36,7 @@ import { Loop } from './resources/loop.js';
36
36
  * SDK version. Sent as part of the User-Agent header.
37
37
  * Must match package.json "version" -- enforced by a contract test.
38
38
  */
39
- export const VERSION = '0.2.1-dev.146';
39
+ export const VERSION = '0.2.1-dev.149';
40
40
  export class RunBiOS {
41
41
  /** Search models, fetch configs, check adapter compatibility. */
42
42
  models;
@@ -525,6 +525,14 @@ export declare class Loop {
525
525
  *
526
526
  * Send the `terms_version` it returns back in `createTrainingRule`. Read the
527
527
  * figures out of this response rather than inventing ceilings of your own.
528
+ *
529
+ * `valid: false` with an EMPTY `refusals` list is not nothing: check
530
+ * `unreachable`, which names every peer the platform could not reach. The
531
+ * rule is savable in that state and would be paused, but the estimate around
532
+ * it is not trustworthy -- both `worst_hourly_*` are `0` -- so do not quote
533
+ * those figures to anyone. `model_revision` is NOT a signal here: a degraded
534
+ * pass echoes back whatever revision the request carried, so test
535
+ * `unreachable.length > 0` rather than the revision being empty.
528
536
  */
529
537
  preflightTrainingRule(params: TrainingRulePreflightRequest): Promise<TrainingRulePreflight>;
530
538
  /**
@@ -731,6 +731,14 @@ export class Loop {
731
731
  *
732
732
  * Send the `terms_version` it returns back in `createTrainingRule`. Read the
733
733
  * figures out of this response rather than inventing ceilings of your own.
734
+ *
735
+ * `valid: false` with an EMPTY `refusals` list is not nothing: check
736
+ * `unreachable`, which names every peer the platform could not reach. The
737
+ * rule is savable in that state and would be paused, but the estimate around
738
+ * it is not trustworthy -- both `worst_hourly_*` are `0` -- so do not quote
739
+ * those figures to anyone. `model_revision` is NOT a signal here: a degraded
740
+ * pass echoes back whatever revision the request carried, so test
741
+ * `unreachable.length > 0` rather than the revision being empty.
734
742
  */
735
743
  async preflightTrainingRule(params) {
736
744
  return this._http.fetchPost('/api/loop/training-rules/preflight', params);
package/dist/types.d.ts CHANGED
@@ -3114,6 +3114,22 @@ export interface TrainingRulePreflight {
3114
3114
  eval_ceiling_cents: number;
3115
3115
  warnings: string[];
3116
3116
  refusals: TrainingRulePreflightRefusal[];
3117
+ /**
3118
+ * Every peer the platform could not reach on this pass, one entry each, in
3119
+ * the same `{stage, code, message}` shape as a refusal.
3120
+ *
3121
+ * A warning, not a refusal: an unreachable peer judged nothing, so it never
3122
+ * refuses a save. It is still why the rule cannot fire — both
3123
+ * `worst_hourly_*` come back `0` — so `valid` is `false`. Key a "cannot
3124
+ * save" state on this when `refusals` is empty; the same sentences are also
3125
+ * in `warnings`, so render one or the other.
3126
+ *
3127
+ * Key it on THIS, not on `model_revision`. A degraded pass echoes back the
3128
+ * `model_revision` the request carried rather than emptying it, so
3129
+ * `if (!model_revision)` is false on exactly the passes it was meant to
3130
+ * catch. Use `unreachable.length > 0`, or `/^[0-9a-f]{40}$/`.
3131
+ */
3132
+ unreachable: TrainingRulePreflightRefusal[];
3117
3133
  key_check: TrainingRuleKeyCheck;
3118
3134
  terms_text: string;
3119
3135
  terms_version: string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "runbios-sdk",
3
- "version": "0.2.1-dev.146",
3
+ "version": "0.2.1-dev.149",
4
4
  "description": "Official TypeScript SDK for the Run BiOS training and deployment platform API",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",