Skip to content

[Integration]: Reconcile OmniJev eager PR #129 with current main before prefix reuse #171

Open

Description

@psv666

Existing implementation, not a second worker

Follow-up to #114. The contract/export/head slice #120 is merged. The native eager worker already exists in #129, and request-local prefix reuse in #134. Reuse these contributions; do not reimplement their CPU contract/export or create a competing readout API.

Fresh GitHub reads on 2026-10-25 report both PRs open and mergeable: CONFLICTING against main:

#129's body still describes #99 as a pending merge dependency, but #99 is now merged. Historical passing checks and author-run numerical evidence do not validate a future conflict-resolution head.

First acceptance slice: integrate #129

  • Coordinate with the existing author (twu3202) and update the existing eager-worker carrier against current main; preserve authorship and the established contract/export.
  • Resolve shared Qwen/vision/input/ABI changes against the current canonical implementation. Keep model-specific processing and heads in OmniJev; avoid parallel shared readout APIs.
  • Verify the pinned source/checkpoint/base and reference environment recorded in omnijev: add the request contract, preparation, heads and export #120/omnijev: add the native eager worker #129. Preserve the processor's 602112-pixel budget, restored option embeddings and tied vocabulary extent.
  • Re-run exact preparation/position/readout fixtures and reference head/feature tests. Choice and region Noul require full-vocabulary log-probability denominators; Score uses the ordinal head. Last-token-only or selected-label logits cannot replace these features.
  • Re-run the actual worker/reference corpus at the integrated head, recording merge drift, probabilities and decision agreement under declared tolerances. Retain the difficult LM-feature, abstention, Score and near-boundary Noul cases from the existing recipe.
  • Check real warmup before readiness, first/repeated requests directly and through the frontend, and request resource retention through cancellation/errors. Report scope-specific GPU evidence separately from CPU/CI checks.
  • Refresh relevant existing Cua-S1/shared-Qwen regressions if conflict resolution changes shared execution, vision or decoding behavior.

Prefix reuse comes after the eager baseline

Once #129 has current-head acceptance, update #134 independently. Compare its request-local reuse with both the accepted eager baseline and the pinned reference, preserving GDN recurrent/convolution state, multimodal positions, selected hidden rows, LM features and reference usage accounting. Keep its performance claim separate from the eager integration's correctness claim.

The contribution goal is to unblock existing OmniJev native work, not to count an open PR as merged support. This issue records current integration work and does not claim an inference run or change another contributor's branch.

Activity

  1. self-assigned this
    on Oct 24, 2026
  2. twu3202 commented on Oct 25, 2026

    @twu3202
    Contributor

    Thanks for laying this out. #129 is refreshed at a4a9d2d and #134 at 6c60fb8, on main 7b4c194. On these heads, on sm_89:

    The only shared change in the resolution is image_decode.rs: decode_data_url keeps its limits and now calls decode_rgb8, and main's decode tests pass. Both descriptions are updated.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions