Logo F# Compiler Guide

Performance-improvement review: validation

Start at the delivery audit and sprint-11 final acceptance. The RED record below is preserved apart from this navigation note. Earlier results are in GREEN and post-refactor replay; C5 and its complete 33-case result retain the actual execution history. Earlier not run, fallback-only discovery and sprint-10 residual obligations describe their historical freezes, not current status. Historical "verified human" labels are superseded by the source-attribution audit, not by changed case expectations.

RED creation recorded: 2026-09-22T11:04:34Z, against repository revision ae294143e5890033fcb717956050a91a6f2ed6e8. Freeze version RED-1 includes the independently verified pre-freeze corrections recorded below. This freezes source-derived expectations before a new reviewer exists. It is corpus validation, not a failed candidate execution. No candidate reviewer, benchmark, compiler build or compiler test is run in this sprint. Source acquisition remains bounded by corpus.md's 2026-04-22 through 2026-09-22 window and 2026-09-22T09:28:34Z cutoff; later capture times do not extend it.

Outcomes

G1-G8 mean the exact eight groups in evidence.md. Outcomes below apply only to named checks. A structural/test-shape pass is not an overall PR approval or an assertion that the tests were executed here.

Packet boundary and immutable inputs

Give the candidate only the selected fenced text packet below, the PR/family/code coordinates/capture/hash fields of its source-pin row (not corpus links), and the diff/source files reconstructed at those pins. Do not give it this document's oracle matrix, coverage/audit sections, evidence rules' source discussion, corpus source notes, PR decisions, review threads, later fixes, or live GitHub discussion access. The runner may fetch pinned Git objects but not mutable PR pages. This keeps the held-back objection/answer out of the reviewer input. Full diffs are reconstructible, not copied into the matrix:

git --no-pager diff --no-ext-diff --no-textconv --full-index --binary $mergeBase $head
git --no-pager show "${head}:src/Compiler/AbstractIL/ilwrite.fs"

Git object syntax uses repository-relative /; filesystem paths use \. Use the merge base for that historical head, not today's main or a final head's merge base. Descriptions are captured final-stage snapshots, with original body hashes/capture times in the corpus. Earlier edited descriptions cannot be recovered: historical code-only pairs deliberately contain no PR description or benchmark table. They score only the designated code/behavior/scope check; missing descriptions in those curated slices are not claims that the real PR lacked a description. Never combine a final description with old code and pretend it was available then.

Source-pin keys are evaluator bookkeeping, not outcome hints. For final-stage packets, the exact corpus description/diff hashes remain the raw-snapshot references; the compact packet is a faithful extraction, not a verbatim historical body. SHA-256 packet hashes below cover the fenced text's UTF-8 bytes with LF line endings and a final LF. Future changes must create a new case/version rather than quietly overwrite these oracles.

Pin

PR / family

Stage and code head

Merge base

Description capture / source snapshot

A

#20352 / FAMILY-inline-copy

Sole submitted head 39167b8148d900fe003aea4cd80f95643fdb691f

c251d06dc38db89fa6df30b0b17a233e0ffe403d

2026-09-22T09:38:11Z; corpus source, body beec79d023bacc943775799a935dc72881228ce22a05d37a664f1f056e7c4d6c

B

#20363 / FAMILY-inline-copy

Final 7679c374c71954ab3fe3e8a99c211e965ea14e07

3ec76a9b9ac738f45012735fce800c831236415d

2026-09-22T09:38:13Z; corpus source, body 36e93794ee1867aefc0e3f0c5655931a327025cbaf1f95d1e0e8f9bf8992d400

C

#20348 / FAMILY-self-profile

Original review 2a9e33aef0bf3df3bab894b332e8f0b55d7d9e08

7b487c5eebd27e92465c775fcee8880f848c3512

Code-only; original description unavailable, not replaced with current body.

D

#20348 / FAMILY-self-profile

Final 95479116c5693f9b96727cc2ac88e965982e621e

cecab991fb8c8e47058c0fad5426235b99f3a293

2026-09-22T10:44:55Z; supplement, body c2833efa181272ea57c4782ca2392a2167dd7a006f52d75358604d6b6c6a00e7

E

#20261 / FAMILY-il-import-retention

Final 9d8662d93106e401d67e480e5fb0d812b04cb57c

4824d92223908a73c008a7e5b015377394f1ce5f

2026-09-22T09:37:54Z; corpus source, body c72a761e6fbebeb3c87112011553475d8ee703471bd22a26d81640db6f6a0739

F

#20353 / FAMILY-self-profile

Original review b77c6c6828547768dcdfed1a04347331fdd12e5c

cecab991fb8c8e47058c0fad5426235b99f3a293

Code-only; original description unavailable.

G

#20353 / FAMILY-self-profile

Final 604669d1a6fd688f6ee0cd1daff3e7020192a080

a29233c3e369b7fd1fd6727b5ea7fad656f12e0d

2026-09-22T10:46:40Z; supplement, body feec10f69bf3e0bddec79e70055f5c87f937d10e56013fba4320f1890e587159

H

#20349 / FAMILY-self-profile

Original review b0770fe05ee57d56bbb292277cc35f20b3ec81f7

c251d06dc38db89fa6df30b0b17a233e0ffe403d

Code-only; original description unavailable.

I

#20349 / FAMILY-self-profile

Final cc98f598d445d5f5c1a2bf962ebd3d82fc599c5c

a29233c3e369b7fd1fd6727b5ea7fad656f12e0d

2026-09-22T10:45:31Z; supplement, body 24566be697793a66875afaf691a814a3e0338513e90d47b848998c8865c3b5f2

J

#19689 / FAMILY-ce-method-cache

Final 0356d321ea15fc963e68d272cd5785363a30e086

2feeea6baa880c86a6ea9b65387c6e9509f5943f

2026-09-22T09:34:52Z; corpus source, body c2b2fb94d8431b454931bcfe994fcd8fd017f30cb811004880e3aa9fc94fd480

K

#20416 / FAMILY-il-import-retention

Final 552a152bbcb7d50c94c3d9d97b49200affc94eb9

7ad874a23f007e5209787f87f2bbf59acfb7875c

2026-09-22T09:38:24Z; corpus source, body 3121d91255ca976ebf80b037d05593ca2e0ff3a07f1b4e6a00b892ffc2ac2846

L

#20244 / FAMILY-pattern-memo

Final da1d79e3b7be82b430df95491dc9bcba5e904960

1361727543589b7a2997cbae48302025cc93564a

2026-09-22T09:37:54Z; corpus source, body 6ac636243a5d5c598f44cbaeaf096817003ba2d7a9114319dfe082d8bc6b39ca

M

#20296 / FAMILY-il-import-retention

Final 86ece46d9e5a7ae67aca866749ae4f377dab5ff1

cecab991fb8c8e47058c0fad5426235b99f3a293

2026-09-22T09:37:59Z; corpus source, body dfa516b5ad4ea0b9ed5120fe6999fcd94a1dc3c6140383abbbaf73c30cfb1dbd

P01

Pin A. Final captured description; no review decisions supplied.
Claim: fuse copyExpr and remarkExpr to avoid the second full tree rebuild.
65,880 LOC / 120 files, --optimize+: allocated MB/compile 10,673 -> 10,352.
Description reports byte-identical emitted IL/PDBs on all checked workloads.
No repetition count, variability, machine/tool versions, workload revision or runnable command supplied.
Diff: optimizer call sites plus pervasive optional range/debug-point handling in the remapper and an exported internal signature; no added tests.

P02

Pin B. Final captured description.
Claim: fuse generic inlining copy and type instantiation using remapExpr/mkInstRemap.
Release net11.0, 65,880 LOC, GC.GetTotalAllocatedBytes(true), 3 runs x 4 iterations.
build | allocated MB/compile
base | 10,662
changed | 10,105
Description reports 671 EmittedIL/Optimizations passes, six PrintFunction environment failures also on base, and differential IL/PDB identity for listed generic/loop/closure/byref/SRTP cases.
Reflected-definition resource-name tag changes with the unique-number count; payload hash reportedly unchanged.
Two diff hunks in one localized optimizer function plus release note; remapping implementation unchanged.
No raw runs, dispersion, hardware/SDK identity, workload revision or runnable benchmark command supplied.

P03

Pin C. Historical code-only scope check, not a reconstructed PR description.
SortTableRows packs Val/Tag/original position into int64 keys to preserve stable ordering.
It fills zero-created key and result arrays with indexed loops; System.Array.Sort sorts the keys.
Inspect the complete pinned diff and SortTableRows callers. No timing evidence is supplied in this slice.

P04

Pin D. Final captured description and code.
Four self-profiled compiler hot-path changes: metadata sorting, postponed target emission, nullness reuse, type-hierarchy common-subexpression elimination.
Metadata sort: 65,536 rows, 10.6 -> 2.5 ms and 6.55 -> 1.05 MB allocated; 64 rows, 2.99 -> 0.43 us.
Nullness application: about 153,000 allocations removed per 65k-LOC compile; sampled own CPU 0.52 -> 0.38 s.
Hierarchy loop exclusive CPU 214 -> 160 ms. Target-emission microbench claims 2.6-7x speed and about half allocations.
Description claims output identity. Repetitions/error, environment, exact workload/compiler benchmark commits and runnable commands absent.
SortTableRows uses array comprehensions for keys/results at this head.

P05

Pin E. Final captured description. Claim: less retained memory after ParseAndCheckProject.
Mean of 3 runs in fresh processes per project.
Project | before MB | after MB
consoleapp | 33.25 | 31.11
Oxpecker | 69.65 | 65.77
IcedTasks | 47.10 | 44.93
FsToolkit | 69.97 | 67.86
Fantomas.Benchmarks | 64.26 | 61.33
Prime | 100.99 | 99.44
Fantomas.Core | 107.74 | 106.21
Fantomas.Core.Tests | 140.20 | 137.61
FSharp.Common | 261.81 | 251.68
fcs | 1226.73 | 1223.99
FSharp.Common has 489 references. Description reports total allocation down 1-34 MB/project and analysis time unchanged within noise.
Two tables per reader: string-heap cache grows from zero; computed-name interning removed.
Author reports about 3.0 MB fixed buckets versus at most 0.24 MB duplicated names (2,077 strings).
No machine/runtime/tool versions, spread/raw runs, executable command, subject revisions, benchmark binary commit mapping or precise retained-heap collection protocol supplied.

P06

Pin F. Historical code-only behavior/test check. No historical description recovered.
GetParamAttribs memoizes IL parameter attributes per ImportMap with WeakMap/MemoizationTable.
Key equality uses physical ILMethodDef and extension-view flag, ignoring the supplied range; instantiated declaring types bypass memoization.
Added test compares instance/static Enumerable.Select results using "if a <> b then failwith".
The test pipeline ends with compile |> shouldSucceed.
Inspect OptionalArgInfo.FromILParameter, including metadata import and error location.

P07

Pin G. Final description/code.
Claim: eliminate repeated IL parameter-attribute computation on overload-heavy compilation.
ComputeILMethodParamAttribs allocated 477 MB -> 0; description also says "~810 MB total".
fsc --times table: 99.75% hits; 5,341 adds; 0 updates; 2,167,099 hits; 5,341 misses; 0 evictions.
Output reportedly byte-identical. No elapsed-time table, variability, environment or executable workload command supplied.
Cache uses physical ILMethodDef plus extension flag and ignores range; instantiated declaring types bypass memoization.
Instance/static extension-call test now ends with compileExeAndRun |> shouldSucceed.

P08

Pin H. Historical code-only behavior check; historical description not recovered.
applyBrFixups replaces sorting by offset with List.rev.
RecordReqdBrFixups prepends the current code position, then emits an instruction byte and placeholders.
No execution result is supplied in this slice.

P09

Pin I. Final captured description/code.
Branch fixups: replace sorting by offset with List.rev.
65,880 LOC / 120 files, net11 Release; about 46,465 calls/compile, 88% empty, longest list 25.
step | before | after
time ms/compile | 0.595 | 0.240
allocated KB/compile | 1444 | 634
Author reports 139,370 method-body order comparisons, zero mismatches and zero ties.
RecordReqdBrFixups now documents strictly increasing recorded positions and asserts them in Debug.
No raw measurements, variability, machine/SDK details or reproduction command supplied.

P10

Pin J. Final captured description/code.
Centralizes CE builder-method lookup in a per-expression dictionary, routes method-presence checks through it and adds missing-member diagnostics tests.
Lookup changes AtMostOneResult to AllResults and substitutes the builder range for per-call lookup ranges.
Description includes a Release net10.0/osx-arm64 build log and two passing component tests.
No before/after performance measurements, workload or repetitions are supplied; build duration is not a comparative benchmark.
No explicit elapsed-time speedup is claimed.

P11

Pin K. Final captured description/code.
Claim: share imported project CCUs rather than pickle/unpickle each consumer.
Solution | projects | before retained MB | after retained MB
ReSharper.FSharp | 10 | 385.94 | 304.64
Fantomas | 8 | 350.42 | 275.79
FSharp.Compiler.Service | 14 | 879.43 | 818.39
FsToolkit.ErrorHandling | 8 | 87.77 | 69.36
Oxpecker | 16 | 131.67 | 114.24
Prime | 5 | 112.22 | 97.93
IcedTasks | 7 | 96.97 | 92.37
consoleapp | 1 | 29.38 | 29.37
Author says handover alone moves the FCS solution by 2 MB, not 61 MB; most saving comes from dropping language version from the import reuse key.
Checker creation flags changed relative to earlier numbers; exact flags, repetitions/error, environment and commands absent.
Final code creates unresolved thunks for names absent from the consumer; captured description still says missing names keep the producer's CCU.
Final diff includes sharing/language-setting/race changes and tests for concurrent consumers, diagnostics and imported surfaces.

P12

Pin L. Final captured description/code. Claim: avoid guarded-or-pattern compilation blowup.
End-to-end compilation with --optimize+; author states about 2.4 s fixed startup.
N | before time / image size | after time / image size
6 | 3.7 s / 8 KB | 2.6 s / 8 KB, identical IL
8 | 2.5 s / 17 KB | 3.8 s / 12 KB
12 | 3.2 s / 183 KB | 2.5 s / 25 KB
16 | 9.6 s / 2.9 MB | 2.8 s / 61 KB
20 | >90 s, did not finish | 3.3 s / 126 KB
24 | stack overflow | 3.9 s / 221 KB
Emitted-runtime shape: promoted --optimize+ uses static calls/no allocation; --optimize- uses a local FSharpFunc closure and one call/allocation per shared residual.
Byref-like results are not promoted. Ordinary nonpromoted matches reportedly keep identical deterministic IL; promoted quotations intentionally expose joinThunk.
Author reports matching active-pattern evaluation counts for two inputs at N=6/8/16. Tests assert execution, guard bindings, byref/rethrow and quotation behavior.
No generated-program elapsed-runtime benchmark, repetitions/error, environment or exact benchmark compiler SHAs supplied.

P13

Pin M. Final captured description/code. Claim: share imported assembly CCUs across projects.
Real whole-solution options graph; all projects checked and held.
Solution | projects | retained off MB | retained on MB
ReSharper.FSharp | 10 | 1547.2 | 1002.2
Oxpecker | 16 | 226.8 | 190.4
FsToolkit.ErrorHandling | 8 | 218.3 | 206.7
IcedTasks | 7 | 194.6 | 184.5
Fantomas | 8 | 665.7 | 658.3
Prime | 5 | 215.1 | 212.9
FCS.slnx | 14 | 2444.9 | 2443.7
consoleapp | 1 | 30.9 | 30.9
Warm ParseAndCheckProject time: median 9 samples across processes, rotated order.
ReSharper 13.28 -> 12.10 s (-8.9%); Fantomas 3.88 -> 3.90 s (+0.7%, author says inside spread).
Retained repetition count, numerical time spread, raw runs, hardware/SDK and exact benchmark commit/command mapping not supplied.
Final code uses typed dependency-closure/configuration keys, weak entries and per-entry strong dependency ownership; default on with opt-out.

S01

Request-required synthetic control. No real PR, commits or human source.
Description: "Faster."
No benchmark numbers, workload, configuration, environment or code evidence supplied.

S02

Request-required synthetic control. No real PR or human source.
Claim limited to generated closure count for one unchanged input/flags.
Supplied before/after IL inventories show 12 -> 0 generated closure classes.
Supplied executed assertions cover the input's values, evaluation order and exceptions.
No runtime-speed claim or runtime benchmark; no new retained state.

S03

Request-required synthetic control, not real measured data.
Repeated identical requests: median time 100 -> 80 ms, 30 runs, spread 1 ms on each side.
Changed code appends every request graph to a process-rooted list; no removal, cap or release path.
Post-full-GC retained MB for 100/200/400 requests: baseline 20/20/20; changed 120/220/420.
All request objects are otherwise dead; heap-root trace points to the list.

S04

Request-required synthetic control. No real PR.
Only a spelling correction in a Markdown guide; diff contains no code, configuration, generated files or performance claim.

S05

Request-required synthetic control, not real measured data.
Claim: faster compilation, same input and Release binaries.
30 comparable fresh-process runs per side: baseline mean 100.0 ms, 95% CI [98,102]; changed mean 99.8 ms, 95% CI [97.8,101.8].
No further distribution or practical-workload benefit evidence is supplied.

S06

Request-required synthetic control, not real measured data.
Claim: allocation improvement, not speed.
Same input/flags and machine; 30 runs on identified baseline/changed binaries, executable command and raw runs supplied.
allocated B/op | baseline 256 (all runs) | changed 128 (all runs)
elapsed ns/op | baseline 100 +/- 2 | changed 100 +/- 2
post-release retained bytes and GC pause distribution do not regress.
Supplied behavior assertions pass; no ordering/API/generated-output change.

S07

Request-required synthetic control for generated-program runtime, not a real benchmark run.
Fixture binaries runtime-base/runtime-changed use identical F# input, Release optimization and runtime.
The stipulated benchmark report identifies Windows x64, .NET 11, the compiler binary hashes and "fixture-run --input range-32767 --repeat 30" with all raw results.
Same 32,767-element input: baseline 280 us mean (95% CI 275-285); changed 80 us (95% CI 78-82); allocated 393,680 -> 131,088 B/op.
Generated IL intentionally differs. Supplied runtime assertions preserve result, evaluation order and exceptions, including empty and singleton input.
The supplied memory/GC checks show no relevant regression. No compiler-build speedup is claimed.

Frozen expectation matrix

Human URLs below are evaluator-only. Context from unverified user-account prose supplies a request-required control grounded in actual code, not a human-derived oracle. No PR lifecycle state is passed to the candidate as a shortcut.

Case

Split/family/PR/revision

Claim and coverage tags

Human oracle URL or request-required control

Frozen input/evidence available to reviewer

Expected row/outcome

Exact evidence needed or prohibited finding

Actual run/result

DEV-01

development / inline-copy / #20352 / A

compiler allocation; withdrawal; broad scope

Author withdrawal, PERF-08

P01 + A diff/context

G7 needs evidence

Request narrower approach or justification of pervasive range/debug handling against the gain. No fabricated maintainer rejection, false measurement or correctness bug.

not run (RED expectation frozen)

DEV-02

development / inline-copy / #20363 / B

real reported allocation win; narrower alternative

