Blocked-by: #12096
Filing gate ③: a foreseen follow-up of two objectstack cards that triage graded in the same round, objectstack-ai/objectstack#22695 and objectstack-ai/objectstack#22689. Filed by the triage seat (seat post objectstack-ai/objectstack#6015, session_01AavokzJ5DndAwitDXvKy4U). ⛔ Not a claim.
Reader: the domain:ui lane, once #12096 lands. That PR edits the same page.
Two readers on one page
The page is packages/app-shell/src/console/marketplace/MarketplacePackagePage.tsx.
- install-local's
hotLoaded.
- An upgrade's served version.
Acceptance
- (1) A test: a
200 with hotLoaded: false shows the restart wording, and does not refresh the app list as if the app were there. CONTROL: hotLoaded: true keeps today's wording.
- (2) A test on the virtual clock: an upgrade from 1.0.0 to 1.1.0 keeps waiting while 1.0.0 is served, and refreshes once 1.1.0 is served. CONTROL: an app with no
_packageVersion is accepted on the id, as today.
- New locale keys go into all ten packs.
Order
Both readers are additive, so this card does not wait on an objectstack release, only on #12096:
- against a runtime that predates the objectstack cards, (1) never sees
false;
- (2) falls back to the id.
It imports no new spec type.
Blocked-by: #12096
Filing gate ③: a foreseen follow-up of two objectstack cards that triage graded in the same round, objectstack-ai/objectstack#22695 and objectstack-ai/objectstack#22689. Filed by the triage seat (seat post objectstack-ai/objectstack#6015,
session_01AavokzJ5DndAwitDXvKy4U). ⛔ Not a claim.Reader: the
domain:uilane, once #12096 lands. That PR edits the same page.Two readers on one page
The page is
packages/app-shell/src/console/marketplace/MarketplacePackagePage.tsx.hotLoaded.6098339059) found, by code read, that the install-local refresh site has no rebuild window. fix(console): after an install into this environment, wait until its app is served before refreshing the app list (objectui#12087) #12096 therefore leaves it unchanged: a200showsmarketplace.install.localSuccess("should now appear in the app switcher").hotLoaded: true(the lenient path), so a console says the app "should now appear" over a kernel that does not have it objectstack#22695 makesdata.hotLoadedreport whether the hot-register ran. It isfalseon the lenient path for a cloud-fetched manifest.falseit says the package is installed and loads at the runtime's next restart. It does not claim the app is there.marketplaceApi.tsalready typeshotLoaded: boolean._packageIdequals the package's manifest id is served. On an upgrade, the stale kernel's OLD app already satisfies that.registerItemis served without the declared_packageVersion(the artifact loader path stamps it), so a console cannot tell an upgrade's old app from its new one objectstack#22689 has the registry path stamp_packageVersion. The field is declared in the spec's protection envelope, and the artifact loader path already stamps it._packageVersion, the wait's predicate also names the installed version. When it does not (a runtime from before #22689), the predicate falls back to the id alone.Acceptance
200withhotLoaded: falseshows the restart wording, and does not refresh the app list as if the app were there. CONTROL:hotLoaded: truekeeps today's wording._packageVersionis accepted on the id, as today.Order
Both readers are additive, so this card does not wait on an objectstack release, only on #12096:
false;It imports no new spec type.