## CrossGL/crosstl — v2.0.0…v3.0.0

_446+ commits._

### Features
- **Support integer sampled texture lowering (#1457)** (0bec937)
- **Add a Metal unresolved-construct guardrail to project translation (#1441)** (07b6c54)
- **Add struct-template materialization foundation to Metal preprocessor (#1436)** (802d253)
- **Add MLX project porting integration files** (4d8fa92)
- **Add MLX runtime readiness planning (#1390)** (ff5944f)
- **Add open-source project porting demos** (37baa39)
- **Add MLX full-corpus artifact scout CI** (5c32497)
- **Feed demo failures into support issue sync** (fb17647)
- **Add MLX project porting integration checks** (41fd7df)
- **Isolate support issue sync mutation failure test** (e88a9b2)
- **Add project test-runner orchestration** (6cf1bbc)
- **Add compiled host interface reflection** (23e8152)
- **Add native runtime parity adapters** (f285603)
- **Refresh GLSL support matrix count** (a7013ab)

### Fixes
- **Fix Metal residual-template false positives from struct member templates (#1446)** (1dc6461)
- **Fix MLX Vulkan SPIR-V frontier validation (#1431)** (e90af56)
- **Fix Python 3.8 collection error in project pipeline** (7e79437)
- **Fix OpenGL MLX template binding** (a72ab41)
- **Fix Metal template alias materialization** (aff19ea)
- **Fix Vulkan SPIR-V access-chain typing** (0e77df6)
- **Fix SPIR-V 64-bit storage buffer layout validation** (531404c)
- **Fix GLSL 110 interface qualifier output** (332d9a2)
- **Fix MLX Metal-to-Vulkan SPIR-V validation** (404339d)
- **Fix DirectX vertex input semantics** (091590c)
- **Fix SPIR-V overload argument type resolution** (ac6c380)
- **Fix Mojo GPU builtin lowering contract** (63533da)
- **Fix DirectX vector constructor truncation** (7c6a5c4)
- **Fix GLSL shadowed value backend test** (485307e)
- **Fix Vulkan complex helper scalar arguments** (ec69243)
- **Fix WGSL SPIR-V constant formatting** (f5af2e1)
- **Fix Vulkan matmul builtin vector stores** (83ca67a)
- **Fix SPIR-V scalar store coercion for builtin vectors** (4fa5a2d)
- **Fix Vulkan complex materialized helper calls** (6db2387)
- **Fix Vulkan complex struct alias helper calls** (6eef94b)
- **Fix Vulkan private scalar initializer types** (a5886c6)
- **Fix Vulkan complex helper call argument types** (3b7de62)
- **Add Rust-GPU DirectX storage buffer regression** (702b418)
- **Fix SPIR-V gl_PerVertex DirectX lowering** (02dc2ad)
- **Fix OpenGL SIMD helper lowering** (97060fa)
- **Fix Metal softmax parsing** (d59dcc2)
- **Fix SPIR-V storage buffer pointer overload inference** (7f3ffb2)
- **Fix WGSL sampler2D array lowering (#1194)** (d730062)
- **Fix GLSL vertex position DirectX semantic (#1200)** (63641e4)
- **Fix WGSL generic struct specialization (#1195)** (750f43d)
- **Fix WGSL Option helper return lowering (#1193)** (8db87dd)
- **Add DirectX CUDA vectorAdd CLI regression (#1187)** (8622225)
- **Fix WGSL helper overload naming (#1186)** (ff8b7f1)
- **Fix WGSL entry struct varying locations (#1182)** (9fe3bf5)
- **Fix CUDA vector-add DirectX lowering (#1181)** (14e6e48)
- **Fix WGSL lowering for Metal half vector aliases (#1180)** (90ad358)
- **Fix WGSL uniform scalar array layout (#1178)** (a8078b8)
- **Fix SPIR-V position output for WGSL (#1176)** (122c0c9)
- **Fix WGSL local void type inference (#1175)** (36e1b1c)
- **Add DirectX regression for Metal pointer resources (#1174)** (6a57251)
- **Add multi-entry Metal SPIR-V binding regression (#1172)** (a1f7aa6)
- **Add Metal fragment keyword regression (#1170)** (67dd0d7)

### Backend
- **Release v3.0.0** (f374cc5)
- **Bound MLX template materialization and lower functors (#1456)** (eecc38a)
- **[pre-commit.ci] pre-commit autoupdate (#1455)** (fcaa9f9)
- **Recognize and lower SFINAE-overloaded Metal template member methods (#1451)** (2c6d1bb)
- **Make Metal template-member lowering deterministic and extend call-arg inference (#1450)** (bfe0f9b)
- **Lower HLSL compute value-builtins instead of leaking invalid semantics (#1449)** (f663d21)
- **Lower GLSL subgroup builtins in HLSL compute output (#1448)** (b28393a)
- **Stop flagging local constexpr array extents as unresolved Metal templates (#1447)** (0541779)
- **Mask comments with full-source context in Metal function-header extraction (#1445)** (9be74a6)
- **Strip comments from Metal type text in template-placeholder scan (#1444)** (c3a9200)
- **Instantiate template struct member functions from call-arg types (#1443)** (26cfcad)
- **Lower Metal struct member functions to free functions in the preprocessor (#1442)** (3ac0789)
- **Hoist Metal threadgroup-local arrays to GLSL shared globals (#1440)** (fcf70ab)
- **Lower Metal device atomics to CrossGL atomic intrinsics (#1439)** (a43ef1e)
- **Materialize Metal struct-template instantiations in the preprocessor (#1438)** (d3332a8)
- **Lower Metal subgroup builtins to wave intrinsics in HLSL codegen (#1437)** (eaa3ece)
- **Skip redundant comment-scan startswith in Metal preprocessor (#1435)** (ee1898a)
- **Lower Metal SIMD-group intrinsics to CrossGL Wave ops (#1434)** (e23fa8f)
- **Resolve runtime fixture resource aliases** (a74ee4e)
- **Update MLX porting script path in test harness** (9bc64ed)
- **Refactor MLX porting script path formatting in test file** (ee1174c)
- **Update MLX porting script path in test file** (629d77f)
- **Update MLX porting script references in README and tests** (1523ecb)
- **Update MLX porting script path in CI workflow** (4267d76)
- **Verify adapter descriptors during host integration checks** (37fdb9a)
- **Use runtime artifact manifests for MLX readiness** (fdb4749)
- **Revalidate host roots during integration checks** (2fbd2b1)
- **[pre-commit.ci] pre-commit autoupdate (#1389)** (b266cd5)
- **Track current MLX porting blockers (#1378)** (b6d9ca5)
- **Validate demo third-party notice coverage (#1383)** (662cfba)
- **Materialize runtime adapter descriptors (#1308)** (0901c3c)
- **Emit demo failure summaries (#1386)** (6c29438)
- **Track demo workflow CI coverage** (91847a4)
- **Document demo report inspection workflow** (75cb2c8)
- **Parse demo targets with project TOML config** (53d35da)
- **Run demo CI for translator and backend changes** (47d09b8)
- **Generate demo CI inputs from metadata** (3300cb5)
- **Wire effect shader entries into generated stages** (e67b2de)
- **Preserve Metal arithmetic expression grouping** (d6564d1)
- **Use actual DirectX entries in project smoke commands** (1597cfe)
- **Cover MLX reduced frontier SPIR-V validation** (cd1337a)
- **Propagate runtime command adapter availability** (c1fd739)
- **Handle unresolved OpenGL template types** (ef71932)
- **Improve Metal template materialization diagnostics** (bcd042f)
- **Report template materialization budget details** (6011030)
- **Preserve shared external corpus provenance** (725e08c)
- **Reject unresolved OpenGL template types** (4d5e2b1)
- **Handle GLSL input attachments in target codegen** (244f19b)
- **Lower Metal shadow sampler LOD overloads** (d0a1587)
- **Deduplicate GLSL builtin redeclarations** (db5793e)
- **Allow DirectX scalar fragment targets** (067d6b9)
- **Lower GLSL subgroup builtins for Metal** (2684457)
- **Preserve GLSL geometry max vertices metadata** (18cbe1f)
- **Generate project runtime fixture manifests** (c1dbe1e)
- **Execute host integration checks (#1067)** (a46f42e)
- **Restore standalone Mojo kernel artifact translation** (7cec91a)
- **Bound Metal type identifier rewrites** (78adbde)
- **Scale Metal template materialization budgets** (a153bee)
- **Stabilize CUDA OpenGL uniform names** (334c277)
- **Align SPIR-V WGSL constant formatting tests** (5e68de1)
- **Align GLSL entrypoint parameter names** (d8f6711)
- **Keep report artifact capabilities field consistent** (982e607)
- **Restore OpenGL scalar binding declarations** (3be5c4b)
- **Restore Mojo project artifact counts** (2052e23)
- **Clarify Metal helper call contract** (45beaa9)
- **Handle empty Metal struct member declarations** (78aa869)
- **Make OpenCL reduce project output deterministic** (e5e25a7)
- **Handle templated Metal functor declarations** (9dab2d8)
- **Lower OpenCL get_num_groups for DirectX** (be996f5)
- **Bound Metal template materialization work** (fc55d19)
- **Use integer access-chain indexes in Vulkan lowering** (61b9808)
- **Lower OpenCL reduce CGL artifacts** (9026009)
- **Validate assembled Vulkan SPIR-V artifacts** (7019493)
- **Lower OpenCL reduce target artifacts** (86fb9dc)
- **Use VRS-capable DirectX smoke profiles** (a75b552)
- **Lower OpenCL fma calls for DirectX** (9a3d5c5)
- **Lower HIP storage array parameters for DirectX** (6f6ef23)
- **Declare Rust-GPU storage buffers for OpenGL** (ef5ffdc)
- **Bound OpenGL Metal template materialization** (c5a6869)
- **Lower Rust Option values before DirectX emission** (b2c300e)
- **Report steel NAX template diagnostics** (f55b537)
- **Lower HIP pointer kernels for DirectX (#1219)** (9532ce4)
- **Lower fragment-density helpers for DirectX (#1217)** (8a3f6e2)
- **Reject unresolved Metal templates before OpenGL codegen** (84a8834)
- **Materialize Metal helper template calls** (22894d1)
- **Specialize generic helper functions for target backends (#1198)** (d28e8fd)
- **Model GLSL fragment invocation density lowering (#1201)** (78e84ea)
- **Lower OpenCL reduce target artifact generation (#1199)** (edd46d2)
- **Update backend typed buffer write expectations (#1202)** (9cfb1c8)
- **Use indexed writes for DirectX typed buffers (#1197)** (5f54375)
- **Filter unreachable Metal template helpers** (47609a1)
- **Lower Mojo compute builtins to parameters (#1188)** (7d7ffde)
- **Remap OpenGL entry value bindings** (49041d4)
- **Bound Metal template replacement scans** (d50e76f)

_Recap by [Repo Wrapped](https://repowrapped.com/gh/CrossGL/crosstl?utm_source=github-action)._