Repository navigation
Conversation
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
commit: |
Bundle the icon published by https://typesafe.ai and expose it through provider metadata.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Add provider-neutral decision models for evaluating shared text or JSON state
with yes/no probabilities, choices, and ordered scores. Built-in TypeSafe and AIHubMix adapters
provide Jev access through the same public contract.
decisionand invoke its/v1/systemoneendpoint with gateway headers and provider-specific diagnostics.Discovery uses catalog metadata rather than hardcoded Jev model names.
legends are independent optional fields; missing information is never invented.
fields in its adapter. Confidence semantics remain provider-specific.
asynchronous model resolution, using the same caller detection as other models.
usage recording, and a Console decision workbench.
fails, while recording both the execution and logical call as failed.
discovery and inference URLs consistently, including proxy path prefixes.
columns on desktop, stacked fields on narrow screens, and consistent result cards.
The initial contract covers YES_NO, CHOICE, and SCORE questions over text/JSON.
YES_NO retains a probability result; boolean-only classifiers can use a
two-option CHOICE. Image and box inputs are not included.
Validation
./gradlew build --rerun-taskspassed, including SDK compilation and UI type checking.malformed optional data, provider capability filtering, and strict TypeSafe
protocol parsing, AIHubMix discovery-to-inference, gateway headers/errors, and
service-root or
/v1Base URL normalization, and Console caller attribution.partial, zero, and missing token counts; cancellation during a real HTTP response
body read; malformed JSON; and TypeSafe discovery/inference URL combinations.
./gradlew buildalso passed after the workbench layout update.including multiple questions and sample results; this was a component preview
using Halo's form theme, not a live Console end-to-end test.
Verified the public AIHubMix catalog contains
jev-latest,jev-1.13, andjev-1.14as decision models. Protocol tests use a local HTTP server. Console callrecords confirm successful AIHubMix Jev 1.14 inference with reported token
usage; live inference with a TypeSafe API key has not been verified.
Compatibility
Existing model APIs and persisted values are retained. New service methods have
default implementations for existing AiModelService implementations. Consumers
of the new decision API must check optional diagnostics for absent or null values.
Decision resources require a runtime and SDK containing this feature. Remove
decision model resources and clear the default decision slot before downgrading
to an older plugin version.
Halo tooling is pinned to
2.26.0. OpenAPI and the API client were regeneratedwith that version, removing unrelated version-header changes from the PR.