"""TEMPLATE — Field Work Order (WO). Copy this folder to /source/ and fill it in. A dispatch ticket for one job at one site, for MPM technicians or a subcontract installer. It says where, when, what to do, what to bring and what to send back; the technician fills in the completion record and both parties sign. Marked INTERNAL USE (it carries contacts and access details). 1–3 pages. See MPM_Document_Standard.md §9.11. Order: masthead (Scheduled · Assigned to) → status pill → parties (Site · Site contact · MPM dispatch) → job details (kv) → Safety → Work to be performed → Parts and materials → Return with this work order → Completion record → signatures → Revision history Status pill: Dispatched (gold) · On site (ink) · Complete (green) · On hold (red). The signed, completed copy is scanned into the project's _INPUTS/ (never edited); this PDF stays as issued. Issue at 1.0; a re-dispatch with changed scope or date is 1.1. """ import sys, pathlib HERE = pathlib.Path(__file__).resolve().parent sys.path.insert(0, str(next(p / "_STANDARDS" for p in HERE.parents if (p / "_STANDARDS").is_dir()))) from mpmdoc import Doc doc = Doc( number="WO-MPM-SITE-01", rev="1.0", date="2026-11-06", customer="Agency", subject="Site", title="Install: Site Name, Sign Type", lede="One line: the job, the site, the outcome.", meta=[("Scheduled", "Nov 10, 2026 · 8:00 AM"), ("Assigned to", "Technician · Company")], slug="Customer_Site_Work-Order", history=[("1.0", "2026-11-06", "Issued.")], ) doc.add( doc.pill("Dispatched", "gold"), doc.parties([("Site", {"name": "Stop or facility name", "address": "Street, City, ST", "coordinates": "00.00000, -00.00000"}), ("Site contact", {"name": "Name", "contact": "Role, agency", "phone": "000-000-0000"}), ("MPM dispatch", {"name": "Jason Stedwell", "contact": "Director of Technical Services", "phone": "000-000-0000"})]), doc.kv([("Customer / project", "Agency · project name"), ("Installer", "MPM, or subcontractor company and lead"), ("Access", "Hours, badge, escort, keys, lift or traffic control"), ("Reference documents", "INS-…, DWG-…, SVY-… (bring or have on a device)")]), doc.note("Safety", "PPE, work at height, traffic control, lockout at the breaker before opening any enclosure.", tone="warn"), doc.section("Work to be performed"), doc.bullets(["Confirm the mounting point matches the drawing.", "Mount the sign; torque fasteners to spec.", "Terminate power and network; confirm the sign reports online on MP.TV."], check=True), doc.bom([("Parts and materials", [("Sign assembly", "Model, size", 1, "ea", "PN-0000"), ("Mounting kit", "Per drawing", 1, "kit", "PN-0000")], "Parts")], checks=("Staged", "Used")), doc.section("Return with this work order"), doc.bullets(["Photos: before, mounted, wired, powered with content.", "Serial number of every unit installed or removed.", "Any difference from the drawing, measured."], check=True), doc.fields([("Arrival", "Date and time"), ("Departure", "Date and time"), ("Serial(s) installed", ""), ("Serial(s) removed", ""), ("Online on MP.TV", "Time confirmed"), ("Issues or deviations", "")], cols=2, title="Completion record"), doc.signatures([("Technician", "Name · company · date"), ("Site contact", "Name · date")]), ) doc.build()