Skip to content

[Feat] Replay changed-image sequences through decision services - #4

Draft
linear3735 wants to merge 36 commits into
codex/decision-benchmarks-codexfrom
codex/jev-image-replay
Draft

linear3735 wants to merge 36 commits into
codex/decision-benchmarks-codexfrom
codex/jev-image-replay

Conversation

@linear3735

@linear3735 linear3735 commented Oct 9, 2026 •

Copy link
Copy Markdown
Owner

Why

The public231 benchmark has no command for replaying changing screenshot sequences against official JEV and native Omni with the same ordered requests. This adds that collector on top of upstream #52, also tracked by fork #1. This fork PR targets codex/decision-benchmarks-codex.

How

Start with benchmarks/legs/changed_image_replay.py. It reuses DecisionClient, validates the entire manifest before sending requests, preserves repeated images and option order, and records every attempt with raw responses, hashes and completion counts.

What

Add python -m benchmarks.legs.changed_image_replay for /v1/decide and /v1/systemone, with usage in benchmarks/README.md and offline tests. Callers supply the screenshot manifest, service provenance and a fresh output directory. --cache-state records a declaration; it does not reset caches. Response checks validate the response, including probability normalization within 1e-6 for rounding; they do not establish model agreement, cache correctness or task success.

Usage: changed-image replay commands. The tested native service is the combined Omni revision in fork #7, with #5 and #6 as dependencies.

Verification

Current follow-up: benchmark suite 129 passed, zero skipped, including the existing XML skip guard. Full local suite: 1100 passed, 198 subtests passed, 43 optional/environment-dependent skips. Ruff format/check, ty and smoke passed. The existing required benchmark job now covers the whole tests/benchmarks directory. Kimi and a fresh non-author Codex reviewed the same frozen source and found no blocking issues. CI for this head is tracked separately. Commands:

python -m pytest tests/benchmarks -q -p no:cacheprovider
ruff check benchmarks/legs/changed_image_replay.py tests/benchmarks/test_changed_image_replay.py
ruff format --check benchmarks/legs/changed_image_replay.py tests/benchmarks/test_changed_image_replay.py
  • uv run ruff format --check . && uv run ruff check . && uv run ty check
  • uv run pytest -q and scripts/smoke.sh
  • CHANGELOG.md and the docs say what the code does now

Current PR head f09748b967792d52014abb3b0c3b1acbd0ba069c is based on ThinkFlowLab#52 5c59dc4229c47d2deea31bd3fdb70ce844eaa3d5; the original replay commit was rebased onto that dependency without conflicts. This follow-up has CPU checks only; the historical GPU provenance below is retained separately.

Demo / evidence

  • Video link, or exemption/blocker with follow-up: no video attached. Add an application, Agents decision-agent and Omni inference recording from one run before marking ready.
  • Application/task → agent actions → independently checked result: not yet demonstrated; CPU tests use HTTP fixtures. The separate H800 run verified the real frontend→worker replay, but did not execute agent actions or complete an application task.
  • Historical System1-Agents / System1-Omni commits, checkpoint and worker/frontend provenance: Agents base 40bf742e2b84ad6157bf2990dd5e4bab73571702, head 6fcb65e1498e3419699ebc861adb6b6c7ef38547 (tree 4584a1e8a7349524ef100e0a7e68792c87edec63). A bounded H800 replay used Omni c5f17cf79fc5aa4a722a876688d0da2d809808e1 (tree 52f103c30fe6e235cad26fcb482c12c4dca21e4f), JEV-27B-VL f34b598d4ef4bcefd337bee8d8e7ddd3b7733ccc and the shared ABI6 library. Independently checked 22 sequences / 88 requests (choice 40, noul 24, score 24), with zero HTTP/selection failures and maximum absolute probability difference 0.00239793 against the fixed official references (limit 0.025). This is screenshot-manifest replay, not an application-agent success test. Raw records are retained locally; public evidence link remains pending publication approval.

For an agent-assisted self-review, use the self-review skill.
For recording and upload instructions, use the agent video guide.

hsliuustc0106 and others added 17 commits October 8, 2026 23:40
Signed-off-by: Hongsheng Liu <liuhongsheng4@huawei.com>
…'s table, the three interrupted ones included

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Re-score pinned public231 probabilities and verify ticket decisions against accepted actions and committed environment state.

Changed lines relative to stacked base: 2264 authored code/test lines and 98 documentation lines (2362 total additions + deletions). No third-party source copied in this commit. Depends on public231 PR ThinkFlowLab#52.
@linear3735
linear3735 force-pushed the codex/jev-image-replay branch from 6fcb65e to f09748b Compare October 12, 2026 09:10
linear3735 and others added 12 commits October 12, 2026 19:31
The 69 raw files (logs, profiles, final screenshots) stay outside the source
tree, per the repository's artifact hygiene; the README links the archive
attached to the pull request, with its sha256.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Resolve changelog-only conflict: keep the ticket JSONL line/column
diagnostic entry alongside main's recovery and related Fixed notes.
Python 3.13 reports a trailing-comma object as column 37 with
"Illegal trailing comma...", while older versions used column 38 and
"Expecting property name...". Derive the expected stderr from the
local JSONDecodeError so the subprocess check stays version-stable.
…chmarks-codex

[Feat] Add a reproducible public231 decision benchmark
…t-records

[Docs] Every OneJev-27B run behind ThinkFlowLab#36's deadline table, the three interrupted ones included
…admap

[Docs] Publish the four-workstream roadmap and linked task checklist
Bumps the actions group with 1 update: [astral-sh/setup-uv](https://github.com/astral-sh/setup-uv).


Updates `astral-sh/setup-uv` from 10.2.0 to 10.3.0
- [Release notes](https://github.com/astral-sh/setup-uv/releases)
- [Commits](astral-sh/setup-uv@v10.2.0...v10.3.0)

---
updated-dependencies:
- dependency-name: astral-sh/setup-uv
  dependency-version: 10.3.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: actions
...

Signed-off-by: dependabot[bot] <support@github.com>
…b_actions/actions-a055b02c66

Bump astral-sh/setup-uv from 10.2.0 to 10.3.0 in the actions group
list_agents and decide are read-only (decide open-world), run_agent destructive
and open-world; decide and list_agents advertise typed output schemas. Docs list
every decide model and what a host may auto-approve.

Closes ThinkFlowLab#82
hsliuustc0106 and others added 7 commits October 16, 2026 08:17
…aset-diagnostics

[Fix] Name dataset lines in ticket JSON errors
…pt-reporting

[Eval] Report failures and unknowns in results table
…l-annotations

[Feat] Give s1a-mcp tools titles, behavior hints and typed output schemas
Signed-off-by: linear3735 <heshming@qq.com>
…lity-evidence

[Feat] Re-score saved public231 decisions
…ality ThinkFlowLab#69)

Branch refresh requested by Birfy's approval review: ThinkFlowLab#52 has landed, so the
replay collector is merged forward onto the current main before ready-for-
review. No conflicts.

Co-Authored-By: Claude Code <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants