ruv
70696bbc68
feat(train): compact WiFlow-STD presets in Rust + tiny edge artifact (ADR-152)
...
WiFlowStdConfig gains half()/quarter()/tiny() mirroring the overnight sweep
exactly: TcnGroupsMode (Fixed/Gcd/Depthwise), input_pw_groups, derived
stride schedule and decoder-mid (all default to upstream behavior; legacy
serde JSON unaffected). Param formulas pin to trained ground truth first
try: 843,834 / 338,600 / 56,290; default 2,225,042 pin and 1.192e-7 parity
unchanged. 248 tests green.
Tiny edge artifact (tiny_edge_bench.py): ONNX fp32 = 295 KB, 0.66 ms/win
(~1,500/s CPU), 94.11% PCK@20 (matches sweep clean-test exactly; parity
1.49e-7). Static int8 is a bad trade at this scale (-1.43pt, +19% MPJPE,
-16% size, slower) — recorded as negative result. Export note: width-16
breaks AdaptiveAvgPool((15,1)) TorchScript export; replaced by exact
mean+matmul equivalent, proven by parity.
Co-Authored-By: claude-flow <ruv@ruv.net >
2026-06-11 10:14:53 -04:00
ruv
64d95d2aad
fix: workflow-review findings — BN gamma init, ThresholdParams serde, init docs
...
Concurrent validation workflow (2 review lanes + adversarial verification,
13 agents): 5 confirmed findings, 3 refuted. Fixes:
- wiflow_std: pin BatchNorm gamma to 1.0 (tch default draws Uniform(0,1) —
silently halves activations in from-scratch training; loaded checkpoints
unaffected, parity re-verified after the change)
- wiflow_std: document the conv-init divergences vs the reference's
effective kaiming_normal(fan_out) re-init (from-scratch dynamics only)
- ieee80211bf: ThresholdParams deserialization validates via try_from so
the <=100 invariant holds for untrusted payloads (+ rejection test)
Benchmarks (release, ruvzen): GeometryEmbedding 1.84us/call (542k/s),
MAE tokenization 7.38us/window (135k/s), 802.11bf FSM 8.9M events/s —
nothing suspicious.
Co-Authored-By: claude-flow <ruv@ruv.net >
2026-06-10 20:45:11 -04:00
ruv
af6621005f
feat(train): WiFlow-STD PyTorch->tch weight import + numerical parity proof
...
export_to_safetensors.py maps the retrained checkpoint (295 tensors -> 248
mapped, param sum exactly 2,225,042; num_batches_tracked dropped) into a
tch-loadable safetensors plus a deterministic parity fixture. Gated #[ignore]
integration test loads it strictly and asserts forward-pass agreement:
max abs diff 1.192e-7 on the seed-42 fixture. dump_variable_names test makes
the tch name layout authoritative. Zero architecture discrepancies found.
Co-Authored-By: claude-flow <ruv@ruv.net >
2026-06-10 20:23:38 -04:00
ruv
cc50e28a29
fix(train): repair tch-backend bit-rot — gated path compiles and tests run again
...
Mechanical API refresh against current tch: Vec::from(Tensor) -> try_from
(+ explicit flatten), numel() usize cast, Rem/div ops -> remainder() /
divide_scalar_mode(floor) — the latter fixed a silent true-division bug in
heatmap argmax decoding; clamp(1.0, f64::MAX) -> clamp_min (torch 2.x scalar
overflow panic); petgraph EdgeRef import; missing EvalMetrics and
verify_checkpoint_dir APIs that tests documented. wiflow_std roundtrip test
uses safetensors (.pt _save_parameters roundtrip broken in torch 2.11
Windows). Gated: 349 passed (incl. all 20 wiflow_std); ungated: unchanged.
Known pre-existing: gaussian-heatmap convention mismatch (2 tests), proof
seed race under parallel threads — documented, deliberate follow-ups.
Co-Authored-By: claude-flow <ruv@ruv.net >
2026-06-10 20:13:47 -04:00
ruv
b0c324edc5
feat: ADR-152 Rust integrations + ADR-153 802.11bf protocol model
...
- calibration: GeometryEmbedding — 32-slot permutation-invariant NodeGeometry
featurization for future LoRA-head conditioning (ADR-152 §2.1.2); derived
SpecialistBank::geometry_embedding() accessor; 59 tests
- train: MaePretrainConfig + patchify/random-mask with UNSW measured recipe
(80% masking, (30,3) patches; ADR-152 §2.3, arXiv 2511.18792); strict
no-truncate/no-NaN policy; proptest properties
- train: WiFlowStdModel — tch-gated port of the verified ~96%-PCK@20
WiFlow-STD architecture (ADR-152 §2.2 beyond-SOTA); ungated param formula
pinned to 2,225,042; 15/17-keypoint support; 239 crate tests
- hardware: ieee80211bf forward-compatibility protocol model (ADR-153):
SpecProfile gates, SensingCapabilities negotiation, required ConsentMode,
session FSM, SensingTransport + SimTransport + OpportunisticCsiBridge;
full acceptance checklist covered; 156+4 tests
- deps: ruvector bumps per ADR-152 §2.6 survey (mincut/solver 2.0.6,
attention 2.1.0, gnn 2.2.0); vendor/ruvector synced to a083bd77f
- docs: ADR-153 accepted; ADR-152 §2.2 status, §2.4 amendment, §2.6 added
Workspace: 162 test suites green (--no-default-features); Python proof PASS.
Known pre-existing flake: homecore-api env_empty_falls_back_to_defaults
(unserialized env-var mutation) — untouched, follow-up.
Co-Authored-By: claude-flow <ruv@ruv.net >
2026-06-10 19:46:34 -04:00