Skip to content

Correct five false public claims, and measure the attitude damper - #6

Merged
abgnydn merged 1 commit into
mainfrom
fix/pre-launch-truth-pass
Aug 3, 2026
Merged

Correct five false public claims, and measure the attitude damper#6
abgnydn merged 1 commit into
mainfrom
fix/pre-launch-truth-pass

Conversation

@abgnydn

@abgnydn abgnydn commented Aug 3, 2026

Copy link
Copy Markdown
Owner

Four independent hostile reviews of the public surface — connectomics, RL, graphics, community — all returned publish-with-fixes and found five false statements. The engineering and the science held up; the risk was about six sentences.

The landing page never got the cleanup

index.html still said a command neuron "named DNa01 in the brain is the same cell as DNa01 in the spinal cord" and that the path is "wire for wire from the real animal" with "nothing learned or scripted".

All three are contradicted by this repo's own LIMITATIONS §5: FlyWire is a female FAFB brain, MANC a male VNC; no wire crosses the boundary at all; and what does cross is a rolling firing rate averaged over the DN's L+R copies, scaled by a hand-chosen constant, written as constant external current. A scalar, not spikes.

That page has the widest readership and is the Space's app_file — the exact sentence class removed from README three days ago, still sitting where everyone lands.

The Kenyon-cell claim was circular

README and LIMITATIONS presented KC sparsity in the canonical 5–15% band as the strongest dynamics claim. src/sim.ts says w_syn was "tuned EMPIRICALLY … to land KC at the canonical 5-15%". The one free synaptic weight was fitted to produce the number then reported as agreement with Shiu et al. 2024 — and w_syn, tuned and 0.275 appeared in none of the seven public documents.

Now stated as a calibration target, not a validation: what it shows is that a w_syn exists putting the network in a plausible regime rather than silent or saturated.

"alone" was false — including in the DOI record

Five places claimed the policy walks "from leg actuation and ground reaction alone" with the kinematic assist off. The pitch/roll damper sits above the assist's guard in step(), so it runs regardless — and no uprightness figure this project has ever recorded was damper-free, because the damper has been on unconditionally for its entire life.

It is now gated behind Physics.attitudeDamperEnabled and measured. Trained policy, assist off, 3 reps each:

Pitch/roll damper cm/sim s Uprightness at end Min uprightness
ON (as shipped) 2.019 +0.997 +0.997
OFF 0.068 −0.87 −0.913

Commanded speed 2.0 cm/s. With the damper off the fly capsizes and stops walking — 0.068 is nearer the 0.032 of a body with no controller at all than the commanded 2.0.

Translation is earned: with the assist off nothing writes qvel[0..2], so the forward motion genuinely comes from leg actuation and ground reaction. Attitude is not. The docs keep those halves apart now instead of collapsing them into one sentence.

Provenance and attribution

space/README.md listed the flybody body model and the trained walking policy under one licence when NOTICE gives them different provenance, omitted MANC's licence, and pointed at NOTICE and LIMITATIONS.mdneither of which deploy:hf uploaded. Both pointers were dead, and shipping the mujoco wasm without NOTICE doesn't satisfy Apache-2.0 §4(d). deploy:hf now ships all four.

Also

Scoped the rhythm negative result to "our deafferented LIF model of MANC" rather than to the connectome — a memoryless LIF network with no adaptation, delays or sensory feedback structurally cannot half-centre oscillate, so the unscoped version is what a referee would reject. This strengthens the claim rather than retreating from it. Added the deafferented cord (all 6,282 sensory neurons at zero) to the §8 inventory, where it was missing.

Known, not fixed here

The shipped public/vnc.bin was not built by the committed build_vnc.py — 580 of 709 motor neurons are signed inhibitory despite the script's NMJ exception, 1,165 carry a sign its confidence gate forbids, and nt_conf contains NaNs the script's fillna makes impossible. Magnitude is small (~0.36% of edges, ~0.12% of |w|; the premotor matrix is bit-identical either way) so this is provenance, not dynamics — but rebuilding from tools/ is the first thing a reviewer does. Needs data/manc, which isn't in this checkout: download_manc.shbuild_vnc.pywrite_manifest.pyupload_to_r2.sh.

