Conversation
Adds a feature-gated Jev decision layer and Mission Control suggestions without touching workflow control paths.
Adds operator setup and safety boundaries for the optional Jev integration.
Covers the default-off path, source binding, and generated wire contract.
Enforces the Jev model contract instead of allowing an incompatible configured override.
Keeps polling asynchronous so the panel satisfies React's effect contract.
There was a problem hiding this comment.
Copilot review overview
🟡 Changes recommended
A critical compile error and multiple correctness and lifecycle issues remain unresolved.
Get a fresh assessment by requesting another Copilot review.
Review effort: Lite
Findings: 1
Open (2)
What changed in this PR
Adds optional, advisory Jev decision support with local APIs, persistence, provider validation, and Mission Control UI.
Changes:
- Adds feature-gated decision-support service and worker workflow.
- Adds
/v1/assistAPIs, protocol types, and persistence. - Adds Suggestions UI, configuration, documentation, and dependencies.
| File | Reviewed change |
|---|---|
web/app/suggestions.tsx |
Suggestions interface |
web/app/studio.tsx |
Mission Control integration |
web/app/lib/protocol.ts |
Protocol exports |
web/app/lib/protocol-generated.ts |
Generated decision types |
web/app/lib/decision-client.ts |
Assist API client |
web/app/globals.css |
Suggestions styling |
src/serve.rs |
Assist API routes and lifecycle handling |
src/protocol.rs |
Wire protocol generation |
src/omar.rs |
Decision module registration |
src/decisions.rs |
Decision service, provider workflow, persistence, and validation |
src/config.rs |
Decision-support configuration |
src/app.rs |
Test configuration defaults |
docs/decision-support.md |
Feature documentation |
Cargo.toml |
Feature flag and dependencies |
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
| record.reason_code = outcome.reason_code; | ||
| record.model = Some(outcome.model.clone()); | ||
| record.model_resolved = Some(outcome.model); | ||
| } else if let Err(error) = result { |
| {sources.map((item) => <option key={item.source_id} value={item.source_id}>{item.reaction_id} · {item.port}</option>)} | ||
| </select> | ||
| </label> | ||
| <textarea ref={excerpt} defaultValue={source?.text} key={source?.source_id} aria-label="Review excerpt" /> |
|
Integrating Jev is a super cool idea! And I think OMAR is a great fit for Jev because TypeSafe AI advertises Jev as a "System I model". It needs a coordination framework like OMAR to connect it to the other "System II models". I have a proposal regarding integration: why not just make For example, we can have a Jev-integrated program that looks like this:
With a structured schema like this:
Then Jev picks one choice with speed and cost effectiveness. This also allows Jev to fit seamlessly into the OMAR model! |




Summary
OMAR can now offer an operator-requested Jev decision suggestion from an enrolled review output, while keeping the existing workflow fully advisory and unchanged by default.
/v1/assistservice and a Mission Control Suggestions experience.jev-1.13.0through TypeSafe, validates the exact response schema and probability distributions, and returns a specific owner only when owner, context, and selected-answer confidence are each at least 0.90.Reliability and safety
off;shadowandsuggestare explicit operator modes.Validation
cargo test --offline --bin omar -- --skip manager::tests::a_codex_home_outlives_its_pane_only_until_the_next_launch— 426 passed, 7 ignored.cargo test --offline --bin omar --features decision-support -- --skip manager::tests::a_codex_home_outlives_its_pane_only_until_the_next_launch— 435 passed, 7 ignored.cargo build --offline --features decision-support.vinext build, and rendered/protocol contract tests (15 passed).OMAR_BINandOMARC_BINare not present in this checkout.