microsoft / microsoft/DirectXShaderCompiler

LinAlg HLK: Finalize stable test identity and requirement metadata

Open
#8,655 0 comments 0 reactions 1 assignee View on GitHub

@JoeCitizen is already working on this.

Since Jul 22, 2026.

Dominant language
C++
Stars
3.7k
Forks
900
Avg merge
2d 11h
Merged PRs (30d)
44

Description

Goal

Replace the placeholder LinAlg TAEF identity and finalise the public Kits metadata required for the SM6.10 Linear Algebra HLK test class.

The resulting identity must remain stable across source synchronisation, packaging and future coverage expansion so certification history and failures continue to refer to the same logical test.

Why

DxilConf_SM610_LinAlg currently uses placeholder TestId a1b2c3d4-e5f6-7890-abcd-ef1234567890. Placeholder or changing identities prevent reliable HLK discovery, scheduling, result history and requirement mapping.

The current metadata also references Device.Graphics.D3D12.DXILCore.ShaderModel610.CoreRequirement; that reference must be confirmed as the intended public requirement contract before certification packaging.

Required work

  • Confirm the final TAEF class boundaries before assigning identities.
  • Allocate a stable unique Kits.TestId for each final HLK class.
  • Replace the placeholder TestId in LinAlgTests.cpp.
  • Review and finalise:
    • Kits.TestName;
    • Kits.TestId;
    • Kits.Description;
    • Kits.Specification;
    • method priority metadata.
  • Ensure test names remain stable and useful for filtering individual operation failures.
  • Confirm that _HLK_CONF and ordinary ExecutionTest builds expose consistent class and method identity.
  • Verify TAEF discovery by class name, method name and stable TestId.
  • Ensure source synchronisation and packaging preserve the exact identity rather than generating or substituting IDs.
  • Keep public metadata free from private release, driver or lab information.

Acceptance criteria

  • No placeholder LinAlg TestId remains in the public DXC source.
  • Every final LinAlg HLK class has a unique stable TestId.
  • Test name, description, specification and priority metadata have been explicitly reviewed.
  • The Kits.Specification value matches the agreed SM6.10 LinAlg requirement contract.
  • Ordinary and _HLK_CONF builds expose the same class and method identities.
  • TAEF discovers and filters the tests using the stable identity and names.
  • Packaged or synchronised copies retain byte-for-byte identical identity metadata.
  • Future operation coverage can be added without changing the established class identity.

Public references

  • LinAlgTests.cpp
  • Parent tracker #7841
  • Existing long-vector HLK precedent in INF-0006-Long-Vector-ExecutionTest-Plan.md

Out of scope

  • Creating or changing private requirement XML, KML or playlist collateral.
  • Defining private package ownership or release schedules.
  • Expanding LinAlg behavioural coverage.
  • Generating a new TestId for each individual test method.

Assisted-by: GitHub Copilot

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.