The web/public/*.fcast fixtures predate the wire reset and no longer decode #1
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Summary
Every recording under
web/public/was written against the pre-reset feliswire and no longer decodes.
applyJsonrejects the first frame of each file,so the demo gallery (
web/index.html), the mobile demo's replay tabs andbench/render.html's fixtures all show an empty grid plus a console error.Found while following felis to
105b089979369fd310757375af3df7900ae7e523(branch
follow-felis-105b0899).Reproduction
The stored frames still spell the old shapes:
Deserializing those two frame bodies against felis at that rev
(
felis_protocol::messages::GridMsg):What changed
GridMsg::RehydrateBeginis payload-free; the dimensions come from thepreceding
SessionMsg::Attachedor the latestGridMsg::Size.GridMsg::RowDeltacarriesrows: [(row, payload)]and absorbedRowDeltaBatch; a payload is an opaque byte string, so the structural-JSONrow travels as the bytes of its own JSON text.
GridMsg::GridSizeisGridMsg::Size { dims }..fcastformat v2:proto_major/proto_minorreplaceproto_versionand thecapabilities/capability_bitspair, which nameda bitmap felis no longer has (see felis-fcast, branch
follow-felis-105b0899).fcastSourcealready readsproto_minorandfalls back to
0, so a v1 header degrades rather than throwing — but itsframes still do not decode.
Why it is out of scope for the follow PR
Regenerating a recording needs
felis-fcastat the same pin plus a livefelis-daemondriving each scenario (tte.fcastis a recorded animation,glyphs.fcastcomes fromweb/tools/gen-glyphs-fcast.py,sessions.fcastneeds several sessions). None of that can be hand-edited into the files, and
felis-fcast's own follow has not landed on itsmainyet. The follow PRtherefore leaves the fixtures alone rather than shipping a half-migrated set.
Work
felis-fcast's follow to land onmain.btm,cursor,kitty,links,scroll,session,sessions,sizing,theme,tte,helloper README "Record a.fcast", and regenerateglyphs.fcastwithweb/tools/gen-glyphs-fcast.py.wasm test that applies the first frame of each
web/public/*.fcastwouldhave caught this at the pin bump.