v3.5.66 2026-08-31

Clearer path to open existing records for a new key-holder

v3.5.65 2026-08-31

Old submissions can be unlocked again

v3.5.64 2026-08-28

Dragging a field no longer scrambles the order

v3.5.63 2026-08-28

Hotfix: dropdown options editor typable again

v3.5.62 2026-08-27

Background image for the public form

v3.5.61 2026-08-27

Styling batch: headers, background, colored dropdowns

v3.5.60 2026-08-27

Blank optional card block validates

v3.5.59 2026-08-26

Card and encrypted comments editable after the fact

v3.5.58 2026-08-26

Reveal errors tell the truth

v3.5.57 2026-08-26

Base Level staff can unlock protected data

v3.5.56 2026-08-25

Contract preview removed from the public form

v3.5.55 2026-08-25

The card block is vertical

v3.5.54 2026-08-25

Live preview follows the payment type you enter

v3.5.53 2026-08-25

Name on card is back

v3.5.52 2026-08-25

Protected download follows the Reveal button

v3.5.51 2026-08-25

Protected data panel restyle, filled PDF first, console typography

v3.5.50 2026-08-25

Payment type is a placeable card part

v3.5.49 2026-08-25

Card block: three fields on one row

v3.5.48 2026-08-25

Submission section headings: centered and bigger

v3.5.47 2026-08-25

Submission fields look like fields

v3.5.46 2026-08-25

Card options and a round of requested polish

v3.5.45 2026-08-24

Hardening the staff-held-keys release

v3.5.44 2026-08-24

Staff-held keys: the server can no longer read protected data

v3.5.43 2026-08-24

The Card vault is in Settings, where you look for it

v3.5.42 2026-08-24

Security: the card security code is no longer stored

v3.5.41 2026-08-24

See why a card was refused, and fix it from the browser

v3.5.40 2026-08-24

Each part of a credit card, placed separately

v3.5.39 2026-08-24

One masked card, and no CVV on the contract

v3.5.38 2026-08-24

Micro-adjustment for placed labels

v3.5.37 2026-08-24

The live preview now matches the printed PDF

v3.5.36 2026-08-24

Duplicating a form now brings the contract with it

v3.5.35 2026-08-24

Preview PDF shows the contract instead of saving it

v3.5.34 2026-08-24

Dropdowns stay dropdowns when you open a submission; centred section dividers

v3.5.33 2026-08-11

Editor visual polish — premium markers, gradient buttons, smooth toasts

v3.5.32 2026-08-21

Create the IRW contract form from the admin area

v3.5.31 2026-08-21

A diagnostic for the IRW form, and control over where it is seeded

v3.5.30 2026-08-21

A seed that failed once can now heal itself on the next update

v3.5.29 2026-08-21

The IRW form seed now works when you update from the admin UI

v3.5.28 2026-08-21

A real footer, and two fixes on the settings page

v3.5.27 2026-08-21

Data migrations now apply when you update from the admin UI

v3.5.26 2026-08-21

The IRW contract intake form, ready to use out of the update

v3.5.24 2026-08-11

CC field grid options: variable rows/cols, per-cell fonts, form-level format, auto-fit warning

v3.5.23 2026-08-11

CC field grid polish: per-cell font sizing, configurable card format, optional inner-borders frame

v3.5.22 2026-08-11

CC field stamps as a 2x2 grid with full PAN masking (**** **** **** 1234)

v3.5.21 2026-08-11

Migration: rewrites stale "Card data is tokenized via Stripe..." help_text on existing payment fields

v3.5.20 2026-08-11

Stripped the false 'Stripe' claim from PaymentField + version bump for the in-app updater

v3.5.18 2026-08-11

CC field now stamps all 4 inputs on the contract PDF (number, holder, expiry, CVV-marker)

v3.5.17 2026-08-10

Removing a placement can remove the field from the form

v3.5.16 2026-08-10

PDF editor opens fitted, with the placement list collapsed

v3.5.15 2026-08-10

PDF editor: select-all + bulk move, rename placed-field labels, drag-resize the live preview

v3.5.14 2026-08-10

PDF editor: zoom, hide the list, go wide; form builder: up/down field reorder

v3.5.13 2026-08-10

PDF editor live-preview panel: polished into a proper card

v3.5.12 2026-08-10

PDF editor live preview: fill the whole form, watch the whole contract fill in

v3.5.11 2026-08-10

Live preview input is now visually obvious (UX bug fix: v3.5.7 made it look like static text)

v3.5.10 2026-08-10

Re-publish v3.5.9 source tree (deploy-fresh trigger)

v3.5.9 2026-08-09

Live preview is now genuinely live -- auto-focus + pulse + 30ms typing

v3.5.8 2026-08-09

Live preview is now an editable form: type to fill the placement, panel always visible

v3.5.7 2026-08-09

PDF editor: live preview on left side of fullscreen + top-of-page no longer cut off

v3.5.6 2026-08-09

CC field input validation: maxlength + pattern + auto-format

v3.5.5 2026-08-07

Security: the 3.5.4 CC field could store card data in plaintext — now fails closed

v3.5.4 2026-08-07

CC field type: card data encrypted at rest, masked in the readout, reveal-audited, 14-day TTL

v3.5.3 2026-08-06

Mobile: the app works properly on a phone

v3.5.2 2026-08-06

PDF values land on the printed line at the printed size; button hover fix; readable operator docs

v3.5.1 2026-08-05

The 3.5.0 UI actually shows up: stale-CSS cache busting; tenant vs workspace terminology

v3.5.0 2026-08-05

Critical: autosave dead for every tenant, blank-card 500; operator console, audit export, footer redesign

v3.4.9 2026-08-05

Critical: signup bypassed email verification; security and correctness set

v3.4.8 2026-08-05

Critical: Publish confirm modal opened at 0x0

v3.4.7 2026-08-02

Patch: auto-detect post-colon gap widened to 10pt

v3.4.6 2026-08-02

Operator console at <base>/admin (F8)

v3.4.5 2026-08-02

Patch: admin-host post-login redirect

v3.4.4 2026-08-02

Corrective: auto-detect placement revert; admin-host login

v3.4.3 2026-08-02

Security: stored XSS via unescaped JSON in quoted HTML attributes; inherited security hardening set

v3.4.2 2026-07-28

Visual: Submission statuses card padding, actions cell no longer flexed out of the table

v3.4.1 2026-07-28

Hardening: zip-slip guard, multi-level subdomain fail-closed, Stripe tenant binding, redacted email bodies, WCAG AA text

v3.4.0 2026-07-28

Architecture: Phase 7 signup-OTP, Phase 8 reCAPTCHA, 7-theme refactor, 5-round security audit

v2.99.42 2026-06-21

Security: impersonation CSRF, exit-impersonation audit, domain IDOR binding, webhook SSRF guard, app.secret default check, open-redirect allowlist

v2.99.30 2026-06-21

Security: PCI-DSS card data, payment cluster, upload preview IDOR, /sub/{sid}/pdf IDOR

v2.99.26 2026-06-21

Security: tenant/super-admin takeover (X-Tenant / ?tenant=)

v2.0 2026-06-15

Public forms, multi-tenant SaaS, conditional logic, PDF stamping, e-signature

Versioning policy

We follow semantic versioning: major versions break compatibility, minor versions add features, patch versions fix bugs. Every commit on main is deployable.

Security fixes ship immediately and are tagged in the changelog with the security badge. They are backported to the previous major version for 6 months.