Phase 6 originally scoped the full operator UI rewrite (Plant Overview, Tablet, Manager Dashboard, Process Tree). Tailscale SSH to entech is currently unavailable, so live in-browser verification of OWL/JS components isn't possible. Shipping a lean Phase 6 with the data-layer pieces: 1. /fp/job/<id> scan controller — when a user scans a fp.job sticker, lands them on the fp.job form (or the process tree action once that's wired). Mirrors fusion_plating_reports' /fp/wo/ pattern. 2. /fp/jobs/process_tree JSON endpoint — returns the recipe tree serialized with each node tagged by its fp.job.step state, ready for an OWL component to render. The component itself is deferred (see README.md). The bigger UI deferrals (kanban, tablet, manager dashboard) are documented in README.md. They get their own focused project after cutover — the data layer is complete, so they can land incrementally without touching fp.job/fp.job.step. Tests verify controller imports + serialization shape (no HTTP because TransactionCase doesn't easily simulate request context). Manifest 19.0.1.8.0 → 19.0.1.9.0. Part of: native job model migration (spec 2026-04-25) Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
52 lines
2.3 KiB
Markdown
52 lines
2.3 KiB
Markdown
# fusion_plating_jobs
|
||
|
||
Native plating job bridge — wires `fp.job` and `fp.job.step` (defined in
|
||
`fusion_plating` core, Phase 1 of the migration spec dated 2026-04-25)
|
||
into the rest of the Fusion Plating module family: configurator, portal,
|
||
logistics, quality, certificates, batches, KPI, notifications, reports.
|
||
|
||
Coexists with `fusion_plating_bridge_mrp` during the migration period.
|
||
The `x_fc_use_native_jobs` settings flag (default: `False`) toggles the
|
||
behaviour. When `False`, SO confirm continues to create `mrp.production`
|
||
records through `bridge_mrp`. When `True`, SO confirm creates `fp.job`
|
||
records here.
|
||
|
||
See `docs/superpowers/specs/2026-04-25-fp-native-job-model-design.md`
|
||
for full design rationale and §6 of the implementation plan for phase
|
||
breakdown.
|
||
|
||
## Phase 6 — deferred items
|
||
|
||
Phase 6 originally scoped the full operator UI rewrite. With Tailscale
|
||
SSH to entech currently unavailable we cannot live-test OWL/JS in the
|
||
browser, so Phase 6 ships a lean version: the data-layer endpoints land
|
||
now, the rendering UI lands later.
|
||
|
||
Deferred to post-cutover hardening:
|
||
|
||
- **Plant Overview kanban** over `fp.job.step` — replaces
|
||
`fusion_plating_shopfloor`'s `mrp.workorder` kanban.
|
||
- **Tablet Station UI** rewrite over `fp.job` / `fp.job.step`.
|
||
- **Manager Dashboard** rewrite.
|
||
- **Process Tree OWL component** — currently a stub:
|
||
`/fp/jobs/process_tree` returns the serialized recipe tree as JSON,
|
||
but the OWL component to render it is not built.
|
||
|
||
Rationale: these are large OWL/JS components that need live in-browser
|
||
verification on entech. Under the migration's parallel-coexistence
|
||
strategy, operators continue using the existing shopfloor UI (bound to
|
||
`mrp.workorder`) until cutover. After cutover, the operator UI rewrite
|
||
becomes its own focused project — the data layer (`fp.job`,
|
||
`fp.job.step`, time logs, timestamps) is fully in place from
|
||
Phase 1–5.
|
||
|
||
## Phase 6 — what shipped
|
||
|
||
- `/fp/job/<id>` — scan-redirect controller. The fp.job sticker QR
|
||
encodes this URL. Routes managers to the `fp.job` form; routes
|
||
operators to the same form for now (will swap to the process tree
|
||
client action once the OWL component lands).
|
||
- `/fp/jobs/process_tree` — JSON-RPC endpoint that returns the recipe
|
||
tree for a job, with each node tagged by its matching `fp.job.step`
|
||
state, ready for an OWL component to consume.
|