Skip to content

Keep documentation source scans active in nested worktrees #617

Closed

Description

Resolution, 2026-10-29

Completed through wallstop's merge of PR619 at 7ee780a5bf58531e6ac3eadee3cbba89769e7cd0.

The post-merge audit verifies all54 sealed original artifacts. All four frozen source-discovery regressions, their case attributes and every relevant scanner/helper remain unchanged in merged7ee,448 and current8aac. The original obsolete-member scanner/helper implementation is also unchanged. The original real four-location qualification remains source-bound:692PASS in each ordinary/.artifacts/obj/bin checkout, all688 baseline input/outcome occurrences and488 exact typed snippet inputs preserved, four focused passes and622 affected-class passes.

Audit SHA-256 0d751c41bb6ebbe558bc519f69d0faf04d7047294fd42c42caf0229efe956607, ignored .artifacts/session484/acceptance-audits/617-integration-acceptance.json. The complete DocsSnippetCompilationTests file has unrelated later API-signature/null-handling additions; only the exact relevant regression/scanner region is claimed unchanged. Current8aac's path-filtered dotnet job skips and is not substituted for the actual retained four-location results. Final user-copy/release review and the unrelated current CI failure remain open. The original development record below retains its historical publication holds; they do not describe current integration.

Observed defect

Documentation scanners must exclude generated files inside a checkout while retaining genuine sources beneath any checkout parent. Absolute-path .artifacts, obj, and bin exclusions violate that rule.

The original obsolete-member scanner failure and correction are retained in the initial verdict. That correction is on public PR619 head600e77 and remains subject to review and integration.

Three filters in DocsSnippetCompilationTests still used absolute paths. During #634 verification, nested-worktree discovery passed223 cases while a complete outside-worktree run passed689. The unchanged public600e77 outside baseline has688 cases; the held634 regression adds one. Missing XML/source-derived cases made the nested run incomplete, despite its green result.

Correction and acceptance

Classify generated-directory exclusions relative to the repository or scanned root. Preserve existing snippet assertions, diagnostic tolerances and generated-file exclusions. Exercise the actual XML, temporary-emit, broadcast and Markdown source enumerators beneath ordinary, .artifacts, obj, and bin checkout parents.

  • Preserve the original obsolete-member RED/GREEN evidence and current public correction.
  • Reproduce the remaining scanner failures with real files and generated-directory negatives.
  • Pass all four frozen regressions without changing their expected input sets.
  • Pass the affected class and complete docs project in all four checkout locations.
  • Preserve every original input/outcome occurrence, including generated source/snippet arguments and multiplicities.
  • Run formatting, spelling, package validation and normal local hooks; prepare a verified local source bundle.
  • Obtain wallstop review and integrate the complete correction; adopted through wallstop's PR619 merge at7ee780a5.

Current qualification and limits: local024eb805 on public600e77, full692PASS in all four locations, all688 baseline input/outcome occurrences plus four regressions. Directory-order label changes are reconciled through exact actual arguments and TRX bindings; counts alone are insufficient. Evidence is local at .artifacts/perf-lab/617-docs-discovery-s467.

No source push, new PR, merge, closure or publication is authorized by this local qualification. Current public CI does not include024eb805. Human review/integration and broader release gates remain open.

Activity

  1. added this to the 4.0.0 milestone on Oct 7, 2026
  2. wallstop commented on Oct 7, 2026

    @wallstop
    CollaboratorAuthor

    #617 regression result

    The obsolete API scanner used absolute source paths for its .artifacts/obj/bin exclusions. Checking out the repository under any of those ancestor names silently excluded genuine Runtime source. The review branch changes the exclusions to repository-relative paths, preserving the exclusions for generated files inside the checkout.

    Three independent path cases failed before the correction and passed afterward; the complete docs suite passed 195/195. The three cases passed ten fresh repeats. Hosted static CI run 37578142506 passed all 17 jobs at exact commit c0b5890, including docs, plain .NET runtime, generator, links, formatting and CI Success.

    Code: commit c0b5890 on codex/613-cache-settings, bundled with the related #613 verification work. A later local commit ae79805 adds native #613 coverage only; two push attempts returned GitHub internal server errors. Raw RED/GREEN TRX and terminal CI metadata are retained locally under .artifacts/perf-lab/613-settings-cache/. Maintainer review and integration remain pending; the issue stays open.

  3. wallstop commented on Oct 7, 2026

    @wallstop
    CollaboratorAuthor

    The correction remains on codex/613-cache-settings; no PR or licensed job was dispatched while #510 awaits account-level seat reconciliation. The final verifier static CI run 37666819976 passed all 17 jobs at f90dca2f2e1b388ce2946a92248f6643433a9955, including dotnet/docs and script checks on Linux/macOS/Windows. Local full script verification now passes 1,368 Node tests plus both archive tests. The earlier 195-test docs result and three genuine red/green path regressions remain retained in comment 6042704043. The earlier two SSH failures were transient; the source branch was successfully pushed and its exact remote head verified. Integration and review remain pending; keep #617 open.

  4. wallstop commented on Oct 15, 2026

    @wallstop
    CollaboratorAuthor

    Remaining scanner defect and preregistered correction plan

    The prior #617 obsolete-member correction is present on current public PR619 head600e77, but DocsSnippetCompilationTests still applies the same absolute-path exclusions in XML snippet discovery, XML temporary-emit documentation scanning, and shared text-file enumeration (broadcast/published Markdown/sample scans). During #634 rebinding, unchanged complete-project tests report223PASS under /.artifacts/worktrees/ versus689PASS outside that ancestor. Public600e77 baseline outside reports688PASS; the held634 adds exactly one case. These are observed discovery differences, not missing runtime APIs. Earlier223/195 local counts must retain their discovery limits.

    Before implementing: NEW isolated worktree/branch codex/467-docs-discovery at public600e77 and NEW evidence .artifacts/perf-lab/617-docs-discovery-s467. Keep held634 and its sealed evidence unchanged. Question/hypothesis: repository/scanned-root-relative generated-directory exclusions restore the same real documentation sources beneath enclosing .artifacts, obj and bin directories while preserving existing in-checkout exclusions.

    Add parameterized filesystem regressions using temporary checkout roots under each forbidden ancestor plus an ordinary control. Execute the actual XML, temporary-emit, broadcast and published-Markdown source enumerators through explicit root-accepting private implementations; default discovery continues resolving the real repository. Create real source/docs/sample inputs plus generated-directory negatives and similarly named allowed directories. Do not duplicate scanner logic in the regression. Retain RED on unchanged filtering before changing only path classification; normal control and generated negatives identify setup errors.

    GREEN requires all frozen cases, focused/class/full docs tests, and comparison of all original outside-root baseline test-name/outcome occurrences. Then run the corrected full suite beneath each enclosing .artifacts/obj/bin name, retaining exact counters and occurrence multiset agreement. Preserve all existing assertions/snippet exclusions/diagnostic tolerances. Stop on unexplained missing/changed old cases, generated-source leakage, formatter/control failure, unrelated source edits or source/pin ambiguity. Prepare local coherent commit/review bundle after checks; no push/new PR/merge/closure/publication. Changelog excludes internal test tooling. No Unity overlay is needed. Fixed session cutoff2026-10-15 13:59:46UTC includes final cleanup/handoff.

  5. wallstop commented on Oct 15, 2026

    @wallstop
    CollaboratorAuthor

    Qualification is paused at case-name comparison, as preregistered. Frozen regression RED: normal control1PASS, reserved ancestors3FAIL. Three relative-path expressions corrected; focused4PASS, class622PASS and full692PASS independently in normal/.artifacts/obj/bin worktrees. All assertion sets stay unchanged. Source hash73b53444306e3e276baddbddc3047ee0a3a8e0804f28fb3d269229ba79a01e73. Initial freeze-command cwd error and its first unqualified test attempt remain retained; a separate unchanged source freeze and run provide qualified RED.

    Normal/obj/bin full name-outcome comparisons preserve all688 baseline occurrences plus four new cases. The .artifacts worktree has different indices in generated XML/HTML case labels despite the same total; names include a global counter over Directory.GetFiles enumeration. Do not treat that arm as equivalent on counts alone. Initial exact-name refusal retained.

    Separate read-only identity diagnostic before further qualification: NEW console harness under ignored worktree artifacts, referencing each actual docs project. Invoke only its four existing snippet TestCaseSource enumerators (documentation/HTML/inline/XML) and serialize exact TestCaseData name, typed arguments, repository-relative source path and actual snippet string plus hash. Bind harness, test-source and loaded-assembly hashes. Run the unchanged baseline and each candidate arm; compare provider/path/snippet occurrence multisets and derive an explicit original-name to current-name mapping only for identical case inputs. Require each generated label to map unambiguously and match actual TRX occurrences/outcomes, preserving all duplicates. No test source/assertion/filter/order change, no private Unity SDK use, no Unity call, no rerun/relabel of existing TRX. If source/arguments or old outcomes differ beyond the four new regression cases, stop. This diagnostic cannot by itself prove tests passed; link it to the already retained full TRX. Source push/publication/review hold unchanged.

  6. wallstop commented on Oct 15, 2026

    @wallstop
    CollaboratorAuthor

    Remaining documentation scanner verdict: KEEP LOCALLY FOR REVIEW. Clean local commit 024eb8059e87c43548a2d6711e57946e60230124 has public600e77 as parent and changes only DocsSnippetCompilationTests.cs. The three path exclusions use repository/scanned-root-relative paths. Four explicit-root implementations make the existing source enumerators directly testable; default discovery still resolves the checkout.

    Four real-filesystem regression cases execute XML snippets, temporary-emit documentation, broadcast examples and published Markdown discovery beneath normal/.artifacts/obj/bin parents. Real files and similarly named directories remain; generated .artifacts/obj/bin files inside the scanned roots stay excluded. Frozen RED is normal1PASS/reserved3FAIL. Unchanged expected source sets become4PASS; affected class622PASS. Complete project692PASS independently in all four checkout locations, zero fail/skip/inconclusive.

    The initial exact-name comparison correctly stopped: directory enumeration order changes globally indexed case labels. A separately frozen, read-only harness captures all488 actual typed provider/source/snippet argument occurrences per arm. Exact strings and multiplicities match the baseline across all arms. Each captured case name binds unambiguously to its real arguments and to one actual passing TRX occurrence. All688 baseline input/outcome occurrences remain; exactly four new passing regressions are added. Normal/obj/bin labels match directly. In the artifact worktree,47 label-to-input bindings change with enumeration order (34 old label strings disappear); explicit mappings and every original TRX are retained. No sorting, assertion, diagnostic-tolerance or test-result rewrite was used to pass the comparison. This data-source diagnostic is not an additional test run.

    CSharpier checks1file, CSpell checks1file, validate:all and normal commit hooks pass. First attempted freeze used a wrong relative cwd, and its shell continued to an unqualified test attempt; both that attempt and the separate unchanged-source frozen RED remain retained. The first spelling command from the outer ignored root checked0files; the explicit worktree-relative run checks1file. Console harness builds retain the transitive test-platform entry-point warning; actual main records the intended488 inputs and no test invocation. Loaded docs DLL hashes match before/after harness, and original/candidate DLL snapshots are retained.

    Verified source.bundle2225bytes, SHA-256bdb5788e0c7ac5c8a9de19499b062f6e31469450c17cb26ae7e525e9c640cdfd, requires public600e77. Review inputs/evidence .artifacts/perf-lab/617-docs-discovery-s467; sealing follows. All331primary pins/ten inherited dirty files unchanged; no Unity overlay/job. Earlier nested-worktree223/195 runs retain their discovery limits; complete current runs provide the comparison above.

    No source push/new PR/merge/closure/publication. #617 remains open for wallstop review and integration, including its prior obsolete-member correction. Current public CI excludes this local commit and held634/636. Local integrity is not remote publication or release readiness.

  7. changed the title [-]Fix obsolete API guard exclusions in artifact-hosted worktrees[/-] [+]Keep documentation source scans active in nested worktrees[/+] on Oct 15, 2026
  8. wallstop commented on Oct 15, 2026

    @wallstop
    CollaboratorAuthor

    Local integrity seal for remaining documentation-scanner qualification:54files,8844393bytes, manifest SHA-25663046ab63cbeda0931eb484a32412da892613e430b5967ece7d7f5d32e0dbcf7. All manifest-listed files read back exactly. Root .artifacts/perf-lab/617-docs-discovery-s467 is SEALED; no further writes/execution there. Receipt retained outside. This supplies local integrity only; source publication, human review/integration and immutable remote evidence publication remain pending.

  9. wallstop commented on Oct 15, 2026

    @wallstop
    CollaboratorAuthor

    The unchanged scanner correction is included in clean combined local review headb050264c with #634/#636. Final integration verdict and bundle: docs693PASS with all689 corrected-guide control input/outcomes plus the same four scanner regressions and488exact typed snippet inputs; generator294/NET28 and complete hooks pass. The three-site benchmark style correction has its own fresh native47PASS and original host restoration. Source publication, wallstop review/integration and final backend CI remain held. Original individual024eb805 branch/bundle/evidence unchanged; no issue closure.

  10. wallstop commented on Oct 27, 2026

    @wallstop
    CollaboratorAuthor

    Acceptance audit against the existing fixed protocol is in progress. I will recheck the retained RED/GREEN and restoration/source evidence, compare the exact corrected methods/tests with integrated PR619 source, and verify the applicable current checks. Wallstop's existing authorization covers PR619 and future commits. This is a read-only audit, with no new experiment or source change. Current73b qualification is incomplete because the6.5leg was cancelled before starting; closure will wait for complete current checks. Any unmatched source or missing acceptance evidence keeps this issue open. A completed audit would resolve only this bounded defect in draft source, with no merged/published or release-readiness claim.

  11. wallstop commented on Oct 29, 2026

    @wallstop
    CollaboratorAuthor

    Closed completed after scoped acceptance verification against wallstop's merged PR619, review/integration commit 7ee780a5bf58531e6ac3eadee3cbba89769e7cd0.

    All54 sealed artifacts verify. The original four regression bodies/attributes and all relevant scanner/helper code remain exact in merged7ee,448 and8aac. Original real four-location qualification:692PASS per ordinary/.artifacts/obj/bin arm,688 prior input/outcome occurrences and488 exact typed snippet inputs preserved; four focused and622 affected-class passes. Initial obsolete-scanner helpers are unchanged. Current file additions and path-filtered CI skips are explicitly separated from that evidence.

    Audit 0d751c41bb6ebbe558bc519f69d0faf04d7047294fd42c42caf0229efe956607, .artifacts/session484/acceptance-audits/617-integration-acceptance.json. No tests, source, assertions, thresholds or old verdict changed. Final user-copy/release/readiness gates and current unrelated CI failure remain open.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions