You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Add a TypeSafe (Jev) block and four Agent tools: Choose an Option, Assign a Score, Estimate Yes/No Probability (Noul), and Evaluate Questions. They call TypeSafe’s System One endpoint with a user-supplied API key and use Sim’s existing request transport, retries, and model-input projection.
Preserve structured inputs, nullable question descriptions, fractional scores, complete probability maps, and named mixed-question answers. Validate choices, probability keys, score ranges, and structured legends against the request actually sent after model-input projection. Include seven catalog templates and seven suggested skills, documentation, and regenerated tool metadata, catalog, navigation, icon mappings, block-name metadata, and Copilot docs manifest. No SDK dependency, provider implementation, API route, OAuth, billing, or migrations.
Use the user-supplied standalone TypeSafe mark (typesafe-ai-dark.svg) for the block, catalog templates, and documentation. Preserve its exact path and viewBox; use currentColor for light/dark theme support.
Type of Change
Bug fix
New feature
Breaking change
Documentation
Other
Testing
Used Bun 1.4.1 and installed existing locked dependencies with --frozen-lockfile.
All PR checks passed on 812299aeb4: app build, lint/type checks and repository audits, test shards, both PostgreSQL integration jobs, companion, security scan, docs preview, and automated review checks. Greptile reports 5/5; both reviewers have zero open threads.
Passed:
Workspace formatting, lint, and type checks.
All 47 repository audits, plus block-registry and canvas-sentence checks.
Tool request-boundary, registry-boundary, parameter-reachability, and strict API-validation checks.
Bare-icon, icon-path, and icon-precision checks with the supplied TypeSafe icon.
368 existing tests across executor, request transport, model-input adapters, block definitions, and parameter handling.
Manual verification:
All four block forms and Agent operations appear in the local UI. Criteria examples and required state match each operation; the advanced model combobox offers the three initial suggestions and accepts a custom ID.
Request/response probes covered text, JSON strings, resolved objects/arrays, shared reference navigation, fractional scores, zero/one Noul values, mixed answers, invalid JSON/criteria, missing or mismatched answers, and low confidence as success.
Nested model-input projection preserves authentication, model selection, and question-type controls, and rejects ambiguous question-ID projection instead of reassigning content.
Live HTTP 200 calls passed for all four operations using the configured key. Score returned 0.67 with a structured legend; mixed answers preserved question IDs and zero probabilities. Live negative calls confirmed HTTP 401 for invalid credentials and HTTP 400 for an invalid question type.
Live throttling/overload and cancellation were not induced; retry/error behavior uses the existing executor and its existing tests. No complete Agent model-driven conversation was executed.
No tests were added or modified, as requested. Existing CI remains enabled. The API key is excluded from the commit.
The final response-validation change also passed all 47 audits, workspace type checks, 228 existing executor/transport/projection tests, manual malformed-response and projection probes, and four successful live API calls. Probes included undeclared choices, missing/extra outcomes, out-of-range scores, mismatched legends, and comparison against projected option names and descriptions.
Checklist
Code follows project style guidelines
Self-reviewed my changes
Tests added/updated and passing — no test changes requested; existing tests passed
Local UI verification completed. The final React icon was visually checked in a browser at 16, 24, 32, and 48 px on light, dark, and block-tile backgrounds. Its original SVG path and viewBox are preserved exactly.
The PR appears safe to merge, with the previously identified response-validation gap addressed and no new actionable issue found.
Summary
Adds a TypeSafe (Jev) workflow integration with four operations, Agent-tool support, structured input projection, response validation, documentation, catalog metadata, and generated registry artifacts. The latest revision completes criteria-relative validation using the request body produced after model-input projection.
Adds Choice, Score, Noul, and mixed-question Evaluate operations.
Validates answer IDs, types, option/rubric keys, score bounds, and score legends against the projected request.
Registers the integration across workflow blocks, Agent tools, documentation, icons, deployment metadata, and generated catalogs.
Both previous review threads are resolved: criteria validation was implemented, while additional test files were intentionally excluded from the agreed scope.
Diagram
sequenceDiagram
participant User
participant Block as TypeSafe Block / Agent Tool
participant Projector as Model-input projection
participant Executor as Sim request executor
participant Jev as TypeSafe System One
participant Validator as Response validator
User->>Block: State, question criteria, API key, model
Block->>Projector: Select model-visible input
Projector->>Executor: Projected parameters
Executor->>Jev: POST state, model, and questions
Jev-->>Executor: Typed answers, model, and usage
Executor->>Validator: Response and serialized request body
Validator->>Validator: Check IDs, types, criteria, bounds, and legends
Validator-->>User: Operation-specific workflow output
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
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 a TypeSafe (Jev) block and four Agent tools: Choose an Option, Assign a Score, Estimate Yes/No Probability (Noul), and Evaluate Questions. They call TypeSafe’s System One endpoint with a user-supplied API key and use Sim’s existing request transport, retries, and model-input projection.
Preserve structured inputs, nullable question descriptions, fractional scores, complete probability maps, and named mixed-question answers. Validate choices, probability keys, score ranges, and structured legends against the request actually sent after model-input projection. Include seven catalog templates and seven suggested skills, documentation, and regenerated tool metadata, catalog, navigation, icon mappings, block-name metadata, and Copilot docs manifest. No SDK dependency, provider implementation, API route, OAuth, billing, or migrations.
Use the user-supplied standalone TypeSafe mark (
typesafe-ai-dark.svg) for the block, catalog templates, and documentation. Preserve its exact path and viewBox; usecurrentColorfor light/dark theme support.Type of Change
Testing
Used Bun 1.4.1 and installed existing locked dependencies with
--frozen-lockfile.All PR checks passed on
812299aeb4: app build, lint/type checks and repository audits, test shards, both PostgreSQL integration jobs, companion, security scan, docs preview, and automated review checks. Greptile reports 5/5; both reviewers have zero open threads.Passed:
Manual verification:
0.67with a structured legend; mixed answers preserved question IDs and zero probabilities. Live negative calls confirmed HTTP 401 for invalid credentials and HTTP 400 for an invalid question type.Live throttling/overload and cancellation were not induced; retry/error behavior uses the existing executor and its existing tests. No complete Agent model-driven conversation was executed.
No tests were added or modified, as requested. Existing CI remains enabled. The API key is excluded from the commit.
The final response-validation change also passed all 47 audits, workspace type checks, 228 existing executor/transport/projection tests, manual malformed-response and projection probes, and four successful live API calls. Probes included undeclared choices, missing/extra outcomes, out-of-range scores, mismatched legends, and comparison against projected option names and descriptions.
Checklist
Screenshots/Videos
Local UI verification completed. The final React icon was visually checked in a browser at 16, 24, 32, and 48 px on light, dark, and block-tile backgrounds. Its original SVG path and viewBox are preserved exactly.