koneck 2.46.1 → 2.47.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.
@@ -42,10 +42,33 @@ export interface RouterFailure {
42
42
  * inventing failures that never happened.
43
43
  */
44
44
  export declare function parseRouterAttempts(message: string): RouterAttempt[];
45
- /** Whether one upstream status could plausibly go differently next time. */
46
- export declare function statusWorthRetrying(status: number): boolean;
47
- /** What a status means, in words a person can act on. */
48
- export declare function describeStatus(status: number): string;
45
+ /**
46
+ * Whether one upstream could plausibly go differently next time.
47
+ *
48
+ * The reason matters as much as the number. A 400 saying the prompt was too long will say it again
49
+ * to the identical request, so retrying is time spent to reach the same answer. A 400 saying the
50
+ * model was unavailable is a different claim entirely — the router may pick a different upstream, or
51
+ * the same one may come back — and treating those two as one thing meant a recoverable failure was
52
+ * reported as final.
53
+ */
54
+ export declare function statusWorthRetrying(status: number, reason?: string | null): boolean;
55
+ /**
56
+ * The reason the gateway actually gave, if it gave one.
57
+ *
58
+ * Everything before the bracketed list of attempts, with the wrapper noise stripped. Worth having
59
+ * because a status alone is nearly always ambiguous and the sentence beside it usually is not.
60
+ */
61
+ export declare function statedReason(message: string): string | null;
62
+ /**
63
+ * What a status means, in words a person can act on.
64
+ *
65
+ * The reason the gateway gave outranks anything inferred from the number, and getting this wrong
66
+ * cost somebody real time: every 400 was described as "usually the prompt exceeding its context
67
+ * window", so a gateway plainly saying "Model is unavailable" was reported as a context problem and
68
+ * sent them looking at the length of their conversation. A status is a category; the sentence beside
69
+ * it is the fact.
70
+ */
71
+ export declare function describeStatus(status: number, reason?: string | null): string;
49
72
  /**
50
73
  * Reads a router failure, if that is what this is.
51
74
  *
@@ -1 +1 @@
1
- {"version":3,"file":"router-failure.d.ts","sourceRoot":"","sources":["../src/router-failure.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,aAAa,EAAE,CAAC;IAC1B,sFAAsF;IACtF,aAAa,EAAE,OAAO,CAAC;IACvB,2EAA2E;IAC3E,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,aAAa,EAAE,CAapE;AAED,4EAA4E;AAC5E,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAI3D;AAED,yDAAyD;AACzD,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAQrD;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI,CAuCvE;AAGD;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,WAAW,eAAe;IAC9B,4EAA4E;IAC5E,QAAQ,EAAE,MAAM,CAAC;IACjB,gEAAgE;IAChE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,eAAe,GAAG,IAAI,CAsB3E"}
1
+ {"version":3,"file":"router-failure.d.ts","sourceRoot":"","sources":["../src/router-failure.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,aAAa,EAAE,CAAC;IAC1B,sFAAsF;IACtF,aAAa,EAAE,OAAO,CAAC;IACvB,2EAA2E;IAC3E,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,aAAa,EAAE,CAapE;AAED;;;;;;;;GAQG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAOnF;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAiB3D;AAcD;;;;;;;;GAQG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,CAc7E;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI,CA+CvE;AAGD;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,WAAW,eAAe;IAC9B,4EAA4E;IAC5E,QAAQ,EAAE,MAAM,CAAC;IACjB,gEAAgE;IAChE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,MAAM,GAAG,eAAe,GAAG,IAAI,CAsB3E"}
@@ -46,18 +46,79 @@ export function parseRouterAttempts(message) {
46
46
  }
47
47
  return out;
48
48
  }
49
- /** Whether one upstream status could plausibly go differently next time. */
50
- export function statusWorthRetrying(status) {
49
+ /**
50
+ * Whether one upstream could plausibly go differently next time.
51
+ *
52
+ * The reason matters as much as the number. A 400 saying the prompt was too long will say it again
53
+ * to the identical request, so retrying is time spent to reach the same answer. A 400 saying the
54
+ * model was unavailable is a different claim entirely — the router may pick a different upstream, or
55
+ * the same one may come back — and treating those two as one thing meant a recoverable failure was
56
+ * reported as final.
57
+ */
58
+ export function statusWorthRetrying(status, reason) {
51
59
  if (status === 429)
52
60
  return true; // a quota, which resets
53
61
  if (status >= 500)
54
62
  return true; // the upstream being unwell
63
+ if (reason && reasonIsAboutAvailability(reason) && !reasonIsAboutTheRequest(reason)) {
64
+ return true; // not there now; possibly there in a moment
65
+ }
55
66
  return false; // a refused request stays refused
56
67
  }
57
- /** What a status means, in words a person can act on. */
58
- export function describeStatus(status) {
68
+ /**
69
+ * The reason the gateway actually gave, if it gave one.
70
+ *
71
+ * Everything before the bracketed list of attempts, with the wrapper noise stripped. Worth having
72
+ * because a status alone is nearly always ambiguous and the sentence beside it usually is not.
73
+ */
74
+ export function statedReason(message) {
75
+ /*
76
+ * The leading status marker goes first, then the attempts list.
77
+ *
78
+ * Splitting on the first bracket looked right and threw the whole message away, because a gateway
79
+ * that opens with "[400]: ..." puts that bracket before the sentence rather than after it. So the
80
+ * one message this was written for came back as "without saying why".
81
+ */
82
+ const withoutMarker = String(message).replace(/^\s*\[\s*\d{3}\s*\]\s*:?\s*/, '');
83
+ const head = withoutMarker.split('[')[0] ?? '';
84
+ const cleaned = head
85
+ .replace(/^\s*\[?\d{3}\]?\s*:?\s*/, '')
86
+ .replace(/^Error from provider[^:]*:\s*/i, '')
87
+ .replace(/^Upstream request failed:\s*/i, '')
88
+ .replace(/^Stream ended before producing a non-ping SSE event\s*/i, '')
89
+ .trim();
90
+ return cleaned.length > 3 ? cleaned.replace(/\s+/g, ' ').slice(0, 200) : null;
91
+ }
92
+ /** Whether a reason says the request itself was the problem, which no retry will change. */
93
+ function reasonIsAboutTheRequest(reason) {
94
+ return /context length|context window|too long|too large|maximum context|token limit|reduce the length|unsupported parameter|invalid|malformed/i
95
+ .test(reason);
96
+ }
97
+ /** Whether a reason says the model was not there, which another attempt might route around. */
98
+ function reasonIsAboutAvailability(reason) {
99
+ return /unavailable|not available|no such model|does not exist|not found|overloaded|capacity|busy|temporarily/i
100
+ .test(reason);
101
+ }
102
+ /**
103
+ * What a status means, in words a person can act on.
104
+ *
105
+ * The reason the gateway gave outranks anything inferred from the number, and getting this wrong
106
+ * cost somebody real time: every 400 was described as "usually the prompt exceeding its context
107
+ * window", so a gateway plainly saying "Model is unavailable" was reported as a context problem and
108
+ * sent them looking at the length of their conversation. A status is a category; the sentence beside
109
+ * it is the fact.
110
+ */
111
+ export function describeStatus(status, reason) {
112
+ if (reason) {
113
+ if (reasonIsAboutTheRequest(reason))
114
+ return `refused the request: ${reason}`;
115
+ if (reasonIsAboutAvailability(reason))
116
+ return `was not available: ${reason}`;
117
+ return `answered ${status}: ${reason}`;
118
+ }
119
+ // Nothing said, so this is inference and is worded as inference.
59
120
  if (status === 400)
60
- return 'refused the request usually the prompt exceeding its context window';
121
+ return 'refused the request, without saying why';
61
122
  if (status === 401 || status === 403)
62
123
  return 'refused the credential';
63
124
  if (status === 404)
@@ -80,9 +141,11 @@ export function readRouterFailure(message) {
80
141
  const attempts = parseRouterAttempts(message);
81
142
  if (attempts.length === 0)
82
143
  return null;
83
- const retryable = attempts.filter(a => statusWorthRetrying(a.status));
84
- const refused = attempts.filter(a => !statusWorthRetrying(a.status));
85
- const lines = attempts.map(a => ` ${a.model} ${describeStatus(a.status)}`);
144
+ // What the gateway said, which outranks anything the status number implies.
145
+ const reason = statedReason(message);
146
+ const retryable = attempts.filter(a => statusWorthRetrying(a.status, reason));
147
+ const refused = attempts.filter(a => !statusWorthRetrying(a.status, reason));
148
+ const lines = attempts.map(a => ` ${a.model} ${describeStatus(a.status, reason)}`);
86
149
  if (retryable.length === 0) {
87
150
  return {
88
151
  attempts,
@@ -92,12 +155,18 @@ export function readRouterFailure(message) {
92
155
  + `one refused the request, so trying again will reach the same answer:`,
93
156
  ...lines,
94
157
  '',
95
- refused.some(a => a.status === 400 || a.status === 413)
96
- ? 'A refused request on a free model is nearly always its context window, which is '
97
- + 'usually far smaller than the alias suggests. Pin a specific model with a window you '
98
- + 'know, or shorten the conversation.'
99
- : 'Pin a specific model rather than an alias, so the choice is yours rather than the '
100
- + "router's.",
158
+ // Advice that follows from what was said, rather than from the commonest cause of a 400.
159
+ // Telling somebody to shorten their conversation because a model was unavailable is worse
160
+ // than saying nothing: they go and do it, and it does not help.
161
+ reason && reasonIsAboutTheRequest(reason)
162
+ ? 'That is about the request rather than the model. On a free model it is nearly always '
163
+ + 'the context window, which is usually far smaller than the alias suggests — pin a '
164
+ + 'model with a window you know, or shorten the conversation.'
165
+ : reason && reasonIsAboutAvailability(reason)
166
+ ? 'That is about the model, not your request. Nothing needs shortening. Pin a model that '
167
+ + 'is actually available, or wait and try again.'
168
+ : 'Pin a specific model rather than an alias, so the choice is yours rather than the '
169
+ + "router's.",
101
170
  ].join('\n'),
102
171
  };
103
172
  }
@@ -1 +1 @@
1
- {"version":3,"file":"router-failure.js","sourceRoot":"","sources":["../src/router-failure.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"router-failure.js","sourceRoot":"","sources":["../src/router-failure.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "koneck",
3
- "version": "2.46.1",
3
+ "version": "2.47.0",
4
4
  "description": "Kinetically Orchestrated Neural Execution Engine for Code",
5
5
  "type": "module",
6
6
  "bin": {