Conversation
Reads the signed marketplace index, lists what the running image can install, and installs through the queue init already owns. The install buttons did nothing: the painter and the hit test each computed their own rectangles, so a click never matched a row. Both derive from one geometry module now and the click path reaches the same install::ask as Enter. Search filters as typed, the list scrolls with a real scrollbar, and selection survives a refresh. init gains an install queue and a wake path so a store request is serviced on arrival rather than on the next supervisor spin. The surface registry can attach frames to a surface a capsule owns. Scrollbar arithmetic mirrored in python: empty, shorter than the viewport, thumb at both ends, single row overflow.
8dfcd0d to
ac26618
Compare
text::line returns the drawn width, so the bare match evaluated to i32 where the function body expects (), failing the capsule build.
|
@eKisNonos Review before merge Scope: new Our changes: Findings (blocking):
Verdict: hold — depends on unmerged work (#535, the #546 foreign/linux-install surface, #544). Rebase-free fix: land those first, then merge main here. |
Main's table held thirteen apps and #545 added the marketplace as the fourteenth, so the shell no longer compiled once both were merged.
|
Reviewed at Verdict: Request changes. The branch does not compile, and the cause is not in the store code — two merge commits dropped definitions while keeping their call sites. One of the two casualties is a security guard, so the tempting quick fix is the wrong one. Critical1. From Verified at this head rather than taken from the log:
Meanwhile the caller of the first one is present: // Never to a guest.
if crate::process::foreign::is_foreign(receiver_pid) {
return Err(RegistryError::InvalidArg);
}So this branch's merges ( The fix direction matters here. Deleting the Given the 213-commit gap, redoing the merge against current Important2. Every other red lane is downstream of item 1 or is nine days stale. The build report (run Note what is not in that list: no So there are really two separate problems: the branch does not compile (item 1, real, in the diff), and nothing else the lanes say can be trusted until it is rebased and re-run. Verified correctThe store code itself reads well, and the kernel-side additions are the parts I checked most closely because they are the ones that could matter beyond the capsule.
Questions
CI at this headFifteen lanes pass. Item 1 is the whole of it: restore the two symbols — or redo the merge — and re-run before anything else here can be judged. |
|
Follow-up to item 1, with the fix located rather than guessed at. #583 (
So this confirms the diagnosis: both were lost in this branch's two Worth deciding whether this PR needs to land separately at all. #583 carries 50 of this branch's 52 |
New capsule. Reads the signed marketplace index, lists what the running image can actually install, and installs through the queue init already owns.
The install buttons did not work. The painter and the hit test each worked out their own rectangles, so a click never matched the row it looked like it hit and nothing fired. Both come from one geometry module now and the click path lands on the same
install::askthat Enter does.Search filters as you type, the list has a real scrollbar off the same geometry, and selection survives an index refresh instead of jumping to the top.
Two bits outside the capsule:
initgains an install queue and a wake path so a request is handled when it arrives rather than on the next supervisor spin, and the surface registry can attach frames to a surface a capsule owns, which is how the store draws its own window.Scrollbar arithmetic mirrored in python: empty list, list shorter than the viewport, thumb at both ends, and the single row overflow where an off by one would not be visible.