Request-required PERF-02/08/10; same family as DEV-01

P02 + B

G7 pass for localized helper reuse; G2/G4/G8 needs evidence for reproducibility

Do not repeat the broad-remapper objection. Request missing raw spread/environment/command, not repetitions already supplied. Do not assert all bytes identical despite resource-name caveat.

not run (RED expectation frozen)

DEV-03

development / self-profile / #20348 / C

scope; simpler idiom; before review

Suggestion, PERF-09

P03 + C only

v2: G7 not applicable for the manual-loop performance-necessity comparison subcheck

This slice makes no claim that manual filling is necessary for speed. A simpler-comprehension suggestion is optional and non-blocking; no suggestion is also acceptable. Do not require comparative timing, assert equivalent/superior speed, or invent a syntax-only correctness blocker.

not run (RED expectation frozen)

DEV-04

development / self-profile / #20348 / D

resolved scope; compiler microbench/CPU

Acceptance, PERF-09; request PERF-02/03

P04 + D

G7 pass for that resolved simplification; G2/G3/G8 needs evidence

Do not request already-adopted comprehensions. Ask for tabular reproducible measurements/variability; no whole-build speedup from isolated CPU samples.

not run (RED expectation frozen)

DEV-05

development / il-import-retention / #20261 / E

strong table; retained versus allocated; noise-level time

Request-required PERF-02/03/04/05; uncertain/model-associated review excluded

P05 + E

G3 pass for retained-memory metric alignment; G2/G4/G8 needs evidence

Recognize ten-row table and three fresh-process runs. Ask for precise collection protocol, versions/commits, commands and spread. Do not claim missing table/repetitions or require a time win.

not run (RED expectation frozen)

DEV-06

development / self-profile / #20353 / F

cache; behavior proof; compile-only test

Request-required PERF-06/11; attribution-limited source

P06 + F

G6/G8 needs evidence

Execute the runtime conditional, not merely compile it; inspect omitted-range error paths. Missing proof is not a demonstrated runtime failure.

not run (RED expectation frozen)

DEV-07

development / self-profile / #20353 / G

resolved runtime-test shape; allocation/hit ratio

Request-required PERF-03/06/11; resolution context

P07 + G

G8 pass only for executing-test shape; G2/G6 needs evidence

No repeated compile-only finding. Request result/reproduction details and range-sensitive malformed-metadata proof if claiming diagnostic equivalence. Hit ratio is not elapsed-time evidence.

not run (RED expectation frozen)

DEV-08

development / self-profile / #20349 / H

ordering; invariant; before review

Request-required PERF-07; attribution-limited request

P08 + H

G6 needs evidence

Document or assert producer ordering and check ties/empty input. Do not claim List.rev is wrong when producer order supports it.

not run (RED expectation frozen)

DEV-09

development / self-profile / #20349 / I

resolved invariant; real reported time/allocation win

Request-required PERF-07; resolution context

P09 + I

G6 pass for invariant documentation/assertion; G2/G8 needs evidence

Stop the missing-producer-invariant finding; retain only actually missing measurement/reproduction details. Do not claim the debug assertion or differential run was executed here.

not run (RED expectation frozen)

DEV-10

development / ce-method-cache / #19689 / J

prose-only caching; closed-unmerged; other author

Request-required PERF-01/02/06/12; no human closure explanation exists in packet

P10 + J

G1/G2 needs evidence for performance justification

Name workload/cost and before/after evidence if presenting cache as an improvement. Do not turn build logs into speed data, invent a claimed time win, or infer performance rejection from closure.

not run (RED expectation frozen)

DEV-11

development / il-import-retention / #20416 / K

FCS; multiple changes; causal attribution; stale description

Request-required PERF-02/10; author table is not a human oracle

P11 + K

G1/G7 pass for explicitly limiting handover attribution; G2/G8 needs evidence

Recognize 2 MB versus 61 MB isolation already supplied; ask for exact flags, baseline/changed benchmark mapping, spread/commands and correction of stale fallback description. Do not attribute all 61 MB to handover or repeat fixed producer-fallback code as current.

not run (RED expectation frozen)

DEV-12

development / pattern-memo / #20244 / L

compiler win; generated closure/runtime trade-off; smaller-input slowdown

Request-required PERF-03/04/05/06; author-reported table, not human oracle

P12 + L

G3/G6 pass for distinguishing output modes/proof shape; G4/G5/G8 needs evidence

Retain N=8 slowdown and unoptimized closure allocation; request repetitions/spread and relevant emitted-runtime cost evidence. Do not assert a measured user-program speedup, require identical IL for promoted code, or invent a binder-stamp miscompile.

not run (RED expectation frozen)

DEV-13

development / il-import-retention / #20296 / M

strong FCS timing/retention tables; repeated work; non-win retained

Request-required PERF-02/03/04/05; auduchinok author data, provenance not upgraded

P13 + M

G3 pass for separating metrics/methodology; G2/G4/G8 needs evidence

Recognize nine rotated timing samples; ask for numerical spread and actual missing retention/reproduction metadata. Preserve Fantomas +0.7% as reported inside spread; no universal -35.2% memory or -8.9% speed claim.

not run (RED expectation frozen)

DEV-14

synthetic development / SYN-faster / no PR

weak prose; unsupported finding control

request-required synthetic control, PERF-01/02/12

S01 only

G1/G2/G8 needs evidence

Request named workload, before/after timing table, commits/config, repetitions/error/environment. Prohibit invented correctness defect.

not run (RED expectation frozen)

DEV-15

synthetic development / SYN-closures / no PR

closure structural claim; no measured speed

request-required synthetic control, PERF-03/06/11

S02 only

G3/G6 pass for supplied structural/behavior proof; elapsed-speed check not applicable

Do not assert measured speedup or require runtime timing when the claim is limited to closure count.

not run (RED expectation frozen)

DEV-16

synthetic development / SYN-retention / no PR

one good metric masks unbounded retained state

request-required synthetic control, PERF-05/12

S03 only

G5 risk/blocker

Cite process-rooted append-only list and linear post-GC growth; measured time win does not remove the lifetime risk. Not merely needs evidence.

not run (RED expectation frozen)

DEV-17

synthetic development / SYN-docs / no PR

genuine docs-only negative control

request-required synthetic control, PERF-01/12

S04 only

G2-G5 metric checks not applicable

State no performance/code change; no compiler/GC benchmark demand.

not run (RED expectation frozen)

DEV-18

synthetic development / SYN-noise / no PR

noise-level speed claim

request-required synthetic control, PERF-04

S05 only

G4 needs evidence

Ask for enough data to resolve the claimed effect/practical value. Overlapping intervals alone do not prove equality or a regression; no arbitrary percentage threshold.

not run (RED expectation frozen)

DEV-19

synthetic development / SYN-allocation / no PR

allocation win with unchanged elapsed time

request-required synthetic control, PERF-03/05

S06 only

G3/G4/G5 pass for the stated supplied claim

No demand that elapsed time improve; no end-to-end speed claim or universal certification.

not run (RED expectation frozen)

DEV-20

synthetic development / SYN-runtime / no PR

measured generated-program runtime gain; intentionally different IL

request-required synthetic control, PERF-02/03/06

S07 only

G3/G6 pass for the stipulated runtime/semantic evidence

Do not demand byte-identical IL or advertise a faster compiler. The positive timing dataset is synthetic and was not executed.

not run (RED expectation frozen)

Coverage and limits

The cases separate reported real improvements from reproduced results: none of these benchmarks was rerun here. Paired versions of #20348, #20349 and #20353 stay within FAMILY-self-profile; #20352/#20363 stay within FAMILY-inline-copy. Their pairs are not independent family votes or holdout coverage.

Required category

Cases / rules

Boundary

Need/workload, weak prose, description/table quality

DEV-01/02/04/05/10/14; PERF-01/02

Build/test output is not comparative performance evidence.

Strong tables, real reported wins, noise

DEV-02/05/09/12/13/18/19; PERF-03/04

Strong presentation does not fill absent variability, protocol or binary provenance.

Resource trade-offs; good metric masking regression

DEV-05/12/13/16/19; PERF-05

Real tables preserve worse/flat cells; demonstrated unbounded-retention blocker is synthetic, not a real human rejection.

Compiler/FCS, cold/warm, repeated/incremental work

DEV-04/05/11/12/13; PERF-01/03/05

Fresh-process project checks do not establish incremental/cache lifetime behavior.

Closure/generated-program runtime gains and costs

DEV-12/15/20; PERF-03/05/06

Real #20244 supports runtime shape/trade-offs, not measured user-program speed. Positive elapsed-runtime control DEV-20 is explicitly synthetic.

Withdrawal/scope/helper reuse and resolved findings

DEV-01/02/03/04/08/09; PERF-07/08/09/10

Author withdrawal is verified; no independent maintainer performance rejection is invented.

Behavior/diagnostics/runtime assertions

DEV-06/07/08/09/11; PERF-06/07/11

Unchanged APIs and successful compilation are not universal semantic proof.

Unsupported findings and applicability

DEV-10/14/15/17/19; PERF-12

Closure counts do not imply speed, closure does not imply rejection, docs do not need benchmarks.

No verified human-derived precedent is claimed for a numerical significance threshold, thread-pool/starvation diagnosis, peak-memory protocol or comprehensive API/compatibility matrix. These remain conditional request-required rules, not omissions. No unverified/model-associated review is used to manufacture real regression/rejection coverage. Synthetic controls cover the specified decision boundaries, not untouched real-world holdout performance.

Additional runtime-source search: on 2026-09-22, gh api --method GET search/issues --paginate --slurp exhausted these exact queries, all with per_page=100 and incomplete_results=false: repo:dotnet/fsharp is:pr created:2026-04-22..2026-09-22 "ns" in:body (4), the same with "BenchmarkDotNet" (1), and with "runtime" (77), one page each. New non-bot descriptions #20500/#20007/#19672/#19713/#19714 concern correctness/docs/platform support; #20605 fixes concurrency in a test-only runtime builder but supplies no comparative runtime measurements. Dependency-update bots supply no human measurement evidence. Previously inventoried/reserved descriptions were not used for new answers, and no reserved feedback was opened. No new unreserved measured-runtime case was established; DEV-20 fills that positive boundary honestly rather than consuming a holdout.

Local audit

Candidate results remain not run (RED expectation frozen) regardless of corpus-audit success. The creation commit is the commit first adding this file (git log --diff-filter=A -- docs\performance-improvement-review\validation.md); the parent revision and RED recording time above deliberately do not masquerade as a self-referential commit hash.

Packet hashes

Packet

SHA-256

P01

e08dee7997e9436902dc59d995447040d27ef5b3b17799ee516822018449cc1f

P02

10b6555413209b8b4eb30842c3a37ba186bf0a23bdca86d06c0890a6d79e69e7

P03

6f22f926034f14e3992d2398319b40680caf14c952231cbcf34b77ec83d8950d

P04

053dd3a71d38ccb3b05cd14f73a21cd6269828e64e9f938ed8a9ed5f9531e40d

P05

2d1ea6e520883e8d370d8a20793504bc6f0f125fcc0646bc26a0978cc0fa3a20

P06

b2e781847671b55f709c27a4974da6247b93ee63639c0b066071b926609528e5

P07

407637e3feb770ca22c1994e902fb69547473effc8ad72ec9e4d0bf22c73ce49

P08

f23a9ecb687cb4efa71d18ff2848793ac89f7e827343d2107547556504ab4bff

P09

3ea419fdc2435d4519f70205ea0a970c9d5ca33a6b7fd65b80fcf79b4bcdee35

P10

7dec86a848d89a04853d9f480d7fe4986aa20344a7421118545a483d69ae12a1

P11

b183381a12d35e03730a7831c82fbdced2eb383bf1dccc3dfbbb4f36710054a4

P12

a90a9cb03eed72017bb2e376716958472b84a4b67d647debad4654e012a86878

P13

600f168c2eeefba739315685b1fa878768904deef5dda207b4c52f37d018398e

S01

133e2bd370963042a95ca1609827d4b07a9bca5465eb1182790f3a8fc4d114b2

S02

684fbcef1590a409a16999f99dbd977922cbcaf40e2374567757629a614fc94e

S03

8e9b35903673991f691b5e0d9414470848927c5f87db03e68ba79bddd8afa1bc

S04

68a0f5f9b03752baa197cd6e50a42347c4f2d2fd2422583453bc8e63760c1ffd

S05

0ad6e29ed963a8f666c6492036d65bdf49e5927e79a41fa4c84f1e040e4a36a5

S06

2350211d18cf7a766d62fb34333a4c3e923ed29913888ab95d0c8922a6ad8a5c

S07

5013c61f564bafd2b3c68b6a8557c2041d51aa2721a6128e4ab63d3ecc5e184b

Historical code-only diff hashes: C e363eb3317a2d35e1cbf18ac207fd4f018f0febd81029fd8ea3f5487c1fec3cd; F 4586d191ad39d6e3c676e747acdf42b2bcb2632b4f857381f0e42ca86cc72351; H 6a117c9153590f23f4edbf86031b0f0de58842bda227efe5d4bd223de8d13da2. The remaining final diff hashes are in the corresponding corpus records/supplement. These were recomputed from Git, not inferred from final PR file lists.

Executed corpus checks

Checks below concern sources and frozen fixtures, not candidate performance. Temporary collectors/checkers and raw responses remain in session 28a5997c-c817-48a9-8f00-4a45e40edbf0, files, not in the repository.

Check actually executed

Observed result

Complete development reading

All 40 descriptions/final diffs, review-stage code differences and surrounding implementation, issue comments, reviews/decisions, inline replies and resolved/outdated threads inspected. The separate 29-PR mining pass covered 155 paths / 9,196 diff lines and verified 515 historical artifact hashes; parent inspected the remaining 11 packets. No new human-composition provenance established in those 29; unverified/model exclusions retained.

python ...\files\audit_red.py at 2026-09-22T11:02:57Z

All 40 description hashes and full Git diff hashes matched; 196 paths agree with metadata/files/Git; all original/review commit objects resolve. 115 reviews, 86 issue comments, 48 unique inline comments and 30 threads reconcile; outer/nested cursors exhausted and REST/GraphQL inline identities equal.

Dates and supplemental collection

No included development pull update after 2026-09-22T09:28:34Z; raw original source audit checked prose/edit timestamps too. The six new packets exhaust all REST channels and both GraphQL pagination levels. Separate GraphQL description refetch matches all six bodies and preserves edit metadata.

Split isolation

485 unique inventory PRs / 321 disjoint families; 40 included development / 82 included holdout. Exactly the six self-profile PRs removed from the reserve; all other 94 reserved rows byte-for-byte unchanged from parent revision. No rule, case answer or calibration uses a remaining holdout family.

Structural fixture checks

Unique PERF-01..12, all eight ordered group headings, unique DEV-01..20, valid rule/case/packet references, all four outcome definitions and all candidate rows unexecuted. Full SHA/merge-base coordinates for 13 real packets resolve; code-only review diffs hashed separately. Table column counts, fences, relative documentation links and anchors checked.

Semantic metric/category review

Conditional mapping covers elapsed/latency/throughput, memory footprint/peak/retained, allocations, GC, generated artifacts/closures, CPU, threads/concurrency, startup/build and workload measures. Reviewed each missing-evidence expectation against its packet; preserved supplied repetitions, worse/flat rows, intentionally changed output, and author-versus-reviewer boundaries. No significance threshold or universal benchmark matrix introduced.

Source-link checks

Every cited PR/comment/review URL in the two new documents resolves to the matching acquired API identity/channel, not merely a well-formed URL. Raw benchmark links not supplied by the source remain missing; no claim that unposted results were verified.

git diff --check

Passed during document construction; no production/test/project/agent/workflow changes. Compiler build/test and formatting sweep intentionally not applicable to this documentation-only sprint.

Independent source verification, 2026-09-22T10:58:36Z-11:06:52Z

A separate verifier re-fetched the two human observations and related development comments, inspected original/final code, recomputed historical merge bases, and checked the packet/oracle paraphrases. Confirmed roles, tentative wording, actual fixes, metric boundaries and all 20 packet contents. Found the two corrections below; no new human attribution established. L/M used archived bodies/local Git after fresh GETs became rate-limited; resolved/outdated flags came from complete captured threads, not a refreshed transition history.

Post-correction rerun, 2026-09-22T11:13:00Z

audit_red.py passed again with the corrected P02 hash, all 20 packet hashes, 20 unexecuted cases, 12 rules, source identities/revisions and unchanged holdouts. git diff --check and git diff --cached --check passed; staged paths were exactly corpus.md, evidence.md and validation.md in this directory.

Pre-freeze correction trail (no candidate executed): P02 v2 corrects the author's one-hunk shorthand to two diff hunks in one function; its superseded draft hash was b1db180a161b316c68cccadbcba9ad77e6c26ac355e10b28d3f5c3bf3f36d392. DEV-03 v2 replaces the draft's conditional needs evidence oracle with the named not applicable subcheck: P03 never defended manual loops as necessary for speed, and the actual reviewer made a tentative non-gating suggestion. P03's input/hash is unchanged. These are source-validation corrections before initial commit, not adjustments to make a candidate pass. Future input/oracle changes require another explicit version.

GREEN and post-refactor replay

Executed 2026-09-22, from prerequisite commit 1eeae24016d (RED creation revision/time above unchanged). The implemented agent supplements the existing reviewer; no compiler, benchmark, build, API or test implementation changed. No benchmark or compiler test was executed. The input remains RED-1, P02 v2, DEV-03 v2: all 20 packet hashes, 13 historical base/head pairs and 20 oracle rows were checked against the prerequisite commit and remain unchanged.

Invocation and isolation

The session's callable custom-agent catalog did not contain performance-improvement-review. All runs used the explicitly permitted isolated general-purpose task fallback, loading the complete saved candidate instructions; named-agent discovery is not claimed. Runtime identity: GitHub Copilot CLI 1.0.87, GPT-6 Astra / gpt-6-astra, inherited runtime preference with no model override. Each invocation had a fresh context and one case, never a batch of cases or a prior review.

Each reviewer received the exact candidate snapshot, a rule/metric extract retaining rule IDs, conditional requirements and human/request provenance but excluding historical discussion/resolutions, its exact fenced packet, sanitized source-pin coordinates, and the complete pinned Git diff. Reviewers inspected surrounding implementation/tests/signatures with git show at those pins. Synthetic artifacts were explicitly stipulated inputs, not invented real executions. Reviewers were prohibited from reading this matrix, the corpus, full evidence source discussion, other cases/results, later fixes, live PR pages or holdout feedback. Their only write was the review transcript in session storage; there were no GitHub writes or repository changes by reviewers.

Verbose transcripts, candidate snapshots, extracted inputs, full diffs, packet/diff hashes and audit JSON remain under session cf1b8168-aaf3-4d7a-93ad-058713c498d3, files\<run>\DEV-XX\. Task names are <run>-NN; the single output-format retry is refactor-final-09-retry. Repository summaries below preserve the actual conclusions and evidence requests without depending solely on that archive.

Candidate

Exact file SHA-256

Run directories and UTC interval

Actual invocations

C0, initial

0993f6ab4d8efb194805c9dc4b8a04eb091f2a1fa9cc0beabaa7a8416b034d8f

green, 11:28:09-11:42:58

