Skip to content

[cloud half] Declare the environments deep-link via the nav runAction slot; retire cloud#1048's transitional pin (#4848 follow-up) #7251

Description

@os-zhuang

Blocked-by: #7250

Follow-up consumer card for #4848 (spec half landed by the claude/issue-4848-runaction-contract PR — filed unassigned/unrouted; the target surface is the cloud repo, so route per cross-shard convention like #4848 itself was). Blocked by the objectui half (#7250) — the shell must consume the declared slot first.

What cloud needs to do

  1. Declare the welcome→environments deep link in metadata using the spec's ObjectNavItemSchema.runAction slot (runAction: 'create_environment' on the environments object nav/deep-link declaration), so publish/graph-lint validates the action name instead of the comment block in welcome.page.ts carrying the contract.
  2. Once the declared route is live end-to-end, retire cloud#1048's transitional guard (the load-bearing-names comment in packages/service-tenant/src/pages/welcome.page.ts and its pin in welcome.page.test.ts) — it stays in place until then, per the [决策] SDUI 深链「导航即运行动作」(?runAction=<actionName>)要不要升格为 spec 声明的正式契约 #4848 ruling: 「cloud#1048 的 pin 测试作为过渡措施保留至新契约落地」.

Why

The spec-declared reference makes an AI/human rename of create_environment on sys_environment fail loudly at publish instead of silently degrading the welcome CTA back to "just navigates" (the cloud#844 bug).

Refs: #4848 (ruling comment 5203605940), #7250 (objectui half), cloud#844, cloud#1048.


Generated by Claude Code

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions