app.canon_extension_proposals
TableRow level security on
An org's proposed canon extensions (Section 7.2): disciplines and categories in the adopter range .50 to .99. An Approved row is the org's extension; canon in xpms is never written. Decided through app.decide_canon_extension by someone other than the proposer.
Primary key: id
| Column | Type | Nullable | Description |
|---|---|---|---|
| id | uuid | No | Primary key, UUID v7. |
| org_id | uuid | No | Owning org. A row never moves to another org.References app.organizations.id |
| extension_level | app.canon_extension_level | No | Discipline or Category. |
| parent_code | text | No | Canon department (for a discipline) or discipline (for a category) the extension sits under; a category may also sit under the org's own approved discipline. |
| proposed_code | text | No | Code of the extension; its discipline or category segment is in .50 to .99 and it is not already canon. |
| label | text | No | Label in Title Case. |
| rationale | text | No | Why the org needs the extension. |
| proposal_state | app.canon_extension_state | No | Proposal state. Changes only through app.decide_canon_extension. |
| decided_by | uuid | Yes | Person who approved or rejected the proposal.References app.people.id |
| decided_at | timestamp with time zone | Yes | When the proposal was approved or rejected. |
| deleted_at | timestamp with time zone | Yes | Soft delete time. A row with deleted_at set is ignored by every access helper. |
| created_at | timestamp with time zone | No | When the row was inserted. Set by the database. |
| created_by | uuid | Yes | Person who inserted the row, or null for a platform process. Set by the database.References app.people.id |
| updated_at | timestamp with time zone | No | When the row last changed. Set by the database. |
| updated_by | uuid | Yes | Person who last changed the row, or null for a platform process. Set by the database.References app.people.id |