fix(nim): retain failed tasks in paired quality and latency evidence - #1074
fix(nim): retain failed tasks in paired quality and latency evidence#1074seonghobae wants to merge 50 commits into
Conversation
Signed-off-by: Seongho Bae <me@seonghobae.me>
Signed-off-by: Seongho Bae <me@seonghobae.me>
Signed-off-by: Seongho Bae <me@seonghobae.me>
Signed-off-by: Seongho Bae <me@seonghobae.me>
Signed-off-by: Seongho Bae <me@seonghobae.me>
Signed-off-by: Seongho Bae <me@seonghobae.me>
Signed-off-by: Seongho Bae <me@seonghobae.me>
|
Important Draft PR not reviewedDraft PRs are not automatically reviewed by default.
To automatically review draft PRs, update your CodeRabbit configuration: reviews:
auto_review:
drafts: trueThanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Record pinned source and dataset provenance, distinguish returned API errors from zero-duration escaped exceptions, and reject estimated latency as observed p95 proof. Attach the CC BY 4.0 paper without redistributing dataset rows. Signed-off-by: Seongho Bae <me@seonghobae.me>
Signed-off-by: Seongho Bae <me@seonghobae.me>
Read every row in the pinned generic train and test files using the existing Parquet reader. Record verified aggregate counts and hashes without redistributing prompts or responses. Distinguish blank outputs and repeated attempts from inferred provider failures. Signed-off-by: Seongho Bae <me@seonghobae.me>
…ixes Signed-off-by: Seongho Bae <me@seonghobae.me>
Signed-off-by: Seongho Bae <me@seonghobae.me>
Signed-off-by: Seongho Bae <me@seonghobae.me>
Signed-off-by: Seongho Bae <me@seonghobae.me> # Conflicts: # docs/product-technical-gap-baseline.md
Signed-off-by: Seongho Bae <me@seonghobae.me> # Conflicts: # docs/product-technical-gap-baseline.md
Signed-off-by: Seongho Bae <me@seonghobae.me>
Signed-off-by: Seongho Bae <me@seonghobae.me> # Conflicts: # CHANGELOG.md # docs/product-technical-gap-baseline.md
Signed-off-by: Seongho Bae <me@seonghobae.me> # Conflicts: # CHANGELOG.md # docs/product-technical-gap-baseline.md
Signed-off-by: Seongho Bae <me@seonghobae.me> # Conflicts: # CHANGELOG.md # docs/product-technical-gap-baseline.md
Signed-off-by: Seongho Bae <me@seonghobae.me>
Signed-off-by: Seongho Bae <me@seonghobae.me>
Signed-off-by: Seongho Bae <me@seonghobae.me>
Signed-off-by: Seongho Bae <me@seonghobae.me>
Keep role profiles and propagation unchanged. Require a future validated decision contract before any report can authorize defaults. BREAKING CHANGE: remove PRODUCTION_RMSE_IMPROVEMENT_THRESHOLD; production_default_change_allowed now always returns false. Signed-off-by: Seongho Bae <me@seonghobae.me>
Signed-off-by: Seongho Bae <me@seonghobae.me>
|
이 수정은 근거 없는 승인을 닫는 선행 조치입니다. 실제 작업-정책 행렬, 채점자 보정, 실패 분모, 불확실성, Rust 통계 owner의 released contract와 독립 운영 수용은 여전히 필요합니다. 합성 추정식의 오차 감소를 실측 정확도 향상으로 주장하지 않습니다. 최신 HEAD의 hosted 검사·독립 리뷰·부모 우선 보호 병합이 필요하며 Draft를 유지합니다. |
Signed-off-by: Seongho Bae <me@seonghobae.me>
|
Published documentation-only successor Local successor verification: paper/docstring contract tests 6 passed in 1.98 seconds; diff check and tracked working tree clean. This is not a new-head full-suite claim. Preserved predecessor evidence: exact New-head hosted checks, independent review, protected parent integration, immutable release and prospective measurement remain required. Draft status is unchanged. |
|
Exact-head hosted verification completed for Run https://github.com/ContextualWisdomLab/contextual-orchestrator/actions/runs/34078472161 is terminal SUCCESS: tests/package 101609086026, security 101609085887, fuzz 101609086062 all succeeded. Raw tests/package log: 3612 passed, 2 skipped in 763.56 seconds; benchmark verification 157 passed in 11.75 seconds, 1225 statements/448 branches at 100% and public docstrings 100%; wheel build/install/import step passed. Coverage scope is the CI-selected benchmark module, not the entire repository. Re-read PR state: head remains 77545c3, base ec1c4e6, Draft, no submitted reviews. This is current-head software verification, not independent approval, protected parent integration, release, real buyer accuracy/latency improvement, or psychometric validity. No source change, rerun, cancellation, or provider request was made. |
BREAKING CHANGE: benchmark reports require schema 3 with a prospective evaluation identity plan. Signed-off-by: Seongho Bae <me@seonghobae.me>
…60905' into codex/paired-policy-outcomes-20260905 Signed-off-by: Seongho Bae <me@seonghobae.me>
Signed-off-by: Seongho Bae <me@seonghobae.me>
…60905' into codex/paired-policy-outcomes-20260905 Signed-off-by: Seongho Bae <me@seonghobae.me> # Conflicts: # tests/test_nim_benchmark.py
|
독립 Visual Inspection: 원격 head 4351af9f1b6dca2f97526a46ac6dca28048ff623을 API로 확인한 뒤, 동일 SHA의 docs/nim_benchmark.md#comparison-report-version-3를 실제 Edge Preview 화면과 스크린샷으로 검사했습니다. 버전 3의 계획/관측 정합성, 내부 검증과 독립 사전등록의 구분, 동점일 때 관측·다른 정책 비교를 보존하는 설명, 구버전 보고서 처리 문단이 데스크톱 화면에서 잘림·겹침 없이 표시됐습니다. 이번 검증은 문서 렌더링에 한정하며 모바일·실제 공급자 실행·hosted CI·배포를 입증하지 않습니다. |
Hosted quality coverage failed at 99% because validate_report_schema's empty-identity, invalid-identity, count, worker-mismatch, and unknown skip-reason branches were untested. Keep those incomplete plans from publishing as complete paired evidence.
|
Hosted Exact head is now |
Current exact-head checkpoint — 9f5d0ce (2026-09-07)
9f5d0ce2f7e95eb3bfcaf5cbd4e2a165dab7c86c; base:ec1c4e66512615ea1f00fa044f3bfba787aab567; lifecycle: Draft / Proposed.101628312201failed after a green full suite (3618 passed, 2 skipped) becausenim_benchmark.pycoverage was 99% (2791, 2798, 2809, 2814, 2819, 2827invalidate_report_schema).9f5d0ce2addstest_report_schema_rejects_invalid_evaluation_contract. Local three-file coverage command: 169 passed,1271/480statements/branches, 0 missed, interrogate 100%.Current exact-head checkpoint — 4351af9 (2026-09-07)
4351af9f1b6dca2f97526a46ac6dca28048ff623; base:ec1c4e66512615ea1f00fa044f3bfba787aab567; lifecycle: Draft / Proposed.aa4ff156→f3001927: tied observed worker maxima yield no hindsight winner while measurement-only artifacts remain available. Concurrent commite94dd035adds prospective observation-coverage validation; the merge retains both deltas and their regression fixtures.Current exact-head checkpoint — f300192 (2026-09-07)
f3001927ad28852c5cca874eb3bf61920107e42f; base:ec1c4e66512615ea1f00fa044f3bfba787aab567; lifecycle: Draft / Proposed.f1662dcd→d217c053, followed by integration repairaa4ff156→f3001927, remove the lexicographic model-id tie-break frombest_single_worker_hindsight. A unique observed maximum is required; equal maxima now produce no hindsight winner while the measurement-only report remains available.f3001927repairs that propagation. Fresh exact-head hosted Checks have not materialized yet. Do not merge until source, fuzz, security, and independent model-review gates are terminal on this SHA.Current verified checkpoint — 621cf4d (2026-09-07)
Current pushed head:
621cf4d9cd47d166bd568cfb07a25692c47df210, baseec1c4e66512615ea1f00fa044f3bfba787aab567, Draft. This checkpoint supersedes old current-head wording below without discarding historical evidence.See the exact verification receipt and prospective design. Actual Edge visual inspection confirms the rendered receipt, Draft, pending checks and no-deployment status; this is not product-admin/mobile E2E.
Historical endpoint collection repair — 93bd66d
Historical head:
93bd66d494f8f44a15b9989fe21b075412103da4, historical basea4f693c41f642f960d59bb5a9849eadedd412bd5. All results in this section retain that revision scope and do not describe the current head.Whole-model-ID URL encoding returned HTTP 404 for a public model while the documented author/slug path returned 200. Source
98cdc3ecvalidates exactly two nonempty non-dot segments and encodes each separately using the existing stdlib. Malformed IDs cause no request. Fixed origin, no-update behavior, authentication, routing weights and statistical-owner boundaries remain unchanged.aee1e497: 16 failed / 61 passed / exit 1 / 1.28s.98cdc3ec: 147 related tests passed in 4.80s, exit 0. Separate 77-test coverage run: changed fetch method 18/18 statements and 6/6 branches; default Ruff passes. Not exhaustive input or whole-repository coverage.openai/gpt-4o, with observed attempts still zero. No model inference, background service, or supplied provider credential. This does not establish fleet access, calibrated delivery probability, deployed behavior or buyer accuracy/latency.93bd66d494f8f44a15b9989fe21b075412103da4, parsed JUnit 3599 cases, zero failures/errors. Session 28306 is terminal, not running. Artifacts:/tmp/co-uptime-path.T7v9Rj/child-full-*. The verification JSON's seconds field measures the outer command (1782.32s); the pytest duration above is from the terminal test log. Neither duration is a buyer latency KPI.db4d21da3566 passed/two skipped/739.03s and child5eebac473581 passed/two skipped/754.61s, both exit 0, matching clean heads and parsed JUnit. Those and prior Trivy results predate this path repair.a4f693c4rendered doctoring section was inspected in a real Edge desktop screenshot; the complete new section, counts and limitations are legible without observed clipping or overlap. Current parent and child PR headers/checkpoint bodies were also inspected in real Edge screenshots: Draft status, main/parent target, matching head/base, focused counts and running-full wording are readable without observed overlap. This is not product-admin/mobile E2E.The normal child merge retains parent source/tests/documentation and the child's NIM comparison, observed audit and licensed paper delta. Current collection evidence records alternatives, live scope, prior fulls and remaining gates. RED/GREEN logs, coverage and live collector output are in
/tmp/co-uptime-path.T7v9Rj; original public HTTP baseline is retained in/tmp/co-uptime-input.rjxaB9.Rolling-window dependence, endpoint-route mix, benchmark-prior calibration, judge validation and released-owner/buyer evidence remain open. ADR0034 stays Proposed; ADR0021 acceptance and production defaults are unchanged. Both PRs stay Draft. Independent exact-head review, required hosted checks, parent-first protected merge and immutable release remain gates.
Problem and result
The policy summary counted failures in its denominator, but paired confidence intervals excluded any task where either policy failed. A policy delivering one of two answers could therefore appear tied with a policy delivering both.
The comparison now retains every shared locked task, treats unsuccessful delivery as zero reward, and reports mean delivered-score and terminal-outcome-time differences with paired bootstrap intervals. Raw failed answer scores remain null. Success counts and unmatched task counts expose the comparison denominator; duplicates and invalid measurements fail closed.
In the hand-checked unit fixture, the old apparent tie becomes a delivered-score difference of -0.5. Time differences of -50 and 1950 ms produce mean 950 ms with interval [-50, 1950]. This proves a calculation repair, not improved model accuracy or live latency.
Contract and scope
Historical identity-batch integration at fa8eef9
Historical head:
fa8eef97cd7368e8985a367dc5a7a8e0147fe4d5.Parent #1067:
d740602fdd8c0e4f7d55e4d3ad37b9f560c09e01.This normal two-parent merge retains previous child
9207412eand the new parent identity-batch change. The baseline conflict preserves both complete additions and records the new lineage. Explicit diffs show child NIM source/tests, comparison guide, observed-data audit, and papers are unchanged from9207412e; the parent's orchestration source, psychometric tests, doctoring, and complete profile artifact are byte-identical tod740602f.fa8eef97: NIM comparisons, release/workflow contracts, profiles, paper/planning checks, and psychometric routing. Evidence:/tmp/co-1074-catalog-batch.MIcuwO/focused-pytest.logandfocused-junit.xml.fa8eef97cd7368e8985a367dc5a7a8e0147fe4d5, and the tracked tree stayed clean. JUnit contains 3,483 cases, zero failures, zero errors, and two skips. Evidence:/tmp/co-1074-catalog-batch.MIcuwO/full-pytest.logandfull-junit.xml. Session79929is terminal; do not restart it. Parentd740602fcompleted 3,466 passed, two skipped, exit 0 in 733.63 seconds on its separate clean tree. Hosted acceptance remains separate.fa8eef97Trivy 0.74.0 filesystem scan passed (exit 0), default vulnerability/secret scanners, HIGH/CRITICAL and--ignore-unfixed: zero findings in four lock targets. Evidence:/tmp/co-1074-catalog-batch.MIcuwO/trivy.jsonandtrivy.log. DB UpdatedAt 2026-09-06 07:00:11 UTC, DownloadedAt 07:08:45 UTC, NextUpdate 2026-09-07 07:00:11 UTC; this run reused that fresh DB. Default dev/test exclusions apply, and complete hosted Security acceptance remains separate.Draft status, parent-first protected delivery, and independent approval remain unchanged.
Previous integration at 9207412
Historical head:
9207412ea8ac529d7d2622ab298989ef7899befb.Historical parent #1067:
bfeb73a6c58add7a23df052110593cdf43c0b0db.This normal two-parent merge preserves prior child
402fd63aand the updated parent. The one baseline-document conflict retains both complete additions and adds the current lineage note. There were no source conflicts. Explicit diffs show the child's NIM source changes only the inherited reviewed-cost dates; its test fixture gains the parent's wall-time isolation. The observed-data audit, paper inventory, and separately licensed LLMRouter paper are byte-identical to the preceding child. Parent transport, psychometric source, both harnesses, transport tests, and psychometric doctoring are byte-identical tobfeb73a6.9207412e: NIM comparisons, release acceptance, workflow contracts, reasoning profiles, paper inventory, and planning contracts. Log/JUnit:/tmp/co-1074-current-integration.PBuxSQ./tmp/co-1074-current-integration.PBuxSQ. Session90398is terminal and must not be restarted.--ignore-unfixedin four reported lock targets. A fresh DB download completed at 2026-09-06 07:08:45 UTC (UpdatedAt 07:00:11 UTC, NextUpdate 2026-09-07 07:00:11 UTC). JSON, scan log, and download log are in the same evidence directory. Default development/test dependency exclusions apply; this does not replace the complete hosted Security workflow.bfeb73a6completed 3,461 passed, two skipped, terminal exit 0 in 675.10 seconds, with matching start/end head and clean tracked tree. Its JUnit has 3,463 cases and no failures/errors. Session72900is terminal. This parent result is not a full-suite result for the current child.Historical verification at 402fd63
Historical head:
402fd63a4f6a16558e8cb4e4cd8a3378da3827f6.Historical parent #1067:
ae704491fc24cd4618c709b036cc9353ea9923e5.Ordinary merge
4fc184a020f1d63816f9e847d98a306ff27797f8preserves both preceding childe2f3e2af8e6b723c6870fb6c4dcee2b4f7bc31afand parent histories. Both changelog and baseline additions were retained. Follow-up402fd63acorrects only a document-location word. The child's NIM source, tests, observed-data audit, and licensed LLMRouter paper retain their preceding bytes; parent profile guards, tests, benchmark harnesses, and IRT interpretation document retain their parent bytes.402fd63a4f6a16558e8cb4e4cd8a3378da3827f6, and the tracked tree stayed clean. JUnit has 3,477 cases, zero failures, zero errors, and two skips. Evidence:/tmp/co-1074-measurement-integration.pCjFWW. Session50435completed; do not treat it as an active run..venv/bin/python -m pytest -q --junitxml=<evidence-directory>/junit.xml.git diff --checkpasses. Explicit source comparisons verify preservation of the separate parent and child changes.--ignore-unfixed, with default vulnerability and secret scanners. All four reported lock targets have zero findings.trivy fs --download-db-onlychecked the existing DB, updated 2026-09-05 07:05:47 UTC (cached download 10:07:59 UTC; next update 2026-09-06). This does not claim a new DB download. Default development/test dependency exclusions apply. JSON:/tmp/co-1074-measurement-integration.pCjFWW/trivy.json.47ae9d65completed 3,460 passed / 2 skipped, exit 0, in 675.71 seconds on an unchanged clean tree; later parent documentation-onlyae704491passed 61 checks in 0.62 seconds. Neither result is a current-child full-suite result.Historical child
e2f3e2afcompleted 3,447 passed / 2 skipped, exit 0, in 677.14 seconds, with matching start/end head and clean tree; JUnit contains 3,449 cases, zero failures, zero errors, and two skips. That head also passed 149 NIM checks in 3.55 seconds with 1,223 statements / 446 branches at 100% and configured public docstrings at 100%. Its refreshed Trivy 0.74.0 scan exited 0 under HIGH/CRITICAL + ignore-unfixed with vulnerability and secret scanners; default development/test dependency exclusions apply. Those source/security results remain historical, not evidence of a scan or full run on the new integration.Historical evidence:
/tmp/co-1074-integration.naZc1Z. Earlier1600b1d5had 3,432 passed / 2 skipped in 664.58 seconds. None substitutes for exact-head hosted dependency review, pip-audit, CodeQL, the complete Security workflow, independent review, or protected delivery.Inherited paper distribution correction
The parent audited its six bundled papers. FrugalGPT, RouteLLM, Hybrid LLM, and the fuzzing survey are removed from this current tree too; citations, source links, summaries, and historical hashes remain. HELM and IRT-Router retain explicit CC BY 4.0 sources and attribution. The independently licensed child LLMRouter PDF remains with its own record. No deleted copy was restored by merging, no source-code license was repurposed as paper permission, and Git history or prior release artifacts were not purged.
Public response-time evidence audit
Observed generic-matrix follow-up
Read and hash-verified all 147,924 rows from the immutable generic train/test files, using the existing PyArrow 25.0.1 reader with network denied during decoding. The committed aggregate JSON was checked again against every row. No dependency was installed and no raw prompt or response is redistributed.
Dependency and review boundary
Draft, stacked on #1067. The parent remains open. Local Security and Quality now runs on this stacked PR, including current run 34077430336. This does not establish complete central required-workflow admission, independent review, or protected release; those owner boundaries remain separately tracked. Local validation is not protected-main or hosted acceptance. Require parent integration, complete validation on the then-current commit, and independent review before protected merge.
The coverage audit also repaired two pricing tests that previously accepted an unrelated hosted-access-expiry error. That independent test repair is already carried by the parent; this PR retains its history without duplicating its effective delta.