@ggui-ai/ui-gen 0.13.0 → 0.15.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 (63) hide show
  1. package/dist/adapters/generation-dispatch.d.ts +2 -2
  2. package/dist/adapters/generation-dispatch.js +192 -58
  3. package/dist/adapters/generation-dispatch.js.map +1 -1
  4. package/dist/adapters/index.js +7 -9
  5. package/dist/adapters/index.js.map +1 -1
  6. package/dist/advanced/index.d.ts +3 -3
  7. package/dist/advanced/index.js +192 -58
  8. package/dist/advanced/index.js.map +1 -1
  9. package/dist/blueprint-validator.js +2 -7
  10. package/dist/blueprint-validator.js.map +1 -1
  11. package/dist/boilerplate.js +4 -4
  12. package/dist/boilerplate.js.map +1 -1
  13. package/dist/check/index.d.ts +1 -1
  14. package/dist/check/index.js +57 -16
  15. package/dist/check/index.js.map +1 -1
  16. package/dist/{create-ui-generator-CF0EL0Li.d.ts → create-ui-generator-D6TKuv9V.d.ts} +2 -2
  17. package/dist/{dispatch-D75M-OfZ.d.ts → dispatch-BuZfTh9r.d.ts} +1 -1
  18. package/dist/evaluation/axis-checks/index.d.ts +3 -3
  19. package/dist/evaluation/axis-checks/index.js.map +1 -1
  20. package/dist/evaluation/axis-checks/registry.d.ts +1 -1
  21. package/dist/evaluation/index.d.ts +3 -3
  22. package/dist/evaluation/index.js +79 -16
  23. package/dist/evaluation/index.js.map +1 -1
  24. package/dist/harness/check/runtime-render/index.d.ts +1 -1
  25. package/dist/harness/check/runtime-render/index.js +2 -7
  26. package/dist/harness/check/runtime-render/index.js.map +1 -1
  27. package/dist/harness/index.d.ts +2 -2
  28. package/dist/harness/index.js +64 -19
  29. package/dist/harness/index.js.map +1 -1
  30. package/dist/harness/prompts.js +2 -0
  31. package/dist/harness/prompts.js.map +1 -1
  32. package/dist/harness/result-types.d.ts +1 -1
  33. package/dist/harness/runtime.d.ts +2 -2
  34. package/dist/harness/runtime.js +5 -5
  35. package/dist/harness/runtime.js.map +1 -1
  36. package/dist/harness/types-public.d.ts +1 -1
  37. package/dist/harness/types-public.js +4 -4
  38. package/dist/harness/types-public.js.map +1 -1
  39. package/dist/harness/validator-trace-sink.d.ts +1 -1
  40. package/dist/index.d.ts +3 -3
  41. package/dist/index.js +192 -58
  42. package/dist/index.js.map +1 -1
  43. package/dist/{llm-router-BEVtbAb9.d.ts → llm-router-D7fjBhtr.d.ts} +39 -0
  44. package/dist/patch.d.ts +1 -1
  45. package/dist/provider-adapter-contract.js +1017 -731
  46. package/dist/provider-adapter-contract.js.map +1 -1
  47. package/dist/{types-public-DIpjC-OA.d.ts → types-public-CkNWEov9.d.ts} +64 -1
  48. package/dist/validation/index.d.ts +1 -1
  49. package/dist/validation/index.js +1 -1
  50. package/dist/validation/index.js.map +1 -1
  51. package/dist/workflows.d.ts +1 -1
  52. package/package.json +21 -21
  53. package/src/adapters/provider-router.ts +9 -0
  54. package/src/boilerplate/system-prompt.ts +4 -4
  55. package/src/check/run-tier0.ts +109 -22
  56. package/src/check/type-checker.ts +12 -2
  57. package/src/evaluation/index.ts +4 -0
  58. package/src/evaluation/llm-evaluator.ts +52 -8
  59. package/src/evaluation/types-public.ts +79 -0
  60. package/src/evaluation/visual-evaluator.ts +27 -5
  61. package/src/harness/coding/run-eval-round.ts +32 -6
  62. package/src/harness/llm-router.ts +128 -2
  63. package/src/validation/primitives.ts +1 -1
@@ -49,9 +49,72 @@ interface RuntimeProbeMeta {
49
49
  /** Populated for `infra-skipped` / `not-applicable` — why the probe didn't run. */
50
50
  readonly reason?: string;
51
51
  }
52
+ /**
53
+ * Per-criterion execution status — three-valued so "the criterion
54
+ * silently produced no verdict" is never conflated with "the criterion
55
+ * ran clean", and neither is conflated with "not evaluated by design".
56
+ * Same doctrine and vocabulary family as `RuntimeProbeStatus` above.
57
+ *
58
+ * - `ran` — the LLM call completed and returned a verdict
59
+ * for this criterion; its findings (possibly
60
+ * none) are in `issues`.
61
+ * - `skipped` — the call errored or returned no tool call. The
62
+ * criterion carries ZERO evidence; the evaluator
63
+ * fail-opens it into `pass` to avoid blocking
64
+ * generation on flaky LLM calls, so consumers
65
+ * MUST consult this field before treating `pass`
66
+ * membership as a verdict. Counts AGAINST
67
+ * coverage.
68
+ * - `not-applicable` — the evaluator was bypassed by design for this
69
+ * cell (e.g. the same-image low-risk bypass:
70
+ * axis checks clean, tier-1/2 never invoked).
71
+ * `reason` names the bypass. Excluded from
72
+ * coverage denominators — it is neither evidence
73
+ * nor a silent absence.
74
+ */
75
+ type CriterionRunStatus = "ran" | "skipped" | "not-applicable";
76
+ /** Coverage row for one evaluation criterion of one eval run. */
77
+ interface CriterionCoverage {
78
+ readonly criterion: string;
79
+ readonly tier: 1 | 2;
80
+ readonly status: CriterionRunStatus;
81
+ /** Populated for `skipped` / `not-applicable` — why no verdict. */
82
+ readonly reason?: string;
83
+ }
84
+ /**
85
+ * The static criteria `runLLMEvaluation` runs, in stamp order — the
86
+ * ONE list both the evaluator's coverage stamp and the harness's
87
+ * bypass stamp derive from, so the two can never disagree on the set.
88
+ * Tier 1 = binary pass/fail gates; tier 2 = fail/warn/pass quality.
89
+ */
90
+ declare const LLM_EVAL_STATIC_CRITERIA: ReadonlyArray<{
91
+ readonly criterion: string;
92
+ readonly tier: 1 | 2;
93
+ }>;
94
+ /**
95
+ * Coverage rows for a cell where the evaluator was BYPASSED BY DESIGN
96
+ * (never invoked) — one `not-applicable` row per static criterion, all
97
+ * carrying `reason`. Harness exits that skip tier-1/2 evaluation stamp
98
+ * this so the cell is neither a silent absence (field missing) nor
99
+ * evidence. Same shape contract as `runLLMEvaluation`'s stamp: always
100
+ * every criterion. Lives here (not in llm-evaluator) because the bypass
101
+ * exit runs before the evaluator module is lazily loaded.
102
+ */
103
+ declare function notApplicableCoverage(reason: string): CriterionCoverage[];
52
104
  interface EvalResult {
53
105
  issues: EvalIssue[];
54
106
  pass: string[];
107
+ /**
108
+ * Per-criterion coverage for this eval run — one row per static
109
+ * criterion, ALWAYS all of them when present. Stamped by
110
+ * `runLLMEvaluation` (`ran` / `skipped`) and by the harness on
111
+ * evaluator-bypass exits (`not-applicable` + reason). The harness
112
+ * carries it unchanged through every later re-stamp of this result.
113
+ * Absent = coverage UNKNOWN (paths that predate the instrument, e.g.
114
+ * `parseEvalResponse` replays) — never assume `ran`, never assume
115
+ * bypass.
116
+ */
117
+ criteriaCoverage?: CriterionCoverage[];
55
118
  /**
56
119
  * Runtime-render probe execution meta. Stamped by the exit-decision
57
120
  * probe runner; absent on eval paths that never invoke the probe.
@@ -149,4 +212,4 @@ declare function getLLMCriteria(): EvalCriterion[];
149
212
  */
150
213
  declare function buildCodingCriteriaSummary(): string;
151
214
 
152
- export { type AxisCheck as A, CRITERIA as C, DEFAULT_QUALITY_CONFIG as D, type EvalIssue as E, type Priority as P, type QualityConfig as Q, type RuntimeProbeStatus as R, type AxisCheckInput as a, type EvalResult as b, type EvalTier as c, type EvalCategory as d, type EvalCriterion as e, type EvalOutcome as f, type QualityMode as g, buildCodingCriteriaSummary as h, getActionableIssues as i, getCriteriaByPriority as j, getCriterionById as k, getLLMCriteria as l, matches as m, isBlocked as n, priorityForIssue as p };
215
+ export { type AxisCheck as A, CRITERIA as C, DEFAULT_QUALITY_CONFIG as D, type EvalIssue as E, LLM_EVAL_STATIC_CRITERIA as L, type Priority as P, type QualityConfig as Q, type RuntimeProbeStatus as R, type AxisCheckInput as a, type EvalResult as b, type EvalTier as c, type CriterionCoverage as d, type CriterionRunStatus as e, type EvalCategory as f, type EvalCriterion as g, type EvalOutcome as h, type QualityMode as i, buildCodingCriteriaSummary as j, getActionableIssues as k, getCriteriaByPriority as l, matches as m, getCriterionById as n, getLLMCriteria as o, isBlocked as p, notApplicableCoverage as q, priorityForIssue as r };