@mark1russell7/kind 0.13.4 → 0.14.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.
- package/build/index.d.ts +157 -8
- package/build/index.js +716 -42
- package/build/index.js.map +1 -1
- package/build/{judge-DKrgfhAt.js → judge-C6XgY2Pk.js} +335 -5
- package/build/judge-C6XgY2Pk.js.map +1 -0
- package/build/{judge-BZFTT0RL.d.ts → judge-Cp3MzMk1.d.ts} +181 -3
- package/build/judge.d.ts +2 -2
- package/build/judge.js +1 -1
- package/package.json +2 -2
- package/build/judge-DKrgfhAt.js.map +0 -1
|
@@ -431,6 +431,10 @@ interface ResetReuse<A = Quantity> {
|
|
|
431
431
|
* the socket of its last request before the fault. With `window`, the failed requests also start in that window.
|
|
432
432
|
* With `of: "tunnel"`, the HBONE connection of the ztunnel of each client ends in the band instead.
|
|
433
433
|
* With `answer`, the close of the peer in that band is an answer to the close of the client.
|
|
434
|
+
* - `reconnects`: a producer of a message broker gets its connection again after its broker stops
|
|
435
|
+
* (`ReconnectsPrediction`). The lookups name another broker in the band `flip`. Each producer is back
|
|
436
|
+
* at the first try of its backoff after that change, and its sends fail only until then.
|
|
437
|
+
* With `owner: "either"`, the stopped broker can start again and take the topic back.
|
|
434
438
|
* - `measured`: no document bounds the outcome. The run keeps the measurement.
|
|
435
439
|
*/
|
|
436
440
|
type Prediction<A = Quantity> = NonePrediction | WindowPrediction<A> | {
|
|
@@ -479,10 +483,49 @@ type Prediction<A = Quantity> = NonePrediction | WindowPrediction<A> | {
|
|
|
479
483
|
*/
|
|
480
484
|
readonly answer?: Band<A> | undefined;
|
|
481
485
|
readonly why: string;
|
|
482
|
-
} | {
|
|
486
|
+
} | ReconnectsPrediction<A> | {
|
|
483
487
|
readonly kind: "measured";
|
|
484
488
|
readonly why: string;
|
|
485
489
|
};
|
|
490
|
+
/**
|
|
491
|
+
* A backoff is the delays of a client between its tries to connect again. The first delay is
|
|
492
|
+
* `initial`, and each next delay is two times the last, up to `max`. One delay is shorter: the try
|
|
493
|
+
* after it comes `mandatoryStop` after the first delay. The client takes a random share of up to
|
|
494
|
+
* `jitter` from each delay. A failed try takes up to `attempt`.
|
|
495
|
+
*/
|
|
496
|
+
interface Backoff<A = Quantity> {
|
|
497
|
+
readonly initial: A;
|
|
498
|
+
readonly max: A;
|
|
499
|
+
readonly mandatoryStop: A;
|
|
500
|
+
readonly jitter: number;
|
|
501
|
+
readonly attempt: A;
|
|
502
|
+
}
|
|
503
|
+
/**
|
|
504
|
+
* A reconnects prediction is the return of the producers of a broker after the stop of the broker
|
|
505
|
+
* that owns their topic (SYS-56). Each band is from the fault.
|
|
506
|
+
*/
|
|
507
|
+
interface ReconnectsPrediction<A = Quantity> {
|
|
508
|
+
readonly kind: "reconnects";
|
|
509
|
+
/** This band is the first lookup that names another broker as the owner of the topic. */
|
|
510
|
+
readonly flip: Band<A>;
|
|
511
|
+
/**
|
|
512
|
+
* This value says which broker owns the topic after the change. With `other`, the default, a lookup
|
|
513
|
+
* names another broker. With `either`, the stopped broker can start again and take the topic back.
|
|
514
|
+
* Then the lookups name one broker before and after the change, and only `flip` bounds the tries.
|
|
515
|
+
*/
|
|
516
|
+
readonly owner?: "other" | "either" | undefined;
|
|
517
|
+
/** This time is the most from the change of the owner to the first lookup that names it. */
|
|
518
|
+
readonly probe: A;
|
|
519
|
+
/** This band is the first delay of each producer before its first try. */
|
|
520
|
+
readonly disconnect: Band<A>;
|
|
521
|
+
/** This backoff is the delays of each producer between its tries. */
|
|
522
|
+
readonly backoff: Backoff<A>;
|
|
523
|
+
/** This band is from the try that succeeds to the producer on the new owner. */
|
|
524
|
+
readonly setup: Band<A>;
|
|
525
|
+
/** These outcomes are the only failures of a send. */
|
|
526
|
+
readonly outcomes: readonly string[];
|
|
527
|
+
readonly why: string;
|
|
528
|
+
}
|
|
486
529
|
/** A prediction of no failure: no request fails in the run, or none with an outcome of `outcomes`. */
|
|
487
530
|
interface NonePrediction {
|
|
488
531
|
readonly kind: "none";
|
|
@@ -644,6 +687,8 @@ interface KindRun {
|
|
|
644
687
|
readonly target: Replica | null;
|
|
645
688
|
/** This node is the node whose kube-proxy paused, or null. */
|
|
646
689
|
readonly paused: string | null;
|
|
690
|
+
/** This pod is the broker that owned the topic at the fault, for a cell with a broker (`KindCell.pulsar`). */
|
|
691
|
+
readonly broker?: string | undefined;
|
|
647
692
|
readonly replicas: readonly Replica[];
|
|
648
693
|
readonly void: string | null;
|
|
649
694
|
readonly lines: ReadonlyArray<{
|
|
@@ -686,6 +731,18 @@ interface KindCell<A = Quantity> {
|
|
|
686
731
|
* each request to the VIP. Without it, the cell has no VIP.
|
|
687
732
|
*/
|
|
688
733
|
readonly vip?: VipSettings | undefined;
|
|
734
|
+
/**
|
|
735
|
+
* This broker is Apache Pulsar (SYS-56). With it, the cluster has Pulsar, and `clients` more pods
|
|
736
|
+
* send messages to one topic and look up its owner. Without it, the cell has no broker.
|
|
737
|
+
*/
|
|
738
|
+
readonly pulsar?: PulsarSettings | undefined;
|
|
739
|
+
}
|
|
740
|
+
/** These are the settings of the broker of a cell (`KindCell.pulsar`). */
|
|
741
|
+
interface PulsarSettings {
|
|
742
|
+
/** This count is the pods of the producers, one on each worker. */
|
|
743
|
+
readonly clients: number;
|
|
744
|
+
/** This time is between two lookups of the owner of the topic by each client pod. */
|
|
745
|
+
readonly probe: Quantity;
|
|
689
746
|
}
|
|
690
747
|
/** This name is an announcer of a VIP: kube-vip in ARP mode (SYS-51), or MetalLB in L2 mode (SYS-53). */
|
|
691
748
|
type VipAnnouncerName = "kube-vip" | "metallb";
|
|
@@ -695,6 +752,18 @@ interface VipSettings {
|
|
|
695
752
|
readonly clients: number;
|
|
696
753
|
/** This name is the announcer of the VIP (`announcer.ts`). Without it, the announcer is kube-vip. */
|
|
697
754
|
readonly announcer?: VipAnnouncerName | undefined;
|
|
755
|
+
/**
|
|
756
|
+
* These are the settings of memberlist for the speakers of MetalLB (SYS-57). With them, the install
|
|
757
|
+
* writes the config file of memberlist, with each other value of `DefaultLANConfig`. Without them,
|
|
758
|
+
* the install writes no file.
|
|
759
|
+
*/
|
|
760
|
+
readonly memberlist?: MemberlistSettings | undefined;
|
|
761
|
+
}
|
|
762
|
+
/** A cell can change these settings of memberlist: the probe interval, the wait for an ack, and the multiplier of the suspicion timeout. */
|
|
763
|
+
interface MemberlistSettings {
|
|
764
|
+
readonly probeInterval: Quantity;
|
|
765
|
+
readonly probeTimeout: Quantity;
|
|
766
|
+
readonly suspicionMult: number;
|
|
698
767
|
}
|
|
699
768
|
//#endregion
|
|
700
769
|
//#region src/bands.d.ts
|
|
@@ -1109,6 +1178,25 @@ interface RunFacts<A = Quantity> {
|
|
|
1109
1178
|
* with fewer than 2 requests of each client does not have it. A record before SYS-41 does not have it.
|
|
1110
1179
|
*/
|
|
1111
1180
|
readonly period?: Period<A> | undefined;
|
|
1181
|
+
/**
|
|
1182
|
+
* These are the facts of the return of the producers (`reconnects`, SYS-56). They are the first
|
|
1183
|
+
* lookup with another owner, the gap of the lookups before it, each producer, and the failed sends
|
|
1184
|
+
* by outcome. Each time is from the fault, but `gap`.
|
|
1185
|
+
*/
|
|
1186
|
+
readonly reconnects?: ReconnectsFacts<A> | undefined;
|
|
1187
|
+
}
|
|
1188
|
+
/** These are the facts of the return of the producers of a run (`RunFacts.reconnects`). */
|
|
1189
|
+
interface ReconnectsFacts<A = Quantity> {
|
|
1190
|
+
readonly flip: A | null;
|
|
1191
|
+
readonly gap: A | null;
|
|
1192
|
+
readonly returns: ReadonlyArray<{
|
|
1193
|
+
readonly pod: string;
|
|
1194
|
+
readonly disconnect: A | null;
|
|
1195
|
+
readonly back: A | null;
|
|
1196
|
+
readonly setup: A | null;
|
|
1197
|
+
readonly tries: number;
|
|
1198
|
+
}>;
|
|
1199
|
+
readonly failures: Readonly<Record<string, number>>;
|
|
1112
1200
|
}
|
|
1113
1201
|
/** A deleted replica is a replica of a run that got a deletion. It gives its pod, and the stamps of its intake (or null) and of its deletion. */
|
|
1114
1202
|
interface Deleted {
|
|
@@ -1393,5 +1481,95 @@ declare const quantileOf: (sorted: readonly number[], p: number) => number;
|
|
|
1393
1481
|
*/
|
|
1394
1482
|
declare const medianInterval: (sorted: readonly number[]) => [number, number];
|
|
1395
1483
|
//#endregion
|
|
1396
|
-
|
|
1397
|
-
|
|
1484
|
+
//#region src/reconnects.d.ts
|
|
1485
|
+
/**
|
|
1486
|
+
* This module judges the return of the producers of a message broker after the stop of the broker
|
|
1487
|
+
* that owns their topic (SYS-56). It knows the backoff of a client and the lines of the lab, and
|
|
1488
|
+
* nothing of Pulsar. Each time is in milliseconds, on the clock of the lines.
|
|
1489
|
+
*
|
|
1490
|
+
* The backoff is the law of `Backoff::next` of the C++ client of Pulsar 4.2.0 (lib/Backoff.cc,
|
|
1491
|
+
* lines 33–57). The first delay is the initial delay, and each next delay is two times the last, up
|
|
1492
|
+
* to the most. The first call keeps its time. If a later call ends after the mandatory stop, it
|
|
1493
|
+
* gets the rest of the time to that stop, once. Then the call takes a random share of up to the
|
|
1494
|
+
* jitter from the delay. The delay is not below the initial delay at any time.
|
|
1495
|
+
*/
|
|
1496
|
+
/** A try is the earliest and the latest time of one try to connect, after the first delay starts. */
|
|
1497
|
+
interface Try {
|
|
1498
|
+
readonly lo: number;
|
|
1499
|
+
readonly hi: number;
|
|
1500
|
+
}
|
|
1501
|
+
/**
|
|
1502
|
+
* This function gives the band of each try after the first delay starts, up to the first try whose
|
|
1503
|
+
* earliest time is after `until`. The earliest path has the most jitter and no time for a try. The
|
|
1504
|
+
* latest path has no jitter and `attempt` for each failed try. A later call gets a delay that ends no
|
|
1505
|
+
* earlier, thus each try of a path between them is in the band.
|
|
1506
|
+
*/
|
|
1507
|
+
declare const triesOf: (backoff: Backoff, until: number) => Try[];
|
|
1508
|
+
/**
|
|
1509
|
+
* This function gives the latest return of a producer after the fault, from the bands of the
|
|
1510
|
+
* prediction. It adds three terms. The first is the first delay at its latest. The second is the
|
|
1511
|
+
* latest time of the first try that cannot come before the latest change of the owner. The third
|
|
1512
|
+
* is the latest setup.
|
|
1513
|
+
*/
|
|
1514
|
+
declare const latestReturn: (prediction: ReconnectsPrediction) => number;
|
|
1515
|
+
/** A schedule is one call of the backoff of a producer: when, and its delay in milliseconds. */
|
|
1516
|
+
interface Schedule {
|
|
1517
|
+
readonly t: number;
|
|
1518
|
+
readonly delay: number;
|
|
1519
|
+
}
|
|
1520
|
+
/** A return is the facts of one producer in one run. */
|
|
1521
|
+
interface Return {
|
|
1522
|
+
readonly pod: string;
|
|
1523
|
+
/** This time is the first call of the backoff after the fault, from the fault. */
|
|
1524
|
+
readonly disconnect: number | null;
|
|
1525
|
+
/** These are the calls of the backoff from the fault to the producer on the new owner. */
|
|
1526
|
+
readonly schedules: readonly Schedule[];
|
|
1527
|
+
/** This time is the producer on the new owner, from the fault, or null. */
|
|
1528
|
+
readonly back: number | null;
|
|
1529
|
+
/** This time is from the try that succeeded to the producer on the new owner. */
|
|
1530
|
+
readonly setup: number | null;
|
|
1531
|
+
/** This count is the tries up to the one that succeeded. */
|
|
1532
|
+
readonly tries: number;
|
|
1533
|
+
readonly ok: boolean;
|
|
1534
|
+
readonly why: string;
|
|
1535
|
+
}
|
|
1536
|
+
/** A judgement is the facts of one run: the change of the owner, each producer, and the failed sends. */
|
|
1537
|
+
interface Reconnects {
|
|
1538
|
+
readonly ok: boolean;
|
|
1539
|
+
readonly why: string;
|
|
1540
|
+
/** This time is the first lookup that names another owner, from the fault, or null. */
|
|
1541
|
+
readonly flip: number | null;
|
|
1542
|
+
/** This time is from the last lookup before that change to it. */
|
|
1543
|
+
readonly gap: number | null;
|
|
1544
|
+
readonly returns: readonly Return[];
|
|
1545
|
+
/** This count is the sends of the producers that failed, by outcome. */
|
|
1546
|
+
readonly failures: Readonly<Record<string, number>>;
|
|
1547
|
+
/** This time is the median return of the producers, from the fault, or null. */
|
|
1548
|
+
readonly value: number | null;
|
|
1549
|
+
}
|
|
1550
|
+
/**
|
|
1551
|
+
* This function judges one run: the fault at `fault`, the broker `broker` that owned the topic, and
|
|
1552
|
+
* the lines of the run. A lookup line is `{ev: "lookup", t, o, owner}`, a line of the client is
|
|
1553
|
+
* `{ev: "pulsar", t, p, m}`, and a send is `{ev: "send", t, d, o, p}`. `timeout` and `every` are the
|
|
1554
|
+
* timeout and the interval of the sends. Each check has a margin of `noise`.
|
|
1555
|
+
*
|
|
1556
|
+
* For each producer, the delays of its backoff follow the law, from the observed time of each call.
|
|
1557
|
+
* Its last try comes after the last lookup that named the old owner. The try before it comes no
|
|
1558
|
+
* later than the first lookup that named another. Then the setup is in its band. Each failed send
|
|
1559
|
+
* starts between the fault and the return, with an outcome of the prediction. At least one fails.
|
|
1560
|
+
*
|
|
1561
|
+
* With `owner: "either"`, the lookups can name the old owner for the whole run, because it started
|
|
1562
|
+
* again and took the topic back. Then the last try comes after the start of the band `flip`. The
|
|
1563
|
+
* try before it comes no later than the end of that band.
|
|
1564
|
+
*/
|
|
1565
|
+
declare const judgeReconnects: (prediction: ReconnectsPrediction, run: {
|
|
1566
|
+
readonly fault: number;
|
|
1567
|
+
readonly broker: string;
|
|
1568
|
+
readonly lines: readonly Line[];
|
|
1569
|
+
}, sends: {
|
|
1570
|
+
readonly timeout: number;
|
|
1571
|
+
readonly every: number;
|
|
1572
|
+
}, noise: number) => Reconnects;
|
|
1573
|
+
//#endregion
|
|
1574
|
+
export { factsOf as $, DATAPLANES as $n, transitionOf as $t, KindCellResult as A, KubeletProbe as An, failuresOf as At, upgradeCell as B, ReconnectsPrediction as Bn, restartOf as Bt, BandV1 as C, Band as Cn, ZtunnelPodLine as Ct, FORMAT_V1 as D, Flap as Dn, deletionOf as Dt, FORMAT as E, EdgeProtocol as En, byNode as Et, RunCheckV1 as F, NonePrediction as Fn, periodOf as Ft, LAST_SLACK as G, Stack as Gn, signalsOf as Gt, KIND_NOISE as H, Reference as Hn, rulesOf as Ht, RunFactsV1 as I, PermittedWindow as In, podsAt as It, RunCheck as J, TriggerKind as Jn, sliceReadyAt as Jt, Propagated as K, Template as Kn, sliceDropOf as Kt, TriggerV1 as L, PodSettings as Ln, podsOf as Lt, KindVerdictV1 as M, Mesh as Mn, isTunnelState as Mt, LoadSample as N, MeshFlavor as Nn, kernelCounts as Nt, KindCellRecord as O, KindCell as On, dropOf as Ot, PredictionV1 as P, MeshMode as Pn, outcomesOf as Pt, deletionsOf as Q, Workload as Qn, stoppingOf as Qt, judge as R, Prediction as Rn, recordsOf as Rt, timeSpread as S, Backoff as Sn, TunnelLine as St, EnvironmentManifest as T, Declaration as Tn, byClients as Tt, KindDecision as U, Replica as Un, sessionsAt as Ut, Deleted as V, RedisDeclaration as Vn, restartsAt as Vt, KindVerdict as W, ResetReuse as Wn, signalOf as Wt, checkRun as X, VipSettings as Xn, slicesOf as Xt, RunFacts as Y, VipAnnouncerName as Yn, sliceReadyOf as Yt, cyclesOf as Z, WindowPrediction as Zn, socketsOf as Zt, TimeSpread as _, requestBand as _n, scenario as _r, RulesLine as _t, judgeReconnects as a, LB_CLASS as an, NODE_IMAGES as ar, referenceOf as at, medianText as b, showBand as bn, SocketLine as bt, RELATIVE as c, PORT as cn, ZONE_LABEL as cr, updatesOf as ct, quantileOf as d, VIP_ANNOTATION as dn, cidrRange as dr, Line as dt, tunnelsOf as en, Dataplane as er, judgeKind as et, STAGES as f, CountBand as fn, goDuration as fr, Period as ft, Judged as g, overshootBand as gn, nodeNames as gr, Request as gt, readRecord as h, drainBand as hn, kubeProxyPatch as hr, RecordLine as ht, Try as i, HEALTH_PORT as in, KubeProxyMode as ir, propagationSource as it, KindCellV1 as j, MemberlistSettings as jn, intakeOf as jt, KindCellRecordV1 as k, KindRun as kn, emptyOf as kt, medianInterval as l, REDIS as ln, ZONE_LOST as lr, Endpoint as lt, kindCellRecordV1Schema as m, bandOf as mn, kindConfig as mr, PropagationSource as mt, Return as n, ztunnelReplaced as nn, KindConfig as nr, observationEnd as nt, latestReturn as o, LOG_LABEL as on, NodeImage as or, reusesReset as ot, kindCellRecordSchema as p, backlogEnd as pn, isKubeProxyMode as pr, PodLine as pt, ReconnectsFacts as q, Trigger as qn, sliceEmptyOf as qt, Schedule as r, CLIENT as rn, KindScenario as rr, propagationOf as rt, triesOf as s, OUTSIDE as sn, ZONE_KEPT as sr, unitOf as st, Reconnects as t, ztunnelPodsOf as tn, KUBE_PROXY_MODES as tr, observationAfter as tt, middle as u, SERVER as un, cidrOverlap as ur, HBONE_PORT as ut, calibrationOf as v, seconds as vn, scenarioProblems as vr, Sessions as vt, ClusterManifest as w, Cycle as wn, backendsAt as wt, predictionText as x, BacklogTerm as xn, TCP_STATE as xt, cellsTable as y, secondsOf as yn, zoneOf as yr, SliceLine as yt, upgrade as z, PulsarSettings as zn, requestsOf as zt };
|
|
1575
|
+
//# sourceMappingURL=judge-Cp3MzMk1.d.ts.map
|
package/build/judge.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { $ as
|
|
2
|
-
export { type BacklogTerm, type Band, type BandV1, CLIENT, type ClusterManifest, type CountBand, type Cycle, type Dataplane, type Declaration, type Deleted, type EdgeProtocol, Endpoint, type EnvironmentManifest, FORMAT, FORMAT_V1, type Flap, HBONE_PORT, HEALTH_PORT, type Judged, KIND_NOISE, type KindCell, type KindCellRecord, type KindCellRecordV1, type KindCellResult, type KindCellV1, type KindDecision, type KindRun, type KindVerdict, type KindVerdictV1, type KubeProxyMode, type KubeletProbe, LAST_SLACK, LB_CLASS, LOG_LABEL, Line, type LoadSample, type Mesh, type MeshFlavor, type MeshMode, type NonePrediction, OUTSIDE, PORT, Period, type PermittedWindow, PodLine, type PodSettings, type Prediction, type PredictionV1, type Propagated, PropagationSource, REDIS, RELATIVE, RecordLine, type RedisDeclaration, type Reference, type Replica, Request, type ResetReuse, RulesLine, type RunCheck, type RunCheckV1, type RunFacts, type RunFactsV1, SERVER, STAGES, Sessions, SliceLine, SocketLine, type Stack, TCP_STATE, type Template, type TimeSpread, type Trigger, type TriggerKind, type TriggerV1, TunnelLine, VIP_ANNOTATION, type VipAnnouncerName, type VipSettings, type WindowPrediction, type Workload, ZtunnelPodLine, backendsAt, backlogEnd, bandOf, byClients, byNode, calibrationOf, cellsTable, checkRun, cyclesOf, deletionOf, deletionsOf, drainBand, dropOf, emptyOf, factsOf, failuresOf, intakeOf, isTunnelState, judge, judgeKind, kernelCounts, kindCellRecordSchema, kindCellRecordV1Schema, medianInterval, medianText, middle, observationAfter, observationEnd, outcomesOf, overshootBand, periodOf, podsAt, podsOf, predictionText, propagationOf, propagationSource, quantileOf, readRecord, recordsOf, referenceOf, requestBand, requestsOf, restartOf, restartsAt, reusesReset, rulesOf, seconds, secondsOf, sessionsAt, showBand, signalOf, signalsOf, sliceDropOf, sliceEmptyOf, sliceReadyAt, sliceReadyOf, slicesOf, socketsOf, stoppingOf, timeSpread, transitionOf, tunnelsOf, unitOf, updatesOf, upgrade, upgradeCell, ztunnelPodsOf, ztunnelReplaced };
|
|
1
|
+
import { $ as factsOf, $t as transitionOf, A as KindCellResult, An as KubeletProbe, At as failuresOf, B as upgradeCell, Bn as ReconnectsPrediction, Bt as restartOf, C as BandV1, Cn as Band, Ct as ZtunnelPodLine, D as FORMAT_V1, Dn as Flap, Dt as deletionOf, E as FORMAT, En as EdgeProtocol, Et as byNode, F as RunCheckV1, Fn as NonePrediction, Ft as periodOf, G as LAST_SLACK, Gn as Stack, Gt as signalsOf, H as KIND_NOISE, Hn as Reference, Ht as rulesOf, I as RunFactsV1, In as PermittedWindow, It as podsAt, J as RunCheck, Jn as TriggerKind, Jt as sliceReadyAt, K as Propagated, Kn as Template, Kt as sliceDropOf, L as TriggerV1, Ln as PodSettings, Lt as podsOf, M as KindVerdictV1, Mn as Mesh, Mt as isTunnelState, N as LoadSample, Nn as MeshFlavor, Nt as kernelCounts, O as KindCellRecord, On as KindCell, Ot as dropOf, P as PredictionV1, Pn as MeshMode, Pt as outcomesOf, Q as deletionsOf, Qn as Workload, Qt as stoppingOf, R as judge, Rn as Prediction, Rt as recordsOf, S as timeSpread, Sn as Backoff, St as TunnelLine, T as EnvironmentManifest, Tn as Declaration, Tt as byClients, U as KindDecision, Un as Replica, Ut as sessionsAt, V as Deleted, Vn as RedisDeclaration, Vt as restartsAt, W as KindVerdict, Wn as ResetReuse, Wt as signalOf, X as checkRun, Xn as VipSettings, Xt as slicesOf, Y as RunFacts, Yn as VipAnnouncerName, Yt as sliceReadyOf, Z as cyclesOf, Zn as WindowPrediction, Zt as socketsOf, _ as TimeSpread, _n as requestBand, _t as RulesLine, a as judgeReconnects, an as LB_CLASS, at as referenceOf, b as medianText, bn as showBand, bt as SocketLine, c as RELATIVE, cn as PORT, ct as updatesOf, d as quantileOf, dn as VIP_ANNOTATION, dt as Line, en as tunnelsOf, er as Dataplane, et as judgeKind, f as STAGES, fn as CountBand, ft as Period, g as Judged, gn as overshootBand, gt as Request, h as readRecord, hn as drainBand, ht as RecordLine, i as Try, in as HEALTH_PORT, ir as KubeProxyMode, it as propagationSource, j as KindCellV1, jn as MemberlistSettings, jt as intakeOf, k as KindCellRecordV1, kn as KindRun, kt as emptyOf, l as medianInterval, ln as REDIS, lt as Endpoint, m as kindCellRecordV1Schema, mn as bandOf, mt as PropagationSource, n as Return, nn as ztunnelReplaced, nt as observationEnd, o as latestReturn, on as LOG_LABEL, ot as reusesReset, p as kindCellRecordSchema, pn as backlogEnd, pt as PodLine, q as ReconnectsFacts, qn as Trigger, qt as sliceEmptyOf, r as Schedule, rn as CLIENT, rt as propagationOf, s as triesOf, sn as OUTSIDE, st as unitOf, t as Reconnects, tn as ztunnelPodsOf, tt as observationAfter, u as middle, un as SERVER, ut as HBONE_PORT, v as calibrationOf, vn as seconds, vt as Sessions, w as ClusterManifest, wn as Cycle, wt as backendsAt, x as predictionText, xn as BacklogTerm, xt as TCP_STATE, y as cellsTable, yn as secondsOf, yt as SliceLine, z as upgrade, zn as PulsarSettings, zt as requestsOf } from "./judge-Cp3MzMk1.js";
|
|
2
|
+
export { type BacklogTerm, type Backoff, type Band, type BandV1, CLIENT, type ClusterManifest, type CountBand, type Cycle, type Dataplane, type Declaration, type Deleted, type EdgeProtocol, Endpoint, type EnvironmentManifest, FORMAT, FORMAT_V1, type Flap, HBONE_PORT, HEALTH_PORT, type Judged, KIND_NOISE, type KindCell, type KindCellRecord, type KindCellRecordV1, type KindCellResult, type KindCellV1, type KindDecision, type KindRun, type KindVerdict, type KindVerdictV1, type KubeProxyMode, type KubeletProbe, LAST_SLACK, LB_CLASS, LOG_LABEL, Line, type LoadSample, type MemberlistSettings, type Mesh, type MeshFlavor, type MeshMode, type NonePrediction, OUTSIDE, PORT, Period, type PermittedWindow, PodLine, type PodSettings, type Prediction, type PredictionV1, type Propagated, PropagationSource, type PulsarSettings, REDIS, RELATIVE, type Reconnects, type ReconnectsFacts, type ReconnectsPrediction, RecordLine, type RedisDeclaration, type Reference, type Replica, Request, type ResetReuse, type Return, RulesLine, type RunCheck, type RunCheckV1, type RunFacts, type RunFactsV1, SERVER, STAGES, type Schedule, Sessions, SliceLine, SocketLine, type Stack, TCP_STATE, type Template, type TimeSpread, type Trigger, type TriggerKind, type TriggerV1, type Try, TunnelLine, VIP_ANNOTATION, type VipAnnouncerName, type VipSettings, type WindowPrediction, type Workload, ZtunnelPodLine, backendsAt, backlogEnd, bandOf, byClients, byNode, calibrationOf, cellsTable, checkRun, cyclesOf, deletionOf, deletionsOf, drainBand, dropOf, emptyOf, factsOf, failuresOf, intakeOf, isTunnelState, judge, judgeKind, judgeReconnects, kernelCounts, kindCellRecordSchema, kindCellRecordV1Schema, latestReturn, medianInterval, medianText, middle, observationAfter, observationEnd, outcomesOf, overshootBand, periodOf, podsAt, podsOf, predictionText, propagationOf, propagationSource, quantileOf, readRecord, recordsOf, referenceOf, requestBand, requestsOf, restartOf, restartsAt, reusesReset, rulesOf, seconds, secondsOf, sessionsAt, showBand, signalOf, signalsOf, sliceDropOf, sliceEmptyOf, sliceReadyAt, sliceReadyOf, slicesOf, socketsOf, stoppingOf, timeSpread, transitionOf, triesOf, tunnelsOf, unitOf, updatesOf, upgrade, upgradeCell, ztunnelPodsOf, ztunnelReplaced };
|
package/build/judge.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export {
|
|
1
|
+
export { vt as CLIENT, u as FORMAT, d as FORMAT_V1, N as HBONE_PORT, yt as HEALTH_PORT, h as KIND_NOISE, g as LAST_SLACK, bt as LB_CLASS, xt as LOG_LABEL, St as OUTSIDE, Ct as PORT, wt as REDIS, mt as RELATIVE, Tt as SERVER, t as STAGES, P as TCP_STATE, Et as VIP_ANNOTATION, F as backendsAt, Dt as backlogEnd, Ot as bandOf, I as byClients, L as byNode, a as calibrationOf, o as cellsTable, _ as checkRun, v as cyclesOf, R as deletionOf, y as deletionsOf, kt as drainBand, z as dropOf, B as emptyOf, b as factsOf, V as failuresOf, H as intakeOf, U as isTunnelState, f as judge, x as judgeKind, A as judgeReconnects, W as kernelCounts, n as kindCellRecordSchema, r as kindCellRecordV1Schema, j as latestReturn, ht as medianInterval, s as medianText, gt as middle, S as observationAfter, C as observationEnd, G as outcomesOf, At as overshootBand, K as periodOf, q as podsAt, J as podsOf, c as predictionText, w as propagationOf, T as propagationSource, _t as quantileOf, i as readRecord, Y as recordsOf, E as referenceOf, jt as requestBand, X as requestsOf, Z as restartOf, Q as restartsAt, D as reusesReset, $ as rulesOf, Mt as seconds, Nt as secondsOf, et as sessionsAt, Pt as showBand, tt as signalOf, nt as signalsOf, rt as sliceDropOf, it as sliceEmptyOf, at as sliceReadyAt, ot as sliceReadyOf, st as slicesOf, ct as socketsOf, lt as stoppingOf, l as timeSpread, ut as transitionOf, M as triesOf, dt as tunnelsOf, O as unitOf, k as updatesOf, p as upgrade, m as upgradeCell, ft as ztunnelPodsOf, pt as ztunnelReplaced } from "./judge-C6XgY2Pk.js";
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"$schema": "https://json.schemastore.org/package",
|
|
3
3
|
"name": "@mark1russell7/kind",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.14.0",
|
|
5
5
|
"description": "Kubernetes in Docker as a lab for connection timers: a kind cluster from a scenario, faults in the namespaces of its pods, observations on the one monotonic clock of the VM, and predictions from the ordering law. Its judge entry reads and judges a raw record without Docker.",
|
|
6
6
|
"keywords": [
|
|
7
7
|
"kubernetes",
|
|
@@ -66,7 +66,7 @@
|
|
|
66
66
|
"node": ">=22.19"
|
|
67
67
|
},
|
|
68
68
|
"dependencies": {
|
|
69
|
-
"@mark1russell7/harness": "^0.14.
|
|
69
|
+
"@mark1russell7/harness": "^0.14.3",
|
|
70
70
|
"@mark1russell7/quantity": "^0.3.0",
|
|
71
71
|
"@mark1russell7/rigor-statistics": "^0.1.3",
|
|
72
72
|
"@mark1russell7/service": "^0.6.5",
|