Repository navigation
docs(evidence): P-014 reference coverage — GO-P014-BOUNDED-DESIGN / NO-PRODUCTION (research only) - #419
Merged
Conversation
…, instrument Current-state claims checked in main c6e8a3c (single compilation, TPA of the net8 extractor process, recursive first-filename-wins ref-dir, no MSBuild evaluation, no binding metric; default parse options, no implicit usings). Five projects chosen by rule (3 sweep repos with assets, 2 desktop pairs), modes A (current) / B (TFM ref packs + assets compile assets, APPROXIMATION: package sha512 differs from the cache) / C (source-set probe), controls K1-K7, GO/KILL thresholds. Fixed before any measuring run. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01TFkNAFFQz9KoTzpPws8vYG
Mode A (today's compilation) binds 32-48% of call sites in 4 of 5 projects; project-specific references from existing project.assets.json + TFM reference packs (APPROXIMATION: package sha512 differs from the cache) recover 5-31% of calls in P1/P3/P4/P5 (1,240 calls overall), 50/50 sampled recoveries correct, 0 bindings lost; A also binds net8-only overloads for a net9 project. Controls pass; K4 shows the single-compilation model hides duplicate definitions. Through the unchanged extractor: OWN050 -24, +9 findings (1 actionable TP, 2 minor, 6 co-lifetime FP). Implicit usings (source set) are a comparable, separate lever. Instrument fixes before scoring disclosed in REPORT §4. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01TFkNAFFQz9KoTzpPws8vYG
…ntent hash 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
This was referenced Oct 21, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Final owner ruling:
GO-P014-BOUNDED-DESIGN / NO-PRODUCTION.PASS-COMPILATION-CONFLICT(CS0101 in A/B/C, no falseRECOVERED_CORRECT), with the limitSITE-LEVEL-CONFLICT-NOT-REPRESENTED.HOLD-FORMAL-GOlifted.Verification after review (REPORT §8,
f24f32e5; no new experiment):CS0101(duplicateDup.T) in A, B and C. Per-site binding still silently picks the first definition, so the conflict is recorded at compilation level only.sha512equals the cache's.nupkg.metadatacontent hash for 231/231 present packages, so package identity is confirmed. The remaining approximations are P1's TFM (no 9.0 pack), packages missing in P1–P3, and B-ext's TPA precedence.Research only (
2e73767bpre-registration, committed before any measuring run). The diagnostic payoff is narrow; see below.The hidden limit is confirmed at the binding level. Today's compilation binds 32–48% of calls in 4 of 5 projects. A, with the net8 TPA, also binds .NET 8 overloads for a net9 project, e.g.
TimeSpan.FromHours(double)instead of(int).Correctness. 50/50 sampled recoveries are correct, and no binding was lost. Controls K1–K7 pass. K4 shows the single-compilation model hides duplicate definitions; that holds in both modes.
Mode B is built from existing
project.assets.jsonplus the local TFM reference packs, with framework-first conflict resolution. Package identity is confirmed (see above).Effect through the unchanged extractor (Python core; no Rust core built):
SettingsManager.Current.PropertyChanged), 2 minor TPs, 6 co-lifetime FPs;Most recovered calls feed no Own.NET analysis.
Disclosed (REPORT §4). Instrument fixes before scoring: the framework-name conflict skip and the site-key collision. Path bugs in my own driver were also fixed.
🤖 Generated with Claude Code
https://claude.ai/code/session_01TFkNAFFQz9KoTzpPws8vYG