Skip to content

coverage: test the Qwen3.5 GDN layer loader (extract_linear_layer_generic) #5214

Closed as not planned

Description

@noahgift

Coverage gap from the nightly coverage report (#4458): SafetensorsToAprConverter::extract_linear_layer_generic (crates/aprender-serve/src/safetensors_infer_convert.rs) has 138 uncovered lines and 0% coverage. It loads one Gated Delta Net (linear attention) layer for Qwen3.5 SafeTensors models.

Nothing tests its two weight-naming conventions:

  • combined self_attn.in_proj_qkvz + in_proj_ba, sliced at key_dim/value_dim boundaries;
  • separate linear_attn.in_proj_qkv + in_proj_z/a/b.

Nothing tests its size-mismatch refusals, or its no-dense-FFN (MoE) branch either. A wrong slice offset there would hand the recurrence the wrong weights, and no unit test would notice.

done_when: unit tests drive both conventions through an in-memory tensor source and assert the exact slices. Both size-mismatch paths return errors. The MoE branch yields no gate and zero-filled up/down. A mutant on a slice boundary fails a test, and the gated-delta-net contract gains a falsification row for the weight split.

Activity

  1. added this to the 0.71.1 milestone on Oct 12, 2026
  2. noahgift commented on Oct 14, 2026

    @noahgift
    MemberAuthor

    merged into #5315 (master ticket for epic #4001; triage rule 7b, 2026-10-14). It is a checklist row there; reopen this issue when work on it starts or its PR opens.

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

    P2Medium priority

    Type

    No type

    Projects

    No projects

      Milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions