Repository navigation
Conversation
Define versioned evidence and investigation-state contracts, a pinned execution policy, and a fail-closed bisection admission gate with dependency-free tests. No workflow or reproduction execution is enabled. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Reuse the budget contract to reject missing approval and unpinned policy or workflow identities. Cover invalid contexts and counter-independent epochs with table-driven tests. Validation: node --test eng\regression-bisect\model.test.cjs (RED: 5 failing epoch cases; GREEN: 215 passing tests). Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Read the trusted checkout policy into a private snapshot so caller mutations cannot expand limits or alter authorization and issue selection. Cover mutations both before and after model initialization. RED: three new policy mutation cases failed with Missing expected exception. GREEN: node --test eng\regression-bisect\model.test.cjs passed all 218 tests. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Preserve unsigned Windows DWORD exit statuses as well as existing signed statuses without normalizing exact frozen assertions. Cover valid boundaries, malformed statuses, repeated classification, and source observation validation. Make the same-source fixture internally consistent and exercise mixed matrix outcomes at all three endpoints, including rejection of forged aggregates. Production admission logic and shared fixtures remain unchanged. RED: node --test --test-reporter=tap eng\regression-bisect\model.test.cjs failed four Windows status cases (246 passed) before the validator fix. GREEN: node --test eng\regression-bisect\model.test.cjs passed all 250 tests. All three CommonJS syntax checks and committed/working diff checks passed. Disposable mutations passed all 218 original tests. Corrected tests detect removed strict ancestry (1 failure) and first-cell-only aggregation (12 failures). No compiler builds, workflow activation, live issue execution, or push. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Read complete issue discussions and linked investigations; resume bounded discovery without cursor starvation. Persist authenticated issue-comment checkpoints with charged reservations, replay-safe completions, cancellation recovery and selective evidence invalidation. Validation: 368 Node tests passed, including serialized checkpoint replay and intake/state integration; scoped syntax and diff checks passed. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Bind checkpoint generations and exact bodies to independent signed commit-status receipts. Recover interrupted writes only through authenticated predecessor links, without refunding reservations. Populate endpoint and interval tests to enforce selective invalidation and retained historical evidence. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…ecks Authenticate and restore the original generation-zero receipt without rebuilding state from changed inputs. Preserve its allowance and deadline, and keep current eligibility and approval checks at load and reservation time. Cover both initialization interruption points across input and eligibility changes, reject forged/noninitial recovery, and document the recovery contract. Scoped validation: 421 Node tests, seven syntax checks, isolated checkpoint replay, and diff checks passed. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Hold fallback page/offset selections for expanding schedule windows so nonconsecutive bounded-gap ordinals cannot alias discovery. Reject timeline cross-references without resolvable issue identities before freezing intake. Cover missing/redacted cross-references, missing/corrupt cursor recovery at schedule strides 1 and 60, and exact large-ordinal boundaries. All 429 scoped Node tests, seven syntax checks, isolated checkpoint replay, and diff checks passed. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Resolve stable SDKs from official metadata, verify isolated archive and F# runtime identities through the reused installer, and retain coupled source-toolchain transitions. Add bounded real-acquisition smoke and public-feed policy coverage. Validation: 304 required model/toolchain tests and 516 related Node tests passed; seven CJS syntax checks and staged diff check passed. Real Windows x64 smoke acquired and verified SDK 10.0.401 with runtime 10.0.12, then cleaned temporary storage. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Preserve musl installer OS selection, verify versioned host RIDs against the acquired SDK graph, and isolate each runtime trace. Bind execution evidence to config paths as well as digests and exercise acquisition-generated admission records. Validation: 538 Node tests, scoped syntax and diff checks, and real Windows SDK 10.0.401 acquisition with runtime 10.0.12. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Reject redirects without a usable Location before another request. Exercise malformed local runtime traces and pre-request public-feed checks through production acquisition boundaries. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Synchronize loopback delivery and file closure with installer verification and cleanup. Cover controlled completion ordering, late delivery errors, and missing archive GETs. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Verify FSI, executed MSBuild compiler/task/target/Core identities, runtime assertions, and immutable producer metadata. Add bounded process handling, structured evidence tooling, and real released/local-product smoke fixtures. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Use weak assembly tracking, verify generated nullable flags, and strengthen containment and referenced-project coverage. Validate with scoped contracts and released/clean-local product smoke fixtures. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Compose exact toolchain acquisition, clean product builds, artifact inventory and frozen reproduction execution. Add workspace isolation, cancellation and contamination contracts plus a bounded opt-in source smoke. Validation: syntax checks and 498 scoped Node tests passed. The pinned real smoke remains untestable because the declared SDK's public SHA-512 endpoints return 404; retain and document the exact blocker without claiming a successful compiler build. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Repack built Core into its evaluated standalone output, preserve package identity checks, and invalidate cancelled observations including staged builds. Contain Windows process trees with a job supervisor while allowing detached build servers to exit cleanly. Reuse private NuGet machine paths across worker processes. Validation: 519 scoped tests pass, command/package mutations are rejected, and syntax/format/whitespace checks pass. Pinned clean-build smoke remains untestable: exact SDK checksum feeds return 404; evidence is recorded in the README. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Exercise expected failures, unexpected diagnostics, timeouts and mixed repeats through the real source worker. Verify returned and persisted outcomes and record scoped validation with the exact-SDK smoke blocker. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Keep flaky repetition classification covered by the parameterized model suite. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Avoid a premature-close race when the installer receives all archive bytes before the file stream performs its final EOF read. Reproduce with delayed EOF through the actual loopback transport. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Distinguish publisher checksums from exact approved historical HTTPS measurements, retain and verify installer bytes, and preserve explicit blocked reasons. Repair clean-workspace evidence collection and exercise fresh released/source product smokes without SDK or Core fallback. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Validate serialized archive paths using worker OS semantics and retain acquisition failure stages in workspace evidence. Add runtime reuse and cross-host checkpoint regressions, with fresh historical build and released/source acceptance evidence. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Retain checksum-provenance, SHA256 diagnostic and no-process assertions in the existing parameterized wrong-digest case. Record fresh clean-workspace and released/source acceptance. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Classify synchronous URL and redirect validation failures without conflating them with unavailable archives or network failures. Cover native HTTP and injected availability responses, and record fresh clean-workspace and released/source smoke acceptance. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Authenticate endpoint evidence before any Git bisect operation, preserve finite issue reservations, and reconstruct typed decisions in isolated history workspaces. Stop at fresh-confirmation intent or explicit uncertainty. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Persist compact intervals and reconstruct Git decisions from all comparable authenticated source evidence, including older-search failures and skips. Separate admission from the last completed item's attempt count and require fresh candidate/parent attempt capacity before confirmation. Cover large real-Git intervals, retries, cumulative/time boundaries, and worker-result integrity rejection. Keep policy limits and confirmation-only attribution unchanged. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Reject stale input and endpoint identities before claiming reserved work, enforce its absolute deadline across asynchronous setup, and separate sample SDK acquisition provenance from tested source identity. Add real-runner historical runtime coverage and count denied bisect processes independently of engine error handling. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Require fresh charged candidate and parent runs, retain history and PR uncertainty, and prepare authenticated issue-specific publication intents without publishing results. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Keep Git display evidence bounded and conservative, deduplicate report product identities while retaining authenticated receipts, and recover lost publication acknowledgements before optional evidence refresh. Cover semantic rendering, paginated associations, crash points, and publication-only execution denial. Focused acceptance: 212 attribution/report, 279 model, and 265 state/engine tests passed. Full-suite acceptance remains separate. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
The actual Linux bootstrap exited zero, but its surviving .NET diagnostic FIFO caused the scratch ownership return to fail. Remove only single-link UID1000 FIFOs and sockets after historical processes terminate. Preserve prelaunch, owner, hard-link and device denials, and surface failed unlink operations. Cover successful and failing commands with safe container fixtures. Keep resource ceilings and the original Ralph journal unchanged. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 20b10bf6-6a7c-483a-8d09-d521e7ddd73d
The historical build correctly pins its SDK's 10.0.9 runtime, while the frozen sample SDK includes only 10.0.13. Both source build commands passed in the actual hosted run before runtime selection correctly rejected it. Freeze the source compiler runtime from exact publisher SDK metadata and declare it as an explicit source-smoke runtime requirement. Reuse the existing supplemental-runtime installer and its archive, identity and actual-load checks. Do not change product runtime identity, loosen the collector, retarget a source revision or change investigation allowances. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 20b10bf6-6a7c-483a-8d09-d521e7ddd73d
Reuse the controller, production adapter, historical execution lane and durable collector for the missing Linux acceptance proofs. Retain immutable producer package bytes and authenticate collected evidence from a new process after launch scratch removal. Keep this allowance separate from the preserved six-unit trial. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
The real Linux stable endpoint completed both intended FSI failure assertions, but collection rejected the publisher SDK because its bundled Core is not byte-identical to either framework asset in the shipped NuGet package. Bind the package separately to the acquired SDK and keep the source-build package consistency guard. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
The real controller stable and clean source units both committed intended FSI failures. Their retained source result exposed two acceptance harness defects: supplemental same-line runtimes made producer compilation ambiguous, and a read-only evidence store lacks the collector discovery API. Reuse the source unit's acquired build SDK for local consumers and a separately verified released installation for released consumers. Reopen the existing collector-capable store only after launch deletion, and retain protected product write-denial hashes. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
The physical product write probe exposed that a helper DLL pathname used as data selected the trusted lane. Select that lane only for the exact SDK host, pinned helper runtime and DLL, and supported inspect/binlog operation. Other commands, including probes with helper path arguments, must execute through setpriv as the historical UID. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…bytes The real protected export exceeded its unchanged 64 MiB evidence limit. Retain all official publisher response bytes losslessly with gzip and original digests, with bounded decoding and legacy raw-record support. The measured retained metadata shrinks from 14,038,414 to 2,535,176 bytes. Export the matrix supplement once in result.json instead of copying it into source.json. No evidence quotas, resource limits or timers are increased. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…tibility The real contained matrix authenticated after worker and launch-scratch deletion, but its old SDK task rejected the local targets' AlwaysInline parameter before compilation. Keep the successful-build requirement and use verified compatible task/Core bytes at an off-inventory path for the negative. Retain real command intervals, bounded case measurements and the fresh reader PID/exit receipt. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Document the source-bound owned-fork run, actual products, 47-case matrix, immutable producer and fresh durable reader. Mark earlier Windows feasibility and harness receipts as historical, without claiming the separate six-unit trial or activating production. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…ory delivery Acquire the measured source runtime without changing released SDK bytes; authenticate endpoint-first Git and restart traces. Exercise six explicit one-unit invocations after current contained worker acceptance and recover a lost fake result acknowledgement. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…nce within fixed slots Reproduce the real sixth-observation overflow from retained authenticated data. Intern short identities and reuse bounded lossless gzip for signed results without raising comment limits, dropping evidence or breaking old records. Mask generated fixture keys before exporting Actions environment variables. The original six reservations and 660 charged minutes remain retained at run 39806658165. This separately reviewed same-graph/assertion replay is required by the repaired immutable helper hashes; it neither resets that journal nor adds a seventh reservation. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
… fixture independently of encoding Keep the unchanged legacy signed checkpoint as an authentication compatibility check instead of requiring new short-identity packing to reproduce its old bytes. The current initialized checkpoint still supplies the live freshness and copied-record exclusion checks. All 2662 scoped tests pass; the preceding failed validation prepared no trial or reservation. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
…covery transitions The real six-unit trial completed and wrote its fixture report once, but its final workflow only acknowledged a stale dispatch. Explicitly run duplicate acknowledgement, current-generation routing and persisted-report adoption before read-only verification. Exact process regression proves all three outcomes with unchanged six-worker charges and one result write. Retain both prior trials, their full charged reservations, observations and persisted report. The preceding ephemeral controller/key is gone; this same-graph replay does not forge or reset that owner, key, checkpoint or allowance. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Bind the actual owned-fork native run, six independently committed worker observations, fresh boundary confirmation, single persisted report adoption and read-only verification. Distinguish the current 660-minute trial from both retained charged prior trials and native patch representation differences. Production remains disabled; this documentation commit is local delivery only. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Reject absent, incomplete, unsuccessful and reordered selection traces before accepting authenticated search and confirmation reservations. Retain real Git results in the synthetic fixture and document physical receipt reuse. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Reject missing admission checkpoints even when later committed snapshots retain the same work record. Cover independent and combined reservation/claim loss through read-only CLI verification. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Reject missing authenticated reservation and execution-claim checkpoints for stable, main, good search and parent confirmation as well as the existing Git-selected workers. Cover all twelve individual transition losses and combined loss through read-only CLI verification. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Preserve the existing regression investigation and release notes while integrating current main to clear the PR merge-conflict gate. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Restore the exact shared actions-lock.json bytes after isolated v0.76.1 compilation so newer workflow setup entries remain intact. Keep both generated workflow hash checks and the full tracked-file drift guard. Cover the contract with a regression test and update the manual compilation example. Validated 2692 scoped tests and the exact validation YAML compilation step twice with the pinned release binary; workflow lock and shared registry hashes remain unchanged, including setup@v0.89.21. The existing executor owns the subsequent review and push; no concurrent remote head update was made. Co-authored-by: Copilot App <223556219+Copilot@users.noreply.github.com> Copilot-Session: 20b10bf6-6a7c-483a-8d09-d521e7ddd73d
T-Gro
left a comment
There was a problem hiding this comment.
🤖 🕵️ AI review — verify independently.
| requireValue(manifest.sources.some(s => s.path === relative && s.path.endsWith(".fsproj")), | ||
| "undeclared project reference (immutable producers must not be rebuilt)"); | ||
| const declared = manifest.matrix.filter(c => c.project === relative && c.configuration === cell.configuration); | ||
| const expected = declared.find(c => c.tfm === cell.tfm) ?? (declared.length === 1 ? declared[0] : null); |
There was a problem hiding this comment.
🤖 🕵️ [P2] Valid transitive graphs rejected as wrong-identity — with all four project/TFM cells declared, this expects Leaf/net10.0-windows7.0 instead of MSBuild's Leaf/net10.0. Resolve each edge against current.tfm, not the root cell's TFM.
<!-- App.fsproj -->
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup><TargetFramework>net10.0-windows7.0</TargetFramework><DisableTransitiveProjectReferences>true</DisableTransitiveProjectReferences></PropertyGroup>
<ItemGroup><ProjectReference Include="Library.fsproj" /></ItemGroup>
</Project>
<!-- Library.fsproj -->
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup><TargetFramework>net10.0</TargetFramework><DisableTransitiveProjectReferences>true</DisableTransitiveProjectReferences></PropertyGroup>
<ItemGroup><ProjectReference Include="Leaf.fsproj" /></ItemGroup>
</Project>
<!-- Leaf.fsproj -->
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup><TargetFrameworks>net10.0;net10.0-windows7.0</TargetFrameworks></PropertyGroup>
</Project>| async function selectFsiCommand({ product, toolchain, cell }) { | ||
| requireValue(["source", "released"].includes(product.kind), "unknown product kind"); | ||
| requireValue(toolchain.architecture === cell.architecture, "wrong host architecture"); | ||
| requireValue(toolchain.rid.startsWith({ windows: "win-", linux: "linux-", macos: "osx-" }[cell.os]), "wrong host OS"); |
There was a problem hiding this comment.
🤖 🕵️ [P2] Source-derived sample SDK rejected despite graph-verified host compatibility — in the supported workspace FSI lane, verifyToolchainIdentity accepts win10-x64 for requested win-x64, but this prefix check returns wrong host OS (untestable/wrong-identity) before FSI starts. Use the verified requested platform rather than reclassifying the measured host RID.
// Source-derived sample SDK identity:
// requested.platform = { os: "windows", architecture: "x64", rid: "win-x64" }
// rid = "win10-x64"
// Acquired RuntimeIdentifierGraph.json:
// { "runtimes": { "win10-x64": { "#import": ["win-x64"] } } }
verifyToolchainIdentity({ policy, toolchain: identity.requested, identity });
// { status: "verified" }
await runReproduction({ ...repro, toolchain: identity });
// untestable/wrong-identity: "wrong host OS"
Description
Add opt-in regression investigations that reproduce reported failures against released and historical F# toolchains, then bisect and confirm the source boundary. Resumable, authenticated checkpoints and retained evidence let maintainers recover interrupted investigations without publishing unverified results.
Checklist
Test cases added (not rerun for this PR-creation and release-note-only update)
Performance benchmarks added in case of performance changes
Release notes entry updated: