What they signed is frozen forever

The exact text the customer read is stored on their contract row, so editing your template later can never rewrite a document somebody already signed.

What it is

Rendered_body is written at creation and is the legally operative text from then on. Every surface that displays a contract — the customer's page, the builder's viewer, the counter-sign modal, the printed PDF — renders that same frozen string. The required-sections manifest is frozen the same way.

Also called: frozen contract · immutable signed copy · contract snapshot · signed copy can't change

See it
What they signed is frozen forever
Prepared for
Marlin Hoover
1140 Ridge Line Rd · Fair Play
Shell package$30,702
Concrete & site$8,914
Doors & windows$5,942
Trim & finish$3,962
Total
$49,520
Signature
Two panes: the template editor with a clause being changed, and an already-signed contract beside it visibly unchanged, with a 'frozen at signing' seal. Sample data — no customer information appears here.
How it works
  1. 1createContract() / submit-form write the rendered body onto the contracts row at insert.
  2. 2Template edits write to contract_templates only; no contract row is touched.
  3. 3Re-renders are permitted only while the contract is unsigned (pending or sent).
  4. 4The counter-sign modal renders the frozen body through the same styled markdown component the customer saw, 'so Chris is reviewing exactly what the customer signed (not a code-block approximation).'
Why we built it

Stated at the top of the library: the body is frozen 'so future edits to the template don't rewrite this customer's contract', and again in migration 064 for the initials manifest: 'Frozen on the contract row (like rendered_body) so a later template edit can never desync a signed contract.'

The problem
  • Template edits retroactively altering signed agreements
  • Uncertainty about which wording was in force for a given customer
Sound familiar?
What you get
Signed contracts are evidence, not a live view
Safe to improve your template at any time
Every viewer sees the identical frozen document

See it on your own jobs

Twenty minutes, your numbers, no slide deck. We’ll build one of your real buildings in front of you and send you the estimate link at the end — yours to keep either way.

or keep browsing features →