@recaptime-dev's working patches + fork for Phorge, a community fork of Phabricator. (Upstream dev and stable branches are at upstream/main and upstream/stable respectively.)
hq.recaptime.dev/wiki/Phorge
phorge
phabricator
1@title Legalpad User Guide
2@group userguide
3
4Using Legalpad to track agreements and signatures on legal documents.
5
6Overview
7========
8
9Legalpad is a simple application for tracking signatures on legal agreements.
10You can add legal documents, users can sign them, and you can keep track of who
11has signed what.
12
13Right now, it is primarily useful for open source projects that have a
14Contributor License Agreement or a similar document which needs to be signed
15before changes can be accepted from contributors. In particular, it has
16integrations into Differential which can block changes from being accepted until
17the author has signed the required documents.
18
19NOTE: Legalpad is a basic application, and missing many of the features of more
20general document signing software. It may be useful to help you do things
21beyond track CLAs, but you should evaluate its capabilities carefully.
22
23Documents
24=========
25
26The primary object in legalpad is the //Legalpad Document//, which represents
27a written agreement, contract, policy, or other similar document.
28
29Most fields of a document are relatively straightforward, but some are unique
30to the application:
31
32**Who Should Sign?** This field controls what kind of signatures the document
33accepts. You can choose either **Individuals** (users will be prompted to sign
34with their name), **Corporations** (users will be prompted to enter information
35identifying the corporation they are signing on behalf of) or **No One** (for
36policy documents or other documents which do not require a signature).
37
38**Require Signature** This field allows you to create a document which all of
39your users must sign before they can use Phorge, like a terms of service
40document. See "Use Case: Terms of Service" below for details. These documents
41must be signable by individuals.
42
43Use Case: Requiring a CLA
44===============
45
46Open source projects often require contributors to sign a license agreement
47before their contributions can be accepted to the project. To require a CLA or
48similar document for an open source project:
49
50 - Create a CLA document in Legalpad.
51 - Create a "Global" Herald rule which triggers "Always".
52 - The rule should take the action "Require legal signatures", specifying
53 your CLA document as the required document.
54
55After you've done this, all new reviews created in Differential by authors who
56have not signed the document will trigger a signature requirement. These reviews
57can not be accepted until the document has been signed.
58
59The content of these revisions will also be hidden until the document has been
60signed. This prevents reviewers from being tainted by examining the changes if
61the author ultimately declines to sign the CLA.
62
63If the author has already signed all of the required documents, Herald will not
64take any actions. This reduces the amount of noise the CLA process generates for
65regular contributors.
66
67You can require more than one document (to require that they all be signed), if
68you have several agreements that contributors must sign.
69
70Alternatively, if you have several different sets of agreements for different
71projects, you can also choose a more narrow Herald condition than "Always" (for
72example, require a signature only if the revision is against certain
73repositories).
74
75Use Case: Terms of Service
76=================================
77
78If you have a "Terms of Service" document that you'd like users to agree to
79before they're allowed to use your install, you can add it to Legalpad and then
80check the **Require Signature** box for the document.
81
82After logging in, users will need to agree to the document before they can
83do other things with their account (you'll need to agree to it, too, as soon
84as you save your changes, so that will give you a sense of the workflow).
85
86Note that although users who have not signed all of the required documents can
87not use most Phorge functions, they can browse other Legalpad documents
88that they have permission to see. This allows a terms document to be
89supplemented with additional policy or guideline documents that users are free
90to review before agreeing to the terms.
91
92
93Use Case: Document-Based Policies
94=======================
95
96If you have a document like an NDA, you can write a policy rule which prevents
97users from seeing content until they sign the document:
98
99 - In any policy control ("Visible To", "Editable By"), choose "Custom Policy".
100 - Add a rule like "Allow signers of legalpad documents: X".
101 - Leave the default rule as "Deny all other users".
102 - Save the policy.
103
104Users will now only be able to take the action (for example, view or edit the
105object) if they have signed the specified documents.
106
107
108Adding Exemptions
109=================
110
111If you have users who have signed an alternate form of a document (for example,
112you have a hard copy on file), or an equivalent document, or who are otherwise
113exempt from needing to sign a document in Legalpad, you can add a signature
114exemption for them.
115
116Other applications will treat users with a signature exemption as though they
117had signed the document, although the UI will show the signature as an exemption
118rather than a normal signature.
119
120To add an exemption, go to **Manage Document**, then **View Signatures**, then
121**Add Signature Exemption**.
122
123You can optionally add notes about why a user is exempt from signing a document.
124To review the notes later (and see who added the exemption), click the colored
125asterisk in the list view.