fix(shopfloor): legacy client actions redirect to fp_plant_kanban
The plant-view rollout left two legacy ir.actions.client data records still claiming tag='fp_shopfloor_landing': - action_fp_plant_overview (Plant Overview) - action_fp_shopfloor_tablet (Shop Floor — Tablet Station) The landing-action resolver dispatched the new view correctly when the user clicked the Plating root menu, but bookmarks / breadcrumbs / QR-scan landings / direct URLs still routed through these legacy actions and loaded the per-step kanban (OWL component is still registered for back-compat). Flipping their tag to fp_plant_kanban means every entry point now opens the new view. The legacy fp_shopfloor_landing OWL component stays registered (no code removed) but no XMLID points at it anymore — safe to delete in a future cleanup. Also documented this as a durable convention in CLAUDE.md under 'Legacy-action redirect (general rule for OWL component swaps)'. Verified on entech: - action 1129 (Shop Floor) tag: fp_shopfloor_landing → fp_plant_kanban - action 1133 (Plant Overview) tag: fp_shopfloor_landing → fp_plant_kanban - 3 stale asset bundles cleared - Module re-upgraded clean, registry rebuilt in 15.7s Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -521,6 +521,27 @@ UPDATE ir_config_parameter SET value = 'legacy'
|
||||
Or use Settings → Fusion Plating → Shop Floor Layout. Both surfaces
|
||||
write the same `ir.config_parameter` key.
|
||||
|
||||
### Legacy-action redirect (general rule for OWL component swaps)
|
||||
|
||||
When replacing an OWL client-action component with a new one, **don't
|
||||
just register the new action's XMLID**. There are usually 2-5 legacy
|
||||
`ir.actions.client` data records scattered across the module pointing
|
||||
at the old tag (`action_fp_plant_overview`, `action_fp_shopfloor_tablet`,
|
||||
etc. — every "old bookmarks keep working" record). The landing-action
|
||||
resolver only sees one entry point. Bookmarks, breadcrumbs, QR-scan
|
||||
landings, and "Plant Overview" / "Tablet Station" menu items go
|
||||
through the OTHER actions and load the old component.
|
||||
|
||||
**Fix: change every legacy data record's `tag` to the new tag.** Grep
|
||||
the views/ and data/ dirs for the old tag, and update each `<field
|
||||
name="tag">` to the new one. The old OWL component stays registered
|
||||
(no code removed), but no `ir.actions.client` row points at it
|
||||
anymore. Caught 2026-05-23 when the plant-view rollout dispatched
|
||||
the resolver correctly but a user clicking via the legacy "Shop Floor"
|
||||
menu still saw the per-step kanban — `action_fp_shopfloor_tablet`
|
||||
and `action_fp_plant_overview` were both still hard-coded to
|
||||
`fp_shopfloor_landing` tag.
|
||||
|
||||
## Deployment
|
||||
|
||||
### odoo-entech (LXC 111 on pve-worker5)
|
||||
|
||||
@@ -8,15 +8,15 @@
|
||||
|
||||
<!-- ================================================================== -->
|
||||
<!-- Client action — was "Plant Overview" (fp_plant_overview). -->
|
||||
<!-- Phase 3 tablet redesign retargets the tag at the new -->
|
||||
<!-- fp_shopfloor_landing component (it has an "All Plant" mode that -->
|
||||
<!-- supersedes the standalone plant overview). Old bookmarks keep -->
|
||||
<!-- working; the legacy fp_plant_overview OWL component is still -->
|
||||
<!-- registered. Menu entry removed in fp_menu.xml. -->
|
||||
<!-- 2026-05-23 plant-view redesign retargets the tag at the new -->
|
||||
<!-- fp_plant_kanban component so old bookmarks / breadcrumbs / QR-scan -->
|
||||
<!-- landings flow into the new view. The legacy fp_plant_overview AND -->
|
||||
<!-- fp_shopfloor_landing OWL components stay registered (no code -->
|
||||
<!-- removed) but no menu / action XMLID points at them anymore. -->
|
||||
<!-- ================================================================== -->
|
||||
<record id="action_fp_plant_overview" model="ir.actions.client">
|
||||
<field name="name">Plant Overview</field>
|
||||
<field name="tag">fp_shopfloor_landing</field>
|
||||
<field name="tag">fp_plant_kanban</field>
|
||||
<field name="params" eval="{'mode': 'all_plant'}"/>
|
||||
</record>
|
||||
|
||||
|
||||
@@ -97,14 +97,15 @@
|
||||
|
||||
<!-- ================================================================== -->
|
||||
<!-- Client action — was "Tablet Station" (fp_shopfloor_tablet). -->
|
||||
<!-- Phase 3 tablet redesign retargets the tag at the new -->
|
||||
<!-- fp_shopfloor_landing component so old bookmarks keep working. -->
|
||||
<!-- The legacy fp_shopfloor_tablet OWL component is still registered -->
|
||||
<!-- (no code removed) but no menu points at it anymore. -->
|
||||
<!-- 2026-05-23 plant-view redesign retargets the tag at the new -->
|
||||
<!-- fp_plant_kanban component so old bookmarks / breadcrumbs / QR-scan -->
|
||||
<!-- landings flow into the new view. The legacy fp_shopfloor_tablet -->
|
||||
<!-- AND fp_shopfloor_landing OWL components stay registered (no code -->
|
||||
<!-- removed) but no menu / action XMLID points at them anymore. -->
|
||||
<!-- ================================================================== -->
|
||||
<record id="action_fp_shopfloor_tablet" model="ir.actions.client">
|
||||
<field name="name">Shop Floor</field>
|
||||
<field name="tag">fp_shopfloor_landing</field>
|
||||
<field name="tag">fp_plant_kanban</field>
|
||||
</record>
|
||||
|
||||
</odoo>
|
||||
|
||||
Reference in New Issue
Block a user