Integrate remaining reviewed contribution backlog - #304
Merged
hamzamerzic merged 44 commits intoJul 28, 2026
Merged
Conversation
hamzamerzic
enabled auto-merge
July 28, 2026 03:47
Co-authored-by: Möbius Agent <mobius-agent@users.noreply.github.com>
Co-authored-by: Möbius Agent <mobius-agent@users.noreply.github.com>
Co-authored-by: Möbius Agent <mobius-agent@users.noreply.github.com>
Co-authored-by: Möbius Agent <mobius-agent@users.noreply.github.com>
Co-authored-by: Möbius Agent <mobius-agent@users.noreply.github.com>
Co-authored-by: Möbius Agent <mobius-agent@users.noreply.github.com>
Co-authored-by: Möbius Agent <mobius-agent@users.noreply.github.com>
Co-authored-by: Möbius Agent <mobius-agent@users.noreply.github.com> Co-authored-by: Miljan Martic <miljan.martic@pm.me>
Co-authored-by: Möbius Agent <mobius-agent@users.noreply.github.com> Co-authored-by: Miljan Martic <miljan.martic@pm.me>
Co-authored-by: Möbius Agent <mobius-agent@users.noreply.github.com>
Co-authored-by: rgjordana <309798046+rgjordana@users.noreply.github.com>
Co-authored-by: Möbius Agent <mobius-agent@users.noreply.github.com>
Co-authored-by: Möbius Agent <mobius-agent@users.noreply.github.com>
Co-authored-by: Möbius Agent <mobius-agent@users.noreply.github.com>
Co-authored-by: Möbius Agent <mobius-agent@users.noreply.github.com>
Co-authored-by: Möbius Agent <mobius-agent@users.noreply.github.com>
… the scroller Shell performance work is easy to get wrong because the environment that is convenient to profile (headless desktop Chromium, software rasterization) is structurally unable to observe what makes a phone slow: a tile-based GPU, a 3-5x slower CPU, touch input at digitizer rates, visualViewport events that barely fire on desktop, and mobile flash latency. Add a probe that reports what a real device sees. It uses only passive PerformanceObserver entries and deliberately does NOT run a requestAnimationFrame loop to count frames, since that would keep the compositor awake and manufacture the very always-on cost such an investigation is usually looking for. Long Animation Frames carry script attribution, so a report can name the module that blocked rather than restating that something did. It is off by default and zero-cost when off: perfMark returns immediately, no observers register, and nothing is sent. Enrol a device with ?perf=1. Samples land in a capped JSONL file via two owner-authenticated debug endpoints. Instrumented paths were chosen for platform divergence: touchmove and wheel under separate labels, visualViewport sync, the per-frame stream snapshot write, and markdown tokenisation split into streaming and settled so 'a stopped chat still feels slow' can be distinguished from 'streaming is expensive'. Scroll-start latency is measured directly, touchstart to first moving frame, because start-of-gesture lag is a different failure from steady-state jank. The probe immediately found one: readerInputNeedsFrameRelease's argument object was built eagerly at a call site bound to touchstart and touchmove as well as wheel. It read scrollTop, scrollHeight and clientHeight, and the function's second line discards all three for any type that is not 'wheel'. Reading scrollHeight forces a synchronous layout, and the transcript is not virtualized, so every touch event laid out the whole transcript for values it threw away. Wheel needs them and fires once per notch; touch paid for nothing at 120-240Hz from the first event of the gesture. Passing a thunk defers the reads to the branch that consumes them. The test counts thunk invocations rather than return values, because the eager form returned identical answers - only a test that pins the cost can catch a regression to it. Co-authored-by: Möbius Agent <mobius-agent@users.noreply.github.com>
Co-authored-by: Möbius Agent <mobius-agent@users.noreply.github.com>
Co-authored-by: Möbius Agent <mobius-agent@users.noreply.github.com>
Co-authored-by: Miljan Martic <miljan.martic@pm.me>
The Landlock fallback relies on util-linux 2.41 setpriv support. Pin both runtime stages to Debian Trixie so a floating slim tag cannot silently select a release that lacks the required flags. Co-authored-by: Möbius Agent <mobius-agent@users.noreply.github.com>
Co-authored-by: Möbius Agent <mobius-agent@users.noreply.github.com>
Co-authored-by: Möbius Agent <mobius-agent@users.noreply.github.com>
hamzamerzic
force-pushed
the
integration/post-visual-all-20260728
branch
from
July 28, 2026 04:11
25f94d7 to
6b18217
Compare
This was referenced Jul 28, 2026
This was referenced Jul 28, 2026
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.
Summary
This integrates the remaining reviewed Möbius contribution backlog after the visual rollout, with each change reconciled against current
mainrather than stacking stale branches.Reliability and provider parity
Shell and chat experience
Security, provenance, and diagnostics
setprivSummary-owned chat names
chat_note.pypublisher as the single naming lifecycleReview notes
The original branches are intentionally consolidated so current
mainreceives one coherent, conflict-resolved implementation. Authorship from #272, #273, and #289 is called out above and retained in commit trailers where appropriate.Verification
git diff --checkSupersedes #266, #270, #271, #272, #273, #276, #277, #278, #279, #283, #284, #289, #296, and #299 after this integration lands.