Documents & the Lifecycle¶
Audience: everyone who authors, reviews, or releases controlled documents.
A controlled document in LQMS moves through a fixed lifecycle — Draft → In review → Released, and later Revised into a new version or Withdrawn/Revoked. Every controlled action is recorded; the system never lets you take a step you are not allowed to take, so if a button is missing or greyed out the reason is shown next to it.
0. The two screens, and how they are laid out¶
Nearly everything in this chapter happens on one of two screens, and it is worth two minutes to know where each screen keeps its furniture.
The documents view is a folder column beside a list. Above the column stand the four category chips — All, Documents, Records, Templates — and under its Folders heading a Filter documents… box that narrows the tree as you type. The chips are the category filter, and all four are permanently on screen so you can always see which one is active (it is the filled one) and what the alternatives are; there is no hidden state to discover.
The chips sit with the tree deliberately: the tree is what they filter, so the control and its subject stay together. Collapse the column with Folders and, on the list, the chips move up into the head row beside the reopen control rather than disappearing with it — a filtered list is never on screen without the control that filtered it. On a document page, where neither the tree nor the list is showing, they are simply absent.
A document page opens with two header lines and then the document:
- The first line is where you came from and what you can do. An icon back control, then a breadcrumb — project code, the folders above the document, the document's own id — every step of it navigable. The document's acts cluster at the right of that line as one block (Move…, Language, New draft, and whatever else your role may do here); on a narrow screen or behind a long breadcrumb the whole cluster moves to its own line together, never breaking apart.
- The second line is the title line, and it carries the document's standing: the id and title on the left, and on the right a state chip that names the version — Released · v2, Draft · v3 — beside a marker if somebody else is editing right now. A version that is superseded, disposed or not yet effective says so in the same place. There is no separate subtitle line: the facts a reader needs about a version are which state it is in and which number it is, and those are a chip, not a paragraph.
Below the document body come its cards — Export, References, Trace links, version and draft history, the audit trail — each appearing only when it has something to say and you may see it.
1. Creating a document¶
Create is on the documents view. You choose:
- Scope — which project/QMS the document belongs to. A document lives in exactly one scope and never moves between scopes.
- Type — SOP, work instruction, record, template, … from the types activated in that scope. The type decides the document's category (the Documents / Records / Templates chips), its ID prefix, and the default review and training rules copied onto the document (see §4).
- Folder (optional) — where it sits in the scope's folder tree. You can move it later; moving is organizational only and never touches content or versions.
- Title and the ID designator (an auto-number or a short slug, depending on the type).
The new document starts as v1 in Draft.
Starting from a template¶
Some records are not written from scratch — they are filled in: an intake checklist, a batch record, a verification protocol. Those start from a released template, and the result is a new record draft with the template's variables substituted and a provenance link back to the exact template version. Variable values are fixed at creation.
There are two doors to the same act, and which one you want depends on where you are standing:
- From your project (the usual one). With a single project in context, the documents view offers From a template beside Create. It lists the released templates you can reach — including ones that live in the QMS project rather than yours — and creates the record in the project you are in: there is no "into which project?" question, because you already answered it by being here.
- From the template. Open the template itself and use Use template. This is the librarian's direction — a quality manager handing a template to a project — and there the target genuinely is the question, so the dialog asks it.
A template becomes a record, so the project needs a record type activated in it. If it has none, the From a template list says so plainly and points at Project setup, where a document type can be activated — rather than letting you find out from an empty type dropdown.
Whichever door you use, the view follows the new record: the category chip switches to the one that contains it and the tree reveals it, so it is never hidden by the filter that led you to the act.
Variables can declare a type. A template author may say what kind of value each variable expects, and the fill-in form then offers the matching control (the template's variable table shows the type, so you can see it before you start):
- Text — a plain text field, and the default when the template says nothing. Anything you type is taken as written.
- Date — a date picker. The value is stored as
2026-07-15(year-month-day) whatever your language displays, so audit dates sort and age correctly later; something that is not a date is refused rather than filed. - Number — a numeric field, stored as a plain decimal (
12.5).1'250and12,5are accepted as you write them and normalized; words are refused.
Older templates that declare no type keep working unchanged — every variable in them is text.
2. Editing a draft¶
The draft editor opens in the visual (WYSIWYG) editor by default — a Word/Confluence-like
surface: a toolbar for headings, bold/italic, colour, lists, tables, alignment, links, images, and
an insert menu; a mid-line slash menu (type /) for blocks like tables, diagrams, formulas.
- Checklists — the slash/list controls include task lists (checkbox items). They are part of the record: a released document shows them as read-only ticked/unticked boxes.
- Source mode — a toggle switches to a plain-Markdown editor over the same content for people who prefer typing Markdown. Leaving source mode re-imports your text into the visual document.
- Images and files — paste or upload images (shown inline) and attach any other file (shown in the Attachments section, download-only). See the diagrams chapter for draw.io.
- In-text document links — type
[[to link to another controlled document by its stable ID; the link survives the target's folder moves and title changes.
A picture in the record is one of the document's own attachments — never one fetched from elsewhere. An image you upload or paste becomes an attachment of this document, and it renders as a picture everywhere the document does: in the editor, in the reading view and in the PDF. An image whose source points outside LQMS — a URL on an intranet or the web — deliberately does not render as a picture anywhere. On screen it shows as a small link chip naming the reference instead; in an exported PDF it appears as its alt text in brackets, with the other things the PDF cannot typeset (§8).
The reason is stability, not security. A released document is an artifact somebody is entitled to rely on, and its bytes are frozen when it is released; a picture served from somebody else's server could change tomorrow, silently, and the released document would then say something different from what was approved. So the rule holds even where LQMS could perfectly well fetch the image: being resolvable is not the same as being stable.
Nothing you wrote is thrown away. The reference stays in the document exactly as you typed it, the chip names it (long addresses keep their beginning and their end, so the file name at the tail stays readable), and the resource remains perfectly usable as a link. If the picture belongs in the record, download it and attach it — that is the one act that makes it part of the document.
Saving is optimistic-locked: if someone else saved while you were editing, your save is rejected with a clear message rather than silently overwriting their change. Only the draft (Author side) is editable — reviewers comment, they never edit your text.
3. The review round — from both sides¶
When the draft is ready, Submit for review. Submit freezes the content, the change reason (§5), and the workflow roles for this round.
As an author / submitter:
- After submit the document is In review and read-only. You can follow the reviewers' comments (see the review-comments chapter).
- If you need to change something, Withdraw the document (§7) back to Draft, edit, and resubmit.
- Under four-eyes rules you cannot also approve your own round.
As a reviewer:
- The document appears in your inbox because you hold one of its Reviewer roles. Open it and record your verdict — Approve or Reject — with an optional comment. Rejecting sends the document back to Draft for the author.
- Add anchored review comments on the text as you go; unresolved comments can block release (§4).
As a releaser:
- Once the required approvals are in (the right roles, in the required numbers), Release becomes available. The action tells you exactly what is still missing if it is not yet allowed (e.g. "awaiting 1 approval from Quality Reviewer", "3 unresolved review comments").
4. Release, and what gates it¶
A release makes the version the controlled, effective version of the document. What must be true first is set per document type in Scope configuration (see training.md §4):
- Approvals — the required roles have approved, in the required counts.
- Review comments resolved — if the comment gate is on, every open review comment must be resolved first.
- Training questionnaire — if the type trains by questionnaire, the version must carry an authored questionnaire.
- Release mode — Explicit (a releaser clicks Release) or Automatic (the final approval releases the document; still held back by unresolved comments or a missing questionnaire until those clear, then a releaser finishes it).
Effective date. A released version is effective from its release time by default; you can set a future effective date, in which case the previous version stays in force until then. The document detail always shows the currently effective version to readers.
4a. Direct release (records only)¶
For record types, a scope can set Release flow (records) to Direct (single-person release from draft) (Scope configuration → Review policies, on a record type). Records — meeting notes, verification records, "proof the process ran" documents — need no independent approval (ISO 13485 §4.2.5), so forcing the full review round on them is pure friction. When a type is set this way, an authorised releaser sees a Release button straight on the Draft, beside Submit for review: releasing then makes the draft the released version in one attributed, audited step, skipping submit and approve. You are asked to confirm first — the Release directly dialog says plainly that this skips submit → approve and makes it a single-person, attributed release.
This is a permission, not a rule: the standard submit → approve → release flow stays available on a direct-mode type whenever you want the extra ceremony, and it is the only option for prescriptive documents and templates, which always get independent review. The comment-resolution gate still applies, and the release is recorded like any other. Direct release is what makes recurring-obligation records (see Recurring obligations) frictionless end to end.
5. Revising — with a reason¶
To change a released document, Revise it. This starts a new draft version and asks for:
- Reason for change (required) — why the change is being made.
- Impact (optional) — what is affected (other documents, training, downstream records).
The reason and impact are visible throughout review, so the approvals attest them; they freeze at submit like the content and appear on the version in the history. A first version (v1) has no reason — there is nothing it changed.
6. Versions, history, and PDF export¶
The document detail lists every version with its state, effective date, and change reason. From here you can:
- Read any version — the default landing is the latest effective version, but superseded and future-effective versions remain readable.
- Export a PDF — Download PDF is available on Released (and Revoked) versions. See §8.
- See the source history — documents imported from the previous QMS carry a muted "History from the source system" section under the version history. It lists the legacy version and status changes (who/when, as recorded in the old system) so the document's real age and history are visible — but it is clearly separated from LQMS's own audit trail. LQMS never claims that those legacy acts happened in LQMS; the section is provenance, not LQMS audit.
7. Withdrawing¶
Withdraw takes a document from In review back to Draft. Any holder of an Author role can do it. Withdrawing voids the round's approvals, cancels the reviewers' tasks, and unlocks the workflow roles for editing; when you resubmit, a fresh review round begins. Use it whenever a round needs to be corrected rather than rejected.
8. PDF export and "uncontrolled copy"¶
Download PDF produces the version as a PDF, rendered by the system (not your browser) so it is identical for everyone and recorded as an EXPORTED audit event (who exported what, when).
Every exported PDF carries, on every page, the band:
UNCONTROLLED COPY — exported \<date> by \<name>
This is a deliberate distribution control (ISO 13485 §4.2.4). The authoritative, controlled copy is always the version in LQMS: the moment a document is printed or saved as a file it is no longer under change control, so the band says so. A superseded, future-effective, or revoked version also states its standing in the header, so an out-of-date copy identifies itself twice. Drafts and in-review versions cannot be exported — they have no controlled identity to stamp.
Some content degrades in the PDF by design (it is the record typeset, not a print designer): Mermaid
diagrams appear as a labelled source block, math as its $…$ source, and internal doc: links as
plain text. An image referencing something outside LQMS appears as its alt text in brackets, for the
reason §2 gives. Draw.io diagrams and the document's own attached images render normally.
Updated 2026-08-03 (feedback round #7, #8 + #9): the template coverage is re-anchored project-first — the project's own "From a template" door leads, the template-side path follows, the view now follows a newly created document, and template variables can declare a type.
Updated 2026-09-06: §0 added for the rebuilt document header (back + breadcrumb on one line, the state chip carrying the version on the title line) and the category chips beside the folder tree; §2 gains the record-stability rule for images referenced from outside LQMS.
Governing decisions: ADR-0003 (lifecycle & reviews), ADR-0064 (per-document workflow roles), ADR-0066 (withdraw from review), ADR-0057/0058 (tree record + Markdown projection), ADR-0015 (effectivity), ADR-0045 (image attachments are content parts — a controlled record never depends on a source outside the QMS, and its rendering must be reproducible forever), ADR-0049 (categories, templates), ADR-0102 (typed template variables), ADR-0091 (release modes — direct record release), ADR-0074 (PDF export & uncontrolled-copy band), ADR-0075 (source-history continuity). Change reason: ISO 13485 §4.2.4, REQ-DOC-017; direct release: ISO 13485 §4.2.5.