N Neurarch All checks Caught bugs Data Docs Open the app

Checks / pattern

Predictive branch with no stop-gradient on the target

Check R36. Runs in the editor as you build, in CI through the GitHub Action, and over the wire at POST /api/v1/check. Milliseconds, before any GPU is billed.

warn pattern R36
TriggerModel contains a JEPA predictor but no emaTarget node and no branch carrying stopGradient.
WhyJoint-embedding predictive objectives have exactly one degenerate solution: emit a constant. The momentum target that carries no gradient is the only thing ruling it out, so a gradient-carrying target is not a slower design, it is one whose loss reaches zero without learning anything.
SourceGrill et al. 2020, BYOL and Chen & He 2020, SimSiam, Section 4.

Why it is not a lint you can ignore

A structural mistake does not fail at review time and it does not fail at import time. It fails when the module is constructed on the training node, after the job was queued and the dataset was downloaded. That is why this runs before the spend and not after it.
Run this check on your own model Free, no account needed

Every check

41 structural checks: 6 guardrail gates and 35 architecture advisor rules. See the full catalogue.

← R35 KV cache exceeds serving budget at reference context  ยท  R37 Matryoshka prefix wider than the embedding →