tsc clean · unit 5/5 · e2e 34/34.

🤖 Generated with Claude Code

Four independent hostile reviews of the public surface — connectomics, RL,
graphics, community — all returned publish-with-fixes and found five
statements that were false. The engineering and the science held up; the
risk was concentrated in about six sentences.

THE LANDING PAGE NEVER GOT THE CLEANUP. index.html still said a command
neuron "named DNa01 in the brain is the same cell as DNa01 in the spinal
cord" and that the path is "wire for wire from the real animal", with
"nothing learned or scripted". All three are contradicted by this repo's own
LIMITATIONS §5: FlyWire is a female FAFB brain and MANC a male VNC, no wire
crosses the boundary at all, and what does cross is a rolling firing rate
averaged over the DN's L+R copies, scaled by a hand-chosen constant, written
as a constant external current. A scalar, not spikes. That page has the
widest readership and is the Space's app_file.

THE KENYON-CELL CLAIM WAS CIRCULAR. README and LIMITATIONS presented KC
sparsity landing in the canonical 5-15% band as the strongest dynamics claim.
src/sim.ts says w_syn was "tuned EMPIRICALLY ... to land KC at the canonical
5-15%". The one free synaptic weight was fitted to produce the number then
reported as agreement with Shiu et al. 2024, and none of "w_syn", "tuned" or
"0.275" appeared in any public document. It is now stated as a calibration
target rather than a validation: what it shows is that a w_syn exists putting
the network in a plausible regime rather than silent or saturated.

THE WORD "alone" WAS FALSE, INCLUDING IN THE DOI RECORD. Five places claimed
the trained policy walks "from leg actuation and ground reaction alone" with
the kinematic assist off. The pitch/roll damper sits ABOVE the assist's guard
in step(), so it runs regardless — and no uprightness figure this project has
ever recorded was damper-free, because the damper has been on unconditionally
for its whole life.

So it is now gated behind Physics.attitudeDamperEnabled and measured. Trained
policy, assist off, 3 reps each:

  damper ON  (as shipped)   2.019 cm/sim s   uprightness +0.997
  damper OFF                0.068 cm/sim s   uprightness -0.87

Commanded speed 2.0 cm/s. With the damper off the fly capsizes and stops
walking — 0.068 is nearer the 0.032 of a body with no controller at all than
the commanded 2.0. Translation is earned: with the assist off nothing writes
qvel[0..2], so the forward motion genuinely comes from leg actuation and
ground reaction. Attitude is not. The docs now keep those two halves apart
instead of collapsing them into one sentence.

PROVENANCE AND ATTRIBUTION. space/README.md listed the flybody body model and
the trained walking policy under one licence when NOTICE gives them different
provenance, omitted MANC's licence, and pointed at NOTICE and LIMITATIONS.md
— neither of which deploy:hf uploaded. Both pointers were dead and shipping
the mujoco wasm without NOTICE does not satisfy Apache-2.0 §4(d). deploy:hf
now ships NOTICE, LICENSE, LICENSE-FLYBODY and LIMITATIONS.md.

Also scoped the rhythm negative result to "our deafferented LIF model of
MANC" rather than to the connectome — a memoryless LIF network with no
adaptation, delays or sensory feedback structurally cannot half-centre
oscillate, so the unscoped version is what a referee would reject. Added the
deafferented cord (all 6,282 sensory neurons at zero) to the §8 inventory,
where it was missing.

e2e 34/34, unit 5/5, tsc clean.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@abgnydn
abgnydn merged commit 9047838 into main Aug 3, 2026
1 check passed
@abgnydn
abgnydn deleted the fix/pre-launch-truth-pass branch August 3, 2026 09:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant