igneum/docs/plans/site-ui-4-shots/pack/verify-local.log
igneum-labs a4fe3d8e08 site-ui-4: the EMBER 02 renderer on the home fold and /live, the proof inspector, the compact copies for the app (prototype, not deployed)
renderer pack EMBER 02 supplied by the project lead, 7 Oct 2026: src/live-dag.js
and src/proof-core.js adopted byte for byte (sha256 582f2e73... and
c2a094a6...), reviewed as third-party code (one same-origin fetch of
/api/live when poll is on, no eval, no CDN, no font download, tokens
read from :root in both themes, checkpoints placed only on an exact
blue score, proof never implies inclusion, a lock only when reported),
its tests/verify.py run on this Mac (73 of 73) and the module mounted
against the real observer feed (state live, only /api/live requested,
zero records promoted). Home: the pack's full mode in the one-screen
fold with the legend row and the newest block's caption, fed by the
page's own reader. /live: the pack in the graph slot, the four miner
stats (blocks in window, your blocks, proven, latest checkpoint), the
All blocks / Selected chain / Your blocks tabs, Pause and Follow, the
window stepper, the inspector column with IgneumProof's shard scene,
the proof shards list, inclusion, miner key, blue score, DAA, parents,
header time, checkpoint, finality, and the three-beat Motion, with
meaning block; the observatory's six tiles, identities, event stream,
block activity, light client and table stay. site.css gains --included
and --excluded. The standalone demo is the pack's standalone.html; the
10-second recording is from this branch's /live.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
2026-10-07 08:59:46 +00:00

74 lines
3.5 KiB
Text

PASS Standalone preview renders without JS errors
PASS Standalone preview makes no network requests
PASS Both renderers use the same block records
PASS Sample contains six miner keys
PASS Visible source label says simulated
PASS Original mount API is exposed
PASS Zoom-in control works
PASS Zoom-out control works
PASS Ordinary page scrolling is not captured
PASS Modified wheel zooms the graph
PASS Keyboard inspection updates the details
PASS Escape clears selection
PASS Your-block filter is active
PASS Selected-chain filter is active
PASS Pause button updates state and accessibility
PASS Pause freezes displayed records while receiving data
PASS Pause freezes the rendered pixels
PASS Paused graph has no continuous RAF loop
PASS Resume applies buffered block records
PASS Sample block control selects a new own block
PASS Sample proof control advances shard states
PASS Sample checkpoint control produces an explicit locked record
PASS Accessible table contains block records
PASS Table selection opens the matching block
PASS Light theme control works
PASS Manual reduced motion propagates to both visuals
PASS System reduced-motion changes stop continuous drawing
PASS Motion resumes when the system preference changes
PASS Offscreen main graph suspends animation
PASS Main preview remains free of JS errors
PASS Responsive layout 320px has no horizontal overflow
PASS Compact renderer draws when scrolled into view at 320px
PASS Responsive preview 320px has no JS errors
PASS Responsive layout 390px has no horizontal overflow
PASS Compact renderer draws when scrolled into view at 390px
PASS Responsive preview 390px has no JS errors
PASS Responsive layout 768px has no horizontal overflow
PASS Compact renderer draws when scrolled into view at 768px
PASS Responsive preview 768px has no JS errors
PASS Responsive layout 1024px has no horizontal overflow
PASS Compact renderer draws when scrolled into view at 1024px
PASS Responsive preview 1024px has no JS errors
PASS Responsive layout 1440px has no horizontal overflow
PASS Compact renderer draws when scrolled into view at 1440px
PASS Responsive preview 1440px has no JS errors
PASS Valid observer payload is accepted
PASS Renderer does not mutate supplied records
PASS Age and selected-chain status do not imply proof or finality
PASS Existing records update miner, parents and header fields
PASS Malformed envelope is rejected without throwing
PASS Invalid block records are rejected without throwing
PASS Prototype-like hashes are safe map keys
PASS Tooltip treats incoming text as text, not markup
PASS Unknown shard state is not promoted to planned or verified
PASS Zoom has a 30-second lower bound
PASS Zoom has a 300-second upper bound
PASS ResizeObserver tracks container-only resizes
PASS Checkpoint is not snapped to a different blue score
PASS Exact checkpoint score renders a pending marker
PASS Weight alone does not infer checkpoint lock
PASS Stale feed preserves records and reports stale
PASS Stale feed does not animate as fresh activity
PASS Mounting again destroys the previous instance
PASS Destroy stops animation and rejects future pushes
PASS Polling preserves existing endpoint query parameters
PASS Polling requests fresh data with an abort signal
PASS Overlapping polls are prevented
PASS Queued zoom request uses latest window
PASS Observer response reaches rendered model
PASS Destroy aborts an in-flight observer request
PASS New module runs inside the supplied original HTML host
PASS Original host pause control still works
PASS Original host theme control remains compatible
RESULT 73 / 73