All 20; calibration failures retained, not declared GREEN

C1, calibrated GREEN

9e1b4a3a13a2242370ecc1eda4246e971a40ad4d06a33303cb89106f87bc6582

calibration, 11:44:01-11:46:53; green-final, 11:47:05-11:56:36

Affected DEV-01/03/08, then all 20

C2, first compaction

48709f7ac1e7fb04c6ff1c2b343a8e2b3fb0d8d7f184909140424d850d751ed9

refactor, 11:58:23-12:05:50

DEV-01 through DEV-14; stopped on a reproduced DEV-08 miss, not represented as a full pass

C3, final compact candidate

4c5d4bd0000fac52c0e1e5de9825e95891dd364c8e301200cd7952406c667954

refactor-check, 12:06:44-12:08:59; refactor-final, 12:09:16-12:22:19

Affected DEV-08, then all 20; DEV-09 additionally rerun for Markdown validity

There were 79 actual invocations, including failed/partial calibration and the formatting retry, not 79 independent cases. Run starts are packet/candidate freeze timestamps; ends are saved-output timestamps, not benchmark durations. G below means C1's complete green-final run; R means C3's complete refactor-final run, with the valid DEV-09 retry. The C3 hash is the candidate reserved for subsequent blind evaluation; no reserved feedback was opened to tune it.

Calibration changes and evaluator decisions

Observed output

Evaluation and correction

C0 DEV-08 accepted the consumer comment and explicitly said no producer comment/assertion was needed.

Miss. Pin H documents ordering at applyBrFixups, not RecordReqdBrFixups. The frozen source request targets the producer. C1 distinguishes source equivalence from preserving the producer contract; affected replay and full GREEN caught it.

C0 DEV-03 offered an optional comprehension suggestion without an explicit not-applicable comparison; several cases combined sound metric selection with missing methodology.

No invented speed claim, but insufficiently explicit scoped outcomes. C1 separates supported subchecks and unclaimed syntax comparisons; it does not require comparative timing for a mere readability suggestion.

C0 DEV-01 promoted a quotation-cache traversal difference to a blocker without establishing a harmful observable result.

Unsupported escalation. Pinned code confirms the difference, not its material harm. C1 requires caller/precondition/lifetime/consequence tracing; later outputs request targeted equivalence proof without a blocker.

C2 DEV-08 again treated the consumer comment as sufficient; C2 DEV-06 also emitted an unescaped pipe in its table.

C2 was rejected. C3 explicitly makes the producer-contract subcheck needs evidence when neither producer documentation nor assertion exists, while permitting a separate equivalence pass. The affected replay and all-case replay passed that boundary.

C3 DEV-09's first transcript used an unescaped F# pipeline inside a table cell.

Semantically correct but invalid five-column GFM. Preserved as output-first.md, SHA-256 prefix 6d531d13ae6c; fresh isolated retry under the same C3 instructions, with a GFM pipe-escaping reminder, produced the accepted output. No expected answer or previous transcript was supplied.

DEV-06/07, DEV-11 and DEV-13 discovered additional risks from pinned code.

Evaluator re-read the mechanisms below. These are source-supported extensions, not literal matches to every frozen row label and not new human-derived rules. No oracle was rewritten; no historical test failure or observed reproduction is claimed.

Additional risks were evaluated against code, not against approval/closure status or later fixes:

These extensions do not turn the source corpus into a set of verified historical defects or human objections. The expected missing-evidence checks remain required, and were still found. C1/C3 did not invent blockers in the no-data, structural-only, noise, docs-only or allocation-only controls.

Durable actual-result matrix

Every G/R review contains the eight ordered groups and separates proof, unknowns and action. The entries below summarize the scored subchecks, not blanket verdicts for entire PRs. G/R denotes agreement on the described conclusion; differences are explicit. The final column identifies candidate/run and the first 12 hex characters of the actual transcript SHA-256 for audit correlation.

Case ID

Expected outcome/evidence

Actual outcome and concise finding

Supporting source

Match/miss/unsupported finding

Candidate hash/revision and run metadata

DEV-01

G7 needs evidence: narrow or justify pervasive remarking against gain

G/R: needs evidence; 321 MB/compile (~3.01%) is plausible, not demonstrated significant. Ask for repetitions, spread, protocol/binaries and a narrower approach or shared-remapper justification. Quotation-splice/attribute traversal differences need equivalence tests, not an asserted defect.

P01/A; PERF-02/04/06/08; pinned Remapping.fs quotation/attribute paths versus standalone remarkExpr; human withdrawal URL in frozen matrix

Match; C0 unsupported escalation corrected

G C1 ab85da6200f6; R C3 19f34d7c8fe0

DEV-02

G7 pass; G2/G4/G8 needs evidence

G/R: localized helper reuse pass; 557 MB/compile (5.22%) saving is reported. Credit 3 x 4 iterations, 671 passes and output comparisons; request missing dispersion, boundaries, environment/binary/workload provenance and executed optimized quotation/reflected-definition coverage. Resource-tag change alone is not breakage.

P02/B; PERF-02/08/10/11; Optimizer.fs:3893-3912, unchanged remapper and resource producer/consumer

Match; no repeated broad-remapper objection

G C1 56b41a616dff; R C3 7f28a864a0f9

DEV-03

Manual-loop necessity comparison not applicable; no timing prerequisite

G: explicit G7 not applicable subrow. R: G7 overall needs evidence for bundled attribution, but explicitly says no syntax-speed claim exists and that comparison is not applicable as an approval prerequisite. Comprehensions remain optional; stable packing is supported within its bounds.

P03/C; PERF-09/10; original SortTableRows and callers; tentative human suggestion in frozen matrix

Semantic match; R nests the not-applicable subcheck in the action cell rather than a separate row; no oracle change

G C1 84610e5b3c45; R C3 2266f73bb3cd

DEV-04

Resolved idiom pass; methodology/reproduction needs evidence

G/R: comprehensions already adopted, localized mechanisms pass; metric choice supported but reproducible table/configuration/error/results missing. No whole-build inference from CPU samples. R additionally asks to expose the descending-fold contract at IntMap.fold, separately from the resolved syntax concern.

P04/D; PERF-02/03/07/09; ilwrite.fs, IlxGen.fs, IntMap.fold implementation chain

Match on frozen checks; extra producer-contract request is evidence-seeking, not a blocker or repetition of the comprehension suggestion

G C1 813eb9808e72; R C3 7c68ea2d319e

DEV-05

Retention metric pass; collection/provenance/spread needs evidence

G/R: recognize ten-row table and three fresh-process runs. Retained-memory metric pass; request collection/root boundaries, spread, environment/binary mapping, commands, and repeated-reader trade-offs. Report 1.53-10.13 MB savings without demanding a time win.

P05/E; PERF-02/03/04/05; per-reader cache/interner changes and existing reader tests

Match; neither table nor repetitions falsely reported absent

G C1 d1fd4a7687d4; R C3 1a3ad6dc283a

DEV-06

Execute conditional and inspect omitted-range paths; missing proof is not an observed failure

G/R: G8 needs evidence, because compile/shouldSucceed never executes the conditional. Successful key guards pass; ask for hit/miss allocation and lifecycle evidence. G6 also reports source-derived cached-failure risk/blocker S1, with a two-range/repeated-check diagnostic test request.

P06/F; PERF-03/05/06/11; ExtensionMethodTests.fs:848-860, Compiler.fs execution helpers; S1 above

Required concerns caught; supported extension, not literal G6-label match. No fabricated executed failure

G C1 fb231abf7b39; R C3 c9dc818da0ab

DEV-07

Executing test shape pass; metadata/range proof needs evidence

G/R: compileExeAndRun test shape pass, no compile-only accusation. Allocation metric is appropriate; reconcile 477 MB versus ~810 MB and supply repeatability/provenance. Hit ratio is not timing. S1 adds error-path risk/blocker, independent of reported successful output identity.

P07/G; PERF-02/03/06/11; final extension test, comparer/lazy/import/error path

Required concerns caught; supported S1 extension, not proof from precedent

G C1 a559ef0ca5e9; R C3 b7e17d0501d6

DEV-08

Producer invariant needs evidence; do not call reversal wrong

G/R: separate current ordering equivalence pass from producer-contract needs evidence. Prepend plus byte emission establishes distinct descending offsets, including switches; consumer comment does not document/assert the producer obligation. Ask for producer comment/assertion and targeted execution, not a sorting fallback.

P08/H; PERF-07/11; RecordReqdBrFixups, byte-buffer advancement and consumer; frozen source request

Match after both calibration corrections; no claim of observed ordering failure

G C1 d525656ab7d4; R C3 5a6708fc01a6

DEV-09

Producer invariant pass; measurement/reproduction needs evidence

G/R: producer comment and Debug assertion already satisfy the contract; 139,370 reported comparisons credited, not claimed executed. Report 0.355 ms and 810 KB/compile savings; request repetitions/error, measurement boundaries, binary/environment/commands and targeted results.

P09/I; PERF-02/07/11; producer ilwrite.fs:1671-1687, existing branch/switch IL/PDB tests

Match; formatting-only retry under unchanged C3 accepted

G C1 3edb6313e7a5; R C3 99383303316a

DEV-10

Workload/value and comparative evidence needs evidence; no invented speed claim

G/R: build log/two diagnostic tests are not comparative performance evidence. Request workload and before/after data, AllResults and range equivalence checks. G additionally traces completion-callback retention; R does not establish a leak. No closure-based rejection or explicit time-win claim is invented.

P10/J; PERF-01/02/05/06; CE lookup/discovery and diagnostic tests

Match; auxiliary risk-assessment scope differs without an unsupported blocker

G C1 ca73e4d97c09; R C3 800258dbf8b0

DEV-11

Credit 2 MB versus 61 MB isolation; request matched flags/provenance and stale-prose correction

G/R: credit the bounded handover contribution and relevant workloads; ask for matched flags, repetitions/spread, lifecycle and targeted results. Code uses unresolved thunks, not producer fallback. G gives scoped attribution pass; R discusses it within G7 needs evidence for maintenance justification, not as missing attribution. Different S2 source scenarios add risk/blocker.

P11/K; PERF-02/05/06/10; pinned handover tests/binding and S2 publication paths

Frozen concerns caught; R row grouping differs; supported additional risks, no claim all 61 MB comes from handover

G C1 e807235d4d39; R C3 f383830e4961

DEV-12

Distinguish compilation/runtime/proof shape; preserve N=8 slowdown and closure trade-off

G/R: primary compiler metrics and inspected safeguards pass; G4/G5/G8 needs evidence. Preserve 2.5->3.8 s at N=8, ask for spread and both-mode emitted-runtime costs. Credit executable assertions; rethrow is compile-only and quotation rendering is not execution. No identical-promoted-IL demand or invented binder miscompile.

P12/L; PERF-03/04/05/06/11; pattern memoization, new guard tests and quotation rendering tests

Match; reported large-input wins are not confused with generated-program speed

G C1 7a70078438b2; R C3 9178866ffff4

DEV-13

Separate retention/time pass; missing numerical spread/retention protocol/provenance needs evidence

G/R: credit nine rotated timing samples and whole-solution held-memory data. Preserve Fantomas +0.7% as reported, request numerical spread rather than assert regression. No universal 35.2%/8.9% gain. S3 adds a concrete cyclic-root cache-key risk/blocker; no-sharing "costs nothing" also needs support.

P13/M; PERF-02/03/04/05/06; S3 key/hit/registration chain

Required metric concerns match; independently supported code-risk extension

G C1 7fd4c51df3ca; R C3 75acd7a3504f

DEV-14

G1/G2/G8 needs evidence; no invented defect

G/R: "Faster" needs operation/workload, pinned diff, controlled before/after time, repetitions/error/environment/binary provenance, and scoped behavior evidence. Missing resources/code are unknown, not an established defect.

S01; request-required PERF-01/02/12

Match; no unsupported blocker

G C1 1930b873dc79; R C3 bbac760fbc1f

DEV-15

Structural/semantic pass; elapsed-speed check not applicable

G/R: inventories support 12->0 closure classes and executed assertions support values/order/exceptions. Timing/GC policy is not applicable to the count claim; no runtime benchmark demand or measured speed/allocation assertion. Unseen implementation is not certified.

S02; request-required PERF-03/06/11

Match; legitimate passes and inapplicability

G C1 db2e3f0d99f9; R C3 7d3259f3a691

DEV-16

G5 risk/blocker with causal retention proof

G/R: 100->80 ms latency does not excuse process-rooted append-only ownership. Post-GC 120/220/420 MB versus 20/20/20 and the root trace establish ~1 MB/request unbounded retention. Require bounded/released ownership, repeated retention checks and remeasurement, not merely more evidence of a possible leak.

S03; request-required PERF-05/12

Match; supported blocker, explicitly synthetic

G C1 2d0b257b7128; R C3 e2d4f3a3bcfa

DEV-17

G2-G5 not applicable

G/R: spelling-only Markdown change has no performance claim or executable/configuration effect. G1-G6 not applicable, scope/recommendation pass; no compiler, GC or benchmark demand.

S04; request-required PERF-01/12

Match; no unsupported defect or universal metric demand

G C1 5472e9f9514f; R C3 43c2c87d8e80

DEV-18

G4 needs evidence, no threshold/equality/regression inference

G/R: 0.2 ms/0.2% lower mean with supplied uncertainty is insufficient. Request difference uncertainty/run distributions and practical value. Overlapping intervals alone prove neither equality nor regression; no arbitrary minimum percentage or run count.

S05; request-required PERF-04

Match; appropriate narrow metric pass with significance gap

G C1 8e312ef6278a; R C3 e313052e1270

DEV-19

G3/G4/G5 pass; unchanged time allowed

G/R: 256->128 B/op across 30 stipulated runs supports 50% allocation reduction; timing stays 100 +/- 2 ns/op. Retention/GC/behavior stipulations pass; workload value can still need evidence. No required time improvement or broader speed claim.

S06; request-required PERF-03/05

Match; supported allocation-only win accepted

G C1 cae53a267375; R C3 c47b10351267

DEV-20

Runtime metric/semantic pass; changed IL permitted

G/R: 280->80 us (71.4%) and 393,680->131,088 B/op (66.7%) support the stipulated generated-program claim. Executed result/order/exception and empty/singleton assertions plus memory/GC checks pass. Different IL is intentional; no compiler-build speedup inferred.

S07; request-required PERF-02/03/06

Match; positive control remains explicitly synthetic, not a rerun benchmark

G C1 6dfc951f9d0b; R C3 a862dfc08ad8

Compaction and local checks

C1 had 11,290 bytes / 1,397 whitespace-delimited words; C3 has 9,634 bytes / 1,169 words (14.7% fewer bytes, 16.3% fewer words). The duplicate gate list/output-group list became one ordered guidance table. Detailed historical provenance stays in the linked evidence/corpus documents. No metric family, metadata requirement, read-only boundary, behavior/lifetime gate, or outcome definition was removed. C2's producer-contract regression was measured and corrected, not assumed away.

Check actually executed

Result

Candidate identity/frontmatter

Exact unique performance-improvement-review name; only name and focused quoted description; no model/tool fields. SHA-256 matches C3. Callable catalog lacked the new name, so discovery remains fallback-only as documented.

Relative links and references

All ten relative links in the agent and small skill addition resolve. PERF-01..12 remain in evidence; DEV-01..20, packets and source pins reconcile. Markdown links deliberately use URL separators; filesystem operations use Windows paths.

Actual review shape

All 20 G and 20 accepted R transcripts have G1-G8 in order, full group names, the four exact outcome strings, and nonempty proof/unknown/action columns. Rejected C2 and first C3 DEV-09 malformed tables are retained as failures, not edited into passes.

Semantic checks

Evaluator read actual requests/proof and compared frozen checks. Required concerns and all seven controls were caught. Group-level presentation varies; the matrix records nested subchecks and source-supported risk extensions rather than claiming 40 exact verdict matches. No unsupported blocker remains in accepted outputs.

Read-only/holdout boundary

No benchmark commands, compiler builds/tests, code edits or GitHub posts by reviewer instances. No expected matrix, held-back objections, later fixes or reserved feedback supplied. Corpus/evidence files unchanged; existing reserve remains intact.

Integration

Skill diff is only the four-line Performance claims heading/reference. Dimension selection, dispatch and non-performance paths are unchanged; no new skill or permanent harness/package.

Whitespace/surface

git diff --check passed. Only the new agent, skill reference and this validation update changed, all within the allowed five-file surface; source corrections were unnecessary.

Product validation applicability

Artifact-only sprint: compiler build/test, dotnet fantomas . and product release notes are not applicable under the explicit sprint limits and release-note sink map. Actual reviewer replays and artifact checks above are the validation.

Blind holdout freeze

Recorded 2026-09-22T13:22:53Z, before opening reserved feedback. Candidate C3 SHA-256 is 4c5d4bd0000fac52c0e1e5de9825e95891dd364c8e301200cd7952406c667954, at repository revision ac7bd61c998f0bade4aeaa00e676b87bedb6397e. The evidence table remains at 1eeae24016db78d6236636017992f5ff655c67be, file SHA-256 b8e0a424f05c3fdc91f3d9aef900be56142537daaa469811122618ca0bb01ec3. The historical evidence cutoff remains 2026-09-22T09:28:34Z; retrieval time does not extend it.

The reserve and category assignments were committed in ae294143e5890033fcb717956050a91a6f2ed6e8, before drafting the candidate. The RED correction in 1eeae24016d moved the entire exposed self-profile family to development. The 20 development packets and their expectations/runs above are preserved. The 94 reserved rows comprise 82 performance candidates, five earlier/context rows and seven real applicability controls; they are not 94 executed holdouts. Neither the inline-copy nor the IL-import-retention nor the self-profile family is eligible for independent holdout credit.

The current runtime catalog lists the named performance-improvement-review agent. Actual invocation and source acquisition results will be recorded separately; catalog presence and this freeze are not a test pass.

Isolation correction before holdout execution: the required complement-boundary document, expert-reviewer.md, already contains #20388's precise covariant-empty-array failure and repro. Git history verifies that example at the pre-drafting checkout; it was introduced by fce51f6d26358cb5c2431f84c9884aceba7bb154 (#20511), on 2026-09-11. Its being an existing-agent example rather than human evidence does not make the example unseen. Conservatively promote all of FAMILY-core-empty-array to development; do not credit #20388 as an independent holdout. No C3 rule changed in response to this discovery. Other selected untouched families must establish behavior/API-neutral coverage.

Final development regression

Actually executed: 20 fresh named performance-improvement-review task invocations, final-01 through final-20. Packet freeze: 2026-09-22T13:24:57Z; first completed output: 13:26:17Z (DEV-17); last: 13:55:55Z. Runtime: Copilot CLI 1.0.87, GPT-6 Astra (gpt-6-astra), inherited configuration, no model override. This is not the earlier fallback run. C3, all 20 RED packet hashes and all historical diffs are unchanged. Every invocation received only C3, the same sanitized rule/metric extract, its own input and pinned diff/source access; no oracle, other review, reserved feedback or later fix.

Raw transcripts and machine-readable identities are outside the repository in session 36233952-cdbf-4056-984e-1fe93e32d7a3, files\final-regression\DEV-XX\output.md. The table preserves scored actual findings; transcript SHA-256 prefixes identify exact outputs. Source pins, full input hashes, expected subchecks and withheld URLs remain in the frozen matrix above. No tests or benchmarks in the PRs were executed; these are reviewer executions.

Case / input / source

Frozen expectation

Actual C3 result and evidence request

Evaluator result

Transcript SHA-256 prefix

DEV-01 / P01 / A, #20352

G7 narrow or justify shared-remapper complexity

needs evidence: justify common-remapper maintenance against 321 MB/compile (~3.01%), supply spread/provenance and traversal-equivalence assertions. Quotation/attribute traversal differences are not called a defect.

Match; no unsupported blocker

e093204886c6

DEV-02 / P02 / B, #20363

Localized reuse passes; missing reproducibility does not

Scope/helper reuse pass; credit 3 x 4 iterations, 671 reported passes and 557 MB/compile. Request raw variability and actual binaries/configuration. Resource-name change alone is not breakage.

Match

25cddffd5dbc

DEV-03 / P03 / C, #20348

Syntax-speed comparison not applicable

Explicit not applicable comprehension-versus-loop subcheck; bounded stable sorting and current producer ordering pass. Code-only slice needs measurements, not proof that a syntax preference is faster.

Match

5e12bdfb31fe

DEV-04 / P04 / D, #20348

Recognize adopted idiom; ask for methodology

Comprehensions already present; no comparison prerequisite. Scoped equivalence/scope pass; metadata, spread and targeted results needs evidence. Separately requests producer-boundary ordering documentation.

Match; no stale syntax finding

0412c81e262b

DEV-05 / P05 / E, #20261

Retention metric supported; protocol/spread missing

Credits ten rows and three fresh-process runs; reports 1.53-10.13 MB differences without demanding faster time. Requests collection/root boundaries, matched binaries, numerical spread and repeated-reader trade-offs.

Match

78b6fe810afb

DEV-06 / P06 / F, #20353

Execute conditional; inspect omitted-range error paths

Compile-only conditional needs evidence; successful key partition/scope pass. Source-derived failed-lazy diagnostic suppression adds S1 risk/blocker, with two-location/repeated-check assertions requested.

Required checks caught; same supported S1 extension, not an observed failure

87803be25be2

DEV-07 / P07 / G, #20353

Recognize executing test; retain measurement/range gaps

Executing harness pass; reconcile 477 MB versus ~810 MB and identify boundaries/repetitions. Hit rate is not time; same S1 failure-caching scenario adds risk/blocker.

Match on frozen concerns; S1 persists independently of test-shape repair

f32e0cad700c

DEV-08 / P08 / H, #20349

Producer contract needs evidence; reversal not inherently wrong

Current reverse/sort equivalence pass, including ties and empty/singleton cases; producer documentation/assertion needs evidence. Consumer comment is insufficient for that separate contract.

Match

165db233c047

DEV-09 / P09 / I, #20349

Stop resolved producer-contract objection

Producer comment/Debug assertion pass; credit reported 139,370 comparisons. Request repetitions, boundaries, binary/environment provenance and targeted results; no repeated missing-contract finding.

Match

d13ceea52912

DEV-10 / P10 / J, #19689

Request value/comparison, not fabricated speed/rejection

Build logs and two passing diagnostic tests are not performance comparisons. Requests workload, AllResults/range equivalence and callback-lifetime evidence; establishes neither leak nor measured slowdown.

Match

35e4c9f83176

DEV-11 / P11 / K, #20416

Credit contribution isolation and resolved fallback; ask for metadata

Explicit attribution pass: about 2 MB handover, not all 61.04 MB. Correct unresolved-thunk behavior credited. Requests matched flags/spread/lifecycle results; S2 abandoned publication claim adds source-derived cancellation risk/blocker.

Required concerns caught; supported S2 extension

16460db896c5

DEV-12 / P12 / L, #20244

Keep small-input slowdown and both output modes

Credits large-input compiler benefit and executable assertion shapes. Retains N=8's 2.5->3.8 s and unoptimized closure trade-off; requests variability and emitted-runtime cost. No identical-IL or measured runtime-win claim.

Match

f131e7e62ef4

DEV-13 / P13 / M, #20296

Separate retention/time; preserve flat/worse workloads

Credits nine rotated samples; Fantomas +0.7% is reported inside spread, not an established regression. Requests numerical spread, retention/reproduction/lifecycle data. S3 cyclic-root identity adds risk/blocker; API-version policy is a separate evidence request.

Required concerns caught; supported S3 extension

816e5db31280

DEV-14 / S01

Weak prose needs evidence, not a defect

All groups needs evidence; name operation/workload, comparable metrics and implementation. No invented leak, regression or correctness blocker.

Match

09ab19e0809c

DEV-15 / S02

Structural/semantic proof passes; no timing prerequisite

Stipulated 12->0 closure classes and executed behavior assertions pass; runtime timing not required. Missing user value/diff/provenance limits broader endorsement only.

Match

b0a13d754251

DEV-16 / S03

Demonstrated retention regression is material risk

G5 risk/blocker: root-traced append-only ownership plus 120/220/420 MB versus flat 20 MB, about 1 MB/request. A 20% time improvement does not excuse it; require bounded/released ownership.

Match; synthetic, not human precedent

f8fe4b459539

DEV-17 / S04

No-claim docs have no performance metric gate

All groups not applicable, with no compiler/GC/runtime measurement request. Accepts spelling-only stipulated scope without claiming an underlying patch was inspected.

Match on required inapplicability; harmless G7/G8 presentation differs from earlier runs

0ea08661dd35

DEV-18 / S05

Noise-level claim needs evidence, no threshold

G4 needs evidence: 0.2 ms/0.2% difference requires difference uncertainty and practical value. Overlapping intervals prove neither equality nor regression.

Match

a2806ba6a10b

DEV-19 / S06

Accept allocation-only win despite flat time

G3/G4/G5 pass: 256->128 B/op across 30 stipulated runs; no demand for a timing improvement. Remaining value/diff questions do not invalidate that claim.

Match

89fee4b3f9aa

DEV-20 / S07

Accept runtime/semantic proof with changed IL

Runtime/behavior/resource checks credit stipulated 280->80 us and 393,680->131,088 B/op. Intentional IL changes accepted; missing broader value/implementation/method details do not become blockers.

Match

18b292ee9980

Evaluator score: 20/20 cases meet their frozen semantic acceptance checks, zero missed required concerns, zero unsupported blocker findings. This is a small development regression suite, not independent holdout precision/recall. The outputs contain 224 scoped table rows: 85 pass, 116 needs evidence, 17 not applicable, six risk/blocker. Six risk rows represent five case-level findings in DEV-06/07/11/13/16; DEV-16's final recommendation repeats its G5 finding. These reduce to four mechanisms (S1 in two revisions, S2, S3, synthetic retention), not six independent bugs.

The evaluator checked the new explicit caller/precondition/consequence traces against the S1-S3 mechanisms documented above. The new S1 example is a nongeneric declaring type's generic method with an optional parameter but no metadata constant; it distinguishes the existing first-call import error from the new suppression on a cached failure. S2 states cancellation after successful construction but before publication, and the observable loss of sharing on later retries until clearing, not a fabricated hang or leaked CCU graph. S3 states eligible mutually referencing IL roots and loss of one assembly's type environment. No oracle was revised and C3 was not repaired.

All 20 saved tables actually passed the ordered full-name G1-G8, five-column, nonempty proof/unknown/action and exact-outcome checks. Diff hashes matched the frozen inputs. The earlier 79-invocation archive was also re-audited successfully, including its preserved rejected C2 formatting failure; no old output was relabeled as this run.

Maintenance procedure

Freeze a new date window and exact cutoff before discovery; retain source bodies, pagination totals/cursors, edit/provenance metadata and base/head/review revisions. Normalize related attempts and stacks by PR family, quarantine automated or uncertain prose, and reserve fresh families before drafting. Add the input and source-backed oracle before changing a rule. Freeze candidate/evidence/input hashes, execute each case in an oracle-free context, and record actual output, invocation identity and evaluator misses/unsupported findings. A rule change prompted by a holdout promotes that family to development and requires untouched replacements. Rerun the complete cases, check links/discovery and split/coverage accounting, and retain raw transcripts outside the repository. Do not convert unavailable categories or synthetic controls into real-human holdout credit.

C3 blind execution and retained failure

The first blind execution is not an acceptance pass. On 2026-09-22, ten fresh named performance-improvement-review invocations (blind-c3-01 through blind-c3-10) used the unchanged C3 and sanitized rule extract above. Runtime: Copilot CLI 1.0.87, GPT-6 Astra (gpt-6-astra), inherited configuration, no override. Outputs were saved from 14:23:10Z through 14:29:29Z in session c8f07943-58a7-4cdd-9a76-ce0b8d398079, files\blind-c3-NN.md. Each context received one historical packet, full diff and pinned source access; no oracle, source report, withheld feedback, later fix or other result. The frozen evaluator oracle predates these runs: SHA-256 ddfc494f450358cf527cdbf08c45066d9fca111efc84aa2aa74b8399400f59dd, in the preceding session's files\holdout-study\oracles.md.

Independence correction: HOLD-01/02 (#20388) are development regressions, not holdouts. Its final ancillary closure-characterization change also connects FAMILY-inline-closures; conservatively treat HOLD-03 (#20367) and that entire family as development. This overrides the earlier source collector's eight-connected-family holdout count. The initial execution therefore contains three development cases in one connected family, and seven blind cases in seven other families. Account-authored but unverified prose and explicitly model-attributed feedback do not become human precedent merely because the reviewer agrees.

Frozen source expectations

These are compact transcriptions of the pre-execution oracle, not expectations inferred from output. Source composition remains uncertain unless explicitly model-attributed below. All ten cases are real-PR request-origin controls, not ten verified human objections. H identifies the exact input revision in the identity table below.

Case

PR/family

Coverage

Withheld source or request-origin control

Input available at reviewed stage

Expected outcome and evidence request

Prohibited unsupported finding

HOLD-01

#20388 / core-empty-array; development

API-neutral, behavior, allocation

Covariance comment, attached to an explicit AI review; request-origin compatibility oracle

Historical code-only full diff, old signatures, singleton tests; no later description

risk/blocker: empty covariant string[] passed as obj[] loses runtime type in copy/conversion, making a formerly successful downcast fail. Request covariance/runtime-type and freshness-contract coverage.

No measured speed regression or claim nonempty copies all fail.

HOLD-02

#20388 / core-empty-array; development

Mixed-scope, API-neutral, behavior

Same compatibility control; documentation concern and resolution, uncertain composition

Final description, nine-file diff, guarded copies, revised signatures, runtime-type tests

Specific repair pass: runtime-type guard, four copy/conversion cases and explicit empty sharing. Quantified allocation/nonempty cost needs evidence; distinguish ancillary test edits and obsolete opt-out description.

Do not repeat the earlier covariance defect or claim unchanged fresh-array docs; no attribution of all files to the win.

HOLD-03

#20367 / inline-closures; development

Generated artifacts, compiler allocation

Author description; empty approval supplies no substantive human oracle

Full inline/signature diff; sampled 240 + 172 MB to zero; +1.5 KB DLL; deterministic-output assertion

Surgicality/control flow pass; sampling, repetitions, variability, binaries/input/environment/commands needs evidence. Distinguish sampled zero, closure elimination, compiler DLL growth and output identity.

No mandatory speedup for an allocation-only claim, leak inference or universal identical-IL gate.

HOLD-04

#20544 / string-concat

Mixed-scope, no-claim applicability

Description explicitly attributes generation to Claude; request-origin control

Complete 30-file literal cleanup and compatibility context

Unclaimed speedup/benchmark gate not applicable; separate shipping constants from docs/tests/scripts. Verify referenced Core/SDK availability without asserting a failure.

No assumption all .fs changes execute or every changed path makes shipping code faster.

HOLD-05

#20444 / tc-reuse-tests

Test-only, no-claim applicability

PR, author DedSec256, not auduchinok; reviews uncertain/model-associated

Eight structural-edit cache-characterization tests, utility and cache-key context

No shipping benchmark requirement; purposeful executing assertions pass. Recognize explicit output name isolates assembly-name invalidation; implicit-name full recheck is characterization, not a new regression.

No claimed compiler speedup, newly fixed invalidation or universal runtime metrics.

HOLD-06

#20436 / prompt-docs

Docs-only, no-claim applicability

PR; empty approval is not a rule

Complete seven-Markdown-file guidance diff and description

Performance metrics not applicable; inspect textual scope/consistency without executing embedded prompt instructions.

No compiler speedup, benchmark requirement or fabricated source/runtime change.

HOLD-07

#20119 / vs-work-reuse

IDE latency, API-neutral, behavior, lifetime

Retention concern belongs to an AI review; race withdrawal has uncertain composition

Final one-file diff/body, reactor, delayed-reader ownership and callers; no later replacement

risk/blocker for per-version strong dictionary with no per-version eviction; request repeated-edit/close retention proof. CPU/latency and hit/invalidation evidence missing; distinguish dependent version from description. Mailbox serialization defeats the alleged first-use race.

No observed OOM, unsupported race or assumption later author prose repaired this head.

HOLD-08

#20587 / ci-turnaround

Build time, parallel-resource trade-off

PR; no captured feedback

Linux matrix/template, full splitter and SDK-integration context

Turnaround needs evidence: comparable critical-path/job timings, repetitions/spread, queue/capacity, batch balance and total compute; verify equal coverage and SDK integration once in batch 1.

No invented twofold win, skipped tests, hung pipeline or universal runtime allocation measurements.

HOLD-09

#18509 / vector-sum

Generated-program runtime, tables, behavior, older-active

Modern runtime without SIMD request, earlier 2025 context, composition unverified; overload question at 20d258fcb6bb5fa01408483c7a4928596adcf46f

Final sum-only diff, author tables with units/error/environment, separate Framework results, tests/harness

Credit strong tables. Request same modern runtime with hardware intrinsics disabled, non-array sequence shapes, precise job/binary/revision mapping, final reproduction, arithmetic/exception proof and public-helper justification.

No stale average exception or direct-LINQ Framework slowdown charged to the final fallback; closure is not rejection proof.

HOLD-10

#20507 / rich-text-api

auduchinok, API-addition, no-claim applicability

PR; empty body, robot-marked/empty approvals

Four-file immutable display-context API addition, signature/surface baseline and consumers

Metrics not applicable; additive immutable wiring pass; request true/false/default formatting assertions without inventing failure.

No API-neutral label, invented speedup/global mutation or benchmark gate.

Actual outputs and evaluator comparison

All inputs below use C3 and the frozen pre-holdout rules. Packets live in preceding session 36233952-cdbf-4056-984e-1fe93e32d7a3, files\holdout-study\inputs\HOLD-NN; suite.json additionally hashes every source file and coordinate manifest. HOLD-01..09 were frozen at 2026-09-22T13:38:40Z, HOLD-10 at 13:55:31Z. HOLD-08's subsequently supplied pinned TestSplit context is recorded in the pre-execution manifest; no oracle text was supplied. Historical diffs are reproducible from the merge base/head below; compact claims and exact required evidence are preserved above rather than relying on archive paths alone.

Case

Head / historical merge base

Input SHA-256 / full diff SHA-256

HOLD-01

1748e9e10df376dfbe2913c9a1f5bd639604aeff / ca80019e9dddd2b31b1e6de72eec0bf669b828c3

48032622dad14f7b8c830431c2414e205d1d6fe74d141cee7fe5a4aecd364aab / fbdddc57b9539a9e93fe577985157a22f28b98daeac3a41f7c6e5897942c046c

HOLD-02

cd3b1fa9127c5e391e25d804355ab5e11b2cb67f / c9213bc6f2ebae94a59d563319483c6ce8c527c7

253b3c16f06add382385915be0017d967fe1363b8945a638b2b9372c96945271 / 2a3499ecc47460d8d8488d8e2f62ace51ea32229aa18c5132940bc14093d1828

HOLD-03

2951feb63ba84fe6cb61e8066614c7a8d9628001 / e631ed7f4f210cb3dade65b1d6341bb7106e51bb

bbb310d0c7fc8b97f29daf1c31a6f3f0b39997669cdd855bda426cacaa4eb9ae / 357c13060e6546c625af9ae4c9910641a2d511f3df562203fac465d9fd0b7562

HOLD-04

65e050d94d470213b55910dd7eccaad27ec79f5e / 17f8eb7d0691d30d6fc0dbcc7977ac15f9e7d5d2

850ca9381f8c8778063a030b904fc4ea91fccfd5ab3f98e9b9151fb0806118dd / fb30d3b9542d84dbbfbd8cf1156a34ce3bcb1550f7fe6f4b1402361527ff7bcb

HOLD-05

b12cb3628a924d5ac8e5d77295aa805b662c63b6 / a29233c3e369b7fd1fd6727b5ea7fad656f12e0d

5059588b0a45d762a37083ed40bcb20fc5b8263746a99088517afd2200cfecdc / 6683ed3f9acbf0f51307ecafefb4e9d2d466ebb530eb9c9ba1a678b8c5c153d8

HOLD-06

8576a9b2c6eb8b80e95f050c6b5fb685f5166146 / ca80019e9dddd2b31b1e6de72eec0bf669b828c3

fa2f3b3622ee415d8208de8163f8fd0ef1ef6497f2c829388107b42055282322 / e80f60dab25f1fe3dec798c30f8196e9c63915d2fa3be888e129e23801fdafdc

HOLD-07

25f732737ad94832d2e56dd6b8d133531d3e0a31 / 20382698ea0985a650248838dc5a21e50c6203d9

2946fad8082fb7a7ebc09d031b98a2004f904afb674d1176b01f9f89cfbdd741 / 152b75f9bf13ca41186104e63f2190d5a9c730646880b7a9dfe8357b777f2590

HOLD-08

a4e67d6eb582ae21b2718a20f6408ffa225fcec1 / b561c33dbf43796cd3e342223b8212c009053d40

0df2f71c513d06997c2ed62eca9ddfb29e0828eadeb3a3b65f0f6579d628cf35 / 42af43b1a18b7507973b99f0e42ba9a34d30f5e58b70e7030624d457dd103520

HOLD-09

7e5c5d16de76ecc0b87f8da9bed6b07438d65573 / e84544a66c3085efd3e3f1eee00beb77708dd8f3

d10258f7b2962daf4e1b2fd70bd7c579269b76be5f17898efbb413859d31a993 / 474a03b49c82fc9080321043724666ab9a6d6acd35ccf15e8338e770ebf0dcee

HOLD-10

ece9ed9c27947a3e4297e7614266d960424bc542 / 4bb6faf078b467ee53ab6006e47b928a94c65cf1

9f7281bb98ede2c73036d941255ac39a7513b6489e7865c271e6b8e3ef0ee975 / 876511990b2ca6de973bc74a574853b9012d5f75ecfffd4104c2e69bb557d6d6

The evaluator read the outputs separately from reviewer execution. Exact transcript hash prefixes below refer to unedited saved output, not hand-authored replacements.

Case

Actual checklist result/finding and requested evidence

Match/miss/unsupported finding

Transcript SHA-256 prefix

HOLD-01

G6 risk/blocker: Array.copy<obj> changes runtime string[] to obj[], causing InvalidCastException on downcast; traces Seq and insertion paths. Requests covariance and freshness-contract coverage; no measured regression asserted.

Match, development only

269ff0b62d1ee

HOLD-02

G6 repair pass; credits exact-type guards, four runtime-type/independence tests and revised sharing docs. G2 flags absent zeroCreateUncheckedNonEmpty and overbroad "allocate nothing"; requests focused allocation/nonempty checks and actual results.

Match; no stale blocker

b88acd6ba0deb

HOLD-03

Credits narrow target, control flow, metric and surgicality. Distinguishes sampled zero from elimination and allocation traffic from retention; requests structural attribution, binary/workload/variation/profiling evidence and bounded overhead comparison, not a speedup.

Match, development only

c597d4a78e5e

HOLD-04

No quantitative metric gate; identifies three shipping constant ToString changes versus examples/scripts/tests. Requests resolved Core identity/smoke evidence for standalone invocations as needs evidence, not failure.

Match; no unsupported blocker

751b245f456a

HOLD-05

Credits Started-event assertions, implicit-name invalidation and executing workflow; treats missing targeted run results separately. No production optimization, speedup or runtime-benchmark prerequisite.

Match

d22d32a8a089

HOLD-06

G1-G5 not applicable. G6/G8 request clarification of changed model-selection policy against the no-behavior-change description; no benchmarks or compiler tests requested.

Match; textual consistency request is supported by the diff, not a runtime blocker

c0270f8281d6

HOLD-07

G5 risk/blocker traces strongly retained historical versions/readers; explicitly avoids first-use race because mailbox awaits creation. Requests CPU/latency, dependent-version/retry proof and helper reuse. Also reports a project-removal cleanup gap.

Match; additional removal scenario independently source-verified below, not inferred from agreement

42f3d34d1a1f

HOLD-08

G1-G5 needs evidence for critical-path/queue/job timings and aggregate agent-minutes; credits source partition, once-only SDK integration and template reuse. Requests actual runner union/count/results without inventing skipped tests.

Match

4c500d93cf315

HOLD-09

Credits existing timing/error/environment tables and clear array contrasts, preserves noisier list cases, recognizes Framework fallback and removed averages. Requests other types/short/lazy cases, binary mapping, arithmetic/exception/API evidence. Does not request the same modern runtime with intrinsics disabled.

Miss: one required measurement condition. Generic runtime coverage and Framework fallback are not a substitute. Original output retained; no retroactive oracle relaxation.

f3313b85f413f

HOLD-10

G1-G4 not applicable; immutable additive wiring and surface declaration pass; requests explicit/default formatting execution only.

Match

fa0391c0f8c3

The first-run semantic score is 9/10 matches, one miss; among initially eligible independent cases, 6/7 matches, one miss. This is not a precision/recall estimate or final acceptance. The seven blind families cannot be silently relabeled as fresh if subsequent tuning uses their results. No verified-human-composition credit is added to the evidence rules by this run.

Additional finding verification: at HOLD-07's head, an F# options request constructs a C# dependency's delayed reference before the parent can bail out (FSharpProjectOptionsManager.fs:416-439,475-479). This inserts an emit-cache entry without a C# options-cache entry or successful emission. ProjectRemoved posts ClearOptions, but removal is guarded by options-cache membership (:588-596,653-659); the sweep enumerates only lastSuccessfulCompilations (:479-505). Thus ordinary removal/sweeps can leave the strong entry rooted. Global/solution clearing releases it; a later successful delayed callback could also make it eligible for sweeping. This supports the narrow cleanup finding, not an observed leak size, OOM, or assertion every retained entry still owns a compilation. The independent source evaluator did not read the candidate output.

The ten saved outputs passed actual ordered/full-name G1-G8 and five-column/nonempty-proof/unknown/action checks, using only the four permitted outcome strings: 106 scoped rows = 42 pass + 46 needs evidence + 16 not applicable + 2 risk/blocker. The two risk rows cover covariance and historical-version retention, with the additional supported removal subcase; zero unsupported blocker findings were established. The ten input file-set hashes and all twenty preceding final-regression transcript hashes/shape checks also passed. Output length ranges from 1,017 to 2,110 whitespace-delimited words; tables are structured but not uniformly terse. Shape checks do not erase the semantic miss.

Coverage and remaining acceptance gaps

Requirement

Actual executed evidence

Qualification

Mixed scope

HOLD-04 separates executable constants from docs/tests/scripts; HOLD-02 separates ancillary tests

HOLD-04 was blind; HOLD-02 is exposed development. No attribution of all paths to a win.

Test-only

HOLD-05 recognizes event-based cache characterization and executing assertions

Real PR, no performance claim; no runtime benchmark gate.

Benchmark-only

No qualifying real PR found in the 804-PR path screen

Unavailable, not verified. Product-plus-benchmark #18509 and synthetic cases do not fill it.

Docs-only

HOLD-06 excludes performance metrics while identifying a textual policy/description mismatch

Real no-claim control. A documentation-only numerical-performance assertion has no real selected example.

Generated code/artifacts

HOLD-03 distinguishes compiler closure allocation from runtime speed; HOLD-09 separates generated-program sum paths and output behavior

HOLD-03 is development; HOLD-09 has the retained fallback-measurement miss.

API-neutral / behavior-sensitive

HOLD-07 traces lifecycle and cache-hit/diagnostic equivalence despite unchanged signatures

Real blind control with supported source-derived retention risk, not executed failure. HOLD-10 is explicitly an API addition, not neutral.

Strong tables / prose-only gaps

DEV-05/13 and HOLD-09 credit supplied tables; DEV-14, HOLD-08 identify specific missing evidence

Earlier author measurements are not rerun measurements. No universal numeric threshold.

Meaningful versus noise-level wins

DEV-18 preserves uncertainty; DEV-19 accepts flat-time allocation saving; HOLD-09 credits large array effects without generalizing noisy list data

DEV-18/19 are synthetic contract controls. Real tables remain author-reported and provenance-qualified.

Hidden resource regression

DEV-16 detects stipulated retention despite faster time; HOLD-07 independently traces real strong ownership

DEV-16 is synthetic; HOLD-07 does not invent numeric retained bytes or measured OOM.

Allocation/closure improvement

DEV-15/19 and HOLD-03 distinguish counts, allocations, time and live memory

Synthetic positive boundaries versus real author-sampled closure claim are not interchangeable.

Compiler-time versus runtime

DEV-12 retains small-input compiler slowdown and unoptimized closure cost; HOLD-09 evaluates sum runtime separately

No compiler benchmark is substituted for generated-program execution.

Withdrawn / narrower scope / behavior proof

DEV-01 preserves #20352's author withdrawal and narrow-scope request; DEV-03 preserves tentative #20348 simpler-idiom suggestion; paired DEV-06/07 and DEV-08/09 recognize repairs

Two verified human-derived families in development, not new holdout human votes. Closed #18509 is not treated as a rejected optimization.

Complete final regression

Twenty unchanged C3 development replays pass; ten additional C3 executions yield nine semantic matches and one miss

Not a final acceptance pass. No repaired-candidate replay or replacement-holdout success is implied.

The conditional contract still includes time; total/peak/retained memory; allocations; closures/generated artifacts; CPU; GC; threads; startup/build costs; behavior/API/compatibility; lifetime; surgical isolation and reviewability. C3 requests before/after units, commits/configurations, workloads/input sizes, repetitions, meaningful error/spread, environment/tooling and commands/links, with adjacent metadata permitted. Actual controls show these are conditional, not a universal metric matrix. No production build, test run, formatting sweep or release-note entry is required for these documentation/prompt paths.

C4 repair and replacement holdout

C3's HOLD-09 output is retained above. The sole prompt repair adds a conditional PERF-03 sentence: compare representative supported capability-dependent fast/fallback paths on the same runtime; another runtime's results do not establish fallback cost. No metric, outcome, group, behavior gate or provenance label was removed. The old sanitized rule extract is unchanged; the full C4 instructions supply this additional requirement.

The source evaluator independently confirmed the original oracle, without reading the reviewer output: T-Gro's request, 2025-08-14T12:42:51Z, explicitly names .NET 9 with DOTNET_EnableHWIntrinsic=0. At final 7e5c5d16de76ecc0b87f8da9bed6b07438d65573, array.fs:1581-1614 and seq.fs:1467-1500 choose the old loop on Framework but LINQ on modern runtimes. Disabling intrinsics on .NET 9 therefore does not select the Framework fallback. The author's later assertion refers to a .NET Framework 4.8.1 table, not the requested modern scalar path. The oracle was not relaxed; source reinspection confirms a candidate miss rather than an oracle mistake. These are earlier, composition-unverified sources, not additional human-derived votes.

Frozen artifact

Identity

C4 candidate

SHA-256 b2625d5c24ee35919f881095ff6336d47a28bfb533228aab4d8642fefda9e132; frozen 2026-09-22T14:40:05Z

Repository coordinate

ac7bd61c998f0bade4aeaa00e676b87bedb6397e plus the explicitly hashed working-tree candidate/evidence changes, not a claim that C4 was already committed there

Evidence table including post-C3 correction

SHA-256 7d620d26c62703fcb6d9e4cc453b64ded8f0cb64c94df50fbde2b71b06c9c237

Sanitized rule extract

SHA-256 60874a1849722ee4369a839d8a431565069f98aa7588f044582ccf4f3a485e14

Archive

Current session c8f07943-58a7-4cdd-9a76-ce0b8d398079, files\c4-regression; pre-repair snapshots and outputs remain untouched

No holdout laundering: #18509 and all of FAMILY-vector-sum become development. HOLD-01/02/03 remain exposed development. HOLD-04/05/06/07/08/10 are retained evaluation cases whose findings did not tune C4; their C4 runs are explicitly replays, not first-seen holdouts. A new family, FAMILY-string-spans, supplies the replacement for the affected conditional fast/fallback generated-program measurement category. It does not supply a second independent SIMD-disabled example; that narrower subcategory remains unavailable in the source-screened shortlist.

REPL-01: independent source oracle and actual result

Metadata-only reservation of #20358 predates candidate drafting. The source evaluator selected it from the predeclared #20358/#19804/#20275 shortlist based on the code/claim, not candidate behavior. Its string-construction mechanism is distinct from vector sum, empty-array sharing and inline closures. A common broad optimization umbrella issue does not make those changes duplicate mechanisms; that link was disclosed to the evaluator and omitted from reviewer navigation. No REPL-01 feedback or expected answer informed C4.

Case / PR / family / revision

Coverage and source

Frozen expected outcome and required evidence

Prohibited unsupported finding

REPL-01 / #20358 / FAMILY-string-spans / 5aa9391f43d7e533d9815b4fe9245df4881833f8, base e631ed7f4f210cb3dade65b1d6341bb7106e51bb

Generated-program library allocation, capability/input-dependent paths, API-neutral behavior. Author description claims heap-allocation reduction on .NET Standard 2.1+; three comments, no reviews/threads. Request-origin control; no verified-human precedent.

needs evidence for actual Core asset/binary/configuration and before/after allocations with relevant time/stack trade-offs, repetitions/spread and commands. Distinguish NETSTANDARD2_1_OR_GREATER from the separately shipped net asset; a modern runtime does not prove the span path ran. Cover map/mapi sizes; filter around 512 and 40,000 with varying selectivity; replicate short/general branches around counts 4/5. Credit unchanged signatures and existing null/empty/callback/Unicode/large tests, but request new boundary/executed-asset proof.

No all-size/allocation-free or compiler-speed claim; no SIMD-toggle requirement; no invented pointer escape, corruption or measured stack failure. Source guard/coverage uncertainty is not an observed test failure.

Input text SHA-256: 9fec7df157b5c59c3c20abf10acfb304980477613ebe993bacc09b7a13b322fd; complete diff SHA-256: 6efc6f9d9c230e223ad89b91a80270ccb0997de113528d1db0b17aec83a4044b; evaluator-only oracle SHA-256: e8a0f40ff5f622ef3995ca0554ff07baca5299f9476f8c35e155799e4d08ebe6. Canonical UTF-8/LF input/oracle bytes match the independently prepared payloads; initial Windows CRLF materialization was normalized before execution, without changing content. The source bundle and all fourteen reviewer-member hashes were frozen at 2026-09-22T15:01:02Z, files\replacement-study\freeze.json; the oracle is stored separately. The bundle contains complete base/head changed files, unchanged signatures, NativePtr implementation/signature, existing String tests and build/test asset routing, not discussions.

Actually executed: fresh named performance-improvement-review, task c4-repl-01, same CLI/model as the other runs; only C4, the sanitized rule extract, the single frozen reviewer bundle and access to its pinned Git objects were supplied. Saved output SHA-256 6a3d04e9709e0e13db50bd9cb607ef1444addd663450ea44263b7fa24fe0c304, files\c4-regression\REPL-01.md.

Actual finding: the reviewer identifies the exact temporary-buffer eliminations and unchanged larger-filter/short-replicate paths; requests B/op by branch and same-runtime identified binaries, warmup and repeated-run metadata. It catches the NETSTANDARD2_1_OR_GREATER-only guard, separate shipped-net asset and modern unit-test routing, distinguishing surface-area loading from behavioral execution. It requests threshold/selectivity/count tests, callback/overflow proof and fixed 1,024-byte stack-budget justification, while crediting existing null/empty/side-effect/Unicode tests and source-level lifetime/order invariants. It explicitly excludes hardware-intrinsic toggles, compiler timing and unrelated concurrency metrics. Final recommendation: evidence is insufficient; no blocker.

Evaluator result: match on every selected oracle concern, zero misses, zero unsupported blockers; one fresh case in one fresh family, not a broad precision/recall result. The actual table has fourteen scoped rows: five pass, seven needs evidence, two not applicable; ordered full group names, exact outcomes and all five evidence columns pass. This proves the broader conditional path/asset rule on a new real family, not the unavailable second SIMD-specific case.

C4 complete replay: retained development regression

C4 was actually run in thirty fresh named contexts on DEV-01..20 and HOLD-01..10, followed by one formatting-only retry and REPL-01: 32 invocations, 31 distinct cases. Outputs completed from 2026-09-22T14:45:36Z through 15:06:06Z. Inputs and source pins were unchanged. A separate evaluator read every actual output and checked added blockers against pinned sources; it did not invoke reviewers or rewrite expectations.

The original thirty cases scored 29/30 semantically, 28/30 including formatting. The sole semantic miss is HOLD-01, already-exposed development: C4 notices the covariant array's runtime type changes but asks whether compatibility policy covers it, omitting the formerly valid downcast's InvalidCastException and the required risk/blocker classification. Original transcript SHA-256 e77e0636b313d5c8fcfcdfc400ae9a7fa744f84d979b23ccd4ea9cf9d37bdc9c remains unedited. This is not an oracle ambiguity: the evaluator checked base/head clone/empty-array branches and the unchanged public copy contract. Intentional sharing does not establish permission for the separate runtime-type failure.

DEV-03's original semantics matched, but an unescaped array-comprehension pipe made one Markdown row seven cells. Its original SHA-256 is 94929ba57689a46ace5860f998386f54817cee62559c0c20e302fb3223cd7bb1. Fresh same-input/C4 task c4-dev-03-format-retry received only a generic pipe-escaping reminder, not prior findings or the oracle. Its thirteen-row output passes format and semantics, SHA-256 c701caa348ed7def763acf977f79cc57a78e92a462674fbff73ea6df0b131d99. The retry does not erase the original failure or count as a new case.

C4's HOLD-09 now explicitly requests the same modern runtime with intrinsics enabled/disabled, credits the supplied tables and does not substitute Framework data; SHA-256 e39250b5c8824679f52a89e4ebc6d37d9a6a9bd9db13a03c4a304ee6e24fee11. All other required DEV/HOLD checks matched their frozen semantic expectations, including both verified-human development rules, supported narrow wins, no-claim controls and resolved concerns. No unsupported blocker was established. With the formatting retry and successful REPL-01, C4 still scored 30/31 cases, not acceptance. Full original output hashes and concise per-case findings are retained in session files\c4-scoring.md; the final-candidate table below records the subsequent full replay separately.

C5 final-candidate freeze

C5 adds only the PERF-06/12 classification clarification: a source-established failure for previously valid callers is material risk, not merely an unspecified-policy question; distinguish explicitly intended behavior from separate collateral effects. The repair responds to development HOLD-01, not REPL-01. No case oracle, input, metric rule or source attribution changed. C4's failure and the successful but limited replacement result remain above.

Frozen at 2026-09-22T15:09:59Z, repository ac7bd61c998f0bade4aeaa00e676b87bedb6397e plus hashed working-tree changes: candidate SHA-256 65207b555cd16d94fb34b7c8186dbabac41717b516b25ed0f668d261b2c7049b; evidence SHA-256 5d88a405b2eae701c09a074679650b14dfd5ea5607562449e6a268519ac91e9e; sanitized rule extract unchanged at 60874a1849722ee4369a839d8a431565069f98aa7588f044582ccf4f3a485e14.

Hash encoding: candidate/evidence and transcript identities hash the exact saved bytes, including Windows CRLF. Git stores the prompt with LF; do not mistake that normalization for a prompt change. The LF candidate SHA-256 values are C3 3fd85a737e95e49354a1e83c7caec1d05a99aaeff25b47277f601094c215e571, C4 097018ca8a565aba01d36a893df712a55dec68f3294941318cf06e7092816a92, and C5 7bfed4f87f5ccff6b2a33c5a31cf35544b5bd2f2f78a433594daad0a965aceb6. C5 evidence's LF hash is b854b1d68c534fab1c488c43b79954887aeb234bfde91313325876bb9ac52510. Earlier fenced RED packets and the separately specified REPL/MIX input/oracle hashes use their explicitly documented UTF-8/LF convention.

Actual full execution: 31 fresh named tasks, c5-dev-01..c5-dev-20, c5-hold-01..c5-hold-10, and c5-repl-01, all with one packet and the same isolation/read-only boundary. Runtime remained Copilot CLI 1.0.87 / GPT-6 Astra (gpt-6-astra), inherited without override. Generic pipe escaping was reminded uniformly; no previous substantive answer was supplied. Outputs completed 15:12:24Z through 15:23:37Z, archived in current session files\c5-regression. This is a new complete run, not C4 results renamed.

All 31 output structures passed locally on first attempt: 327 scoped rows = 121 pass + 165 needs evidence + 32 not applicable + 9 risk/blocker; ordered full G1-G8 names, five nonempty columns and exact outcomes. Output lengths are 585-1,821 whitespace-delimited words. Input/archived-result identities were rechecked. These structure counts are separate from semantic scoring below.

Final semantic replay results

31/31 frozen cases match, zero missed required concerns, zero established unsupported blocker findings. This bounded result is not universal PR approval, review precision/recall, benchmark reproduction or complete-category coverage. The set is 24 real historical inputs from 20 distinct PRs plus seven labeled synthetic controls. Twenty-four cases are development/regression controls (including the seven synthetic cases); seven cases remain in evaluation families. Six of those seven were first run on C3, and REPL-01 was first run on C4. C5 is explicitly a complete replay, not 31 new independent holdouts.

The table preserves concise actual findings from both full repaired-candidate runs. Inputs, source URLs, required evidence and prohibited findings are the unchanged DEV/HOLD matrices and REPL-01 oracle above. SHA columns are prefixes of exact unedited transcript hashes; full hashes remain in c4-scoring.md / c5-scoring.md and their transcript files outside the repository. C4's DEV-03 prefix identifies its original formatting failure; the separately recorded retry is not hidden.

Case / source pin

Actual C4 finding/request; SHA-256 prefix

Actual C5 checklist proof/request; SHA-256 prefix

C5 evaluator

DEV-01 / P01/A

321 MB report credited; narrow/justify shared-remapper cost, ask spread/equivalence; cf0993f931db

G7 needs evidence for workload/value versus pervasive policy and narrower reuse; no quotation defect inferred from traversal differences. c255e58e2b29

Match

DEV-02 / P02/B

Local scope passes; credit 3 x 4 iterations/671 reported passes; request artifacts; 24031be0879e

G7 pass; credits 557 MB and supplied repetition/test claims; requests raw spread/binaries/commands, not already-present repetitions. Resource-name drift is not a quotation failure. 272dddc79e96

Match

DEV-03 / P03/C

Optional comprehension suggestion, syntax comparison N/A; original malformed table retained; 94929ba57689

Explicit syntax-speed not applicable; bounded stable ordering passes; sorting value, attribution and output execution remain evidence requests. Valid table. d8069224148b

Match

DEV-04 / P04/D

Adopted comprehensions recognized; protocol/error/target cost needed; 615f67f9aa35

Recognizes final idiom and separate localized mechanisms; asks actual benchmark/binary/protocol and targeted results, not whole-build gain from sampled CPU. 19c28293e66e

Match

DEV-05 / P05/E

Credits ten rows/three fresh processes; requests roots/GC/spread; 263b1d778646

Retention metric/table/repetitions credited; asks live-root/collection boundaries, individual spread and repeat-check trade-offs, not faster time. 202f7f9a4f8c

Match

DEV-06 / P06/F

Compile-only assertion gap plus supported S1 failure-caching risk; 58beac6a9a93

Requests executing/strengthening the conditional; source-traced S1 failed lazy suppresses later-range diagnostic, requiring two-site proof. b13b23dae0ee

Match; supported extension

DEV-07 / P07/G

Executing harness passes; 477/~810 MB reconciliation and S1 remain; 4446cad4a203

Credits compileExeAndRun, asks allocation boundaries/spread/results; same S1 source risk remains independently of repaired test shape. bdfe1b267e1b

Match

DEV-08 / P08/H

Reversal equivalence passes; producer comment/assertion needed; e0da1ce654f7

Source proves strict positions/empty/switch cases; explicitly distinguishes missing producer contract from consumer comment, without alleging miscompile. 1dcfe8b80d67

Match

DEV-09 / P09/I

Producer repair and 139,370 comparisons credited; methodology gaps only; 6d3cc98fc0f6

Comment/Debug assertion pass; asks spread/instrumentation/binary/results, neither claiming assertion execution nor repeating resolved objection. 6dcfe58838ab

Match

DEV-10 / P10/J

CE workload and lookup/allocation proof requested; no explicit speed claim; eed22dc4fec1

Build log is not comparison; asks applicable CE checking/allocation, range and retained-environment proof, not fabricated leak or rejection. 08e2e4d04458

Match

DEV-11 / P11/K

~2 MB versus ~61 MB attribution and unresolved-thunk repair credited; no additional S2 in this run; 41b25c90afca

Same attribution/repair pass; asks matched flags/roots/spread/lifecycle. S2 losing importer with uninitialized dependency context adds source-supported risk. d11d2ab89756

Match; supported extension

DEV-12 / P12/L

Retains N=8 slowdown and unoptimized closure cost; request both-mode runtime/spread; 18de711aa020

Retains 2.5->3.8 s and censored failures; credits executable guard/byref assertions; asks generated-call trade-offs, not identical promoted IL. 1c8e3a2d7447

Match

DEV-13 / P13/M

Nine rotated samples and flat/worse cases credited; S3 cyclic-root risk; 44bca056ead9

Separates retention/warm time, asks spread/lifecycle, does not declare Fantomas regression. Adds S3 and conditional old-client/new-assembly Create ABI risk. 516a8afffcb0

Match; supported extensions

DEV-14 / S01

All groups need specific evidence, no invented defect; 0346a5fcb866

Names missing operation/workload/implementation, comparable metrics and reproduction; unknowns stay unknown. 89bb826ef5c9

Match

DEV-15 / S02

Stipulated 12->0 closures/semantics pass; no timing prerequisite; c582148560cc

Accepts structural/behavior stipulations; no runtime, GC or timing-error-bar demand for a count-only claim. deb2c7abebb2

Match; synthetic

DEV-16 / S03

Rooted ~1 MB/request growth is material despite time win; 1d2a83b4ecbe

risk/blocker from append-only ownership and 100/200/400 MB stipulated post-GC excess; asks bounded/released ownership, no observed OOM claim. 9dceb9510d67

Match; synthetic

DEV-17 / S04

Spelling-only metric gates N/A; 18181bfa22b5

No compiler/runtime measurement or test campaign; scoped stipulated edit passes without pretending to inspect an underlying patch. fe5941e4df5c

Match; synthetic

DEV-18 / S05

Difference uncertainty/value needed; overlapping intervals not equality; bf55bf4199e4

Credits supplied means/CIs/30 runs; requests difference uncertainty and practical value, no arbitrary threshold/regression. c83849729323

Match; synthetic

DEV-19 / S06

256->128 B/op passes despite flat time; ef930fca0271

G3/G4/G5 pass on allocation/resource stipulations; credits command/raw results, no timing-win requirement. 950f1f82e88c

Match; synthetic

DEV-20 / S07

Runtime/semantic/resource stipulations pass; changed IL allowed; 9e0282eb9e25

Credits 280->80 us and 393,680->131,088 B/op; no identical-IL or compiler-speed inference. Broader endorsement remains bounded. aa171074db5b

Match; synthetic

HOLD-01 / #20388 old

Changed runtime type noticed but concrete risk demoted; miss; e77e0636b313

risk/blocker with concrete Copy<object>/string[] downcast failure and conversion/insertion traces; separately asks intended-sharing docs and allocation proof. d3ce4248a748

Match; development repair

HOLD-02 / #20388 final

Guards, sharing docs and tests pass; missing opt-out/provenance/nonempty evidence; a0d2ed102989

Explicitly credits covariance/doc repairs and ancillary scope. Separately traces old freshness-dependent ConditionalWeakTable caller failure; measurement gaps remain. c02f9f892abc

Match; additional supported risk, adjudication below

HOLD-03 / #20367

Inline/control flow pass; sampling/binary/structural proof requested; 7cc0433404cb

Credits narrow declarations/warning flow; separates sampled 412 MB, +1.5 KB DLL and produced-output identity; no speedup prerequisite. 8c97f8c69c74

Match; development

HOLD-04 / #20544

No claimed metric gate; SDK/Core resolution evidence needed; df2683aeca4f

Distinguishes three shipping debug strings from docs/tests/scripts; requests actual standalone resolution/results without inventing host failure. 587654b0a871

Match

HOLD-05 / #20444

Executing characterization recognized; no shipping benchmark; 3f6f9c71764a

Traces eight event-list assertions, warm observation and implicit-name invalidation; targeted results needed, no claimed production optimization. 6a31b4d38d86

Match

HOLD-06 / #20436

Metrics N/A; model-policy/description consistency request; a51606af4ca3

G1-G5 N/A; asks intent clarification, not resource/quality defect or compiler/agent benchmark. Embedded instructions remain data. 8fc2519f5c68

Match

HOLD-07 / #20119

Strong history/removal risk traced; mailbox race excluded; 26aff4a43382

Same source-supported ownership/removal paths; asks bounded roots, CPU/IDE measurements and retry/invalidation tests, no measured OOM or stale-symbol claim. ad91f256a2dc

Match

HOLD-08 / #20587

Critical path, queue, capacity, compute and test-union evidence requested; d0404a3c3917

Credits source partition/template/SDK batch 1; requests full-job timings and actual union/publication, no invented twofold win or skipped tests. e2396dee3dbc

Match

HOLD-09 / #18509

Exact modern-runtime intrinsics-disabled condition caught; e39250b5c882

Same-runtime enabled/disabled request retained with reason; credits tables, distinguishes Framework fallback and removed averages, asks final binary/numeric/API proof. 24fcfd1866aa

Match; development replay

HOLD-10 / #20507

Additive immutable API passes; true/false/default results needed; a2ca9e8f2895

No metric gate; credits signature/baseline/defaults and copied context; asks formatting/composition results, no global-mutation claim. db635b93d0d6

Match

REPL-01 / #20358

Asset/threshold/stack oracle caught, no blocker; 6a3d04e9709e

Repeats asset-aware same-runtime B/H requirement, threshold/selectivity and replicate controls, 1,024-byte stack trade-off and existing tests; no SIMD/pointer-defect invention. 0df8e8d9e547

Match; replacement-family replay

Scoring correction, not oracle relaxation: the evaluator initially recorded C5 as 30/31, treating HOLD-02's freshness-risk extension as prohibited. Reinspection of the original pre-execution oracle established that its pass is specifically for repaired covariance/documentation. It prohibits repeating the old covariance defect or claiming unchanged freshness docs, not every additional source-supported compatibility finding. C5 explicitly says the covariance mechanism is resolved and sharing is intentional/disclosed. Base copy clones two distinct empty arrays; final copy returns the same singleton, so the second addition as a key to one live ConditionalWeakTable changes from success to a duplicate-key exception. That constructed caller failure is source-supported, not an executed field report. New documentation establishes the intended sharing contract, not a blanket waiver for existing callers.

The initial erroneous score and this correction are retained in c5-scoring.md/.json; candidate, original oracle and every output are unchanged, and no retry or independent-case credit was added. The compact transcription above initially said "No stale covariance/freshness blocker," which was too broad; it now accurately states the original oracle's prohibition on repeating the covariance defect or claiming unchanged freshness documentation. This is a source-backed transcription/scoring correction, not a new oracle. Preservation is a supported remedy; the source does not establish that it is the only permissible release decision or a universal policy veto. The combined risk/blocker category includes this substantiated compatibility risk without inventing such policy. This adjudication follows the same scoped-check/independently-verified-extension rule used for S1-S3, rather than changing an oracle to fit a result.

The nine risk rows occur in eight cases. S1 repeats across two revisions; S2 uses the already-verified losing-importer path; S3 is separate from the conditional ABI finding. HOLD-07 includes historical retention and removal-cleanup subcases. No row count is presented as an independent-bug or human-vote count. Added ABI risk is scoped to an old compiled Create caller actually binding the new assembly without its old method signature, not an assertion that every deployment breaks or FCS has a universal cross-version compatibility guarantee. All source-derived failures remain distinct from observed executions.

MIX-01: full-evidence mixed-scope extension

HOLD-04 is a useful mixed-file no-claim control, not the stronger test of attributing a real performance claim separately from cleanup. This additional case closes that distinction without changing C5. #20455 was reserved as mixed-scope before drafting; its named-record cleanup and option-to-voption allocation mechanism are separable within the editor subsystem. It belongs to the existing FAMILY-vs-work-reuse, not a new independent family. The case was first executed only after C5 was frozen.

Case / PR / revision

Source and input

Pre-execution expected outcome/evidence

Prohibited unsupported finding

MIX-01 / #20455 / 003b29d39482aabf8c3a0497dea7fc3b384125fb; base 17f8eb7d0691d30d6fc0dbcc7977ac15f9e7d5d2

Author benchmark, xperiandri, 2026-09-16T10:51:20Z; composition unverified. Full final diff/product context and all author tables, methodology and complete harness supplied. Request-origin mixed-scope control.

Credit five-way ablation: tuple/reference-record write allocation both 377 B versus shipped reference-record/voption 369 B on the Framework job, and 376/376/368 B on net10. Separate readability from the 8 B allocation mechanism; assess actual serialized hit/remove-and-readd paths versus synthetic existing-key Update. Credit supplied runtime/environment/error metadata and 1,000-operation normalization. Request only material remaining provenance, repeat/timing or real-path fidelity gaps.

No allocation-free or whole-IDE speed claim; no missing-Framework/table/ablation claim; no automatic production regression from the 5.09x Update row, or unoptimized-child conclusion from the DEBUG host banner.

Pre-execution packet correction: the first unexecuted draft omitted the author benchmark. Before freezing or running it, the evaluator restored that entire available measurement artifact and adjusted the oracle to credit it. V1 input/oracle hashes 11306c2c00a6811dd5fa09bf7a897fe4f5c096ec577895bb741a5541ffa90ba4 / 5c6e8b9236e51c598724863548f87711b3c886d4cf62e607dc8b5ffcdae0aaa3 remain in the preserved evaluator transcript; neither was ever run. Withheld review objections are not a reason to hide author measurements. This correction was independent of candidate output.

Executed v2 was frozen at 2026-09-22T16:14:56Z, files\mixed-study\freeze.json: input SHA-256 a20d2a38438fd2c05cf0c9d37d1565db7cdd7cdf1e837bb50a009cedf9f6a77b; diff 0465ec192f53352ae798550282e04cbe65aba3230ef4909adee915e064c9d5c6; complete 25,152-byte author benchmark 2a218f35a2f7c2dc6257325fa1ce40ae4c2896407e9f23577604bf7c33f9016f; separate evaluator oracle 7d273f83ae8c05bb89b7dfcbc866dcb1736986add69753218ef0faf7e66debd2. All eight reviewer payloads are hashed; no feedback/history/oracle directory was exposed.

Actual named run: c5-mix-01, same CLI/model, isolated input and pinned-source-only boundary as the 31-case replay. Output files\c5-regression\MIX-01.md, SHA-256 3d75dec0a93a7f7c0fbb5f5c0038c91f7c3a5dd85da259547d8dfcf778ff09f9. The reviewer gives G4 pass to the modeled 8 B/op (~2.1%) saving and G7 pass to supplied attribution/cleanup. It explicitly distinguishes the Framework 4.8.1 job from the net472 editor and secondary .NET 10 comparison, credits the supplied tables/harness/configuration, and does not claim the DEBUG host proves an unoptimized benchmark.

It traces mailbox serialization and the actual removal/insertion sites, so the 5.09x synthetic Update row is not called an observed IDE regression. It retains the 674.98->733.73 ns hit means (~8.7% increase) and the author's reported 20-25% second-run movement without inferring equality or a reliable regression. Specific needs evidence requests concern the missing repeat/results/provenance, timing-parity qualification, production frequency, and the harness's always-successful stub versus no-view/subscription-failure paths. Existing lifetime/control-flow mapping passes; targeted execution remains unverified, not a fabricated correctness failure. No whole-IDE trace, compiler-wide benchmark matrix or blocker is demanded.

Parent evaluator score: all six frozen oracle requirements matched, zero misses and zero unsupported blockers; the actual ten-row table passes shape with five pass and five needs evidence rows. The complete final C5 suite is therefore 32/32 semantic matches, 337 valid scoped rows (126 pass, 170 needs evidence, 32 not applicable, 9 risk/blocker), with no output retry on C5. It contains 25 real historical inputs from 21 PRs plus seven synthetic controls; eight evaluation cases are in seven families. MIX-01 adds a first-seen C5 case, not a new family or an extra vector-repair replacement. No new verified-human-composition precedent is claimed, and benchmark-only coverage remains unavailable.

BENCH-01: synthetic contract only, not real holdout coverage

The absent real benchmark-only category is not silently replaced. This separately labeled request-origin synthetic control tests the output contract without supplying any real-PR or human-precedent credit. It changes only an existing benchmark's [<Params(4096)>] to the four parameters below: empty, short, retained existing and larger input. No implementation, target, dependency or operation changes; no speedup, allocation reduction, real-world representativeness or statistical result is claimed.

open BenchmarkDotNet.Attributes

[<MemoryDiagnoser>]
type SumBenchmarks() =
    let mutable data: int[] = [||]

    [<Params(0, 128, 4096, 65536)>]
    member val Size = 0 with get, set

    [<GlobalSetup>]
    member this.Setup() =
        data <- Array.init this.Size (fun i -> i % 1024)

    [<Benchmark>]
    member _.Sum() =
        Array.sum data

The unchanged runner is stipulated as Release net10.0 / BenchmarkDotNet 0.15.8 with its ordinary generated harness and MemoryDiagnoser. A Dry smoke completion of all four parameters is stipulated synthetic data, not a run performed here and not statistical evidence. The separately frozen oracle requires recognition of benchmark-only scope, setup exclusion/result consumption and expanded boundaries; no product speedup/table/significance gate, fabricated resource defect or claim that Dry proves timing validity is allowed.

Freeze 2026-09-22T16:39:09Z: input SHA-256 ceb1e223d8e14585af8c8da9d059078cb46e47e2f3fd6f2e3c1d1d0327006de9; evaluator-only oracle 168231e15905c8306884a0d525737d22a2cf9131fef64a9584b216eb8e0f60b2 (exact UTF-8/CRLF bytes). Fresh named task c5-bench-01 received only C5, the sanitized rules and this one fixture, not the oracle or prior outputs. Saved output SHA-256 68f5b6bbc361e7f9234c30d26bf321b6ab8b45a291268cd7b092aa671a9d6589, files\c5-regression\BENCH-01.md.

Actual result: seven pass rows and G4 not applicable. The reviewer accepts benchmark input-coverage value, recognizes that the performance-table gate does not apply, credits setup exclusion/returned-result consumption and preserves the Dry/statistical distinction. It does not demand hardware, repetitions, whole-build/IDE metrics or an actual execution certificate for the stipulated coverage-only fixture. It explicitly endorses only broader benchmark coverage, not shipped performance. Parent evaluator: all required checks match, no unsupported finding.

Final executed set: 33/33 semantic matches, zero misses, zero established unsupported blockers; all 33 output structures pass. There are 345 scoped rows: 133 pass, 170 needs evidence, 33 not applicable, nine risk/blocker. The set contains 25 real historical inputs from 21 PRs and eight synthetic controls; eight evaluation cases remain in seven families. The real benchmark-only holdout count is still zero, and no new verified-human-composition source has been added. These bounded local successes do not certify unavailable real-category coverage.

Sprint-10 reconciliation and residual manifest

Bounded reconciliation complete, not unconditional reviewer acceptance. Starting/current HEAD is ac7bd61c998f0bade4aeaa00e676b87bedb6397e. The four starting dirty files (agent, corpus, evidence, validation) were intentional C5 work and remain unstaged; this sprint edits only the three documents. Process command lines/ancestry were checked before editing: no competing writer to this worktree was identified; other active implementors belonged to other worktrees and were left alone. No acquisition restart, new reviewer batch, compiler build/test, package/format sweep, staging, commit or GitHub write occurred. The original window remains 2026-04-22T00:00:00Z through 2026-09-22T09:28:34Z.

Acceptance item

Reconciled current evidence

Residual / boundary

C5 identity and execution

All 33 saved review outputs and actual named task launch/completion records exist; 31 output hashes match c5-scoring.json, MIX-01/BENCH-01 match their separate recorded results. Candidate/extract unchanged.

Saved semantic score is 33/33 (31-case evaluator plus two parent-scored extensions), not a new semantic rescore or human-source audit. No missing output or unawaited delegated work.

Inputs, oracles and shape

Twenty DEV packet/diff identities, ten complete HOLD file sets, twenty earlier C3 output hashes/shapes and all REPL/MIX/BENCH payload/oracle freezes checked. Case-only C5 shape: 33/33, 345 rows = 133 pass + 170 needs evidence + 33 not applicable + 9 risk/blocker.

The required "c5-regression\*.md" check selects 35 files and exits 1 only for non-review candidate.md/rules.md; unchanged checker with "c5-regression\*-*.md" exits 0 on the exact 33 case IDs. Preserve both reports; no archive repair or reviewer retry is needed.

Available source coverage

94 reserved PRs, completion-report hashes/totals and pinned source identities reconcile with archives. Six named conversations audited from original envelopes and relevant pins.

Prior reading credit is documented, not independently repeated. Deleted/private material, two missing Azure payloads and historical mutable edits remain unavailable; no available essential archive was missing.

Provenance and rule semantics

Circular request-attested authorship removed; account-attributed reviewer feedback, author rationale/measurements, explicit automation and uncertainty distinguished. All eight groups, twelve PERF rules and conditional gates remain.

Attribution-only edits; zero semantic rule deltas. C5's unqualified human-derived provenance wording still needs alignment; stronger human-composition grounding is not established by replay or by the named envelopes.

Coverage and eligibility

Real/synthetic/result columns cover every required applicability category. Effective inventory 63 development / 59 holdout candidates; executed evaluation subset eight cases / seven families.

Real benchmark-only 0; BENCH-01 is synthetic and matches. Fixtures are permitted: neither relabel it a real holdout nor make the exhausted category an automatic failure. All eight evaluation cases are now seen, not fresh.

Frozen identities and archive coordinates

Archive root R: C:\Users\tomasgrosup\.config\daily-monitor\copilot-microsoft\session-state. A = R\36233952-cdbf-4056-984e-1fe93e32d7a3\files; B = R\c8f07943-58a7-4cdd-9a76-ce0b8d398079\files; S = R\295cd124-c927-411b-84e7-ada0988de119\files. Raw data/scripts/oracles/transcripts remain there, not in the repository. S retains exact starting snapshots, starting-identities.json, both shape reports, reconciliation.json, c5-run-identities.json and final ending-identities.json. The latter records the final validation-document digest externally to avoid a self-referential hash.

Artifact

Starting SHA-256: exact bytes / UTF-8 LF

Current identity

C5 candidate

65207b555cd16d94fb34b7c8186dbabac41717b516b25ed0f668d261b2c7049b / 7bfed4f87f5ccff6b2a33c5a31cf35544b5bd2f2f78a433594daad0a965aceb6

Both unchanged; exact bytes equal B\c5-regression\candidate.md.

Evidence

5d88a405b2eae701c09a074679650b14dfd5ea5607562449e6a268519ac91e9e / b854b1d68c534fab1c488c43b79954887aeb234bfde91313325876bb9ac52510

Exact 3540183d17220b229452e08bab21296f451c041648e9fd2d5063b97f8a1f71f1; LF 264cffe830df251463bb93bf6084c3080dc7523ddf8f52d5537a09936f97dc93. New attribution/source mappings were not supplied to the saved C5 runs.

Corpus

588d04abb0dceb82a718a8873d448edc5d0946b20151b325d8da56d8c8c83cca / 673632df42626faba07a870575ac12ad02c0b7bafe5b076d676a16acd82af4b5

Exact b010afd635ed27ca005317254749580b43a834abd0f336504b0b34745f09c1a5; LF bf3467bd37c6a4e5259917bcb703cb71b08a7070da4a4806e9830dca0ae41147.

Validation

126f674ba3b0906aae85e8832b1f0850a51b9a50a237f0b62607a59b05723691 / bf98943934d97683806453085d6d16a5767016f4ab09e61335f0a2d7ed567294

Current exact/LF identities in S\ending-identities.json; original packets/oracles unchanged.

Compiler-review skill

6d4329bbf9be0c6e114fc0830f8f4e24fc89238d1e1a34cf25461c6b35e145d6 / ba01c3dd62b717dccebea642e6cf85059b23c2401f3e2e58ef763c2dc828e63d

Both unchanged; read, not tuned.

Exact hashes include saved CRLF; normalized hashes replace CRLF with LF before SHA-256, without other text changes. C5's actual sanitized extract B\c5-regression\rules.md remains 60874a1849722ee4369a839d8a431565069f98aa7588f044582ccf4f3a485e14. The effective decision-rule projection before/after reconciliation is 0c226f5ae36666f41d31644c16db4967bfa0f25ab8928d0091ddefd81a5ad7b8: UTF-8 canonical JSON (ensure_ascii=False, separators (',', ':')), keys rules then metrics; twelve stripped PERF rows projected to ID/rule/evidence/limits (columns 1/6/7/8), then nine metric rows projected to their first three columns. S\reconcile_artifacts.py defines this source/provenance-excluding projection; it is not a substitute for the full candidate/extract identity or a claim that new full-context source notes were model-tested.

Exact case inputs, original expectations and run identities

The manifest below enumerates all 33 cases without replacing their original detailed expectations. For every case, its actual run name is c5- plus the lowercase case ID, its unchanged output is B\c5-regression\<CASE>.md, and its result/hash is in the 31-case C5 table or the linked extension section. B's parent events.jsonl confirms all 33 launches/completions with Copilot CLI 1.0.87 / gpt-6-astra, no model override. S\c5-run-identities.json records exact tool-call IDs, timestamps, prompts and completion records, SHA-256 797f5c84b65543ddc1a3f76400c6563bada75f4888c73ffb8bcef4cd5cdbd0c8. The twenty DEV tasks launched 15:11:35.052Z, ten HOLD plus REPL at 15:18:44.206Z, MIX at 16:15:08.300Z, BENCH at 16:39:28.178Z on 2026-09-22. Parent tool-completion times are not child output-save times.

Case IDs

Exact frozen input / original oracle

Actual result and effective eligibility

DEV-01, DEV-02, DEV-03, DEV-04, DEV-05, DEV-06, DEV-07, DEV-08, DEV-09, DEV-10, DEV-11, DEV-12, DEV-13

A\final-regression\<CASE>\input.md and diff.patch; P01-P13 / pins A-M in the original expectation matrix. manifest.json SHA-256 d9461f76f5fa0a946e2cf8ccc78bb3795cbc6ec0e2f6dec0795355672de5f5aa. P02-v2 / DEV-03-v2 remain the pre-execution corrections.

Recorded 13/13 matches; historical real-PR development, not holdouts. Required outcomes remain scoped: missing proof is not a blocker; resolved scope/test/invariant concerns pass. Supported additional source risks remain separately adjudicated.

DEV-14, DEV-15, DEV-16, DEV-17, DEV-18, DEV-19, DEV-20

Same DEV directory/manifest, S01-S07; original matrix and packet hashes. Respectively: needs evidence; structural/semantic pass without timing; retention risk/blocker; metric N/A; significance needs evidence; flat-time allocation pass; generated-runtime/semantic pass.

Recorded 7/7 matches; synthetic development, no real-source or holdout credit.

HOLD-01, HOLD-02, HOLD-03, HOLD-04, HOLD-05, HOLD-06, HOLD-07, HOLD-08, HOLD-09, HOLD-10

A\holdout-study\inputs\<CASE>; suite.json SHA-256 57258d83db61fdcb97a74ae1f026ec152bf1d32b83fb1fbe530eca3328a63e8c; original oracles.md ddfc494f450358cf527cdbf08c45066d9fca111efc84aa2aa74b8399400f59dd. Original scoped expectations and base/head/input/diff identities are unchanged. Static reviewer_executed=false in the freeze is pre-execution metadata, superseded by actual run records, not rewritten.

Recorded 10/10 C5 matches. HOLD-01/02/03 are the connected core-empty-array/inline-closures development group (also includes realsig-TLR); HOLD-09/vector-sum was promoted after the C3 miss. HOLD-04/05/06/07/08/10 remain six previously evaluated cases/families.

REPL-01

B\replacement-study\reviewer\REPL-01, separate evaluator\REPL-01.oracle.md; original oracle and coordinates. Freeze manifest e72c0ed233657ed9f82d1da6c5dfc87a18fcfb2e549381cff05cb1e5ba6a2b13 hashes all 14 payloads and oracle e8a0f40ff5f622ef3995ca0554ff07baca5299f9476f8c35e155799e4d08ebe6.

Recorded match: asset/branch-sensitive evidence requests, existing tests credited, no invented SIMD/pointer defect. String-spans evaluation family; first run C4, C5 replay. Freeze's C4 candidate field is historical, not the C5 invocation identity.

MIX-01

Executed v2 only: B\mixed-study\reviewer\MIX-01 and evaluator\MIX-01.oracle.md; six original requirements. Freeze manifest 69662d0a1d93ef37ce8fbc0a39c152eb507bc1028758cfdc67142404b4e328d0 hashes all eight payloads and oracle 7d273f83ae8c05bb89b7dfcbc866dcb1736986add69753218ef0faf7e66debd2.

Recorded match: credit author ablation, isolate cleanup/allocation, no synthetic Update-to-IDE regression inference. First seen on C5; same VS-work-reuse family as HOLD-07, not an eighth family. Unexecuted v1 remains historical.

BENCH-01

B\benchmark-control\reviewer\input.md, evaluator\oracle.md; original stipulations. Freeze manifest ee0a94609deeb4da3779b08548c666e45f55aa32c1c2b54db5ccdf62734d5418; input/oracle exact hashes remain above.

Recorded match: coverage-only benefit, no quantitative product claim, Dry is smoke only. Synthetic contract control, never a real historical holdout.

The 31-case score record hashes are B\c5-scoring.json 3496045f204d033d8424919c13cacc6fbba55aea2cb173c79adcd792fd2a29eb and .md 25f11aafa9d92f092cc5917fbdfbf441dd2f2edaf1e398f28c73c6ca72a8f3fe. They are not 33-case files: MIX/BENCH add the separately preserved parent scores above. The C3 HOLD-09 miss, C4 HOLD-01 miss, C4 DEV-03 formatting failure/retry and C5 HOLD-02 scoring correction all remain recorded; no oracle was changed to fit an output.

Only remaining or affected checks for sprint 11

No semantic repair or missing C5 case is identified by this reconciliation. Do not reacquire 94 PRs, rerun the 804-PR search, widen the window or create a real-benchmark-only requirement. Existing fixtures satisfy that applicability boundary; the original eight evaluation cases remain the executed subset, not unused replacements.

The precise unresolved acceptance item is unqualified verified-human grounding: the named envelopes establish participants, concerns and resolutions, not unaided composition. In particular #20352 comment 5422336205 has no review envelope and #20348 comments 3854812488/3860828838 have empty parent reviews 5021077157/5028138073; neither contains a composition attestation. No missing envelope can be fixed by another bulk search. A stronger retained claim would need source-specific attribution beyond these records; do not invent an external attestation policy or treat style/User status as proof.

Proposed provenance-only delta, not applied to the candidate here: replace its description's "verified human review precedents" with "source-attributed performance-review precedents"; replace its "verified rules/metric map" label with "rules/metric map"; replace "Only PERF-08/09 are human-derived + request-required; other gates are request-required. Preserve these labels." with "All gates are request-required. Source-attributed reviewer feedback and author rationale support narrow rules with the evidence document's composition limits; neither is verified by account type or replay." In the compiler-review skill, "verified evidence resources" should become "evidence and provenance resources." Apply the same attribution correction to any new sanitized extract, never overwrite the archived one. No PERF rule meaning, metric condition, outcome or oracle change is proposed.

The affected provenance sentinels are DEV-01/02/03/04 (PERF-08/09 scope, narrower alternative, optional syntax and resolved idiom). If sprint 11 changes candidate/extract wording, freeze both new identities before running those exact unchanged inputs; compare their original scoped outcomes and check that attribution uncertainty is not turned into a missing performance prerequisite. This is development replay, not new holdout credit. The added #20353/#20287/#20296/#19995 mappings explain already-required rules; DEV-06/07/13 are existing source-related controls, not newly failing cases, and #20287/#19995 have no dedicated executed packet. DEV-05's #20261 source-label correction (unsupported model association -> uncertain composition) likewise changes neither its input/oracle nor its human-evidence credit. There is no basis here for a new semantic rule or a blanket replay mandate. A later semantic edit must name its exact rule delta and affected cases before execution; no such edit is authorized by a passing old C5 score.

Sprint-11 bounded semantic validation

Accepted after input-isolation repair: C6-S's selected complete replay matches 36/36 frozen concerns, with zero unsupported findings. C6's original shared PERF-11 extract disclosed a later executable-test repair to historical pre-fix DEV-06; its score and artifacts remain historical, not clean-isolation acceptance. C6-S uses the unchanged candidate with a sanitized extract and actual new outputs, including strict-isolation replacements described below. The set covers 28 real historical inputs from 23 PRs and eight synthetic controls. Eight previously seen evaluation cases remain in seven families; no new independent holdout or verified-human-composition credit is claimed. Source-attributed feedback is usable with the recorded composition limits; replay does not authenticate authorship.

Archive T = R\b8acc633-d504-4744-b6c6-467dd7b37ea1\files, using R from archive coordinates. P = T\bounded-validation, F = T\c6-validation. Each has frozen candidate/rules, separately stored evaluator oracles, isolated reviewer packets, verbatim outputs, invocation envelopes and per-case status/hashes. T\final-checks.json and ending-identities.json record final checks and document identities outside the repository. Private orchestration is not a deliverable.

Recovery, measured miss and final freeze

The original C5 candidate/extract, 33 transcripts and packet identities were verified, including the corrected MIX-01 author benchmark. The case-only checker again passed 33 outputs / 345 rows. They were accepted as the existing C5 full execution: there was no recovery-triggered 33-run batch. Sprint 10 changed attribution, not decisions. Its provenance-only substitutions were applied to candidate C5-P, the sanitized extract and the integration link label; four unchanged development sentinels passed. Two source conversations lacked dedicated executions, so three source-selected development inputs were frozen before outputs, below.

C5-P scored 6/7, not acceptance. SRC-02 credited automatic listener removal but missed remaining cacheId/filtering and always-on Debug Stats.Incr cost. Generic external-listener comparability did not satisfy that concern. Independent evaluation checked the original source and oracle; P\source-evaluation.md retains the miss, two other source matches and independently supported additional risks. Original SRC-02 output SHA-256 is 91ce9f2e6d65f3b7887097cf4dcdb6179a9b226742bdcdc0530aba84d4a46ac1. No oracle, packet or output was rewritten.

C6's sole decision-rule change is conditional PERF-05 instrumentation assessment: credit repaired ownership separately from remaining collection costs; request relevant enabled/disabled evidence or justify bounded accounting without banning useful diagnostics or prescribing a directive. The #19995 source mapping supports that repair. A fresh SRC-02 focused run passed (F\focused\SRC-02.md, SHA-256 02c5179e9d8d70ff0b7880cb366a07f2e126796fd9cfb03f2e164862c77fd2b3), then all 36 cases ran once under the unchanged C6 freeze. The already-exposed cache-listener family remains development; this repair consumed no evaluation family and requires no new replacement. REPL-01 retains only its original independent-family credit.

Freeze / execution

Identity and actual scope

C5-P, 2026-09-22T17:58:04.746466Z

Candidate UTF-8/LF 08e484753187881209155442bb05157ca30aef636f3c319372d85d75535b2708; rules 5c792b62db3fc6b6400f974e2f489940d1a8a264666f00ca756f8bc9ab795510; manifest 4673852e63b43190a00869d1eb21200bba052f786e704ddf1d6e7a8ffed93de5. Seven executions: four development replays, three first-executed development controls; no retries.

C6, 2026-09-22T18:12:29.272712Z

Repository candidate exact bytes 69452a977cbde32afacd0dc4e2dc9f12ae96cd3ee4d98f890122dc56ad079e0f; normalized LF and actual supplied candidate 3d3b2a2d87420715e0f983020da07e55a1f8392219577657ce8ef29ee8a3b7fb; rules 2affb8050e84a80228798bbdc6b9e167e168664f473a8bda781e1ba78a6556d7.

C6 manifest and effective rules

F\freeze.json 0c6191487aec8504adad2980d0db4920457368f6e03f1f585edc237b7e1be0ef; effective projection c53483cab14c11796410ab52f99f8d7911828e753f490197696d77915241c937. Only PERF-05 changes from sprint 10's projection; metric rows and other eleven rules are unchanged. All 402 reviewer members and eight evaluator files match the freeze.

Original C6 execution

Named performance-improvement-review, Copilot CLI 1.0.87 / gpt-6-astra, inherited without override or fallback. Full-suite launches start 2026-09-22T18:16:42.944Z; all complete by 18:32:53.285Z. 37 C6 invocations = one focused check + 36 replays, not 37 distinct cases. No original-output retry or stale-result substitution; later isolation rejection remains above.

Invocation and evaluation records

F\invocation-events.json 098d3a4f4ba9e5bfa64786e7bf539423214df5c7dd4c3b6b3ed76a6e26ec7c2d stores exact launch/completion IDs, prompts, model and timestamps. Independent full-output F\scoring.json 500d9be853a43b423aab1a7b86e25a9b83a14f5d0dfe4d42ce675cfd293243c4; .md daefd7ff5155058b14dd1bea11d24fcd1dbdf95d723457d2fe816ca4ed198b54.

Each original reviewer ran in a separate one-case context with full candidate instructions, rule/metric extract, complete pinned diff and relevant source/signature/test context. Direct discussion/oracle/other-output reads were excluded, but the extract was not fully sanitized: PERF-11 said "Recognize the final test executes it" regardless of the selected historical revision. Hash and shape checks did not detect this content leak. Additional code reads were limited to that packet's Git pins. Full author measurements were retained, including MIX-01's 25,152-byte artifact. Reviewers only saved their own unedited private outputs; evaluators only saved private scores. The orchestrator alone edited repository documents. Neither author-reported nor synthetic measurements/tests were executed here.

Input-isolation repair and sanitized replay

C6-S uses the unchanged C6 candidate and general decision gates, with a case-neutral extract. PERF-11 now credits runtime assertions only when the supplied pinned test invokes them; the extract also removes residual thread/family references and the case-specific 321 MB figure. No packet, source pin, benchmark, oracle or prior output changed. This correction supersedes earlier "sanitized" and "later fixes excluded" descriptions wherever the older extract was supplied; their observed scores remain historical, not clean-isolation acceptance.

Archive U = R\7b621641-31f6-4465-9fb7-e0cca80e32f2\files; D = U\c6-sanitized. The first affected DEV-06 run detected the nonexecuting conditional, then all 36 cases ran under this freeze. Tool-trace inspection additionally found generic compiler-review skill loads in that focused run and DEV-06/08/10/11. Although the skill contained no withheld case fact, these five contexts were excluded rather than silently accepted. A frozen wrapper clarification identifies artifact-only calibration, without changing reviewer rules or hinting outcomes. One clean focused run and four clean replacements completed; original outputs remain untouched.

Identity / execution

Actual scope

C6-S freeze, 2026-09-22T19:09:22.064505Z

D\freeze.json SHA-256 05a9e997292f66dd0efb708ebce0f68957a551b7270dd49b4fc4425c1668a759; candidate LF 3d3b2a2d87420715e0f983020da07e55a1f8392219577657ce8ef29ee8a3b7fb; sanitized extract 72c94967b79861ad210f105ce3f601eb77d31b5be6057adb46e2a93aa3654bea. All 402 packet members and eight oracle files equal F.

Isolation retry freeze, 2026-09-22T19:32:18.437499Z

D\isolation-retries\freeze.json 669d091916eb955b1e3c9f9d2b3b9d2f62ff8f946cbee1cf27cfd57c55157fec; exclusions selected by tool-boundary violation, not semantic score.

Actual reviewer execution

Named performance-improvement-review, Copilot CLI 1.0.87 / gpt-6-astra, inherited configuration, no override/fallback. Full batch launched 19:14:10.139Z; final selected replacement completed 19:41:52.307Z on 2026-09-22. 42 invocations = 36 original replays + one original focused run + five isolation retries; 36 distinct cases, zero first-seen cases.

Selected transcripts

D\selection.json 0a0fe2364a6aef616034647fbd9506de638be87c5f7c67d28170bb357feda905 records every selected path, input/payload/oracle/output hash, invocation, agent ID and timestamp. DEV-06/08/10/11 use isolation-retries\outputs; all others use outputs. The focused run is separate, never substituted for DEV-06.

Input-boundary regression checks

The old extract fails the history guard; the new one passes. U\isolation-tool-audit.json retains all 1,041 reviewer tool calls. Every selected context has zero skill loads, unauthorized source reads or writes; temporary overflow reads resolve to that same context's pinned command output. Exact saved transcript bytes match the recorded single output-creation patch. MIX-01 retains its 25,152-byte author benchmark.

Semantic evaluation

Original batch D\scoring.json 67b55d2f9bee1ec6acddd8c97179368cad718cac105f67028d92b165aeb77715; replacements D\isolation-retries\scoring.json e0c553f909e8993003a0828fe673b1c547f5f273618357b7316675db4152b7ad. Selected aggregate D\selected-scoring.json 381bd679b366639cf90607abbdc8b9ca64e4751145fbcf0b7f647109fc139392: 36 matches, zero misses, zero unsupported findings.

Evaluator limitation: a locator search exposed historical DEV-01 result lines to the evaluator, not to any reviewer. It then checked the actual outputs, frozen concerns and pinned mechanisms rather than importing those scores. Original evaluator records and the selected aggregate preserve this caveat; no blinded-evaluator claim is made. This does not change reviewer isolation, source provenance, case eligibility or first-seen counts.

Added source-backed oracles

All three were selected from the named sprint-10 conversations, not from candidate outputs or a reserve-wide search. Exact source comments and the oracles were frozen in P before execution and copied unchanged to F. These are development, not three new holdouts or certified-human votes. Existing DEV-01/02/03/04 cover scope/optional syntax; DEV-07 and DEV-13 actually cover the elapsed/allocation distinction and resolved typed/shared-settings key.

Case / historical input

Evaluator-only source and frozen concern / required evidence

Oracle SHA-256

SRC-01 / #20287 final; base e631ed7f4f210cb3dade65b1d6341bb7106e51bb, head 9252af630067c59e8fd087380a5d52ecd95c15a6

Reader question, qualification, answer, originally at 63df5b0fb83a5439dcad47672c01df9b6ad6fe57. Credit wrapper saving/tables/runs; shared readers do not imply one releasable closure per owner. Any different last-owner risk needs a concrete caller/root/consequence; no universal clearing policy.

a9c49a55cc982c4da0398829af5152ee0b4fc1fd73259818d8d115c38cd0510d

SRC-02 / #19995 original code-only; base 9ae5fc5cfe81ec24f980fea30972be382f83f9b8, head f96b70e1c112af68b5e14fd75fca4bc6ca7308c2

Tag cost, narrower gate. Credit automatic listener repair, assess remaining tags/filtering/direct Debug counters and request relevant exporter/on-off cost evidence or bounded alternative. No measured slowdown or mandatory directive.

8f200f1df42b149975c576e677d47b9112b90b777d5586f5e139de9f752d3fff

SRC-03 / #19995 final; base ea3908edab08f1009d0bde1883778797c785170a, head bd2148ba7aff3a9f365be52a4e4769a56fef8acf

Stats alternative, aggregation accepted, author rationale. Recognize removed listeners/IDs, disposable aggregation and serialized deltas; credit author measurements but catch their stale direct-Stats account. Request final-binary/lifecycle evidence, not mandatory per-instance Stats.

e5549a09cd164500ef16baa0a89c5083299e3b2fd8b147c8b38ef836d667744a

Final case matrix

Source/oracle coordinates and required evidence remain in the original DEV matrix, exact HOLD oracle, REPL-01, MIX-01, BENCH-01 and the SRC table above. Every row below uses C6-S's selected actual output, not the original C6 score. Hashes are prefixes of input.md / exact unedited output; D's freeze, selection and selected score contain full identities. The earlier C6 matrix/score remains in F\scoring.json/.md. Outcome words describe scoped checks, not overall PR approval.

Case / source-oracle

Expected evidence and actual scoped outcome

Input / output SHA-256 prefixes

Evaluation

DEV-01 / P01/A

Needs evidence for remapper breadth/value and equivalence; 321 MB credited, no invented traversal defect.

f30a42d043fe / da56eb23ea28

Match

DEV-02 / P02/B

Local reuse passes; supplied repetitions/tests credited; spread/binaries/commands still needed.

04f2be685989 / 015ad056bad4

Match

DEV-03 / P03/C

Syntax-speed comparison not applicable; clarity optional, no timing prerequisite.

e3e314d6164d / f01922c023d3

Match

DEV-04 / P04/D

Adopted comprehensions/local scope pass; protocol/error/results needed, no sampled-CPU-to-build inference.

5d433db57e19 / b12a6c2d9aa8

Match

DEV-05 / P05/E

Retention/table/three processes credited; roots/GC/spread needed, not faster time.

96752a4b76cb / 904e296f2499

Match

DEV-06 / P06/F

Detects nonexecuting conditional without later-fix hint; separate source-supported failed-lazy diagnostic risk.

cbe4f8ce667f / bdf29defb5eb

Match

DEV-07 / P07/G

Executing harness passes; net allocation/range proof needed; no stale compile-only finding.

698c223c1c0e / 445e802fe799

Match

DEV-08 / P08/H

Current order passes; producer contract still needs comment/assertion, not consumer prose.

f3d8d7074d08 / 1cfd955cf5b0

Match

DEV-09 / P09/I

Producer repair/reported comparisons credited; methodology/execution still needed.

b57a4ab99b24 / 2b5cb493dcf3

Match

DEV-10 / P10/J

Needs CE workload/lookup/range evidence; build log is not comparative speed.

1ff359bc5315 / aa08164d94f5

Match

DEV-11 / P11/K

2 MB versus 61 MB and unresolved-thunk repair credited; matched flags/lifecycle needed; abandoned-claim risk checked.

a752ee8caa27 / 23d7857cf4ab

Match

DEV-12 / P12/L

Retains N=8 slowdown/censored failures and both emitted modes; runtime trade-offs needed, not identical promoted IL.

271f6a93a744 / 9cdd548d470a

Match

DEV-13 / P13/M

Retention/warm time and nine rotated samples credited; spread/lifecycle needed; root-key and conditional ABI risks checked.

2bd641750a29 / 3fd1f80337c9

Match

DEV-14 / S01

Bare Faster needs workload/implementation/measurements; no invented defect.

bace772e62d2 / f410f1987ada

Match

DEV-15 / S02

Stipulated closure-count/semantics pass; reproduction gaps separate, no timing/GC prerequisite.

d4116d5c6f15 / 41a36e5e5b56

Match

DEV-16 / S03

Stipulated rooted linear retention is risk despite latency win; no observed OOM claim.

97d8213c82e4 / 641c8453f2ea

Match

DEV-17 / S04

Spelling-only no-claim metric gates not applicable.

d18f8996f565 / db31fcefec5e

Match

DEV-18 / S05

Difference uncertainty/value needed; supplied intervals/runs credited, no arbitrary threshold.

3fe07019f75f / c2c197a70bf2

Match

DEV-19 / S06

Allocation/resource evidence passes despite flat time; protocol/value gaps remain scoped.

408cd21095cd / ccde16e2e95d

Match

DEV-20 / S07

Runtime/semantic stipulations pass; intentionally different IL allowed.

ad89a9c1f23f / 22e0537bf152

Match

HOLD-01 / #20388 original

Concrete covariant downcast failure is risk, not policy uncertainty.

48032622dad1 / 51d6b30ccf67

Match

HOLD-02 / #20388 final

Covariance/docs repairs pass; measurement gaps remain, no universal freshness/CWT policy imposed.

253b3c16f06a / a4f610dd55f1

Match

HOLD-03 / #20367

Narrow inline/control flow passes; sampled allocation/binary/output provenance needed.

bbb310d0c7fc / 9d0fa839eb46

Match

HOLD-04 / #20544

No speed gate; SDK-script host/Core availability remains a qualified execution question.

850ca9381f8c / 78af0560ad5e

Match

HOLD-05 / #20444

Test-only characterization/assertion shape passes; targeted results, not product benchmarks.

5059588b0a45 / d78a1405ebf6

Match

HOLD-06 / #20436

Docs-only metric gates not applicable; editorial/product-compatibility scope passes, no embedded-command execution.

fa2f3b3622ee / be6d1fff3705

Match

HOLD-07 / #20119

Strong historical-reader ownership and project-removal gap are risks; serialized-first-use race excluded.

2946fad8082f / f81c4450b5de

Match

HOLD-08 / #20587

Static partition credited; critical path/queue/compute/actual test-union evidence needed.

0df2f71c513d / 65b3d8857772

Match

HOLD-09 / #18509

Same-runtime intrinsics-disabled measurement explicitly required; Framework/table evidence credited; conditional float32 risk separate.

d10258f7b296 / 36141c557536

Match

HOLD-10 / #20507

Additive immutable API passes; formatting-option execution needed, no performance gate.

9f7281bb98ed / a5f6336b4a79

Match

REPL-01 / #20358

Core asset/fallback/branch measurements needed; existing semantics/tests credited, no invented pointer/SIMD defect.

9fec7df157b5 / 9764c745caf6

Match

MIX-01 / #20455

Author ablation/8 B saving pass; timing-parity and absent-subscription evidence needed, synthetic Update not an IDE regression.

a20d2a38438f / 7416dda0cc92

Match

BENCH-01 / fixture

Benchmark coverage passes; no product speed claim or Dry-as-statistics inference.

ceb1e223d8e1 / ab73d7e68471

Match

SRC-01 / #20287

Shared-reader premise qualified; tables/noise credited; distinct last-owner retention risk substantiated.

165c4145309b / e232550b744f

Match

SRC-02 / #19995 original

Ownership repair passes; remaining tags/filter/counters/exporter costs need evidence, not a mandatory gate.

ad43e41cb999 / 8a89212316fe

Match

SRC-03 / #19995 final

Aggregation/serialization repairs credited; stale prose/final-binary evidence gap and public-listener removal distinguished.

05851a3f32cd / 7718b4c8baea

Match

The evaluator checked pinned callers/preconditions/consequences for additional risks. DEV-11 identifies abandoned publication ownership after a later batch import fails, not C5's losing-importer-context trace. SRC-01 requires the forced store to become the callback/context's last owner; the shared-reader workload does not establish per-wrapper release savings. SRC-03's removed public disposable listener is separate from the repaired automatic leak. Diagnostic-cache, cyclic sharing-key, conditional Create binding and editor retention/removal traces remain in D's selected score. HOLD-02 raises no CWT/freshness blocker in this replay; F's earlier conditional finding remains historical. These are source-derived conditional failures, not executed field results, measured regressions or universal compatibility policies.

HOLD-09's additional float32 risk received separate dependency verification: the packet names .NET 9.0.4, whose pinned LINQ source uses a Double accumulator for Single inputs. Under the stated ordinary-rounding preconditions, [2^24; 1; -2^24] analytically changes from 0 to 1 versus the pinned old Single fold, independently of SIMD. Exact API/source bytes and the addendum are in D\evaluations\HOLD-09-runtime-source.*; addendum SHA-256 96f21db44542fd88e9e94afc132cb4bc552c144a104d31d1c006c8847354d1c0. This is source/mathematical proof, not an executed result, new human precedent, changed oracle or enlarged corpus.

Final acceptance and coverage checks

Obligation

Actual result

Frozen final semantics and complete replay

C6 candidate/effective rules unchanged; C6-S extract, all payload/oracle identities and 36 selected actual outputs verified. Source-checked evaluation: 36 matches / zero misses / zero unsupported findings, with the disclosed evaluator-blindness limit. C5/C6 historical outputs are not substituted.

Source-backed concerns and preserved failures

All six named conversations have actual scoped outputs. Source-attributed feedback, author rationale, request-origin and synthetic evidence stay separate. C3 HOLD-09, C4 HOLD-01, C4 formatting retry, C5 scoring correction and C5-P SRC-02 miss remain auditable.

Isolation, eligibility and first-seen accounting

86 sprint-11 reviewer invocations: 44 in iteration 1 plus 42 in iteration 2. The selected 36 and clean focused sentinel have sealed one-case inputs; five additional contexts remain excluded. Only SRC-01/02/03 were first-executed in sprint 11, all development, in iteration 1. All iteration-2 cases are replays.

Family separation and replacements

Core-empty-array/inline-closures/realsig-TLR/vector-sum stay development; MIX shares VS-work-reuse. The instrumentation repair used exposed development, and the isolation repair changed no decision rule. No tuned holdout was relabeled independent; REPL-01 retains only its original family credit.

Required applicability

Actual coverage includes real mixed/test/docs/generated/API/behavior/lifecycle controls and strong/weak/noise/narrow-win cases. BENCH-01 supplies synthetic benchmark-only coverage; real benchmark-only credit is zero, with no repeated search.

Actual output contract

All 36 selected single tables have eight ordered full groups, five nonempty columns, only four permitted outcomes and an allowed final recommendation. 364 rows: 137 pass, 184 needs evidence, 32 not applicable, 11 risk/blocker. Semantic scoring separately verifies concrete proof/unknown/action, qualifications and recommendations; row totals are observations, not acceptance targets.

Local integrity and boundaries

Relative links/anchors, rule/case/source references, frozen inputs/outputs, historical oracles and git diff --check pass. Iteration 2 edits only validation/corpus within the five-file delivery surface; candidate, skill and evidence stay unchanged. HEAD/index unchanged; no staging/commit/push/GitHub write, compiler build/test, benchmark or formatting sweep. All required reviewer/evaluator work is complete; final checks and ending identities are in U.

Sprint-12 delivery audit

Audited 2026-09-22: C6-S remains the accepted replay; no reviewer semantics, input, oracle, selection or score changed during delivery. The audit reused the existing shape, anchor, effective-rule and C6-S closure assertions read-only, replacing archive writes with equality checks. Historical C3/C5 fixed-hash checks were not misapplied to C6. Checks and pre-edit identities are in R\9168de79-7d16-4602-9ba9-74a3162b550d\files\audit_delivery.py, audit-results.json and starting-identities.json; no private artifact is a repository deliverable.

Acceptance item

Verified final artifact/result

Evidence-first review and measurement contract

Agent G1-G4 / PERF-01..04 require value/workload, before/after tables with units, baseline/changed binaries and configuration, repetitions, variability, environment and reproduction. Conditional metric maps cover time, memory, allocation/GC, closures, CPU/concurrency, startup/build and workload measures. DEV-05/12/13/15/18/19/20, HOLD-09, REPL-01 and MIX-01 demonstrate scoped credit and specific requests rather than universal demands.

Behavior, resources and surgical risk

G5-G8 / PERF-05..12 retain API/compatibility, lifecycle, repeated work, isolation, helper reuse and scope gates. DEV-01..04/06..11, HOLD-01/02/07 and SRC-01..03 preserve resolved concerns and distinguish missing proof from substantiated caller/resource failures. Eight ordered groups, four outcomes, proof/unknown/action fields and final recommendations are intact.

Actual regression and isolation

Every selected case has its frozen expectation, verbatim transcript, successful named invocation and matching score: 36 cases, 402 packet members, eight oracle files; 36 recorded semantic matches, zero misses/unsupported findings. Recomputed shape is 364 rows: 137 pass, 184 needs evidence, 32 not applicable, 11 risk/blocker. Four full-suite isolation replacements and the separate focused sentinel remain correctly selected; failed/excluded executions and the evaluator-exposure caveat remain visible. This is artifact verification, not a new replay or semantic rescore.

Final identities

Candidate LF 3d3b2a2d87420715e0f983020da07e55a1f8392219577657ce8ef29ee8a3b7fb, effective rules c53483cab14c11796410ab52f99f8d7911828e753f490197696d77915241c937, sanitized extract 72c94967b79861ad210f105ce3f601eb77d31b5be6057adb46e2a93aa3654bea. Candidate, input/payload/oracle/output and invocation hashes match C6-S's freeze/selection/score records; original RED packets and expectations are unchanged.

Discovery, references and sources

Unique two-field YAML name/description verified; the current catalog exposes performance-improvement-review, and archived C6-S calls actually used that name. The skill's aggregate change is only the four-line discovery reference, with general dispatch unchanged. 72 relative links/anchors, twelve unique PERF definitions, 36 unique final case IDs and 259 cited comment/review URLs against matching archived API IDs pass. The first source-index pass omitted activity/context channel files; including those existing captures resolved all seven lookup gaps without retrieval or source edits.

Coverage and provenance

485 inventory PRs, 94 reserved-source ledgers/diffs/channel hashes and the 804-entry benchmark screen reconcile. Effective included split remains 63 development / 59 holdout candidates, 319 connected groups; executed evaluation coverage is eight previously seen cases in seven families. The suite has 28 real inputs from 23 PRs plus eight synthetic controls. Named reviewer feedback, author measurements/rationale, explicit automation, uncertain composition and request-origin controls remain distinct; no unaided-human-composition certification is inferred.

Delivery scope and local checks

Aggregate and pending changes are limited to the five authorized paths; prior commits are preserved. No required reviewer/evaluator writer remains active. git diff --check and git diff --cached --check pass; explicit-path staging produced exactly the five authorized files, and the staged candidate matches the normalized identity above. The agent, skill, corpus and evidence bytes are unchanged during this audit; only this document received navigation/status additions. No compiler build/test, benchmark reproduction, formatting sweep, product release note, push or GitHub post is part of this Markdown-only delivery.

Real benchmark-only PR coverage remains zero; BENCH-01 is synthetic contract coverage, not human grounding or a real holdout. Deleted/private evidence, mutable historical edits, timeline-total anomalies and unavailable Azure payloads retain their recorded limits. Replays do not create independent holdouts, and source-derived failure scenarios are not executed product failures.

Multiple items
val int: value: 'T -> int (requires member op_Explicit)

--------------------
type int = int32

--------------------
type int<'Measure> =
  int
val set: elements: 'T seq -> Set<'T> (requires comparison)
module Array
from Microsoft.FSharp.Collections
val init: count: int -> initializer: (int -> 'T) -> 'T array
val sum: array: 'T array -> 'T (requires member (+) and member Zero)

Type something to start searching.