Decided by the user (October 2026): the whole plant runs ERPNext, and all tooling we develop has to interact with it. digital-factory.md: standing decision in the summary; decision 10 (ERPNext owns the business documents, the factory application owns the floor; ERPNext names are the shared keys); new section 'ERPNext: the plant's ERP' with the ownership table (customers, prices, sales orders, items and BOMs, work orders and job cards per station, batches and quality inspections per compound lot, serial numbers for metal parts, downtime entries, delivery notes, assets, accounting, payroll vs. cycles, per-record inspection, genealogy and the hash-chained log staying in the factory application), the integration rules (one typed Frappe REST client in cnx-factory, an integration user per tool, webhooks in, transactional outbox with idempotent postings so the floor never waits on the ERP, business-sized postings, customisation as a Frappe app in Gitea, nightly reconciliation, no public ERPNext endpoint, new tools use the same client), hosting on NixOS (no nixpkgs module, NixOS/nixpkgs #241921; Avunu frappe-nix as the start, frappe_docker as oci-containers fallback; MariaDB + Redis; vinyl-erp on site behind the gateway proxy; OIDC sign-on; upgrades on a restored copy), Thai localisation (Ecosoft erpnext_thailand: VAT, WHT, PND, billing notes; Ecosoft as partner to quote; payroll and BOI reporting to check), phasing (dev ERPNext now; accounting and assets from the first capex invoice; manufacturing at commissioning) and estimates. ERPNext added to the architecture diagram, services, machines (vinyl-erp), module list, backup, cost, build order and open decisions; the old 'ERP out of scope, decide after launch' line replaced. artist-platform.md: price list, customers, sales orders, campaign pledges as payment entries, through the plant's outbox. traceability.md: one ERP, one set of keys. README summary. total-investment.md added scope: ERPNext (to quote, not in the sum, no licence fee).
85 lines
4.5 KiB
Markdown
85 lines
4.5 KiB
Markdown
# Process Logging and Traceability
|
|
|
|
Every step of production is logged continuously, so that every record is
|
|
traceable end to end for the customer. This is a set requirement, and it is
|
|
the core specification for the factory software this repository will
|
|
eventually host.
|
|
|
|
It is also the part of the plan the industry responds to. At Making Vinyl
|
|
Europe 2026 most people the team talked to were strongly interested in it,
|
|
and Sibert's representative named it as a reason to work with a newcomer
|
|
he would otherwise have advised against building a plant; buildfor.life's
|
|
development and data work settled the question for him (see the
|
|
[exhibitor briefing](suppliers/making-vinyl-europe-2026-exhibitors.md#after-the-show)).
|
|
|
|
## What a customer can trace
|
|
|
|
For any order, the customer can follow the full chain:
|
|
|
|
1. **Audio intake**: file received, checksums, versions, who handled it,
|
|
approval trail
|
|
2. **Mastering**: session log, engineer, settings, customer approvals
|
|
3. **Cutting**: lacquer IDs, lathe parameters, stylus used, inspection
|
|
result
|
|
4. **Galvanics**: silvering and plating batch IDs, bath chemistry logs,
|
|
father/mother/stamper genealogy (which stamper came from which mother
|
|
from which father), or the external stamper supplier and batch if bridged
|
|
5. **Pressing**: press ID, operator, shift, mold and stamper IDs, cycle
|
|
parameters (temperatures, pressures, cycle times), PVC compound lot and
|
|
virgin/recycled mix, label lot
|
|
6. **Quality control**: test pressing approvals, inspection results, reject
|
|
counts and reasons (the automated instrument layers feeding this are
|
|
specified in [quality automation](quality-automation.md))
|
|
7. **Finishing and packaging**: trimming, sleeving, carton lot, packaging
|
|
partner batch
|
|
8. **Fulfillment**: warehouse location, shipment or dropshipping consignment,
|
|
carrier tracking per end customer
|
|
|
|
## Principles
|
|
|
|
- **Log at the source**: machine data comes from the machine (the presses
|
|
and the plating rectifiers expose PLC data; the AD12 supports remote
|
|
monitoring), not from manual transcription. Manual steps get simple
|
|
operator check-ins, not paperwork.
|
|
- **Batch and genealogy first**: every physical artifact (lacquer, father,
|
|
mother, stamper, press run, box) gets an ID, and every ID knows its
|
|
parents. A customer complaint about one record resolves to a specific
|
|
stamper, press, shift, and compound lot.
|
|
- **One ERP, one set of keys**: business documents (orders, work orders
|
|
and job cards, lots, deliveries, invoices) live in ERPNext, which the
|
|
whole plant runs; the traceability detail lives in the factory
|
|
application and carries the same ERPNext document names, so a trace and
|
|
an invoice point at the same order
|
|
([digital factory](digital-factory.md#erpnext-the-plants-erp)).
|
|
- **Environment attached**: the whole-factory HVAC monitoring (temperature,
|
|
humidity, PM per zone) is logged on the same timeline, so any production
|
|
window can be correlated with plant conditions.
|
|
- **Immutable and retained**: logs are append-only and retained for the
|
|
life of the customer relationship; stamper genealogy is retained as long
|
|
as the archive holds the metal parts.
|
|
- **Customer-facing view**: traceability is a product feature, not an
|
|
internal file. Customers get a per-order view (portal or report) covering
|
|
the chain above, without exposing other customers' data. The investor
|
|
demo [make a record](make-a-record.html) shows the per-copy version a
|
|
fan reaches from the code printed on the sleeve, the **record passport**:
|
|
stamper, press, cycle time and side, with the stage dates and the
|
|
inspection result (IDs simulated). The per-order view itself is shown
|
|
in the [factory console and order status](factory-console.html) demo:
|
|
the customer follows the order through the gates, sees how many copies
|
|
are pressed so far and the results of every inspection station, from
|
|
the lab certificate of the compound lot to the listening checks.
|
|
|
|
## Open design work
|
|
|
|
- Data model for batch genealogy across all eight steps
|
|
- Which PLC/machine interfaces each vendor exposes (ask Newbilt, Pheenix
|
|
Alpha, and Digital Matrix during procurement, before purchase)
|
|
- Retention, backup, and PDPA handling for operator-linked records
|
|
- Whether test-pressing approval workflows live in the same system from day
|
|
one
|
|
|
|
This system should be specified alongside equipment procurement: machine
|
|
data access is a purchasing requirement, not an afterthought. The systems
|
|
that implement this specification (machines, networks, collectors,
|
|
database, application) are planned in [digital-factory.md](digital-factory.md).
|