The Worker reads environment-build.sh's own lines from the stored build log at finalize and records
autoInstall { manager, outcome } in the build result (no image change). The build view carries it;
the environment page shows 'Dependencies installed (pnpm)' or that the install failed and workspaces
run their own setup.
* wip(cloud): PARITY-FOLLOW design fixtures (top-bar followers, sidebar Team and Following)
* feat(cloud): PARITY-FOLLOW phase 1: sidebar Team list and the top bar's people (creator and who is here now)
* test(cloud): PARITY-FOLLOW fixtures name the workspace a teammate is in
* fix(cloud): PARITY-FOLLOW fixture typecheck
* feat(cloud): PARITY-FOLLOW follow endpoint: workspace_follows (0055), PUT/DELETE /v1/team/workspaces/:id/follow, followers in workspace views
* fix(cloud): PARITY-FOLLOW lint: the hover action's wrapper owns its visibility; no Button restyles; no side effect in a state updater
* feat(cloud): PARITY-FOLLOW phase 2: Follow in the top bar, followers in the stack, Following section in the sidebar
* test(cloud): PARITY-FOLLOW no real-time wait in the live-read test
true -> Install, false -> no Install (copy request for an owner); null (no connected GitHub, GitHub
refused) or absent (older Worker) -> the person's gh read as before (#644). Visible copy unchanged.
* wip(cloud): PARITY-FOLLOW design fixtures (top-bar followers, sidebar Team and Following)
* feat(cloud): PARITY-FOLLOW phase 1: sidebar Team list and the top bar's people (creator and who is here now)
* test(cloud): PARITY-FOLLOW fixtures name the workspace a teammate is in
* fix(cloud): PARITY-FOLLOW fixture typecheck
* fix(cloud): PARITY-FOLLOW lint: the hover action's wrapper owns its visibility; no Button restyles; no side effect in a state updater
* test(cloud): PARITY-FOLLOW no real-time wait in the live-read test
* feat(cloud): SSO-FOLLOWUPS members managed by the identity provider on the Team page; a clear message when single sign-on ends a sign-in
* fix(cloud): import the roster type where it is used
* feat(cloud): wording for single sign-on and directory sync events in the audit log
* fix(cloud): the missing-DNS-record audit line reads as an action (design-squad)
cloud/integration fails oxlint max-lines on use-secret-request-card.ts (303 counted
lines, limit 300) since #637, which fails every premerge that merges integration.
Moves canWriteRepo and its cache to secret-request-repo-write.ts; no behaviour change.
A table of every team cloud workspace (name, W-number, repository, created by, state, last
active, shared/private) with By, In and search; per row only the actions the control plane
allows (open, sleep, archive) through the existing flows. No pins, sections or ordering.
Co-Authored-By: Claude <noreply@anthropic.com>
owner-request.ts: copyOwnerRequest(repoUrl, 'start' | 'push'), ownerRequestLabel and
useOwnerRequestCopy (Copied for 1.5 s), with one set of keys (orcaCloud.ownerRequest.*). The
CLONE-ACCESS-ERROR and ENV-NOTICE-ACTIONS copies and their private keys are gone. Same visible
words.
* feat(cloud): ENTERPRISE-SSO Settings › Enterprise single sign-on and directory sync, driven by server state
* feat(cloud): key icon on the single sign-on group title (TEAM-DIALOG-2)
* fix(cloud): Contact us in the SSO block is a plain button; Copy link is for sign-in surfaces
* test(cloud): the copied SSO setup link is minted like the opened one and never logged
* fix(cloud): design-squad review of the SSO blocks (sentence-case chips, directory sync icon, grace and last-change wording)
* fix(cloud): sentence-case success badge variant for the SSO chips; catalog matches the new copy
* fix(cloud): register the Enterprise IPC handlers with the team handlers (file line limit)
* feat(cloud): every setup notice line has plain words and a real action, or doesn't show (ENV-NOTICE-ACTIONS)
- Doctor checks that reached the bare 'check' line now classify: low disk ('disk')
and a missing repo tool ('tool') get their own plain words; disk.free without a
code and any check this desktop doesn't know are hidden, never a bare label.
- The push notice reads repo access plus the person's own gh rights on the repo
(new gitHubInstallRights IPC): Install on {owner} only where installing can
work, 'Copy request for an owner' once an owner was asked, Check again where
the App already reaches the repo, plain words for someone else's public repo
(octocat/Hello-World). Install no longer carries a Copy link.
* copy(cloud): a push nobody here can install offers Copy request for an owner (design-squad, ENV-NOTICE-ACTIONS)
* fix(cloud): ENV-NOTICE-ACTIONS rebase onto AUTH-ONLY-COPY-LINK: the owner request takes the install page from the repo-access answer