@dungle-scrubs/harness-cli-normalizer 0.5.2 → 0.5.4

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 (67) hide show
  1. package/README.md +113 -2
  2. package/dist/cli/args.d.ts.map +1 -1
  3. package/dist/cli/args.js +8 -0
  4. package/dist/cli/args.js.map +1 -1
  5. package/dist/cli/help.d.ts +2 -2
  6. package/dist/cli/help.d.ts.map +1 -1
  7. package/dist/cli/help.js +16 -0
  8. package/dist/cli/help.js.map +1 -1
  9. package/dist/cli/inspect.d.ts.map +1 -1
  10. package/dist/cli/inspect.js +21 -0
  11. package/dist/cli/inspect.js.map +1 -1
  12. package/dist/cli/refuse.d.ts +7 -1
  13. package/dist/cli/refuse.d.ts.map +1 -1
  14. package/dist/cli/refuse.js +16 -5
  15. package/dist/cli/refuse.js.map +1 -1
  16. package/dist/cli/session-json.d.ts +25 -0
  17. package/dist/cli/session-json.d.ts.map +1 -0
  18. package/dist/cli/session-json.js +195 -0
  19. package/dist/cli/session-json.js.map +1 -0
  20. package/dist/cli/session.d.ts.map +1 -1
  21. package/dist/cli/session.js +93 -11
  22. package/dist/cli/session.js.map +1 -1
  23. package/dist/execution/failure.d.ts +2 -1
  24. package/dist/execution/failure.d.ts.map +1 -1
  25. package/dist/execution/failure.js +12 -1
  26. package/dist/execution/failure.js.map +1 -1
  27. package/dist/execution/open-session.d.ts +24 -3
  28. package/dist/execution/open-session.d.ts.map +1 -1
  29. package/dist/execution/open-session.js +106 -19
  30. package/dist/execution/open-session.js.map +1 -1
  31. package/dist/execution/stream-turn.d.ts.map +1 -1
  32. package/dist/execution/stream-turn.js +8 -5
  33. package/dist/execution/stream-turn.js.map +1 -1
  34. package/dist/interpretation/argv.d.ts +3 -0
  35. package/dist/interpretation/argv.d.ts.map +1 -1
  36. package/dist/interpretation/argv.js +5 -0
  37. package/dist/interpretation/argv.js.map +1 -1
  38. package/dist/interpretation/limits.d.ts +3 -0
  39. package/dist/interpretation/limits.d.ts.map +1 -1
  40. package/dist/interpretation/limits.js +12 -13
  41. package/dist/interpretation/limits.js.map +1 -1
  42. package/dist/knowledge/descriptor.d.ts +6 -1
  43. package/dist/knowledge/descriptor.d.ts.map +1 -1
  44. package/dist/knowledge/descriptor.js.map +1 -1
  45. package/dist/knowledge/index.d.ts +1 -1
  46. package/dist/knowledge/index.d.ts.map +1 -1
  47. package/dist/knowledge/index.js +1 -1
  48. package/dist/knowledge/index.js.map +1 -1
  49. package/dist/knowledge/matchers.d.ts +2 -1
  50. package/dist/knowledge/matchers.d.ts.map +1 -1
  51. package/dist/knowledge/matchers.js +10 -0
  52. package/dist/knowledge/matchers.js.map +1 -1
  53. package/package.json +1 -1
  54. package/src/cli/args.ts +8 -0
  55. package/src/cli/help.ts +16 -0
  56. package/src/cli/inspect.ts +26 -0
  57. package/src/cli/refuse.ts +31 -12
  58. package/src/cli/session-json.ts +230 -0
  59. package/src/cli/session.ts +103 -12
  60. package/src/execution/failure.ts +16 -1
  61. package/src/execution/open-session.ts +132 -23
  62. package/src/execution/stream-turn.ts +8 -3
  63. package/src/interpretation/argv.ts +8 -0
  64. package/src/interpretation/limits.ts +17 -18
  65. package/src/knowledge/descriptor.ts +6 -1
  66. package/src/knowledge/index.ts +1 -0
  67. package/src/knowledge/matchers.ts +17 -1
@@ -86,10 +86,15 @@ export interface AuthMatcher {
86
86
  readonly kind: AuthFailureKind;
87
87
  }
88
88
 
89
- export interface TransportMatcher {
89
+ /** A bare phrase matcher for wall classes that carry no code of their own
90
+ * (transport faults, a provider that cannot serve the model): pattern and
91
+ * flags as data, compiled with the same bounds as the limit matchers. */
92
+ export interface PhraseMatcher {
90
93
  readonly pattern: string;
91
94
  readonly flags?: string;
92
95
  }
96
+ export type TransportMatcher = PhraseMatcher;
97
+ export type UnavailableMatcher = PhraseMatcher;
93
98
 
94
99
  /** The turn-option vocabulary is closed for the same reason `LimitCode` is:
95
100
  * a descriptor must not invent an option a consumer has no field for. Every
@@ -16,6 +16,7 @@ export {
16
16
  SHARED_AUTH_MATCHERS,
17
17
  SHARED_LIMIT_MATCHERS,
18
18
  SHARED_TRANSPORT_MATCHERS,
19
+ SHARED_UNAVAILABLE_MATCHERS,
19
20
  } from "./matchers.js";
20
21
  export { museCode } from "./muse.js";
21
22
  export {
@@ -4,7 +4,12 @@
4
4
  * or a provider 401 must classify no matter which CLI printed it. Each
5
5
  * descriptor spreads these after its harness-specific phrasings.
6
6
  */
7
- import type { AuthMatcher, LimitMatcher, TransportMatcher } from "./descriptor.js";
7
+ import type {
8
+ AuthMatcher,
9
+ LimitMatcher,
10
+ TransportMatcher,
11
+ UnavailableMatcher,
12
+ } from "./descriptor.js";
8
13
 
9
14
  export const SHARED_LIMIT_MATCHERS: ReadonlyArray<LimitMatcher> = [
10
15
  { pattern: "you'?ve hit your usage limit", flags: "i", code: "usage-limit" },
@@ -53,3 +58,14 @@ export const SHARED_TRANSPORT_MATCHERS: ReadonlyArray<TransportMatcher> = [
53
58
  { pattern: "gateway time-?out", flags: "i" },
54
59
  { pattern: "\\b(?:HTTP|status(?:[_ ]?code)?|code)\\b\\W*[:=]?\\W*50[234]\\b", flags: "i" },
55
60
  ];
61
+
62
+ export const SHARED_UNAVAILABLE_MATCHERS: ReadonlyArray<UnavailableMatcher> = [
63
+ { pattern: "model_not_found", flags: "i" },
64
+ { pattern: "invalid model identifier", flags: "i" },
65
+ { pattern: "model[^.]{0,60}not found", flags: "i" },
66
+ { pattern: "no such model", flags: "i" },
67
+ { pattern: "unknown model", flags: "i" },
68
+ { pattern: "model[^.]{0,60}(?:is not|isn't) loaded", flags: "i" },
69
+ { pattern: "model[^.]{0,60}does not exist", flags: "i" },
70
+ { pattern: "not a valid (?:downloaded )?model", flags: "i" },
71
+ ];