feat(truapi-debugger): wire trace engine, standalone inspector, and in-app panel - #536
Open
decrypto21 wants to merge 8 commits into
Open
feat(truapi-debugger): wire trace engine, standalone inspector, and in-app panel#536decrypto21 wants to merge 8 commits into
decrypto21 wants to merge 8 commits into
Conversation
|
Review the following changes in direct dependencies. Learn more about Socket for GitHub.
|
decrypto21
force-pushed
the
nidish/debugger-2-engine
branch
from
August 28, 2026 06:53
eebee61 to
e8d9625
Compare
decrypto21
force-pushed
the
nidish/debug-host-port
branch
3 times, most recently
from
August 31, 2026 10:25
715bfec to
af7b25a
Compare
…egen decode surface
decrypto21
force-pushed
the
nidish/debug-host-port
branch
from
September 3, 2026 09:29
af7b25a to
b3d0095
Compare
decrypto21
force-pushed
the
nidish/debugger-2-engine
branch
from
September 3, 2026 09:39
e8d9625 to
60a5960
Compare
…mode, and cover the report
decrypto21
force-pushed
the
nidish/debugger-2-engine
branch
from
September 3, 2026 11:19
60a5960 to
30fbec3
Compare
decrypto21
marked this pull request as ready for review
September 3, 2026 11:39
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Adds the TrUAPI wire debugger: the trace engine, a standalone loopback inspector, an in-app panel a host can mount, the dev-gated worker dial that feeds them, and the release plumbing for
@parity/truapi-debugger. Stacked on #295, which emits the opaque frames this correlates and decodes.Why: the tap in #295 has no consumer. This is the consumer, and the first thing in the stack that turns frames into something readable.
How:
js/packages/truapi-debuggerholds the engine and both surfaces; the dial is increate-worker-host-runtime.ts.Engine:
(channelId, requestId), resolving each frame's lifecycle role at ingest from the generated wire table.frames[0]is the opener only if the opener was the first frame observed, and a tap attaching mid-session usually sees a closer first, so retention spares the opener by role. Keying on index 0 evicts the frame that pairing and storm detection depend on.malformedsentinel rather than dropping them.Surfaces:
curland the UI cannot disagree about operations, badges, or payloads.malformed 1 / truncated 1on a stream the panel showed as clean.Confinement and decode:
ws://on a loopback host, with origin, target, and bind checked as three distinct loopback classifications.Hostmust match a loopback name exactly rather than by substring, and inbound payload size is capped.sync-release-versionsgains the debugger's@parity/truapirange, so a protocol release that leaves the debugger pinned to an older version fails at release time rather than at decode time.Driven end to end against dot.li on
paseo-next-v2with the playground as the product: 172 operations, 351 frames, decoded payloads, andcodecOk/schemaOktrue on the channel.