fix: resolve audited dispatch, kernel, and rollout bugs
- re-register the linear family with the operator dispatcher (ASTR_OPS / op_backend / resolve) - fix bf16 gemv misaligned-address faults and element mispairing for offset weights - reject misaligned bf16_swiglu inputs with a clear error and fall back in the backend gate - make the rollout reuse decision, validation, and return atomic under one policy snapshot - add the documented post-scoring rollout version check - derive live+1 under the scheduler lock in optimizer_step via apply_weight_update(None, ...) - reject rollout_max_policy_lag below rollout_interval - 1 at config time - sync gemv stream-test inputs before switching streams; drop dead loader imports
This commit is contained in:
@@ -292,8 +292,9 @@ class BaseStrategy(ABC):
|
||||
if self._rollout_runner is None:
|
||||
return optimizer.step()
|
||||
|
||||
next_version = self.policy_version + 1
|
||||
result = self._rollout_runner.apply_weight_update(next_version, optimizer.step)
|
||||
# None lets the scheduler derive live+1 under the policy lock,
|
||||
# avoiding a read-compute-write race on policy_version.
|
||||
result = self._rollout_runner.apply_weight_update(None, optimizer.step)
|
||||
self._rollout_runner.step()
|
||||
return result
|
||||
|
||||
|
||||
Reference in New Issue
Block a user