chore(plating): de-dash shipped code + intake-neutral customer emails

Replace em-dashes and en-dashes with hyphens across 789 shipped source
files (py/xml/js/scss) so the delivered module reads as human-written;
em-dashes had become a recognizable AI-generated tell. Internal .md dev
notes are excluded. The WO-sticker mojibake strippers keep their dash
search targets (now written — / –). No logic changes: comments
and display strings only; validated with py_compile + lxml parse.

Rewrite the 7 customer notification emails to be intake-neutral
(ship-in / drop-off / pickup) and repair-aware, and fix the Shipped
email documents line (packing slip vs bill of lading; certificate only
when issued). Subjects use a hyphen separator.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
gsinghpal
2026-06-05 00:16:19 -04:00
parent c9eb61ee0c
commit 8c76a16366
789 changed files with 4692 additions and 4692 deletions

View File

@@ -35,7 +35,7 @@
<field name="arch" type="xml">
<form string="Audit">
<header>
<!-- Phase D5 Audit is QM-only per spec section 2.C
<!-- Phase D5 - Audit is QM-only per spec section 2.C
(Manager has read; QM owns CRUD + close). -->
<button name="action_start" string="Start Audit" type="object"
class="oe_highlight" invisible="state != 'planned'"

View File

@@ -38,7 +38,7 @@
<field name="arch" type="xml">
<form string="Approved Vendor">
<header>
<!-- Phase D5 AVL state transitions are QM-only per spec
<!-- Phase D5 - AVL state transitions are QM-only per spec
section 2.C (Manager has read; QM owns Add/Approve/
Disqualify). Spec lists "Approve / Disqualify"; this
model uses Approve + Suspend + Reinstate + Remove,

View File

@@ -107,7 +107,7 @@
<t t-name="card">
<div class="o_fp_card" t-att-data-state="record.state.raw_value">
<strong class="o_fp_card_title">
<field name="code"/> <field name="name"/>
<field name="code"/> - <field name="name"/>
</strong>
<div class="small text-muted"><field name="equipment_type"/></div>
<div class="small mt-2">

View File

@@ -35,7 +35,7 @@
<field name="arch" type="xml">
<form string="CAPA">
<header>
<!-- Phase D5 every state-transition button is QM-only.
<!-- Phase D5 - every state-transition button is QM-only.
Per spec section 2.C, Manager has read+comment only;
QM owns CRUD + close + effectiveness verification. -->
<button name="action_start_analysis" string="Start Analysis" type="object"
@@ -67,7 +67,7 @@
<label for="name"/>
<h1><field name="name" readonly="1"/></h1>
</div>
<!-- Phase D5 editable fields readonly for non-QM. Per
<!-- Phase D5 - editable fields readonly for non-QM. Per
spec section 2.C, Manager retains read+comment only;
QM owns CRUD. Form stays visible (Manager needs to
read + chatter); only the inputs lock for non-QM. -->

View File

@@ -3,12 +3,12 @@
Copyright 2026 Nexa Systems Inc.
License OPL-1 (Odoo Proprietary License v1.0)
Part of the Fusion Plating product family.
Sub 4 Contract Review (QA-005 1:1 reproduction).
Sub 4 - Contract Review (QA-005 1:1 reproduction).
-->
<odoo>
<!-- ================================================================== -->
<!-- FORM VIEW laid out to mirror QA-005 Rev. 0 as closely as Odoo -->
<!-- FORM VIEW - laid out to mirror QA-005 Rev. 0 as closely as Odoo -->
<!-- backend forms permit. Printed PDF is the 1:1 artefact; this form -->
<!-- is the data-entry counterpart. -->
<!-- ================================================================== -->
@@ -63,7 +63,7 @@
</group>
<notebook>
<!-- ========= SECTION 2.0 Planning / Production Review ========= -->
<!-- ========= SECTION 2.0 - Planning / Production Review ========= -->
<page string="2.0 Planning / Production Review"
name="section_20">
<group>
@@ -118,7 +118,7 @@
</group>
</page>
<!-- ========= SECTION 3.0 Quality Review ========= -->
<!-- ========= SECTION 3.0 - Quality Review ========= -->
<page string="3.0 Quality Review" name="section_30">
<group>
<field name="s30_locked" invisible="1"/>

View File

