Skip to content

ci(validation): select checks from affected engine areas #59

Closed

Description

@FLwolfy

Confirmed problem at the issue baseline

Engine CI runs two native configurations, ten hot builds, the entire isolated test graph and Player Support Pack generation for every Editor-only change. Support Packs are one cost, not the complete cause. No measured per-step attribution is claimed yet.

Ownership and scope

Change CI orchestration only. Derive the profile from the complete Git diff, including deleted and renamed paths. Keep full validation for SDK, build, platform, backend, runtime and unclassified changes. Editor-only work retains the real Debug Editor, relevant ordinary/isolated suites, architecture and current Wiki checks. No production build bypass, native artifact forgery or package/source changes.

Acceptance

  • Automatic Editor selection has conservative fallback for unknown/shared inputs.
  • Explicit manual full acceptance remains available.
  • Scope reasons and omitted checks are visible in job summaries.
  • Policy tests cover mixed changes, deletion/rename, unknown inputs and manual full selection.
  • Editor changes omit Release, repeated cache acceptance, Player publication/AOT and Support Pack generation while retaining applicable checks.
  • Required checks cannot succeed through empty test discovery or a failed selector.

Keep this issue open until the implementing PR is merged.

Verified on branch / awaiting merge

Implemented in PR #60 at 8c6694ba05f4acc5ca43e75c63f34aec2a4c45d4.

  • Twenty policy cases passed, including complete Git comparisons, moves/deletions, PR merge-base isolation, mixed/unknown owners, explicit full selection, empty filters and a proven ProjectReference visibility-only change.
  • The actual complete PR diff selects the Editor profile. Full managed matrix, Release, ten hot builds, unrelated executable suites and Player Support Pack generation are skipped. SDK/build/platform/backend/shared or unknown changes still select full verification.
  • The scoped solution builds 169 production contracts and 13 test-support/fixture contracts needed by repository Wiki validation. MSBuild owns the reference closure. Selected Player Debug contracts are compiled for API/Wiki validation; Player publication and AOT acceptance are not run.
  • Final-head Engine CI passed both Windows x64 and macOS ARM64 Debug/native smoke, related contracts/workflows, architecture and compiled Wiki checks. The dependency graph checks also passed. No required check is satisfied by empty test discovery.
  • The first scoped macOS attempt exposed omitted Wiki fixture DLLs; that failure is retained in run 41125819779. The final filter includes non-test fixture contracts rather than weakening Wiki validation or executing all unrelated tests.

Acceptance and boundary review records local evidence. Final remote results are recorded here and in the PR because the committed report was sealed before CI completed.

This is scoped verification, not a promise of a short cold build: the final Windows native Debug build took 39m09s and the related suites about 38m24s. Support Pack generation was skipped. No unmeasured speedup factor or production build shortcut is claimed.

Activity

  1. FLwolfy commented on Oct 30, 2026

    @FLwolfy
    MemberAuthor

    PR #60 implements the scoped policy. Nineteen policy tests and the actual branch-diff selection passed. The remote Validation scope job also passed and selected Editor; the separate full Managed job is correctly skipped. Native Debug, renderer smoke, relevant ordinary/isolated tests and architecture/Wiki remain required.

    The omitted Player work is publication/deployment/AOT and Support Pack generation; the selected Player Debug contract is still compiled for repository API/Wiki checks. SDK/build/platform/backend/unknown changes and explicit manual full requests keep full verification. No production validation bypass was added.

    Windows/macOS checks are still running. This issue remains open pending completed CI and PR merge.

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

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions