61 lines
3.7 KiB
Python
61 lines
3.7 KiB
Python
"""TEMPLATE — Site Survey (SVY). Copy this folder to <PROJECT>/source/ and fill it in. Photos go in img/.
|
||||
|
|
|
|||
|
|
A record of what exists on site and what it means for design. 4–12 pages.
|
|||
|
|
See MPM_Document_Standard.md §9.5. Reference: SVY-SOR-MON-01 (SORTA Monument Square).
|
|||
|
|
|
|||
|
|
Order: masthead → control table (kv) → About this document (dark) → Status note
|
|||
|
|
→ PART 1 Summary of Findings (customer) → PART 2 Engineering Detail (MPM internal)
|
|||
|
|
→ To verify list → Appendix A Photo log → Appendix B Field notes (verbatim) → Revision history
|
|||
|
|
Rules: dimensions as recorded in the field (convert, never round away the original); anything not
|
|||
|
|
measured is TBC or a To-verify item; photos are numbered figures and every one is in the photo log.
|
|||
|
|
"""
|
|||
|
|
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, verify
|
|||
|
|
|
|||
|
|
doc = Doc(
|
|||
|
|
number="SVY-MPM-SITE-01", rev="0.1", date="2026-11-06",
|
|||
|
|
customer=None, subject="Site name",
|
|||
|
|
title="Site Name Wayside Signage",
|
|||
|
|
lede="What was surveyed, for which project, and when the field visit took place.",
|
|||
|
|
meta=[("Survey date", "Nov 6, 2026"), ("Surveyor", "Jason Stedwell · MPM")],
|
|||
|
|
slug="Customer_Site_Site-Survey",
|
|||
|
|
classification="internal", # internal until Part 2 is split out for the customer
|
|||
|
|
history=[("0.1", "2026-11-06", "Preliminary draft from field notes and photographs.")],
|
|||
|
|
)
|
|||
|
|
|
|||
|
|
doc.add(
|
|||
|
|
doc.kv([("Prepared for", "Customer, City, ST"), ("Prepared by", "Message Point Media (MPM): name, role"),
|
|||
|
|
("Basis", "N pages of field notes · N site photographs · drawings received (or none)")]),
|
|||
|
|
doc.dark("About this document", [
|
|||
|
|
"<b>Part 1, Summary of Findings</b>, is written for the customer.",
|
|||
|
|
"<b>Part 2, Engineering Detail</b>, is MPM-internal.",
|
|||
|
|
"<b>Appendices</b> hold the photo log and a verbatim transcription of the field notes.",
|
|||
|
|
]),
|
|||
|
|
doc.note("Status of this revision", f"Preliminary draft. Items marked {verify()} are points of record to confirm with the customer."),
|
|||
|
|
|
|||
|
|
doc.part("Part 1", "Summary of Findings"),
|
|||
|
|
doc.section("1.1 Purpose"), doc.p("Why the survey was done, in rider/agency terms."),
|
|||
|
|
doc.section("1.2 Scope"), doc.p("What was in and out of scope, and why."),
|
|||
|
|
doc.section("1.3 What we found"),
|
|||
|
|
doc.table([("Stops", ""), ("Structure", ""), ("Existing mount", ""), ("Governing clearance", "")],
|
|||
|
|
[["A, B", "Steel column", "Side / cantilever", "Member <b>870 mm</b> from mount"]], caption="Families found on site."),
|
|||
|
|
doc.p("<b>Lead with the conclusion.</b> One bold sentence per finding, then what it means for the design."),
|
|||
|
|
|
|||
|
|
doc.part("Part 2", "Engineering Detail", internal=True),
|
|||
|
|
doc.section("2.1 Survey record"),
|
|||
|
|
doc.kv([("Survey date / time", "From photo EXIF"), ("Site name", f"As recorded {verify()}")]),
|
|||
|
|
doc.section("2.2 Observations and design constraints"),
|
|||
|
|
doc.sub("Field observations"), doc.bullets(["What was seen or measured, with the value in bold."]),
|
|||
|
|
doc.sub("Design constraints and implications"), doc.bullets(["What the observation forces in the design."]),
|
|||
|
|
doc.note("To verify with the customer before release", ["Every point of record still open, with its section number."], tone="verify"),
|
|||
|
|
|
|||
|
|
doc.part("Appendix A", "Photo Log"),
|
|||
|
|
doc.table([("#", "q"), ("Time", "m"), ("File ID", "m"), ("Subject", "")], [["1", "08:46:17", "D2C5E8C7", "What the photo shows"]], cls="tight"),
|
|||
|
|
doc.part("Appendix B", "Field Notes: Verbatim Transcription"),
|
|||
|
|
doc.transcript("Notebook heading", ["Spelling and abbreviations preserved.", "• bullet as written"]),
|
|||
|
|
)
|
|||
|
|
|
|||
|
|
doc.build()
|