@@ -32,10 +32,10 @@
<form string="Customer Specification">
<sheet>
<div class="oe_title">
<!-- Phase D5 Customer Spec is QM-only for edits per
<!-- Phase D5 - Customer Spec is QM-only for edits per
spec section 2.C (Manager has read + attach to
parts; QM owns CRUD as library curator). Form
stays visible only inputs lock for non-QM. -->
stays visible - only inputs lock for non-QM. -->
<label for="name"/>
<h1><field name="name"
/></h1>
@@ -116,7 +116,7 @@
</p>
<p>
The Specifications library holds every standard your
customers cite on POs industry standards (AMS 2404,
customers cite on POs - industry standards (AMS 2404,
ASTM B733, MIL-C-26074), prime-specific codes (Boeing
BAC 5680, Lockheed LMS-3045), and your own internal
references.
@@ -130,7 +130,7 @@
</p>
<p>
Add a new Specification the moment a new code shows up
on a customer PO there's no need to wait for a
on a customer PO - there's no need to wait for a
manager. Set the document URL so the controlled copy
is one click away during audits.
</p>

View File

@@ -38,7 +38,7 @@
<field name="arch" type="xml">
<form string="First Article Inspection Report">
<header>
<!-- Phase D5 FAIR Approve/Reject = sign-off equivalent;
<!-- Phase D5 - FAIR Approve/Reject = sign-off equivalent;
QM-only per spec section 2.C (FAIR/Nadcap signing is
restricted to Quality Manager regardless of who can
see / create the FAIR record). Submit-for-review and

View File

@@ -56,7 +56,7 @@
action="action_fp_doc_control"
sequence="50"/>
<!-- Phase 2 calibration into Materials & Tanks; specs+AVL into Quality & Documents. -->
<!-- Phase 2 - calibration into Materials & Tanks; specs+AVL into Quality & Documents. -->
<menuitem id="menu_fp_config_cal_equipment"
name="Calibration Equipment"
parent="fusion_plating.menu_fp_config_materials_tanks"
@@ -69,7 +69,7 @@
action="action_fp_cal_event"
sequence="60"/>
<!-- Promote-Customer-Spec (Phase F) Specifications is now central
<!-- Promote-Customer-Spec (Phase F) - Specifications is now central
to order entry (estimators add new BAC / AMS / customer codes
when they hit them). Moved out of Configuration (manager-only)
into Quality where the workflow lives. Single menu, accessible

View File

@@ -3,7 +3,7 @@
Copyright 2026 Nexa Systems Inc.
License OPL-1 (Odoo Proprietary License v1.0)
Part of the Fusion Plating product family.
Sub 4 Contract Review banner + tab on fp.part.catalog.
Sub 4 - Contract Review banner + tab on fp.part.catalog.
-->
<odoo>
@@ -13,7 +13,7 @@
<field name="inherit_id" ref="fusion_plating_configurator.view_fp_part_catalog_form"/>
<field name="arch" type="xml">
<!-- ===== Smart button Contract Review ===== -->
<!-- ===== Smart button - Contract Review ===== -->
<xpath expr="//div[@name='button_box']" position="inside">
<button name="action_start_contract_review"
type="object"
@@ -22,7 +22,7 @@
<div class="o_stat_info">
<span class="o_stat_value"
invisible="x_fc_contract_review_id">
-
</span>
<field name="x_fc_contract_review_state"
widget="badge"
@@ -48,7 +48,7 @@
<i class="fa fa-info-circle me-2"/>
<strong>New part created.</strong>
Please complete the Contract Review (QA-005) if applicable.
This is optional it can be dismissed and never blocks production.
This is optional - it can be dismissed and never blocks production.
<div class="mt-2">
<button name="action_start_contract_review"
type="object"

View File

@@ -4,7 +4,7 @@
License OPL-1 (Odoo Proprietary License v1.0)
Part of the Fusion Plating product family.
Sub 12 Phase B back-office views for the four categorisation models
Sub 12 Phase B - back-office views for the four categorisation models
(tag / reason / team / stage). All sit under Configuration → Quality.
-->
<odoo>
@@ -134,12 +134,12 @@
<field name="help" type="html">
<p>Shared kanban-stage namespace for NCR + RMA. Codes are
referenced by the state ↔ stage_id sync in
fp_quality_categorisation_links.py don't rename codes
fp_quality_categorisation_links.py - don't rename codes
without checking that file.</p>
</field>
</record>
<!-- Phase 2 categorisation goes into Quality & Documents;
<!-- Phase 2 - categorisation goes into Quality & Documents;
Quality Teams goes into Workforce. -->
<menuitem id="menu_fp_config_quality_tag"
name="Quality Tags"

View File

@@ -149,7 +149,7 @@
<group>
<field name="thickness_report_pdf_id"
widget="many2one_binary"
help="Upload the Fischerscope / XDAL 600 PDF readings will be auto-extracted."/>
help="Upload the Fischerscope / XDAL 600 PDF - readings will be auto-extracted."/>
<field name="thickness_reading_count" readonly="1"/>
<field name="require_thickness_readings" readonly="1"/>
<field name="require_thickness_report_pdf" readonly="1"/>
@@ -218,7 +218,7 @@
<field name="search_view_id" ref="fp_quality_check_search"/>
</record>
<!-- ===== Menu add QC Checks + QC Templates under Quality ===== -->
<!-- ===== Menu - add QC Checks + QC Templates under Quality ===== -->
<menuitem id="menu_fp_quality_check"
name="Quality Checks"
parent="fusion_plating_quality.menu_fp_quality"

View File

@@ -4,7 +4,7 @@
License OPL-1 (Odoo Proprietary License v1.0)
Part of the Fusion Plating product family.
Sub 12 Phase D client action + menu for the Unified Quality Dashboard.
Sub 12 Phase D - client action + menu for the Unified Quality Dashboard.
-->
<odoo>

View File

@@ -117,7 +117,7 @@
<t t-name="card">
<field name="name" class="fw-bold"/>
<div>
<field name="part_ref"/>
<field name="part_ref"/> -
<field name="qty_on_hold"/> pcs
</div>
<div>

View File

@@ -4,7 +4,7 @@
License OPL-1 (Odoo Proprietary License v1.0)
Part of the Fusion Plating product family.
Sub 12 Phase C back-office views for fp.quality.point.
Sub 12 Phase C - back-office views for fp.quality.point.
-->
<odoo>

View File

@@ -4,7 +4,7 @@
License OPL-1 (Odoo Proprietary License v1.0)
Part of the Fusion Plating product family.
Sub 12 Phase D surface the new smart-button counts on:
Sub 12 Phase D - surface the new smart-button counts on:
- fp.job form
- sale.order form
- res.partner form
@@ -15,7 +15,7 @@
<odoo>
<!-- fp.job smart-button row lives in fusion_plating_jobs because the
button_box is added by that module (see Phase D notes quality
button_box is added by that module (see Phase D notes - quality
can't depend on jobs without creating a cycle). -->
<!-- =============================================== sale.order ===== -->
@@ -73,7 +73,7 @@
</field>
</record>
<!-- ====================================== NCR Spawn CAPA ===== -->
<!-- ====================================== NCR - Spawn CAPA ===== -->
<record id="view_fp_ncr_form_spawn_capa" model="ir.ui.view">
<field name="name">fp.ncr.form.spawn.capa</field>
<field name="model">fusion.plating.ncr</field>
@@ -89,7 +89,7 @@
</field>
</record>
<!-- ============================ CAPA Verify Effectiveness ===== -->
<!-- ============================ CAPA - Verify Effectiveness ===== -->
<record id="view_fp_capa_form_verify" model="ir.ui.view">
<field name="name">fp.capa.form.verify</field>
<field name="model">fusion.plating.capa</field>

View File

@@ -4,7 +4,7 @@
License OPL-1 (Odoo Proprietary License v1.0)
Part of the Fusion Plating product family.
Sub 12 Phase A RMA list / form / kanban / search + window action.
Sub 12 Phase A - RMA list / form / kanban / search + window action.
-->
<odoo>

View File

@@ -3,7 +3,7 @@
Copyright 2026 Nexa Systems Inc.
License OPL-1 (Odoo Proprietary License v1.0)
Part of the Fusion Plating product family.
Sub 4 Contract Review signer rosters in Fusion Plating settings.
Sub 4 - Contract Review signer rosters in Fusion Plating settings.
-->
<odoo>
@@ -18,7 +18,7 @@
name="fp_contract_review_settings"
help="Choose which users are authorised to sign each
section of a Contract Review. Users on these
lists gain only the right to sign no other
lists gain only the right to sign - no other
permissions are affected. Plating Managers can
always sign regardless of these lists.">
<setting id="fp_qa_assistant_signers"
@@ -26,7 +26,7 @@
help="Users authorised to sign Section 2.0
(Planning / Production Review). Typically
one or two people. Leave empty if any
user should be able to sign in that
user should be able to sign - in that
case a Plating Manager is the only
required approver.">
<field name="x_fc_qa_assistant_user_ids"

View File

@@ -3,7 +3,7 @@
Copyright 2026 Nexa Systems Inc.
License OPL-1 (Odoo Proprietary License v1.0)
Part of the Fusion Plating product family.
Sub 4 Contract Review toggle on customer.
Sub 4 - Contract Review toggle on customer.
-->
<odoo>
@@ -21,7 +21,7 @@
Toggle this on so QA sees a Contract Review
reminder banner whenever a new part is created
under this customer. The reminder is always
optional it can be dismissed and never blocks
optional - it can be dismissed and never blocks
production. Once the part reaches a confirmed
manufacturing order, the banner disappears on
its own.

View File

@@ -40,7 +40,7 @@
<!-- The SO list's coating column is on sale.order itself (header
field). Adding a parallel spec column on the order header is
a Phase B+ enhancement for now, the line tree (above) is
a Phase B+ enhancement - for now, the line tree (above) is
sufficient for the operator. -->
</odoo>