You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit f24f32e
Browse filesBrowse the repository at this point in the historyBrowse files
No new experiment, no rule or threshold change.
- K4: the scoring instrument's summary.json (now committed for all
controls) records CS0101 in A, B and C; per-site binding still picks
the first Dup.T, so the conflict is recorded at compilation level only.
- NuGet: my original check compared the assets sha512 with the cache's
.nupkg.sha512 (file hash); the assets value is the content hash and
equals .nupkg.metadata contentHash for 231/231 present packages, so
package identity is confirmed and that APPROXIMATION is withdrawn.
- Exact (P4, P5) vs approximate (P1 TFM, P1-P3 missing packages)
separated; criterion 1 holds on P4 and P5 alone.
- Sample limits stated (50/50 => >=93% bound; 16 of 160 symbol changes
read); R2 vs R3 framework-selection difference stated.
Owner decision recorded: ACCEPT-REFERENCE-COVERAGE-FINDING /
HOLD-FORMAL-GO / NO-PRODUCTION.
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TFkNAFFQz9KoTzpPws8vYG
| P5 | FluentFlyout `FluentFlyout.csproj` @ `911dfda6` (WPF) | net10.0-windows10.0.22000.0 | complete, including Windows SDK projection 10.0.22000.57 |
74
79
75
-
**All B references are `APPROXIMATION`.** For every package the `sha512` in the assets differs from the
76
-
`.nupkg.sha512` in the global cache: same id and version, a different package file. P1–P3's assets were written by
77
-
CodeQL buildless extraction on 2026-10-17, before the D13 isolation, and their package folders are gone.
80
+
**Corrected in §8.2.** The original text here said every B package was an `APPROXIMATION` because the assets'
81
+
`sha512` differs from the cache's `.nupkg.sha512`. That compared the wrong fields. The assets' value equals the
82
+
cache's recorded content hash (`.nupkg.metadata`) for all 231 packages present, so their identity is confirmed.
83
+
`APPROXIMATION` remains for P1's TFM, for the packages missing in P1–P3, and for B-ext (§5).
84
+
85
+
P1–P3's assets were written by CodeQL buildless extraction on 2026-10-17, before the D13 isolation, and their
86
+
package folders are gone.
78
87
79
88
Reference manifests with per-DLL SHA-256 prefixes are in `data/manifest_B_P*.tsv`, and the overview is in
80
89
`data/manifest.json`.
@@ -183,7 +192,7 @@ Triage of the 9 new findings (code read):
183
192
| 1. ≥ 2 projects with reference-caused loss ≥ 5% of calls and ≥ 20 sites |**yes: P1, P3, P4, P5** (P2 no) |
184
193
| 2. ≥ 9/10 sampled recoveries correct in those projects; K1–K6 pass |**yes**: 10/10 each; controls pass. K4 shows the conflict blind spot, but no false recovery |
185
194
| 3. ≥ 1 useful change in OwnIR facts or findings |**yes**: P5 OWN014 TP; OWN050 replaced by verified facts (P5 `mediaManager` events now seen unsubscribed) |
186
-
| 4. B from on-disk artifacts, no forbidden action, bounded cost without MSBuildWorkspace |**yes, as `APPROXIMATION`**: package identity unprovable; needs an existing restore|
195
+
| 4. B from on-disk artifacts, no forbidden action, bounded cost without MSBuildWorkspace |**yes**: needs an existing restore; package identity confirmed (§8.2); P1's TFM approximate (§8.3)|
187
196
188
197
So **`GO-P014-BOUNDED-DESIGN`**. What the GO does and does not support:
189
198
- The hidden-limit hypothesis is confirmed **at the binding level**. Own.NET today understands roughly a third to a
@@ -194,7 +203,104 @@ So **`GO-P014-BOUNDED-DESIGN`**. What the GO does and does not support:
194
203
apply framework-first conflict resolution, and report binding coverage. It should be measured on implicit usings
195
204
too, which are a source-set fix outside P-014's reference scope and an earlier owner decision.
196
205
197
-
## 7. Files
206
+
## 8. Verification after owner review (no new experiment, no rule or threshold change)
207
+
208
+
### 8.1 K4, from the frozen instrument's own output
209
+
210
+
The K4 `summary.json` written by the scoring build of the instrument (04:47; DLL sha256 `c67a6be1…`) is now
211
+
committed as `data/controls/K4.summary.json`. Before, only `sites.tsv` was committed. It records:
212
+
213
+
| Mode | K4 compiler errors |
214
+
|---|---|
215
+
| A |`CS0101: 1`, plus the 12 × `CS0009` every A run has (12 native DLLs in the TPA folder) |
216
+
| B |`CS0101: 1`|
217
+
| C |`CS0101: 1`|
218
+
219
+
CS0101 is "the namespace already contains a definition". The K4 sources contain exactly one duplicated name,
220
+
`Dup.T` in `p1/a.cs` and `p2/b.cs`, so this error is the duplicate definition. The diagnostic message itself was
221
+
not saved; this attribution is by elimination.
222
+
223
+
At the same time, the call site `new Dup.T().One()` is `resolved` in every mode: Roslyn binds the first
224
+
declaration.
225
+
226
+
Against the pre-registered K4 ("recorded as ambiguous/conflict, never `RECOVERED_CORRECT`"):
227
+
-**Recorded as a conflict:** yes, at **compilation level** (CS0101 in all modes).
228
+
-**Never `RECOVERED_CORRECT`:** yes, because A == B and no recovery is claimed.
229
+
-**Not recorded at site level:** the per-site binding silently picks the first definition.
230
+
231
+
Whether compilation-level registration satisfies K4 is the owner's call. The facts above do not change with it.
232
+
All seven control summaries are now in `data/controls/K*.summary.json`.
233
+
234
+
### 8.2 NuGet SHA-512 comparison
235
+
236
+
The original check (§2) compared the assets' `libraries[*].sha512` with the cache's `<id>.<ver>.nupkg.sha512` file.
237
+
Re-checked without replacing any hash. For every package of the five projects that has a `.nupkg` in the cache, I
238
+
computed SHA-512 (base64) of the `.nupkg` file myself:
0 commit comments