|
1 | 1 | # ADR-080: Isolate benchmark failures during publication |
2 | 2 |
|
3 | 3 | Status: Accepted; source implemented, delivered-source verification pending. |
4 | | -Date: 2026-10-04. Related: REQ/AC-BC-FAIL-001..011, ADR-056/074/076. |
| 4 | +Date: 2026-10-04. Related: REQ/AC-BC-FAIL-001..014, ADR-056/074/076. |
5 | 5 |
|
6 | 6 | ## Decision |
7 | 7 |
|
@@ -129,14 +129,72 @@ upload; cancellation/timeouts that prevent artifacts remain explicit blockers. |
129 | 129 | remain rejected as measurement/publication evidence. The registry test alone |
130 | 130 | accepts legitimate final-budget timeout facts and exposes Node stderr; its |
131 | 131 | production30s/2s bounds and success predicate remain unchanged. |
| 132 | + Under FAIL-SITE-PROBES (REQ/AC-BC-FAIL-012/013), genuine run37173267644 |
| 133 | + qualified all270 original cells and source/archive intake, but site135/158 |
| 134 | + passed. Nine direct failures are test-harness defects: default PascalCase |
| 135 | + request serialization disagrees with lowercase Node arithmetic input; numeric |
| 136 | + native DOMException.code is read as string; seven disposable SEO/vendor |
| 137 | + repositories omit the eagerly imported canonical isolated-contract.json. |
| 138 | + Native worker owns SiteNodeProbe.cs, SiteIsolatedNodeProgram.cs, |
| 139 | + SiteMetadataRejectionTests.cs and SiteVendorTestScope.cs under SiteTests; |
| 140 | + SiteVendorTokens.cs loses only the obsolete scratch-aggregate directory token. |
| 141 | + Use existing SiteTokens.JsonOptions, actual native error.name only when code |
| 142 | + is not a string, and exact source-byte copying of the canonical contract. |
| 143 | + Vendor-only source mutations retain the accepted fixture's full original |
| 144 | + aggregate/270-worker input directory as an unchanged read-only input. Remove |
| 145 | + the aggregate-only scratch copy: the native validator requires all271files, |
| 146 | + whose actual development inventory is2064912853bytes. Do not duplicate it |
| 147 | + for every vendor metadata mutation or weaken inventory/byte validation. |
| 148 | + Preserve median/AbortError assertions, real production builder, vendor bytes, |
| 149 | + every intended asset rejection, native inputs and all coverage thresholds. |
| 150 | + Existing16 focused cases are the regressions; root integrates/builds/formats |
| 151 | + and records actual source/patch/input identity for development evidence. |
| 152 | + Under FAIL-SITE-ADMISSION (REQ/AC-BC-FAIL-014), the same original TRX shows |
| 153 | + eleven independent full builders and two archive-verification children each |
| 154 | + reached the unchanged300s active deadline during the concurrent test burst. |
| 155 | + Before-session full native verification succeeded in60.14s; after-session |
| 156 | + verification/coverage completed in91.27s. Bounded original-input development |
| 157 | + profiling now measures native V8-instrumented CPU-heavy execution: one builder |
| 158 | + 44.014s and two53.448/53.444s; full277-input verification48.428s single and |
| 159 | + 59.707/75.799s concurrent, with peak per-child RSS below483MB on the actual |
| 160 | + macOS arm64 machine. These local observations do not prove GitHub saturation. |
| 161 | + The original TRX has25 builder cases plus12 produce-rejection cases, allowing |
| 162 | + 35 pending requests with two active. Approve two active children, at most64 |
| 163 | + FIFO waiters and20 minutes for cancellable admission within the existing |
| 164 | + 30-minute Aspire site-suite budget. Classify actual builder/produce/full |
| 165 | + inputs or CLI verify-inputs calls; light probes and native network capture |
| 166 | + remain independent. Producer owns SiteHeavyChildAdmission.cs, |
| 167 | + SiteHeavyChildLease.cs, SiteHeavyChildTokens.cs, |
| 168 | + SiteHeavyChildClassification.cs, SiteHeavyChildProcessFixture.cs, |
| 169 | + SiteHeavyChildAdmissionTests.cs and SiteHeavyChildCleanupTests.cs, and only |
| 170 | + modifies SiteIsolatedNodeProcess.cs, SiteIsolatedBuilderProcess.cs, |
| 171 | + SiteIsolatedGitHubNodeProcess.cs and SiteIsolatedGitHubNativeProcess.cs under |
| 172 | + the same SiteTests feature. Scoped actual admission instances permit real |
| 173 | + Node-child FIFO/capacity, queued-cancel, queue-full/deadline, start-failure, |
| 174 | + active-cancel, output-bound and unsafe-ownership tests; no mocked process, |
| 175 | + clock, transport or fabricated provider replaces the native dependency. |
| 176 | + Admission precedes the existing active deadline and is bounded/cancellable. |
| 177 | + Ownership lasts through real exit and settled readers, including failed or |
| 178 | + cancelled children. Unsafe incomplete cleanup poisons admission and rejects |
| 179 | + pending requests; it must not release capacity before exit/readers settle. |
| 180 | + Keep full270/277/raw checks and add real-process tests for |
| 181 | + concurrency, queued cancellation and failure/cleanup; do not extend300s, |
| 182 | + fabricate input, omit tests, reduce coverage or make an alternative publisher. |
| 183 | + All browser starts failed before Chrome; missing browser coverage is an |
| 184 | + observed consequence, not permission to remove its required inventory. |
| 185 | + Local development uses genuine original bytes and actual source/patch identity, |
| 186 | + never forged CI/GitHub environment or rebound original website/control fields. |
| 187 | + A focused development filter cannot qualify the full suite/coverage. |
| 188 | + Rollback reverts only these test-harness/admission changes and truthfully |
| 189 | + restores the observed qualification failure. No engine/data migration. |
132 | 190 | 5. Root reviews all diffs, builds solution, runs formatter/governance and focused |
133 | 191 | Aspire-owned suites, then checkpoints scoped changes on current main and pushes. |
134 | 192 | 6. Genuine Linux Benchmarks run qualifies all cells, aggregate, site coverage/browser |
135 | 193 | and Pages publication. Local tests are development proof only. |
136 | 194 |
|
137 | 195 | Migration is additive to version4 dispositions; deploy producer/validators/site |
138 | 196 | atomically. Rollback reverts this coherent change and restores the conservative |
139 | | -publication gate, retaining immutable original artifacts. AC-BC-FAIL-001..011 map |
| 197 | +publication gate, retaining immutable original artifacts. AC-BC-FAIL-001..014 map |
140 | 198 | to automated and actual-provider evidence in the feature specification. Root alone |
141 | 199 | owns integration and shared contract updates; workers never commit or push. |
142 | 200 |
|
|
0 commit comments