E0404: artifact was not compiled for akida-akd1500
What happened
A .thx artifact was submitted to the akida-akd1500 backend, but its metadata.target field names a different target (for example "sim"). The backend rejects artifacts compiled for other targets.
Why
A .thx artifact carries the target it was compiled for. The compiler resolves target-specific constants at compile time — for example, alpha = exp(-dt / tau_mem) uses the target’s native dt_ms. Running an artifact compiled for one target on a different backend without recompilation may produce incorrect results even if both backends accept the same layer types.
How to fix
The SDK compiler only accepts target="sim". This fails:
This is the compile that works:
Putting that file on an AKD1500 is the Console. The Console uses the device chip type and does not require the artifact target to be akida-akd1500. LIF layers and synaptic delays are still rejected for that chip. See E0401 and E0402.
Example