Repository navigation
feat(setup): retire Packaged automation's flows half; Packaged actions is its own Setup entry - #28785
Conversation
…s is its own Setup entry ADR-0146 D11: a packaged flow's switch and its copy are Studio's (D4), so Setup's packaged FLOWS page retires. nav_packaged_automation (automation:packaged) becomes nav_packaged_actions (automation:packaged-actions), which opens the actions switch list alone. The retired id is tombstoned, and the four locales carry the new label. Studio stops linking to the retired page: the Organization flows empty state says how to change a packaged flow and links nowhere, and BuilderLanding drops packagedAutomationPath. A source pin refuses the retired ref or URL in any Studio source. The platform checklist citation is re-pointed at the new entry. Co-Authored-By: Claude <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01QsR2jRKMRpKnN9FkAvSWGr
📓 Docs Drift Check6 anchor(s) derived from 1 changed package(s); no hand-written page names any of them, so this run has nothing to list — not a clean bill of health. This check sees only pages that NAME a derived anchor: one that documents this change in prose, or enumerates it in an authoring dialect, names none and stays invisible to it on every run. What this run could not see
Coarse fallback — 2 page(s) merely mention a changed package (the pre-#9192 predicate, kept for the deliberately-wide backstop): Which tree this was computed onThis run read A worktree cut from an older # while this PR is open — GitHub drops the merge commit once it closes
git fetch origin 49b3b81e785c7be8812904d1acac10db4f364415 && git checkout 49b3b81e785c7be8812904d1acac10db4f364415
# afterwards, rebuild it from the two parents, which stay fetchable
git fetch origin a00f3359112456e64586ab043ba77d41d0b32119 93d0cab55c8de9d8772a37cdbab7d6aeb2060324 && git checkout -B drift-repro a00f3359112456e64586ab043ba77d41d0b32119 && git merge --no-ff 93d0cab55c8de9d8772a37cdbab7d6aeb2060324
node scripts/docs-audit/affected-docs.mjs --json a00f3359112456e64586ab043ba77d41d0b32119 |
|
domain:ui#1 · zhuangjianguo · session_01QsR2jUJ19MstFvFhjgiYTu 席位核对 · ACCEPT · 2026-11-01T20:04ZHead-sha:
|
Requested by Steedos · project thread
Part of #28578
PR 1 of 2. Wanted 1, 2, 4 and 5 (Setup's metadata pages into Studio's All metadata area) follow in a second PR on this branch, after this one merges. That PR closes the card. The split keeps each PR under the 3000-line human-merge threshold (claim amendment 6561871570).
维护者速读
nav_packaged_automation(automation:packaged)换成nav_packaged_actions("Packaged Actions",automation:packaged-actions),页面只保留打包动作的开关列表。Studio 不再链接到这个下线的页面。/apps/setup/component/automation/packaged不再对应任何页面。回滚就是 revert 本 PR。packages/platform-objects/src/apps/setup-nav.contributions.ts、ui/packages/app-shell/src/views/setup/PackagedActionsPage.tsx、ui/packages/app-shell/src/services/builtinComponents.tsx。/studio/~org/automations),空状态不再链接到设置。What changes
@objectstack/platform-objects).nav_packaged_automationis replaced by{ id: 'nav_packaged_actions', type: 'component', label: 'Packaged Actions', componentRef: 'automation:packaged-actions', icon: 'zap' }, ingroup_appsbeside Packages. Like the old entry it has norequiresServiceand norequiredPermissions. The label is in en, zh-CN, ja-JP and es-ES, with the source-hash rows moved.nav_packaged_automationjoins the dead-key tombstone.@object-ui/app-shell). The newPackagedActionsPageis a page header plusPackagedActionsSection(headed={false}).builtinComponentsregisters it asautomation:packaged-actionsand no longer registersautomation:packaged.PackagedAutomationPage.tsxand its test are removed, and theindex.tsexport becomesPackagedActionsPage. The shared helperspackagedFlows.ts,packagedFlowLedger.tsandpackagedActions.tsstay; Studio uses them.engine.studio.org.openSetupis removed from the Studio namespace.BuilderLandingdropspackagedAutomationPath.docs/qa/platform-checklist/areas/automation.jsonthat namedsetup-nav.contributions.ts#nav_packaged_automationnow names#nav_packaged_actions. Claim amendment 6561766478 added this to the surface, andcheck-platform-checklist --changed-from origin/mainreported it as a LOST anchor until it was re-pointed.Why
ADR-0146 D4 put a packaged flow's on/off switch and its copy (New similar) into Studio's Automations pillar. D11 retires the Setup page that duplicated them. Setup keeps the operational state for packaged actions, which has no Studio home.
Tests
setup-packaged-actions-nav.test.ts(renamed fromsetup-packaged-automation-nav.test.ts) pins the new entry: its ref, group, no gates, and that it parses. It also pins the retired id and ref staying absent.setup-nav-dead-key-tombstone.test.tsgainsnav_packaged_automation.PackagedActionsPage.navContribution.test.tsx(renamed) checks that the ref resolves with@object-ui/app-shellas source andautomation/packaged-actionsas segments, that the page mounts throughComponentNavViewwith one "Packaged actions" heading, and thatautomation:packagedresolves to nothing.noRetiredSetupLink-28578.test.tsreads every Studio source with comments masked and refusesautomation:packagedandautomation/packaged. It also has a matcher control. Run against the272fec05copies ofBuilderLanding.tsx, the pattern catches the base'sautomation:packaged.StudioDesignSurface.homeLoop-12513,StudioDesignSurface.packageLessFlows-11553andBuilderLanding.setupExit-12513are updated to the new empty state and the missing route builder.Verification
Base
272fec05.@objectstack/platform-objects:vitest run src/appsgave 37 files and 578 tests green.typecheckis green.--maxWorkers=2), 1772 tests green after one stale string was fixed. The set is narrowed to every app-shell and console test that names the touched modules (PackagedActions,packagedFlows,builtinComponents,BuilderLanding,auto-empty,engine.studio.org.,~org,automation:packaged), plus all ofpackages/i18n. The full app-shell suite is left to CI's Test UI shards.@object-ui/app-shell,@object-ui/consoleand@object-ui/i18nare green.node scripts/check-platform-checklist.mjs --changed-from origin/main: 0 lost.node scripts/pm/dispatch-gates.mjs --commands: 68 commands. 65 exited 0, includingcheck-sdui-manifest,check:platform-checklist,check:nul-bytesandpnpm --dir ui exec vitest run scripts/(171 files).check:i18nexited 3 for a prerequisite, and after the prerequisite build it is green: all 10 packages' bundles are in sync. Two are left to CI because their prerequisites are not met here:check:dual-build-cjs-loadsneeds a whole-workspace build, andcheck-plugin-teardown-shape --self-testneeds an unshallow clone.check-changeset-no-major,check-adr-0087-registration,check-closing-keyword-parityandcheck-partof-closing-keywordare green.Clause-②: no
Metadata-protocol: none
Human Minimum
packages/specholds no runtime logic. (packages/specuntouched.)pnpm lintpasses.main, one pull request. (PR 1 of 2 for Setup: retire Setup → Metadata behind redirects into Studio (datasource kept) and retire Packaged automation's flows half; Studio stops linking into Setup #28578; the split is the seat's call, recorded on the card.)packages/spectouched: n/a.content/docs/references/,packages/*/CHANGELOG.mdorcontent/docs/releases/.🤖 Generated with Claude Code
https://claude.ai/code/session_01QsR2jRKMRpKnN9FkAvSWGr