Skip to content

bench: add Flash Next proxy stream benchmark harness - #13

Merged
novkien merged 2 commits into
masterfrom
codex/flash9-benchmark
Oct 3, 2026
Merged

novkien merged 2 commits into
masterfrom
codex/flash9-benchmark

Conversation

@novkien

@novkien novkien commented Oct 3, 2026 •

Copy link
Copy Markdown
Owner

Overview

Adds a reproducible Flash Next streaming benchmark harness for explicit proxy endpoints. It prepares exact prompt lengths, checks native counters and timings, preserves raw SSE evidence, and records artifact/runtime provenance so incomplete or changed campaigns are not reported as acceptance results.

Addresses #9

Validation

  • python3 -m unittest -v tests.test_bench_flash_next (13 tests passed)
  • python3 -m py_compile scripts/bench_flash_next.py
  • git diff --check
  • Existing live screening is recorded on the issue; this tooling PR makes no optimization speedup claim.

Requirements

  • Contributing guidelines reviewed for this submission.
  • AI usage disclosure: YES - Codex implemented and reviewed this change under the owner-approved Flash Next plan.

Add exact token prompts, native timing validation, raw stream evidence and provenance-aware campaign results.

Assisted-by: Codex
@github-actions github-actions Bot added documentation Improvements or additions to documentation testing labels Oct 3, 2026
@novkien

novkien commented Oct 3, 2026

Copy link
Copy Markdown
Owner Author

CI update for ae14eb10fc26138f54e7c66b473ad15ace533598

The fork's Lint check failed. Flake8 reports NP100 for print() at scripts/bench_flash_next.py:1475 and E402 for the import after sys.path.insert at tests/test_bench_flash_next.py:10.

Labeler and model-naming passed. Editorconfig and two Python type-check jobs were still pending at this observation. The focused 13-test suite, Python compilation, and git diff --check passed locally. This reviewed head remains open and unmerged while the two lint findings are corrected and reviewed.

Use stdout.write for the runner result and mark the test import that follows direct-execution path setup.

Assisted-by: Codex
@novkien

novkien commented Oct 3, 2026

Copy link
Copy Markdown
Owner Author

Validation update for 1ebe411a30851671e59d616fa20d16a66a3bb670

The two Lint findings are corrected on this head. The PR Lint workflow now passes (run 37094369075). Editorconfig, labeler, and model-naming also pass. The two Python type-check jobs are still pending; scoped local type-check, the 13 focused tests, Python compilation, and git diff --check passed.

The PR remains measurement support only and makes no performance improvement claim.

@novkien
novkien merged commit e3b5468 into master Oct 3, 2026
6 checks passed
@novkien

novkien commented Oct 3, 2026

Copy link
Copy Markdown
Owner Author

Follow-up finding: generated fixture padding

A live native preparation reproduced a failure for a generated prose fixture at 2,048 target tokens with seed 731; the nearest lower count was 2,035. In scripts/bench_flash_next.py:942, fit_prompt() derives the accumulated padding with content[len(base_content):]. Padding is inserted before the final question, so base_content is not a prefix of the candidate; when another padding iteration is needed, the extracted suffix is from the question instead of the padding. The generator then fails to reach the exact count.

This is a real limitation in the merged runner's generated-fixture path. PR #13 is already merged; the assigned follow-up is to correct suffix tracking and add a multi-step regression/preparation check under issue #9. This does not change the PR's status as measurement tooling and does not establish a speedup.

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

Labels

documentation Improvements or additions to documentation testing

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants